675866 879606257
919177218 154163058 309191081 12811557 785410377 769242374 8789845 892360466 199372902 116600938 265669974 958890875 875468328 909277696 925628837 796572110 217369904 266940657 77430831 350807000 687677822 304431400 316669227 303970679 417070761 731721546 133869829 356350065 380164450 948982076 270716972 868564763 841885264 374136544 21465892 344621111 228490407 688377796 571026612 637718766 991822245 897007894 615191848 894457226 78278573 921000987 564762536 788667139 33814949 536198644 455757693 12950309 659102177 411256163 910943374 812089579 70372562 345677936 182634686 317102624 818455670 964354872 295313501 54250141 999534117 928129721 269333280 546693355 38401408 637953683 925067558 37329415 374282574 779674804 232127933 92051371 695750457 724485186 155933074 540205316 994643184 450235510 159881156 688695163 787946372 309351482 256080655 930835496 967306071 854891147 294033223 785520383 921671908 931361782 376839562 627126112 145018283 313685377 777722069 798070947 569896301 532201258 829938753 819705928 892977965 38616804 85520528 426600436 737337893 532319758 655336003 239409961 97036912 632022166 217602681 973630169 102700290 518743211 444144003 971224810 10801681 188040574 399455933 224166126 899465772 333281142 25203636 32563266 841971691 991217380 542952304 4285209 769800947 227747831 548572006 855822650 181722778 886632772 362923479 404565291 161626041 860992060 539397913 950358922 209235114 331217009 990072222 553647389 658085765 944045477 555356612 189126267 603683825 371806660 911726493 985924038 394597390 274509548 275609656 718311158 862534835 534620567 178370947 499192562 533805329 836739250 217410280 44536238 770824236 470019056 306775049 334815933 938889523 659730207 163752777 609703822 720486376 373807271 72846910 390498048 784940758 388201646 815272009 209686768 744091242 447286329 866841242 732230099 118992532 830289658 916462816 241141175 28922078 488219173 390635817 389995361 664978622 402770843 800468105 625513074 405978552 751073210 552356262 651869676 431952579 249389523 277924195 690582911 905964079 280750744 569792333 591460451 377667532 167000477 555150544 842362031 681318560 754352739 760299097 946624215 678016688 305246825 458077124 275383273 453895519 132677938 558298496 688521212 116574421 573005504 154851704 348848704 696831525 867056081 367292866 99574806 18811953 626504071 964503482 927531269 784858300 877756356 322331439 189771450 825298061 191666792 151474848 392708030 187995324 16981702 512721778 670819123 963442787 374001506 758287904 31308065 255490924 164170570 346738021 6765561 541630876 613234413 183005045 835695305 174056453 724208389 921876385 274218299 252561437 690234225 837826608 712692951 721397783 231975310 733879697 40935009 481857353 160381723 553694802 240368369 438450453 225849954 773601515 412483905 441315787 522469805 712640708 385019418 247395191 179312560 773532180 258046898 127508883 858180735 913009591 575775157 818997051 685575526 828378331 49761698 798572897 676736276 167150030 165164231 93215404 715624208 580371140 281085826 115743091 914178581 348118570 290867834 45725468 714392333 729282954 128720179 963531585 450737515 190198191 179869428 522151738 552390594 203692972 832583138 603809548 140766631 430561620 858787963 140549320 75788326 313760571 992126662 575157220 71104322 452901093 193051716 817076872 981406461 500963005 291824410 345210390 131244025 826477734 711692122 271572778 670880989 152143495 787073001 234912015 893858093 102119555 269918340 269247777 160144346 994973895 429748931 320756562 180107451 378017085 488170335 482708688 64079419 888296996 356953356 377197567 399243311 598205444 346834807 774943674 227159782 249965058 266315942 986169065 747332347 508232693 475364554 981109853 578604362 962973025 394132477 280934752 74269923 676636425 598872271 298669663 299519088 867741586 183779417 13236340 447776872 323075119 419261342 374449295 298503870 543277150 158319996 234180764 257949227 668227378 112705536 894262086 39818414 958542853 587832524 290765596 352110025 907633490 377150563 867476363 535077401 73334984 116942146 441673843 637898741 896649069 228655538 402062830 866096783 296643655 381611497 476977588 828809553 957591354 781997733 407152168 755860657 825386967 888012554 398879906 882118033 552823364 592961450 32466688 942253108 757664268 619567942 723377246 386873310 526683534 389992517 754659487 250256567 369547468 801562626 346747565 24157134 903434094 570853211 966795675 257281467 442017684 238620709 112136406 448760819 617355860 889019654 96821889 916772160 604933888 233344690 162970079 783790113 711050201 23787193 824366781 585794795 954851636 482193567 770976332 612931107 350955385 656429352 219015496 10149627 250789301 47362961 796873839 656639611 210941281 638975101 980519809 259159731 111212420 715574323 398017559 573126359 679005492 335675482 279836610 515805530 489352515 140405752 538710363 848184921 863957313 551889756 663654237 829229785 817113156 683301930 199197561 736502055 909167044 203135242 213811908 397431269 644208404 991590736 482814142 908718022 307805361 543236539 417180551 969344071 518176217 104601315 391447949 152665493 624956070 376613170 432838983 541396310 697159047 306835863 391607450 739681570 385714242 928818866 550571987 672722019 468986748 185836433 662853531 891211231 484335248 752035357 224525522 490561876 940364447 662235514 959160903 733665527 816681816 37957939 962680345 283210030 368784730 490955902 289083685 654372099 278394563 644857608 349519256 310562145 561229520 225190539 470511177 559339457 476374748 125738268 921151476 342577267 679559609 293551312 938410485 604308084 933652202 192155430 923886869 249413254 80198709 913768609 862738591 32267143 638155543 325094031 773247567 958434012 477338261 35445642 710465735 66473346 524026333 982220745 694313415 813379724 665051190 723274441 852891118 829934996 957429498 294126654 202863409 54115467 870386977 930254670 198948761 505675214 850586408 210207577 928954352 176824702 575303743 57411668 98608131 706298220 745368273 242373371 214258437 855718327 515259696 583134614 630692458 720106730 243120919 344721036 644250960 872758345 369489448 79533270 687984876 107608959 259067023 481750321 84772793 742193409 331792927 365626154 674656518 848951929 394677728 815947929 571387742 455668822 861199747 91166821 700725440 307230967 544388743 870154971 147225179 730339236 22845357 379305611 929156807 837669888 137249052 900907045 673578730 110642141 293006994 425678431 183648377 270118712 659711342 295769994 450105882 957447911 786900534 652878348 450611022 810965088 740283492 942609531 425073391 135197084 653524043 459901086 968174891 242627320 560465409 672078341 134118805 992186408 365726529 862982014 709667651 650580993 371603029 809951653 875445859 506425404 337133841 354618949 33276815 349207175 258944053 308727361 216937859 614391407 497261546 661445435 560710599 227517301 283658921 354030710 25641743 701255392 770733958 865081452 402276417 640179543 211013480 30517071 539030900 182933378 514032773 37028275 26593562 908471048 83573830 485330395 354692931 829996879 382550649 512358023 214857912 995840099 8248524 457683685 731851927 287683740 923071277 302925681 219349295 662008674 513458546 206534625 465338498 438209740 670165127 609619793 805409237 495502689 51984041 352666097 479789082 135272961 695238603 61804340 511878114 141435812 394077999 632049555 935670902 646669432 331204113 114480199 161075756 97008837 323023534 49482727 855490389 556824767 95333463 768810650 203726114 128860631 215154000 223222827 754363860 644253039 85152885 870264559 226741067 422657566 712091769 239846987 795792933 279926127 354656950 100448057 612260094 364671482 502022481 164319651 303616407 413069233 585144489 703139348 162467234 558004600 573604232 382820763 580782312 457927295 896338981 353536612 576892485 430067845 878380314 626276870 18295441 843583334 791888320 921466441 659429283 134985984 879600193 371433405 815421114 336086184 910870921 540206979 932836827 555793235 37642078 592407802 634349445 273718388 332496846 264941843 853073961 245326693 842470578 791515831 372742573 183403398 251422171 46264389 732483656 333185323 752882843 424743226 700648677 862347384 420771869 775696625 563072547 796110357 570046213 818857095 379132714 999074113 460375286 593988269 144195509 336044107 750231684 198112291 639027008 227951205 777637726 931319944 866768397 303358016 166492785 636453874 616285677 324736240 638888302 292984788 192505130 58490554 320394271 445705406 457379572 866695916 226283069 815359266 807437107 961759676 271120883 783072781 976575336 457851454 26813337 256983143 645833992 471445782 240995659 329062639 460647610 125111321 422032037 575855079 300855398 61781123 331422530 467698963 552921240 372277657 838675 36121168 962412904 47865130 552293190 360293447 135885403 298715407 170393647 871067517 618079322 755790950 692457917 653548747 451576627 503528043 680179541 685332541 563754114 961912387 240205540 891843854 82006087 31748173 439849662 626814632 510326871 334902743 414127328 988409936 19839727 851149270 680307541 365956183 956031567 470464313 514721491 918994028 209681204 764306811 913197342 327816658 804156675 553232468 699009517 284159263 422322385 17976608 812984891 826558596 791862095 917993930 256967853 493704659 553700817 836791052 273241952 285846705 754249618 80627690 766699071 42961600 548060792 31180099 962859795 18076770 635647272 625356037 290274598 105221596 529044473 306913981 536819560 838726293 274359428 394755743 318072638 849112092 707318891 871758304 64846255 787895074 484802252 231538203 5558758 111465831 127133759 848187461 844013502 331988822 684401256 416979708 568162102 893874527 929756299 477969486 534673004 187636006 366270242 200418383 215267363 654878966 81325585 72336996 112188910 435062985 551535698 743581266 974224477 434188532 171797815 433341144 499400096 819468788 876006615 612100238 187274963 736755621 598913357 263736644 74940324 835631659 236358643 955623623 537444897 331932197 270584700 392728546 685251903 646499073 874929672 908404425 908118999 766782473 460984764 879012031 429315302 288752703 860105095 475184536 355678668 686336058 930306661 649067697 689949168 113488 766858115 606205814 690216775 541389262 78986171 915327088 518266123 617751464 551688141 74029500 801478945 171213189 679952578 567326458 405049685 862277261 791292856 148605261 844231440 60743905 915654187 517106054 79029248 366523021 737686346 427053412 911177187 174033547 213490104 363411221 784751593 855657902 816286509 624865389 601680024 518219829 857805166 222169001 998033670 831228402 611560519 675450458 381613905 454143101 266632584 435692550 875782389 275930426 303379748 926507690 811596800 286308761 961383938 413802141 834048322 812251859 675329558 546759869 380470309 396553642 629048387 979116489 692099895 595203 266166889 723725702 570627452 105464668 687521789 463138597 254965552 571037828 798411296 246509683 128055924 619421519 28643636 784566413 630391930 410301433 288084083 627302211 30758069 559925871 811524092 456940392 413554260 530171993 898172995 815508492 839706295 443361667 901534754 679063061 843183136 410112642 63934199 388749556 70427794 14675953 296422218 510708335 996431281 30667320 463254172 683350425 128497861 260620864 581352481 161767378 894326345 909839538 89589923 759114161 173644791 437365020 636843658 423532880 764016253 434647219 502845325 746305626 747228439 221896878 589493628 569434245 593704042 658567940 129069328 949824044 715336818 370069148 539528945 646781933 745055253 110310142 152161641 387792048 91034130 564542470 371307720 293969592 771397902 538925111 243268703 44503950 926634315 16822874 569149580 843700130 672103418 636056995 87104073 917947162 917252004 280478303 561025430 993595698 546718535 44939127 529838643 183113392 11826168 142407576 334160349 764835582 854591419 449349546 951458657 969390635 182648561 223931156 652003566 559580259 605110274 435420111 865842932 241395516 606913919 416889774 960880075 904689126 786245322 222184855 227906785 87642183 468034957 327635261 935439193 430775036 413785520 957753636 227829296 555714672 365205636 430033742 279716395 32270825 784929963 503206632 39844593 686256082 736504849 719374190 760350773 761772097 279031470 352405189 886532377 663940230 320184810 25365554 185161848 721830966 464643850 944587761 998829895 938569354 634660953 308011500 852773999 465620871 330772890 181274614 79753424 629087365 411470769 319534625 33817721 859554419 321149466 467299362 490744892 788811082 526163585 105737148 479757588 1994284 643466514 70946673 906295307 686832717 902934029 884758292 927047257 184869594 18173508 445871773 834631047 429241704 105328359 126685375 42748213 866943575 185107169 66458043 883665003 972444123 312449133 327945037 984795746 20252697 120138254 271582094 377564949 242273462 424623276 528195033 431456460 153311800 387798182 756910510 266405147 699394305 693971234 819482220 348978803 652627751 270923669 257212177 502379505 974128141 436463721 703470164 683359104 457825325 369401083 926663026 737565612 747872696 286855255 770361433 424003372 434951878 329033393 677571258 230401435 50239756 771670505 431289669 59631129 519065944 326062164 349882793 640050888 791741402 43207305 683000536 232422114 420117749 605020120 759811574 358894249 260552448 71011863 318490959 672143522 253462597 530450974 852132572 272479517 365968292 371308354 207672921 267419166 565874123 856754522 71480009 448347929 715562901 216648733 47277820 262166722 482294146 944197965 629833094 349294623 392522247 649724972 654960326 717749226 394949194 819284358 680335045 682039890 217962879 762350090 270795733 712674587 747125015 798333148 336775658 692828532 626514034 266770164 917971955 38216095 964965582 884646827 452783664 771709692 8480003 133092668 470701012 491543891 724418415 562766216 699519510 945756974 450882216 820824721 39642836 719496535 436186711 296823477 527602156 549146353 760846449 400763949 928543004 765070380 69341359 547254754 547174379 639592785 56167289 713075347 427918899 79546358 933255849 644720658 102754572 215656215 266741099 611409722 70486710 78317410 537228714 822321403 295734209 162578138 907109032 993436333 711273763 829840451 941159151 499937542 494947337 648267214 847748891 753450588 205780771 589292198 559459069 296966315 408657093 751597064 612280474 386363130 100264850 275746658 950167776 733324014 738328206 532444196 257549294 255508397 21612493 610173599 192067690 144243158 544556550 120478639 687416424 587173837 692238840 269539667 180152870 440992091 138372308 882442944 601450922 477200559 985559748 905376629 357988757 729031935 143122335 276616258 310356562 606838467 666810938 229533323 490806771 366309690 420296402 750469797 258568387 205694660 730159360 646536814 637184237 301062402 431756244 625854930 394807211 361245089 4872924 336240895 384871443 471723703 886594772 153471417 811524246 88878707 994636874 430253722 909882128 328511504 731526150 662344285 671131504 761742699 656909339 925252791 118209721 138837955 258412498 625844334 135306541 319167698 994319779 900735206 762614033 384518233 51665300 964547887 743086868 238422804 855786017 411228109 630955822 223147685 433727078 150119915 194187463 743218637 503353094 195581232 266458571 278697702 357573447 799054903 293565007 955953920 243024347 142671315 506630279 442506259 417184872 465776711 7478880 47351514 248646756 779970221 452928684 475166082 986711465 639178090 210964273 226158596 17038146 818393069 32254767 301284787 49062878 329998362 315562221 798215026 588745795 212015618 74904777 316138683 601853634 576041618 313931971 490971738 615720752 97132442 589807926 869711356 943419691 449707753 696792512 353295325 86084466 101630601 426285549 327659551 883747410 735860254 778990006 859124049 143144221 179105043 360017744 359141774 243335232 414155023 543290830 520831451 147238974 854459989 829571670 742901560 385516557 422823487 369813411 572851845 339519833 962138009 753667693 562853941 322115218 827570159 827416390 202623277 485639107 560378392 591943668 398494751 622282862 576272132 716656161 994047308 218666283 937110918 307102854 901321987 690996581 802192755 502940739 248464304 440820948 903931012 946493258 14307526 34740530 405528141 427826412 469018269 257804650 848147044 469843338 271497462 923393033 501164289 46264624 480342932 256348324 352303776 539747389 316466711 756258243 114311919 424575906 573515461 990459184 30088342 418262544 222531044 357398094 83879394 396238096 208634007 66069577 454069048 721360046 28578711 653220384 246586685 320962786 283338384 164699944 588617410 323770463 495294610 916991709 994134770 910286402 535019331 435394299 202174559 313146610 580846565 530740759 492233825 135532352 113756221 664914804 999840091 430503012 705684331 177133625 169053320 295329190 273773743 421093327 308821306 131112667 183412493 801944050 78788082 245387258 740622907 580487157 973295858 371613372 867808394 149224668 985096917 406542901 513486544 13933555 786841575 479118078 536290737 858872107 173390209 570614178 704031448 451069198 884611816 7184839 322048351 214248605 932212349 480919451 115891266 715476465 818460850 324909405 602430243 890862549 751387919 800063122 156213304 943804031 803241038 60169579 635192845 151866174 708703203 107454189 951419149 321841784 829789438 933316415 380295042 636214180 481580706 639675614 783950688 540903951 666106729 127816980 571666423 880642600 729986711 606645361 485588965 446087168 989607010 110347923 731822182 62544889 311557590 670895663 626311620 921523826 400781470 26267703 627448972 638278994 718735737 536503140 686939352 640495402 863951615 789616405 436111467 636349125 839975320 495847266 69924909 405882917 729257740 966441606 12549889 986237240 485639693 211902335 725668308 146642287 721285267 34643041 165599304 538092587 615721759 413323419 247031255 456137521 563766513 921217830 256951789 535658206 789812270 41772648 223862421 909743185 312527947 211849246 118741677 99185978 367238397 814590140 690258000 265914669 558834830 818436370 819767693 83124294 765011818 643176870 344269422 551738513 902126428 678818075 995685476 749958219 14482731 150932561 733892522 661239040 937783049 622257793 69059121 103982816 393156962 575792116 917207502 514076604 162321589 935341849 955450047 495882606 675784652 679756474 351917665 14950517 23677790 356103753 872152577 268057120 871269700 944665015 113392847 726484999 796966999 576199366 134102003 352524715 899142299 126990807 521028413 234802897 943178406 926322641 941419002 465675823 890930008 215364772 288281222 530272502 353338112 843392196 829154638 877680442 581434106 948213161 505460047 847275184 730848566 472718244 850269183 229803991 862423901 803970222 661797252 65763240 47856581 596624601 927323011 953237931 25411701 279883341 174461180 36901600 715079714 377998477 300458172 273986124 67172425 149480404 691700149 395656290 828166356 740896010 173650012 579858610 213802129 273789575 940580880 331659572 416538 177298280 241271732 991694410 871373906 934250402 639301307 451595716 824498389 580726237 656160111 197999210 809049159 183103487 148518100 713355658 598771340 480370535 421855173 970116408 801446815 759211291 728285741 828622410 420615459 277762295 28260942 389915979 793091209 967937832 622539785 935143394 807229115 843748254 268068252 935900673 190547661 755120613 506931582 32040751 124098901 118216850 919270607 408896203 404133375 885598815 563891238 476434679 300199566 740130349 811955378 852225492 987002643 679336077 292559947 901158009 551171616 578842849 390315406 238603126 978891272 511745884 737439196 21570664 929397141 990695236 74795454 261088247 963032823 888938312 216583655 490049768 489008061 518202028 156407886 481256157 655334591 127092925 947370223 193974074 832375727 555088348 789341837 176584242 160964404 743268134 506985853 337828992 431807544 902859420 808356138 804730531 386961458 162853376 126494648 142503649 448063881 4192798 414991289 617712422 329358522 110785667 109978016 378512892 893372083 238552138 810145143 895766045 426550128 291858101 525475530 659464291 323957842 405731435 767792856 511720533 98944139 361119328 101007208 410659048 449643546 604995405 171748685 835380008 594821466 715417136 902974874 936794445 110820541 929755264 425471561 320295408 904419540 480448904 732485736 260057126 839503801 263826847 175729391 628948322 123127004 654204042 611009107 286008157 816275380 136405601 833236618 980445773 739122501 949533463 871741475 291408894 963346185 518167273 639185219 333089713 161434986 317379992 579644703 435609800 753003332 391428979 148291001 406734597 288831931 339883190 7889448 989688428 139870251 676460048 914340990 944687853 500470629 115946226 994856573 658403493 113902944 514658713 246466755 778295241 412130285 71184512 91349272 671042464 941543559 311491889 716395807 388600770 319693745 945636486 928160487 127280479 713293086 458715965 436696796 726565270 54350614 559392900 423130307 106236302 876343541 658746978 642081178 42617932 878692156 72210399 634127102 710768716 460989349 822830477 918558814 488693784 851089324 329519539 119617405 947387710 818344937 979714616 331433748 600267706 773629487 784312889 818409731 291823373 575659592 802913880 75699704 23405313 348194740 973590958 758537093 636182372 466674660 388227060 513703158 854772233 700680044 77918016 154499747 147079027 418919953 216824936 119919092 190361554 668208981 803533875 883192676 632252232 579036762 793396092 269298081 132006293 169220699 710782296 427165870 275396671 598152591 170917226 479668840 235741742 367597031 769904295 406687887 65344760 63427294 479767625 479746482 616913830 311765058 484213220 949522376 732234586 843472793 9126392 898448882 43236161 911548394 158797663 141810502 806456374 325471910 21786995 640921143 104208617 320140692 426092343 912846961 203494495 686524213 803772187 301631392 216952710 191018255 343152015 325001753 32760972 239272462 66996210 992705444 2755382 655733131 773164396 875894373 639584563 288472755 636095394 423901453 8942024 589928482 765027692 807444565 2724274 147144192 34925739 990108594 216515634 635551923 67088121 357574488 33316994 822697563 351416064 225273748 795962034 301823030 653415930 65844434 307458167 414691430 417886190 322996086 815352802 248680914 16878677 805109062 63604784 604211243 644754577 574207320 644423060 118916488 660746192 707560445 741003957 553465202 922306992 242162440 515584144 890021207 589720529 872049587 931765142 584694304 194657478 8656213 529024591 934793422 468170584 945467438 323740776 67557199 673336084 557322437 413153264 631466438 359007576 269366078 588868521 553796709 859500126 587753682 231938496 17921411 303049889 520882480 855966981 144002079 650865710 986381804 803190927 711525467 556263812 737751093 262727312 726998285 247283449 341069449 823305311 576871550 923953291 961438360 794012087 885563382 207787567 575409347 3707504 10298048 96390570 580941460 856565321 591581242 51745148 440629492 296563561 742437184 812669339 649248864 957874445 164274823 266842013 742189365 332230535 389641176 499826741 212453607 853660504 841166929 110822308 578745614 844880570 195697507 928569910 388548132 641154525 183002151 597325960 352686222 804811284 206604266 29201854 617125110 601420714 693376336 479494083 941958971 196479253 923862004 666385544 377666811 969034584 353108417 452176053 693587800 782453471 770254637 664308662 534776656 549232265 341918879 81484907 653119796 425061170 748843744 817435565 308360301 703914548 198066294 110360925 583750499 650423230 198173796 930592215 906760064 82866580 611339930 915478187 672190504 119701379 819497864 888007445 114463522 286747827 141717327 34503430 929361068 143846586 279518900 604726886 426863910 260403117 977263543 123113148 73231864 281979909 135079978 673774283 555396086 360604284 408064940 328277232 347742040 424448562 60739700 272758181 129832201 456370121 337818520 962066986 955388617 448743255 406377631 383068785 52433632 278786367 751648069 78145563 163412396 108823664 387199519 208558956 657038618 735841232 736873291 282017353 153082720 851074782 575474773 636680334 373709508 840514701 857103418 642440054 597166048 274833444 492307813 394861730 922864051 962799148 994895040 675852629 730192825 287351138 975797604 363899055 279997374 945584438 781545145 818207954 506488081 611343534 277087824 385369281 171524047 15775931 287738207 664170741 831095472 70993798 969162214 357348757 840813218 870255578 986215999 921152793 341435474 404738727 584314840 806331892 434190124 529433469 830892575 906418358 831468473 763317699 311149168 933179309 436226062 219650581 637424424 798728217 520918151 997385999 341704663 301049742 214798717 391098283 499319629 925880044 104235204 531130322 777168263 478694102 48371863 848100511 176684094 407701715 232686770 851344906 147094241 441730534 185702427 954269541 315089801 449841004 19933203 407271655 946396892 330192697 237911570 210054067 225143390 362048201 948106151 324897155 170575205 859866333 713972977 490523675 546868719 763422753 167513544 871727921 943316680 695734992 310565280 282443362 423216500 59303949 125902001 830513785 544977157 586969773 489245398 673509092 545499117 695967535 215902656 969015718 72374994 875130579 415988561 432562969 59993175 89594966 874147571 893154994 290954485 750531037 871301929 636866581 781851462 875787474 100102367 480584146 888853894 426768261 622209096 798956009 213442865 459320011 872894964 909050917 100105042 178719582 662485985 136148203 995767762 868179713 640890867 714480895 761697367 997514610 15552420 910786827 279902976 484729020 588023735 564971130 709362469 752041448 132525498 585493981 668014348 209945700 582368353 921912840 959106125 438050538 113640439 832447585 736842101 902206125 897556663 176678672 795096293 789938566 654425729 793171804 192538571 300276507 699094464 548791586 277423212 29969417 237693969 162306525 358276348 57201956 362077535 76082494 737813249 850370534 788196644 548014205 616822617 378138566 387741276 414711641 11210669 954861263 684710567 696778807 993724193 536969700 9701154 590561522 581846418 394950167 794794097 716973055 97728310 303893334 191566927 842224679 691255681 879254677 10060933 108253574 757847738 818417671 441794372 493461033 521203773 645660236 867112796 776552056 817242154 416580525 872621478 596742751 869674023 736007816 269218122 788010710 577229713 938289217 426180824 927538027 553621883 833705994 128332567 203027792 924154161 167661812 843335013 499121240 585292847 305459133 993588313 599461589 435130379 400246748 178115268 700679569 476890406 882005835 257461042 610570379 779362944 623921404 850561648 267258318 475503469 28843812 742480864 610472571 106731708 120051174 605975246 720456171 886757973 510749698 45411275 76711898 259164245 764457958 908641302 235413866 665312954 645222500 880459699 930129448 942592916 547124876 263037344 148980315 826900034 456689344 408713578 118574089 923337220 406322684 377558920 454680203 531176897 39036735 322742961 949370857 967825946 146043383 373968986 117522010 230204636 543866246 4246046 728748449 292598263 499344234 229123155 262169577 556065291 164467851 99561640 743377942 212403523 240318500 133454666 501039624 981503730 467394703 963073486 684074348 967979123 9790014 93305590 8234438 178341299 687479448 823109114 393258890 588650027 36256529 794267535 642098551 513927724 522908961 926847368 909609523 460086708 101341494 446266278 393445418 156252221 972104793 576271729 798567926 237971749 742521986 511754099 135613250 76491893 176701791 188008605 206469978 774893390 569902647 682873450 995260087 609568324 621580852 443590523 318312392 446948391 114766549 53139841 358892022 49925662 585183072 417128388 957706814 713658513 619023939 688482662 880615125 376929068 964939049 150394044 57890253 35887099 381861801 741150790 227782870 562537819 137765031 286517595 588959947 23805392 886457271 282278178 1140893 802554844 184761853 467648171 467126404 722511043 286781197 423496626 151023050 460362255 951765282 165383554 110199574 916224527 197592434 523876238 816152856 832890842 87453166 556960115 221294990 765213062 711153442 329270565 428744171 409450237 925035705 452212630 469464478 725710234 106064797 830905488 167524690 633347180 963626868 898606819 287043602 45886258 267055096 308602756 493804588 245732374 944786058 272201951 557613998 360214772 89326799 269083485 302599014 867571641 212063922 133387465 804639831 487330369 987973002 206284163 89378036 61736045 578076343 867442494 848736895 979919283 540480810 216274397 443982702 40068680 355563443 723849424 405131253 899524690 40102808 77617778 718885304 914139211 192004267 184786271 503284176 829114614 13387642 140563349 974420070 362078915 950651440 536787420 254531985 238418197 544926821 165807687 695180489 565126976 392276324 907547085 942127050 602951019 540905358 654214259 10995892 463976892 77993556 573063655 242790399 560813020 411466198 867274160 718445029 969873542 302293626 882585380 490724378 173560466 521530328 999342981 923417241 229291756 377959655 646797751 656096153 780326204 283072361 867018272 853917631 663860433 554630212 489298732 731940930 700543627 136653196 830356889 231739352 748565208 897904711 498210907 382029077 213312177 670900706 894690228 108921942 557333641 164436086 565926267 510485015 274201949 165588826 582226427 677568806 952411948 977405441 627808622 149149817 591977047 62362157 909304591 555307026 508036406 231939674 604396911 296190409 78643676 276733347 277080400 718031367 291160900 301766097 851085480 967242117 26075003 731823287 741735380 751489220 238867391 779311084 367549493 564029503 274023841 680155227 158078231 803157358 857680204 508265488 520200421 681162292 877171179 279717401 479448577 46817009 421541895 962091592 393019595 676901647 299289340 347553731 606513045 695746821 256195850 832986179 459164109 92416916 88374135 883368562 947743038 17644761 318687996 556236434 463784497 582967598 777034435 88556906 267563986 220425947 608453503 72481518 962756558 52773749 189821243 615473775 401991129 58578585 235712881 609884607 990355872 187420885 983248737 266584769 191805577 183983719 639067619 628075955 385722191 219368869 148292556 954875548 213654764 34687470 259360145 66243793 873292280 122713520 742249552 314528782 55536391 530140699 750157833 14337404 368329044 906236950 91773132 572644568 842976605 842123048 762232140 758110525 502590614 918043203 680805514 354657651 729552272 693099296 1629323 509137514 834431984 479341855 249555970 605945367 450371707 257697573 289495779 59512905 992805606 20599049 256426669 602945272 697727888 216159584 138720910 984076857 69652992 396898201 209684847 664913032 19692913 294675344 380122384 872266885 304814597 542790750 849011465 331833858 967322059 364852000 940067366 964813640 879868710 245224829 735113173 195170375 158227630 519595000 796986817 540092540 645237240 106326581 421341660 268078363 812743876 744758212 317860743 36526165 16815733 143800646 42036743 774804932 513954450 168590087 726336583 171990065 556490843 439866467 406151683 538083982 18318180 189773817 736027039 456037558 604824440 732743153 582809151 53963576 268581212 327088724 566455996 182990228 900737021 859128053 694810639 948406151 895160302 487008453 847350642 508738556 223772540 302325544 668067026 982223537 586022533 561507096 95704851 475879851 85113068 932687680 669930839 365829722 830332086 925453693 660251863 84886565 217534982 547727409 849885588 597029346 905280918 837257432 44285022 462661478 610375827 86590321 594141025 505502732 975498177 305677490 23631751 942663418 585228577 256636951 407697070 936848884 888021168 145414409 184793149 248311840 559283549 707609530 74042580 350927717 925083770 675003882 388770390 257539644 930748930 508676996 995836777 986594503 685763385 769981232 704662465 565508373 492231595 366771476 276854397 659545659 641125257 702937808 991327888 703087923 99152814 908844820 557206741 884920828 735010471 530643611 439744718 518190161 467500237 582410272 221998222 105770615 513500271 951225523 993760884 398886393 365457888 848339305 434360770 659748328 275686431 424086460 571538740 165414712 127155334 68452223 4314416 495028010 769840525 420176588 484737901 838868104 810709963 567421217 555088265 644236413 174351216 799830948 809153905 580218167 307518621 653043419 289931301 44058316 787931465 518916344 426101597 545399518 376445360 410160109 570842734 229469751 691462727 280662545 930857071 397726403 994119995 542194078 317574918 42897806 857239418 597763465 557899357 667754821 152886474 533741919 867230872 913293001 449368492 551939321 47643302 342103788 135565442 280539731 811734086 877519503 237405732 154681182 31079351 794683288 965716857 462953049 284611810 513961681 738776029 268628356 139957136 458181548 295725372 927039275 305452570 525531342 287255515 422247447 752136280 62302712 642757063 347987196 602149514 47403525 791770954 304481064 473275011 123015869 736176661 810014845 806044398 225949700 320098608 716032104 146080903 369476338 188700843 798441434 95241693 481320951 391695360 165172823 647807619 635974053 77642314 382940819 128611388 155688497 894062730 898350470 566349869 460611783 593589253 329682331 761043152 932135431 25363261 96794703 930686810 356790223 751578342 793318707 15388570 736263442 110851990 631165630 34399254 64273367 679758151 329319988 260365889 342675232 808110260 835536229 932421624 516852146 762424267 684739744 276753508 487899793 95598504 723530886 649305633 364383862 463947555 248504622 791814324 193761691 766125248 60094385 536438826 415350700 751809644 582781215 581864516 300949059 144180800 575203133 161831142 467250637 854311547 33952712 912242303 833113519 244572391 961691698 342278521 64398015 683468474 655485215 458176047 573376924 550037439 334576638 20795180 807513897 82675173 827782945 225594047 473400546 237254750 368196934 114558145 47699809 32070567 481817936 39138773 623450249 263577286 172069695 203781744 654241205 678022289 264930568 187533721 249151049 679364877 964681011 287462157 752090339 920516599 118629303 872898359 619338296 631187823 12427794 449737412 222796257 183363214 164668728 365398246 668673107 843706262 311011830 812298109 318254356 780132068 646461666 139245721 18152149 361632809 655282810 941579383 932069467 672738772 849789453 499784182 686418463 575493206 763245438 291945322 541944688 566549248 189330450 751850267 77722220 382272883 471111589 241828463 621278401 370224269 425440233 590797566 24578946 162349627 816586667 796533211 830883068 104306761 889804493 233730859 148553834 417346407 905819198 525351358 303139563 506837210 934750113 515240124 780060592 775613866 263924077 687590402 224093357 302661965 253762642 294411901 694933388 820167350 356596131 946490742 848562442 474192464 828119834 24170887 297420953 950440121 857831597 203570 842724927 361948124 426108631 967445926 992056964 856383802 377051415 815777034 477741743 246785378 220248534 936618423 215087359 62479356 638788734 795540489 828830275 993406832 51316559 436096387 322201363 478243420 295765964 832023754 893103087 741241165 210054459 100406299 538821732 525309317 985832125 862186604 565480899 519578776 447301280 151508625 590282665 347099000 531659446 684594197 279598694 306117048 82542729 930269697 435360752 587158544 574003502 722921177 148094219 565669672 538230337 316297717 998574659 680033647 541385100 104637403 193637479 979344543 118096583 119695571 356361063 921990047 259374630 922326837 46566896 123685782 666370407 642008760 694817960 636677952 778573328 841987296 831474857 764781040 194131510 268195153 213868938 388162896 377573125 444251081 78009652 901443508 207114846 690395049 548406177 795171393 125382812 557162141 448528224 296119921 335823028 659067058 987199720 860064420 515921768 26408465 435954521 647647121 234033147 533116603 402110497 50791141 767439660 13066478 124543268 859690360 155650149 41784830 893216446 411430415 834726153 583991607 27369016 2232933 738006853 981931784 159061542 192648656 743557764 605855384 176678099 540963037 845481552 717958861 398536187 993154297 734726000 637258605 807277120 890389528 77427380 183627127 411303516 272159693 438860560 52316442 847259485 158522008 985906755 170099349 830713713 188048620 171203316 689116562 87010857 848745397 117748527 702610303 242151999 542936278 674202035 244202375 61594497 727862295 199180415 76612186 293798438 89238369 733637944 233675394 684368340 284633463 635400794 28375758 338994563 798956392 188103112 267174158 711840168 366700184 543854937 898136007 325639640 136152269 479254939 329914501 789630222 574848944 777928170 171132554 306166865 474561826 124038084 513582437 94104583 713941071 70664516 429141338 550953787 283945373 138310655 533726861 64723855 369727688 834532465 401787292 920353597 984732925 710029421 552610810 110628263 121643445 637783001 75972717 254320181 248629370 395290782 246528113 139607398 865472595 450364808 168713910 178839250 843246319 471403150 765866347 593928769 234144456 878108009 827447133 291446280 302251094 74603897 446490783 392526120 585441875 809730072 107139186 507343546 639024227 783137708 794144965 663976297 666725926 251041876 354432226 963090749 592594116 158865132 107537451 512294098 819791420 154510097 197149042 165122943 459222817 658604106 488095721 742155753 788706550 938068876 672468172 97737138 416908699 5820251 657207006 784799384 77848056 220316537 276558307 989638980 697858263 572703013 274459276 526164502 39190005 262789350 223598085 835094704 149822897 678457253 635441436 257844937 735656891 775064679 619216275 910483882 704626154 68423828 621927792 947791736 88777714 889823200 120476153 933162649 392818052 867828529 941254558 445365925 171150534 444060414 523354614 640472888 563893255 115705576 450358837 829580125 672793765 643748979 952403010 916076310 960480948 469862454 948780492 617669629 888352719 903598598 866082867 161513621 780816365 73438553 583604655 7669406 559000787 380766408 260980505 573636695 269880196 410322022 558299819 962734418 825247171 913720234 638472320 796570811 231693336 768074431 174308955 535949843 389648907 833232483 807662203 179864865 213948779 844000429 944249562 887449380 608970267 867374048 327190632 147998088 147492827 975374540 562397662 235854628 557965690 870903298 211435755 107157729 4570856 810994036 377116062 973784895 698706884 993684103 790405144 879080711 773843002 128951638 260719482 639034999 253041788 675074791 909933921 56048396 233787054 156411343 91048761 184837091 74444224 552692071 268174817 884970356 812221741 369488251 149463478 539716349 803878994 687597419 416561825 231822713 460157789 159510433 668160687 256803124 741061289 573974665 375365505 990265610 588635574 339308283 504136659 567458599 846935472 775114479 935430903 278659666 217355522 820348614 250983669 41892141 928233977 24317904 837031826 520048284 509584239 517190406 952388955 110018929 737276604 620575128 246452626 34399899 495832459 845773942 268979928 875038036 752613525 757386043 718593255 690588803 155333302 657457897 50515466 551570691 101308661 672219490 797640426 79328791 714772194 395430854 731660908 543442009 762287842 486931087 80154578 854637389 326643388 389807705 260049167 43090498 436588499 680392994 862902775 77552018 737917176 123289902 211955631 852489867 264404705 208525985 951062731 718471232 350492159 157134256 999401667 150982072 778290135 808792020 260277161 222528374 85584294 171431563 41591506 107641044 419476282 989719215 814180590 175183892 201463573 635485029 743294567 382139326 471701333 354306728 453877688 232473093 607378529 902218645 287616425 681009409 767830306 963151036 709867008 849943306 612690752 399507631 97079320 151369677 592562564 156540152 693449389 373666408 312474039 867208787 390607787 592585787 70469595 685270412 407570045 457161918 198957041 573064073 748553757 147219866 297746664 742440060 803479169 327110725 751185464 677619626 933470902 914432499 7755817 659078473 60338821 865458923 630469294 409255956 391919691 337108670 593153283 7393108 169983325 242522748 47448760 401766511 795337566 970193970 446733738 583504803 917102946 925098360 983475469 417649211 418856844 761029650 156164138 441993136 261898692 764730652 765921555 423380045 65556804 463456290 779480404 314224850 263948618 84417687 757395859 298156168 736864890 307016993 96746517 984058941 540609716 503303071 965021890 689640410 24935546 665404721 535980798 667483922 191495064 711728981 495856993 291351099 451474450 171479416 492203657 145552998 928201862 819803690 57994920 161477840 460783228 494532435 560598998 7033581 703902552 235206773 423217393 363119870 647031694 790575690 229319909 750190576 977370979 133097853 214950524 382745610 593083583 200085005 432373640 110998520 685810903 902545433 874245896 253132589 386804207 166246401 617134644 513048432 966906729 964647251 832337223 510110730 438036782 457096907 310590406 413238673 261536901 452387922 575305975 386915375 620835431 488685190 872987241 401097395 133822468 33005288 248625175 549895941 151060796 618586850 715170379 187547844 660442140 125742610 917464459 835762712 446163798 340856676 626675895 292618484 836623431 121321829 803668281 777041326 529579491 733738958 124978184 3593581 981303196 799489693 911061940 19343893 686234709 293481547 792508026 137340236 516275882 396429937 289537816 788658689 35310748 860876898 468641264 575415940 653064521 303315939 272748518 23937230 951585455 876077072 428357781 60700566 760820593 99343946 116584603 209743106 5633142 817272812 445883884 168566976 964581303 602867692 723649979 103592487 609290938 18748743 12523021 437902586 515624235 383386765 231141679 899575913 532709409 182829098 142711360 900139298 101375144 372351952 416592983 165768487 25731480 357694624 300661475 498632685 710224263 115000709 785075978 491534180 948270821 428282836 639267502 941906789 479121673 941349414 425574467 906584777 712484987 458199804 394596611 586835310 799895897 264013153 9659006 944833904 354842100 495876080 46416543 354134767 486018035 397289598 834985527 661658377 133945662 291776302 633809916 110550783 740794954 404830825 883184665 913035736 362253529 270000267 234095113 772338976 203539775 289284473 154656768 206522741 423417677 403801411 85294358 568230671 924377548 386043590 583062961 252430130 321466584 832819268 842886153 646444984 148436406 289069489 425502166 469738355 89105175 654592665 359079202 878456764 109068594 109971996 568770320 328296490 745663743 197329289 170028102 853840477 260771395 539801688 500796894 290004945 257213558 870589315 664340459 112780064 735719081 791357140 157795787 20264655 575098987 280358194 493272388 157315656 687345503 642099488 937747169 846168829 467498772 217233564 423987828 422757540 715037241 88324035 104933744 238530714 373668072 584637013 280339718 594450275 919847711 420190449 393566431 660566611 350981583 172533671 954684097 833222727 704150574 643275560 94560050 216863991 573013544 124239196 830129366 466248983 902564144 538259703 138984527 431289025 20225838 803207922 341352636 968733108 759858733 298384832 120179901 906655780 20016433 451303712 398936543 619262432 148825095 570146385 949610357 359602526 440578354 932468436 635423179 156850131 900093164 529262724 41596337 281091324 678035456 759400565 762195129 434231363 832806236 310971456 32527641 962360962 366231921 29353467 237047589 893303953 166604249 323311273 649539500 949863899 26543114 991580376 414308694 710690661 55697639 321986290 962661980 378731292 811481947 399334068 23917215 422098188 919471476 189409883 409943822 454569526 957734667 464298963 417450040 43192789 734867682 630698574 768469158 964709356 505760333 354282669 458865971 141332945 185352953 564415531 790515047 939518918 71745987 888466589 630204679 406023011 914894518 424746206 242356175 502574880 903805885 569785170 787550243 983114140 635438873 377115513 729950484 192361734 235377185 882741763 84989861 164144993 969661369 419282442 922611344 141417547 64481442 884920095 790785539 868524309 886621224 896557930 881552604 342418671 310960039 892170182 692632282 242644728 368576655 421194817 996932780 560841826 417058834 543638330 566318352 37253826 782620988 810591204 625491087 757226280 166823966 960877476 344230074 135701073 790289786 72596763 523971183 375200086 327952265 736335958 10686303 78771307 355398372 334771633 918621467 745353350 146560267 464230690 863059656 468972414 815641791 133189852 730180819 761777545 22788864 586153642 191796905 717019093 210346999 84985510 43910812 231203617 289672699 154647241 53678695 982915387 528023081 604301027 612328149 529632529 651278126 741088029 816198368 324191909 534852367 501000707 505033706 261625191 4389021 14653020 732785367 648032188 963293286 663764972 807928664 808096099 669498617 178991201 673743940 836322542 711408752 342666245 544949299 882771931 103118097 122079913 106114715 654053092 978122282 617327020 45721661 539811205 433286485 906573517 701762835 796645518 498502435 704993155 556245006 803653895 791926877 92488279 486194477 541859954 645668877 838585050 170692664 799816680 351827480 941590219 321640110 378227968 235447610 60263193 95808153 86589161 688053715 452212258 894402686 581968228 980120078 88298604 737991912 372558701 587533964 45439206 186965552 809937810 338695139 722498556 664187426 322458935 855060476 752319639 925835169 269344536 931357197 454857955 87772492 671716999 883996800 652055008 78508144 237671726 770750802 760379435 137226966 410584219 418434106 47220957 169295302 901491598 122506307 844125633 889813166 371086785 788227979 925769780 828846717 699955532 693898604 453796760 381563068 688374534 54697400 323125638 396753708 957539267 455805603 379794883 297197331 652003007 188838976 13929020 317776174 462253033 148198183 357871819 658420341 682468729 670552434 292488911 987185699 516795986 245741195 441131258 844830545 326214285 297730142 482888459 898430115 243918696 432442029 330699020 840435807 700644693 588260124 933306660 470845245 228488359 190941220 464905508 238180607 590901150 853885478 260448940 145290189 920219666 20539611 764766961 736962431 107637778 968414809 849293548 558248681 347470508 562891005 11392189 516746231 537930710 752930047 412374241 478857043 589152722 682226062 823784957 196284953 479460975 639267442 359380030 450949588 885920655 826165382 113316530 974843196 454086527 714300470 584306085 924781758 536413339 869317585 324663428 760664262 599042005 797187987 837148795 323139436 683869073 707886073 230660324 96031578 801330335 20982389 674789403 279465760 139500854 778823821 278372308 33732899 762165051 941423952 968417578 223359487 498795493 827886938 914612278 772989662 813175868 427085128 13520342 207421887 250312329 137434375 309503535 311475128 239322455 816699905 541953445 483571649 37429050 889652574 569879864 364665322 714034141 354942400 811543020 706727263 437617837 875022973 876952257 465554878 411641281 606073817 692046499 188755299 820212499 766550200 309694909 927622671 188317060 47658768 93080788 91130354 417067804 394188713 451852379 377562994 884569625 67821109 460001830 59890023 376967965 298914026 144584886 67791708 182106426 603131041 7860743 282049674 132401630 381827638 132811553 432505088 88028885 57259855 33808462 420832982 326515903 94223208 212293577 137186222 126133186 140613167 669970485 401128963 43148183 491216222 119834115 908993593 403191568 951582243 220716110 844821613 409464647 869859684 596001902 489938545 446531365 751432819 19356364 668235578 900633214 651145087 411042233 991757352 31686725 436183791 852910481 158079947 491589905 804582438 516807054 925969083 327369859 315492945 580820121 215032613 545600937 117907876 834267194 948040331 625001303 579489391 193692242 608429192 819325022 892396890 297535587 559379303 29373054 744310470 121989620 753429653 385968283 94283097 823917489 9755707 407195758 335491163 61645366 270140750 903313789 108384915 35757734 666475923 346179968 239189053 165702363 106812908 482328603 922669071 867007598 159433048 55170369 84134537 939133186 50103769 987722623 233515320 751126102 844872010 342684051 840792589 387256696 608257862 994765108 53598176 704035803 626585366 491825468 529289594 84466349 765430361 925320446 65366575 384766763 9359568 953797916 172129793 91470502 664201744 596005812 343105756 172210336 306992592 665812732 882611613 469670953 998718273 954032646 965443118 706916176 281898284 268180583 42773019 382044413 144921302 342407450 551621242 400826115 429656246 461846683 995952369 697418099 503364804 171054832 18075203 909110546 235950331 314878434 940275957 749634601 803330590 410880305 673637306 598199287 230968276 441346488 783826335 367155271 644889014 988668834 558342111 167095080 601832133 119636184 770888037 513757517 333707503 662278642 822048414 809601973 606593403 659488660 445947675 817062894 326035649 115439621 102641342 934135615 588567830 841627154 998579007 26021915 831848921 108883770 646748940 85126503 251409496 273800476 426775700 85305506 285942373 304852447 497725364 959578370 609312568 524312304 600484838 950900023 193527489 465247937 280880925 312206675 220023912 883376294 414168318 45797128 666817948 990570094 206296615 248402728 748633038 123774725 894652058 412993293 387691416 971661021 425066880 791938495 206603216 534383776 548354100 860041732 487284367 68458222 461395142 67171881 754849003 633257861 676317035 2509201 911281656 962254241 129272404 429769512 233969685 620782401 559986639 112529666 386821372 998692531 791483470 89664023 607642667 613372600 260645522 631868915 191007203 930982930 73854669 163365968 968392676 561000562 465823756 835854654 919521057 351514657 787003886 802089056 185518982 305684321 956905849 850172948 693474818 724345123 758923370 884012330 114168677 933281338 342913376 672926587 142304082 495004210 270677651 563561010 736179835 86421743 671862977 627963197 528061174 156553492 176606558 435103957 836175125 290455558 107634957 124497941 308794437 878508206 800204600 731228053 398267657 253284454 967090740 630320559 87947306 922633560 688273955 72031386 471267780 804435682 871516791 701225014 144516242 275499333 867948632 859800461 828828443 91053937 472911771 640763977 872167781 96728780 359732897 662465925 99217652 106700677 216273644 731705805 167646561 90367569 709007658 875197338 307826952 872063938 111395943 749904623 504826392 700999016 263852663 293686662 688277604 327373752 433029389 588404075 431827409 665140965 836881100 674148069 398829550 650237004 276135557 516380981 158067822 895847833 654060699 274957763 610209545 295841147 298544126 108504039 87198543 721166134 78599398 846278637 706381075 441379232 529037435 129300569 717640905 557628769 295501740 752323393 58118740 921339987 20437611 123147094 773218467 930414147 309021841 850599882 75152152 746311312 868178678 809604601 631681330 516896340 81623097 752238236 964701903 765744092 794689794 434653769 948951162 854902765 45108966 396653691 397749185 900564459 373253382 543927661 56478201 578790923 812757450 955076750 406610600 529124667 544993066 307235711 962350286 273036220 891262524 660495921 983313420 401084838 95340678 663506170 849638996 101633569 795714951 815965048 148542747 676625051 776214289 634494180 453414860 270650358 433500341 636787786 704174497 664018363 404749259 71868306 397591112 873990437 436744260 697106251 792594879 666746484 999106766 682087524 846336402 602784626 812947853 83576851 168559018 174122853 346972858 175018067 221592754 884277212 368133248 106889784 925520019 384318825 674456666 311880146 895115681 400835495 850956146 849230444 647292101 6322973 790332165 849226983 913910003 407300129 349692917 465869901 756642 72485376 259444259 25722684 286077966 482304433 411590461 187425294 929386292 252606548 281616723 649283251 936786498 45216058 743203730 492432489 927327433 845606328 703051137 98060729 537907062 393293014 271944556 909824059 889190458 329410935 718148613 797816285 825882488 11726029 692142816 826224872 188453326 301168773 405789711 870581588 847695894 906785925 45842917 176227852 954709525 595324862 203902914 952233788 28345365 667621832 977901154 231940737 892965494 548989543 845599174 143126493 31334780 645842048 798131416 258138729 537280508 130319856 92655039 918853403 605172418 248269332 579487458 397220987 400194527 856081230 789474961 831172379 711534187 118477231 13115346 96008115 110351823 844287655 126851569 560318178 698445121 171478263 972794164 90334808 152933390 139611685 282904337 286373959 670081133 732280384 179799948 701031069 911119885 253300323 773338474 213822731 308713611 718757051 906751306 917234164 181411869 275450996 189555923 728500440 283444735 795799106 205245106 707465065 990205901 984064593 6119531 798924480 783411821 114530781 188562715 365419816 556372565 32023908 435372999 197130349 722000549 578451665 306992019 736481417 382550779 346927897 990729126 851347244 726229651 394936793 855140478 225896143 995239823 825318260 938734459 238822357 36153277 297737022 789258675 929222104 614120011 384101419 863943893 804706709 38262182 75207950 518016423 849480515 93778793 214882458 813969638 632044746 343186524 389565362 845444247 683465403 309811401 221036095 154927473 489616243 48556771 831898283 591308080 273174638 321978793 585593391 7955454 684985888 616916397 470398332 536220597 649432844 348136880 291313301 666764454 253533139 484299164 803118391 402731876 520316648 713577792 285420766 618613843 633237144 523237271 330448790 180729988 450070732 962679916 205067062 936339068 698724021 983327119 563786761 704508353 167249742 337002411 739686214 227433891 39683609 377236051 702760644 233170688 678979000 751404021 712773230 544055675 920521052 77373055 373002948 529381483 86222135 291303020 89508772 777276172 93813733 586542771 645045716 318802893 946260407 518759674 662841499 310107455 170165626 342574262 778582346 472243666 539179610 159569623 662388076 174682693 391632991 942353034 702481060 620379430 708005742 407939425 196540817 219939575 51515746 117810780 975351904 631848221 705591622 319769095 391926833 194134623 41995699 338775888 895360074 356098556 991671136 794621954 968307591 734427221 363174917 237100152 539412192 759809270 207228400 341555738 797088424 95650347 98875363 701639356 481759144 19567218 751592938 849286506 740560553 689434703 771846291 421825272 90665065 546061623 538110494 569641778 925537249 987066836 288181231 898333261 380706439 682965079 882326225 35832590 437347876 337140241 856592038 816498024 83732598 124607841 962303715 170941664 148359781 156139997 547858463 133491348 201242910 505354743 560078708 723085468 371426917 363249928 194780225 146980942 861249861 827900639 115212011 476259754 948397449 728078802 315087424 834397252 605035164 546506754 39030532 749031612 547590457 883194552 922903014 51481772 370902494 494290681 401199683 656419626 479549499 531673299 961447666 199033165 119127069 86949256 676927095 974000639 408682782 647295311 594636994 844352474 207973531 821923947 889902190 612620666 545438314 309752326 31420510 494812558 557525414 900059691 780766582 733185626 976365355 161424016 33431914 161144288 216467872 23826948 190370607 500354791 208158788 44292883 68136831 223086727 897653388 118437814 474006766 513670025 773114035 823804429 468966912 322552052 682722031 738030961 605569046 99276812 720043592 492593662 981066126 801126524 273871350 447742708 93615905 464498458 86822168 548827147 901219666 997593904 345400917 658097861 417077382 465853100 71850145 293766110 205385213 610198161 426079404 392155049 923705592 70713272 399253722 509379387 594635924 971187666 105379875 198024019 326639689 869873884 473378600 733530622 520825378 727486357 6287904 304898135 205100716 597510247 729300403 978729997 929341061 820919444 469375196 24024915 584112631 235256022 976347445 467832339 166631934 344092286 974915594 393486426 868587973 242502508 164625279 855984156 553371350 873941081 444456400 455448407 985729880 28364601 929172300 800099308 441703857 25459071 956595919 740985109 118300142 263749647 613472314 935415987 805526094 813595465 826376634 533803693 988088540 421610142 845317373 555429107 134932867 472747747 646398110 162198939 672524646 854779957 753441411 127264089 94489852 912726112 854213734 2827214 679564284 210961601 13469531 754838892 842770224 686605066 946068269 390468395 693153391 304412847 94258151 518913570 540360517 944027581 213602312 899243934 609892536 154912438 228219440 300081400 592867166 249989587 180910569 608172756 312684753 672477126 816089448 447314172 514167161 89151512 884199186 960979403 49506865 145784299 352594713 395643830 12288621 538076111 659638418 56350360 734728468 405054936 30108411 597816747 635432421 150321898 549866006 980381466 115227952 18628847 348919208 202746642 6006893 221954947 259979083 971103976 167996319 315536357 996955515 851829813 682202382 156085254 374433617 699145811 590750295 373655470 742240473 886766990 182993262 874805010 107551261 290627221 214683515 212074842 718832694 766168539 619390505 882932254 70998538 506084420 525442559 547174462 932447226 479781383 864016097 382304622 828643855 689919810 360921172 268607958 556384804 891500155 424013138 728698464 562112638 884004033 456449084 30769606 477589840 413090441 275027508 78684795 747900978 76294396 446613458 450143897 966927528 23525160 660067436 488123208 185621199 207651787 112544439 207466783 416337402 182790624 581999220 538329718 502312029 630798306 850672794 997679378 964335960 956420042 352370598 46131327 284914592 106512687 154950966 51755982 937484679 465212702 504409243 313675408 54621740 775382794 625287503 876732752 817367787 375001360 37348133 750552117 495017296 919217251 312344893 381508725 317901060 558179603 390185339 910991593 852386576 749149776 208793117 412411120 888574427 202775549 107704853 46090795 722610628 9768135 953300893 773052418 395122866 706027296 910482985 533649751 549816148 244543144 511037931 852649361 476690681 229426504 416737880 389458213 863527891 85309659 799328498 614612052 290893630 816122663 351229628 259894780 830550377 699257960 117653833 261539673 712740090 794606144 950393657 960902120 403364886 275566655 886528683 736583537 353645608 799400288 741358248 356886322 764612832 34722339 186085242 381533502 391500942 933884848 582065110 948946511 308794634 92837103 92253136 789458193 901232778 457964904 694999938 591039462 148989090 674513836 323492700 394409494 781049930 418567363 459979768 239134050 739609812 385209131 479785313 269548497 247130558 492803544 571852869 410795263 51398261 184335610 846807121 988876389 181388752 738479121 589645397 603325636 207401711 675952339 319297676 794386416 835918143 78975644 293978637 839126526 237281100 71775494 131651771 789933253 747922774 833681803 900328234 824566360 930078195 669270166 487184666 694906803 555709907 394010921 407561700 485103705 158003740 137181482 920004066 620813246 946680376 488503310 181905154 556249765 165897248 185622191 116268867 741712976 560782833 678317805 761763191 796870874 73574200 195726707 190827716 938151281 44163108 127890059 114587822 329314925 772371776 523463219 356170565 31107059 857936153 258197098 876878982 949050311 710071887 163697858 134144238 670472723 671956229 743259519 108537829 319339043 815305180 775386183 608094761 125660497 61621232 392177446 219321223 605604082 697366767 378805543 374853270 848238903 93162470 366477443 919865582 387949482 726366615 120151597 720851531 245866306 203782427 753129228 28036070 679869583 511073475 574326279 445586660 421846236 75462840 676847221 941539571 113135089 693933401 869125647 6151130 522220911 561473519 842152142 396340385 804848500 676787911 702055442 860312305 15151446 443345110 869937924 298968268 987362530 433386287 885664749 896486698 80722865 634003153 141373227 733649963 387940052 709363782 946562182 299557830 513787022 709232369 815372464 311929696 341395062 62680015 545048631 602997294 338212282 488742377 242326513 994540177 647297365 785238859 806365354 963764392 753470170 22702995 196656283 545405784 362070350 100838439 803096023 341417238 955147586 138066178 971876773 385606688 238824019 298375776 206184374 900645421 920584329 63786640 530590599 639973277 894916105 65843419 468799460 975939336 315914460 739368320 512824136 573062333 85384313 995158619 618871410 570284798 587088348 269667723 720365458 857039808 219280690 270000361 71999496 189678844 638245740 433998082 621869965 729594305 333533444 664610473 751847014 419086419 229599412 224299044 491216230 156480940 749938623 943761559 490599079 841929502 417127518 797808064 64010996 997872369 325270040 730183423 353403760 698632015 925788694 246256620 312672783 817638762 670691137 220529576 965193702 369636970 474047954 517056913 511567324 209938769 885332021 800659273 669255325 181373208 78059327 832272041 874149747 569398492 971156304 290410853 364958537 398964250 254868733 486437402 309155790 346139975 996119742 957966676 863030624 660124046 927903240 171886444 726645807 447666152 522269630 906881827 769153956 540492191 217216059 693732501 696757212 44796219 47684260 479542131 260056910 837303076 786171759 892032851 797586033 373779286 870275900 740660815 233521791 568214623 107446561 246074333 254666913 177569159 85994195 13360621 202092089 605628716 702755177 990858291 846517134 551521596 681690087 619360593 47986920 732137134 390041138 169975765 649671233 168141066 462798854 66904509 713996360 536721164 129246641 407335514 813675374 783155585 531745364 798235935 120146366 518084479 151904073 818388984 177017832 744193805 233242058 608574171 391851812 455655195 920549246 299624910 841142529 363891218 857407589 451168278 986296836 488304443 65887727 368638339 442314097 619630467 600493194 218112464 975507440 747753115 707152515 543029057 828036648 44481905 752952906 49694740 983067617 719735019 708127142 745448777 820546365 514655038 858076358 952859428 602381421 545224257 632767676 267295104 748718223 878029084 228703276 965194297 431095633 208020330 585493073 377696756 391807687 956191252 454065621 58955454 48178037 230500467 460290151 193621459 125182558 75835331 199142323 686297289 686718042 109851357 753331338 790882279 344253918 93251815 990414614 747816587 495477171 551229904 954876923 497963902 690859147 667165878 945203435 995679267 716452990 205664171 532424028 788100339 121038643 157733839 340294773 320660383 575305244 279264537 903342705 7270242 936546940 493739503 400052726 50022938 425469052 594543950 952811450 893514890 602910811 997160213 761228781 613809052 557731163 610838445 228631662 971836466 90773557 743475678 840792966 875215679 460864691 154182101 308103362 371819069 118587925 46500056 731616842 396614636 583752567 368135012 30295898 156602490 703782483 159821171 226653547 427372926 447822914 104644596 494459218 575797393 277171104 104923374 896871586 873269823 526090917 318289852 777986917 104590472 504871816 86845762 810756707 890738028 189291543 750220866 426010150 790555192 481943847 119266009 168691276 347935653 905476760 584884595 172214807 599341441 280746946 488913442 682542199 827386160 288537721 474212196 602869120 162730724 247379292 960411465 215892591 607650818 694443772 984096728 448291110 876339131 915876110 802079074 484283687 99030057 105774082 698467729 570086093 644730725 746407226 802657949 168306535 628464863 154855575 793259449 384636701 391157873 226555126 854068397 640169598 573077484 600971195 462011169 243053249 799315360 303030796 28657207 226620920 148852732 391533170 241480838 588095086 347772046 449213153 224605549 235716259 600290516 255701487 76022992 679592091 46930888 361735512 705898498 679112275 264540837 18037857 868831113 890189148 575704190 173648997 480590344 747437877 618936571 718557428 409680935 255683902 408856172 400363205 372055319 478648033 574315550 373893776 237733809 319369910 804435203 344403718 352412810 684710093 722168654 768093751 855348592 901560911 431373988 676375573 650064996 310421224 322718918 468941059 551495668 663073728 686354499 887198878 386311536 404393067 813387021 436974842 960394327 259078125 750322359 775673579 431381919 561586793 852737943 180628609 584781174 525656694 970789689 223931374 317766175 858649096 693218560 72852268 54429247 882726073 161404869 72151304 909938667 602358373 458930330 296818483 876777155 776848174 535882829 757596358 491878099 581948156 426595255 87196914 24046511 209717862 922816540 352382607 485439058 516648285 929510472 62805363 254136184 961423717 500485530 387856065 980136670 865909772 937951427 973282944 617246354 579886123 575992943 709770329 33643308 166235239 804798208 481911046 218879490 199033431 858694916 198914449 273198825 307057799 951491365 447121399 461926070 543017303 132052662 132601360 43093503 552655096 786963969 46117525 391082268 481345902 564956250 461346599 56764179 789594843 750999171 922254471 124237303 938685688 727377884 613205413 834887790 982374903 369861532 567372045 828489477 944470851 840364848 828609184 566102948 556674922 626075949 935209977 803201636 564398523 736853282 807191179 481396535 250174410 761949621 698334355 342822563 932779240 278704090 924502579 792703156 249972065 750922318 419996788 693275674 297193024 574240105 553763549 293263430 328406496 320757286 37532088 487764433 523445114 732086337 207273793 77318566 74586732 760723548 866596182 82266948 350110355 711008807 56103042 73115860 550660055 778900259 843136989 731859888 613587812 889328058 694261853 121042920 835541557 429580750 822273152 380507420 580933790 515466720 952100825 696341014 613884143 854712395 892652216 632973659 131895154 926232362 575328119 51463173 315164260 50005147 679477666 26676700 45385683 425348507 515052638 603850047 714992156 152596159 120351631 928775917 484276808 942763585 30456669 761046078 470733995 964704649 982005933 876863569 786212189 866763350 983702588 67370769 671855545 401146132 578779475 36359425 694520858 411174185 460822109 416890762 147544239 621835215 747878246 652637736 47587435 444176801 151737306 326115105 437127558 394921280 87817835 947974177 596411144 719707046 58583072 366403615 320166166 664688545 684763513 880528798 635802774 353908472 14697195 88499907 568770824 167317249 281134704 427640587 885309961 937020070 474478478 525812377 55933648 444195381 945234262 256352662 103370511 686439059 702483602 327741081 442843004 310615246 318701539 669032114 174300490 833755432 108658164 899619177 650532706 723147374 670701661 760601078 883079813 557118873 163035967 291562951 860049493 400734254 119285780 8111795 799299137 247131692 852499494 472429574 742569759 400290243 650390375 831894299 325717976 786290705 223083320 895677457 920494980 84867595 685588328 430765683 355978714 985117923 616556191 964320377 921562909 159030328 607249142 243044230 550710610 697378384 900090292 816715318 24800391 484569633 844190508 513955808 661548739 852511742 300706858 863156142 532483449 141927 936578426 806716801 323271972 598402078 204288139 468017825 912179260 291839932 486280151 134078797 92842768 743693546 681772260 474904205 709338237 777407887 479552441 289763976 435938877 562264317 990277543 6572814 334134631 126382451 332616684 769606057 559896579 442808714 765106480 622961571 611498356 322629658 330290977 865323305 851268778 894411387 642685658 454834784 262611336 683559770 232694649 301574044 294410737 652366331 407897349 816107423 69792518 68790065 700378420 492290676 762730352 606024966 994207753 403467338 776147068 924191972 152596687 157006729 360663855 68948852 493896424 807105338 100439243 750715986 352200150 623571603 595210257 693340191 499144323 112241557 285685102 340518389 718966132 427963877 885089409 658093788 631175369 896186775 638126432 966817286 353734382 180037719 765818941 757373969 997166570 829449459 711583303 312167412 31717483 108707271 480181655 708679255 254904772 529235534 728720008 143539288 737081345 549034685 439790588 519092751 728593459 489235153 55737007 921103023 678691884 422237053 476023664 363945981 244393976 435538468 319471508 642394516 118284767 315396234 994533737 774414398 727208518 422197169 355139275 161277905 169229404 833690361 696960368 711357290 798194911 598139811 340682842 349870064 12969694 386849665 338291467 722883642 725842305 735809510 998591060 560034249 604207457 478888623 800472278 497991744 50649522 760375429 926567595 187171764 141038242 511499504 37295397 488269312 996138221 886020922 466945840 43872886 197059562 310692872 592493835 707971580 735503610 313624017 930221069 559025002 926249395 606540723 456803666 427710430 591535438 469362165 123108945 535268584 631368126 957106923 905861131 280057025 640075742 734732427 671093038 946320506 143422913 156879671 811517872 913367741 804901062 203188556 445794744 76830917 617725242 723575837 848250152 511716663 393185325 386455108 875040636 788986348 277309151 165430015 52915581 952732361 315594725 750654925 74245857 928253251 680259714 768646645 294765608 470329698 215861443 283752150 665888459 131662907 694141839 907787301 299446248 536217023 862959074 700279048 967749061 870946519 96952853 399324895 622556237 116081767 239448332 24379140 552397894 158489147 989810804 466326204 941857737 168135441 690399531 766507158 243042545 464281308 172162179 102920229 662883279 985244848 176254050 58182333 312799387 151810371 314815842 106955861 109664109 223895113 888688473 703558650 395882418 565789894 510582535 800389002 375537947 132168108 491984204 287825332 827769621 775937774 455607820 916551992 917909474 910914524 263562699 47922507 699278983 70441008 931193434 325663931 12586563 437344653 329814284 549497899 458547666 384201364 84694600 948165369 697507630 215991022 864974277 293725369 816537380 921997233 121014980 673134316 772574631 681212863 948773763 741036219 363588746 809892609 466377012 932323776 714174151 762141534 362325211 875451383 646277984 474987436 212689348 169071296 136169336 800671867 148972633 980416059 773306173 655877623 384464154 674900764 9183189 910622514 666897690 396619015 173657476 144611461 837563449 864273269 967287674 749293539 930258046 299890227 908346049 166163848 21295889 237247314 695093926 871748622 260498095 590421855 749563270 545264660 164396663 911991727 84930934 334519945 822670550 985930101 526341382 249114720 948386818 196587335 765349254 155246097 563849710 786560789 935518241 230683453 51839682 240772722 424220238 145234175 431639906 17177854 655710440 359621621 668435702 655773348 363196180 352490813 338732294 412675165 615282235 421843188 63220697 410232997 881864117 829407488 123921029 803751036 404327862 886767707 38292942 644568489 278761854 159258246 65517679 196707763 998232820 423005849 512257997 230163425 949406390 232611782 727659210 775624788 219604798 208132140 509515263 32883928 807988408 705584648 120904209 629412773 631183664 505292506 756988694 240111969 799124831 519666562 456939143 46948379 839123008 606260104 850670163 378675388 39090198 838064136 210023686 796973832 534411712 971784502 355912584 793528911 681198883 378349663 81786762 151733180 162643046 719696162 844422240 985592830 421462257 307616863 927848602 500074601 946935706 629708470 641798281 857214346 47729044 267941248 189725966 257988946 269732757 634192986 716769293 995308457 898412555 989745158 839311343 589648505 658010554 900609835 453264725 38820755 289197467 676845089 486105642 611094365 140368830 75446692 847671403 309104083 814415347 716879345 90591460 96305601 469463721 983084179 150647555 628390635 762017185 600158943 4925590 55069686 385178839 404332706 67653733 52186212 129933311 953544492 400857663 565753317 177600815 779727662 927723963 265290285 897282690 718151788 817078609 342979191 220753723 664340141 112014583 598887485 604068488 156913196 344201772 729359014 634099566 579360263 43550373 574870330 301666812 298677735 289831637 182227088 341353694 150683703 126888997 134309715 813100502 78037339 617056986 498677072 913036374 915915949 20300338 23414637 830352863 357448458 215446728 753908634 897865457 460211509 117269861 160905071 308699614 166750780 594040337 702976837 494293479 402695929 363482751 709267323 832164670 980638960 362267140 371985529 630156037 4481252 863434705 82670898 440251720 827266233 928345706 280240165 286057617 748163598 904565942 430852333 81158227 96639250 586235281 672238881 195951326 843197823 498381220 646772218 840021850 220336548 800681640 903141669 350920755 796796927 267388645 313340625 630577038 468432439 791873333 505195231 363129966 79720492 737178252 539760220 109913231 343356287 600247204 720636606 927957760 191782984 102237394 332082267 705366283 130739981 103203833 285527421 827916932 388672924 651198436 367487390 161696453 399673633 83179214 588152835 131320506 817082596 862230883 729849842 148449246 36359689 719699284 191420283 72411786 37061744 704687651 827849012 523051938 4199121 982668316 290225539 1058229 930164675 783937073 778716459 483593569 218211546 305492454 776962751 974275035 2887192 864095058 266743705 162746216 153631972 882728290 885590371 813926100 797033525 315078591 395459956 344822079 340237941 458025288 365077795 992011525 841015397 595169552 356283242 616230565 396232558 408316453 471609016 942414614 71372954 299044278 305711631 328960256 588852524 164724356 981252729 289337418 711137730 794842156 710723963 11401648 214296390 930881789 967695952 390791169 273284736 991559155 266233839 862652596 475805812 270124633 553304149 423105629 301106217 614907900 861251427 930948350 371156629 973733085 363463724 287676603 580675005 755260793 581307105 575099335 302622057 293841805 228995073 682219698 113750433 110625729 879745153 165785620 713655220 395450662 917053001 25186792 191454615 203493081 201322191 224946950 707962302 729819484 602236100 183899545 655160961 792218168 79037497 606288678 555674438 883944548 699678776 33682791 835475841 346956205 497269308 270522223 161069538 639924084 989346674 506227089 641885161 331039028 813448590 901093456 949488074 876990772 570860861 103630990 635980040 327447142 727769408 582945487 853576254 470591678 66142634 337379991 873321748 344570558 465293070 99296231 36395000 915805393 601462509 749621295 92085335 843591223 851193009 837392180 326755570 770855637 285574698 869384992 97302128 175857382 90852936 69244916 980283358 366964731 490024605 534814280 958216975 658944036 196976495 719882364 221479694 192812600 702085650 607296720 856198313 430279766 506355080 640189859 411561238 414532594 328974214 975805169 131832995 934646407 138151127 772630065 172318313 366246285 113620182 577724211 908829149 324967807 684117859 916335555 272776990 458412133 149905463 304434110 14262458 79148168 575323660 830845157 598647451 272271570 613800938 528205721 917272073 808726395 980969762 110242067 206274949 325211990 705812823 670640850 375041463 849165546 498147101 902113682 315238747 81152943 242874055 759413239 855912319 594351016 513892241 902746437 761664873 228864772 270611490 463832827 429154089 294834082 579059522 5465894 650790065 477365298 711392801 867205144 257258022 365884924 437395904 779112611 80511 176714392 264961070 72141384 357005495 949472852 240606404 773960374 432626454 248673397 314208986 971558967 725845174 196176714 308233666 540902805 446558174 933226758 308171732 168923560 300563949 553516791 94585067 260484534 918682970 797396191 947904011 721749605 975920855 316444110 15460784 88057542 466821780 254169453 159057257 385083563 292304737 103356868 30647629 535784439 601438981 253202464 578342316 482387660 646830081 138889612 370556992 693705252 499249759 672024982 331120700 125689906 775070971 993602590 141879121 546835567 490805640 308881462 428665132 660092670 303522464 944127312 29535723 277080944 306753042 535585649 939803249 198192525 677632217 329348605 802899938 452131717 289765387 882905331 459453618 729575384 782188688 570818070 970025991 848944761 999376995 700347104 381417354 534313907 359032911 987004013 536707942 382138380 481333798 392451953 200286240 86370007 114356635 770730751 888746958 952665735 648216068 974171312 649125567 691882653 922324655 910105786 119040410 801986492 799517374 179182335 638652552 620471148 905385445 951661102 374561254 965287161 272263152 935990041 282434625 448942814 788115474 601818898 664143187 106451437 874016971 486381870 771974459 1790911 963632517 369931411 56098711 51643225 189456022 201229265 622257946 745507031 926985900 920074803 459822930 337749915 3982448 783458038 6404380 398778764 170319240 466212537 439431762 8758990 374116671 276411532 854786733 108948446 665573153 932470517 445869731 995657643 617768882 995833086 836267058 903130023 720246763 146344508 216395453 319749379 42699041 736478365 451065767 823383031 674186533 373346404 41618106 308809882 859292696 866508439 609122235 674643298 699970888 694722734 494263785 59191641 183436340 725524747 71449582 270725417 754396600 539619910 359537155 801580736 2520507 483628606 310245693 747695565 222167033 649026211 286769789 364927111 193392543 46290408 979474136 657378108 645619181 825492290 615858995 661647708 97262128 5193131 421637389 414218048 14414274 350631117 3649645 288898367 589012604 240010651 227561939 124445923 136841798 553839600 685062462 25089953 107445547 653032923 423488823 421404889 194312922 915670510 951820785 659821140 56725459 806243198 829419504 594843417 714545340 422590973 745758988 445978144 885863964 152126525 318203133 531481563 638168292 572006854 729498314 264464866 579030784 499879988 691959359 326719206 657099803 506741963 14114881 37998332 259438775 471465253 978418031 155095360 670964017 905564271 760244923 43509397 621640334 219838129 943043900 260687307 12824097 536747019 558772851 920453986 411737651 903892961 382916647 274281271 643101651 260995774 658047543 406039959 810445702 821032824 183043159 248319677 429530277 26230003 175711558 467229933 20471681 641940523 564312994 846339307 864994356 333718878 614054110 738561793 623309713 745842187 49642219 523301581 330950209 607512804 774601371 553045354 826049463 487193998 982765643 206272601 708574792 964558926 842991832 471361257 445342260 224825575 478541581 168915817 549075809 248491933 639802632 644913055 299402220 311112434 1474189 360353542 409233031 163851671 59495682 645230224 232225741 997608578 257683037 683153223 622252078 709940866 446875148 356027568 511340047 683821558 182308391 702807784 571386542 353362485 222345638 199682068 532699088 648058557 754564713 974269323 292029118 360852390 873734905 104590757 256621607 690284298 217698426 871297141 800751760 227785337 460204825 757350907 966648669 78146647 45671251 332560772 938677386 777741592 955093241 683166534 738721693 463311613 895588170 189989704 841615031 927580440 256620066 794476833 161368926 655575856 732114354 957037897 358632916 434832210 118311676 138983327 271581173 297379858 383951269 690003548 361427394 626636228 315099880 654126832 714606210 801590529 461481760 24222365 141717668 949153571 804341179 643795979 350289243 143996299 563415473 609527370 380901364 878392225 920475168 709101874 67490264 733343735 958436060 531345756 489988464 414339177 713653489 527512903 827887628 916623276 589196652 72026992 899492630 29035657 581547558 830360776 971028128 595937995 36585953 13036324 519720744 409674873 967462599 991855213 558566687 404159738 251038324 179773308 183330371 745132150 916506765 678365619 360558670 931559350 826036591 187384611 635648285 68782254 665001270 580465980 580139123 315683637 239174437 777338133 991639164 422056981 541464429 254871094 790152663 742791585 569413249 971481480 288030446 372877508 508218145 468445198 42806353 41485844 25053539 666410439 911972060 372968990 507884088 903497758 200822274 412583147 479731595 983824803 308730081 614816173 869528091 946267616 965550260 957836947 58601456 936089659 25263988 269990922 161981792 729310310 88962842 202181620 750773972 49450209 792667214 608909887 483789426 568636098 672769984 438068602 75938391 587301382 696796296 298751320 65611408 179373705 711287535 245553899 272285353 578206808 751942197 789049972 875126447 195123180 998083723 80059741 940095553 908854551 919574017 441209856 378949621 130196671 338387391 997040407 266088991 938911368 203738600 537246952 827229507 48891681 67224455 779636576 832876782 872467885 605513341 770565830 679505041 447985863 557607890 541363713 350521063 447678496 601459681 570543960 777905690 536654964 657765045 331562584 943333048 658703396 52909326 820104271 32550838 877399443 666875746 196988357 248177128 528132297 609926779 465871252 260624018 377157081 837275961 269341710 267727462 159039980 773832111 591815396 640804251 199467008 270462340 916364040 567061707 39962276 115038267 810973960 934215038 757718945 492732065 142687556 633167789 389666496 121158859 712627712 876033241 278576669 680274166 457727701 335641430 282593357 840659808 827755658 966560203 399321638 565839536 240614682 757306017 443548222 609691512 695808243 254396891 430958780 351867428 419516069 687510788 435294442 941419818 849940261 413323661 115675743 493722569 606033794 935529018 96394087 702920309 517589676 129436490 651826361 988398098 799976891 248023503 147297582 480225472 60611139 820222035 360117498 350093335 338730867 387955062 264440674 39562211 18996291 827571534 422476977 349673084 587808889 43672498 432235466 21205822 500163063 2141289 952262599 617476436 285803084 745920794 3267994 762860877 250870721 226411772 44976495 643363767 427188790 763904499 480286569 410711141 285314440 706292443 92982230 791227828 360107973 850941126 686489729 332767332 407099372 605097094 746496995 888115514 411668805 937164577 800914591 346280061 385253688 901722657 563035612 781383581 16569155 963754417 116020129 587356542 534813294 199648871 38685608 145690766 741051153 167170202 102071970 538114372 818488300 23135347 1925661 831550259 184689293 262991995 130949360 975848566 666733441 521589039 471824469 528342865 681541816 890300513 170253196 251959042 559005447 778608772 32184252 305078235 925263545 136032661 741201280 635181547 833353886 684507610 984827765 594755577 661620416 526527315 775427185 270147814 639112223 483370370 755602578 441668602 471040746 510961752 918590431 217403745 790505876 230472898 251972605 956602488 930031777 379259914 252253013 230679727 749420297 53232608 382649132 366873874 753955472 476362901 61518841 587315765 71241144 173931903 895148919 340169878 598258964 58869560 332351514 187692810 236197745 114151617 1575131 78074509 765388230 97215198 997617233 537279900 800450304 499220405 108064598 78436013 690773546 124662458 668648604 404163369 829975914 794896348 94323296 176075450 413871395 978608621 447788652 860821481 46835109 503837844 651044235 260013019 527712093 75787629 223867033 666300460 864003847 764027814 147185009 40162606 289613015 379071367 449789788 535938418 890526405 897222171 318983444 418853917 850734743 593809451 362624026 492408674 331042734 170277189 762858285 359923046 225417218 822511466 320371822 663089107 742486328 335209428 392792567 376855781 952353823 568068963 599701104 359134134 457364084 495037174 637233627 691854569 708768850 688459473 43838053 645556843 878992516 335465938 914845090 764917229 642525482 469807064 830540976 920980220 71440056 898646527 639812878 349686117 502412101 244706477 374346218 959947514 617042500 1470192 336229395 510781115 550588803 232841296 614772119 957333090 238658054 611752817 718209066 156413050 993666727 872104173 725581651 350956865 712979691 492986536 639538945 565863672 649174086 444626699 954741256 187400285 266122710 280023157 293379732 338732308 87272450 77648509 691631485 9121595 516227808 521643924 105086290 843039726 244444073 847474974 75544703 791587485 199504759 198920499 571604101 719943320 11176384 820284444 76974522 199045263 218918058 720605990 615973594 983956019 974997975 48196258 738221048 49408126 441682322 246116083 593119062 588657546 484488943 513923688 695655856 932109966 926593136 837168341 784842587 484885111 937552840 825870086 320501965 411023904 37421818 434609758 688954412 25391393 697856782 106771659 618511522 522783331 246989649 439194029 458942332 117075751 221639704 906397905 529672045 165189621 260936307 262848703 557292024 115664714 12208239 758737169 955485266 696886078 226718772 899377697 729722805 223824796 245484720 650256263 247763309 593872354 498761840 378427496 283851884 121671739 38597050 697457679 467759832 553736672 866904496 315823734 54969914 407289321 715837536 342037000 69747973 798354669 826850168 358323565 275799418 521156127 330564817 324738641 513609834 507673308 581024015 80949448 819354104 167944558 326318909 176314403 268361460 888022014 246876669 949227506 236527540 984602873 517066264 496062566 787952931 425120208 926720634 153929305 154170902 593991349 568183922 115056264 9197022 612696582 463866764 707236070 68079540 333564034 580989602 374473927 490675552 917294811 672211654 205737325 848804283 659838554 784036098 741559718 894566472 116435585 232637272 814018252 206442043 293424969 140107204 817014634 557702998 499442030 799081812 43173120 412803885 595732883 82159683 350562759 919501816 61656525 170268587 316955497 317742216 663034344 123529607 697461334 215871997 209921065 468482160 712852735 149073957 767132870 640909767 164747367 582347163 98796704 564300742 616792927 170998053 741581421 892947930 474365716 437388047 298993107 725116174 211134908 959386 165799189 630762977 480414111 730677431 543636000 281239933 21854322 905108876 339706867 840005780 935581285 332417234 973572173 848886569 39001267 980646224 869645388 116240881 948444935 844608769 846972011 283648200 111321513 680467111 61220194 549840230 98555166 904268801 305561007 321076308 905784338 8118769 864806054 977651006 898253853 564906351 751070445 853540324 480759925 680860878 68489285 99324485 731501086 941766106 750162305 91993453 875703352 284019891 770166438 833383063 5746623 314004243 213071381 461775088 459108304 388600206 626466117 158239243 181675537 581480628 132625216 675336000 439796534 536699194 755423691 609205989 424449899 615104308 551530705 280797293 945769851 437074464 713980673 85369885 941390350 537503495 50550820 719942442 910772031 37223683 651084416 106472650 705508822 650696572 170455348 328401194 794007243 126488548 31545956 625597779 349334712 388861328 230469805 199284172 120669799 203315065 251130306 75951762 683704938 74640621 713415247 845362113 726393984 575937468 273149094 312818995 682028269 622630642 193264492 621791567 802610183 908742333 969972172 897839431 427228883 69503085 215878433 404765741 616468445 447977729 154061282 460932163 345889134 983814949 189626488 441205736 743619349 25060972 561672243 933231728 779765642 164814512 43520865 524809987 57372821 71115217 934647688 932400652 986937571 728497095 603359819 150610815 922452084 278523968 133622617 64815147 729234381 954446831 470357765 480408011 276376789 220656646 277865109 816106277 438796769 688949758 77930682 300815655 927605255 114312388 62038614 186194014 660266485 562411904 871912914 81389487 566564858 335246311 277937898 337830853 136264482 657004175 878268729 183279376 214859676 855620637 998295190 878944975 616608577 628712207 962686051 758131807 209332909 60128282 781022719 341958749 946652077 804912712 174934880 400229342 799098114 219864788 698519767 883048059 965241001 114630106 192964121 945402754 238722781 294703720 117200183 93035156 504833769 50838714 186282578 715883832 739523586 870219660 906200651 709797029 622442479 884820030 990638035 144446234 621453666 794843360 936741535 48224214 293224129 346457881 588341002 241539234 847626002 159998157 580883232 402116534 761317589 724278741 743039656 829966005 884190263 28425579 670961491 837684203 744803190 583367810 393879457 859459181 814993642 109365087 401722272 737932523 388676184 808841155 138748076 823844736 124926604 784199960 532733383 48226416 971583412 52000120 580556102 239919336 121596167 412805713 2837384 152659430 961642443 581037045 52325721 392556886 844287482 467246502 215316349 154746919 554049865 231554520 243135978 221257046 617021938 882047566 733977507 230160149 172662191 743223069 782344101 197433880 824680472 444398977 227662857 768369459 965250565 987225015 919659508 950712743 465972945 61814918 897214343 321607062 671658621 367549557 693228952 464687569 932726632 505350912 818769787 329292657 183857477 184884317 271587781 405174725 730889858 606433159 491433958 998697691 330779758 652529723 948741528 860161915 356428766 793074032 117242757 61859039 93597200 804523172 388838680 587245310 818269797 255468277 418056087 561791617 210369371 825451290 535804513 318611030 957518480 702710199 222534818 529035776 524503410 289897552 734797696 323948956 237241014 136300103 316360330 988511093 561382055 949209575 100650800 868293186 54279217 93683181 410166180 792157814 960121578 549375821 629283450 102378990 266922542 638712590 626097580 243916997 444875819 902417287 811748161 900281850 238987184 781158728 400579821 889268392 408136767 623622640 682586633 117895043 885270843 166682494 241203929 111692060 299875135 610796222 215110020 251268121 96842507 610022766 170047918 156407813 568939328 430665098 203816721 343712890 401564171 912012726 513535447 315076703 368364260 279290768 418137508 850752689 325097953 925318504 479784566 677910770 38031833 35193983 700577052 485714378 379880780 979397335 279712782 249206620 373889414 986225023 221819725 940794705 672939517 444501195 11460428 645372700 416373075 141941824 554291115 122172489 452641914 175404679 725036792 13579894 358645020 869823859 473938415 273709120 537846011 813109569 78895867 249374399 232274309 351945082 858442392 620857406 707356790 351204629 840479390 651620589 54093193 15698946 266835255 373916139 865873176 952748092 955633694 395169600 365890339 803249163 341437422 438545311 729282626 399875232 427188013 378754272 238881143 400213244 458750932 39806158 519230477 212860423 685939362 611887549 612183259 595403984 625710150 887749918 508441930 25534282 4846583 850087864 52917671 605862553 531279277 77955223 304031206 881806459 622644063 42771727 731977532 912422088 111412125 693474355 932265790 699492563 279807459 266137144 614227949 605879455 281274368 63480104 503115734 988121317 250668005 71412643 470068456 950768755 30430175 877180103 464321939 490137564 848340057 768364162 825124968 880176630 89409066 315542604 871278830 408997841 871326273 273508669 667977370 220631120 554055606 453276801 260848771 410122237 421556173 948545325 498363236 936000700 666186707 232817003 852794729 601716737 434445020 808260221 908953293 548530798 220136964 503095119 402975308 67456814 273472331 931446006 991647078 966500514 734086357 178759310 472526458 267540711 524171080 664758394 170474961 762559286 543343353 499590792 55535335 854022640 926265711 668453896 772842164 745210459 954835336 617320121 995738258 246860762 549696478 318778330 74215434 645087171 84952885 3526493 882084262 378562329 940171260 939526169 94471253 549813677 68558276 951569319 694687166 81681110 112975185 803477767 212397942 83071670 766667410 360580046 660430221 579926227 382985494 773903274 812275599 208686757 201983109 903076478 429429240 46731269 412033994 487116221 543817159 969709588 346792616 336830039 436851874 373212995 675593555 569533990 802915712 853226256 476354928 952738214 611809920 509681061 206214629 600712605 568181995 439372367 432304776 94180156 193003624 575066267 498314866 814370981 277575131 421035580 678411855 378134072 525962318 480649624 417580071 709234405 295157023 75841455 101986416 685390184 382935838 309034756 968234288 795144441 211595400 554158423 243057752 96517903 895699526 124966721 541551475 772458408 708712497 60369271 280706395 794640181 613281998 979184398 92806641 983708054 523211153 8296979 144777229 503166754 761945884 133657423 326494544 861692827 120705497 424922241 909211724 915738360 228197889 351021096 80761700 513607223 926273710 424471102 582537691 140305295 733623740 866913926 800235133 963986336 189932663 52897583 892074971 333456804 983455794 378407858 230213976 112079643 853102912 796351767 157542981 813379209 901820515 227581621 165614473 931406640 128055155 971158599 521435459 777372960 301215503 97727565 443063875 620330250 784420482 83730756 583625340 430631214 696561776 556518780 681924954 53029669 273135898 148737360 260229801 472283891 628528933 241113354 31451494 239769550 447890243 567297934 521274513 322120958 962568016 573000262 439843355 383704437 248874600 854528904 312842149 196240159 851771554 497163075 57113877 179386150 241229711 643815967 324383627 864905706 426879052 257355495 714284079 857216657 425508834 530905181 942547754 495398128 773035933 453580373 222544596 254027849 184313179 373081465 637301490 586116483 37180470 872494414 6993969 224560430 94281879 800492034 97253787 167308185 593357284 18426205 937846774 295476381 73923323 272659259 22642263 888100055 688439116 989487725 938391821 595547702 393973191 971914691 531627805 994645343 921591831 748310999 954138931 909500286 9283829 617461913 160120735 542470353 29336261 461470288 527105434 779027213 200798018 218858952 428576377 375731933 919205706 239232068 924102978 495772221 438702712 655098806 112310818 415969789 800895661 754097310 654568961 1606803 605919111 75246621 938232140 306477958 271278610 327759773 776845977 134506683 67067401 325068871 203347026 953664320 208247969 619924813 84841587 455561705 613310218 406878754 493442368 537588804 752532110 8635195 758034871 953687910 302129413 619892085 828943697 761768865 382731363 65781640 158570643 48048243 487381265 848709394 167722496 7332952 125070082 334083816 264602960 118983901 627555440 627909698 284976931 353105812 796837573 246387466 27492009 520548808 111455395 94190477 287860820 681285278 514049503 84897027 659821437 588478500 218959769 214305605 943660997 945635667 104808953 10012223 248367502 195391878 622129510 894629504 43014010 311323462 240578406 901768090 102524196 627906037 685209895 990340722 516987554 656200595 124535463 464905577 356377197 816465882 122920106 806141855 242329494 389570380 698182702 676417609 165218940 623574917 775312980 547917216 50820423 71513974 925800087 210584990 35998764 901958201 47485777 680112904 622806755 326437412 778402647 275450284 881832303 714797443 134021635 251267020 33471963 161478443 722080013 48274951 779541308 413908544 214211499 175120231 754364175 887830993 439364549 55976330 282350539 483741422 638722728 745212717 829769769 736020291 36845164 411211022 542534644 280666707 112431540 320479061 712004254 135088021 107641971 369637770 777468444 64077401 739606998 687979939 447936798 141793674 451835715 905861439 67537815 166108660 569916224 767073092 480450534 147060858 862432889 510684320 827153620 746572457 538162994 888021902 605958818 969836117 521317362 29239507 410985236 346329135 899445711 718485149 336665034 948198237 639997258 929512161 531445354 845536654 412034606 481717063 25482331 763111428 420979822 454585135 645930242 439192198 429874190 281604878 281789047 801361382 457825094 663259029 95486710 312465311 920078002 551058948 975170118 926939050 724096891 966334113 629338695 144897037 953636356 227247861 452397063 744821294 557241479 829405541 829305363 570387595 847874515 216275444 711473960 578301246 924895539 42736440 90508903 507646521 886886708 924796571 936464606 557499400 855009848 750170795 936170816 250182762 611059554 43429740 776569528 759353429 505474966 27592478 819121745 360369073 242580432 653227200 212914779 405914664 830614113 489576574 243692154 358778819 72620703 653876237 273388929 139726990 315829297 403822425 190351290 110092053 830671258 890557513 250890583 974817916 644498334 384837992 485528199 274725333 695779525 70790455 606582050 735337883 548582891 225031198 812148502 656278385 505852825 707675334 292146043 373428341 188479811 749458740 712299068 751066876 131647276 456045717 982814289 472124994 584309415 214095215 212147334 411728609 483072545 831223743 361889616 305587154 591040497 146307586 306728928 774841616 475105829 568982708 470559687 496596427 954607328 654087142 506109843 402014150 200680018 119690288 724666753 584540947 785717720 197200642 40582491 280069503 133707608 248374698 179134617 226189208 124082090 172879046 239561801 189748654 651926909 962714570 615044394 551110118 933620519 754853123 13383195 42662724 192059842 895056024 544708106 641388416 432935528 364389055 795929017 946818372 33982709 504894872 211525481 811965803 996991872 398674317 68546831 954333138 752918068 813044607 515060249 583361253 231909241 949331814 373007784 580177081 29346987 854544026 857703801 464357204 791299014 905330579 855371652 854605288 576124839 91967193 737875610 609577752 529434082 165233706 894771194 360532370 490624537 972286694 46457948 74431262 924266544 120140423 495692057 15712204 876524045 696138044 292953452 445968037 462466596 429277104 715875951 818840238 313330214 81429564 904570384 676448755 720312349 173899509 60833417 507432278 942979074 468648808 873325350 638099996 875321508 511505700 80752143 202226436 571229305 796973818 239400509 645466062 123401235 115792095 316382248 54112562 78308063 346653206 625841135 294378589 195257480 264445180 201330608 957067487 122845566 769638209 265701887 289942852 100929604 971116566 473285390 443547905 968314267 657188479 919186288 591864206 538131288 891725244 838379441 312613067 404824331 570062931 684871001 270399962 246218652 85995967 787246978 3975340 762440360 39542619 12568631 403204544 686731772 765759640 133476391 810090109 152802107 76403426 811221510 849380876 597661738 162437442 628570709 959385098 249678512 390150940 990800522 64614297 202204290 501075898 388639703 868735312 906196706 907969080 897784236 555307594 921686809 815041950 994472449 616817611 571470204 926868764 163194043 661051819 189807701 32691914 377185418 616598076 844226158 794689458 416854610 653558402 706570859 353217600 469205892 671826988 222333922 976291719 603964302 225363918 177551424 625329938 219835306 3268759 365154128 920496216 149801574 134722598 227167802 388323950 40934101 357202154 35650686 893018074 757295506 436442328 45199300 613940739 226581461 715593944 795385272 623783110 774683014 131750790 894993994 448493189 752038747 695509627 242220699 845018497 81433277 970918143 326466430 24494925 581991204 868786926 477235119 605077225 906960709 250438799 807106831 499076909 371623433 699789159 367551112 436087048 395669764 404849491 207071424 135057612 398271796 518930630 463670410 860598028 763204349 886670935 456935084 737873442 675769014 424580168 684197067 987585144 274774087 685882521 745676406 286026815 445937880 700847496 618763709 856271022 135447833 921760937 407899067 478680711 551321306 704521907 631449328 545052880 149981850 488757711 896692997 27784817 495473267 161669640 958893274 42427784 462689025 766906065 536073180 651503520 998543297 689687524 490881048 94332385 966430310 71207857 978361075 497437203 432437874 439876687 388729537 688434491 766440160 406727701 574905481 305901950 955822463 840960911 78347271 779854562 61898865 607401046 530023348 705585758 409002719 971627094 48801514 760773092 211119938 439124494 507154548 493390334 956222397 130852829 654820007 790959331 913623224 876940705 697917477 183244149 598680557 945885547 38774700 399292606 219156633 154539147 464357427 716207622 364775526 589150485 83542071 140924827 702261774 423324014 549404347 373387383 51636784 751733643 487275355 536777006 205512277 283936024 171901092 629927519 260664946 192221858 245128423 577939301 155064311 172836363 514953085 737545206 880637781 479264110 455504778 887238259 807434622 763700806 718397912 363092943 921533954 446921733 138824245 649449791 549273167 729237856 915453038 597473512 287712410 602458952 40940003 786111310 822178430 346180783 439224199 734524985 93210874 288609182 695757179 725208564 253067332 364400227 195787085 88481676 193638055 876475192 148600154 701563302 72455131 181370722 122412751 426510012 220312152 712324062 199363198 771987025 103710558 484443275 150117297 589271166 699540311 630066231 518687074 641172771 512385886 933628847 236857279 471036233 695577451 145788046 731031796 691360950 943422818 819725079 845494500 524097222 386090925 182722496 950347153 330915178 348753483 617226755 26952951 326449498 915831459 284675579 39629067 1465566 515324184 483940817 237767124 478963852 744177261 169187454 945758955 616065443 618483792 553967579 228794330 559145444 530817180 474133023 74399092 659841111 856372995 32872111 381563495 169050986 22018033 951071086 901330257 518813722 428294617 291510541 753610500 204595632 415333710 744079901 693588594 384208906 532831704 95911955 937602580 557108246 992003853 692328135 818830909 733035516 55022918 949909191 838440758 324064785 660840809 197697284 269175750 734796037 321729289 965707967 603641854 903148024 765517599 525485530 688520813 480006415 5718782 673901929 1114140 9804035 597305771 590112801 456875001 742783115 819150163 298302885 662233580 52556422 548101660 218064938 835161689 399603313 993739210 414745 235312726 810438925 167094838 274161485 639363461 767779162 684469996 73553963 818553034 322847447 994535994 257886699 93534018 946887321 946826800 288929834 958032251 575315480 512226950 312564605 7763229 611707188 543769221 644882519 333523239 218337023 282594846 455857375 747454767 668238182 402607015 245413815 294351550 625292474 649312779 821209252 290416329 343091398 476773419 706592744 385819207 426307829 197393108 925828076 392787595 189395854 907025825 434256144 415463901 788468238 140654467 500095773 5591972 143743917 45865237 497879748 157759030 880356344 799822175 705878307 498736812 886058594 497025694 61126077 776325134 807953667 536233237 28066206 777979595 448106341 409299386 155732415 364003779 547037205 332335148 128129001 953654314 704659079 136333319 452942922 931368030 391762599 722900678 993163966 637429495 548646773 47759506 741691506 320464855 497861450 207661481 333650046 247323980 965386014 129152458 503380695 634005754 72304450 37204679 326691568 913453006 668830284 645698604 155127696 638248515 932637317 503207005 798740458 512544415 2012284 989743055 131977305 668724919 462180751 748969084 829288257 712603425 333273050 757618708 194358795 889512639 968430281 671777962 229297003 190918710 30266662 110329380 495890534 342833352 357772373 30587221 245258064 344506 168316107 123246444 432745868 900219986 523852979 613418384 149031732 953962780 153332314 446163020 571645075 247945010 336380215 296001592 52317858 947857174 705044332 215054340 939479520 746981814 528947046 717526828 70173971 913684908 539364194 388023550 440110364 83332941 785944433 238301513 889364833 885234905 685778737 179549203 936655311 475530306 185619616 707318135 326616754 99728361 231907849 191530667 341595561 904321044 510613858 721987249 503947896 656138985 165486011 486459122 494242942 494213706 929332224 194128814 253597887 358928187 291871015 840803847 343825941 663052511 972816103 236345317 660252257 41037000 804135322 571168733 373911645 997656386 9959267 151898165 165739190 922062579 173235349 168506147 456089171 459107528 923928907 765982050 883742781 967462122 838072826 126112287 152638067 429120067 321733506 709232488 652943158 665810097 787105271 105939645 408994995 620625004 643777910 995471718 678952175 821001357 610782476 39102223 666594271 717041644 477140218 709385195 861479275 653018112 194661800 446427305 826390894 507572409 605088168 698767913 378918334 34625662 519992333 830692785 16495867 308313999 616179556 246058413 848602569 540508811 766979177 265821912 706331725 694038973 796236247 306026677 160186044 319775487 356227971 611336595 121687709 182023976 560173450 102875858 781316961 813632979 463014777 259809560 996005158 125431996 149256631 984873127 212422887 491920008 870448510 90067665 263963484 752687374 499812625 407757472 116422823 564385448 897731677 44947216 856669957 206684257 239050922 998767662 429741288 81233890 964231211 352569402 723757038 374189533 170919391 635040376 769780651 106401703 82270739 715906074 574396106 421903650 113235541 537434456 491015037 612654413 50943712 715374719 625063596 209759357 747102371 913584786 127558880 223322485 325331411 506462137 734842172 976893802 628275629 628093752 824591564 150165085 976514206 419354829 612087536 650632183 449280245 173772330 140170854 179402156 567912685 527047721 853081699 83005712 54284331 310901907 203760486 435755086 459907567 205865173 273017496 531368898 179594811 28839311 764824310 408244608 564547750 509501754 195088678 382236892 676729519 540576092 9187808 290638950 350283464 377577811 834123390 188171404 734981054 8874376 67452647 28174087 459190578 157179509 91215408 611224967 355108130 819306594 592088725 772081709 281035568 651493209 419436712 483168392 233889847 507780393 940372359 716506823 786686051 194463552 274356245 789278518 29968393 15879029 994385476 227485332 825389519 985366320 936404572 815886484 512540760 767463054 369942595 476273971 732922835 541284945 924974371 254167192 779518750 766703123 315199068 367513071 394293448 591915911 524424315 233812557 83209828 899928948 548391987 404948636 975235116 442602263 223002715 635929558 247954983 913852446 757624239 229372094 101787921 260065103 49906562 653086421 757567464 361999089 559437309 530299185 328290355 365267941 571429796 508887821 940662634 589682693 892506846 998339766 665019570 923259282 66284781 931604070 572671587 859250723 456178877 107231681 236545570 101734211 452595986 364186879 617806052 158605631 370262674 486572655 731096160 427153836 183586153 15542056 941991025 736219727 318081997 582959866 913296845 763404361 449195961 282308728 340621755 373187490 939012317 921827898 590224316 932354639 3716078 851224838 9290973 946401934 341083264 471630385 295226557 831325827 761681293 851219752 668329626 425534341 336345225 295419533 421087140 316729830 5303966 34592337 457806462 510906184 171280934 191334075 985576671 255384761 484783402 90507278 875671891 254042382 984380825 646621924 255272332 737153105 923254174 539372917 323611902 220890412 98411934 239864285 965715276 444737230 201852091 877406525 632323956 469976839 687650951 754493080 196581329 442611010 784123082 130357954 581583132 710012160 944062964 758182334 349789265 678861233 355161658 332110294 716708654 793284417 434860489 179366782 127848371 25976876 510221169 803416848 27573671 678853178 131685195 294157631 331904031 155309210 540935136 318467226 130902942 994587879 336043590 293276655 985046853 975282540 362267239 394395667 218691748 951553518 495365601 378905219 811886689 662288094 329705784 986494630 418868164 586371418 774473473 771180417 139063365 119301815 690991367 103914386 829599004 217445080 574430818 52667730 991336565 189683659 889898198 650989164 49641636 700619662 820269945 344003126 761555813 549062994 395888002 628653801 903849756 401807835 33657677 573672823 110025125 886890431 48505221 676080003 234618038 458969810 829553344 497238243 658788337 763490788 374162127 660538764 187177939 940108448 474353496 735115439 607893346 448604721 778297433 57182644 517506565 20900345 184916940 409216628 531257322 428329509 115170255 804206430 272281426 927474015 409190236 356457937 487379409 172271882 477842763 367161075 562407986 609368565 715742557 698639426 657010896 467187059 288324213 789154977 868847273 601229294 386326947 712798949 802632093 136547579 19219828 956869753 942527208 262177057 693983939 106298436 18803537 943698763 596919337 565855100 586517006 101210856 740350652 711981061 482997206 706409827 649520975 333261988 117824351 492768930 628596545 296058689 815097806 660407379 954468321 636213703 81096877 272261494 808375386 348840989 931446888 628138516 654656064 28587383 793319689 306941066 118799656 899875401 693721208 136006931 337678624 692588623 142845985 96695737 544913159 755048658 458841732 574395969 345715663 201940036 927583125 525590461 327997348 625513802 496376305 3718091 645009111 673898808 229514753 209199137 820865106 581371039 88270742 900292927 330441633 933950336 921990134 474114957 829124921 315512312 707946754 21272654 315057185 607112659 937267537 240868643 934091841 915786712 811509944 698374191 728955167 500924678 543121843 753581186 782491144 723311366 952444165 895086635 563035338 10069527 72980823 706133862 782060544 137956730 128600378 709480183 229033646 690869367 581543472 677657808 235770823 370172644 898513471 565247570 665306012 841084336 905834287 329916497 520751169 616246730 570039569 46811673 873694893 865643815 713004007 429339952 669792198 1457940 135390889 40440703 553947897 475036433 843247907 121110364 867755669 702706425 851615505 346461026 441977361 419110667 533776292 74942271 37579220 340824763 335158544 144437124 718498574 919680269 181990645 954741054 64851840 938898225 82222247 447376096 806255135 902175474 919160181 362816856 70529878 282148427 766668061 696735642 823343094 151203663 367830584 224351806 495675797 61856090 157932733 495935195 507161942 519547976 938660374 118398993 63209399 630335502 263386326 879678173 294159628 761661706 101100710 886224047 503863851 947873456 935032827 864960689 626608711 772422381 488340039 318782570 404594154 679048983 259681169 884121790 373758445 200302573 412375565 57802014 820571630 716881308 20684660 501547495 701630325 86631160 513200038 977574056 760437831 888128604 156997894 603181768 279100058 930474238 248392187 896214754 201307373 458313199 721551108 976632465 542325360 816602148 905726235 30202751 317528125 677442515 787422303 624430404 687147531 58791286 480758859 12437795 93910833 163546755 555294602 548237872 866943998 413333037 815810236 275721292 929344198 431496915 71912665 587644867 841129309 713485261 771692473 866730652 598820251 717671105 46514414 173845626 571538105 362516317 316871994 185066921 987537306 306079141 512012638 741359804 823838583 697068633 836929450 26593393 501443015 134986736 297438025 808751109 21502174 763567472 528986555 96371438 811200994 747866974 131545973 286563066 112908387 19523182 220445877 775367063 62426846 725358743 662364040 833524555 805129006 635527887 104942583 920839051 572423607 209828777 856217379 191741919 335074711 716170644 589022963 869767026 350528291 353670047 531553737 650858628 89613044 281062588 345046050 632098358 431962257 945359059 317123683 758493585 390079143 716044013 951461732 360864230 842304999 969719931 558857706 23441137 380132164 314676096 277005042 923134530 353815396 259333905 786247194 248038846 155106820 109387763 995406566 248579357 17340467 125201342 55346578 832905732 128886264 77017317 909151639 556218941 665718882 89847009 554723310 919708404 685842328 872602019 500136173 188593760 746218475 214594961 137835156 281067624 128800708 573769372 755248927 573559878 583908730 639783010 591751071 177511959 277942175 291723237 441364210 949290928 193684306 971359718 948359008 917259616 690305404 918838907 256826890 815107506 23876757 91481753 97265703 203350347 441599674 942810425 489647242 117914798 982916145 159546473 841523716 223247944 404290715 277655600 882982075 727629082 788876853 976131778 37118338 231943052 774262676 805615454 809281494 15111787 861889148 755128538 546912991 294780241 839554830 349936790 72612880 801822996 481262116 899932395 896880155 747026201 591659514 482227625 768045369 374924607 353777233 925525005 402246884 267699823 8028447 52591317 55298442 38846688 29065189 663991695 499491622 342399312 462734196 246208912 726322172 919532629 11566984 789009030 629330766 425163580 553305295 30252979 450201494 911143023 394842704 776056560 502741107 539862612 207143104 932641299 16337708 486146041 446314487 797396602 324414558 226625392 742209298 790724841 958168187 845679028 457884371 318551889 400139188 811369579 402773909 663811581 378969614 253947392 284333863 651188545 110613968 611705803 664009361 113439396 944290912 895395380 863433892 123732984 789776843 310186702 965053052 569149345 470653036 533494928 600265318 675115028 846747648 439315470 509734419 815454246 865684525 732164803 974609675 839511576 339346092 185340670 48636173 288979694 890630209 393510636 68770136 799138510 253171691 346872241 632039958 397079804 811191305 425041348 957228220 797701881 689034855 814968320 389634875 648612881 788250121 292764284 3996798 545001137 717129522 61131162 131328284 85723486 93745292 352220959 486372035 17323685 580856790 924619227 951200353 994049919 893849100 233238804 325494667 776581409 699492153 257915658 903468790 474182348 36847418 358671200 472119412 301151784 501231539 160832906 366180466 684568131 241711082 924905036 288861615 435569047 566346901 459713079 58450365 316510335 869502704 57021573 355225260 481367926 69084501 243069146 268924348 884886250 222363934 336393267 760717305 453491671 621813928 173326952 484004733 473977996 662998774 110578398 579602664 583292078 288123923 877508067 239115209 391968472 301243080 460252082 482836014 809508075 537757762 896227270 260120109 349832931 416924116 84613992 844113968 765334295 298966331 855873591 143966078 832127164 20771628 543225866 32377150 981495764 686987293 336521083 32954621 694399343 41801591 312912872 624415684 53992423 222529464 693889841 181803890 171680926 117001841 733300003 202395865 677378052 42547026 957300963 134482213 655877658 355629352 728067541 267574116 43393468 96967089 762032925 677376615 594391587 153941969 891064701 663410425 197204500 348896347 480661235 663774935 565771216 36268956 266856591 171153845 653421986 643400695 569246981 360143835 592528500 745111723 249971489 659271815 985611397 120920074 966075919 734189643 830361915 522473043 786295446 305227517 597130461 674524232 154899018 908823892 974833942 438947394 865883609 376175582 655692019 927354757 71262333 714185682 115917906 455944159 327834217 453931998 259455663 178404860 197758743 940220826 414568995 451403838 995699077 238397236 189927922 400000297 308838504 159397976 806397761 527521316 494647427 140066041 823762905 585190032 100304555 371204695 224754824 861957549 561112631 899720741 758645608 846657468 199091903 735508828 455225378 306404118 663859101 573813579 334708488 570278208 556698207 991299993 125455536 608842030 925334838 30227717 565491014 857567810 630167103 129724865 584434941 387988184 935933707 588539558 925027397 265840067 116783892 880596525 528877990 398574359 110622798 328844223 799232873 969146349 631028966 824341973 281329241 51596693 345061819 665794762 7184154 219850928 825919365 812264420 72101136 807818501 652787992 427774821 934687164 692665152 323418996 303023425 325059997 92607098 398332064 741420400 724424633 734656925 213472942 138975356 160371629 858112020 461372594 672041796 188534004 716584604 651506178 55593247 850481973 513814010 767933790 182735361 80500128 469206044 83097804 828932170 557365592 123579740 674965063 637826956 782719328 689590062 636237457 387656167 57056302 859369009 937881607 33164167 696272954 572358233 842612906 925956834 383406338 28670622 136749632 98634256 332587359 231481933 823795543 15735006 539932758 886083682 830483024 360184217 125911934 300315034 415197706 255246167 68661344 190904767 153037921 883769188 238703784 398305701 44133941 917508713 171019172 902600528 934181302 588639063 827829398 62891302 694717342 735822509 726541486 200766941 875952972 928345185 38669184 208270851 441028651 411969187 838759574 356841089 774443026 109786767 817463884 891725171 867531118 236922939 173607327 632436223 654334966 93969063 729979041 132415770 240709813 158434321 257894530 385262562 572347215 559081986 299844401 787625957 704641559 158011441 370455161 484950186 354475115 968859797 174201790 517112424 703938274 770426093 39160004 758985945 365150111 740120308 860583151 46276623 280845907 816774606 121871411 701462170 5330771 156334417 985525222 228016747 42662478 346735108 765642789 883882889 769051975 839462758 274679609 572002639 124710142 370050640 210190060 122764315 572314389 519440925 468300768 691832765 764030605 626396713 753514448 647712329 351204423 405919128 539051939 423883243 572827284 301988583 330052526 915077470 424644496 438281889 121328007 935183598 707133973 226698788 753960829 856694307 860114370 639584380 656142261 11061298 331584858 255379774 168930327 226770144 835463959 677812820 63290315 839161748 323082694 252483197 953885056 138546703 756260586 772674607 457668771 132527305 475040706 741669645 846669361 722043848 95149469 689090017 858333440 6362775 806907412 105534253 95367359 567551906 31175427 320848211 952614591 215888347 726432103 21884185 924679839 703583991 646565085 809262811 161955864 846045101 510959373 790555206 547497761 526018284 262006056 855962974 916762912 255313167 62791373 917303302 305257938 742980699 258274256 662111333 731672514 167110971 445964831 411833993 665286187 612315766 439823293 133751142 437761428 356124205 546327033 948723004 823110765 416666964 8138554 261826971 653459106 604232331 900073790 11081409 411428262 464610877 122897517 304124561 702068876 361838495 14691484 445590773 356767500 554806678 110120088 678636871 518465032 465595840 279916919 770151427 22834523 396047924 533461288 915020375 743258052 970846154 729116421 923462019 988435107 556247208 593402291 430517686 641792848 199414261 583970932 775431433 902289705 223588486 22899527 307675290 341274435 932188256 480279250 746503618 17826355 420661452 636967337 524718012 553964435 25374513 765817650 766074476 101388241 37599786 497131730 306682399 582126752 147968900 885072173 791446149 789259260 515965440 138251308 948926413 696865301 66854982 935943787 102769843 691399365 44490560 47877923 116003508 669592164 137856731 917399277 580193700 223895623 775386374 289222138 566458036 37489271 330617610 780918526 821079634 233928123 880306218 233426273 562585293 385928480 883047228 793830343 148171816 693425593 669847397 200839277 114118149 783598856 534574149 513765822 807165930 38717577 612361399 240575059 176729569 780335985 916945890 209491760 93098541 518943688 516971506 357322279 777435236 872455620 125437404 378384375 51525940 771480004 905954656 132610263 824187246 882320777 901989693 83276803 926779079 923618585 596556464 934813583 790249802 148095401 151999747 928982626 649173329 523904277 89189078 200980248 841863238 110004623 272757335 895757524 100224143 979350856 992050583 379893222 391805109 890194406 397518199 945435655 870442829 744228655 298244643 83593627 832681184 447911002 692446722 688546655 59272146 272371970 195377632 595799252 156364952 710553594 441411820 211526521 180380771 77990442 956045158 280798273 20357799 326069907 261250986 360265860 606626713 695177633 392718874 867302781 956029948 13486400 309960348 951820528 749785357 342335051 116997704 579563768 745450487 387695506 145092742 980728589 494285274 126913466 930854498 118021234 971702336 880101223 502685423 29857105 331329834 769245482 214047260 587314788 156615493 941201388 315921515 909529748 21283064 468361094 423246479 976543624 661071745 665575864 457471643 201098543 889091044 954987715 970709174 288902095 881640488 308498284 8984043 618601733 586661365 229077675 547960119 790573542 156409307 915007293 553225175 69321453 778304470 315910250 543917414 254335920 564410933 522590395 242629236 205851408 480152541 199185698 731933300 995789522 732220920 686477455 113090340 283157365 483313742 720998845 654568645 170695931 593581372 661900279 889795882 241487916 924564397 536008308 783968010 781146163 10620085 179181557 673851913 195410806 529768770 421868893 823821230 64685673 176944323 682901816 485422035 406830935 337981763 453316355 183613305 105481912 805621277 197617514 715429295 792302044 598198092 136663795 42648118 181106256 158065585 554409902 216924477 960838779 84348142 402707540 349992243 616762257 909984946 102452338 362381071 602869128 540762121 573864790 381371991 691831881 234899843 11718380 808249178 320919431 498267226 614124808 893226723 226253140 160248100 490564184 1752292 196952446 868742540 459564159 273535508 594913675 254800492 642519330 235590833 972415227 799849219 618821187 798103664 545422448 558125609 267890728 553072140 258275118 551184945 974514643 173792235 486261182 860228455 696867136 559731091 27354232 407148205 279677170 525513724 758151636 800486219 154715165 204880998 374536695 148571685 219941529 727379771 486238141 407473275 235535764 205247040 688664303 200297988 132805024 410013667 148291105 134590187 780919903 132405199 49160891 677504751 994056871 512097783 118651971 913017667 623116859 166712159 624386205 520708744 236550892 197507823 708676809 787882388 488162186 535054975 110922802 560858995 659056121 11169773 809929028 100475026 670814471 956134021 187790255 473824590 140290880 497008216 948492199 212418693 972050655 668214416 757720419 711608054 875023102 815387715 666529866 827717236 859595578 414418894 637681144 984526783 73411504 146037614 946676292 428876934 529160613 437243179 492046166 943353935 989479295 512550311 960038919 202203665 303981697 530778220 30874830 118291571 818292417 71387528 131665982 70085672 528998855 660003335 911453180 221430788 22302296 233226976 88311797 634477679 355921876 960033451 202355228 399154223 29826180 736140973 969664778 55641640 828112602 237379698 943918765 949835828 141258998 975216788 390294301 637353204 560025586 994720826 48723247 878031594 985562864 671746598 925816488 817518426 410076680 383417818 55463086 778555120 483052928 818114607 723624190 22613306 183698511 657699914 40711315 265066283 549514041 843004050 965842156 414191815 842356518 273103744 14103039 644110769 797626290 901061348 460654166 145712572 298995386 887206389 975729906 93116441 211976191 500812682 43516968 305449176 897231888 882735519 695914354 266525318 182411501 964361632 786761817 841034965 844800428 814120253 525903239 471047516 245872045 427299981 74801660 28621818 121984420 253555474 561335491 965752367 126105116 784685109 239033479 776249421 73986230 976716779 256272225 124457106 667912501 792999033 812324879 744568348 319413510 529052700 52061550 762053357 628013766 279610006 718407387 967877236 940985173 644306858 447916319 153451844 266005721 335759050 395927431 593358903 121211585 557396316 877359462 95886082 273407004 489269190 176034913 982566209 248286283 982045267 903639656 348649505 697997882 456099454 115688427 313328972 619384036 66421269 211779958 896649647 977721174 240437652 786182975 515219939 446066058 188838597 88711775 256829339 182042065 34942025 618498030 731987488 33212889 887186517 306498406 214981961 709497186 919158292 61650297 82582374 675752461 645754860 639882043 664840050 526551287 591249058 570340791 907648536 448806906 263247210 729542023 249829748 808529358 175079402 30245672 25689354 823402375 585604941 513698943 294158424 674203220 375939604 552166905 483943964 889887301 249895392 650490123 993094987 302317280 254487332 614928848 778754659 934696049 949603608 118220001 193997041 380795834 590526314 811032000 69208537 302505794 158940302 168782813 217052025 915167395 22957816 333163323 591315532 273894513 375918028 694207308 889029091 896929444 277566652 779202318 86473484 241146134 114788411 539520322 243280135 970972720 43509003 666342189 760966323 583466293 96817885 351863198 188226291 111567352 899432031 47419246 216788197 9313656 153788995 41802287 282360546 731287718 326957923 398356501 522772736 315484404 498748688 836261123 15134090 330292718 779781107 288319909 551090190 541315470 155516736 115160269 479526322 804818492 303532767 510743956 441454334 374558934 980174010 903967828 914070871 620072162 587107545 708485074 793909696 82163757 800766909 36719879 626807415 858108758 361025069 389232585 301121978 153513727 586737497 725514487 809519023 686349507 412567293 898293283 349023740 446655523 91895889 723719027 350055915 717289837 31294488 936399104 891033234 965975413 640539478 232784662 93835208 858593701 229648693 390135157 139091390 562220817 529980815 176243096 541779218 621920347 324250311 454749659 348470040 17803967 284329903 312685632 271289702 395646469 628288528 722436972 264479226 713319614 94533375 283283385 67675417 522711262 274463224 332238775 333711079 367917459 252493349 505147754 458172858 734427778 447552752 483973033 546431821 789301371 588504100 78629966 819200033 910945986 433827867 733452672 600520086 267040299 779860759 686952791 272978488 547462547 953849877 926663248 894534423 254538057 616835492 264516391 962654471 482096787 343692609 834848841 655448917 19611702 162151967 818158211 30841996 33088213 6190198 976208424 651750921 47273958 498913290 82878114 865659562 277345393 87444341 882265070 806185704 507929462 833569772 972866394 460562279 157376038 487554257 463011207 765308097 985570539 501245522 877894230 942548478 312716138 205601979 313783809 716256093 442212726 69311449 919229806 169491029 317159844 559200871 88609265 940133036 594685026 303279793 342929681 40944052 311697157 903621905 970622737 92133726 681057120 607106456 391786947 16952244 647900007 832807341 830558869 782422177 602485908 943560182 42581539 729973657 707260170 911380731 308544700 413148860 55899780 348235580 274103636 51144412 287442629 96152189 942819612 781704833 481226965 622358500 81813157 566111874 214275856 82129936 258978515 669354973 681376563 442741982 805447606 451758271 763992804 820915192 789257940 319726394 561117526 889345608 329888640 692123458 777215792 554439776 925776405 38357249 502285965 977103469 844709917 83473054 68557709 128635020 590809865 327321799 88191448 601788675 440387493 650025217 471407888 244769293 946266642 982109688 122544333 255687244 65210499 578178832 882560489 973032466 57507171 74288870 58994047 539546339 111996724 383243670 195824956 655928104 491986055 951470697 442412152 300313201 1168609 269235413 624670445 384890752 878800555 749267979 11163722 890114698 710827097 521396618 993466858 861513329 934843642 269373940 867916488 849780798 417105419 274146554 643648949 933276844 936366414 829613162 959475440 799578043 677363164 660503381 876242697 878810492 346590755 712397044 386567552 651350450 747997263 167999746 798677272 843511782 136962653 465833881 692733667 500790803 718535575 300270654 287525624 194159099 458291606 4166474 934801597 917810984 784801164 61109604 794246511 825119219 523671034 6568848 976366405 878082879 251645595 970285741 950624693 2796988 151972037 666701409 757975363 802065263 274411192 626226995 33424106 775904731 164476043 897824155 761850 760567572 659621137 373875014 196860714 158810702 465954386 727315044 574567465 990480940 10511780 15664128 410995526 444556112 83112869 415807719 822719000 70255233 877779493 792988481 555874534 766611696 109558064 996735668 866650938 195014861 352981741 85054214 320100625 323533029 748488223 670177229 41232633 102885614 343856029 864826047 403187413 487757227 281598334 837041800 684817976 459223886 486206476 182547719 1137507 188283570 255442398 395418321 303422219 259589939 97916692 365295282 288066091 575232913 545377460 931137754 806237769 440164189 254807930 316566471 600902572 546780319 582451451 531218199 565159084 773791169 357674697 877624096 386342553 976361817 401864411 536517308 927535390 679752215 734110560 223695961 908265389 681548048 202636612 298501831 944291187 526273086 368965481 652615980 599559763 80704568 754717521 391964703 749396452 634493823 888886026 501133703 672468298 768342290 745922144 245699315 193348348 366182760 669898566 176168673 372480271 909227793 403499351 681191832 392632459 5058328 170473860 624218236 423056942 285900703 871641218 681663332 455576263 996240474 255096037 819813825 624580672 294429113 487127935 869282484 356142488 881280810 160736696 801431046 694872530 852934703 275953505 792954127 442721252 606863277 118413578 639129663 506388704 786740144 796714432 589307444 74949144 673023850 646742457 191770579 602495050 214518220 600069836 657506969 37635700 948284197 964334655 14883094 879441423 574666902 843529551 300682745 959409584 2967481 597869457 586844717 761260646 116823536 475372235 306880510 498869053 242028805 418368731 452321956 557261729 425203721 847114043 841221508 985719392 119420860 361160932 793152327 158570338 413154733 67176131 902521918 233880652 51182832 361751884 679166525 44262315 799231761 285129860 194537933 172518938 756136210 659471429 858805885 682470335 930204239 231714909 758846680 538622622 236007802 126124586 348822061 362705023 289356031 314280945 304466594 828253367 192766172 614429230 729681947 361081932 953287075 386322743 352575245 128695050 374001312 964585592 804813860 872573500 796408359 268199787 481229248 465418575 306561892 52784718 183237784 592545933 912956999 629076044 319740301 161144239 341071277 382779531 505571902 479908898 78178134 175554577 901305248 1893360 223983066 416732231 296593751 372085883 544984945 59178793 404016248 391596615 162843731 41358079 180178310 287245624 877996002 294309700 834413859 359879271 110455831 917218689 98394541 506847958 657081090 797215906 176284234 347351425 258441650 973204010 789749769 882830670 307337629 746119363 367297879 946646688 331372328 714267255 141937884 893078118 816897504 406661423 464046290 62831620 534331662 670837950 403604820 718494123 743252759 214296645 547958864 341667791 822985799 748445115 339102610 561291252 215529412 329489003 561406748 182154345 107626934 233007105 56304657 428939838 31677495 967459163 560314631 98670743 804822435 847291567 510758561 273566338 13399536 30668994 281054711 619103109 155636037 441869572 870049921 238147303 97975362 126825829 900286649 89324907 813565159 345519856 337995244 593210656 868232102 310771280 492679652 182432038 335778678 129760772 99562395 679683993 943328351 18679629 843987017 701423545 711284953 551945921 591799971 36446688 525530322 985475010 674843498 382858014 6376022 804343714 995409110 441268607 364307761 407725807 495819257 577702774 567567796 691827638 691672005 881541588 986031239 617882774 51099592 292188364 722519253 976659565 399918827 663024553 995792513 177776811 813957695 84830995 666435598 369133965 539592923 581031493 665152321 869983620 812787217 131711142 10128573 414368125 760379578 333137815 421747856 770102431 795633927 750020325 110942974 882857202 885813833 537709867 433793178 27167482 949546833 764672513 985195937 625007070 482157045 830999002 707441842 343946731 97579151 245757413 66228369 805410865 836038617 607500570 691373619 993693427 854562950 677755914 653777235 992272032 130134956 110493903 939999196 780617809 282968205 322740448 156776806 373352090 589003970 829639847 827302563 978008665 848968643 847862390 383689745 433787091 594578295 21282992 67538162 1403086 41121211 875861165 221779702 554891817 318969445 929073466 204147723 82720956 609179604 963468818 395001029 850938630 238802013 990499285 702205061 341122811 919572093 442748188 905559203 967122833 791093493 75420272 696913991 918090075 763024097 423747589 720813298 884705616 240603643 19402322 189294482 120089445 744828320 229219533 929936231 282742984 998374313 164267115 420434488 285071287 602086247 894607732 451537894 238208378 880568862 121933327 311309771 513763314 299043487 468111756 531083443 296876404 604622283 42244442 368489764 458882942 702903858 341188961 221182582 796512793 792747524 734006767 448739515 552027180 577296714 100094023 876929888 144808730 290161860 359107197 806802926 415439578 142346749 515321941 555312687 129867881 735587112 919526398 523931707 116835612 746064101 593319892 902709243 493285557 25778383 84721608 650536 320868528 921749701 631418552 983644881 307479008 768727521 114910776 732270411 374071539 434425817 884568395 649199414 829075075 120588564 844086538 698142162 620410105 907290869 204347589 43589494 896935581 836343259 396907719 908331704 821288906 932794894 263233965 774420482 317805134 199440064 732751994 28819446 921169020 446342490 399613502 84479826 195968819 344610574 217442655 219311987 555106927 218682700 352865504 778821502 213685604 909984058 917619847 26346715 751773601 733429858 203597325 795010646 473453143 468357841 970210224 140728615 211892356 466745700 322899952 656269952 512062114 242733332 771092244 424494671 425192224 4308301 526189803 317435500 120863003 233397926 891540459 738043281 991623767 557667794 342589703 414843664 5026666 299323347 404015485 577404296 287479703 989970154 519329068 531410500 758390381 961089697 42715972 54000462 506297154 361719974 257127994 169508342 348874368 335212994 721624249 485096065 837433860 770021347 626199937 688802230 556105148 88623082 519292365 677555612 180158698 770540580 146140109 122020976 817064067 446972844 887939728 447999290 623919336 878379451 291208754 704164040 535381906 114319876 100495921 685871101 746463337 184772137 867168840 48436634 98490140 472395412 536626218 786698582 60261100 732203915 492820655 527184287 930974217 920236192 724666742 279806733 243903583 35298165 270039450 790391957 777983558 18604980 314680776 540795012 739002968 496369498 186233038 397647883 883719029 744294626 806222371 405991902 611957712 308440029 948682573 92379141 582023962 377926940 745087275 613962665 243270726 167662150 761924528 715072974 259053921 395229228 510723172 263861765 876545640 639087193 196805408 242918196 209863465 766702476 262567109 954708828 140884574 645046984 608515125 931052365 878959714 418169805 835007731 746205046 364141139 456216521 483987713 403908388 984831192 981341687 651571044 803259179 381483587 461094227 978145367 934724903 521948129 731401100 749593623 627763951 633893299 342130492 446846528 947705762 319010769 662265490 928387517 546611179 346223359 384971952 563497175 425506382 5130917 27614746 694309308 456659201 829318450 537324166 267270785 738328375 836561226 310147036 723158520 197751898 886959856 623919902 652624804 85164480 30500316 483893399 755460599 418807739 28304715 733621066 338203032 589178406 597912035 812445996 91551917 27650309 569214209 461441169 81416384 637950539 240418638 669300499 469431590 175782326 229020913 352792514 4411851 912841066 210139557 522073934 364234383 955102104 602838665 147483038 160900492 382339180 383399070 666408235 432486002 806531790 529197952 565861497 244621162 68290893 628599646 299508613 750134999 840824831 908262672 839324485 169941900 41645046 97421337 635022211 369985447 344464093 384943480 510980764 710748690 409641104 395195363 393669543 739236330 606158877 502050489 594034223 208053377 393205159 212891419 731725235 581115270 616829476 494621688 91761652 760406296 79705878 263546802 982948543 612447170 635655649 280528787 548280692 205877388 558421844 33650389 88055543 723950021 673604369 735114232 206626980 396038209 23368599 859468675 201357322 531507676 784703591 662866674 132282960 483959335 775159634 864098067 828586254 343522957 949081535 15879388 45104846 168631591 921358415 926494766 518619289 314907614 638135239 864709142 726846239 75678082 819153908 168832295 55850318 589686802 147074703 637779480 454731098 941764429 258497026 589147537 822861524 1350254 82762272 624372101 799764839 309426119 512557776 545946269 449742277 288132643 575989998 292739883 155671249 596011013 869449870 684745651 875259574 256943709 328473916 48658475 754088289 504012469 248405936 951309670 430617636 403631003 187479624 405409322 661943437 450990514 792033467 942249617 290273875 602223329 429218471 617314677 386447624 379095668 301895526 816688711 263628290 126418093 141447930 867845742 725874276 724769362 336280581 652835956 55530400 227790790 367731325 438256569 638900424 134981325 383985288 418054463 366788171 90686385 557476029 829981897 849130617 970690164 924797244 13616365 417212068 442877315 812824381 365883607 28828746 784551907 780877727 779899071 657193679 569306017 221704020 479182436 899186791 519438601 754452851 930126374 95916303 186685293 833764693 880576088 560862029 959923562 764364479 349474379 879848554 887047920 253326877 921239775 492835854 667336265 205932655 872153487 511715550 57211 836095203 306430559 788098952 150475350 979565742 596366890 566428950 63969467 595701755 3265921 358420096 347355849 693193936 757765806 602440414 36718856 566518179 99794877 402640965 534331579 133719308 222188682 336600963 151699485 580169252 716145108 973449950 702817953 341524510 961443465 589317823 825164533 445704951 595448113 422928591 313800688 740019230 173175660 918337242 769697084 845502450 250691828 68577188 905755901 329610558 505542266 448651470 446655493 938260680 219509121 494661124 471306692 998413961 869194012 216111086 171451881 830970410 624877571 688108351 905807828 329653260 346769538 884967149 947122901 206180369 229642825 42900097 137882358 646561509 695331651 440409135 10787797 293211871 496121019 970228735 293373509 129790249 662445997 503340007 365931001 368219858 237180704 950990337 716951070 439148243 288277068 458771630 898860383 134646345 679381683 580124173 216243721 308349425 638151398 676509256 662141657 313590149 468247689 402144834 175677969 704939572 914883530 19470817 528995462 317192888 474281518 867216452 621885647 491146786 667176855 834998417 281383526 309728215 360617660 944225696 774898726 982656273 822654092 433759528 645105786 449539147 914009672 348178570 541859057 232000399 630113120 847905360 889332172 978946071 506856518 158618449 285737399 330317954 737036828 151803704 470328507 575472305 235766026 382064522 315289491 492017398 485725031 810385673 352990994 397155679 327595517 667863965 499985660 809454132 749312489 247692147 122863927 694662109 74898544 666799700 598029294 30767183 475367242 803284642 285753671 621260667 620455204 843159215 881568979 106147102 958832325 977826146 872006559 499353536 466249405 841639745 941854323 672431476 19210484 512228568 457119859 872032279 605031766 616509783 834392904 781129021 424758406 318173331 911562371 316130544 979749812 373618089 712968737 916023329 830782787 6934153 168716008 150712408 791740812 415569182 955547115 404466082 620828117 300073206 87268054 82567026 981780729 601158848 922532881 493378647 150708126 78474596 843102213 781512609 5193430 103987510 206686276 999034955 39334973 28442260 368108861 692219115 22495069 909587173 419361306 510236197 685296899 820793660 756256774 573351565 886913136 750329415 815726810 959688264 526641291 430496277 7941766 741239401 182323365 827951279 264538486 527675755 386711571 220666585 277322747 238212726 42117962 833622880 41132813 723724849 466091763 267685141 730480755 368354357 315988296 992186584 617578106 246061225 161164161 634785087 484691243 92461589 397307944 436212171 823043094 419544791 201744602 843457301 712932475 333653405 784543667 663499371 341184769 329290198 738079154 952810846 23028486 584041660 381230643 31754826 444914488 70894055 956025151 38219645 518201387 761524114 599857315 87180752 369332281 352976441 168876483 884659200 127712561 519570247 608378672 949137694 683638279 257099573 56613737 397375881 784785139 286774478 912581630 334208759 671101482 319204855 909899392 115373575 130920781 642596404 474287297 458859720 497780573 261315592 575268297 36961945 550791438 811502110 162919169 776703334 474889178 305681016 135821167 582578620 505566359 526811409 524670867 357391323 233593868 287315300 699865002 437534076 984121221 348144385 674764905 329784230 916017502 339329628 84094950 128390526 587011485 553912198 665391916 576586142 712370082 727938989 235802666 674831225 586431267 938929268 403799322 905470392 546361308 936716321 402477493 119188922 499219146 637093067 290267978 576332118 335779007 593598869 181131232 992078869 545388271 312657322 832878003 919799270 30875599 566437789 578197204 256210623 347817846 54366007 940697047 557043955 621262271 136691390 358216674 446174338 690079455 838228356 863527296 791782987 769805876 864498111 314469547 145357849 151961920 269716431 757563889 99582278 708312445 666022760 418807777 865976878 507639512 505259781 445197037 725705153 163252825 735226328 988505275 694674098 864669241 496625680 681126070 373316368 700796328 983265098 325583168 481086087 241591965 728502168 58200758 387921338 303375237 88051493 626253161 1780876 684861320 159285505 54165427 800954651 913703725 135754277 47086160 333905013 630805043 470615578 916848835 327619734 394783894 570100104 726294666 404919131 285979341 935295588 62022069 146956624 712062990 9969973 328190967 608599852 322311092 595510699 982315974 337342999 940706957 837380341 815713193 722412109 179096111 72398657 111542778 881505087 132774651 770999555 270113579 432175073 815703698 587622121 982686089 493326732 184687080 494654687 949455473 664779866 245910195 811997211 798237904 414172297 968704652 648600087 204897567 370850648 967654155 847838279 973390624 607707485 41216890 690611597 118658212 310544764 303522914 458555084 700069870 255398671 998370476 535735089 472624990 201075680 830665029 897276819 678320221 153424769 9558519 131897050 545967377 973749383 811441076 212259097 970957870 410190203 169762518 194526945 248234199 677706223 415951764 883764523 464019950 529069994 325890308 813699015 588993987 415174411 936865466 305274398 706011686 819275506 820186344 927094588 748081884 706590470 518454123 98873317 878621476 374518167 219837592 323925357 576064478 134851436 420282567 961613823 290907519 200306662 427594330 696143802 211014140 570958189 180002597 323486525 44092754 386854139 578129220 287216477 743409583 686605723 953440026 710341305 265299136 218635633 768582340 539586083 880062820 947554121 655266369 801718788 342562039 643751376 265391694 215736059 297440998 706344387 346935618 866038426 982442458 454035186 7750623 179824090 117770598 575690620 108004958 116200832 21876093 245317757 309289431 434223146 315504741 787982956 135592199 583802047 155118061 25505056 946024180 412155432 443519945 481787582 226688689 320997903 851678065 133443419 71984822 484682194 640106757 881816449 264161002 798143477 715119565 286126124 196526682 77455136 335060626 17735581 94741887 293939938 296150915 948178634 103781009 682258154 424182116 245012347 689796187 167772266 6508335 354208647 746766578 604906929 121152174 336644017 120536591 252984165 664599628 660889036 523537943 641686511 315974787 153359451 433056701 658761188 388467229 428877704 468138214 696352177 214146483 543633613 635766419 106764650 579642078 42829224 541662626 55985073 620811205 949262259 379578537 69705399 346352836 660533830 966015263 973914742 185933033 829349860 521573898 662800354 752095861 536973387 712605296 251811364 552925716 81219142 205836055 634707021 528484195 74934444 92613246 942646468 246298623 251254664 199128621 287602476 824591465 343316569 520626049 15916030 173794893 166979113 973222635 932683881 796687415 885369146 273590753 665807238 582484137 332408948 674304143 980246880 924244936 653902100 220167775 213114244 443666950 237224074 320668919 175365567 536235820 733196379 793381797 600176314 607606703 110885470 896830933 860167412 687816532 866824486 306549017 107590616 121475501 595231595 424049829 92609625 125242239 716594734 205772342 266225056 472068615 908064717 43606522 50741222 576972090 578692541 509066681 974908147 767025160 289442037 652871500 941232743 892504662 120370463 58023425 670795569 211932772 629843645 447221520 916321703 455890432 878135971 234642520 343182859 451098297 296255242 94136454 263961764 322515197 89085643 47244965 420519839 648644780 164855964 780614534 798828511 986027329 712714075 420238918 791628341 366982300 642017171 89841550 980176682 355660081 284662390 360096210 840612417 479668263 654504042 708436401 50666528 307659239 191446175 374923874 336109279 666932328 840043786 734871067 178488289 109908037 51023258 90166223 455663638 352271389 225746508 141429242 516086462 258678469 277327624 138625257 647499682 101524254 294660837 86297103 351847668 159532887 650198853 821549714 999632921 755074583 313025043 827619316 305115452 96128242 486299697 966652088 342415768 753442954 588664850 514017993 629207179 499845589 388344067 995020567 775814034 914032971 851246143 224583171 43176123 966572321 290240929 288773568 84038064 43553428 819408510 523056311 114053999 660910938 883359100 876238708 181195865 547593024 516705450 811727725 889166802 784209646 213356820 342454497 84835077 381979839 779245370 491682595 826367518 685302838 668356778 893255363 112094799 843365227 704396853 282106089 983776734 807640060 463834507 161561356 424114581 209636875 227515335 781823940 976379824 434611999 867239010 876323891 384844693 979297457 90825870 289824669 142957591 962508252 357530987 591200946 267194807 585238056 437959534 957547971 808431723 700515414 546544930 573883051 655754366 297779280 521812469 543188810 288682950 801881520 719825914 743551128 501501279 541178809 848046816 162440098 355882457 775849040 902446988 76288252 742898431 758127806 274797457 536178618 213468252 149496373 953001044 716630283 443497583 129600444 396750017 366939215 720989729 986288141 180359625 564848655 764456954 281275444 451603431 586595016 107194084 396852231 93263748 802582296 527718408 811841254 283761234 916863902 606829844 610682853 37345589 991884358 74863989 961521484 772459850 666471700 814628269 785546814 513126804 131797274 54192451 238482991 617614805 393015131 673004549 771896694 8589153 196672198 254899267 654033555 235190974 888176967 74339160 700459038 659942060 12148738 535562597 434417454 80282191 915397790 10930206 678975443 859885669 714215054 392093773 795240686 814601252 983493714 218970966 37177136 904875056 613316884 32406921 1465918 241264908 697886770 350077650 347060221 546740534 914981833 317873580 824765587 251997299 381973704 537743612 918451705 772666896 936745985 411774335 914219066 52722172 151704394 293879296 405376277 111630344 445981220 931427608 161376142 556063411 721182330 444448550 444535330 101000197 54421826 121807346 351120468 713362246 328111963 96084535 949388480 525682435 769275409 669939505 279575951 383202698 668860389 936688444 398182167 30188069 824815697 537069708 827316192 804799294 899824044 457544166 986666214 289650163 855600320 972974522 951583719 904470534 986797335 708970511 507261507 111575581 670716950 695122540 684677426 920369338 914073314 557328794 22418429 193487593 820405139 518223442 290568785 545083360 900561876 482542071 954969679 93395867 242939321 85749051 263122995 784892886 250781910 172898305 505318251 336636728 755357541 520552788 178763264 357684902 75227004 449641142 711057831 619965962 606750012 348497418 858427693 935091352 745433565 808381264 864919338 676247713 709850845 866728696 882028491 244650911 523206026 857365064 83511705 235788693 602680113 472371080 463304990 146945717 874458791 305696832 530800408 662174836 887088052 348944749 639028176 146157934 857967570 85108761 758280847 482082618 931133403 169110612 450982177 846615623 393069145 173139364 564924611 915786105 283623666 269023490 232487259 317383258 443323960 791659623 116020409 466253648 204213217 534222454 830548033 117190969 462374404 404849930 370267185 670301940 651892411 934603806 723952469 144972731 968454727 720136232 839638793 492334471 820015663 606969621 270370901 492704940 467652520 898385812 582427640 172513484 549207652 73493725 542212889 937793739 63394586 817939938 850432025 199287571 152105610 657153712 44468579 635111888 522590244 144580560 22244690 209767494 977092142 621235494 125142526 678948978 129771516 161364715 814400982 110179363 869694735 524067304 21899934 997478291 917859730 830072358 592323974 429302505 254028316 707328230 115859006 656555780 990090725 78951696 997727915 15347603 740049890 945765162 759752304 205427293 613639074 996514963 212750424 872111249 33524079 359608542 493686522 88577201 13170009 863650511 312719642 892065181 109819237 304750344 545087377 811159666 628658439 402200390 200568272 186962436 407110278 391881606 262464116 176204521 441833335 421816040 561680836 170328075 700962499 376043239 515028451 64308279 591226451 899537261 156350158 350279649 687899024 966502209 702677112 860381893 817839909 97017029 366971345 179243278 884800281 46851565 28467236 751563747 585074102 811787393 56539475 247239156 830427871 212159179 23592683 927659090 823632091 894756521 838603258 270288086 873286406 586673194 653195661 976397589 737482860 545369451 927194732 285339891 632245533 834110261 778575727 11344789 566328908 955341220 335350768 592862799 478007724 786746913 633989260 93460837 873730500 72931554 144163770 996589205 173642675 550935135 22748313 993054217 590243349 455841707 986381490 212299980 804834288 406026164 140343284 174249621 846301971 660686506 171414636 772113420 330982495 70522511 840207745 486501522 147533759 375705436 605298630 162431528 810784563 222883977 828728022 83394571 245973927 451705859 578331464 595706083 458646640 991851186 117873517 92257568 889592295 262522475 813678865 464510967 317326013 835342675 305200026 808596329 620559797 702819216 859084094 284979587 727280194 737401177 525853729 367487020 433272463 268138905 462071654 588841189 100094293 640899718 624800597 752591082 775041567 407422839 857789019 987806407 682779687 490068020 694717214 350410078 757119199 747910809 833135159 282396651 743910637 11901938 674741518 417352087 989430199 773648564 720303011 187217264 167507723 918484010 883064915 714964202 103028762 484993319 621875779 599603080 520098609 694322229 64580059 495852711 312535152 464172636 203684854 54091240 152466095 934374233 753627915 504520407 119970361 902071295 683622248 885766017 951435397 241988927 791976644 575948211 229964123 195250896 288679515 860770095 674737919 295332225 555597342 735678653 696480813 563450999 381189050 492375141 34134619 277168135 603123324 732645503 51960081 181359804 405415067 154081336 464956837 236536411 428591692 921550596 176734248 227146488 604514884 153259884 216591270 329839432 403629661 585700392 633454597 308530 16427403 672885020 391078809 882259476 977611996 537507444 206194973 737652216 885312828 991639350 667429517 465904384 390222484 42275686 710734728 455817752 409352221 511448595 556770058 174834982 960945309 148609272 83599494 815948485 744351906 60101917 121649117 921956753 744632323 514310591 847502988 76790672 867748062 867300312 445281733 159275711 122857430 834821009 342403890 146061067 445534295 147547191 576736328 632880063 512373097 557898370 542681205 927173957 707578367 412984237 884744559 259947727 99628739 54836479 239987354 171726494 401934028 115125447 171072035 39318665 338778994 877881169 308034802 26080200 377822105 866897139 505973732 462398474 881234737 329392963 729591135 930348349 853060751 977609511 270245939 821408601 669649611 975036034 193999369 581338153 960550872 837845013 767741598 929536869 312118036 330387171 123849338 227680893 693397944 842464684 115063387 397517555 181016830 823474341 954684051 780733467 35093306 419426132 708588104 260382785 994119848 838807223 465780665 202491511 90126765 812627805 67557617 488156265 244201465 307036626 241311320 415929988 565664060 802635070 544729888 519836159 186264906 758148074 775144232 30892538 64245170 824555895 255680334 754823508 99835207 516218540 356555036 365136224 255557995 658194676 909890294 110881543 805883367 397280923 427167725 601755385 443808573 548930961 533738972 307309388 767846124 126094230 579654167 776292583 574644650 110507695 273768786 408645995 334843596 606672435 386413370 564463306 38435923 40900062 32908290 647799536 433679330 651329259 380325441 851120580 789113052 766158098 182779459 650818885 466897917 174349229 310044006 667661243 465404377 619966136 200805631 962755702 554811030 469016696 226114361 827813822 898236739 693024667 434736288 557004214 52437392 18439979 190842583 988410495 618306979 583094122 806339955 140317048 140790616 342861904 437313789 842693049 977663441 696218121 975117831 985905084 584762904 180408190 129631357 686620103 406636124 471751626 22772950 313277109 102025607 947853741 810639673 118479541 891376346 576447676 337166928 548331785 14496938 845777360 12628716 233941100 404627232 610333714 419266867 554702986 818296272 34238545 672767719 54035056 243050486 242422306 54144170 500802978 993771721 77894319 925545847 320727401 966700630 564276765 764703924 563349777 137469805 141073476 989438476 396742660 479893935 984085662 532222077 212127744 978910156 131252486 516426199 820131562 405550458 30162592 201622790 190135492 414468573 330967474 894739590 448191684 29197258 686223216 371847679 790923084 700879483 581680731 313359146 663880981 517609507 376386875 164884607 16591919 854636347 376604413 348799025 399203287 891835762 151933431 683045740 461302753 654587046 788084725 338155872 458169287 397527351 641115692 668702177 117507828 989411086 429471216 41253498 26732659 609507713 941691335 373149766 492222641 486747795 528989099 700329335 747984204 127473671 392545938 102552810 660799811 183366593 716083955 876956422 688922385 726894409 492667364 9119092 245764825 954043256 397579347 840162201 696569611 609026793 753287254 130426489 484355448 991051320 467841215 77194657 773078861 915599884 641760682 403184556 151075154 447817473 26679280 637530012 344044518 910677280 149317769 988428076 264006167 379859722 905789029 186640526 901753492 495744012 792193636 280294335 785354173 159557995 853463590 764400610 111970413 851964687 780854109 678684032 6533008 403260163 113278278 795968977 173503872 302137007 726386721 998532498 65225311 479041168 56894978 232255309 699870219 346437600 38993070 824974903 640806715 652478069 165911606 635347759 890567719 40826309 395492588 448062960 142814584 959456600 334420160 158905732 982357919 190891827 528946294 825246026 35546498 595067969 403473672 583858546 315591688 159320662 985238864 864025449 84890209 872784233 612813569 600438438 855174142 123993830 731087437 354740269 682134901 238596253 177341441 592363967 341366224 944143550 544906834 456530849 767183867 479601644 463699867 719968603 468001892 406904845 911412524 951016039 526486915 630847967 267447992 734915921 368210634 184614520 402098402 979782517 329716546 552677150 288450048 375402867 785415540 166637438 19769422 88241490 487840106 770753181 657471071 857473729 495062198 283026381 855613705 9337330 8723249 976771448 257440 662076595 530754475 559133649 773791585 953038013 959114671 405123630 632526773 707158208 244501865 378301150 553422352 310797745 799566867 601216363 968265679 469184219 845601608 164348034 107177396 415760704 606455680 537025012 297625357 376476102 384141043 660173447 265488609 655786381 941756590 847945707 349917446 588670865 530768023 388681740 747918693 793116179 103015290 551863275 772983393 824859088 914856760 149559834 415923492 42852458 401995339 344187469 330499032 495826761 664880446 874712482 775224154 707215449 611407141 781094303 552179319 475771217 498551874 744663969 720429110 487874072 899249263 553333659 192520597 182086375 412464518 167416679 357698923 927745734 798242085 197791621 745610635 561542789 515419438 579000029 806323290 299157069 819090414 99161319 885046719 207805679 265594872 632868542 625452125 355438383 88412055 35322440 290946139 494633884 811984007 795303520 261596658 634771106 995260253 657228044 197931452 374460839 649920366 288843150 768210376 670012710 860623480 55232237 27502223 698158400 675958808 400244078 158441678 330574028 651051263 697077185 795166617 910022722 101018208 673157615 5363600 121577026 931636116 590670107 452009436 54628166 699656283 859327072 724691045 382418840 826444147 728078742 908669716 459473341 317076712 484401779 295584639 801721608 147889732 509022931 551137 312667597 342156233 115404339 25213134 244988951 978871273 771663033 3691623 837181722 227591719 61787698 859412562 180362100 421720094 749067798 687016138 797785717 372194027 160893703 126196560 769818677 575933772 72466492 54461711 445975488 84702167 580003506 390516495 263836132 690670327 785359054 428901659 622983858 340449305 416057182 950655735 819860963 829706385 298934664 416758575 858972840 95121083 837349913 707961718 290918560 569525065 440220224 949768816 103515040 759922369 68882648 331168696 623087878 464020021 831367002 132537604 479904191 234365130 98872952 187264880 212740477 340050755 874695933 688342190 752796272 647030003 735424512 150609998 687118578 964467081 201883702 677785242 367852917 766128693 609781390 356161943 767431096 650534465 985494113 228422436 496766697 107316020 279715717 924485493 30809471 122162483 258947838 828171588 259845809 897352283 678939542 644068669 589477130 965658154 964838542 525881010 435684413 94801091 55415461 654541889 350531756 232016859 967378047 13477700 942138792 398932580 876385076 568705188 29111819 472901986 334523251 43772910 7372681 590021283 109104954 246883038 51342309 140174378 434318796 76506367 909584980 376614628 522929241 198802370 384231537 559966534 604851511 643799000 168177666 211785406 525327579 151897766 430733242 68532903 243395385 994651932 581509165 589918555 396389316 791401840 211210123 142812698 850258901 356317502 816365241 106829252 245703789 742698239 626535067 455685870 718872230 352239430 306573061 267227114 349006664 710897988 122309676 745638895 100097999 74025913 801702125 385329486 892726134 409831211 982441412 966267130 781200588 186224318 901994189 283071945 842046480 402318963 718660379 286036326 11804500 780573178 581777272 931106199 745182653 181001631 102618728 547658799 46074020 222828869 138576552 608401581 599928245 510932667 925754051 836525878 21478032 944494492 513769091 955664644 540932779 37698878 810466218 989947116 861042791 265773608 689939825 747945455 641025498 277371150 698549021 90092772 445989099 847624725 973772317 16365126 825956638 332523949 315432339 160838408 489549252 368920007 855074053 207223701 984622652 400589611 944980234 626466861 768560935 823499907 847839769 646366167 941981876 210736768 749061134 673720720 581044563 882073578 402980406 459270824 558187166 991467482 504438058 598876906 110683338 641600410 457302358 55701325 892928821 917648207 763192961 49446499 396520847 290212209 377134449 810520205 876145067 244448102 793650862 311353633 729633430 18081588 362092558 965062799 128548611 391816289 877744792 303446709 734611716 119421362 402992392 568290192 256106329 595653479 478279249 387563026 265317074 287968906 393851659 406105341 503817397 543760551 427235444 273567166 337042208 69360359 807653636 195669003 618017317 314633574 882464668 811727500 438784620 100167535 293056240 464976104 854264940 482525308 786281681 298046459 604837436 918543455 890124919 819594437 50146177 816582632 740285967 800151934 687530305 49165543 461059324 218051352 743023029 731310444 925203102 678671492 531364558 329816234 480225590 787874333 962237557 974683347 427650284 978971528 223228338 568769646 83732775 575904301 285624313 484442262 927519441 401416528 753493219 103920841 835868025 177808224 280807263 948623216 764455 543491902 987187439 787149386 746279103 295837875 713888978 598052671 443682000 643201461 943613642 555428980 607634075 998556110 851006695 284439678 290349632 763711014 438482124 840040137 954651774 441183864 873912197 881289369 113750538 163110294 805262192 950151281 472052792 520119277 949018369 747449310 620557122 359521629 441101253 749015147 995954000 496637784 904354156 770352811 171616193 477393292 828810500 195944707 991045268 391778875 865715205 883786855 89992059 374070289 100242532 932170957 592304638 162645720 998091923 942010506 237354175 175291015 483191194 924414192 834902819 954005376 461567719 333904720 614460768 181752849 280309987 896870997 8588930 170603744 591197502 996666190 63742684 772351429 124247683 967077745 757769829 423823930 576389634 793954783 815327276 290908959 543296407 861021448 740703022 350562104 648514826 148269666 867197265 386922506 176641241 719627458 592058250 416996531 930451466 115855688 159990554 709216097 245925420 212907265 313880951 266447927 877378304 878003053 785338750 788548018 854632626 157230741 273093453 506327174 189690696 54690404 604801646 853600963 464515963 711545093 61400655 393591641 933516447 348220177 955262673 823500952 368846883 263396449 308893575 729379366 111108254 785747180 367562085 723505245 354105772 929962602 445570717 204657192 21023574 241008687 125049919 160742499 488816565 217630401 840135303 232237391 609255108 982977105 365725332 9220685 144796680 250048802 573167721 421724030 319391137 109894629 642120811 300657713 208822383 800261761 987609026 830488047 958164389 370217804 633105654 362709602 379954503 310246136 45601870 427036477 198282430 132593626 732598532 127647045 404797947 560127860 121013032 298723039 577729130 341999791 348211416 722389924 932547095 281042705 276418864 866351168 142239031 724176678 272304403 985898483 988592777 550559220 654363026 90747160 719786012 863511018 428060228 812946881 26735765 47176027 80376524 619522773 975472915 694821699 211216100 435247024 218024399 276517320 769130691 659225760 62381477 403624116 446200407 354322018 98666488 200659025 225798460 23254142 848911709 926353436 775175780 863708457 617538685 78331349 723963081 448913347 330215435 640064816 445209236 78479328 728671626 556837014 322600829 65270310 429451505 179348844 768401936 577566564 165534262 475295834 933843820 925201793 671096551 704677739 152807028 809668397 171291107 180002034 303036743 69713476 373924912 704605094 497259966 794766128 956022556 670360798 550645378 569851343 448989732 645295249 462396388 361017510 927912896 196873028 360039755 519336737 315782215 617011827 30337949 100558092 109157414 396767944 428956855 333048779 761568055 230332524 29939957 220513058 913613772 436838068 431230368 36173217 590527296 441917733 554156230 693649951 563922871 225692473 303910183 608383515 827714439 790745240 66841216 165086569 439774398 658484656 527042462 896486938 498564513 393217464 235478892 529943232 52957619 900479160 746823489 194628430 191896682 849569449 694038507 754736672 327701862 639069322 941464038 54373972 207020534 613981314 540548588 458050968 543152722 454916455 604503215 568415581 352849151 168794659 681524208 768340336 470387012 369378676 52963652 858231630 322336021 441194396 299923231 811390625 923780430 358530886 177868240 2339787 86118748 914365244 270486653 756824602 881212216 534359529 590924962 836352507 737345831 239404369 54875013 835813457 309374586 220190667 988455541 630497727 109425020 137787938 203516175 758381602 626266209 929697130 707011337 984447467 283856126 641349850 573730344 707947185 21182647 876968060 528008514 16428360 734730871 522954517 205627046 88208605 877044798 806468530 551668363 500603927 898938310 585377775 101339613 301034120 194946350 244379721 37667321 805099586 287493710 325740290 84024012 5564629 638767169 482323191 236477294 270481277 737606292 203350106 317696837 460209363 584802763 585031822 591842029 401495427 650857911 232639551 309758503 929928208 745541337 656594545 395825436 483050321 688086773 478103690 478484434 643408358 190522902 66341801 747210472 111306915 98057115 584206298 228813990 478186865 111781409 36957203 165178881 367810414 894728312 912641421 364021476 193009664 402335947 648049435 358859156 598315643 676704102 781116078 992062238 889555960 837700845 395177417 150566368 593807764 702582215 735828952 150612009 479694563 553205697 405283822 969775504 406357309 476758841 741976653 652233117 120809627 724688779 744771098 977477794 241276294 27465689 936585123 280107802 232459189 299879378 344730889 979081824 997075023 639556350 540883169 631003183 199257520 240209755 458413298 732186269 161414813 941762592 318965109 302796340 533421501 183177430 198018876 502475671 918203860 52114463 316715244 446490589 448135872 719201368 390440923 471180657 896282380 227057488 261869421 30598070 671377192 492737114 512833283 896825063 231902541 754851998 677805808 992097673 188600240 341669935 876806135 729504149 16867944 585924403 556891575 764833099 300385921 210290166 928886565 648508900 532801265 831034713 18031021 554107160 136413646 573598887 848762131 618135731 669879121 221391655 664926639 543006445 889628719 53481353 535469422 221950342 254703650 207205785 354936416 445110338 811194923 258411556 204040386 221567486 409203 269147858 109118069 811380978 743234781 622886918 591746941 592488260 488792131 193976863 853316955 293793690 851437878 248383737 170040057 550673318 183253420 112243346 266726276 262756118 725660335 862082299 111031304 988096146 792878772 886995705 516054776 572901463 567219037 135525815 897591302 6692802 302320255 583038393 278208095 768062194 562508918 192237447 741063782 75581271 814670810 374282770 646631493 149940022 781898736 144860042 103160369 385718685 533911690 542287655 266198168 944301545 937460023 726741487 373971798 513780383 934594943 658704451 418944312 670210335 64084063 1215091 945261313 35155423 653451342 539894009 657848942 274522334 756921802 685954082 147241974 582877485 988771407 377703785 232911916 25911749 416259948 541745670 913514165 567028280 403273265 646535310 788583048 90440611 711053346 446905627 749088896 274815354 522734101 37547728 545797860 637393093 715482169 258683425 914731820 91696566 255975455 20957832 573211471 147976987 76939968 962535462 827755281 42795021 515284415 527792893 992952056 849476851 818408957 504251507 526546592 206123760 405834045 552377635 258882464 447189428 104577708 563277631 542938973 192326361 853378867 204545732 673409079 671657194 762202451 883048875 754162869 621859952 787172046 344571046 167212429 498505862 477465401 638195185 489204569 549096861 908496385 513692750 617331328 839004511 389594740 122307846 89340320 928400824 261188757 491614641 287383246 36216106 187067133 762682008 134862352 612215930 876423056 289177588 390015382 366249496 770756328 276066753 790307277 624634153 298376067 651455232 364228980 822149911 135242749 178962176 458436064 447625657 226817601 597125429 664463511 659803567 12072754 317058142 629309629 668761760 863511123 565757566 834017816 810515073 203909784 571014375 819730989 841258433 957362086 764780396 192879144 534401864 345487765 188178927 762904795 158086280 421807544 660379677 885848953 83253859 272704182 440436042 7784404 304867205 994543421 98633539 685988709 630527887 328525142 219895835 232010752 101270638 27820586 574998504 335973122 34072971 189209349 687794028 315134257 556209932 734323473 805277536 173825326 381340723 400697809 91775514 326162463 25118849 827191947 691372175 970394437 646404348 640824069 363018162 184055036 762612195 630630062 670063045 173320109 763322244 699192151 198478229 126494326 489555084 32901785 639363486 194959779 183811768 241546795 397022209 556412554 656493998 221644612 596426066 148820144 609338524 963380238 772851451 953939127 454979841 813885055 694127399 332862082 126190431 404980029 718253893 878041765 917633709 939796450 457083430 712402980 390191858 827136121 537131540 487477237 448992065 911704903 407762670 453034927 721354569 11251259 778358675 184386368 850655976 564440818 814646065 243610594 165331550 992734650 701472091 509826744 254356507 1059222 916057719 474765593 299351633 986226368 691481342 710525361 429209262 606305773 951034958 262534946 734093521 281030678 185691404 51180121 342413293 921145559 53530722 308325397 856050594 699669205 944703070 324454649 47851518 13910147 902698487 58972798 248102153 242914952 98831951 967717775 390992300 155791485 193377889 608891001 231997163 477932643 238514492 712344812 113287305 908991451 600308097 675040180 382486037 551826852 511020831 660994492 659816807 806216195 887476820 754580580 689381304 971945704 10600561 619576477 921359392 39891077 488715155 569545676 556143376 377510560 606932074 27472156 217901406 42803365 713299937 626515429 337696259 127742006 574016587 855189908 744152006 315638279 904429325 522255276 369555231 828475395 603863067 31288021 431731162 486453015 911631227 76003384 68801688 661349749 501120047 932033631 606493791 883526888 632006809 732594906 35311106 411527558 962742984 964448082 640375915 321358043 787583317 836604276 341759840 192244811 197280501 280725775 835804687 396928041 207185422 620274663 950882701 935245141 212181824 925797310 307615436 365591916 252585734 218112086 150038695 44162563 542689493 778632541 441060525 89338831 278900308 914538458 66019166 936567784 384097223 607765972 653963529 173765712 118812216 798966198 219108882 763748018 991699851 614819037 714703957 745053853 311126098 212426066 502517429 669975614 563310508 772333934 795855766 614597325 141163075 523634033 496329822 210784950 368822420 700856993 707087008 44454317 477563657 381775056 555651530 345110385 221579203 765686439 723277679 207620637 8778021 932367883 691244301 418899325 747138684 930157668 824906125 110724004 513418963 803613017 358280022 616806759 68916186 714965442 80418643 958454099 210767242 833156280 507411144 210273205 347024239 973541250 478990230 553308124 644222855 28631874 703968798 248549497 521137921 935822081 86503248 908940734 585982296 981357184 965329968 191221001 217120115 293552333 661189779 856700573 498796010 911406462 975013341 838876815 743545492 45295461 154638128 599984989 802412544 906879138 620153564 969353364 612812803 506514277 571121376 447166913 837853889 952160467 7651085 479144575 961837729 962314345 29234947 767592530 488197172 624289419 137791106 546844135 437277225 606590665 832479964 915368664 766042525 782900039 14278744 625259270 649080172 721737679 12177353 250596215 220690731 654338579 39980075 107305979 482151518 214694072 597210552 996777432 646514410 786972750 2872654 482877283 206125813 537154648 734812107 81671797 550226235 78534810 407457178 973326434 938559479 17944460 730160033 674365281 755013224 940867654 585951797 956166836 371731997 408600433 447850486 350307632 587999667 64486373 488500648 501286559 192441308 326678637 784052063 922775008 729545306 646236353 250522590 960799138 153238262 757591375 441166954 419006348 19484630 522488898 975342693 496179337 105495601 124920346 615801383 318456359 741858626 22835405 584911004 319059585 160250928 189489812 958833245 280483974 499472965 430361430 87586736 285114308 97964895 672278742 201758280 750610911 911572109 690401758 818608327 78963685 81285025 993522220 716962672 58568109 671819705 124266591 584509541 852660576 631915667 594857609 470142543 577305668 659756944 382636255 897658369 770114346 398149425 828840936 568849713 987678117 576573249 330777260 851050863 998546257 696872535 622875935 624317560 474757516 658189512 817782713 558865420 99808338 702304621 714702009 438031839 564540222 827107307 489864077 202937787 821472422 508065123 262552081 424386557 184970216 675501918 294903301 419831529 63006016 513911489 200869674 905042946 284484284 552226861 844531477 915834952 840562301 430463658 279949130 536039051 832098650 270309851 919753104 157709092 285988712 948620647 244211538 662151453 299130755 3518188 827625366 366699406 692367806 935268420 132912366 733290467 843181714 748238943 949632027 360155042 118354709 616712831 83974056 473736767 828924164 700488556 891694936 719091587 818189676 327727671 444305858 285579369 193625155 720470283 501854929 21310408 643515827 807761618 424356495 261854399 201830058 258811790 588603408 524277895 912603482 576307248 966115716 386694272 530795592 546650909 976675390 345906460 317799337 996504756 228588526 471602829 602284864 669316678 95209506 800146763 707010930 461224663 424376058 394107829 26860739 20155634 406787872 816759020 927368796 457737928 588431820 118488081 514125613 131927550 509662135 934281451 909496239 499601219 578001421 985819576 677258260 704194708 393140837 720007096 301590579 945537494 885533399 174591512 51027085 386995543 498721410 182113712 932585752 544464240 235054912 281535165 862955178 276727734 718259039 328693091 223731025 588609668 66361544 161387557 317373224 160486096 113070749 473337658 926283443 585020949 814134268 111165576 836569730 571837028 848743413 10746699 32871996 669642859 814793780 931874947 82784816 729821567 367295588 569661864 915247116 990892432 891613695 578785222 752704974 375910011 962051353 362892944 268187676 954400748 50326021 794562782 60510663 257685173 943858676 669256045 104754937 331789222 468108681 616209287 954578067 167897567 568422250 3803204 768128693 672459147 476603980 155445135 272591526 716272898 953852785 435028321 991918145 682225325 601526899 512895434 545600811 266101254 739417071 592932718 457156647 10102443 53832226 249993221 118738555 975130885 756578926 99193966 498871027 337652207 597232356 523748868 405470432 157075276 558325541 840878574 937924992 780430524 917296785 47214643 957690809 269216108 552707748 732368507 593996393 571448748 736315375 630620471 154131245 811469310 82005844 280350090 993756920 440370770 980426761 945477625 872655858 799509264 930644572 196315566 889046595 862887285 580846020 444598925 942458402 319480419 101930826 569120896 506035353 459617837 710778482 614812152 788020273 316244439 144796640 284609348 802736271 499280368 47298041 478950293 770879284 58130880 344799786 395195389 224858029 314520902 646664817 190862278 252358239 532252286 471199475 408561902 516556 139306578 339962587 531399841 144493643 837054799 996334913 179250735 445780911 846162084 595542311 701871902 411515938 500532698 673665639 16868973 277642956 625856539 317004095 420982820 188925963 667174412 952642653 743465630 382339768 949239462 138698331 771670985 923283948 671787203 294608706 155096732 584776158 45634246 320556078 768575167 87218272 879059574 974117690 886166571 607083247 672264043 973214499 24029150 903021237 113480158 609225215 11922295 69000005 513986505 820926638 247838713 832803818 961159190 313155782 868206956 781679764 386409958 133309188 669544502 300637612 520333618 493629396 297918830 32675998 253061692 506037170 213842669 75365808 782720031 800766022 76958090 502949658 452961047 218561871 835629395 545243942 757252731 98666999 694650304 251257163 963471158 284891129 698810681 822428380 555725477 520989338 438211568 394479552 393760420 918812025 412167884 710476755 188699815 479797185 147010060 239084967 532178727 144956497 54069311 694671115 883923302 205003763 712588750 239003597 206853367 967389791 609610605 162598733 371400248 261552776 964463518 446518112 192631581 617602563 369305982 354542441 397598424 535914781 239568131 269840174 938710027 338096198 218695327 829444385 766641139 697901293 989131355 587029385 928286495 259996998 630463386 314579472 50929954 910013482 11522928 465171625 313554176 907997393 75814694 788448709 38773123 846636408 431636703 499754809 297709277 746401365 168682028 151934842 831605445 677862195 163855333 994363063 251093184 177715797 339510301 881550430 21955612 827796722 556080262 957525043 89810441 318224850 321791937 353168072 702732932 864099998 119269824 449441655 950274236 922248072 406931418 217829553 114868300 856842024 273894869 745203611 796086445 264630463 421046910 674881853 273674361 66568219 175001907 326560619 985862894 158167990 319424513 839429499 544017505 344247633 981276008 665965908 113313584 398126205 9648207 51270495 933063430 528652188 732114597 909776557 883737669 208310425 136494721 626017343 443119330 23640959 334123749 500948622 295968796 578712582 318452124 280707913 981400342 908631104 321720661 728828915 591532346 737109153 777324783 518061841 517955840 409716753 679258150 793237961 44077191 235464373 736326180 508662281 921811851 300339429 850715117 763682574 354005975 977109862 544851004 520167469 439465114 138112429 625582849 434446184 462353129 218966000 106779152 872417213 892444444 170238239 633276746 642163289 175126028 165133244 606173032 293592699 538161248 663683555 993932899 752199099 274146586 29784867 113150615 565227172 760413890 145434224 496749550 111905755 202886339 721809037 490545523 499134875 288869808 64618801 979128197 575636265 899584852 534417201 209930634 772045918 424960070 508909639 730534322 404645450 413407020 67344642 863290457 356043934 40849453 243387916 538298484 940781744 976939886 827039209 491901222 898941132 161391890 650433192 178833274 85393757 536889821 99667043 71557804 753649432 825301414 907822820 436525315 994017667 120648878 814910035 731482546 42572917 281067368 996258267 792437792 104964812 282058183 456690243 464216696 871495938 846968847 237988304 189274233 508894911 406882079 378928458 736106125 917209735 612750145 643552211 559587235 265678601 891099200 790862678 247589301 978315929 633640421 901962437 783772395 46186669 613973878 827574217 281665035 201328157 808174528 408559712 205449158 353600823 440368026 680029810 677824948 24601861 712612940 429595433 392420802 991256149 756743371 918479733 925836729 837039097 196087849 439775857 311347844 912296268 602449716 705265015 921664371 151548647 94407216 34149788 557426155 560027172 797384165 373644624 604510403 649259603 747743736 463010076 308494271 34764850 402667950 106524885 616126828 442561362 981103614 72990953 493939116 5142170 986043986 709719215 217106156 943498496 555212509 264759231 135354050 800702848 496785984 189261053 296121360 302539246 675708646 145555210 776490144 326967626 787156999 705605310 668871598 500743059 102175810 239453926 179249497 953661640 540016761 250572948 309059972 27792689 391563987 646083199 907738884 486074076 667896208 383044729 861757587 149737304 373636278 93001654 74436852 789374338 633927362 391988433 882697673 530600507 622261549 246016038 238005789 404513961 612977992 402963900 741852187 583742115 719793433 333598983 664234510 631100890 620272557 167922188 346123437 970116087 218959102 268123463 804633320 586071446 9329921 150884221 870030563 849485527 856917527 167792059 313319809 754395291 517431000 853440741 857533083 123901063 398431227 879621591 78992337 971520953 702270701 39500756 136797706 83957699 802610472 95236675 542237167 129300689 158139001 816051702 834993378 643669421 220606516 849938471 298903533 88285585 868619289 57968832 85015976 695053405 381957367 479825737 370596878 35220035 888763979 988662204 353975889 154372627 684412458 260924957 328093523 117712292 583767802 746696077 953612767 962588480 44656784 958547866 268335746 435103329 689482721 813891819 3359937 967812007 856201095 568308178 840350837 459353687 248097316 159888257 431597681 623007404 830540066 872701580 632033443 652883739 105995398 523413638 450122897 745241117 293670709 24386378 884602809 417592868 937194726 872010399 55991548 21792590 7478830 733283834 991970262 831218047 818103235 120707568 409999538 761263375 984685755 254006809 33503574 927706401 499587753 640243990 310163963 800168767 407814985 561721385 791719423 896127514 228263374 172833254 825748326 970427194 298748462 336740219 588754013 199962096 909932965 102134353 532968703 380018848 109164591 278038577 786501274 535541631 827077554 563327346 451403402 130933750 141657192 87453308 559405810 254557821 932902670 291400972 867693815 844066336 359334912 373585963 759144639 628271743 859945454 28771400 305868595 653900929 357469564 909747409 693783733 954328053 545635358 811684335 941266477 10632060 150526864 565761430 306338787 641508855 147031128 687096162 611432482 783663403 785782297 285205561 202518628 377600135 554042853 955266519 637365600 564721561 730057441 616978098 553368185 950003988 144853284 171850280 502341830 472296598 821068789 202139335 335501669 576675170 70487477 443491701 787234678 62150889 534515401 387753902 855113951 708467595 319249180 442157553 674455341 162775520 355074500 146288083 972938705 458839217 58399571 888354997 362040498 982130329 704226845 341511724 835694577 795515213 376993466 714035150 465061894 51559237 405433136 490378903 415752318 778314957 774418996 199408241 814899297 505780851 722117498 612174934 500783176 994900366 1168484 251333645 313003580 38934326 890073417 737349016 687288723 978404676 912888052 763934996 822674808 73017249 402078997 733147921 285940449 654265779 611986202 227799323 716247943 108549971 734239406 405597769 645560843 416508294 59639109 12182336 345703974 366189725 46704917 169376262 542453182 341192732 648836675 412105762 813349493 269274844 235660865 13524434 442254246 368790006 336347 669984171 105208967 314184466 60334750 811199552 307937127 379008039 734178933 562429657 436601818 424819489 601832673 809740958 735322300 371991495 697902611 359042324 757921616 822563526 826465979 711409845 184365967 573639547 208291673 379178768 391331950 764678111 200063383 46690515 912115126 45491327 337873490 153452806 232486147 8300607 948468830 213974248 491816278 517706109 241485629 490306736 282761322 637301585 694045829 899861605 229033630 200728043 358873166 11137681 688044248 216937190 403260060 433860406 710015199 333258926 436175986 462622276 923828553 545361332 699386735 442303312 46321753 771593464 397333784 316716434 527664191 559017830 491193888 492423168 712607910 647282570 295547196 837947275 712912210 278777346 730812655 39940443 705509744 381788528 986779127 9829028 746010466 736676221 115335778 868980597 879145577 760997051 396785009 630856463 213506589 435525098 185733213 111075821 986370903 896625724 683578765 319612622 878470958 635845041 515744566 141711938 659237505 406295873 514694404 121508584 925206045 19539941 880820817 515872666 875560203 654227088 566647814 748870624 596037940 325233824 27869477 905753852 855131522 906179982 528136562 978993602 844340164 98437960 717878651 413472247 95212104 15697091 227421596 309372306 77893030 818090681 863284235 871945572 961629399 94558646 677908321 848665073 522346754 40683713 324850021 203918149 840151509 770592254 61913448 705634371 331923785 684629616 719748550 807629526 371217912 453031968 622615971 193281423 247707150 796653485 696414025 161250346 922228204 55184477 789547274 330182522 511709762 564251064 544745407 738372725 425446954 991026570 560545374 282466137 876373533 17374034 194605415 152359783 543000772 386857084 460289942 409173005 621510825 534911535 83399508 445174401 362483267 675680655 494441839 259201941 51172024 642692233 134500892 384284799 283301480 593251521 576391456 490588090 77134341 516616850 438540191 653634316 233340900 593631778 485716236 595087383 85430459 717941994 895547166 39928610 606061316 918548622 134508100 721206157 849311272 148582164 315234928 45022909 562100782 274427519 999806964 88683634 769577405 888287750 354322378 274421816 627155103 916090778 704672708 690914416 89375024 434537581 241801033 758161198 724268760 792707736 317518608 131896295 873960038 763601599 639729948 160214607 505257515 656836883 259759692 895217816 721920048 623829221 854997465 203817669 760443931 144051338 509136614 740957503 120641341 874534906 310505144 581625763 904255668 69586982 899686307 460547742 588417812 273437953 749614933 524154543 131693347 749293420 352417278 840926565 708785056 872133464 937258930 201705055 351548483 103186190 557194833 498316999 478633415 348870456 802828183 740603083 347887882 161972289 218328528 388905460 500435019 560756738 748293445 382933329 325202219 329532029 494027627 675565406 49905193 412631990 563324903 38850808 241625688 980689587 762337021 862493226 541851536 405423523 351399003 111343375 474206756 98548305 646012392 963684212 611134385 378463282 488737418 930942077 79007871 311290237 586520065 331741117 678353180 799824965 663620646 415213870 887293339 648329061 994356559 97035646 771766770 290778801 11416682 624077647 369109711 570895688 928425177 224318656 505788250 525065 50032039 155948219 360987702 925131317 931354069 430713594 593282782 759338644 707391809 166648715 24316622 114897464 841924710 179783296 437840290 570256278 589813068 753736718 15072398 171191166 545447965 634134315 727982590 417653133 269140516 901328831 273840612 168114106 35404066 521512271 724623719 159252123 899440602 845396673 743021378 374102101 830559194 696208677 973660431 953482213 502529282 837112961 262536881 149350458 263127689 997375639 966612168 382701118 452393285 72507568 361796936 573637622 995127649 730573865 669994224 801786010 594065926 538174392 500440635 638538153 800792175 803189764 769518348 158239262 216148040 461568166 574935647 717366412 201227747 908829489 324813869 672093583 88362888 398487302 593000511 578652428 184462091 816105565 634235530 774892599 449459963 773757148 866264035 70266006 986848464 272355353 682604047 171781336 378126933 843971161 643707316 65939942 102748183 709636079 825139137 180762565 957909275 866608715 674513113 972414660 701413913 329008458 292560845 510349995 799736725 163422791 107419110 266424321 342825194 163320842 226292758 271623974 670268920 501046882 310236231 902067857 404218218 45157691 911893741 778772708 839442550 878287848 22983970 452668973 620453816 107980224 838389235 339028866 161475823 966794234 170450498 660961871 804082726 973069797 648831984 948582515 429273554 850143440 745114745 611278597 533626245 681349216 190608630 645911410 878003506 804465133 837625904 355372670 695764457 925348956 16570478 899343037 472658348 276791359 266089228 76067543 734994190 636395858 281051525 795954142 317146095 419341097 846726966 73723978 244827450 25902523 197030571 905881733 854634521 638704582 715539582 55407373 24188615 253154595 354440469 815580249 721138196 516567251 481982143 490164244 523166789 772410261 314641951 649774587 402914104 255808959 121627833 473747415 37823588 131924662 66589368 319355237 127511928 705465786 59041310 763164046 655547059 501802589 913668971 226185872 844865670 428065237 705621245 58042453 160728435 858880936 382270492 278900920 852296796 420695027 853237383 808976110 165797337 878072255 996558447 928986256 183427896 997134162 200220952 90803418 990913610 427102328 934365698 993999071 63771814 424737136 866590083 678524744 906256392 289517970 691907836 897923530 992523628 937719270 574868965 413461499 572331797 899982898 147152212 444212647 476662019 521875742 927869295 429472553 637395796 861903845 840649656 450132446 669698430 820709738 239386664 323434380 724131704 132732587 664440120 794115541 489663269 106295285 844719293 121329221 198296339 470837189 827091685 825360507 528054706 50326449 636507883 711472885 150811599 822275166 457801628 251708488 747121604 578288599 457481172 301692908 31977949 30552955 636610787 389249559 173437936 702787837 48726616 656383112 881842395 559938475 98745530 998686920 402648009 556363372 740635061 315097461 355795757 266538994 144148571 12143719 230440439 144028209 71155479 459379082 587334541 787282792 822215038 968028015 676383132 558372466 457571711 99111828 618367269 920365896 48029677 681699707 783827087 469462554 680669666 460924467 183334171 42617943 617935622 255888722 944226568 488942050 435147599 415560239 210760209 608540063 20505053 274428884 876481440 351856197 456373009 411108479 988233085 181915556 840744188 222105095 791941016 781378650 817562016 918690337 218691395 127756897 742747669 284106815 276202017 712654334 429386246 409540938 199841226 746821587 913179973 174667130 406241685 327319118 485037870 201627647 327232324 451760957 61328574 209791649 786878114 209180422 482012002 966158327 26498998 309669102 185253216 393090377 421415940 923737745 670266916 140069589 997279017 20214837 873729942 203851715 660999299 557538975 866528070 303652126 961671115 367082228 424804676 545683179 682054177 28562019 558839782 711321890 426053043 798899196 195756598 104629975 437774507 903822127 268999875 181906189 553178379 253139847 567641952 735918215 318682077 74698746 815320509 188942641 869330560 211212847 736072819 678244857 14909914 615370216 949480992 49014058 321105873 116716074 319477814 395324951 915474081 523245313 697592581 438872182 274130810 993873560 807654215 821415792 395947241 191592444 344794048 222643798 618731865 542227544 695425659 792630252 54844017 880251021 538776139 336683874 783840410 536648930 884810022 420178937 488622135 442183345 885040602 644877141 292887006 319396374 838933870 593257681 422433443 433211762 829784442 631825156 731146956 417159677 528346151 569206967 461939257 436091119 14868138 342169802 857941161 936513936 142906857 400993613 545584346 334569547 951376354 195814418 242910739 714196246 440727611 738783739 395137040 352043843 329848977 782401940 169910734 686730392 272352279 765397555 853837228 276720839 286652463 862633889 860367780 66489020 215212580 243832707 831360031 791018809 448349475 135766878 181347743 709083385 655537335 290126453 8846975 157023778 682080774 87495596 461390807 379265194 253864220 890846569 114886192 277270020 115212549 310178620 798843026 74407256 80247885 526006926 757482761 462372324 922011562 548828675 540277980 905975903 865121729 590719921 523689876 567530657 396422596 715925907 976976036 446804807 478014110 644371800 626358364 308770882 857453128 532834475 218812055 924212292 782570494 663777602 609234288 525267545 274976193 648243946 524929172 660447658 992219848 789611547 565137834 814669214 118336529 832968686 440833783 907431814 608518985 392521240 875555488 763789664 284551622 669153497 15195682 761523821 447575385 288525755 595999950 933549347 331106637 433871969 977599063 997296506 837423129 847660008 949018436 863999934 155081237 107743889 203845916 481489533 872390366 140936568 898752447 9179193 286338142 639352523 47777379 511158999 675369424 439835775 815671879 662754885 981806843 791903977 415559472 623825816 290431578 439693961 389317785 997792400 966126621 571097639 126431813 821492431 782192508 532929223 617327919 285510495 325951736 913377039 795935025 968560228 401757795 751805517 233979804 977427381 697398437 637182673 415287254 493812735 605253564 714233849 751948174 296390256 919967791 768926748 431386406 555831532 995731013 592524940 480944825 318202407 33111655 950227938 31259511 822988219 305998320 41544307 528969708 800407668 934190196 204333218 117892650 240902023 784779406 344450107 522048725 122826095 616012272 724287928 589915843 612720555 313463554 584796301 453293603 881143446 634250765 615908566 353029377 137871241 434603053 126843162 940160392 662846102 197352557 687173032 97887320 501907603 517002565 868950310 269884986 492431429 756257009 517750372 554163683 550310913 467789895 886549576 68091686 818792123 197610876 332219022 545766793 616549199 420265699 222920940 987085699 556176510 556477482 569504600 299991473 456691944 884750778 527790634 49877906 587956124 988649755 364624049 487031121 172567959 927098015 902105610 3080372 806996700 700103023 552393921 405724700 103287895 428587905 688118576 987980065 325753198 448187987 317558808 470289547 573646507 525841433 187546948 819530817 572790223 689106250 821392052 603722766 739012573 346648828 158006064 346886714 537288889 2027652 259042347 669953254 925961425 481956786 648033259 183233947 578042205 359013479 214842380 33414692 742517219 531116456 302631657 977808880 190805853 596078010 465301069 708527661 698558708 203321274 932292783 70683333 268577881 287162782 38104691 706292072 320170022 501927019 987863258 853939549 228859300 685144837 373281026 331655708 773317627 517456154 745660367 46210158 436882777 979107066 259240903 870453367 464348989 24813896 462418703 758288911 475985560 534717243 422946323 360724613 29372817 278142597 607475318 348641305 606567077 430836330 293431753 427917824 409433811 21165325 799465526 642514391 603118800 769077002 514306929 374037298 581459138 196043719 635368117 580562582 188491564 748445926 214856305 496361234 626739051 822019229 404762763 510780083 220840778 718106857 682915574 383129060 248292268 74329540 502648643 634193202 416790870 72501828 685840520 935893288 243766167 847088308 408891485 420440887 50506135 251693612 318545345 949426050 449083941 984115577 995614229 638222222 969314332 349792327 391982613 247815751 149290751 108273370 984715243 700934752 636775369 53709919 139296333 505966999 768547259 996618865 318466358 13725296 84241120 197311382 854790985 212658351 563774169 322625282 289372646 440588726 644066419 149131512 718008921 859843092 77667102 347020677 970673973 743199229 105265168 516898076 680360817 729677781 569056037 55614440 2898632 636575786 949180055 306889684 351087230 285846404 957957321 730433797 756134651 911612843 568447780 821400138 77089551 122133705 393304344 432877054 572047201 869073857 20027316 382077825 900199002 374298231 494181866 808838466 27201955 359699296 958019026 936784728 271287387 573740436 369674950 466915554 730562813 301843961 576874291 999430056 727816943 639439800 572287498 414462150 653085973 143793100 207026881 672220005 410910116 787939303 612244652 872517106 710528391 205487433 370994660 692976037 43987007 652537557 827368920 771111611 34643394 447308972 716203280 460549283 873431324 513583558 575222303 246405615 313797154 127716588 619936685 703420361 605752751 433697812 298881948 210157497 620319377 308878601 388213625 484608812 486119511 556308871 464716064 95262135 389846429 425275397 170463269 377515958 345749040 306727393 165255332 207808618 599640799 419019702 464441622 402293176 29199060 69425627 512222788 538416502 118613795 770979803 898224894 7924052 534372302 247675016 18535338 302748402 515882388 100429449 823029689 750762247 526862433 707029813 728607245 33845829 791672275 523907173 299749229 944821014 38333942 42729826 419380947 312050534 779544800 44295700 336279081 68366081 812557098 831265482 484770518 951439827 904118332 463103628 318762882 504005554 686731174 154006495 547025289 947938620 137556708 626434365 168250645 459987805 592725215 682085664 257024294 765820348 266583531 329007257 740258199 390248086 690932572 868808181 940144033 743389816 11821687 216713995 923626730 443364981 63712057 271923158 763189080 53566870 971637474 662344096 343650514 690198449 902494417 148116590 480062486 771387661 434647068 605018097 779365673 835767556 298998599 89809967 37296597 333534284 803389076 79098721 383426831 893807359 764807705 44475909 330083840 45590105 641831441 562013653 283779917 995805521 545975217 682959456 178258320 908029872 30484409 861018934 770293376 214766035 794186611 166598499 243506411 371211090 846207426 802748910 229181225 661849444 571209345 908759801 510314562 38260543 425868803 674577090 790801844 704537967 654673274 113568018 21766662 135904543 632004519 203821195 813946395 302003645 620707262 101454380 268492844 587278537 651733648 301267255 650956844 266023379 801270084 423979602 736751039 915424995 738848288 163306598 99225332 217459669 66692991 634366825 263197005 654669070 173230902 518259599 829956526 783352420 562002058 214496325 504625250 544342815 95526761 855909446 415911726 695103679 222063257 7533534 847880423 758683275 53137683 685245842 942908135 36078551 555135953 289457424 549516913 830619695 657144268 390859429 409409839 555980821 431648395 783069139 672926763 630348462 663761851 982149381 4080194 993981910 602313148 26798260 983996609 130611269 702843498 439648773 668162068 372580814 849487041 301975230 910297182 820832348 150085983 720477000 2534749 294132250 88739718 795821213 729650157 262492936 721758019 530685617 429731692 115063105 379898225 575984144 429912487 153913002 85108987 373368676 170788865 886611015 27283604 958171744 458257153 701066094 548816518 369134534 965818958 767975642 374815024 610508311 677884711 799211550 456753467 39968065 721555163 68673754 782708587 132412884 910480565 535069023 483027411 414427239 856881895 769092136 763962832 132169327 942978567 698183243 148164705 438482819 648964493 35191029 887755337 321230416 105746787 644635681 845105661 436244508 239994295 460102158 1599924 376450941 784193867 612745607 328391588 655222986 179887169 173251518 903268323 707454796 543164962 829734176 404207688 891782348 628917771 776568003 158840412 278241795 944502762 772329704 851687173 314436985 850426713 295000945 783639567 493702228 556464625 389403494 877813636 732468338 763561551 10746448 205785102 982934111 407737986 464429675 308068034 578598976 895251730 275670527 634052898 920074543 199965125 13645170 529210719 281571676 234421092 833469132 546917015 679373965 838588669 644047076 582307874 732863689 746139200 677622797 345653468 804238566 198771931 625172991 887790158 212611818 33993033 821851265 465847665 194207575 435225482 986094740 886769047 773736081 755409486 606655291 507493558 253877557 620154776 51388545 143813337 938123426 543362035 128213803 17324299 499911338 239141792 429767362 273943000 766029777 740071032 857688892 471778543 892896430 173411882 381235106 938417792 712083385 203963948 814061884 160539936 744038820 199736452 576930250 629671675 952045122 388576623 959140742 271944969 920269415 272664194 255184991 654194871 57448962 754353246 568091072 712015156 154815042 378961554 787640349 470281844 197141417 577571697 361170946 899461887 220670447 631038434 952312935 499811047 742890017 439546486 391322879 912601768 827367400 232000103 857367260 581100523 725563626 933775041 226232348 962310080 305190709 116486890 273254570 144601160 268196301 297271344 400558251 359725081 838814809 168225110 744973584 432745694 241348856 432928156 899626508 268305897 736856310 907490124 860926646 654270842 95445546 312668384 550423801 725981260 468615346 441465265 53796780 978270985 666288156 34820963 867489142 63520046 36467194 940473794 180296663 447424295 862291912 612105208 325662128 911528576 905097367 434476603 252559237 975264019 525684011 456514129 804456162 609438561 704565812 256843800 307334671 613613192 72934037 153633508 973115384 324773807 877415174 904791346 505529282 857126547 948822478 138617013 156400828 628940005 562535439 842219669 266759153 608161755 20027808 210322924 742052352 347287396 556738637 251323099 20830492 203918848 454437075 351358901 272293580 484388035 680988063 493401734 989266469 754021648 59820190 445080114 718630177 334038779 430848081 963397831 397133658 509749550 590292563 446701586 575713634 16911835 764295189 760915836 382083900 461115152 496203616 525331319 334485704 419681802 672391980 187677341 130359820 1953489 22183877 453450672 576919937 923129664 469107081 126844292 821349123 947158465 544983380 199582129 936610083 994768856 284997387 938841964 369594062 748663367 512465424 44078923 499985640 392486549 522834073 909115792 493539774 540895504 18926789 6799099 104976036 763905824 783641702 168141234 98725020 139961609 76594804 501914630 341861587 17836474 777005598 841194292 567709529 450956730 801712466 243747016 285308822 350699309 668631874 622549384 215016416 68771970 479257737 900125504 630320384 679369753 15321261 556018881 129201376 324540867 164893221 829479133 864884140 103168064 119759557 325701189 121580004 941186471 303473747 372685297 865691006 872829946 561096682 608310863 613340192 140811239 837346205 198784135 866547265 399582863 182166477 980707068 166424890 280040229 516602577 309148367 238162067 2656620 534151033 221376338 166757031 256807616 527181979 338144706 485732390 82672201 931909182 285327561 279608153 550187896 515380603 213694671 300324021 589938802 922430800 286875058 588176265 155544932 993446328 700851701 989082084 576274684 659939427 673044031 345181535 616500405 842330225 679317373 467147094 483631431 395484699 114458052 106743461 863102840 854425441 333576483 128745573 239291189 493933787 842271283 334777348 96172155 117039296 182317793 5353907 340712782 463083194 690749693 124309732 513153209 824968489 888503089 302783929 514424731 852096272 910144651 449594788 964038552 740389597 826963411 420591867 746302670 412551425 256256644 534567498 41787563 828105519 694524948 479799318 524036862 884794320 579287427 466929171 648282369 267224846 54190938 433519509 783172411 762368488 891053127 231927972 841550177 545928859 59537473 985109177 268039024 961865804 392884971 737568581 228451332 408988749 171187106 7379401 246736563 598976374 152529449 964827272 409278880 380149385 793165891 222236136 358085377 997742485 521825397 673300508 711999788 118690670 708166335 998482691 17580609 33009210 254733892 485953787 871827107 689535666 429654320 696424274 870593464 324011724 123499691 169585821 340309624 616425104 705916904 729243887 448465074 473714702 972072736 659468706 332900758 92081262 27004594 86740908 916301757 103220160 849821397 245461824 150676662 376293619 324052869 22033940 277705989 587482651 951513129 960789672 277514562 942229223 908321400 131924873 924945967 751389059 986652950 808512478 120620825 713546044 465460750 859377957 896023973 134121195 922129453 125461274 765248864 375275604 993348270 26237242 832695987 912135064 545542439 408993283 846153033 788474827 247471573 306009001 730431285 64940407 134570739 264559024 177840399 602991433 704730018 61443795 289521752 436411349 115461529 466956078 115396976 604153209 420974428 503731103 999915359 230942521 902345302 907120145 343705056 403225184 301808373 773885613 659363585 642887089 29878996 41049454 237051566 187097067 381149378 882192133 624981401 116698878 513990433 445979072 121309181 85619103 918816821 227295636 46111439 644791331 42475495 563193625 617131123 239292505 257279403 759341873 690539701 544237696 423126529 885749863 977219039 621571139 434890401 514358111 431953529 675525667 519616730 909128279 691812679 924844246 956477627 184685026 175086720 597850257 210898464 489216193 425690637 411975831 454883206 977973545 809249999 174239117 274811777 462156911 323759776 575011069 33112183 637476705 226657476 529042983 514828212 258209511 583205575 814355409 179805237 51624219 889787197 879641916 156716942 231143936 274013127 896891874 296008339 501762059 295075842 602842020 128154156 12441960 370920804 901002166 284995740 543204091 397936463 858099229 981913403 668612643 621145843 962432607 337702123 33052924 240731711 256396958 635991184 519254147 612406415 641052492 524186201 903867421 674497408 750753492 363731472 147921566 808995005 923429169 208713722 569901470 884613768 472697327 835004763 204535122 764742394 590522361 460196688 156644597 10912649 241528061 372411637 810741519 288535134 820600596 851618445 609364519 465533821 392002840 604393241 200681558 745814277 738642257 156524546 206916693 350552627 529248636 644867403 930502371 119352930 933863622 23502138 16168469 176299202 133501480 136833782 991209911 68054330 216348377 975167677 531063685 874576605 922176910 230271680 277011662 708662814 365909170 904415888 132080725 388036655 811762083 384051302 807036972 271669825 686001361 589279325 931436653 743887217 194301434 242697071 901346121 580179822 468019944 524036864 155141961 17538603 435143720 121503750 903916914 59039882 683239001 119881043 616527400 866367725 373035588 110778390 551914538 699999874 977747314 323361986 865328739 96567230 954012733 261689374 852485901 545854315 264709813 501566457 184316122 376048154 1670772 99889921 106797273 191981218 122702026 568908100 203278965 886083349 345083567 525785789 842592267 238292800 143204772 263758524 108117723 16360054 747894915 577859236 973899613 554974502 649931162 291467091 860288548 203685465 879723899 622232718 431349105 486901272 788068188 612841322 65981975 711333834 399598130 252913482 662834613 767975997 585258685 178915958 893621772 722214014 560607750 350759678 447677162 441369688 418329915 704517281 830710572 310241506 157648423 900110671 646447421 657469327 917043244 52477057 17614718 210464225 730099557 347017177 802334263 877966609 761095529 509683210 314408532 409056040 560685188 487038111 844118378 272130141 326025290 735695567 751638839 917084785 900221511 93190924 732247301 876362322 348845393 398407643 312055453 785056198 407233610 847604374 60356343 229938510 360804705 7550970 742324501 764796735 42722221 844896458 962215762 128607058 736841440 180521865 32447985 945861720 437654385 99585740 686000782 511518654 732399395 260883796 595441766 150501395 386659545 304732448 45018101 495308225 822888389 557297519 144112630 267234349 338983838 135061823 36500448 333965819 467154371 923145581 723436731 735521855 57862088 491426428 881324171 989708972 187758074 555686598 80372957 313351817 408068853 974796020 679004354 407472802 366858803 205801811 47199198 663790108 928875606 184234037 773147907 110360599 162474839 313876960 805534962 39519713 997866003 701299887 627560149 11385604 361754851 563663342 827590411 11497520 309490430 278702354 830705581 21474366 607984891 43398282 687548814 12662837 454630421 449055318 716512667 478577890 857637569 972359475 711125166 827336430 535184294 661830049 680645202 866162519 219894132 673766920 311333284 850900928 532183815 871665715 84872953 832256119 739208775 226026036 121703599 560006298 733570820 214090617 738408772 347999684 274017866 176986059 328784643 996114523 115030531 117805103 974981786 90200464 645441230 599235370 481296772 52242615 133488780 771340368 356780455 781489710 98348004 768811239 490746122 321731846 289707267 875412117 188155698 115984957 658075804 663177856 713398760 207148564 332001823 373113661 778728368 48697789 826274591 488497417 983469002 255133622 634781160 902099441 831736622 741191021 971041807 711522648 741552855 542587645 513313177 626226047 683304652 475941243 56269347 431772936 141835518 9596459 70797993 618519938 587988050 920200117 119603383 673669830 981763350 877390101 620743633 242352585 842450468 725562340 686196113 219726148 839450424 405404662 587336279 254336347 69022395 985946979 922203007 219968208 407454077 388147389 521704034 716439268 140443971 577249792 541138869 118575530 27437200 460322764 987989961 821746102 935237222 947314157 624326153 72703418 206758980 12037388 19769594 814839559 84884433 520966403 458779502 956880327 527473577 607422407 182785363 125640464 313679286 59836633 994407287 856684560 624914853 459646055 938451819 710071691 637543188 771793638 320556792 207360265 948886314 861297642 318023430 290152998 621890774 890150058 799757495 476361276 916130364 860883275 351364313 866776234 292986148 888453885 977622588 972234653 71505698 778630848 76895021 904431418 118608282 703939412 76623890 776382121 490977631 819815510 979758441 76047674 897828780 371988027 356247786 323129112 228559797 270144999 471431351 616695218 975134048 312256591 31315076 295136548 990267903 152562679 342938047 728446728 901751408 12716401 601625515 518393360 472696176 578183545 871511217 777855044 354450094 194553898 853609450 800634306 467853113 491719832 949708264 492038297 19884330 478052699 265395454 56600333 950638531 667801654 730934624 952571694 509803658 797989258 71527272 163310326 463129341 476709039 883107687 831275095 505151948 323026263 34501515 18514900 859227092 636430399 4394744 163737087 611860651 375603091 339792014 98628832 251947110 308433390 843454024 999510906 678180728 92715763 708865873 446007662 782737983 862884223 912910225 632809248 239365943 449492050 108114109 777936991 611506048 455026697 687575077 379699190 483917444 555724557 66593112 559354623 94438272 423006754 30662267 596192761 136424590 140572196 227060809 855834750 354531507 580697062 394145643 811553767 925463513 672624731 190641296 310109800 578139953 693198535 766443961 593091946 1542879 994163297 756406122 663175637 238724627 202599328 818278620 782864530 102158897 339841376 602005172 306125899 941219241 959773842 9666422 124760322 327057629 565367151 141547619 360713820 126489050 359473688 756597598 378569070 550921380 621522495 681315532 668799809 737928060 366457597 952298669 365681871 965442442 596208364 375949186 571193210 76790499 255143612 45974374 615103464 95247759 203646802 426598450 276514939 311204709 355441055 963533677 340040525 273695189 480139879 856806473 532849961 601305032 272821751 978807040 212158032 516194537 134417700 170572059 321754184 7708363 573063076 602327103 54114578 273461391 879076705 178648177 498537784 295162318 581981622 683804422 275593731 958716285 845697931 866687269 613721094 672392993 122308725 999652582 570160623 88459865 788446393 645922794 288679620 963793110 189461782 722767577 187035092 438320289 935044650 570873375 598370086 54378722 78292775 374102883 887349077 651280032 412581021 647829668 517961482 417664604 478070843 543638770 751337139 52357708 34040911 598056263 147628108 136448592 48828193 178039988 419785409 71069361 962388884 851652268 383010828 914628613 658630143 198358895 839674568 905247286 128892552 838611178 494405621 75827656 181950962 268319430 755766515 889301524 248422588 49549225 49766307 693774067 501910910 368707489 914857001 635513520 365510848 264844586 355245251 592571649 37359074 914429931 201160058 495662534 634059352 106764419 789957032 95903849 840272330 753924009 34939710 115442749 245790500 939652619 600934852 96999241 265543040 579777207 889489676 954146376 131645794 677146109 306982341 334073078 861134829 367134142 318870379 828072932 697208405 661187743 879021857 438731237 804639500 686890049 768655344 911523506 140388736 506716615 842285283 494125808 920334390 5780977 526353653 11238309 513135487 945553587 451238468 491656203 618530071 291859956 775503692 413752136 646148996 110934872 372570969 480147239 675765094 464383718 359299948 671163990 727535968 412280707 297797073 359908067 293177864 311355378 786158634 225639577 775210176 101058419 819120941 681512535 158070587 479457976 877083453 268751455 700119669 968083575 790635010 543264510 113016216 569353272 209241655 427699720 804637146 191388610 238580958 440792152 24865741 166178759 589040707 707257378 510306959 552532240 383328414 416642964 999069659 386455728 555691602 233915178 361942154 409634223 364350495 653360693 360086699 485575361 103101625 680930622 297231853 966143068 861189414 35621158 162409178 154013370 491352348 57901724 855481371 987110491 126313864 890366920 398846300 694779654 172228825 230180088 982186186 233298557 103915229 451058671 3611366 50301273 756011800 710056729 517691548 508164678 450374633 217928052 272046436 446528854 368444907 443951266 643370370 257050938 501016463 688354538 209477132 397616836 83418646 428778085 172684450 659437237 439025757 989083841 426633064 347962355 385380629 337815212 239315803 926644337 735280834 38394409 171450820 347615590 107583329 571395846 866352410 248353927 615927565 845778926 1478233 177820723 508136826 791011807 805968530 170917128 568114413 494719055 354945612 615058120 325396565 938979606 617352332 506178468 93123914 102987069 567836445 814696551 755232956 640596804 362338920 607764229 360505017 210643457 9923879 859520513 262081308 627765609 356418395 7620393 201451444 400272373 386335494 425317029 674011243 897458110 223746313 411375309 42620432 202861135 316904837 36382730 745831580 662300830 459237360 346181354 887489251 903941400 970013008 256345877 100651688 382480436 975212830 719821858 360867361 502397363 927541547 740380138 606144869 27958500 442801845 649171306 117388987 274960912 6371598 246303489 755870797 187601766 557878859 854465074 829911639 212226175 531399978 330907766 892196607 468576165 389748840 533334731 600278680 844447920 438914150 951254921 709462822 588209864 724548254 760579478 880785405 656760449 345981686 977764365 394656514 409504786 701700631 417584651 403028783 734713822 345794876 620220417 579185840 345031961 496711719 44292358 146878069 269004765 147430416 306134099 72760477 907564017 240365858 12387158 479906620 688149755 195709462 861445785 385591815 532516505 481738942 980541930 661168390 367149838 129272887 273624627 758387159 577260514 325722397 231555368 249687734 71710899 395397829 669968705 609117719 546291856 861777237 861355089 857800457 108438307 547009312 857130216 381439045 260900068 845090427 215764905 907002236 734378857 465660092 547122960 718508933 123947949 335637234 998145179 454767279 301817170 278781239 487010982 496128102 961035791 40331738 57970277 12404383 325345445 271885349 333536136 620205028 234028902 55505185 915585956 834537975 120106424 998053499 721960070 846055449 316045061 976016703 351683992 780599998 392748204 914861682 443650384 557503109 60413950 515682592 163709382 84468946 737980029 743276908 544114641 505839668 786470178 640222688 476469404 816704268 231039440 880506085 748196900 912202076 416552983 142489704 789930508 452706634 892294929 639526062 586583899 252514464 17231207 506597877 190919214 60344511 494867096 523485757 767436691 588415850 424100986 631628898 194770899 246719475 481011057 634806883 95929715 128701303 869418730 779330162 714219811 960009616 643932237 245383915 893136624 832414136 415445200 575844157 60894014 779026718 443034815 981786318 939604425 752914874 602931813 127297285 424629252 534319487 536623175 822031708 578166393 379721754 32305635 84912903 589169997 567370714 581249617 689658114 195106769 668533358 308953983 3717185 261012305 469077356 626196153 932802931 398845369 906415822 768904559 280914247 843185470 822868991 915933468 889089977 159185314 836760468 202079000 586346282 531577742 274338233 365323862 25770427 770454109 942831158 61049502 475513177 422478243 450536182 483622450 684594890 482339076 462371565 158412571 990939993 30667679 414647306 407070992 161912177 566087159 207115608 627776810 256783143 984813237 923753810 170575399 276360623 779557617 573896449 178618893 310854913 506509491 216827735 138816860 155067830 69059216 104463825 38888154 135776787 89502013 492235993 71964795 40504285 913968033 601662304 88579134 665894412 666788009 273317862 977287118 387190578 350048059 651394616 17786945 298227852 906376096 372074990 18108407 966065884 872313180 961452278 787141157 866546691 690871039 664789483 607331669 397663914 128219236 519817773 83639094 464476374 97045459 353661337 332059387 929871358 223924289 729660334 741945713 61816782 220366015 957076830 133046557 12386197 378640732 220769634 106946471 363027073 335629157 191051009 820324105 570255142 8624319 783221906 488029025 810055631 687199064 622982657 129191994 842128574 390301006 260790797 925607838 788102382 110133405 501936647 503804337 244645858 733391378 435461770 924395950 323848684 495000315 610559213 416942910 987411037 446237699 477870835 531891711 332018841 379086841 907956951 862378337 169126102 575575952 480775664 36683969 203280193 594207911 755927306 433489639 419227156 183807659 179487420 986568298 588987817 910818561 880373507 379020440 863022744 711768306 801555155 818458859 346360027 620868910 19117918 335487414 735616229 484444693 566897273 533097170 319963214 248772621 285896894 913571714 493678760 293186557 427168683 384546978 219986106 114231434 497436850 259501874 312979983 609268103 492212553 968973903 135430238 785603202 499486516 806565553 126159601 864359693 951753066 2913717 579656332 756342205 330828503 135940061 812886887 241702672 545734560 717543254 563735914 221921274 13808463 3528544 731423691 315645647 492884325 236908432 121413099 481866681 596091818 24989547 341904632 847922670 679002075 119510722 359869561 51623630 540239309 733271945 498115670 915817275 54541250 568406242 187875829 366188152 48478415 865863470 769629196 68652229 875555432 865852990 574902469 190632605 425306762 961714694 551296403 347807802 520610784 445304898 392026649 360217288 347049443 268882864 951265367 46538506 151134486 255526730 440454294 170607575 633349604 596005666 432930795 784999812 641883323 955126437 837633049 434109530 187754564 434960701 856469300 87912835 165274682 468483682 616123067 286509198 612575168 597984871 879771227 649069170 975862087 849082137 769311793 787410938 179954766 361254964 833547768 894555214 674590908 377423831 343585794 81082843 221250725 142108598 563128948 53013403 862612114 951597804 991557608 111427180 857088645 774819362 368719314 655833495 548760772 153754413 631528168 638802658 146949715 110975062 688041489 367916667 151043851 596455909 667277362 958555163 623214934 520760702 132361165 662481022 193982327 934156074 899611417 876535729 409771325 732174464 55529604 855188250 779167640 455197707 750620036 549045334 712024613 83295266 107779859 535155439 36243207 832633510 741364016 31059781 761307473 115077855 299073387 661283830 634599580 494304814 244885885 491099071 676953993 20965774 331788564 704807420 423133921 994966396 813783048 791853820 216551855 663164107 819217056 245707318 253187413 494563774 877544474 847218418 589794074 315361221 265483482 588521981 303636369 792224676 731041861 200955116 931688644 750850560 117828925 55995136 371638509 780190728 375248255 100850379 691026158 135132706 460716544 63188538 609598556 479491830 850449091 693114100 526175253 169968857 9705348 472419209 718138431 695849354 456036390 387028728 890177211 683822127 720268657 316575716 206902156 145477733 90152865 439207968 591965705 445909410 578066591 421644971 708234033 129081929 673164619 699954008 258437938 994130850 862994149 719773304 684583800 436305197 380136961 480761449 790380119 538987000 97686640 718527587 889844568 18226174 561261466 801511924 742455836 511564286 634455124 80307700 207094804 265982277 866740364 765082199 542745391 436665006 936440862 48071313 992222844 740987440 380617130 401043255 94632640 212155204 182468227 789353040 257256034 551226981 375987376 627166397 759563885 248029182 308034127 89360743 463534404 794873481 201510263 333304811 721509405 94798274 789909398 211050120 387356885 429781490 886910721 156514543 69567536 478630426 544561595 342318326 963764713 3706154 320637259 715993008 441937329 12787656 402257508 770021126 542293588 127781089 797169808 807730203 472701286 69268732 773703218 817701334 351569628 17290783 229494035 632441953 556731860 131694047 755623037 183153691 291494016 71833145 971197775 181524428 151809711 588294517 647363155 95358748 536955134 351109312 508525880 864338234 763316661 425624596 687658499 566821405 384923739 370751450 916028192 630551529 668405109 974890509 693344641 576315556 665164548 900990141 318484709 803331735 978480024 658543511 167356949 921071596 176314161 789545741 281887661 33818442 739585553 507932251 746255708 575393233 436491657 549208554 628640486 70067935 587706889 326064982 319361690 850321593 938199211 818951248 255190554 381959753 270664855 521102896 268940374 696759216 404444007 371939858 373145563 850385372 749457946 796853568 944762892 8868019 455309052 647896291 971699782 628993916 458974652 30474197 49838627 624398340 697194128 454097862 656115457 739889193 818807602 541327805 881616381 423636658 941346326 321272514 120383158 177354849 763730799 129687421 200317509 958650226 482988390 670078059 424571945 803788586 234026590 183198007 713662425 763218379 441856776 293375230 264952081 693988625 630042160 614785646 952191034 51178245 664571962 724598170 649403934 804512835 512459105 855253057 138392455 464758254 124100634 822664223 237918756 544053833 105289500 917909915 753094788 867522874 510842068 794782568 660864769 972982309 286263249 428523874 639629760 327550929 473601852 881885645 901395515 535541187 570991492 477004785 80404439 183407391 539260746 672301473 587485268 508938175 10483551 541759708 743575819 550496950 234638552 117401724 704870533 716032861 876040485 117890858 342832855 23837529 570895817 252930761 898198045 452397890 167730314 765666032 114226496 791892490 395022359 86953057 2561527 70607022 510760320 334839843 498476856 164597461 496505684 406368368 413672146 183686148 567853542 273434742 805046798 412515997 585065814 975697388 233860047 649652285 241876299 532351471 287666596 434561927 419029849 688910952 544505029 398655497 264309829 919761232 341307819 133577596 149647827 578551073 148737320 79138982 143484849 148085066 661462473 142785112 292520413 110124249 816464128 214575709 222908231 806356202 852267793 456549061 527195402 732871334 349217163 886134768 191474944 384754497 672326312 190515675 696389106 774982442 484197941 587303435 237077866 431618695 438297737 628215644 680983176 502464890 920778156 754947933 739670160 170275867 753399841 932563266 928496159 551683829 446024462 203627653 921953245 845083566 980117473 11539760 752182522 702241141 79142254 40606341 318124978 583503684 370816665 324589496 431723752 296430301 847556934 523771503 55498000 788430545 123039586 968488525 945890054 297085225 19942360 318091648 612598669 732233373 428418476 709334152 564229533 808185627 421881917 606791653 57621448 573356372 684967020 479402316 485931199 878265717 951479509 669363042 606465975 646513602 915736963 202104455 311502531 634260494 87438687 982534088 248597169 781712076 361759165 165082863 439872238 923857195 982669827 327626914 994195739 547806631 237961109 419382441 173415751 928236086 930951971 906236371 6462549 344732193 172468192 805608687 347070420 404315888 546121512 289984989 16464470 819701309 335656545 926635117 691869352 260990297 577485401 684293471 297993364 467519209 936225838 647272386 582805803 773404957 229295494 675840225 879762965 137959735 811224351 783755894 546213231 979865085 211529474 207202241 881620109 184345157 254268298 90636606 381416910 22065297 664478527 615994240 265395513 667091910 475132455 81478648 431365275 805462546 409306896 805714362 104394740 690406303 832292483 308452101 936995125 180268209 891563208 461599954 527317761 227429934 804320386 552618899 486887073 901173988 730541725 844524264 156193817 70049019 335517296 380029363 39728379 618084907 417076304 953465248 146975834 79047512 834380838 343504287 474531718 624609117 479949140 614859512 771306378 739411342 808836268 586282574 646026378 634013510 876739414 456934823 464326984 657010505 661441853 164950160 107690866 397927416 558685503 404498049 261453005 817984818 919335777 555710050 205419278 767401744 689739157 389926567 393615675 460065419 607489480 862029065 991392711 771711947 845729176 852075943 935094627 846911674 61466094 980226231 582551582 829664263 944395750 205502012 5160624 157455361 327980815 10023957 965848702 562241112 91509123 26119790 428005430 162792226 577419047 95838615 655929119 308311864 720164346 249951088 316768749 522518692 623216907 240852056 511352969 897702291 852321017 987366109 274054980 324778634 457437881 116108480 548891285 585770249 990691837 619964788 517768347 15843537 932831664 84845165 233267184 294315873 554680424 116783635 147487795 818871046 89168799 3912747 219336182 369560284 550642599 827864375 601467884 551948251 105168931 860840066 430677503 339675610 669645161 801684492 329863046 278422148 134753718 702121973 605234546 785338262 859899441 97738659 843749757 105965423 75820147 608152443 838723610 822790195 170487854 838473333 941723839 675996427 777208554 170450802 162993287 532188325 631354242 338488748 928128824 760457421 692962097 422910824 727171317 768269876 152972029 210313663 721421289 515926348 370089774 62270007 161048016 549169557 708279361 233195506 8922880 509995705 610791491 689225064 911944758 990887188 393466314 133024727 228887034 71242205 676362492 952507072 77371027 777700819 82753593 813930908 529659247 850317724 402399479 94828067 260974526 577394843 641579915 628929970 779386852 486580381 83008834 644389964 452588771 635606602 99981336 417296819 425617998 646571989 562958781 812183303 135980919 859352340 595343714 315490526 792556418 543568558 699337341 376872777 606632489 812182102 441633927 600973111 451367881 669519472 245480985 935463337 409234383 941628255 330070229 420984078 343496062 699274538 398073233 686854565 886569424 418012164 902401399 183685390 40426452 869291522 490135895 890598253 411411705 740350531 732935765 968204820 801509132 506862275 329593916 664536460 348317745 271062495 614250787 566109615 116136318 282282658 318072909 374660789 934220743 872822585 950670012 299280725 798935810 519028990 986486493 318185111 691042756 450584084 726843733 795792918 304353986 527326236 16680842 257467730 181279047 353226046 410459907 232012487 617754248 44130202 175801702 462220813 692901889 970974059 74927198 105442792 878962175 134031454 791471667 287102068 370107985 713053676 993106096 29103306 293927923 576300401 14486183 856112905 824361147 44403534 29500355 430792153 712352851 503642818 847243115 956288207 300533729 193714384 861443304 11254327 547885147 121865373 293477209 602618178 591438159 285311706 459197429 945685746 513405616 752563490 244168106 553593915 282056521 878744749 778395487 424371444 692706447 351077244 958210493 685546673 354993185 541677278 591787829 979491626 126307367 550657087 493974565 192324417 85410959 490723402 945427755 377500431 948480652 499271523 396352893 860070032 901326161 162092612 446993792 577376606 910047395 270192338 202493742 299956673 153708092 719106511 845923020 97477142 279947531 562470985 686724633 611321994 219239580 952965598 51618611 477806100 507333199 328306057 728946603 179842545 148369115 225478013 352018843 279476201 130897922 585014698 586871952 102951694 172381889 138882443 711853671 657861657 958985883 589139035 401715269 259746230 761761736 244298629 133440445 169106269 699772780 114889142 705971402 110259873 754218516 134794293 338227538 1639871 594460785 873016174 893903990 155388948 201968179 397557013 297198682 147641010 428664374 680309092 412791337 584101912 819388922 829046748 975211 220781935 429430884 74446255 852511024 909093392 352010013 311478331 126097166 276105293 279665701 866166921 537018603 385458085 611765873 229677815 573540659 904248695 544484902 338474479 381123551 664961293 944421411 775398495 468214988 189968104 253417937 494389721 24374823 802058263 69781933 355604111 262771696 49107261 4627865 889575502 196169093 814000574 47225067 732524789 725290018 349611609 570829405 921464758 710930731 280748106 452124760 493423321 40561705 187327797 359416543 935982131 714668912 658063612 297864816 487436689 86810309 916124007 142524667 421861021 887998970 945202659 614084990 74068875 195131774 175621752 765559399 124850461 658544714 956801534 463623187 598698381 180397234 303181129 261181699 118990197 519213360 104752533 727431316 166506013 724442971 832836402 954195225 25136550 400540599 961628804 328367292 930500992 936932128 947286994 563652228 220738138 807401660 451449602 40705915 649056829 512516051 205360582 863856800 751135661 394598884 687914016 752869363 400929179 967690962 370909277 292656575 946116321 426485458 256250754 576934195 170667059 314598894 64904371 317750545 210483257 181952005 113614082 71881046 662868148 538608735 960187376 4395068 38868623 92896853 619127287 225249864 448377069 696463099 720903068 456992965 417013952 423437237 199133960 33833528 917428488 727721960 75154551 112762312 226134745 280428101 946001297 109009450 574206460 579418905 522438429 103713404 101552853 13188068 380723533 232618734 906296447 834649398 997824513 775749988 540234183 372535782 301585894 356407447 565468006 443012509 847221674 551230296 450969076 989885318 64883066 308493214 290956609 34368625 853331954 359073642 854442943 198842261 251952985 562349587 730229414 19222312 369761531 113940544 398035984 132462886 383317433 4518755 720901399 137617112 230242585 438167804 961372677 515289018 124435787 440052251 614369295 727770906 342854573 730802090 180888036 447758843 385320349 164400345 645706974 554600038 797071251 378570941 881698398 823273172 642442722 830952981 82586969 87142168 427757409 937715303 500699029 456592433 547908548 426089981 422305910 250156727 294773696 990990867 888247043 444956707 881713829 142371423 531667985 940611339 857895532 221720010 628250308 316640420 990597788 762315343 212612098 55380391 959465686 570610924 642781250 166835151 286432520 738343554 368339339 99592529 480582848 926852295 689534008 559706325 308942125 242966085 457063096 941074534 657095443 497836733 55517121 112345041 553017273 346453971 53748005 617374211 786607176 245289082 510310036 92582499 716567523 551251741 191135935 137837828 292384412 464774122 35547066 955516004 206100837 197060712 584117456 675086948 106919455 738011080 938663301 818775838 320821212 130092772 811559951 758867237 520257571 293899275 26362833 46787480 621858375 24913368 985012178 520830071 438174585 238975390 962585835 62685282 322152654 940686256 614482423 984715697 813851537 562705402 245079148 434847593 312729442 521050218 564607132 646321110 208920109 671567208 850598741 49755479 407069659 943993186 377813244 406198063 619893771 492620985 272248387 52722585 891429247 902796818 607076880 228652317 118284997 492564089 24347073 135738728 125196027 271947239 854279462 591494658 138455765 647121593 355018259 819473190 34506349 268667482 629724914 692032372 462220035 663609993 677049932 595072763 236229643 129867754 799166294 295269271 383044046 960541516 807869702 257538230 822461083 270056034 30208221 558767404 710208009 669623700 29128876 661478687 101348890 977636168 111157163 867556251 740513168 274659750 252267752 667739354 544934883 228479406 486910073 882409753 124799322 826400022 393079 389450018 71217268 961633704 937577084 358517188 603344708 944233501 591665166 450978624 806729026 851679102 789047498 206759512 846830485 733945605 431000298 237120287 296294998 31936222 670268422 375513414 922435916 367156200 783284840 252610020 360210938 744797572 201821562 144145966 251934902 445879855 695766785 35194284 406682919 186430170 751357289 91822387 183898856 470404959 71029510 582323331 561623965 109604560 776905658 972139670 404666174 944165373 547269780 710407163 869814059 866365455 124308836 734985229 908401842 895583362 69997201 669197424 814690798 610645673 843962823 75199543 906507322 103126915 375832793 425816556 121371606 368987560 156099717 936454384 867906102 30117804 469209637 27111827 817866391 200854960 740863558 342772340 455768876 564234660 587966865 791179592 885655688 999616034 201341133 125807165 47494648 644702077 439471627 47385406 211689197 943886760 639069198 955380220 462200923 364128262 875721577 439986495 594661705 759516579 565562988 124317008 802225307 230301267 791770333 296534385 425492072 978958496 218274772 598179254 595702813 893711773 923406681 889773413 207224494 212272280 429176760 47016774 177728671 205441605 132587067 277120259 658499929 881400547 949308681 90621507 507889676 944785088 938136336 646845118 589215598 267582697 889791944 356387036 580139210 89556717 523754928 617684709 188814292 998030339 379689304 715617431 111034059 467437470 607048908 664738352 738772974 637318616 950333110 641206554 9186654 964176293 927982160 905981081 840636031 354411549 612292500 865414160 300921209 635523860 171930539 614007719 580456246 91122040 523893542 296212812 104459001 607507942 316205398 934156118 870423075 391186638 775040782 477200310 824580353 633595844 768683598 998755310 38200039 70363306 574656360 647781495 764244840 306705427 521075588 618274998 571964294 742877719 885278147 952865847 30379167 215229590 728789168 348465487 540267989 591877424 579504632 188609474 395948446 675171383 795056604 663851568 411582782 783146853 106631151 505238392 934431757 909271614 49707751 760635202 495831862 224904008 106867095 696265672 815153940 320670731 372863081 881753850 513721450 186472643 189624572 541772944 857554554 280670657 172678319 192275382 497707361 435264026 509484985 530090461 669784770 836187148 226256375 262589806 189902044 616207508 409009294 53080723 708699117 249428315 667547545 638048943 178151445 474326777 418950470 892032418 835126377 527449780 742172642 653199223 169611004 497310057 333860255 659487898 694999176 695644444 565304656 858780171 550721765 318802416 484152540 759147435 313880979 465040316 368220649 5958514 408401858 161838316 290114329 971097137 662998331 168120065 320572203 534545870 665396160 815180852 907085031 625006858 489184684 309178478 61582784 531310737 14574126 68638186 492952598 607862171 5403892 995620031 969557688 293201939 266931094 950631716 74535213 445238646 435754006 998370637 356580008 135611557 173391982 866711005 460595491 243720677 807354198 5181397 217639262 304328063 968564824 588810207 264609002 309815151 211303241 387684092 789713723 274198400 272073199 723080236 658893675 37077153 969722443 111832392 620895138 434766838 46328460 512286358 383098980 491914908 546069203 660373370 187665841 420316547 695577873 208370402 843272843 232479354 162915085 320988219 105406343 789418822 948155049 225656306 681789845 262328791 123221314 560542001 357121349 787677919 136681377 825876850 421223622 753781637 768253612 611611860 205553929 107991046 659231217 769843136 992744748 459894061 108101646 151111893 27910401 417906979 291243429 626893700 891562979 814986952 205720175 84742278 470648523 418173562 310818613 949847690 316983145 617801796 656129774 196366055 325806532 47806513 226528602 358685086 670991991 757822724 670706109 707538736 964158834 546777267 249024773 108570144 132789003 585137189 377562050 399511919 412475498 746207652 802672416 230619594 901640836 131358516 815132944 289286245 552057413 371188876 655634318 463218742 755363954 339868897 300595932 95040361 841093060 412549081 675314998 954745449 237439913 607206928 41691280 429690624 33157400 916349089 426234886 253822645 224594167 136878610 439629186 235749323 801246453 576070500 94817533 456894951 117127392 410238061 690820294 319761282 892458118 148913569 975682017 784714838 891951445 534685430 600126289 283821815 857430103 960835830 439961677 816493561 930088159 636049688 820438689 429048925 437922383 715556659 445174057 409620697 698227526 391470640 359997134 437121208 851432155 365106754 930766824 121649680 195077201 754446912 989482284 517977604 373120420 6517921 972532538 121340046 63250364 706264852 336135520 835589502 493024472 940415802 399115390 98582172 135767644 700506926 731138713 241051725 291865287 223380079 983965247 451795785 458123989 275975357 8274861 1779465 510776762 724700321 517468400 110668842 408238735 765925000 706252942 811980033 471326864 521778756 316041204 991038910 952065650 565801671 792284791 335814567 378805680 795777725 455073984 574493341 992509290 413686050 335555150 368319253 840737177 342202029 458690508 609396727 152080570 175595103 345657146 184076066 10203367 337909363 915611767 39770543 737737277 413731874 801594690 360539933 993159135 403221303 181313641 950828476 751206743 977621461 5605630 375819124 328832272 957015880 89095752 747514854 718686740 316482052 358645690 191152026 166483100 277843247 483860418 55109233 250294191 129773142 468711280 695495320 165540263 662261021 969007781 655021887 236546239 743633209 827018992 238857780 786436672 45169111 850553037 941628865 478896718 418008241 365775643 376053720 815329290 950770157 274756730 200955266 73772428 287409724 881935317 154936931 714852 629630884 576350507 612490172 704912923 260076504 599337649 472764098 526206475 550488823 261871320 625154645 36356896 935628426 597569492 466380223 555053930 628942820 316970731 440165457 793480942 103101341 468265960 631306089 146942156 775043114 66142593 399527765 325995061 879555228 567713708 371562622 205079730 658768017 547101108 590333408 743765953 117747519 555096368 32080914 318171698 767035541 117315976 827505540 174792344 748271510 892742677 125069975 219308477 396558424 94859862 121573246 10910151 977347714 674235851 325135442 962813750 362634295 740518311 717790582 254821911 680476590 307338347 200495045 345408663 225755062 596796864 555075391 332487076 253244709 462097068 794747148 621052504 953541290 490732235 7255874 230178176 66846390 352551483 775618463 614962833 154223590 786682118 895070012 876756880 38023196 987796781 219156896 44473774 486511084 841633972 544794006 427981132 138955540 508087579 465809173 572838572 490294347 982883405 580468441 465250042 567501764 459706268 354437600 278188396 197908021 945270935 918401987 33007190 256453046 758661497 405802810 830655061 675284384 970973226 66899267 616471792 882784873 134258394 808209202 897739193 402138447 848475704 941587093 187283639 182223854 452397528 175197421 435700658 532794903 848479151 514101105 211075713 561461446 917491144 428222719 627876870 445603297 277786059 646588553 466633550 458226929 282617874 672072263 508941440 28695703 781483911 933706579 500757822 505159005 803749931 67141969 567426512 743242268 257560980 180784485 826825439 470344631 393259684 117158412 525361557 541707984 555815632 298028397 430045295 448511390 903403325 36197358 864407872 249561564 839133109 869230325 305179892 119580282 174428799 544696923 962067305 529147452 529300904 140068264 757740323 606413840 805446418 344993694 875835015 37126618 933984921 22279444 559557000 855452530 448278274 108843081 951736872 156026280 909427203 172998824 747429078 441370323 980943879 783424782 434876582 80279867 303874572 568692004 699213223 31318633 132634050 88821084 406228 470142609 443562918 320336823 653794194 454376011 941629565 234090502 157618653 349003576 984056495 365287565 980264204 934577120 539064460 958819634 600220909 748348042 756029563 990948326 695931077 681918065 574854327 964392552 559665905 246278707 214544126 556454383 358323119 50931678 435524827 119219030 726968484 118782135 138168425 664692538 406562101 180199783 140775194 35135985 988170022 721566872 972504750 158145558 547802971 452102006 143898606 483386914 965118398 258770402 492523967 426292821 34919746 118934133 599924609 934736280 269447684 407933395 510932750 879922329 787159014 576583431 807831362 382604603 75736748 19264104 120198644 280240061 798146639 10040775 237449288 83343548 139223740 258075191 933114122 882503807 289170753 365975927 190656890 21065619 141065828 671616074 605397229 200592898 544303935 197758521 711357287 327336672 511343606 730992489 902101333 483072104 305069693 163477261 792113875 721132543 439195342 51852653 214485094 127496360 992711576 824768477 893323976 94546655 878029483 190493587 159190459 233820650 82330578 735226755 564153222 387922954 71102351 177107438 237761596 504843527 184662410 824098920 54430277 416468288 577557437 548195172 350695546 444851543 166631265 644834433 172504557 560141605 135151150 445469845 707011035 353015704 573952220 723890582 51622617 533784515 179963795 398459215 33544063 366245898 181583545 397216942 235194695 3975393 568567869 317955574 921302878 714781309 221503630 29249762 566297451 820570647 653432116 773078792 226072134 73832840 710096507 993306073 317735710 609206784 245154385 780359843 952330616 265295841 323960777 642614001 747627819 530096197 378826722 476343517 780030090 248048204 94927115 402673461 301590246 411997917 518947870 831234702 974368533 818027273 393813932 641719867 197001980 493464111 109323650 579574631 708244514 320805629 538328366 837502264 904921383 91366643 589297664 777044815 247813193 677339412 120231049 938079339 111842939 158072478 867360959 179081860 256538286 40630679 108515408 672744326 540805458 154808588 151994952 29804985 229136093 369721299 921442274 852129495 735215074 252718673 1270606 42077086 551282635 910691314 545795316 362380618 263510623 105681823 977621971 396122710 169987802 496542668 833032280 427428448 444602804 62192750 106193918 791551407 739700906 268038611 872583876 940695938 594018906 314282271 134674934 648703579 278083351 143601344 884085455 305201500 64095035 703091162 133673064 173698 118296064 882673140 505366158 249500820 509372740 809019460 173541324 324222890 950547213 196479220 961125994 185164450 960766010 908795944 905197303 923464203 921621742 696143139 467737710 415037146 738651608 475965801 889474712 80649858 934888259 91391210 325837947 251306905 871059455 922080226 82848734 847552385 712807163 635589274 959801226 529157551 729988825 84889745 140476737 50479660 495544583 691547661 972248853 131902840 480895106 311704288 870042133 640226733 521758609 602797398 437075141 871984671 683522374 973832710 402670548 400408377 486706243 612582603 736942948 650114123 856971096 322179977 101783297 759335703 671603041 659620890 399408169 810506873 684508767 244030427 378893153 283311380 525154838 857694657 780763613 885705833 815821483 613115656 903628608 569381056 656265717 269019514 902208403 75823721 47682406 804499798 110922737 663468756 991074978 737437581 241350348 469852569 289499437 939800111 880028292 444525481 529395396 931548823 73244321 50516621 752080065 570036824 790867455 864896288 108242256 985215189 129602738 819404269 542529350 225441282 23184070 45730637 305221202 172795027 263542969 550727833 160855222 240199183 264693563 524104833 744336560 709280691 129428084 793259563 88264519 180103999 938850640 183477555 326412017 842311851 273110635 421164730 672515067 461139399 30392109 288763608 408782342 877266147 449753305 284484481 74343077 989051856 240250253 476067216 596377664 167876098 822927092 65015440 710102921 630537765 498692161 29673637 42083871 362450625 37601077 850948724 72820889 964453581 569706812 890115142 855473599 375065577 686685984 129802673 963355185 854187915 105504550 194958540 439703271 750436472 590106397 5928730 277896678 985109877 35191030 52215899 463215627 529314896 302635656 777134000 694050773 500488616 751682269 186300175 430611249 726967277 61660577 345930064 161346659 870774058 303464729 149402865 794084744 488131913 204832484 737236737 491313587 24725835 237579005 628252920 482461270 855207012 79774624 311361884 879553089 436094516 629306085 660147233 205434852 231312607 747212084 589985142 517782528 490444241 499582935 567657496 440875121 297469038 791044465 972331801 416247236 780086424 678196912 674848002 30654120 351297803 329869873 951960915 723770245 315930564 435283828 325462705 998430029 421991082 3079284 454540912 109727605 950398873 891676578 977879207 929086200 988954487 374718688 614902993 842565105 131380301 235550050 824211224 621359934 852491199 490159699 48594007 72070663 160844128 248990907 591503905 677616600 907735338 20774540 286963223 448834629 23728292 298231831 209061463 434305563 144313841 94250338 822677644 633186582 928333104 306453168 135160610 145743531 70766328 615955087 982978439 792230756 243546603 574297746 881151804 360511213 938825872 212778218 71396000 432392279 987905764 549954715 169006386 397027281 668070244 255497210 41759780 888856243 518424067 827481705 599446524 806986924 115078965 763876403 273301044 159596360 203199146 396314818 405255704 990622538 650024379 270503471 250814333 274810237 140270631 594857076 361064128 872227238 91025514 332215847 475316025 690746108 804413270 969538165 522929608 619849905 223011148 688418401 595298812 937903389 863754181 792924684 816647469 275394424 910792138 190328923 356049875 743027615 339649423 856367154 90779024 884643075 185887866 643269565 350514729 620160151 388410574 220481854 708328009 733272495 552940146 402539035 791367899 710762877 493477713 264564327 896813758 373683598 907387764 751659209 963925228 556288575 121221618 43107301 289516320 804967537 454056031 786266110 207489651 751473325 444161458 165397804 12328468 143743331 373204761 515702397 786680350 402986137 546231481 69882190 47869146 762197064 691213784 283843266 126050920 357057803 779527624 222598914 942566505 474070879 821884335 523041214 105142940 557234615 994815891 441749765 523128843 686186415 979428129 59770954 7566327 255096085 555394248 929145815 661317642 403140522 275002383 322871917 666626636 157090645 277521703 62305281 646729478 435928201 643438942 833336083 543822935 578338733 820970127 955834540 626301046 658948265 530645115 91421333 735833986 434334774 697287734 705506974 64964836 190594623 44198401 492421850 826124301 922561236 730700879 834825905 54798010 699632810 593548584 997445703 374318439 666452455 288833492 356712055 271402796 847519132 957045910 884468996 104696225 109810132 699373279 858456186 253196918 593201044 167832275 710055705 378735941 640411073 704272994 348025294 42352865 751773036 45331234 746425222 961593502 847735084 387320098 999389308 663148334 337491390 995687689 298931201 660140622 209826523 696285432 965371328 907835415 798810938 570218101 482623884 281261478 392561831 36482228 409758967 429499908 843978936 749561313 881589445 412516196 421157452 848268915 731771707 807388307 661320171 77412710 672188364 6565656 75013704 504249556 795986517 553421667 973847786 542871191 334102336 578708871 97480216 587349459 77929364 391202899 811470679 55666069 170846630 768818099 127158346 730221261 629445114 991694186 443664422 168741350 504995141 891073535 253644461 831034215 117840126 185105695 561383768 202726093 134058718 905085461 590963490 172298488 296960783 34025825 272286887 702790188 245250142 429911710 100642858 944505540 708159261 691803164 277865201 797122880 358541783 858483275 399247613 83323806 232222803 608442903 443349730 768828713 8856353 290565149 236132345 899025273 548098073 820953780 258731315 197505856 746394590 855115510 592459298 715373215 458420744 950887766 675678100 892976542 823236172 587306889 147136531 217621724 381952651 554711661 78844284 64850085 738403285 920391507 699761232 197770193 718529712 408038366 595270690 547927540 830726683 307449397 251764793 540571794 45789495 38573048 671427228 78511716 598548097 338849404 168163396 391268278 132349529 91670721 754753974 153011842 430655267 431224063 500731402 164295848 578009250 673502799 324303402 395201089 810309378 554092570 113076684 685906882 927898789 642844901 390647287 210367232 332875159 943881632 709507745 742686695 731646452 784717580 921724617 308918036 886584048 653108674 67678208 663925170 350561349 352549802 545470390 819011630 614276654 689153016 813520575 457968467 529528093 937745745 314139679 363958487 708875786 842998447 276781526 795570377 343603093 471359406 742925253 590090511 891301424 80874490 394891685 822165518 491940257 106320607 731143828 891972300 322577863 841932896 836949469 294215517 937119329 381643124 946744690 8692418 952455728 593551690 486576540 66170479 21933233 219397862 463711338 346093034 351687455 424409506 738797342 865057940 268339490 624077109 390772323 7889121 778342870 226372990 839399018 580466553 612151212 388009884 181148763 412557856 157228456 619147999 911450339 918904878 637187920 359134736 653874336 772714405 404290592 674303027 454473197 911828577 19864518 436189286 792270374 801365793 401066694 403807357 773354604 535825016 21687549 816562263 609547214 628356309 800731440 245613440 736998482 782675417 162711906 356346450 491169722 579922596 988396526 718938882 400146662 485611445 84899722 597302421 983503322 421617179 798729432 421710363 257373615 4261745 102367541 921024586 266695022 847081423 248056290 438539719 28049420 10973623 221859941 216959344 597582110 407486068 828040999 389609501 116585163 915173172 400333049 536842259 910411515 644853971 52958257 59387887 970805187 822682337 524896046 126448770 883842714 146494572 592875384 951558914 798499416 98142237 515459317 801774254 713313696 452872435 128818973 347432340 501232309 55286858 350074820 431645258 387068553 40849522 558701978 947967818 826803496 930140209 508335477 318551311 300980422 734198403 447304661 874499475 856822378 707500299 472276777 434473266 419065082 375950213 827019534 351377003 199767033 520090821 771437683 464724983 47655355 750959119 700495636 589655824 945649761 244540391 302239596 667184648 503645669 283632388 75196152 237287255 213972935 842541861 876118498 20952530 692773071 547108560 899859473 175393650 314188546 686330971 545778396 256156594 936336266 525991994 130078936 563912961 601362971 26520185 826413262 257292304 20792670 44258844 146607229 195390180 504043626 563659342 124027335 6017362 117225336 659224777 93290879 168618550 198858057 753474258 872501838 258613738 706098957 495803343 194872913 316932194 81874274 289136935 667745756 797082779 204056333 422943438 441217366 376368215 398358924 767501964 828178972 548608170 436738345 956613441 990430213 503248524 25692482 725326041 125340802 52259231 991111797 639205440 949493157 366162014 328509619 745840437 356464260 281285309 962995486 912407655 183262737 357768496 731834057 442920112 879899279 600017781 967306530 932608504 449382682 498953833 95511814 986043304 865736496 960254864 262174684 365838697 299822101 414797663 118380397 846804649 178550313 585038253 309902579 162056180 477425006 341787642 515028226 345333060 914323637 779823946 320457598 162609339 552716703 898494341 736007323 693326269 213552547 647265184 603798015 132388003 11029011 994752052 948160866 897361838 873702292 739299811 138791386 350347860 406581739 788476649 157738837 284879179 727307034 242542315 559001709 450586630 485981077 746497891 38051577 641079527 373840860 887073989 185540312 631605946 870426136 269408709 547969950 482706983 852555950 59882614 310469978 115369036 483480839 128098783 786846592 855376387 439467032 716447347 198448630 606047040 192890583 207404529 783471196 165857235 773770039 169717809 588715101 306301904 80430738 732717144 600011684 552164430 229352591 241646427 426178647 208959378 535584971 267860948 329929967 965592262 723064922 899958876 78528489 789422724 972083655 486297040 213097517 361172642 991642558 763162640 79579653 42614536 873259460 923562092 869111880 297314228 719378215 873348526 420930565 9150123 335556274 23290965 297881895 544175194 446641752 567125615 460432952 167301213 929888620 196350847 475946165 783606831 848198018 258169753 853759649 191750459 867140427 96143198 324108536 621673194 535320431 314117335 655245344 840286750 908965232 134604287 535128814 308342304 300288106 836720302 899451941 802937894 65894327 448402529 468228539 181813871 291597246 984664426 706582195 305030975 492702731 524044094 583922916 97988430 558258754 397468400 822942331 544919847 909507575 10736863 717258551 945993596 193471835 895850130 401693284 977277884 356844844 817632115 115771430 6539944 740172062 98038004 957498544 863935065 549213229 306098195 102021126 427389957 609125847 110217409 476418455 133808176 590260470 200943371 490909180 732764156 795984509 283180071 435853004 895925115 344708390 270062803 688002745 28094655 850682842 680402331 640582196 298560963 913413347 23608602 205613923 862797348 603465609 552610020 958296798 857261380 925593671 591549903 803624464 871072595 340879035 943308656 39823522 875955952 607914610 723510878 887722563 585113057 268763563 77919306 418409283 352227910 327107960 418920785 714152704 964100736 547371274 197233880 621090736 624925991 379384816 116262768 113158555 613093836 953388936 719952967 61381268 515492585 699763580 833640872 168616605 329787546 79992697 109104619 232538996 110710439 410216748 629215209 537104124 937604945 143315065 282394508 258833002 688790281 884532508 270598452 18576829 684998421 936716612 918009613 977921310 550710819 177339589 638270738 595455663 721015517 539507103 601901742 736021518 26036934 1177759 188614036 637047870 240740157 183896649 382017950 275790026 740697394 782955649 711383089 683584124 273729320 538776066 315187437 142242152 563633534 697154820 18411393 470949409 848539399 30195011 659234786 100569953 637462814 885988761 992112477 418527353 732374520 78742337 679339273 107926495 588502828 919646457 375479351 525143932 910510215 142491179 847767175 711373826 808743476 65532731 281182835 61521526 978317377 466131027 113786716 728977368 89144513 570641328 403600425 612218737 637561772 89486343 630860726 270641204 358302458 219801402 108299748 631340202 736262686 652008788 502884564 686248129 345532353 217421120 277776705 956056358 160568624 549516905 537479285 466986125 877871860 820593005 156137684 469162329 709206539 317291511 453399576 373192656 402565504 196507814 610669649 689820145 378473236 931179084 590706909 418840725 867588456 57152216 823535043 987095656 502025715 133031148 257619972 863250043 183005648 912799688 952451628 629832866 649544090 980846798 577729344 2436341 255899188 46526575 213743253 948343929 529756883 897670373 440076935 472362503 260149413 283122021 457681788 132409698 524050650 891626447 688597191 961046922 558925150 362301516 177805647 666449271 612775769 129651684 966376311 837676293 787944876 552744299 765178518 875850902 619782675 47046249 256834289 592908463 84281759 911185528 85687966 510478901 808688440 659540524 284288193 171689678 732390794 590454328 664135742 806876256 855588767 768116837 630280510 372877505 978107541 735799526 886105686 349451716 795285323 893840101 709675981 305277978 186277822 56261582 542454953 776758811 369382514 133713574 573889277 847454269 184373612 486589244 433383807 375467696 106190599 458972092 634925681 324615387 569741078 582296348 663504125 923260638 483088006 463998293 286905330 977087803 439665923 800228912 286648636 269887554 471353467 993967890 471210822 911418326 48614755 678594019 623305965 297733878 237370024 349181621 740042005 69765285 208193827 848548938 474143711 761709896 175883735 598971147 394649743 489964262 772569541 1713384 517242837 224656233 478577322 707127938 971027596 701935039 52670645 59327004 729906521 27281948 44931980 909387363 982165819 328594192 530205646 975343995 515267826 954839855 419789800 341686304 948467316 998673133 912893476 109527123 487081463 76343676 379176078 571287524 577675823 271853990 412929134 611732513 955684141 215870733 794945713 125014981 930913566 260975385 133130739 714260028 543366780 419332026 146310797 842905657 969979188 308589884 184190620 419866661 135554714 345063538 189884221 22142004 493463872 262256560 26692423 647047243 688294676 602491499 220806413 63901855 793942374 784038980 315675326 609865939 680352861 290702704 712675377 348180786 141233724 155278414 683678955 336819714 68094532 354287302 880519501 107756642 357898082 166108251 496244368 797361831 170282884 564404440 128739594 311318830 965605090 775385698 620086208 305783695 342828352 110789684 898599897 851778870 555036966 4524279 297413160 201855093 850915261 359159865 69629573 720428623 538438860 574068591 776659735 215733032 358444690 224012847 580386488 243067853 102173261 676023108 677500819 218673598 881681188 891907643 264917359 241170657 805041183 88082596 589006366 741075861 790710804 154478883 975061972 559511992 591596140 610983697 173667845 148464102 653846829 421131159 307065923 133776607 857921125 494049910 542293053 110814900 775092400 530932125 804154137 362894414 79262607 911669917 597174862 484389848 310648146 169063316 599176148 334299062 199057691 502722357 31183578 949065976 63476781 402860233 876405187 611672498 194366058 836828742 136004877 1684823 355931193 910380064 317272408 121550849 579243032 317275083 773308411 875891624 195753399 858100539 108661299 492093661 118619559 630305343 664577372 912046480 738193786 155390380 29884767 162945432 154258794 296501062 559722157 120898829 942461280 510710345 123942772 513434436 394280509 740133656 138633515 813566906 637320026 219654593 707019727 24790747 852100568 403815762 994372752 863241439 944203332 346807841 561726195 544401478 589485210 266633433 424550452 834640463 263011557 702236303 200756151 539200983 285170254 337896950 884694834 527924386 744618787 393629323 813500710 269990777 734011355 574814317 937396425 826433019 843185737 546796644 186070547 74407359 944686155 578624534 736002162 464344617 168510819 377241441 352444934 133589800 609555945 650509521 543831422 973806964 31070638 619327677 658283870 767043150 271801279 622660080 318695526 584551172 365182004 480335561 602085232 309491717 767536432 702688929 726597420 167756476 73596223 114926922 48579594 725369375 287001475 31081624 828005505 993973199 583176446 897621055 988906335 286150517 223327156 913237814 317379374 617060312 977881500 331180865 655148027 380792467 874762872 800672478 774604052 321667090 463660099 953493358 53874433 711907949 154081130 287398173 188604586 789059426 2150106 918883500 419788530 447679285 551218858 77424431 596727050 327427953 244065682 306147685 517660998 785501340 298021859 928205431 230918272 145088468 310175938 148961286 747509520 350204817 2068891 340639914 601117689 120868178 350343994 402280904 353383950 126416895 73959697 917940911 863656247 57356281 819659143 366691242 32075238 862809651 82624855 802861490 480382095 915892660 162459671 293418080 355395043 72720528 760239160 37630153 911075405 494091520 742512792 492496152 150183678 738529073 628238117 467647026 315676024 670472527 793759767 649086253 776730117 605585923 517937423 836864039 226996216 85481068 867456078 176786211 924915303 820764160 414767647 698893686 585485213 153267065 786328631 802877752 800853938 774058665 473643313 749681553 129064789 479521889 115906518 6993456 152254223 582286536 402730452 36456574 700934214 560102251 522169833 668411734 376329719 736458177 532343308 97640615 6307997 651586337 769869131 850685368 790988651 202210980 569475481 375435902 100735073 649665965 502343518 549036932 934300042 956290178 105855937 786233916 933875363 295333361 655733609 52817033 622826288 601265091 78325854 413891824 443231397 701592718 179497568 578435621 282083937 94250261 743282508 653793512 868652193 264441484 800368050 475659477 577081061 956878930 173632114 91055297 198214861 331932075 384510810 660913094 419535891 442277933 228903721 665229646 565892346 677987087 863958059 523647133 24208951 764051026 806606384 553092852 805461964 905942263 942102420 98347507 75029030 91262705 142484177 192071414 464829143 228147014 55668912 382051521 542945409 419073916 490570577 738327527 443632770 843904193 687611373 663973462 607003825 32703448 230249751 788219034 71978944 965775031 345024122 431192869 424470893 229157046 329579847 706580843 411995389 949140753 257931906 893000702 152786524 674778326 522414011 190377292 406773260 608604561 187507637 330004786 532879596 183909805 566267613 545370856 12764529 734587140 766465481 387726656 113948030 652326427 636739903 330326544 832395965 347039172 457748679 477993056 531128989 854064585 118267488 355012059 37031217 745389090 966067257 926125626 841534120 489759297 594517391 102330727 230959907 846649607 996311258 54784030 556378692 459481832 646273989 103796633 994389328 426281511 10579468 432886319 775447766 653736303 930902287 137139067 735107289 554721976 757733453 125878173 710200994 975620510 860639859 729266459 718583664 557988440 432080144 897616807 934391227 843614264 878653788 459519251 499489789 184236941 588451911 647244491 361241685 48860190 165639965 893184952 530346048 975379089 955137563 216871271 781396263 371971042 184592678 812220446 648013778 501289896 23802894 768895351 433525363 131261879 816139304 437547841 920112795 92591356 442528245 218103809 811004734 122771344 544009846 891013635 249139740 616468509 734052570 862250257 776409122 357465769 937977425 979629973 219215445 199702361 767840937 581477314 112199459 15067410 228634005 947870521 809045171 26312322 380917409 910233070 552237648 152913263 292290631 211045616 212464068 246195746 16727230 269691484 668684373 466267130 534970305 159251536 709601664 274275341 760310282 202537038 188773028 268099531 882244262 377888027 850419862 738792812 154170729 652373377 447046843 553245658 64043257 16954439 207845363 36341867 685918541 352123428 401909576 9399872 255545731 86994210 932915757 283401334 489707760 342536744 991556983 263544316 431669104 895655595 322443261 295014836 152001149 261685233 710631781 373285930 804942460 935762357 676825693 715660268 229945882 809827609 278430263 770399829 996344305 279752605 189032862 660556755 731974077 821781192 940953059 245884022 724671324 406270166 893037002 109257164 453100464 235722419 844249558 721851434 391169821 650604655 231037530 732569637 661262497 259769483 935682690 826332727 571261010 873421067 997447722 645461844 161047233 821076164 182008793 479377624 334343603 175693673 87072834 80516101 309996127 479956435 449683936 975862284 907193880 763865358 388699594 518389435 790470974 186263179 675848026 289942971 961823149 671343501 74216240 940686447 917162224 921549677 725589807 907606569 321638972 288135094 947891545 702335384 766236514 778497371 224803532 224939902 128719907 421021398 400165958 385132625 404611140 107908373 623371581 232557074 910137061 310002240 957235574 861774992 409701838 813649569 554368240 466807328 981484341 490398037 93238757 461964492 198303454 85499523 806318632 334324660 975027567 199552733 167281859 979964975 335918741 843222096 363290565 567944792 737057837 924360733 627460408 298965965 795425884 766377863 684302820 10857311 29108751 885205297 906872177 811947752 80644191 120276210 216201955 410851099 280282850 40039893 224441878 145593693 495000528 748006670 910922033 1322190 577334871 34491146 193027874 8220985 661830109 819299541 779656312 712926292 755512632 529872899 981737402 743438625 999288256 617973190 459059087 842852140 371348778 876867595 2514851 300676668 915650749 342387663 832326623 427924380 556121059 140819598 343891355 242696024 52738059 436118205 945918299 316859474 76892509 168252265 890810 661675178 302949883 243171544 869077286 686425064 785542697 500187829 819173933 859887317 220172781 695003452 454674888 90967682 943889838 726558018 45048355 734038854 900463857 745533523 599467769 769741921 891383033 275502760 401026749 704891419 681823763 459705151 601897303 371223378 303349453 372283482 917853138 912409758 225899356 789648471 999448812 116760039 466081651 631221745 436225886 241968180 643551132 856255408 575390599 772896943 567559519 482881232 559175489 558170824 999520459 458103885 325375307 846833861 791858871 638762715 265269885 321111329 339310412 825254315 80977456 959680808 106896838 510498116 609307421 161681913 208118701 375686805 783561457 386005748 20813960 453063832 67261926 363850777 839012522 589944238 249463814 424965632 5907844 265334180 14916878 784888148 470673400 685981740 423753428 970880519 831795388 437173373 334767008 5730406 222608104 164259679 448460218 268948923 765213890 99096641 398738952 844650323 705155049 858948612 208351025 178904712 666451071 213494477 86950712 944157028 273457884 243389930 801612696 596215448 698113507 507327929 376209533 683670555 354160847 224396287 32904616 51667663 534397739 574839340 219790492 427260817 709873415 57701124 354616113 226915185 755478465 83726193 66670090 51150011 368957661 118227962 737097159 509932377 350438528 309651540 908759086 448440256 772640709 620931455 834446582 662679132 676456893 413843294 508483933 562662407 251199316 667623157 845057882 254909808 364954915 977974712 698470093 237585830 545129655 698536413 206185895 319443008 995479330 652112624 681277961 197873400 471621978 203331305 575334988 766195239 978981268 230541692 711118331 399461964 526884417 255735877 136476255 488274873 551463615 273053454 829272323 751823864 722574970 779727357 197912522 884572067 933392487 844997143 31746162 527038294 701260877 663103004 400734100 745648632 678160639 717399906 230673785 81131535 283503815 893806019 548013112 679899148 743693273 799024656 103607703 114943135 175580615 950874557 977383459 871996312 312887340 283429602 243609149 327783471 732768075 612262429 42763059 275950990 20499870 906159609 955775201 444351619 399350275 216732949 867563870 221952074 495333607 627018338 380011900 86147947 186895907 50326513 546234387 301948422 577088063 156108797 908575530 665694155 883171462 389064934 72759106 809673344 358872066 654885808 987361518 776147881 556807109 356661355 828618031 808671786 700678310 631143332 165053392 808547598 782675305 930771812 158363896 891309085 282152193 232457190 568159 967159233 203554529 290255041 298728151 920468080 324516532 679309352 992413455 903866513 680123932 879872416 341346233 466143947 766303831 378979758 693466173 683960123 385418949 570184482 143862122 156148522 155677139 549452851 868869226 637865036 232344133 55149511 74433699 846716676 766517766 577805900 243214573 961566921 746944759 458263960 987957242 212492073 703771589 826885362 878351908 504530275 87243060 708487082 571008031 295943427 391095243 107870682 539538218 497406160 879979787 826173551 705145253 41739662 693093688 750823208 941507742 331166383 963699582 378864754 573704350 273103224 568572428 435607326 519615988 985206012 820735616 896977276 252618815 338672501 425820421 204932204 755321308 33804874 985420767 274446280 393109552 605913526 246434064 627355837 893902078 910246994 964005001 816266209 650362498 945321374 617158932 209961726 508508072 696734960 372953252 224272745 980801935 779167875 950153741 476612394 819617407 568022496 177151833 990092379 68154292 819863614 998012254 703173645 208049451 575893496 824203990 591620601 12550904 511347276 44409774 358447543 442643317 699654959 176415794 678799081 109977725 743609362 79258907 920823294 203891938 519101625 611044466 696827432 963504555 939736229 810301950 740557967 530062277 471553354 529217468 240713522 526602216 466691986 667128903 686937788 600565581 586728831 407351797 902663345 241635758 571785079 80647625 203663880 716499880 561366472 985457969 875034018 329166312 745907390 651624304 33313111 693010634 768501315 470254954 787323139 934444120 129846392 790727410 96818073 99976267 917297574 9932388 643005809 924146344 443582628 482108056 709726725 691147947 566690903 826889089 996748074 378309479 413782617 792454732 450394028 886098016 540376634 947366052 837278803 310727026 438833422 454613289 174419153 708387362 71045837 700279936 386243424 346090115 432907757 907328866 192196407 555633472 910271019 175088089 413787868 624733848 205161200 531961712 807000584 75144472 972431761 479926321 552055495 727699472 69272452 662855877 242618505 209877483 422329491 553546751 871337216 275136367 133981275 777057195 42553218 143183090 404346346 519488193 446661541 187454288 338531759 281488558 726650211 86732688 845446494 532532737 885222925 118819291 728310073 670502947 707465043 322987634 472797778 718323198 501785165 334991835 695364396 868939881 533974808 704295158 85730029 657387490 744709039 262230115 892364042 648158488 432604660 23982287 112221876 575217395 454221049 812052332 417060187 861834000 752931289 818536965 289777491 608613526 681364234 592158640 586057902 761121715 370532281 501643229 972393170 789696734 898013190 704707905 520512891 418495358 276619004 556813290 57417266 715484806 11871409 122050322 148821163 995566514 595979238 966326435 491714636 145677102 705297834 473904298 266598916 457482146 729935545 6568591 218996059 295176551 635138848 139444633 837706376 218413330 292274219 968869008 492994408 829677428 337349628 580459238 714748606 257621400 247853826 365347659 657765621 844398372 189668983 716037958 740151886 281349267 319289296 260020264 22204020 478628981 855319137 455068968 669597812 2788153 440082837 368487427 47575143 72806350 737335791 880650220 374677106 895368056 945025879 464458825 37594237 769578478 908788283 921511 211872295 871465862 56072964 714030306 727216273 281579582 433265653 790475620 310427081 912988133 142732101 61994585 83824242 691418370 970557111 187691696 6305190 165014170 465088002 99818290 839275047 828703003 294519137 393324734 743640611 890877337 443304 193001668 943604854 817057256 999409592 261980466 857841823 811257272 410338033 440620960 796639476 757115625 749487718 374885623 939922471 797528076 838062930 685190529 575647548 921375445 515465120 754919202 871297326 109715217 980367178 344225787 387081094 290995766 989222811 882579763 138621658 75171011 565506180 518096559 167032020 266675940 690968329 5978351 839141530 322727285 62635591 41339982 7644426 664728275 679772134 953891747 259546352 495109946 849103071 707945770 33563429 894316519 377252291 245649569 959755993 525834348 99195405 523350046 376398327 879565769 806525318 984648369 740763513 203373273 308572447 35844613 253045107 64454224 258998425 926238412 239110258 924457857 989926767 400947273 926696005 131647124 758994129 428881311 757363561 476651056 406995690 691683158 405594199 725270714 820081171 597961024 528532326 873209426 168204483 592843331 625153746 298135576 820775051 149266106 877986358 724178850 177195673 488042860 701277924 744723394 852141364 389231872 856294795 932232551 14454292 843938134 820044301 468737807 808686819 378084066 181456501 540023357 982731894 178869833 495930863 888226120 348553032 824985188 555532685 497213180 928402430 128209912 673796828 270175197 224422461 261128758 665778641 17840967 504834069 663052133 638984870 177436562 300411786 998621363 801443175 5212929 218736041 648657332 254867474 806600414 637691951 315469599 357347905 501074664 871152642 508428102 519537621 965741497 920852988 625505335 242206729 499594708 9791565 552518657 426932467 600232643 574601880 723983462 159301927 778736228 113392102 770444891 942219321 917520013 369312291 905051142 734757964 53753133 647450240 928294788 808941750 576201012 47890217 72584211 16352176 901955721 872057358 674537237 985494899 999996465 574641356 340603479 761899438 380240238 700127175 852726703 184492500 63311525 183706261 580360302 720161140 642115723 674557143 352240459 712006235 679235829 835219368 8210101 594551775 719773671 276510203 210076354 381009991 398655193 776106587 224013399 468186048 162599736 835697950 974420413 973914805 145099871 568127953 321266799 636211857 664760063 395355023 641676074 265697781 871985205 732931114 222770807 443666373 620801010 6163036 106739495 736385008 269026266 696728866 416559919 353726575 343335111 38316682 9574715 13568270 547848470 824379353 968925768 53746646 310437324 666246112 929694973 450422769 459232526 99137894 177866129 945926033 746182703 146808338 15056645 72887102 768889989 12433284 399747010 655734187 274357474 771763152 439916870 364691454 534261769 524847159 144246848 194398981 847291091 565152495 450434299 846965041 628786041 940647555 157250777 468879841 846814847 701558289 722112063 282409596 1237709 419904734 834716294 323273240 427968135 716567713 354558362 868296306 743345735 633245202 439895502 313099522 495243715 431493766 555377209 656769769 736653613 552104865 692733982 116579801 731997827 614360582 86943483 397162145 423419983 988920773 766802876 873948745 456497076 577021174 279409164 72591015 46311899 30468331 50044514 486928478 626613301 687408202 407338987 832447314 35419520 727375544 583692743 349006026 506542473 253494781 700977753 436488849 927997002 550833607 531878244 413322780 389101227 153883996 166479432 128718585 855383516 226828408 756838340 104384633 186605639 45192959 246834587 771909330 322092287 376426574 182404074 516585078 456404439 919068587 905393864 906751310 170030511 970477929 392031401 646475345 118912355 48333546 947345351 901619941 113557756 37666641 489523393 374894593 48573899 412326877 363870820 171512162 497152763 557048022 267605980 274245799 704971105 161706029 401144577 674611515 912068989 938666745 282448190 607720022 714119754 982695648 611742294 904668659 560345117 377461057 933673759 846047524 992871326 111561368 601444468 544202280 96303360 623807777 917120717 715970014 880267799 436581138 545190482 284072768 776197454 728955361 975987435 569094578 253932169 406632419 207960708 361800873 957106980 35112898 438298583 753054001 808422158 481560598 254161123 390288901 573217746 999291174 415791497 356397038 391710137 868247834 702077507 868792297 544733093 818131438 814773982 905063978 350991121 243699095 429988659 442871740 274370029 355219956 251085659 398394554 761631307 816098016 518614122 923085287 979774099 382211669 111470078 601757385 205086615 240481322 119629742 80027702 594084302 439304743 17503235 408815652 803656932 198568702 7853494 187353182 440809004 200642667 300827409 849881499 635225689 721969319 644824675 94409543 447012747 507817424 156743126 81726125 515500208 406647989 139890367 626741562 833627230 851480191 9041313 959784283 317123646 809931589 100532703 744124826 23617452 172984242 842951936 663549841 122379839 707738575 547872055 768001619 722101200 698967884 510092369 90164168 433376685 971415731 92409024 427837684 432121415 620620910 332547089 269298044 816250774 30125112 638669776 45108454 136405734 814191197 821243561 307375041 468018914 710595919 237782177 328071856 184793954 578895993 371456002 483865917 215905836 696404305 555029503 843974636 360250537 532419320 728786432 906367860 110201745 644761017 189543757 241986814 966018993 462015320 921172716 998980030 983218522 81482465 467031393 22456348 701741767 106884603 912100276 895432968 686123628 680255778 791657005 72573043 731978891 139779375 983336082 587540442 257014195 128124786 691623608 352712933 571507038 699171795 635178870 385728875 119409052 473331065 187437603 644435857 923875477 710296932 545690742 976335668 688693623 456069951 870571429 363520075 373863895 941318236 365426137 889298125 576792126 241583400 268737369 348058806 809381242 252998985 736998551 415278626 464430196 296241946 826499561 643108080 787163588 408380662 25391568 120720080 818720285 776330320 114715230 153837316 808149345 335124711 935782494 77102149 485084706 223718801 742849062 864125094 690771512 561293213 172234669 351596450 29194264 211162551 154503266 467581983 936186999 502170433 229678229 535522797 99431772 56122637 833321065 59636485 147131994 913452784 957427042 651446575 75296322 41617805 514176709 976459836 688072510 713742271 391785384 9395343 904727806 26860101 410332665 485680180 41764292 469239311 826596329 542593927 451987299 812010758 538987318 136562946 275826879 722941289 395999758 894310828 995917004 412554199 425573087 265735619 883831583 738677640 641708030 208284706 745905914 597426479 287818480 246119206 770820628 635734479 739238003 452816948 890469847 298541312 709272621 514932930 994942088 481646389 288345236 67984960 765657419 364493975 218453561 323394098 405036069 643736208 94431455 713425915 753057188 58352189 525239762 448691038 237240147 320644992 758435080 243372324 893221273 160984543 291488929 566765341 234688873 939031489 585184696 262958124 414450208 316593866 406836263 38946766 965832791 296357031 187020931 496064532 761706900 268496088 934376257 777204483 474201752 41107028 196600506 431584532 154890393 802884965 102144469 219486386 86020463 512856554 654430914 825183805 904869965 49870235 113098349 756846050 539706760 912762647 960608766 519641903 28714451 979951779 243323441 340069288 787824661 20994051 455308242 795829826 301312989 879103879 233452570 370688842 345270612 534879476 358200160 381471415 186969041 387540064 533845525 94438313 393390489 939802487 394538208 374882584 607582640 655169359 785814737 851975798 495365766 694586131 946292052 747330045 581304383 869267343 854510957 831260747 797697580 936633138 285690127 261127923 911389970 24814578 305256099 838623513 844467816 92995772 664521274 784686191 285548686 853417105 813895421 97908958 888849613 467730182 18834827 748128144 576845379 985384822 970234447 736138122 682286972 32590020 179916763 26626504 834079813 296945580 522074556 500286098 420921732 186524933 354741293 921166833 281694564 712356803 635077391 729221555 251355034 318949974 942500560 772787534 776348004 911166707 911786558 541108763 561378140 885841958 500637629 471546869 771308528 28210327 360558302 536597485 988153923 477978504 287492095 668064701 948824511 807380186 266264352 527975450 754433492 75696117 393066259 684010418 14429530 638268755 117772741 75528537 156086408 446541390 581552689 87746855 2035970 905173608 401048721 357535096 240806797 753667584 593847214 279918409 949085298 128423162 312412558 616913794 607093973 922497752 886420939 140257193 451088773 845152919 927710461 831960971 994531947 605373368 908743697 640538772 835668926 369161821 641397104 256818406 844844708 57647961 496090180 283933865 175308535 747179903 778202375 473290289 860590921 118512230 991752105 240279873 433275317 168526773 905619808 887187660 460478630 747027040 320184386 248549613 530081275 620708327 539361334 385178358 637138784 418407543 222318187 654135363 117758862 869615067 648190050 933186953 611978779 630372392 120081769 414859403 40763605 14456484 249848027 438889536 556646241 552535340 963504880 865001407 256434601 685569267 852168057 253139534 793304950 607497763 49226218 219365826 402750289 325323633 377886484 13544237 163688300 487714028 224909793 403578728 971590397 662899747 78856273 544403362 950150458 684322950 861426575 557683122 233051276 735093944 316997776 902385922 843590244 57711768 847349952 498479886 793919065 433140049 227643866 429926426 467906119 947278801 90188832 45459155 872283550 741683516 773398617 70539991 524404355 184038801 572630140 511714385 6013457 166087637 759478121 1418360 872314614 160495721 519794476 875044692 299374293 587292411 398198986 517682725 675373981 981893284 62045486 14343301 634520604 733999557 628134328 862637521 945105159 812565585 772419519 262013499 774464353 744880224 195693268 744579411 722396887 490971419 402136296 359011153 363880651 61689017 168496291 357657865 855827863 477271721 754686155 982354413 725810532 147093733 57250068 519873782 132435 448454559 555517436 295971061 708470536 814737780 646453998 716809980 505628753 31781606 539451569 702240477 34099182 574718109 938421459 20866421 730591798 575124879 211805432 234248992 196859271 129332376 388356435 519790882 559570151 378120851 868071076 101266092 992885318 510649907 16432990 119019652 816938123 757414906 884142071 555600936 174026118 68020377 219364559 284772884 630507539 984080609 622903892 768711494 689354207 898075647 742470620 191324920 125678256 494462742 717355244 993806879 286433985 31478096 218783935 352773857 381735454 996702431 723739600 410060352 18313770 560069448 778322682 290274011 475137128 493547383 356671043 110086696 783475478 270140806 250953273 914619957 918867401 172794212 589948355 458650715 564137455 96816451 247607246 872501341 112963586 409191361 961806013 878890093 33050472 906715896 86014254 374498529 36019793 462968122 93420966 888717229 945778449 12449276 491438022 723478087 460462299 237105305 739160290 601871559 227193413 226249174 78828957 61346911 635404737 356342684 559328829 128198525 303077033 856857221 14417463 186937979 358668765 693820011 805055707 660935287 86146323 279204929 449169060 407779875 194162949 15424611 483204168 805144495 483457155 504473162 931832956 598019046 119280469 188688935 158214073 141868137 967304932 69788623 408998770 511957892 460333828 182967292 952352564 425477875 574328653 952431972 200321767 444884847 90967056 180191888 377365583 747969767 888444686 344005747 772142970 809119272 266835405 346352000 662437914 705214917 957279943 150150845 397090826 163759454 697307188 958090651 956833304 249677534 949145827 424165188 987459894 835738751 711707548 194247824 53100324 852191605 215205604 929571594 276704170 758622696 322146660 805375115 831164414 621707669 533399230 720391259 121797656 202588481 922348764 668028790 522903776 520793359 303352780 86983045 647351244 316111533 912797180 198072129 377182798 865785366 433525300 298541481 732416109 370991119 504765427 533347440 682210621 931584086 239182420 173653026 848785995 786494186 961508632 344574196 355877848 569189601 162915523 736944271 421034247 49086442 467825320 221397126 713240633 6877102 6811785 593950360 266091534 40724193 447779272 852116194 561611616 471270907 772133473 916224491 313279010 723848702 926926812 395370120 625072069 649264703 173501743 889857556 588750156 790285521 769366386 26920178 332018581 740253272 69288724 255212839 240171444 884843141 412138901 663870041 377912074 754544577 620745686 867695664 222262374 715993245 991655046 727795860 210563497 168011203 865128159 796671779 944130050 41247336 787061271 458012069 212390647 518715853 911717674 381435274 43663999 728030480 847663471 658385192 323557875 362469875 25000778 753062707 930925480 740456899 901139601 38378720 403644726 566039263 424594767 874445953 316331454 209149427 175968264 613205727 864462561 837627629 988238741 128468155 158168578 836973748 24350187 269573718 331299510 499288516 118476023 865271570 264581884 140585641 660559832 297502569 348384279 846345312 187654578 375467426 90166112 549374194 860122786 249453663 140247434 373746064 98086523 321861244 890374889 702499324 349874775 152491256 347096849 182397745 51143366 656080762 146237052 156636222 112350767 98392242 282783661 66857430 953879282 315658056 706973234 851899166 600984405 354634400 817836776 785999142 264044830 207403644 596297503 506239904 499943338 914425830 67212595 78592887 371978593 20202216 872261141 63115767 737940157 367375726 462035032 661862538 83115923 14040739 658948585 477723693 692475409 643158681 431270128 920334926 684348288 169233608 163701554 718550879 232737763 910468087 370902922 845252857 124143917 550702547 455221861 719058185 441105478 195468024 479622819 739594972 859546839 776467329 42262777 616935632 815370744 175503616 377731349 590667908 205989620 961734333 812969034 340586351 912517582 61717253 491504811 856254142 644776256 413488724 458495385 964495306 890798427 532029152 335353367 959331717 758888750 539861359 800704850 490037152 337662444 996619653 667008829 949862613 753159100 182110172 956916314 896487196 479716514 95718324 763183522 347319747 236098782 723850706 543150212 866518528 147965129 693713232 524358917 629095945 35647232 429022931 506167955 876892782 328630834 715625422 52623535 56096809 960455990 260254797 458794218 671278140 933420977 34682536 534854410 135585069 36068091 537915756 690810502 634815892 536064843 827778776 218667721 384406807 253740399 733416606 997901718 334964174 395364576 285690270 655990117 860762391 577170625 430510107 547651835 501060379 384213504 876397713 157485857 108616867 319075652 79841517 4943371 453442533 94085489 724182419 788586135 101510387 977192059 845897804 176378446 999327928 751921267 799709960 866920160 142595703 205572155 967501786 913867938 305081877 23093273 867233585 215270532 908185918 452098766 611443020 303988148 48455604 26680887 270476449 393626647 189637793 850176595 651441093 325680546 862925394 393759709 812542569 500855551 482996298 572566043 634976125 49113072 209928291 669735669 625197047 832976898 332005096 964125561 146632230 604556529 818602231 672825986 27623941 854627943 37670870 269007554 334502629 410324310 198793404 534800593 916249451 533332202 885704102 781539276 400761673 318665599 397900750 418334926 417460761 573997367 140605088 479608313 422920635 919066671 268073474 661680727 308764451 387458212 21944509 930547176 206162249 646610380 892377565 106529065 299239019 152787461 68468995 102732779 274542459 91597107 600263864 75635060 481142978 840889368 468914294 905457919 752438630 881164805 845762913 958813265 211299146 539916440 611377820 770813519 492690687 366850111 9698764 895264937 53950143 450302745 359959966 993849925 674289828 824219910 798030812 862533913 536679935 248322751 805328712 403041345 232767519 745350453 645281589 47113724 534500843 551576204 819843314 332179770 170310586 37871490 149540305 725998460 550423052 961934227 403755581 840900300 282494555 586962411 30945704 266785284 743527663 92333949 970274082 595029299 913949535 476025844 621412981 263922720 738540368 157288208 790002212 37897847 850945824 902167842 81516600 544257904 328027252 607220014 565057900 351955423 617051048 330712279 135413181 89780274 960311084 208264725 790814441 658424601 881524512 590557354 157655568 469614934 232132969 494784762 895418883 448428031 410097079 887242688 638485251 246416308 225958684 799466160 382156600 879286204 231430725 696430807 757039985 714183305 849810808 125131419 35448133 497061637 402431996 942976334 845335141 475160337 894669845 689245564 481027583 889453586 688740319 327476512 830481933 883780572 881166610 832283556 351393301 166998553 714534446 899807223 962147063 109138493 41046178 244742138 796381409 105049741 703261816 603675586 964164774 932413134 660162916 534951928 903691163 285041345 555985197 946643600 481285315 816316799 517095806 302658588 675706542 957694015 205748569 422313310 28501695 980065014 279823090 928394866 110351898 862329122 247901539 780355723 350342395 180809383 116847157 222018809 534090159 778749069 209514718 426817932 776514091 520560250 867896999 712971179 132400469 986113141 9032426 805199158 708601713 393708633 713114922 33894977 875839666 240045768 711450921 364137202 594476762 880979298 573172989 540200569 142336084 797455576 591314317 826207611 234597384 162664193 372010962 899270978 619460855 294321684 669228356 721531295 165491218 287906383 981342351 226712094 444424002 341474841 506536247 996450978 987528395 98716872 211623202 903684844 861819 426873365 376573936 468282717 661965957 219419852 592518044 503541163 390678408 809390459 325176304 329798770 223190457 757036310 751615195 735183765 168064523 831040480 322997609 378185275 915112601 637629064 685239767 433865906 196745893 405988204 446308839 43109058 109604694 624565409 424460047 144587701 447927498 119301501 95144449 839858579 30659032 515597446 968837291 106447973 814150149 776523791 965251380 138772 843313810 243529123 500783062 194923526 276222450 251678696 248717558 933063034 362334341 904276375 635029470 576865128 616796457 104141388 879873050 42299228 189664179 616877173 76147061 55922224 828566945 816913990 428046361 209003276 650975177 8096437 598622484 375133999 314410129 825888626 792789787 600635852 973240163 291701839 848256956 916963317 507766033 116548905 807992091 821119567 961280212 212499771 896487290 325109187 485123828 552933694 894418622 524858162 120621308 79951138 780452892 459498256 272212337 93448474 948482345 428060196 54151643 790832742 123073817 355467042 653793286 382296762 495089043 972906850 211584174 558374626 28689436 735237868 927383880 522774248 768775418 822438376 11867808 25870575 288488238 146665495 865335380 738348155 361169452 204738690 42256378 951454248 828983681 703373252 347058789 988462024 95851271 964261988 280329232 974668520 801821542 970633709 326913595 787656679 13181160 498604156 626937063 843576924 211643731 327499619 36743260 413049123 583689761 530064052 899194660 859481824 601123529 729854494 235297945 90130173 621471562 737586226 863641731 876607161 599846656 876425140 302457957 666211821 703031605 176914941 248305745 566139746 881594929 33543334 683297000 729182306 710374549 991081216 556645766 397232166 25701981 112981379 636603072 932714068 923857175 892993461 624274228 192685383 334720402 201238008 865955340 478160538 188423635 888201691 738189418 308310400 335125083 873692278 953748645 612107352 686279543 28814063 412905681 370950372 253002260 231363967 566150492 239020927 884967175 839484774 856399315 779099218 173494101 7563186 947650388 86418950 271626545 427223487 390633701 707413808 184562356 88479075 855408037 66179831 934574283 784373389 341212205 268852171 301875325 989012077 532519622 927603987 989729228 6147946 655274126 875512253 158513990 950025917 647956976 677249898 879376245 934278065 456638111 532495771 895163961 145970741 486761598 5872907 763352433 14473296 180896430 917164625 517277798 628531863 971576873 313978700 721241501 281986799 392336690 963373806 486152054 563992198 597351822 992933275 713327528 575073876 89317613 513612771 870974833 140815683 916044255 685627564 905498136 251505751 318548819 55763215 906781214 318453444 910122585 766928989 584679077 280065301 383994186 582274033 715461678 750632323 791070591 675257368 512841721 570749379 11370999 873489910 270975400 65488625 364763156 64176834 268255765 997868327 891840506 642547153 116564216 839599093 871129653 613226501 736383076 305549437 938531196 874043133 976059487 4281226 79242712 368689101 779044572 550608428 333694992 268804131 278607121 660059990 884774846 718443841 346065707 691751992 122015407 504328019 8338777 586940323 353269327 740994848 453142461 528261811 252601938 469171076 234260901 788637802 589776411 16563629 179244231 835465992 812617984 153007418 779796293 234594890 737821301 203001325 108425288 704956667 130719268 366120707 61051412 90272358 574029934 810426647 410769308 463346438 308274611 578671525 269622875 16192670 29256296 627922759 762001894 707214285 241728835 891771928 739390017 367555381 368400266 95267817 933058412 787081463 261666947 77811804 601220566 977915169 554410795 867181141 890979338 417048159 83202495 50594424 46134847 841420561 878649912 626190285 446337987 26293688 475526395 925032706 593504293 631566070 154957226 98651304 497877469 11957903 301849088 127673996 193622745 692276960 707708446 747268 870116405 199066745 349260841 236551577 42541040 532965975 493186226 212970800 764521845 499351797 749014421 772473739 369493600 64168357 242539947 663082890 473988644 866783610 440431842 871977332 465888409 963745958 122059292 841900400 109597016 37931748 908011987 283135527 886775662 193212743 240180566 247265166 317873911 352165977 512622807 121735123 198657654 935731807 250133204 570354869 302734393 246149487 5797028 366004598 690290781 123558858 540276405 301637978 244713024 670605292 421122380 292207249 867819462 949214933 724947248 574045734 505095102 775855132 49690930 924821909 544402768 807751747 203094725 5714789 596115705 374007177 755120432 271390717 220500630 454853813 514930222 881513690 662884248 293683996 916703832 91241983 830446198 203703067 258393994 155443189 279681554 948811327 508771980 419386725 219644287 207893697 599077873 79734023 40125214 130342658 393150435 317700681 625914134 693916552 218996861 664048529 879505975 168961078 50758770 736881950 391230677 90295033 83868244 27746582 756555094 973021969 995020033 344288647 684786944 581173915 767694973 77600962 661679516 660905229 164161792 563479154 19072990 135663049 32570958 757365448 32073811 277320403 171274725 561661672 33904290 81581258 451604836 518204185 423263395 633705653 367525774 60181947 812059445 89838592 190828933 284890498 482424870 142175188 50783992 241474398 811453799 339342208 310371598 892357039 390467581 980872826 671452715 934508909 491232243 996677054 870833191 129311478 828814765 654391486 867624747 269528463 638344849 43059209 254251833 308124811 783448437 856746476 348256167 686559575 87725780 108798003 382351021 716083685 529352710 854162852 180003099 969255121 789467959 398127753 30001857 111654121 158934674 183354747 808284075 901484913 100350660 863258242 980425241 465838939 376445434 730208818 388513864 971573795 587589007 158363617 407991031 670656773 479703498 433851089 878079465 947872144 770479759 138907681 819831529 970759282 585476410 370988733 464615189 417540237 401872570 655539203 689040727 352492478 247639345 294053065 274261727 374899535 895989861 374019208 737849760 480553314 553753561 702881869 919922906 367836260 26486831 128349227 937248369 386064351 484838877 854146515 377745031 299632927 964545665 528095578 245284443 384918076 753214733 974016179 990588369 438579917 455430053 59046198 225778071 185768973 687235129 257759778 754770878 275409409 796530727 958676403 509798347 398265803 321141734 302614970 206295386 360733588 433875431 905978269 861588154 631882662 103731227 887906993 439059967 707650379 68752584 900078899 596539575 488123694 977680681 482088851 607717409 50037146 896316146 764601276 722487972 937393474 399858900 100681493 166924758 804066271 647848954 858301432 841063451 973544252 892741297 640690502 564512237 658329721 511893191 630131294 626867102 909606091 478884035 633562544 260953183 77791158 445547411 799462384 626874780 700531250 358188922 395012072 889638855 740596901 670405564 463649948 563720958 689820746 401802561 42843724 852372421 918175391 881763416 63470984 240847649 663112161 364631428 606637318 406698301 22838257 564429687 578946523 952731120 784132402 787753852 208699513 596913898 926341628 384684006 567928869 767742703 900726886 976684020 180182463 664859328 740918111 155650748 990803644 595522263 826952355 102740323 897211420 193412704 573355579 955814811 218094337 659254179 921858314 903323176 386868757 352435776 260965841 325170649 406491014 395905587 238096998 605271605 959606894 933536398 240856350 770157306 121463100 448493887 881578202 634713965 357135497 931918757 58925019 275229537 604673245 406332024 165837262 260212782 266297783 514238150 861897658 454836830 289869581 859627608 165229841 233567905 453544002 390348284 966344811 678930245 171001515 882283068 717837423 14505665 478325148 200641895 880614126 437791887 862806840 645525360 759639155 818980413 717118015 834054765 315243713 402141654 357232115 213546631 572382154 959007342 476018747 926495734 163898955 585076618 312893645 847400187 703686660 824224959 863676518 65767964 159900360 584027622 667555291 534010885 465148184 678604295 497425763 702807257 240436630 125710010 997361635 72018439 200298207 774496841 684327953 49853246 451316273 123871936 332520662 883287386 905801879 101713991 251089157 283450875 859728011 59087712 209454885 525809310 36813945 181769154 259941994 18925006 4669456 778427347 432086021 788406948 923470764 877921873 928003116 606398565 63845416 667459592 994213943 105623446 583488117 904226718 532421432 328657239 88256978 564786051 942791096 219852765 948329818 213411833 553300251 42582156 386260975 48352454 683254929 643645835 560164890 647335599 94049973 607670839 423115902 929375407 801286228 85694459 80061526 136340129 359485893 541414030 623249866 321993445 119647034 707618020 947211873 226420191 652862418 650988827 922726336 646040436 666169873 959474854 431086697 44897695 243203458 406641313 925225843 380884049 459516785 29506090 567684308 559274653 339997045 298718282 726859385 862708681 512475369 805581286 601460352 105082155 448113527 792473516 191140219 495370170 28608312 289611185 901559854 25077587 595437995 894245988 413862603 868695821 859475511 730833157 243965358 633313192 646745732 358144682 211267577 787955867 743213404 655160609 888130587 376228742 379327774 435314101 318087743 576886813 213209399 579157823 894031684 612260272 15778840 503756799 516081657 288785661 914052329 669202168 290187907 713863944 814177879 868153095 214088659 109731960 915115006 815935411 366499432 1586499 349783591 327130043 894315527 439881384 619616314 19506446 654875933 624041202 647712141 743396821 655208827 774382749 547561989 750767064 86134667 463624239 646196161 429542236 417850568 98642190 743776339 115459147 644318171 494265402 58198899 448933156 557478272 672254153 930210967 70555663 542343880 477842584 358192689 245275422 951286824 866610861 971140073 499590613 453961762 357985671 78795433 667205623 628346833 710020266 336933973 153200194 142276749 348897634 921938902 666835794 464897972 992532608 547385456 450991582 30116794 400163958 862365567 204910822 834463548 881238543 909930183 717848270 936361006 836219793 2977579 296251505 324818392 37278211 339560650 195723712 584288466 276066889 3876200 133612591 802624067 656312512 383749306 282523252 632444696 977703472 294384850 345055872 815475885 820654329 322304629 311993244 823897469 33590412 124135058 937531600 244629116 207628893 267895887 272330898 304638819 519575221 247806902 814424785 723096917 868208872 538253919 88964571 623185008 639948721 147215852 42715326 534715346 930890867 948187398 150069468 770856537 498933985 46221717 511095852 699026110 62067926 482743141 306344490 783430234 832979548 932373014 942853519 412229170 174636620 476230144 507403788 969101357 393861986 11970528 746513071 643670015 108705958 364106397 268802048 22068861 5657427 455297135 159878501 582425036 625030488 551246893 900241607 562636152 65168439 149554081 90500802 568588691 973003520 546858199 733935194 26268767 631118951 419323458 412896230 289185797 551228330 981250131 311734294 732756219 862505579 182929209 866896710 448064869 400238138 728762284 710826256 101141354 334848896 142142619 967185797 283699932 184167525 739115957 912203715 686973755 244101934 961643672 651646087 968523685 9634549 106960669 313016000 803114300 241670688 877779531 949097200 764023784 434541840 395043236 97071994 77019026 764321137 442263208 669209023 174461455 61613168 588677483 445496023 696642254 630160316 457317557 284219035 355138696 832301508 627082381 179949640 117136602 45553897 965908331 701024244 652628640 706422 986095548 623894741 320159017 331702461 532500390 316055626 454556167 210323947 336754535 40219263 350657009 121592986 360548878 227736620 95204438 810466944 827144954 777057402 632015613 454349785 832547172 191180323 646239336 173759553 48232557 89980962 444843055 462364047 400601998 320769977 293409489 667835173 584020444 617476122 802154453 328081548 584354033 99409018 845713129 829996486 209707423 963102097 50986148 148380535 341469145 673174479 446587135 908429531 770016139 691588333 332645563 789606946 12424527 836572197 304701426 336745673 111104621 359596261 876854986 367124564 135142852 23599887 761649697 579667747 582205701 727079600 784027786 715322495 462328247 528764975 705980629 952608506 224164449 817907585 248856849 390875235 219393258 843263286 820080384 47704934 83341651 357592946 457706390 829252551 923798683 1987047 516851367 603805906 873930962 437718330 923480458 878644175 370375876 680581336 417656908 639833502 901411777 752743114 287664591 585932287 445798136 243396298 528278643 263828497 104532392 822916680 826763675 832765041 234166504 990043518 808777323 102866029 921846178 509382088 614516957 88547676 263366708 132396856 51449847 31017327 505116870 854355102 196654935 333125811 318175977 370199355 37228149 487950064 562964207 429866102 646852485 96617901 708534861 543468747 979708982 854545561 961972505 109232780 679566433 880125088 760736700 785140798 397224522 545398091 495380727 366853488 546548460 885456925 490374885 358063948 874565045 921959260 735064149 693499715 837881233 376651772 493627884 230610542 439430425 138833683 181609686 955578945 13058169 858349650 223205521 485466114 695596412 132637294 85483387 138350433 392768588 189591074 175538044 889508304 936665285 345480814 442058541 674906684 563760908 751369736 952773341 338360565 304473640 590610984 854652390 694269002 12363634 258390045 207635889 7911551 107550768 534137035 677968325 99822683 968840661 519251693 443612546 169731900 641597264 143337664 807969249 893349324 957289927 624305309 731785285 559886970 793839542 383761120 372469037 301977283 285494240 52215525 147738449 125699102 362784246 740881351 528802376 51183201 390209776 138410195 380147366 608399693 248281340 600054051 160049479 581617854 471482418 205411211 160140957 474320929 97782029 133457202 984010722 221126642 437035890 283222457 399350733 721043102 968708929 674161783 682329973 813669404 783741432 12554655 356236041 671591574 211164608 622801958 643665027 179445260 793555854 270412442 921855320 272753359 994268649 411910415 77933436 915421049 803806523 431005405 319950267 92727798 371377107 157442291 467007662 526676384 404016477 568958572 909289067 218885329 697694624 957889561 443838250 513554895 663595177 494197517 504359291 217399127 297533313 246450150 456227882 805241343 755775638 344253727 401723366 317744008 334382405 752998935 332617558 153101912 706868973 254104921 981066644 732178870 546007345 163262350 729023904 594398029 159929195 32602693 96063611 45502968 300232029 954288791 309792363 934245532 518684382 803700667 54687504 56997746 213870917 848537356 541597563 450947224 653594561 893191358 564668756 665178524 152603724 343818906 354948136 385257562 778554911 488549313 656292590 384442892 578855741 195146655 775030341 100362044 545132151 270327092 234679091 408824545 607094214 356579956 724468526 34335199 580252198 370814942 418268886 414261727 554618856 709388968 847099878 421183654 181490214 536545884 628508032 136460584 376855496 566542405 194067753 637557540 161445806 951464303 605465972 890367595 270969758 823821750 368437172 963430926 337810949 107047618 328998869 482094706 590060740 534987902 573346252 700168386 954218301 40097479 41801901 344784792 824481001 439751324 447135324 553290963 78376091 3964952 14538927 946400540 521734395 730474533 201038429 952411695 399766621 163049046 314926651 958530584 300880248 114517533 791492695 458704770 299836221 616375498 120759804 579384681 368699682 968920558 958901614 787192801 236416692 964845922 606232132 998855181 98281958 676966728 172355574 597158269 637863482 240638491 833682378 163174120 719066062 571752006 565550228 338308322 869693405 991120520 725677625 479049741 988761142 197617084 494383535 954950377 316831646 276366662 21767177 385072883 51293709 56142456 513496696 360250380 897699586 976845995 523071065 599876290 156351218 57042570 282022399 523255510 317553202 981144712 133544975 91613525 958781740 248902198 376102124 458539447 857732947 864857509 232129193 172730522 660002775 750351701 986925705 780282650 448062748 397136634 825230539 127695117 978164093 475400168 631062547 766957303 951121925 995945081 425761847 27549957 49820138 723797561 326927171 693846575 788519590 626535953 485715019 885189895 702629393 521412137 262685487 365638327 168452793 237901228 437495611 377373320 969428304 677682806 300667466 861017298 146463367 439667127 760675596 989104961 203145140 881811178 303043534 308072485 526428979 720100482 142836310 43864860 611425638 881684041 315181035 161995737 205962656 486557327 543024691 209112624 302815943 828451209 41599302 408899092 516294067 838582069 870300974 641669077 212499193 722420948 542941487 505257682 492699237 893022957 741457909 924778869 252720323 464180965 121774274 5236054 123962638 625245010 957466884 807975476 336790186 275084805 985965620 723281457 881471593 377936483 130031368 203334728 209844577 288801108 254725309 288623173 359039659 234737737 241591146 441853754 467259643 289503718 199913206 395347076 761872371 9292237 784463966 806573150 526190926 549273558 438252805 81184630 716285136 592090315 928777618 880021582 589253478 653555898 671795308 759873901 770772200 895608905 62907829 761012714 572661380 895757523 948207649 860662125 976961552 68712148 18595162 358312629 982994918 546982839 485199105 768921681 153290894 942050714 827288549 846722075 892327362 826601336 411265181 323603596 937786342 508572921 308703485 130381846 419074569 72775679 886444688 468045135 45519591 467537145 433793781 321165380 316339369 490783073 960663833 598632335 842077685 633317170 366154248 994334913 30987147 239180162 62378986 972881953 24809267 47396221 191879814 450808969 482514307 153488594 141252945 971191793 293402703 94211471 980205899 394075671 881015512 247819372 194993212 129339697 622827765 755075058 964116294 13524123 702177966 664733098 961113701 919950658 471783045 470998514 355709395 272303188 341386120 293757342 644086397 643704447 918585125 516566493 527836046 94039377 447244578 537485258 770946824 124970438 40935871 780354897 342283338 195139502 919725389 55890175 145889389 58684350 706419698 605449695 917155563 920426351 891877550 298147416 579067336 193874292 399666795 189544598 10872481 911795525 662776372 245584891 40473213 364405510 622343926 131103233 124065451 169168741 987258627 943638257 998759264 365453994 459511454 667931343 266633234 218464620 234000544 34894303 148928223 273317816 135148019 446133304 196121256 170864312 377026372 302517993 382843884 286858209 685267128 591176501 732892792 144946509 100399491 839200240 667991800 97572970 406899299 739440687 63892469 385570708 595433222 461381412 670819376 830943939 342482883 198111175 171752640 857119339 804170574 579097875 410447283 1452300 193603144 994989005 436004328 26410001 99370457 74473002 322222774 518149313 483716756 596572138 486204509 195901644 877078445 38930143 956380343 542318858 748466887 355123467 854712252 311512172 163168318 213066042 476875635 691533188 683217973 562167510 482328757 665739841 153150809 983849485 832820490 505068236 577976589 282495611 824506557 42755883 467729025 63047624 949504901 179747581 121299269 515658174 807948703 285681079 935206089 67188466 896419293 877724647 670486041 388158046 323407629 329812915 71333850 253918523 313125018 872425147 809703730 175775235 753804501 923263581 609279780 500897815 718736431 639621416 110787743 368061535 52784760 225500467 342011232 425334417 127553936 67444362 130397187 166212332 4263911 892287488 484740702 648455586 34922199 127711869 401773160 325260805 21501611 14243971 262667155 644859275 554823839 728847647 691296128 998188276 179178630 415741457 59517344 853235719 374878759 904003965 125354766 871327380 73465666 661593854 238262269 989347552 829021190 229067476 109771729 126689932 22397189 238533714 944254427 446984669 199993325 907289665 552677836 678105060 850049296 584237590 555925800 394565459 698604171 974756163 429237146 858138092 3452713 301783006 397905187 262297670 425926496 276430142 714153533 147771191 260207612 26614044 423226570 80911245 522628116 821579788 710247821 490409822 619175950 333819851 327801191 855364583 222908866 585986837 702476097 652348520 588936906 699813334 307688391 313582168 765507318 432333804 86775331 359304087 899676996 359307898 361973241 777586983 337428120 302102792 40348201 129006136 103755591 80071227 856994645 370587379 702596443 851213273 940755719 214217869 562528610 526579989 216263546 871650579 958039915 800838847 296249505 148200842 725517641 985018482 119428639 650482939 879218791 806858988 186531689 238791821 498786847 931158476 367196686 37604447 314674512 850565942 897226049 53196233 668761620 822716542 427997240 307471305 731349153 755994096 685985849 161430319 486106347 745107196 786878143 910486875 482171687 67451553 952132679 652501003 105294467 421976984 244682683 612105207 511495201 190852521 5891520 357360639 572831384 728567613 118868730 990824599 518271083 570500607 187671093 589035110 449144560 245921012 849462238 849750821 178624650 119731304 746079038 486052422 669337627 257435090 876044529 446138262 118153525 858094307 330990522 96952234 79994707 153024654 9148054 81197376 182257779 75568726 863293354 264562879 997188700 785321010 767512425 850361161 915911446 26499793 640269569 801170649 569113805 719058771 721760986 323799545 336596849 882921007 235717666 798161224 874983284 251381352 776198841 965054030 709251710 831176718 856628800 540281505 732662458 824235447 626112058 970856402 610971684 413407682 403461950 960984005 265750354 563003098 324436204 454827156 489026983 267969339 491682566 597312603 652200580 380822656 619533667 484041120 778127409 18924227 30020326 39608257 904667803 213451955 348606399 177554201 422566118 13398206 430615776 954166369 428063318 517349196 592399149 606879202 959392235 981017317 930577359 517105458 566845991 675934313 774015380 633506982 211596515 491519646 730126055 54686536 440427932 86247180 258031852 472462424 917688780 507397470 310633396 204471853 67337136 53277669 230895724 923148225 472117286 170159967 103752104 564637851 514434345 510275716 510312548 344430358 156550212 57864319 912416515 36476540 159298231 977600560 31017887 82431455 705713061 422752096 117684441 607190976 832963509 96251266 317993706 579528727 689761140 262053481 399594385 814078325 793127102 338741325 569587580 38334629 310345935 691107631 534726723 870619766 43137503 169199558 369862937 35774059 388199929 313907080 702790284 701344974 436326941 769151422 676194908 371943287 975907020 973698840 318440946 975871894 130297636 608416885 691802077 103398244 102610931 312798493 547794560 939516725 829552767 635717685 981923923 521521558 801257624 505475661 965039085 105313748 984651467 317758784 949510951 85188925 111569779 132061887 643380417 736039514 12153463 763611021 547647782 566008362 729377574 706457975 765944874 15181768 912088896 204220665 17336236 942396595 456619678 688853552 365795500 177637111 858089676 124953148 121824083 373705058 226248390 53851107 299837561 553128207 978687385 22214838 333938955 410679628 582813592 41810841 492266262 364470460 691509435 655962287 329371622 91326220 121013430 303723133 801141792 217429900 426889332 331480573 664607263 303400793 557019670 778484553 733437710 717439634 813374324 347892098 192500686 148519730 96003166 168399497 563887313 256635959 103379699 719573506 365178390 512029607 491428935 195958704 564744887 613715888 554468464 78390173 993960101 618158705 389232596 47473892 321725234 327700690 590462140 807609138 885156778 168387129 120005235 456212764 949125757 114310341 580411424 192789794 802497773 41392704 395625152 413269199 421205944 329324652 28095645 769677029 458748854 863860040 667537366 942617860 859359037 271243497 471526219 964028292 392201184 791573519 46882656 831546424 333960523 867807027 248879458 371139660 983820033 196456943 984634563 790991330 855198230 794957878 58407152 227697449 281726222 226459149 693916936 228259143 16324714 322833923 598851259 701009220 681556107 100453956 14561542 748742877 444237600 212986818 332043417 770328228 144026049 644564619 799257448 496721300 983743101 878923685 861986716 98908271 499464761 845419945 73641002 960973063 924067780 860559721 337110271 705726741 258828089 799913219 623985250 308257798 164689358 290019577 121188541 769301744 252065636 589805088 322485380 877279432 250354116 476815280 652884040 247470005 734192459 20486652 282782185 756259892 155942618 312533421 578830590 403764802 667791426 62780645 638087702 722696823 435594988 274097155 28473822 242467218 247412379 19288576 813924132 555141339 570527330 777547253 849219619 791370251 428713683 665019799 638614415 913904293 184230774 646867266 326826950 544902084 830445137 42977452 898190472 723788062 22703260 29416064 187554221 711373208 661394691 307309275 713898033 513807290 651789075 789724427 424010480 406458367 865012053 664414214 770214558 261914286 485804870 779887073 740023333 285298250 226429998 603422551 553202958 926925593 815168181 225462844 845386339 425198787 393279780 625167049 974796585 887316520 966302592 173261130 824214830 503340512 811502728 561850712 91258551 718515523 384886661 572337232 166618372 390351832 751122109 99566603 592090923 26799724 351587528 418039281 482940696 255060765 811947048 915162225 670503505 803894855 757707071 461180397 173638710 126701497 284860167 223608378 195269230 901559381 526476331 491994343 605904668 7183424 451005383 57420629 86564157 771232113 573542085 537939622 136002339 114222746 579415307 218059355 695420919 66507545 501472313 770463684 937128498 429093542 473893660 20942948 901665647 72740722 985371736 658724387 918156663 563678476 64195874 689079586 219164934 826766987 925174284 216751914 172450977 575544805 396653827 639288650 839750482 423058576 425331619 298600795 552617167 529460745 122906017 775377855 8789651 929224992 218538120 637380470 219489684 169432558 965345665 949675211 835157340 7130048 787942816 871599191 403451679 527814893 102095234 989420845 765613980 232457553 127885068 165877338 219913053 986014478 717297613 117630786 137442567 134940509 209407974 520188842 368607765 649440671 680689373 42869092 121474715 529952821 438921250 682880959 544879035 170681037 496739867 872855506 749494949 603649723 105834323 488263735 781619773 3697750 533496080 619084863 937834409 934810101 792625738 950076165 467309982 710776690 477973389 302954826 481114613 991863541 191383076 737800663 354571999 477973068 611518485 14512638 944451142 289388516 105888465 787405539 747333752 100995848 126334641 897241038 128477383 339774933 581813792 120840287 972898896 591614861 379634942 982759111 13424035 78303211 422922176 981766151 77745611 289407103 557377670 19429136 618556652 249105998 382218703 209734873 579672411 474576020 797580565 551164016 760970153 132637820 416629047 810703547 66391178 898046276 630215622 330888857 23078568 689501581 348666748 63953067 674115547 16301853 29732596 137297240 744910006 998890433 627941479 821598580 892214705 314715374 59305647 765139838 576443377 769600309 552420991 675555318 998656359 772252656 781939737 196034133 123566441 615704186 151830223 984544986 332282992 441967621 849270679 679871441 443225759 755952156 792059813 798574447 191267331 897757004 772607659 61119152 251483513 71249217 208553065 751666425 12275503 651719249 713003420 590116556 809762580 798571276 561992730 359205493 575081224 476765981 223095309 405892160 92397951 119949350 376150729 219165355 227212108 834465586 106789726 893052043 821430231 963498085 253571775 382260744 729738693 210360183 891847242 583832341 943303747 779352062 622816639 815558096 103384935 400840359 970948396 139360304 551578939 552719844 284497401 673751428 138760727 919856115 742023634 478153670 416351399 811146655 398634827 651718850 135077111 986088028 844124473 500996222 262491285 66011168 170600795 690094978 520741417 475379890 354140840 502135978 478972441 548222896 687261205 433767560 996407340 922108347 379342489 800801357 79784625 526841659 468867663 328159555 507249434 488912506 728760246 498579049 656874506 611124530 105421450 684326054 478653764 974034009 323480979 923648314 949142096 23814075 353778085 312300022 412383140 922872659 677008749 538523539 595755132 575195368 546420630 415486334 78854856 525814404 549510786 897157660 358129572 783583928 212823500 593825475 288165525 34962705 331575878 608940660 432894603 857728733 41235263 495265409 602455742 327579858 204967878 879440572 890172784 314188470 481924611 196654546 730317018 317008986 996162957 362077580 208039513 755258297 921118358 883751354 443208804 644730161 945346536 485512649 509264827 42440193 18752138 460485855 687281739 802089496 110430452 8453650 990127039 227149004 857190098 48151427 967582257 680848610 716934571 457117032 798341668 628658206 562785578 125960164 378675179 404976351 31515202 85304387 67672892 758131518 212433420 115547151 592536115 331030605 281098105 461299999 530994074 747111592 727723241 562117546 250344850 908088532 246240959 48945740 893803454 101987015 454146896 58675938 822133641 139709293 493032038 649093010 521622663 247016040 503653643 609762771 106602000 921281518 962010931 425232949 359930687 679948258 678976342 151108765 329774001 340624234 284278171 661269721 324579307 192573743 801375800 540314437 478000258 527955444 85657320 869755007 211240318 732175994 308558879 654663526 379944563 907923934 564266446 830133754 530474210 331506612 807081728 528684914 320145558 391237702 16204432 323090265 827292992 893364444 66066386 503705592 889357004 716680794 518336986 971489451 106396559 897008066 624608951 713908090 872099734 894526023 644816441 456128310 269220696 529946888 16139408 556303366 809876426 624875956 874768743 383543503 216140836 881369084 888161642 967834161 990502484 783361399 962054124 573246331 655377741 960533211 405449871 589047075 73516928 739567812 348994804 579567972 259163299 729418423 902800660 140752950 161914812 882602854 155713921 587976069 254019807 294568750 254764612 66868736 177939715 159821619 705050002 14228199 979928677 567708040 924639780 249589037 61033309 773544920 217089251 841336409 992267889 956870765 221544644 476098400 266132227 541995489 984630364 369007832 749625244 404189974 899635510 114802870 134680696 923649306 125548021 304295251 382083963 65049112 332618054 212853071 539674214 58225340 270287220 401381388 837395050 883761545 774403176 536758597 729844079 31587623 256852192 455537065 866510653 657415909 98930832 720309631 938890370 546413761 627599133 485840731 974032466 346534750 695638780 582601656 727244700 491590037 573354430 887307843 19908906 621178592 787570769 449468848 121594975 955841126 897761273 61393958 737585006 336390760 497880290 56033768 174456689 103351698 163819412 533084120 88285590 772275063 364909740 737095875 590198955 579640787 776436823 664868905 865571383 405910328 515902264 491018581 984783091 901296629 881648608 666495048 833212369 803284729 944666501 306587902 804945215 980762361 487908229 888101702 168622584 720250495 50727442 564046192 543086145 653110825 319605402 865538022 623774919 281158850 791389126 53604775 147809991 543660681 453492303 143518953 878085280 334690622 524638403 170015730 689548914 661253643 719447383 877599932 489188280 400046385 616002187 508602468 18035792 80557305 881281854 65323633 277975905 331056060 133340666 533722711 392013598 131881374 602676815 725448221 665693305 706213562 835293682 494469577 622892282 126687768 775473911 87171108 206241830 70154074 220515509 622932517 763904514 274326342 706674555 731734107 718134133 501952397 827612828 542256220 423691935 406034501 935069765 487222871 28928313 468822132 588480661 805876181 847260244 244800318 300205097 207975938 64365566 407276665 340099199 583295238 519941024 887375336 685670264 472430347 659808147 522245013 527293865 885070819 683879226 691049254 573698005 636385656 852136609 458271788 984735354 166561924 851256423 329411030 513064239 768127199 562359533 354809157 930579459 460430982 899914829 633211273 582728165 273191485 121128990 470105831 66562148 379810190 475607782 816770437 545538470 576365863 770813512 627960125 23017682 676605286 202085787 833929635 490150731 1888559 546862952 517008789 777173999 492535559 200224080 808339425 759299189 674121209 813693195 134601536 441012175 885278717 906079548 213328218 434041972 302784202 236357101 19188524 427169204 713699049 768765643 138355350 877237292 906270947 906378110 544413024 577904805 776367492 945509328 80277573 674230344 253851017 898470102 986113088 572719467 473232818 688987901 969161213 298623475 492688827 67530397 860138091 488876506 568130064 782352893 716867050 638480695 491163177 39727240 720143422 103311708 205549116 482976179 684497158 204569101 478942131 840942248 436955115 691666498 380942815 75493554 971511330 92216861 798331601 872592126 225711801 492763143 542005645 866422509 647075971 453395355 26338258 180701350 159693166 807319159 2476262 955252582 539072908 514676855 493189920 364580958 724643372 326043358 290223562 967871737 331503073 576574036 450347260 173617433 299382785 675207350 207680865 213316968 955666503 478946498 687722869 227982053 134115566 894001249 583448679 691283128 802400119 564612064 432768804 524481806 570988997 755821779 616704090 427924601 593804367 989725022 773969086 381486815 615900982 93199814 547468055 124919529 739337828 935268490 964720202 664896826 895936279 279257681 151089449 133502501 445606038 36476618 751098090 444400126 830448460 232649751 717346312 468556342 809854310 793074148 375770114 634765590 356068829 747402640 509650059 122765898 693799568 259268188 422524281 28502812 892134350 790475933 282983078 644724470 576936754 981209316 423218263 43044801 252533715 864583571 460218942 335325423 518321636 525928785 721945997 329564143 772143844 955488158 701669193 684866286 938889974 369023620 359437320 360895457 948380297 601312658 23754468 819345164 697576722 600165216 228350202 328508343 579724921 404429421 123897635 261811525 765289412 228710193 928850112 493785535 63825570 76094723 863582886 694812140 168726886 848050714 876675116 362424188 133911153 970297527 353196870 353203232 387729445 868272952 697779063 297852102 122805954 913945104 524960214 887983441 90573244 866289122 187256884 746074847 267229437 942944389 171687646 389088730 272425202 866557121 860864922 724297357 590626483 272291442 212641720 615501515 180504884 396390720 846041310 187289485 295311916 937695402 463728424 147403841 348860194 857773498 469216947 337278225 757711098 934367217 866002492 814755506 138945030 222602934 538989295 627831883 877743846 407503848 627572615 177417096 905741816 468317033 218147545 640654246 139025255 405783698 977897331 998588944 14144706 593296790 9546566 507786331 556620563 474072470 608090765 523344320 19428382 127855802 552511700 860787975 982406016 972935810 163643830 988874802 757054947 564680136 805621946 589129492 251296925 254148357 233625724 236304079 777991896 887394636 219476001 660442636 327952547 335433462 787338536 195516551 536631939 94461846 660600831 728188367 237295126 669004334 965986664 166738749 864714172 348471249 172566254 619108417 416517716 346434533 571692768 242052789 560706305 22914188 51922677 41495318 589031094 750155455 202171001 807331567 596181260 667501448 266657556 616676338 275450381 247139440 678126893 639797902 573165125 50180429 68638728 137269290 158411272 992017234 879229672 364837689 126819698 231923871 366091232 558965394 234820466 457305594 794868180 572927718 505211040 684306264 626062561 698703902 18679362 603486819 605712490 348337705 370919505 835616245 83153957 312618353 632707851 167548508 4826181 542953923 223812790 556868333 994675651 165990905 958336419 498289161 196294604 437148732 45239498 931011056 430695249 949838600 768705863 771447716 305165087 909269337 358321812 984378115 908129082 861912067 257089162 499231829 894690223 645843678 971688261 669926961 851290509 981001898 596033271 469308311 799587079 151209981 280871660 207342278 627837398 693651758 366251780 196337002 356290598 470919905 357108465 858081325 443525372 785309823 556980512 259187210 982185705 984514885 699337183 136558376 564871371 539075718 141163228 833183808 760537684 504855884 586711489 559073259 395459506 118920459 146338870 667121474 564272845 469520847 726877089 95869773 694893759 727662732 707393909 418206743 340755234 337635462 961991036 289329855 492316723 24977894 374968286 234767551 367632008 636008308 969203171 465195737 958629969 943803656 373158283 419270219 923104473 167025201 841553123 530116641 243222417 422903684 848156796 261080973 627287400 806222533 803232060 321481952 53833078 308898911 250490116 678530712 259718610 362529196 623230673 724608398 696995073 970053969 274539529 475589299 742210477 88743873 576249215 353107231 136654626 630810658 973372768 58889512 124242133 380571309 784524492 576551612 514718204 126637778 943659919 420747026 171361961 151572012 766654838 922443922 666816383 43909059 629538858 470343350 813616867 413168658 282265159 388611052 987842430 494131705 855141864 900233633 259103624 985075865 449721887 874454470 485925816 877385254 274254995 591746725 529612922 588120500 149308992 725893447 931341849 982926119 171721721 995453071 710835274 468324612 850945695 891040396 799569563 515073812 713690160 284596459 864529824 613656675 461964839 622258991 882738431 405529348 108146634 432870744 829408446 956711517 754066055 963108936 69797377 156557770 634429131 873919436 16229352 137708822 587390871 550798699 873638938 973998068 26616945 920857850 962698264 279084705 590434818 511347494 293205812 178223018 498262319 108094176 47845255 529044912 584529015 174257414 921438956 832306227 284179632 408382892 499491167 253893566 132215225 853078849 3200317 538105780 189515470 86768086 821493998 845465162 265912197 71224381 445314616 2632212 925227955 977067626 110138227 604872671 900593829 846816631 426150169 288991215 241654906 389639088 83791841 590540241 92898721 424159600 723551827 551229043 195210396 782947825 415017861 712959362 364126106 592981874 194973448 798758006 728759188 713977925 349843483 332238391 934160234 182712553 948256049 331673953 342801460 738885594 233207096 930594681 943376919 396331230 617032050 209679760 298048763 962304737 606216664 222559934 884628984 788753993 83333551 989487945 714616194 972840865 9520621 627662420 56902510 420256540 178437114 878321926 429903968 916313358 593120114 179867782 672470061 907603392 205160163 304117743 636271308 353299396 311455231 755245240 636549858 439081669 745147556 204320036 498836042 562979495 844165283 84909815 762768604 155426373 297425111 204338998 336409048 485319167 549886593 279269064 78588978 651854560 675052204 526772002 479303350 543574545 348648757 100394795 488940291 77883213 285105387 903055491 268365218 62039075 30657666 803304986 458415524 517695639 653361881 51605540 98591293 831042441 544185797 988723818 62745611 638269551 934108997 31995342 901838635 857183910 935883991 81081691 212912839 235374409 992498728 782570369 350140039 48633731 372577919 592760749 291924510 177727295 386684832 649031983 792658288 46510327 631706333 693978254 924321232 612292021 903338196 395212930 813799343 364800293 386527167 943617749 482778685 388539958 241269473 338040337 239892005 54273761 666681689 463448373 270372950 475505319 214126708 18149226 585692573 81117014 729916172 972101658 729717731 702594020 963680004 376578494 446242990 366941820 684554061 712775116 80745628 501924341 590353202 995449274 956903937 256642761 317628786 220110536 624123338 215370124 220346517 158091796 325433491 702859379 195772870 626172733 707030413 531524160 835772125 250054842 493702016 743291881 182830854 423658498 338993437 1534358 33869431 402869287 612302812 49796441 183979033 935061549 990166343 877783211 391884111 340569550 571015772 684498418 50573462 626197776 401046619 944194321 731610810 450612442 108642239 627243907 714032599 935699610 159689613 523053643 905817465 573488788 572318713 280030774 387146395 719776441 529167291 957892019 336756530 358460762 859229629 66374103 672658531 139052638 540755283 942991890 655802862 283031303 352719556 852550358 48176340 991089431 108281564 586851631 801007085 95660992 522217780 842858156 813931949 67285663 977851846 476583423 229795423 103843199 506237564 810216436 881877086 770819878 590306837 685151909 711636438 479416860 768231235 613481469 820504516 221353867 857032985 348283674 847390429 878437017 437339063 222574219 298760117 254433704 295139028 665669517 950131698 398392532 727759795 485575666 181000899 789325794 269564124 95445727 865026710 612904836 688832615 286186588 472710842 722522276 404497453 954749038 226967245 302681079 469498542 925222975 282931221 4174903 503068783 572209107 803625468 210865170 139577637 977377020 757853585 54425145 734907616 110941804 429813520 816650059 613972809 338079089 25652935 709545723 106475193 543404266 789883097 914758700 544628552 588117077 885370132 30941231 680542282 204465138 716054861 286998828 116697667 207632120 71434428 77963112 900420481 864615956 576369016 606212763 105337794 543380997 353492485 301703378 429346837 174644923 677855982 501285838 435910809 154914501 364132705 77355191 254295222 984969634 826978011 660508087 420258808 641287849 415647023 706553997 629297353 251686628 685237877 521710590 216893603 268564730 180723195 328527310 213364415 330184839 37481508 63900177 536929662 121931487 871972389 863304368 192627096 714727440 650355870 575110217 499458531 454079100 675412772 341989433 344304796 378501057 860362649 871671193 995457449 788353718 650882704 304419710 534772690 75529053 404960238 354120977 213765882 235020314 922340117 906594022 726147412 735524547 950231412 415017727 553008636 344366722 709959647 135296562 961524399 436904306 417280025 437798889 813123729 769207089 18871632 946582840 288124518 187819460 295116762 836307163 71596070 830616290 304388212 443395102 613180854 943945366 450533513 500100298 640064269 719162329 498908834 526017297 75210184 104585365 990772802 511946839 199496431 831860 146443131 890931368 716787688 528285818 433976215 655566228 760065866 990491813 392224001 462757373 255545421 361923296 41109831 87258270 685719148 956123707 651385685 908950755 322695096 931772616 631767091 193242385 254132203 770614011 452355106 329335067 795390093 298920484 201736129 586374192 312627046 436238293 393371463 253185405 252174078 403906092 495850908 317148535 970777838 204787117 963922661 739928123 342345990 386078078 846292384 761633226 595244631 558826011 388915698 242488311 336656729 656188428 813963307 463157521 924724597 516158423 75314475 250340910 28339298 597251751 930501865 300312292 901430883 659785058 812037174 163165659 818081746 916138496 69871064 71472298 350434944 11304534 742201116 179869391 85213752 449121356 438036746 696004735 477865072 523647892 429674011 385874038 422580256 584628727 578092180 261615841 737398562 368416563 206708146 893104219 975702586 56643761 532686215 833660370 122407795 288037357 838243981 206542157 644606593 615602220 4354866 967558340 307981756 733129891 250449883 5162068 182616351 948556726 595059476 296299216 985927808 142253758 182086589 858987268 545641327 270405007 964076005 421707652 390593501 829313362 984404657 141008729 870461390 125163724 724152492 898948664 32549027 763474279 406722218 482402032 41111350 643790238 757785597 79010668 266779620 330723036 219081951 267877562 812658205 382911206 954724420 774842615 654872827 843318354 583014224 609832675 821472747 155002398 990109889 330318214 935795142 942381227 554154280 944268569 850607100 711236584 315214950 345628248 714081610 532528477 321081670 954383347 353446037 23607202 479706564 217340312 791274540 654063877 100301990 802096994 961297844 297770644 82797016 166059467 810190251 632609 725896389 207347157 532358493 700116867 466947505 445410527 581819546 225484329 76459349 60120682 377229869 837982994 607550738 169623727 171849036 71921665 806111255 400704349 754006500 6892932 11833746 443838110 735355281 72717584 471279845 6418070 615545468 591697026 589214886 406913 772524229 5460846 485008103 523087012 171138264 431891861 174057235 516934418 884083910 195485407 386284766 233492526 510573268 453442858 836711949 587844663 920591260 931427044 529609514 950025183 642141271 673075828 910719395 587475097 566308159 453381235 684346761 180366858 41082018 671948525 788440333 938102061 395157859 995019634 592748044 288229330 317437193 206703831 802718913 903096950 650991432 574709826 374236651 907329471 38002295 44291805 771472619 562221047 893036928 604169049 441013711 354431231 97360719 716207954 260951106 669295296 203059609 231800108 180786626 699079263 95869601 19800835 888127290 937100082 406909497 872042187 434612188 767966401 355409017 409425628 892137281 521307213 630052298 454132978 30129073 343762938 758166236 724913161 80240562 14640574 503886873 115484048 56432931 873056995 628691830 470631650 80217809 898020841 326996587 275704103 647984598 670071331 95729409 970543492 354386544 316723325 869608851 827691303 775076705 380414831 659142695 879499903 183901483 118491158 110806935 6136445 627305673 504732 72322060 602163888 172963741 388139431 523105748 253368579 480370085 605231171 69822676 7033577 372717837 557515179 501608477 755271787 692377409 127528888 329353505 55967882 876417859 79551202 901987595 783256497 147295485 205067780 529807342 82880854 173584140 471477041 440707326 530218013 257096382 109962749 823207808 326937401 964437353 37600043 518246632 880895176 566157047 196134890 328982138 19210824 790273947 989595198 107212111 812457555 874489893 522303510 5146095 143539748 439452939 150732764 684911324 691966243 853300033 792944501 5189371 504632155 508066456 262638245 306625431 726292906 304276193 586830722 25337081 232092554 155731546 209021519 591082406 595954331 452386275 6078119 750636497 404798670 794667361 634182634 163111363 349198374 506213578 713481831 561756566 262647025 286462998 196766861 551426069 707664633 565019540 465540550 13525130 637038298 89261399 686811543 209236305 921586847 761072468 206520738 5861718 712606123 549748936 816071918 966651599 58724843 279816665 125730319 712903885 227218904 352572722 649286764 698991689 43395022 992252768 183700228 467842644 444272271 480611389 236727797 231760344 743005360 362572238 458871467 85173461 852981852 705142857 877112345 998888328 758263185 455524860 996049169 395224554 284372219 69124385 413548932 449065533 463297911 393474592 265188351 676154867 182794412 532675254 982984301 42861927 475152514 527204827 82807831 30013197 70206969 600732315 971326474 82257514 614754236 509729670 869185961 796690207 378022295 584450326 895134460 219822054 170093491 894204407 128715610 152724395 93290493 601658307 365160009 705289016 519928265 92653769 157759522 82322504 329430252 170188447 259868804 251024546 244081948 246838083 936178837 4786879 520770183 149477002 608217751 541549615 662594510 75702197 258627410 354174931 670209579 918179939 733519134 304067400 43131949 318050103 221453506 269666424 285293900 441336300 452878448 97835424 834755895 304805117 240096247 772475129 778585412 698280574 177503753 853458293 985125254 623941205 316919187 173525586 179139057 443191269 975720251 130411232 192740730 467758757 361696229 261075830 686393636 299956524 957703401 94541834 990682613 170154376 433053980 777435277 453573778 603749149 1174385 768062052 7022226 146434000 256345424 366001585 717041684 407233552 649518160 705301719 513042418 795695423 973624063 225235237 705725277 273635937 773813809 178840904 197693751 739171775 850018233 844046755 845211780 83184542 940283046 376227304 60653281 4414921 360158698 774153582 35577429 870174048 362057817 263489236 899723620 29008802 302248566 755070790 863045396 581278904 233874762 509369481 826176844 985030078 495763450 170473581 106770683 944196334 410867820 701751766 354532044 93243951 944567803 761888984 307185825 150530410 589441671 106595626 239219584 242995417 950344711 972236376 710916392 49415733 282719018 782156623 746000033 15560898 519785498 194527240 976922162 936297185 474941563 739945695 571144744 759403877 688438021 786646268 208118348 513407968 745925365 282485805 919970848 951784004 600600175 964637705 56564418 282670504 830492673 547284191 31270635 319817001 520535023 719951439 341270759 414225072 869581740 521340382 365118320 680757215 803896614 678324775 346642984 379999583 47136465 593280614 58919563 21346115 907878898 310510560 262475309 126844178 449826922 831368129 716342906 285224875 410403623 867570400 414526489 239119937 553798121 456683574 130870134 588431442 464731187 901142699 112161093 976299260 877556712 399891463 464765793 558366524 807630211 276255126 28214785 832025887 982170376 265136646 420016670 409339606 671133819 891557747 505995476 580122911 808720292 710493457 886059197 795424945 245424371 451453348 326263849 943459241 132285498 481491931 783238280 182913557 520961214 417275309 371761988 279655277 412632523 913964682 764558512 972582529 770825296 989652793 898370098 826879597 215947205 166302553 720471709 679924279 798345276 211897189 880186360 376751251 541566388 493380588 176749708 188865233 400698192 566475954 930406602 577537036 35604580 268236016 37585432 793840591 701132176 986009147 334290540 933560657 288547173 279954983 273459797 586715007 135416153 169230551 744876204 580602843 691874160 963622352 180923601 830056889 411933809 334044456 862486848 685174765 738310064 52585351 178194877 728694516 829656716 644868583 56521434 137719670 403917341 26591294 824071240 682157323 413188757 206083798 76122730 604666682 750753146 155914399 246649208 531282329 631695940 420748873 25916724 989558328 810050911 783642039 286588289 554301692 458562314 446902884 490289763 38678861 833700956 470439607 720504703 505352916 652686535 512865682 277375753 424064273 246861004 731055823 108331466 869875422 821959516 972664744 354973304 48301548 486737081 796480588 992464668 935933319 675218320 120748734 497048757 915608979 906786127 722384162 89010637 952292459 941048796 195482684 161707633 373321591 342040592 554319541 638997198 342547404 599770981 887571483 975817301 996802903 966608261 662637135 104156657 945238442 678536559 261697859 259705437 351710762 966870373 216627545 908490800 462804719 422508560 208175267 444803087 989824297 939363888 51720940 451549119 22869225 321766383 259177069 470218246 683091554 993582264 206900365 394174576 921919844 317347064 181886195 595200908 213992280 731692487 554039875 175287913 65264623 4756945 789349788 680659470 111243492 819283317 620862640 427547766 735981028 965963445 978202920 108778729 386598133 184381853 641194328 437217555 780183987 403565303 379616955 776765833 386972825 670970771 400774261 419306623 264712070 143866068 145441125 190745760 619961076 95577462 480501343 449949416 348005082 161618826 279791844 787912861 376010873 96502568 719795872 997089526 735468916 404831238 807764332 617405592 818453731 820310942 61232698 150493874 623971617 308817837 476951999 126097902 110785556 566311817 76260736 634508213 614963193 837330713 440513974 791509827 860588748 912808015 322522469 144452418 676239624 775071964 959827087 143168384 97913271 38192132 235868819 431674545 940457492 593426689 664175494 146305696 233903052 891106747 994098891 705885669 58006524 759355315 360574228 593351132 259805032 765332746 943463754 231020850 203495246 909731803 652593769 433630944 908551788 757966072 92731260 445914648 304605712 324348856 623632438 207535268 356021896 261846853 954831841 149789630 410865026 816859730 664825320 168735253 224644121 859229065 741558144 386068124 910517970 23800115 887544338 166129025 600037538 325742313 848381426 738486847 710962679 116379169 780521229 17935751 786650141 32467413 952607571 125049712 918387355 114032351 445484710 194222889 324176484 139865637 928252599 165640615 166243687 222145072 847372702 226633147 799658912 611252254 259329780 224721220 627327268 898508941 319916079 199531314 790656162 855336610 678936618 297922330 508685776 161588073 725143135 487388508 727637945 164652453 253817797 130564343 431816244 722199385 292372381 784732009 401142311 547989036 83410114 473494195 559694953 232254668 493625594 20826721 432996565 91632389 745946461 441634904 378443787 285495570 431610651 626296051 543477019 131866097 794858651 618124656 955044382 409179186 353867808 482183588 676178381 708430174 539131670 656503688 608683377 925836316 997494983 868850544 179274061 491894115 816338620 506163581 529130677 370615909 562815350 879507161 191155424 276650136 922326358 966890128 903012587 538420387 575095948 130329517 505382290 529400905 423100106 192045132 401605771 310946811 29631666 617108890 44545200 353739603 930240406 830274592 866042013 889517520 687029380 618410383 961648406 53696885 507413778 851237354 936846694 925992970 485480371 910567940 870350477 928549978 26487374 398478465 491452997 310965027 169712941 977348910 500532110 818946727 863871419 658244187 633246643 517024200 559446090 686760954 977004387 145822525 33763059 878645726 68658407 758050807 725249771 449355384 951244578 136129646 654722442 221259815 352946455 546573672 766075657 940239271 691382093 550836161 935412049 865113554 817550105 135107626 799601591 875165368 709448684 991221885 744513460 781309828 328356375 361874252 625155928 139085354 92749654 464519375 313217414 237918158 708149713 98511855 295792803 679108273 988577459 868248779 186677782 522010537 191370321 2726969 772827035 258120858 569596803 131021519 275971805 401293377 11718929 564609375 615931762 348606500 490669987 635524754 113260260 413800045 412323626 588601684 836039514 786278494 627260024 301515634 332839160 171457475 180076320 459469469 83357420 672938488 557224631 349915367 636994759 994356752 231332189 590110133 38689134 803599112 16028380 960716024 223205744 364407177 87171655 107041087 901045851 587243443 622735274 150717758 760977871 488914306 865033891 947284089 823076594 869956700 188197352 350373587 12988127 241786313 735851950 983700857 514968027 66282331 380885476 546503704 829301182 851036175 64879775 974130404 383067472 916910733 517256775 469108633 372464151 42115332 900046169 958455524 621524449 504578476 484976915 424512055 376465254 617554973 11899712 785363294 699971111 162915464 289398222 477739823 147663349 179053197 78237682 115709266 902324297 870836450 694795087 461938647 181482153 182357433 173824115 716523173 527115403 2864436 886722989 23513881 414550446 199770137 861586109 948883595 536915956 709507159 780452547 924666568 119690487 655151840 419371568 312730163 546255728 851333424 462552589 587695518 347079825 748932174 243912702 920113848 960384013 2340564 330024310 833992417 760738792 270832912 713913698 217391955 197855336 807496454 469474700 10974017 283093529 170183226 419507868 510185389 514717207 201297779 43914021 468164663 294036608 554088504 264574179 303379511 373600384 829941520 147567639 226319971 17284976 7688178 453648989 630227601 533194992 69515142 959756661 158006846 712554650 216045721 176024412 731371693 203591678 814480415 414617045 496084300 697348972 55688955 465584627 853743515 305701046 997839855 6303350 807800847 805798782 119888209 745194873 207039221 100035323 276634068 701704243 454457619 739796 309012250 564071789 471072766 112310123 157627666 912336332 994405529 137935662 772901558 263615477 360844920 785801353 64598285 319057341 110933639 800967854 312574057 339280955 843058005 542828800 957014744 174907468 42078617 182036822 64809386 986292362 390129768 186771182 377930150 308868690 82776681 636390493 480884121 910313204 396394979 478241277 155417201 917011404 118403728 133113780 689136919 15171478 60524299 136107189 343900007 119819084 189400847 809845410 734596998 538011566 629504660 579428616 613087150 445238982 7739110 516170226 690638405 681952112 708888856 927505844 517449574 997241146 937572572 427924081 573763163 373266228 157933342 461389643 295908241 246676179 56929017 603572522 200408203 949639195 269577209 454560958 607700345 180383817 416605679 742467310 822981012 426933387 883694579 185119768 167909030 687801289 849542839 838332889 795602287 533950991 516519169 886807003 764143357 471433280 632083165 815370334 225616535 576624554 953018218 483693208 847221967 586389762 661174589 989668884 442461463 984728726 750478708 283606499 149229662 762667779 681770792 579535120 364743454 571400227 251361686 395862607 817093985 653658293 198790902 851386597 985142262 704034315 276359363 124596809 708557354 34688632 841419491 503250792 403709446 279724636 697290145 581104936 934126661 832011012 420673641 857599166 252719960 928710680 133475660 367805676 281168458 869214744 693496071 54137929 424839467 767231595 428564898 957809762 627312907 723656724 987262938 525845940 19165332 656557172 182528425 560665024 889482718 296164055 942752066 793844706 780317398 86263158 667064365 800047617 345494017 424666623 189591521 715162883 728018730 232945756 779524586 817349652 119620249 8384651 78322759 482242160 116279565 895922511 144437022 638684717 152279128 229713898 584642499 961868693 56194077 47296292 729817615 881693068 986095312 378072758 258081964 609055586 643364625 322306306 511886707 867105010 369612739 287486635 746383510 850894121 378213681 251665618 199005485 816931430 817895968 295607651 287552725 354300156 902554167 475949632 210691687 995535402 873733155 434392247 534653142 182792649 850173252 168187718 278746576 359310401 43443202 121236400 427961419 734079273 192712220 457707413 518569425 869192786 501581310 796032380 13184992 568331765 850430484 671839592 719074270 385999329 73540863 364327603 918558745 526999283 266746363 198390972 286907328 909589237 481377203 101054992 335813951 127367581 901894340 190596799 56529871 524858218 143657301 721164434 296857017 571145775 44388550 777083505 675245616 466831916 726338478 587723812 843156020 562618121 756373674 205794149 861227556 864303761 895160655 948884534 79101182 326698016 905142112 844331 255607887 520846882 365030845 932568908 871736825 116257153 376906408 91285743 571115099 4974027 222905466 655635511 197641760 706299724 470276502 654955168 109194984 409025647 139374945 608707525 273115710 406315817 797741085 668615223 292366808 948675853 814401981 460590795 766375356 98269443 782582880 442460445 941679163 443919426 99504491 63763823 435574 513735338 277932238 102130933 958060826 771498353 716068506 754172746 234155923 734779725 596270869 874968196 54594142 742464459 96438546 673045410 681159105 147089515 601446560 459271835 718728249 53959181 426569989 369490343 719399236 818867852 915092286 705651704 873527965 816446262 532256832 165968445 398499699 442156480 652134772 4344759 634495473 994792570 492526729 301062039 895904613 130610777 748278279 978785152 213189807 928332249 264109450 160068471 386593390 530342091 140005315 40456991 492806007 297291404 156833756 314002636 900419141 786925721 132070146 124142893 386350459 959632686 623308453 701808666 877960761 943178388 333448736 915722691 854869386 46052343 706464956 190134072 129762077 203849624 129178626 69677085 556525965 305166161 953782249 250620643 859200987 951021460 765539195 937906817 485487704 935424456 405525193 574452703 940075029 24072671 161357644 330701852 215061354 891319477 467183020 921752717 991274439 424178977 869806370 341787427 571337562 220111786 596793288 885721552 227922718 459117818 514842684 582534549 155802721 339996955 290432902 715350964 862848815 727615109 255128742 499849820 617073974 52252184 395652654 961711268 321777525 335698545 172240304 779624089 928406743 757061708 789180957 115197134 546190002 743717240 276532864 236190314 158255265 906587594 532767756 68057588 649325641 989558546 651255681 301647558 132626001 694982472 985585915 477875065 493565555 637889821 439144889 217517489 98638794 908779623 691843286 866859267 363107521 288602239 749123879 957048787 994916179 566042725 793816252 156876094 965362122 11269879 460244611 175165169 715403308 787661912 934037744 909584049 850220803 107021287 905858995 543310097 506713260 856863523 478910615 655608477 49511993 818650875 863239571 343164450 403355269 994079997 27633173 880148208 743501630 655037831 833882522 296315337 599767509 181957877 4826201 530164210 529673016 961008678 760335158 786314661 586398823 816028312 699806843 167109615 531497196 811912138 363246139 295241606 698043027 524395547 630248777 90434724 337047539 368155751 594043219 528965378 332927022 384959979 568401217 136634966 995234471 753187579 76660447 986337467 315251558 762625418 689778357 371214358 80991794 423806299 875157875 181962912 75139103 774415872 764992675 681089459 818108484 356264708 631282203 421520892 150398846 278728969 829547708 302340600 970428432 339352194 232851010 68874699 726493363 890210978 804358370 509977994 361368134 511979734 257813380 581502673 11935447 644832056 898866881 819536131 21624427 772134424 364411020 247913155 586755321 491941939 865516070 200808763 439474513 872855221 201577323 188064653 919259206 676214451 813060849 757621035 459647398 683014203 83092273 320013784 320342838 764180503 341480791 263682836 580224110 488657231 807212990 615373485 392491072 716980526 991823397 9834601 427517699 742078503 106346074 580346773 742159863 876454583 629842207 218385468 300106309 341206203 392774549 72399358 177745331 93074327 662018270 175813141 933165085 967810798 571990871 623429085 261118330 995476093 219933671 628911925 689403489 305279296 638457725 432130691 978604219 378315602 520859426 777399469 954169131 10140074 170612100 736869248 769206547 554190757 584488104 490089753 982414197 939725865 361457027 797123339 226927580 506570207 4300094 465102191 966978754 128822200 458230170 949276755 505191170 92204598 170222513 274444958 801896316 616457553 558385376 387596007 62024733 830240328 422359501 44875529 431635038 43517966 658249287 106804871 360641116 862879110 992327699 154098976 950663450 118783751 375375914 643204854 268136325 205139147 648414335 248410778 351253035 511037738 384948850 72863559 505343221 546879153 849906419 616444862 648900160 589399133 665610823 477617359 342222755 601405978 402842112 488141780 679235585 420424038 37520828 707873446 31001955 162891850 945042699 732015292 678843797 614740269 292247588 828512538 947373082 797831431 476073838 472636452 590616686 823048770 398877414 791996837 314180538 336048598 941629029 437322566 839532110 849273077 660539307 657368101 523608102 408797522 532551718 589132817 951732863 943812261 894854485 577106954 596178967 538166135 836336733 434703318 320181368 458164977 712567648 495143657 64178582 76713174 694724918 666574616 173723927 942511161 710013228 227128352 512021035 129917388 789323377 782908220 99566609 5606836 779684709 318900140 956522231 821039676 369684078 535108134 534163859 390558798 255978444 161575115 160394683 556241408 23711894 740716167 775642610 994470626 226025860 123302765 132734722 54932575 599008898 550003822 340125884 10031097 614096338 722157136 19908710 919160407 686758967 181767364 254490927 161262448 119946702 424178893 469249703 550400686 881037724 819523125 971399979 895389819 703444426 755178346 83929811 940019765 196572002 344639392 178445267 35222828 969131476 881327916 743168532 869117674 544327810 798079961 935402326 444519594 253801796 370383301 181400235 803069792 408055291 1927587 367403165 653952354 409472773 144092138 185681801 887230558 291721078 903015048 876072005 114274957 671937771 587666975 824116925 906052692 799039141 985395495 382684840 673814080 426353964 133291757 41109942 236936366 965012332 242083413 195689436 759373473 434869751 282833362 456955946 499146780 63208357 80587239 279541728 505207091 759057104 401886271 126128428 977066404 446808834 268291100 741184752 735831772 977742599 877882482 120285185 179332894 231166215 582349890 645053239 490814469 868575251 842444417 776746607 245037549 255748185 672132272 56660516 700720812 356611885 458039373 594907201 539109652 936766918 952897323 14005889 120434639 477640983 280155859 474656889 160676127 663816082 761519169 554029572 719165483 533435757 118021742 65863756 895016764 216623294 617512707 83445868 620704161 315510640 718997135 157181488 586043833 524922965 462534116 687175738 920841760 411654213 730944522 293450446 440435392 299950443 428079194 957036261 747109474 884756532 630640918 271512555 376402093 299722565 874260746 675484749 545258851 103385985 159580039 74401505 870440922 140975575 526151316 893515687 907437368 151734554 268647613 880216932 750548219 900190690 137570011 485532189 281266781 220739258 716762003 553790382 818930020 467053263 723239319 375794793 752304855 464392390 644799272 104329576 641681093 767560026 740234405 579473326 758899549 535765753 77401928 547299428 162015191 491755732 948995865 297024769 465688412 820871898 126803338 431085569 184284267 741510053 55317144 261107933 987153460 305019593 716171882 10240399 962092554 806865908 337790479 8158998 954368698 490106465 644460812 726538533 612085539 396301766 868740769 626927900 179032843 344304520 365521430 562805230 694208743 793616900 542117873 4558072 213306997 671516417 792014208 768449593 842038160 969906495 142859599 813483253 154786141 690845534 647075731 937549992 506027074 235971175 286197017 865943828 445903164 774976800 942431139 209274442 367478472 855720553 990316453 67452520 592932015 483698611 481704246 184095836 601363375 62908869 607502351 567696724 168827386 843938588 849495478 391597939 948107154 770682135 766329721 809610998 329447433 753795633 668487544 145757236 157104895 538984099 526955243 993752161 306677746 622824404 196104356 118647467 285753030 94659180 93377794 746326991 51947054 654164525 517210773 24554219 372789364 582710375 824010499 991193322 756762050 561782240 687314228 87157083 290637264 485841233 695486735 273150389 530849219 88893019 785951543 506539000 961748173 512816651 793862032 983093650 798464765 731545390 419447721 476700497 319475117 972612366 188529644 176633951 871105441 11171006 772957988 457960183 408100374 537685840 722876524 585440391 675065389 215470193 840593726 363265257 649869042 927273575 227895702 188735043 343341614 486129893 643204640 76616038 981949163 957419440 956773685 912573956 107002692 874749559 62446477 480044031 299319437 952344216 384451758 200083334 509393148 992530129 764913103 90998848 196020763 717949390 369059544 887404408 689531920 350829512 972724869 858753259 329695956 569615650 320507470 400597374 474210786 389122102 203981624 602234224 967546010 360197718 512337049 25828215 636749832 649385117 470406426 672260799 753387077 428238299 710475352 693941487 341935285 757398506 118599473 370254275 881415234 356707060 560839419 528990191 480252696 817113308 364972806 5483076 425669139 27993816 268472758 715543417 341501574 78703396 12378330 678131009 969551794 526670859 270661304 397548958 770998809 628018730 957166960 739076332 773672681 526539185 445540894 692376110 542718514 646342964 368850664 196773735 553481805 39472373 419872070 804396360 509305273 760755802 892342179 199258885 348357165 455683809 845967485 444885550 642702581 270471320 377001013 789252609 272942833 488177479 540199255 42175108 801113108 350403207 788604406 993468004 361467277 838752540 82799555 247250957 101933275 571865055 525395449 153485455 781635367 187417168 108266279 823981922 686124074 648317455 535399114 609294121 416955887 28453831 916409133 694325500 534572225 474919627 421280856 931496653 567912075 410040147 158279695 214256369 372417339 220576019 743084479 278386419 451150361 476890215 525518187 760914264 606484025 267794199 771401828 927227385 773346970 635219763 882330071 155743748 745403135 390002204 433731132 267077380 581006455 664782227 11974996 839884181 404989762 373850751 444678977 289302613 57726226 978268772 156047100 606672584 91904851 718531533 595276861 97474461 870591891 779536574 399233794 893045617 435905365 157543863 962849384 506691116 492134634 883139672 783004912 189963650 297052602 888943457 104129190 679081913 508600157 376273257 590215698 562675104 196365352 510853513 475074364 284876971 469179698 368846337 119039198 267737570 278271886 451387900 733498328 910200289 884286175 244118994 243625458 869368717 653295314 337580188 914384386 393213561 356263630 402620935 207472960 996158846 152818332 251465563 36057905 762904845 885090062 512436395 150573399 336911061 334895546 1783916 676808525 750325487 384701341 325581630 566977994 474333227 566442976 859718220 436420382 118447171 935230817 961524681 790222419 673479734 321553317 21650941 32115812 40677160 899890856 396033631 605714718 759236532 97603011 720855834 38333483 796477950 405585727 904030560 504903599 216611375 374346731 283954574 790891000 276470253 468823902 123901501 8643740 238748659 490796997 735295337 713419476 186236703 822918276 879998145 542377765 934221447 731572057 104088536 82479555 996835946 758792271 947701942 942468346 665400545 702589906 836769255 905771417 468041261 594896042 615005738 973275667 128882675 326184178 907369610 396649557 468456093 609488570 979183812 75797566 245201143 656770988 231245081 286711339 254610535 329298008 649979629 558140575 763880888 974853573 211781742 132372080 354190993 219716340 474183962 355417360 18881501 583970278 60560840 569914425 979740580 985446123 525972300 215815366 503621890 576083110 231465408 632790311 993812293 135444084 133742826 473716960 240492431 584499052 732845525 621350026 262529190 61216123 249915969 922061701 587773877 514813183 224507040 565236560 998997961 682458192 160896326 223861796 76640202 417753951 977255637 175432080 210703030 934548598 171582417 12724005 499751810 254799827 820102985 20514085 112234071 590806652 389247112 345958723 230511070 828460347 85288063 699180117 523711136 221774148 276015493 399677134 864785784 356894593 18369991 666519096 959880344 470894855 146974841 435837197 362968315 122740021 86743786 307969630 663815423 861328924 482958200 10166511 56396588 889593460 782451967 210058643 308943414 653351346 508186168 202179389 974483958 225762879 417339844 840804201 698794816 419708893 353397174 652279767 589469405 504713156 230700380 369332527 442239832 213724373 352415281 236703996 826292764 220522641 945444136 21573172 981431479 792215208 801499725 997227352 686853013 379434930 639016549 441745779 478288330 954947964 601749957 389011086 772302089 17356204 171739392 436087629 556297752 113626043 385927216 790902457 116263915 8224955 621789334 650388339 82102893 758900086 604079014 815943932 248342382 464989717 393941245 868460547 707995919 263883390 25846299 585546327 492007903 41034236 59141400 661480808 350953530 782912993 483208218 188835821 377657641 580729055 767331062 596914481 68015277 85241489 131770418 611813776 123258993 970357611 974094367 208326391 743016740 369086964 644159815 26777228 7637376 710254117 925458232 332172663 551174718 434855503 939807722 795133214 791899603 203612338 634244199 109453649 955744597 275222810 787071749 776940500 961283230 413700117 145172845 219843365 824831551 612442353 40980321 846385827 837682699 735900599 176881493 572643903 911465493 966299358 670315871 735168019 663395991 80956019 643696906 510337933 791134296 945215777 194085337 283693819 722642197 343432096 651144147 243012563 277089969 695133154 804538106 150073725 993610129 78732101 948588208 876717009 84411454 418948640 302978788 14766818 861989305 133481737 262242925 552056704 277501244 381092748 683348292 413739332 227887434 122626513 619000063 43854971 125665693 614040281 498088347 90108781 10276449 652224759 342001908 70876262 68131542 598119418 853434479 141844956 992328902 320811509 623056609 945956125 156145097 854877395 754129090 347942079 667705051 596155799 589452881 764223823 727737815 374355305 677400692 492022507 308856950 830060459 28949312 835499087 108961206 192847400 958193756 476040251 940084553 285761288 475652872 277788031 939728529 520981564 463398320 683685081 364397182 763852316 880198505 44391058 155956200 971716696 84686459 686759477 922424500 689021117 687292993 715305209 962286214 342716942 739590816 996144735 519047240 233263543 250371113 988714193 948936545 429076214 615384799 594198305 21604721 279665995 799938458 105268461 51558046 275176298 358592186 635480297 829155871 857343763 838211651 744722361 988581240 540500578 516527390 994536143 57595292 912782328 519353059 792079100 249310808 720044208 850010487 126387036 915989218 479007482 504010727 407171418 384624756 775323498 812144441 824366778 587327469 641962730 510530924 318388166 981710762 158557569 413044474 469849010 845535412 8437968 779931346 678784545 51024343 833892083 304202195 708628353 794568884 331071973 336326465 726029668 263574966 782865714 569493822 60816257 365520007 465810927 344547077 211006592 393299946 437982865 223725275 928429874 444848764 369566048 929764483 960864697 386817672 896481962 64005007 947695584 560984503 956515660 832174765 804461160 145821799 809416454 623409543 117381614 70163179 649465783 5555954 574932421 303050042 400597491 117278784 6862815 954533269 528574793 501316996 425945856 512983103 477774440 996240964 279873851 649484518 95486866 605356893 399781715 556539504 616828578 877545568 241379501 598067385 886374505 202072091 880016272 82300215 263798626 556874302 76768041 928124721 446864608 89698739 979936741 862555559 655491098 627999170 345912543 894770508 266478471 591448941 404883992 282930090 883722358 457645987 862020449 696404323 624533915 65953714 989047220 222083258 385083013 608055909 977122204 82120933 166868662 429658020 441178279 300047041 395606435 482808694 647027409 222575753 918675052 439634787 655099747 802096686 907895328 640638908 845666392 133396771 276319806 936680876 185981677 353309229 496399810 966818535 396115335 223459645 553276775 135356773 485997379 245088760 756839138 777262650 524837789 787119373 612687193 864263749 608476026 546714975 624529148 930209711 94022536 806578019 11419369 425187601 982552070 303891927 761690460 805131821 260437934 299902720 187006131 535638330 484464295 354655952 159017006 516805560 374785514 52766142 643672435 912366466 488066822 965174245 731767309 862104909 68574079 988694840 255663545 805468014 16615934 890824468 198539925 16783385 466596130 571960729 342617069 234181511 392481399 879295163 105638021 135543771 873848192 509889496 740984011 191871037 111527907 89432523 977833516 183694843 793617473 360688398 440133679 787988834 852528576 683107602 15771980 81458545 360144884 138182207 363492911 47450610 838805368 795150254 928268851 316668266 233846582 467794253 242614712 36753309 519165785 84220250 627575377 483810651 165222682 993192778 798792376 330572035 26770833 438003795 141583759 171960631 479841161 214196965 572280092 572181334 597859515 96249671 76607522 132368864 731160860 398859985 703883939 606332685 873860234 737814635 241094431 247563268 70367852 104373006 299239930 72956073 502244425 915231096 656563551 704397612 633411173 640004820 301436057 151269924 271387456 509823799 944669921 983232384 949273340 540636205 618151751 607985521 765745365 714733308 601495223 698893783 88205729 990549993 461791037 885056762 320032803 370638543 479485647 42297555 90832651 600929261 779724539 715652604 637866282 279311441 815945389 824267722 815812984 298996075 645150492 116768400 776493325 367624517 487795670 318921871 71452589 663507218 844702527 476102034 581496519 954437157 885054971 685848629 352112948 156733736 96799548 919393728 843988149 827150660 850043835 318995055 488330923 166880100 359127589 999410246 186958724 816423493 70073455 927973592 278555008 386033701 749260167 33263063 727745369 394253819 49797871 357131960 379598793 898725902 391769587 13572986 705070273 94904498 877486434 59211358 226566209 802603439 788169178 10321113 18642833 797726169 656077430 559464788 994794681 915543962 358967138 10789152 775092475 113980651 477272309 229738054 701529635 120134184 731118661 89899920 629197832 85352575 716114133 559247670 718986422 873156610 587312439 503790061 225106378 947236571 439799338 814757786 925686314 900143697 295467626 127291107 293350917 161121127 451087644 131116702 424258590 231738454 768903748 750922332 760255373 642166236 590947224 234948688 341499240 628230849 336515266 312936322 281103816 369559530 194076600 348090303 625627416 993370607 323748187 600280580 962868144 217549932 557954725 130495993 151932267 977454302 707822766 178023964 922463981 466520808 196998639 910537311 596904480 444254022 384231980 941649421 51755876 229423957 621903668 860004328 733387886 935525299 774044090 187680807 176338981 621764982 306920765 123486637 313907182 927798304 447153285 56464864 610629971 37620443 356405809 724422231 464703861 366733997 589950305 859858999 721526629 13247217 897824105 783576365 220300000 23841678 405010684 492599309 372244962 964807630 425516705 2917119 719589066 236326911 38634653 914099576 373560871 735608924 49827725 510830759 600509907 578906463 119926713 238338649 389752477 394821299 220383228 465262782 700817336 200363043 538946863 877016176 405931484 648348970 896818230 868997260 605714053 517786162 57829807 344600274 173492949 995150001 938600249 218392494 833922130 386141172 429159895 552666905 793805794 506535700 618322870 462288084 8147419 633071689 631898620 285863810 804671064 857060285 588685204 909819569 469799240 473907270 749398931 439131332 187327140 801502765 980768698 52003633 100457876 791266539 229691517 875546422 122628275 746381148 230308109 82341802 4435237 390544765 190123038 681315358 641704650 190148417 990778113 718663785 549932216 589727420 486852177 955388575 21564540 95868665 325897654 154315453 235380678 299801970 924027693 945176590 391088202 635918872 89514403 160079362 145793008 658277507 113206795 843521274 969621495 424449027 938950188 269563914 953882264 84718216 390178099 568095630 377597364 120692196 352385583 678406842 660822577 186276936 249671253 899223334 693067206 338859082 255411040 410437760 572096133 840457916 104391217 751235381 966898668 259236423 786304202 190037918 273560861 109767745 465142236 690034530 24602867 203263422 217108897 741773363 306157396 773006721 805618306 78493670 688050792 118188899 330588189 234539532 325439209 211419121 244350274 259008060 151793286 164960904 864668658 551435943 760304746 614087424 739545863 185438537 179410782 657221831 771595393 819886412 634347183 47995620 827870930 129018739 143517271 384520745 753164818 676566057 847128457 90892920 514201482 414282045 288058917 107361166 17648842 697208223 575360091 890987985 11166073 473911800 647646736 492941857 478330655 780251383 565045345 214004145 756129395 252185898 786351082 282529106 425302835 631188269 894979949 298117481 636059572 190322146 772886561 395066279 330267589 922389792 153262505 318960860 443339763 827849639 490158910 186800733 172926352 653976302 758216132 551797909 844750270 220897431 309770190 716524274 330785543 567005872 209777510 277849457 870602417 993522862 811595206 194639614 930451107 505196233 9386973 360038879 191263779 492453880 119456880 468594196 215972119 973283230 461095414 300948529 823905594 932716569 18990804 928776969 127106177 23931727 319300916 800204350 122915614 428015415 839184684 906210358 317763985 852971189 804115564 127747468 375575094 700461346 360297258 277496471 681526052 406245993 320143891 70372948 185175099 632425190 105372092 563238324 176741497 647025569 717648015 509495395 886765707 170991435 753819485 292975896 709186683 131887004 729926124 920065118 918880433 764778765 687295602 547362653 956690135 931509487 571233122 886997693 808469547 697837598 79972190 62100236 197737650 467418822 456216558 759705602 665648638 987916649 751406956 37941514 718267708 273664051 663660473 976530404 758361606 552653655 726761082 493475853 972683476 117520823 461902995 26694141 127513376 729194071 618188875 370055500 126338573 163941248 662499708 919504667 194938468 310759449 595825273 919832970 218737890 336449675 82052852 212894255 526839569 733315283 391764258 448903076 497542960 939843940 486757392 12803584 860803140 693306498 569314470 323138424 114043087 922150282 566888044 725742492 138245577 172649572 867740523 776717847 380862808 61813561 430773023 951001401 424178508 598793126 485981185 396316050 848046523 40239586 226265234 501906618 455811131 212893736 8695556 755792950 429183699 83854875 53307890 527379404 438482100 401769065 808139955 172014222 325756134 816346846 959096948 727514696 351298430 463958064 186863522 838801232 592420772 122955975 184016254 469592868 683631488 972053757 600633550 135058116 299999116 179558796 313675886 125568737 261007181 396087122 798440637 200858686 784564423 974910967 881039883 764365344 529130773 175891903 199798758 638404637 521823688 496475868 767377906 194994593 565597758 761980159 351573724 481422966 506379665 600571760 355015227 791668758 616514607 185707090 936975415 322784564 179839513 127576622 219992099 706388994 599625101 114105146 533602772 909592182 738047148 638269505 390380723 390460358 435270283 398043739 891377258 787147039 995905132 735348212 441628346 395172545 245911855 374687825 575513718 464029950 566627883 354608001 315296042 516133606 338774105 828009173 373680213 348087820 928436927 694803419 645429097 467252125 191701488 634812213 877946723 57533771 615195787 693130566 767242376 430268708 705429056 14760321 737587487 2834095 235945702 246612629 90244632 329454089 913312537 132783917 149091342 457901800 476501835 446429280 868751788 187858515 367548133 959314384 174029293 107263893 176037570 164386034 354833829 505639970 764443847 528267142 657127316 166307355 324213939 93403222 325205991 640501623 364652853 702796720 994795716 81532036 419191753 140843841 723139818 48766620 705038940 559296123 724195963 944889444 34652966 136147353 65638065 684296794 107471237 161090737 818415937 123437021 929772124 553575335 968609977 519270934 154368952 325880862 701220759 742734439 469457812 283283001 256513398 666276637 565728914 868627961 131963418 64291954 446401701 188310263 893627095 846252325 867913342 993696750 956338237 989844681 905235959 151897249 121573649 546537235 991565073 178265975 374928617 195370301 194531134 734909534 550331267 45525444 886457482 362170922 659215715 80037677 480933125 660432716 679029625 714245110 621519094 339106653 787768067 872514885 301551722 474253528 968908043 164507289 623961648 676230462 33022688 993952869 25819412 980997716 418813701 43103090 881851486 741443102 437851398 282165766 969789703 483639660 392089632 734847491 987656772 337432438 595210401 538085979 582638239 639164731 682750982 473179012 222672251 334794705 647594024 779583159 162865559 262771698 596955616 934197740 172740399 717567182 227830754 457090464 428137302 298650018 527684461 896746097 617594310 358095240 196607742 891433425 181183885 753339840 303062729 679924119 90219836 68223001 455459129 902122433 530638905 530808197 87315597 449944891 272284452 832353438 69280858 475426973 101553892 301008910 789825655 793806656 841580814 714102816 180622654 206573749 399666009 159115832 726350793 403152628 586562232 649169742 440431586 903001437 994863222 20324938 677527369 48614790 909653281 574342781 970014475 604130639 918869674 249298867 454312140 484880174 931875054 161301764 551132829 879273640 606681343 799822254 870019488 334551303 579303087 845680029 482119008 14477720 172914822 93188784 101695755 512857546 611686233 378079468 249397903 780689458 796774858 568014289 897973283 724146397 219977092 188694148 124016253 964874632 444700764 457669126 733802837 103326797 990069193 81504950 143995101 48953295 478207238 783234703 367315212 511426870 746096304 896660883 175311452 486316867 27083305 309822262 567581837 213110904 282302190 365282972 521382079 187496174 939961547 18508490 505356142 233213741 136552577 885640233 31856852 684843373 409856849 863997028 120772063 31858560 947107912 198510950 740724514 6061073 484160614 456966839 329326102 142268181 838281939 710561311 971320794 116254583 741347304 243337459 874910710 754302896 164023105 3593301 162809800 143299106 815065273 192496087 414601373 173013844 86588522 392124953 46138856 229079143 670720245 906253925 268682930 156249834 413668800 306167854 527398984 336029822 965644143 990930398 687803980 647071483 557335909 300014315 761323001 60040973 817665819 847300498 485492563 740343088 298548280 428273093 690808761 369917773 552071365 604915386 168644470 39673180 687724605 820387390 234261957 154389292 153963454 178687009 364528404 621156474 925755819 952306624 65338111 268902498 411783234 667027752 414043821 790220332 235551885 181500390 5112909 325344875 437038866 634855131 60595254 905700837 515287887 843982854 187121808 77788703 986449082 997884712 799253128 831659190 207394008 859836399 310843758 842743887 271871393 846679206 164813417 702079915 593415188 347443391 501555305 44736794 915946176 828201401 951988363 407373986 185785944 539065268 958878580 406189637 531294586 195278112 754762326 396893799 975098349 982783695 231461688 976981991 811903536 851155725 316952788 376175754 515986083 484403205 199880287 408467806 879244006 765683958 140098627 348495086 891876834 643558389 12841290 930793231 992939542 811909796 855453564 799198341 304483946 145992821 238941723 400165764 38251644 961676174 489970852 291608226 95266410 36583141 67177771 243438710 934723525 865450123 790910411 166000201 90826001 278976833 59078818 797413370 150698784 355969392 495574270 76649585 163984295 561300676 808461116 55854996 479927021 238262774 173170011 173133909 726746227 364108622 6969696 738505549 296743865 403193378 275132589 619758267 491527257 410882054 281193308 362031953 784225469 679949351 792257502 236336272 543937889 338378204 624839166 609332747 733091754 419086230 756202681 425663226 450112800 891765551 927661583 710690247 516792144 265874123 367275782 625377424 140671711 990527047 77946025 373728438 534118325 245853785 155432937 330303008 54869694 734994451 462766164 874558835 970418043 98045756 68085728 221846158 353367218 958564843 372608115 146554669 660404935 137176063 904096839 607198024 797524869 399525576 515066960 758825119 480279111 825253435 56995506 871537158 501264401 666258086 527840639 393461887 222590639 991079468 345805387 426443948 947050331 377410358 82191476 184742837 471853126 276985143 857486978 32503370 579014370 630228857 386300071 163153425 611361802 515884989 946416893 854476015 259368067 425738714 324693772 402529643 574253628 459308871 141616187 153076654 481342304 78162040 716840890 434952460 361973770 677525692 86733979 677608938 815407409 116496587 240762461 238666152 755065267 360492565 276770277 353144720 779696486 675688144 990975698 27968127 412181552 644265231 439220855 237072954 501057813 529574428 643674711 404447314 202856940 608238250 426362678 404065079 314316069 877442777 670810591 16634496 865180836 9280044 625142756 381286097 525425311 750742720 916284248 44960791 153306407 779550299 277450311 290471016 101150548 664935928 237786004 875856692 911607146 639374276 777613828 830162009 372102544 357262139 716196968 133420348 405040816 515552333 182189017 597919074 983186747 193101570 843088465 740573144 178558536 788408774 501047021 454203210 46833934 966565739 765761999 798324064 959278403 952134763 353523575 399041424 891882248 461770415 157881601 28026517 769419775 817424360 996525711 186578076 19749377 663857427 8294296 123788803 213683263 995448128 865218386 286895086 20232824 917617220 502242848 49500023 988619881 692342196 754718232 593098652 164155680 976146387 713080084 158375539 642065604 948175125 463484077 628711801 644618027 698205940 361814700 926927357 558429166 258701142 524970277 370344006 279991296 433902200 45713333 176131594 72500658 849233266 325830296 182440354 680244182 460928622 577718543 332074149 707009210 945735550 881080203 617648559 56039480 801867498 665891159 61026940 122910476 850287727 758764119 778533837 7826084 659081406 931714806 950667439 473699756 320579889 470959675 829895212 27446069 221096905 168527592 580760125 950310798 164651266 479316764 596160077 121409197 210625505 26363362 908181716 258253105 226571436 952311025 771271624 798356042 480894969 272333021 575139363 433682463 383024302 141778185 451328797 653341263 623176375 762771386 251503294 240861277 60160485 732646098 128495941 671238213 225918111 362934301 455062905 68983583 913813529 915946159 522294668 354930984 385678894 428628997 934490218 900579512 688026768 760915275 639336770 255206910 664172526 550344101 855325145 100194725 483022429 693411679 446417732 876109242 267816306 271725192 931115988 92266859 721297069 921131661 560136437 781760374 570615147 380450621 84810943 765732962 59829282 177216867 927950657 14704758 98974721 975708082 338225894 364102439 879238608 186127799 450586893 247800103 607609722 398678545 872577046 327486491 833196235 819306968 201078317 147496178 53164031 179714389 630339227 160163724 562574108 748115572 924889064 831985248 178691487 161145808 7886753 343675669 337885475 842877090 663467469 648809490 696412596 404013835 979371772 926912154 798453024 12066825 115019882 468503793 124840901 474261080 35564228 68717338 760623902 81014548 593564324 831332416 430153153 34001695 341794844 375312179 363389865 871676683 813590366 443478094 240109324 532860546 985077053 97097331 681945110 931918106 651310000 340489435 866896184 463109580 774978399 448820086 384598015 820660111 169192956 42372010 41875294 290542843 157935641 883396867 681910814 433156583 53609931 543068758 146174213 988446307 404599413 242914174 175598127 251496289 818223212 848207967 338377372 774829572 858719733 776513778 861935769 393841131 932185517 50794501 598019093 952685492 169857749 202950813 704203028 145596541 657544131 796890129 135584969 251527616 530043824 32609268 158257700 976287055 666364479 717491841 893000547 708241040 291162542 122364821 70954821 968217693 812422115 668211360 489319679 467544579 573494638 100772176 277273534 24241714 864854236 870165779 125673662 253943552 706015954 158684607 113667400 755049055 524973363 955845459 637607914 543132419 457100425 514037964 910004430 932952637 254779041 913793102 186326601 577091904 656881923 357514359 746643287 732625956 954752834 298829767 900117881 617562040 15857571 801298525 224275521 186035899 942815959 323982415 730002192 199289433 295536975 64053442 503327295 341900999 583273603 266434062 166850131 570681793 87383048 874193148 80851742 505608775 268645488 927019626 758417649 394854621 885012973 62254446 887481073 161889770 941423966 136209192 48640890 304039297 685553429 323071850 385157168 99399715 136796518 3594128 857702644 623914978 851498287 806576004 348718716 405268365 979296582 209911352 984832329 564070983 77743547 401560821 665435601 844795538 539418134 984562906 515115789 546685049 139531511 723253504 846240273 733655986 904127720 40762620 623706603 961303801 492363139 943645034 197729947 942960144 26526731 221251614 155855817 451703991 624190175 839939100 798900745 809856600 796946873 297255408 141244456 954377395 80162872 291792408 359301075 790235129 411417108 517460755 518300934 798832639 666745646 99162328 206873897 583519295 949144289 821119576 257906324 451036235 558465750 670356440 221744111 232711301 913930633 343392692 918784302 429648536 456394945 419841840 974934380 671788837 488634637 609898961 751032190 628624588 261851618 787361382 717562347 778876040 307161413 136204342 26161197 870996374 51567236 796927331 943197468 72749646 216675187 16184082 300622839 276120297 858746129 959557497 370025696 472831260 218517473 306900980 764271214 732295659 740376591 536377811 415792912 554372563 644338789 183649635 483310092 773467458 607999592 734749186 878887292 135483922 952262993 793832511 393233365 983022436 87980588 511026580 144240100 536879591 622102677 704348929 432416021 445283445 205839817 175016241 2172180 204645123 247738319 979913637 239168103 36563661 188948218 102568242 29991905 759263959 564576801 582633435 747381872 714717589 932560904 717692869 146932676 720278754 7747291 330927889 775460388 277637509 168520185 657837588 490700630 395346151 950402959 782085042 403648345 806413648 961654095 357806804 726200766 944973981 717731953 180166277 339330795 837095852 821692590 936819465 211778796 386759441 712220637 774193292 790912267 693193896 560661137 195720340 723554375 482002793 495776462 664075840 921938108 776675259 922968029 787834390 250883257 816057340 7600403 637765720 479761883 667455092 7645301 444709406 184602283 61077739 101014569 425329672 390566385 144080300 453035450 409088829 323520906 187551085 335531957 388706204 994422827 782572037 386390986 277519928 143732959 371616352 745947850 73952408 762925439 928604126 309204505 87671939 52149530 770893040 455050873 961646402 156569231 144170340 203753985 693483016 973673684 717888672 154101270 261439142 429360555 863784194 59617751 495994514 707451552 695086103 852252265 662128920 660792890 449996336 764775983 626304487 330215950 996724787 117245346 167212845 200404401 849439899 647000637 322152768 393173606 571830781 656644596 886759362 11810029 368996715 235228617 836160599 623927267 173790546 541995801 116578814 559377774 742943237 581983294 239554551 137968728 974683822 725832952 524825619 728061667 766266984 292342060 740605097 185662698 910056631 294935746 689361695 779416848 986707754 401243159 219464585 432704294 963568947 549378093 331330877 377270020 536297681 107656006 897431170 137962666 597074870 88893680 278353824 109247723 898053770 572365920 838307780 320733185 688180053 265650461 299304703 526796930 843391262 193550524 125725429 500227974 297036013 982078134 235516074 818166056 336329337 401968509 874923155 905015643 469222270 891848174 816942393 620281394 954268833 309105559 694182662 939787650 187497347 198548164 363499751 389397959 650833282 257246807 557715397 309225825 695619090 852684183 892429329 332524480 239240709 983823480 306392566 931947602 106642986 311954743 64702638 422783452 903591552 95165366 812461157 540799477 749391185 69044546 179753659 557873157 322660490 546399106 828327442 785045090 76538040 324823735 931933913 800137352 223272697 996467195 238757153 752299231 607985763 742839385 13938013 834215971 994559033 813588193 66637287 879229233 93011839 111518357 537949263 805816828 324866115 225430140 550939080 861548994 242633997 390078904 270697631 28430768 712873331 651528829 475960431 159158914 424449975 404029379 260582796 909471656 279480139 720769295 433663856 305882517 684966008 46507874 276653848 185057587 674021849 394520202 243539379 40344388 76493922 98121498 937229879 425234778 42741353 61769497 417333106 906934985 71549898 277606471 617480934 831969415 178195808 624178227 314108822 575050695 538872100 135097972 773178435 447878579 797267997 273055692 589635899 306570765 502836834 591902376 423041216 969273507 624070459 505687020 157015464 812367579 331894639 943458293 699798720 265777112 717029731 139708010 601173455 389764489 412464408 948952092 398676063 35961730 982426634 305380783 40645875 245174490 823138721 606713360 169482523 594821648 969481855 250311290 498292044 522736146 944322711 667652557 557804281 129361195 382281542 606161898 766472294 868284255 523081257 437884790 151953920 122971095 116157402 796824996 126546055 636587704 879732086 464620407 490291820 773098135 479195510 558322237 421855915 952799329 690841136 529458427 298698839 707574554 8516356 392813135 921469192 468282511 938946823 717632196 947229715 154650171 714423745 940236291 499800658 425210152 920700172 308959059 125900526 663162729 656468119 772705922 267379172 425515075 719486390 292464928 355293644 673215229 568231565 402958694 65141606 894016990 961158810 666689277 615779935 722226914 149884982 239101156 437177622 629911991 305169409 788689178 632113632 454471486 223506735 973214379 477892947 429786807 357066768 223808913 636482211 914672703 227933795 759563935 468340323 604577695 932653697 638305967 254311032 500924637 107158311 76829299 958389136 221234785 921294843 640982196 287218044 129502302 804219554 247104148 489822474 396624676 189551220 337480084 371351244 632501372 659280702 807737279 119393477 718456336 132735212 227404903 602054807 51624570 589449999 895066724 655159237 948492685 449080592 68314397 734180138 529338138 926289737 465742856 672136248 493157396 247817563 674342361 958856674 123606277 6944740 468621334 527720125 896853195 492262258 613097962 811937574 844015075 604508430 126911276 602800328 967690355 950928290 451527196 162039931 836905765 63926432 667674974 264964650 555502125 729061682 17067248 752895114 146753072 363535922 694858378 862762528 19642167 234638372 492201244 498451180 335570110 194890142 805060004 96433328 458117695 194188765 621313585 9143324 818671534 444310741 455396951 329938668 859998117 292478001 547669601 664109488 878165402 940698566 991054408 681959861 582209555 959289726 935726937 423216014 988956555 209350388 483120718 726178142 74194872 232756421 647287444 792900710 212432268 327743605 757570145 87432314 63846344 354770652 869748058 271860355 459849648 910219702 989876123 113897416 342498854 902297193 822858857 565836399 896865997 761784672 870236286 306856256 715278920 159407771 888369128 326393570 62742658 427281014 638470347 935838885 663442234 729877614 960098742 288042698 660091862 967844907 205559045 158334130 855380275 19975581 787445718 155883764 382557947 699715436 990729752 594648393 189130756 544088242 821706733 499288727 15565444 859979516 89861198 165926397 961333402 159177231 18172115 464701006 373967830 867097684 673416991 828767786 669105910 964979871 61152253 845415983 607856516 482678686 866781376 854578080 554506914 896318665 292932011 943658419 484817622 592878518 154751114 938865685 462812602 410393334 422568338 724169565 373524535 999915802 221947109 757938653 328570599 755836977 538264892 902911731 961812223 165876739 204171840 789213517 113267860 362538346 546596317 72269125 816019601 384729314 342893938 666112858 886302899 571204520 446211086 920103452 254012369 760578170 807866732 926739574 390915053 222863141 318198033 979505352 400839716 129181269 16321088 826395012 316354215 875720066 530255998 791006005 177557245 37717732 446556504 457206277 237990063 732694856 735913220 532909041 194798215 35876431 553684009 348448273 393054215 364231438 164016028 149250882 406539718 712225760 65593756 383412660 252902211 640907249 368369646 111503436 221267768 923985535 79240831 433636124 16672268 567907016 407061575 122363470 727137880 62403338 36951462 276890847 984100806 821304639 960588475 51871190 659442073 389843832 888949369 130736386 680413596 912679622 497084100 205970663 265511332 149823054 85041115 806717817 486053383 540136924 517364404 568030523 283523734 882315982 754568885 115803088 155680852 944181812 173184867 671693527 554361807 548593679 663158705 341712962 805996315 132676310 432001769 952921134 764434057 615486218 293275819 910377583 127682268 416921382 324888988 908694045 224464051 78287828 181363407 794442570 833688058 381644906 929510780 92032928 825643368 59559344 973657302 51734449 810669713 20972619 704559020 893265611 183864654 114245279 915040563 115652024 577382692 502298729 710794674 681770664 695169052 893970854 683045116 887988625 418749630 969554215 484876981 274376430 411780188 806537239 716258076 14796232 72590070 404141039 525534338 939525551 451166934 433021659 758340522 776306141 990832732 607973176 655473948 993524277 707902897 46036318 494101472 402068097 452818995 936023455 295088443 679033018 842332873 290391923 692655219 534706290 495383926 886248527 222381180 54134033 703151003 294494713 634672674 481398161 524249478 29438685 687072552 631179933 304007201 919639780 544121480 630907846 986080259 287914487 843790863 317298355 795168858 270279866 199035373 145080549 503622681 650064753 643866616 496409636 652453294 944066726 453186810 651330250 918567868 160969251 903466835 597961342 424461532 176955683 718860433 852662885 836832134 397826885 227872856 182926253 460137194 305383615 854677790 98047638 886183073 981431736 293302271 102466176 823400150 783543040 161619612 403567214 241185837 583701667 893274600 243038871 297571076 935453157 131976587 982882620 634917127 499170682 811271639 714848628 423961561 700914236 350515064 570896804 496411158 401511551 141656373 513229571 349507216 139445280 549905668 57363590 923020378 768267429 774437163 463924874 853834222 603448981 866587042 999902023 717494907 628705445 4197668 815098993 858545625 383410142 870843871 691639766 968357176 230318328 149906772 240506125 921227734 527142413 872817570 470453958 893541879 716174854 749223322 155510386 842174424 602060260 869427655 184203463 338065764 614680198 571395952 152815957 695992315 584027090 337575584 864053017 139909511 935866907 912097786 75735887 557687624 947566613 620651058 560186353 853149875 293316935 346878243 797443642 934345402 150402779 5676366 727929932 529388592 681248457 64255727 273337919 977062427 601879431 147032925 460639774 722369554 932355 698148845 311502177 377778089 410344800 429061840 60121365 59608850 415720595 258222373 642649316 166860867 987775566 810891626 905265235 545773787 988047240 328229321 128789678 927128777 178547864 386245322 983506300 221728934 777405025 783646188 755304137 243791329 869709231 926088784 2079182 502496608 667793208 562435934 88956684 705856263 232706622 330418447 271160543 815911551 880422469 662873819 625854673 150140320 429348555 90219117 200225532 726767656 485150733 196473022 738303849 321350825 795875860 824027824 994790157 325703299 747560187 154848977 315976795 519829564 628575120 76228161 6318354 869532698 74820369 995734861 249361186 777700217 919498346 192643949 285801491 199605165 812021505 508062004 330318323 656742322 686142964 722296918 34066355 920454325 325205305 902729101 988551127 814119074 953269424 609377674 933964657 939677931 230159822 495790910 147900126 426865771 311028816 203776621 566341204 273630624 554974886 73765355 536819786 372333415 241333944 143717288 446923151 217490386 145083848 832368918 747797753 184938004 910591792 59781772 910645279 629190632 485849481 985915095 48158715 524162453 740911999 918055963 549893698 597076443 337179758 121054948 904824805 312019177 183173785 964847977 179298778 360654260 145105436 53516625 431248625 122966489 21849628 865930256 281638318 5409534 820253808 569088678 795525480 441561211 5514427 920056003 461421562 295306060 337501490 923082420 496491967 566004413 737601035 355677161 702787543 89222808 188404971 411002282 734809143 966033570 146142181 881629421 39722694 941138464 703056203 444196611 844033863 816298695 500729565 945475263 165781167 820662742 914369308 216931925 149880909 965900334 613784436 884001746 472612467 819182781 29211087 394356270 368544306 836284172 219509656 752208321 518490440 835540349 516741717 635591834 455882349 794008432 617747456 106214202 864505076 411498992 546961774 298686004 744835480 628710703 237560887 12399299 951227253 646150343 183118632 273195068 50754307 525547258 784702147 330095568 687851758 157450615 31499161 824563085 858745499 176181134 630635198 464169069 626183104 990979220 823147909 245977267 572692771 911026869 865441592 518517424 712752484 961770156 517551683 641997637 787029914 977999181 126114794 740631513 551025245 772677270 44205238 728085425 172282514 327971205 237867931 23783867 993922451 840963681 348388418 571143832 108127251 15351165 813320227 68562470 120591479 2827999 927484098 933750138 10015710 951378701 299363710 420139031 379501501 690520166 718639102 879394085 233622697 622055514 474751372 461971758 894495385 3871190 374175992 950897994 244890958 703631518 219446434 36167400 673591457 28852994 493883625 112580307 448597833 548351526 547949554 747738177 188678021 430803275 205907416 45518738 841073205 443155790 153707740 157173715 843816491 226188586 721925452 948183796 535433953 575574541 687503664 196936005 260533064 346637281 649403693 651065148 35043356 385705206 34620693 876808667 164142376 238570438 823961210 621471160 220127777 813697524 495084246 796512555 727604944 462373622 467982071 433389772 229462023 223059974 94477552 606188665 138241679 812589589 560418068 998310745 455559189 374876547 292746143 332854977 33539454 584456020 760687812 350258736 506529501 248863803 446559304 349261580 938438632 106906167 746960728 344655539 483529272 300609933 727140699 111961568 172526340 411241870 798775530 949821835 98582703 720240143 381779719 53505708 561566999 665748425 906725586 210958088 97398327 271804116 902919295 187542122 368042805 337513087 885682412 659171495 418657822 903266255 926786285 403766623 908796277 757133176 177168912 85164418 440681289 692780746 83775435 998348140 645774646 983531512 628046974 442365140 828589391 714419161 548675291 861353740 903628773 283663423 31130600 805950294 998767458 657109067 362243885 470567119 907527815 67001438 818145327 559274280 529636771 103011276 465681369 673759235 190164477 976164079 774693231 564104258 868473109 979319740 68360189 309124308 821720359 438502207 47504646 478475920 324302901 374188015 165854994 784357718 930923166 295066400 579813 174825533 750147635 30962403 65155716 729520491 714929013 35923844 195951022 869631504 953369807 117301189 341723615 56455466 441403652 862084183 561854374 48071692 90395554 405049555 585249021 801874740 603562620 313633544 821527787 257730391 470548369 550912159 771901214 128187976 565841024 695305713 541891117 545096858 74231091 743546421 491055566 660170237 896479580 276013122 826785036 37907336 242470793 772241738 446578915 911704215 981566054 966451403 587294463 960888474 62867960 710676576 57889136 958207061 336629572 680732041 234267099 676631161 162068981 148306402 953369582 720998332 475092941 450959801 270624500 957823679 82261663 309381367 320553773 769858298 641474008 294826272 144002747 258389703 606862382 426162240 336417615 858912690 887200082 314927310 121972648 418505561 775619122 862650751 135853080 937615590 514309208 408541741 270418244 95924612 295720628 622741252 215877176 479042190 647622774 882421323 117754847 397128618 943531684 931154869 624319415 540791798 852530919 777441640 819516198 83513686 970480911 694624278 957310374 937328883 33805852 29209925 2172694 817739251 458113696 857772687 800802935 800637524 262996300 720702902 996071082 184284386 724904070 51529243 969909125 131756891 215477460 859230861 468782224 516055358 222300460 40498673 371029094 340562082 494895863 672941733 995460571 39766101 649724035 507814640 786956766 773069427 659815155 616495978 657908905 358104576 143096479 904215001 950648062 158066494 787474038 736487958 653017816 439775217 38688268 946213032 387810839 443969985 96309567 398314033 97367750 760011418 541543084 404807433 406643243 839072738 828745766 356895668 415029053 904830094 355938470 774087268 366857483 548097445 484543753 618233081 70959137 532182824 752748153 467666000 295320040 502319893 473256824 545070340 864860621 44027321 887182520 759647421 960904746 769265896 882083082 623055332 58238727 439221057 971865545 722933375 591879250 905415054 421378393 360825128 251501887 183924235 1885855 84203272 797525279 366400736 5447692 816492241 245172929 393212351 488368129 266489048 722867821 863804632 231045590 118896540 173789268 932228687 962229702 277727036 67073984 351065250 547316162 366984075 173121120 90538580 171185790 539526372 795194541 770290286 687647682 621187755 316664798 79947129 91053158 536255981 181075026 247050913 147285485 43403782 840792464 117363908 162779831 415860530 769132854 244335223 823433238 61464122 714578989 285328369 696811810 797807791 449698682 560161584 369802874 318321280 824623697 549067814 422139553 740617490 565938431 881075663 621717010 182613828 953170760 791343476 381989887 584085415 464349186 93316559 805024409 224485167 322010972 558203465 556467196 995010971 897522025 182280187 763043164 104998874 807968297 543506304 285056697 403356594 748526197 586710602 708445907 333293215 832726593 520135121 57136749 617712753 696138952 987299103 45297590 702733971 473249707 72951357 860102408 391325459 19011079 683500690 377012823 912105199 406827429 248273221 360647982 891104768 108314586 107203846 211421521 947672162 310821578 644328900 436503424 885273907 96553626 967885513 145613802 276892440 817668857 851440195 967302201 807505369 404233336 399709990 567694817 659267074 878560 907078240 762434480 891758007 565352933 285749951 346049123 285852331 16642649 917320338 1531406 136283267 228851035 713812039 474200851 267562147 748049216 135876261 271373973 365462871 738964859 807119301 638577891 55086134 27407758 349572208 663417798 241531069 207311059 495496638 937539174 374934223 542311914 926978772 850388618 731833202 48665493 825398003 286295293 97084105 953555025 103860302 634266907 449838681 795980615 645920407 786094172 930265035 402451139 188218567 432426817 845368252 5978089 428141751 260766623 43388938 991268077 727306602 551853875 911325246 781760929 49214474 29802590 383228558 214637025 382676952 985257798 806887662 586224005 743989058 933347529 80095835 53251955 180147430 926830391 984730580 782775525 121459240 75213803 244304820 678964521 894318086 76371879 68092043 100333148 130349571 611509932 556662497 102921758 746432463 479526495 838322648 136724764 10308052 315939918 241229692 605460423 786248529 778461787 385283417 192388748 205381655 319420173 168098487 266562436 167546125 882689026 197634052 477392114 217379521 658225618 171582285 769290721 79453804 344701213 342746150 87327873 31380973 470602285 228090097 483266473 457440181 234929403 591518752 344802252 92623450 553763334 803003989 898959531 637394896 577968833 456376870 126338024 834217867 254474428 733512269 258569248 937206169 755768761 455536154 429631467 762045966 829780154 108176327 161751322 990542371 599489031 553232490 529887574 284890323 882359897 178324088 526011250 260523484 748547799 485779391 687678563 382764486 274346727 717604773 926904319 741264881 159170335 365242518 684816857 278610952 457408143 441232734 701846450 375044973 171340966 10682521 926615168 103502153 982595785 668213670 494090227 305856243 796023952 679616071 572266017 203449313 576868950 396128791 652973530 702661586 682921480 59134070 6789426 49197429 252731812 179030363 973937733 854181751 16648561 400252826 828763230 805829833 823277725 251692946 51047331 252867681 976108009 67376184 321452375 220026417 310488518 136917704 26046540 769542676 843104821 901985367 975874506 558299889 773622708 709682321 250128433 382988573 473544687 210217433 537051496 805375751 34772123 714249635 723589441 813511163 828365702 712404332 95079411 664229533 254531131 697004998 973721680 949719846 315103685 258545068 794164099 205908822 338001664 886511333 1585176 997959889 683629216 58303763 641581335 425405961 350007371 69456297 93401038 859394088 445631713 606999696 984553663 201325759 99112110 81967013 75199385 894162636 313223496 91768204 394565178 31913337 6758362 527859177 108259475 938713036 440624705 163740232 224442005 209894099 487195150 289525290 664815065 758252830 234337057 766083248 693676902 527269370 525342424 624252407 68119214 319564622 69305807 323597306 448687588 441199302 634775261 791101323 89323776 600035738 878753548 697674623 85327359 149534376 963587930 911092826 698141143 932914219 478696541 999219167 505831925 596595142 665219780 516768941 95155692 323800759 940041892 359087021 369838073 371274066 213932277 208848640 627251191 509035825 659010225 894892824 161424627 639656554 220404002 556829715 526835902 350853673 850666023 486963291 942598614 601678085 999891888 87146073 820116561 920154636 517717810 821012430 419676575 97492345 227493057 11460605 670220802 667450413 380582474 614298559 609776589 968202439 677668867 784897097 822552691 973714223 302957913 165001779 222218 708672598 205687939 641175196 471726398 653171202 509285646 520828242 99667861 637429182 490346449 702829895 763841256 215055 212179151 478535532 349150989 694692899 858652551 230008696 592553578 648891353 230883647 956265720 274807716 607320721 554143831 232181990 731278663 908648301 505569859 217054577 802339719 224032147 860334537 444219528 642876393 652809871 402731693 551305524 882911324 620022659 71499326 253592912 271553062 687264187 156680923 985710712 287213255 459184025 276243263 904511439 406182009 287738877 180237607 867289618 728059033 780855572 325622128 883290582 458476051 489589937 290534204 419497821 378917078 15437633 67130075 981334862 981520106 82678699 844222670 873020348 510290768 109201819 637852625 372447100 473792828 400496514 103811787 526975309 361590782 646974039 564429079 169282712 170470002 60135439 874433428 620221263 207889093 244468836 529225119 961316167 900665161 405218382 71287709 425517514 416906505 976839594 699639065 750987837 137041712 62347774 528221640 313444227 685529463 219687508 628016199 825836161 106688493 643265336 383628447 853352455 708227746 326441561 534913631 794210160 54962258 597991248 965485549 290668880 42556477 115134719 678113761 275709720 452526326 981693195 492754591 524031922 963534584 446647345 878966194 570498810 593088682 521886661 312308828 679849710 969699004 786686155 115361311 540849960 380703361 863614559 904695159 490415949 375748685 566995429 281987504 500342416 456376157 888077534 229685362 60061025 720756093 798802739 868824309 582264551 408463160 537726620 862255220 859583834 476095757 317487626 383003733 397503629 452289229 274106577 444831996 124491848 726387890 131330207 230406249 698790745 326625638 967492269 539680529 57918787 971636908 203293481 29169566 454773040 716948114 949437871 227378051 745033864 491273068 420144041 1281004 925023110 882758786 381889522 301022464 994618473 628011779 606009085 184019767 803611936 970467060 314608291 505538216 19543478 724559229 536080392 319213502 757580399 503217030 908184470 266901427 159016843 737703589 30553713 588483969 914529327 230300562 463350539 968833193 21527650 341278306 189567914 231141514 52891052 347478452 683853393 274996538 333881586 390167376 125380023 544545665 804734744 366740806 139802917 485763785 2159557 18888741 616999329 178457331 290193593 775539684 953599188 272720339 409922716 906953218 852456170 770638837 568872739 146550357 630185755 451089237 142397807 674824518 990371499 920100085 655747792 128332856 709768259 358891471 618291624 475460568 980669945 871636619 684674941 493930494 133317219 718829930 395021447 919006869 993459187 249172356 966248071 821479554 832407953 251978426 929237057 219292134 631238082 796114002 501416130 866172050 72713122 593962535 571792860 966728189 462805242 160287520 171518779 514571596 749993314 899113299 940804984 696208857 930361919 526543294 744934548 668753250 42475574 774081339 279993096 520773711 243437820 923059974 241490953 6063883 48611564 901802931 180963998 28451797 119381721 872299986 4162771 93199830 795753651 508764417 967178239 294106764 35566142 507632970 975916961 78772504 748367621 369040751 248191240 456801222 752203489 138728394 821580321 711556472 943932773 256880811 292009415 574169744 42764796 164987199 971732168 210518483 709644958 152840900 576870625 881513712 900990677 2439028 526106250 324929232 595789889 880417223 138101565 502075892 497167973 482281169 177783444 640090305 537258683 952585179 684451733 260829871 585813668 806588162 446717628 913119122 621750693 869835652 284926113 853528979 840613072 597637101 881283234 21727740 874037445 288233240 793386104 692958852 815590805 980749155 293397689 269571502 907574860 377969433 558319429 659324506 761169972 205981880 541416340 602471240 932356256 138427969 991180681 173621546 46433312 187243549 507986326 7919163 888737054 220697514 823777970 619281663 19707580 160144979 193243451 818561742 530356770 200683243 607569336 450190667 475431943 449309272 25729951 929983744 703092574 627752822 275215393 917616985 659787041 372593044 490112350 149213448 749894048 44864366 332392641 226379517 770323496 453696650 41072960 326570153 946350223 750433514 451764859 774677716 897843499 439270029 819722955 896563299 756302959 52753520 337477925 231692777 829117226 47085016 333991442 459760 994924036 14747826 999882820 591912265 982924477 551142478 302333787 920360772 481587775 908414814 520225995 138001566 751175897 943106449 66675511 412817076 244342295 127448152 226120902 526487639 682523843 94652768 642971787 671512347 999286886 846806723 458786392 869631411 542376474 877063484 14906362 64697379 254268500 254169105 3017043 525830118 558384560 472366395 961598186 23908737 906641159 161979939 895865349 879794769 568858503 547541126 286407700 128591278 159647127 468748326 116384221 503273889 786847884 642598871 16896929 877970753 334663746 10345453 355773509 953826655 399025324 197119679 634261439 676055612 976226154 310530274 646276601 400507361 476139706 90530161 267511499 523233549 405042180 806752455 496051794 213840028 399524762 717090633 652208084 363973761 831191789 198256095 412924405 795318891 37620373 381156160 230089683 909777753 234950669 833845624 617440583 821862763 400940950 338765192 848394774 841216767 476952121 445592834 411458832 344753548 970711042 916639343 756913303 217900000 896233693 270811706 429683268 382526588 837540634 49213014 484050632 594567290 810783064 479398600 87443006 194756208 225216830 960353431 380741248 282894882 192048902 383530279 791363913 608192051 932873025 876222654 820781904 542128011 522000778 910923 639217599 93882955 858386036 548728156 355116002 293500904 59677926 906916967 532065048 718577413 70602484 383611890 654627794 305229998 572428817 826852602 980907640 451964357 442778998 748959420 538395114 602473761 784455013 926363268 280705787 980349537 670773778 511322487 451420715 243054466 488938723 166936389 866211941 437647941 997221310 290437277 342957634 971212427 171323023 224249896 315877428 417749972 411935742 116416456 635949708 775780799 692703753 188873187 950706233 22416511 749425028 462990279 784626268 659471117 13531602 516571690 47912112 542235443 55957931 390977930 342128703 435574974 177909372 215828047 393614671 943903562 208111344 709449800 254769789 624848054 635759299 376545529 646051799 499242802 779061858 225736443 114705365 909602096 673058445 394003121 128847483 515770625 847790122 716036902 129752669 133823076 918734176 415485475 624662876 512551098 882582701 393022199 819226153 471378656 377619996 873499776 418744982 516211537 386690168 936361462 68177462 343008612 188605214 636335881 69123421 767381345 217652077 370330428 756378221 595687533 696350022 382698289 84869527 701283802 5317175 304048794 747829857 210073557 450965133 721024139 561343049 882716013 337195917 466868588 473458184 555250300 658424498 377262688 843093713 270414860 315582995 299210971 853942018 402471754 941899308 48817363 663877798 227236955 963194779 519979252 171320520 981403421 223931209 736583682 628374248 122726048 88462409 1328966 485645299 647394092 834088018 889041902 381416476 132336506 623038148 13976846 388871764 234059793 201326449 686173638 851738025 515968804 367710468 387018872 375495582 750033972 610918614 788019220 109608254 979238234 643997964 402400072 463049730 346272780 720863248 111665436 258901853 357795280 121766588 264928173 303749498 53668001 436865824 323724562 417311702 21730841 307811646 542911522 268788283 445854923 949908643 471502068 44056506 937305692 597351394 468371430 398664683 953988849 760472309 450927628 342209065 456885446 405755764 986109528 292746907 54929136 668347850 585056675 365723150 472552924 843935512 88024038 181547237 527393613 250639964 747039365 87060418 251100285 653426096 803910934 636348468 522779538 909815304 869809137 180576741 297838005 303355125 896597793 820193086 933548689 973688667 401411598 996740084 894561672 474616789 862722724 220712464 928648734 16108062 841408128 857021006 933353732 405434203 22117366 251260699 79861351 645715173 191604119 552783743 812170246 691750486 130084302 293544708 10168535 319849981 211984628 567818597 176327317 795687841 376034139 478911995 790756089 154766620 203502751 742038896 952391402 160767528 683660188 514826794 947475010 486904866 697941614 531456288 946209622 814073979 208290706 643641219 850961515 36173099 311383882 875125123 963529019 842478776 251814441 506172926 967432052 71924073 81923445 155556741 230270518 667352624 981543295 273333885 642882694 798727704 428716535 320256262 834017571 387715669 515393156 64848330 125856214 856873033 160935771 986216320 536125610 535920399 894045503 180137008 272870464 669187706 912141582 909186768 238325807 812792655 128257000 250421440 675829032 103092259 119143346 767384977 10702442 540092441 522600437 170716233 881685935 480834894 29785692 704222837 623624406 96012637 554166612 349277277 269572430 450555418 106098321 24518850 565385930 110656777 149065049 610120811 734659870 819562297 988831405 135781906 265968382 710882162 10969746 758890866 524800751 805085476 712675445 779140435 819029113 915485686 547626649 364196032 686991388 448263643 325599714 842050458 990926107 692751709 129077439 730463753 308805303 335726149 380944205 853632880 693649103 99051302 802991956 140422079 847130794 660883140 565183161 784628167 30881054 112894139 342033357 690166201 651482559 315439128 331183615 945265848 267727894 380221668 551949709 298826529 71571451 938400481 629145145 837865220 909805282 289469819 544304467 934786745 909774412 564932100 955497878 331712650 318391978 224699225 114172156 937212682 19866167 802826524 55322236 706712500 712163575 694221195 786841331 450880831 285282418 5172483 868358257 884359460 922484513 12029008 99033015 957815261 981464613 219932833 418241571 303204069 141428369 944406479 317524714 281644389 674610835 127232230 407954479 685120478 762250545 800295684 795846276 838554309 965032062 653600352 891653633 826823099 408299431 140190114 795395002 763950499 541630045 404868808 527994949 34941831 356682672 640575387 698703973 821985174 862166769 392561375 384537678 5146264 479924310 844924479 901514136 770523182 277952515 726045567 21551305 731891528 720141614 482999183 518242646 373772076 687864001 22064184 894756514 24722658 529930257 780951590 885026973 965781343 136942236 662624488 86043488 866688153 628054879 710451419 578120699 767864810 97048180 389059230 693300836 151065399 695553265 363220562 799933604 627198528 743249738 253909733 460602723 139689302 40464722 789413671 84766802 120286622 413029578 354195507 223720654 163500180 620851564 430066355 380155633 487547810 340944160 189409135 932274160 894861371 656586595 949020978 843007190 433887969 842739116 931654447 687816949 54357745 354660769 128730153 786567219 890835681 80865992 614092629 31539198 547426267 310498701 315963438 206099905 437021749 838356951 10278725 365216042 534168525 182921278 112381170 819267913 208945195 95445337 651134421 513811868 101534654 503763252 645615820 920297988 663435948 398732936 115599000 560470385 305750692 199608376 673334645 996550080 961581520 126435198 994025041 25139734 693420925 224470417 619383966 457618879 837994448 38114573 784800961 126678000 195348560 990308425 202250471 627635940 54175055 971881476 990254817 891455251 411995037 752143275 1327226 295838591 430472966 856129362 587801913 681679837 798079340 979263660 475270807 787955335 818255891 593265908 248041198 905374649 366025237 960061873 970975204 144532053 790456750 764069628 46485241 824006182 189239170 339510508 682632272 236017246 186277198 242289924 914770925 28985219 915782851 440029952 259793447 454427076 875582981 749868977 867749767 902899903 311857070 306013955 268501388 287862292 388109541 39919137 122299425 406398778 59314043 511931998 264027945 3100277 68218996 668677566 178714601 828349551 160930035 137021023 663932325 164970196 974017191 896093653 341951707 177350682 225056414 738367576 855088175 254026273 948092674 742653316 57476627 195051984 479062461 675480950 30817085 333685169 731767416 997463193 579741217 323900099 590189298 360980912 718444502 314044601 713440923 286629355 752994402 200966204 597262091 772386503 416693298 522570764 25125224 568999158 658290031 405380334 750773727 414051761 567875719 363006962 539754343 708223850 167444979 559342668 927664330 875425235 745460366 457231626 807325308 326990547 632316937 608591485 437659659 27159540 104219173 753116665 318482113 215244270 650404558 295054075 38986904 344637299 821020195 104873024 339272030 298336585 863401364 506929600 296740759 110473421 254629880 382710549 17105123 100292181 20527550 7422402 904145199 639676413 70656023 261813183 906380060 639032392 703614080 137466994 432501344 443326550 341943591 634674952 893778936 247487862 351000660 477518978 851074215 768021759 154559977 946158076 778489945 130092648 95897384 249799100 61570502 314581625 818072906 500209316 744987489 774082862 875966014 468724885 155481730 706518807 617655024 807741556 890719242 777208659 368635408 834150408 677313259 668893755 932704838 842460560 747337292 921339864 825978366 935990656 516850826 501242573 911802900 254571854 971870789 63477614 94842576 60067649 815294157 174628870 513357330 643497006 311482142 945198801 548930144 484936179 269409015 452651183 885681956 508661140 541079161 566590645 109602173 883107528 797137453 288433216 535506651 753798435 416337078 687033395 84560042 906587899 470667794 529854513 541699005 600500953 233034339 842200851 654455314 435397571 143369678 902505691 456884483 338916216 44023545 753833437 233735130 233274506 877776282 669833573 435222513 511087062 762245742 490356346 681742319 172355609 346755744 400215173 603267349 741360695 987499536 623051720 17974665 409818828 851620638 958914922 704361665 270439351 808843335 828122877 592911886 507536069 919327478 650945268 315056165 98765316 592337919 661484852 600371846 108445498 694905429 900308186 397877926 325099599 616153419 841098990 449543650 298151575 748260842 398741330 912383135 126712752 971341413 787098001 519859972 844954339 613021513 129005817 354827775 970066708 49749395 234137125 741278860 817535397 107623719 110301777 673118644 920592091 721289580 462727054 979953074 302795085 951474240 845176211 884588626 859576771 620316943 509739273 630779949 973526888 558743675 660562653 933535503 595238700 999314824 289365781 616538464 867368868 668619390 668511128 506353102 313882885 69189834 239845682 189911516 200723758 863555141 441179995 487029340 349870888 922916051 312137631 158388028 635371285 746011400 239134776 319215996 138645203 141890352 17288967 356625882 429783593 244480770 429046832 762017012 23020130 58234658 71405713 14338445 427989422 158644473 80496300 442685539 348148771 530887592 287414562 757002295 94292130 151848472 332033612 364643032 415935437 720144287 15620779 5562047 210962597 421881442 813401613 532767753 159074467 819665311 756018864 861928841 534376725 489775661 565795147 688359363 261474169 707755008 452610242 36087903 729201169 793123981 369284793 806943118 447251402 984945515 998677596 593783152 461305898 63261293 701341555 332157529 807354818 321876430 731883389 115535362 279155146 696602682 740452741 553835247 774436576 876661420 790194104 423426183 781741907 438753842 939770423 768138175 478456096 910500400 187870491 373851101 401102216 284582949 633674223 45531309 285908502 45868412 279683992 573982545 36914486 425009259 16917243 1485243 129051585 454227825 218074454 508649899 402289422 950922643 309027532 615537988 299556819 703957204 924134342 374061140 427177884 734018602 31924089 228745810 343577413 847136083 515928094 986092073 863372281 603722521 171896347 562234546 852405062 30738619 680715818 239192503 416523631 580478741 741366260 615549593 22239793 851024669 823484864 746134967 649224256 122739107 610654078 934054646 834916395 174348488 668022223 451630096 551472168 758271415 640797694 628879227 121833270 878016487 102391165 482539746 145073352 967976706 187037151 691814410 420713605 386016890 279197629 379691122 511314362 507774227 613542118 164374787 457446215 171309432 106371222 745875499 836099671 965200643 928594474 993224390 248363449 998281369 931418575 158246888 856154949 817014005 436624876 326910255 841821979 493898940 908205772 627997441 658336974 245774631 765980632 749129560 13136338 307884373 563846617 914289568 992743151 334326849 598290862 741121363 587328931 579323197 264201618 592877914 915906532 855255965 540587187 834273824 294255669 959540869 718647321 692084396 77384087 844316364 220781708 592887887 794968790 633311277 31683939 980963024 932183362 501547809 750023163 729909820 199496580 57100349 787170500 428833226 555378738 948641018 678901832 78867858 186335478 877547827 839313072 295864086 299805372 648056380 8975163 322708170 931953230 914129035 162190712 311697306 712897495 991051879 242625952 89079911 377689828 549748217 946843875 521471872 880540135 980116315 692350967 125060896 483226789 714101754 591566577 713678863 881272089 451038335 804269888 455259813 798732210 318297107 150224974 709537429 730672818 647681243 72408156 266176465 480927752 812692344 293079822 420091089 53429895 130283412 404982836 369726302 127742274 287252169 642531834 997810506 341028098 708581707 634927965 589880073 473842291 214316043 435202993 448865517 657006902 163392874 818545605 465028262 199159272 393468398 453384946 937729975 654686162 430003111 337473342 17829856 969479648 179826393 767424717 544732748 877166733 646885895 926584351 527768253 326467871 223874472 123259004 165092668 287630683 375922750 946134342 527362836 118143291 193859474 416388304 599906870 553500847 520790871 982249610 925317175 108635389 265884347 793381414 593923349 544778374 742746248 241372381 344292117 583479168 556055480 736582213 197882253 296118614 51985693 161212181 143145728 421617384 542206180 815536459 962245266 842779613 56169939 929831607 406192697 786502671 464879977 898692195 83856180 323766876 24012818 76951783 118753102 14282067 949402849 832967599 169339187 412925701 69666582 221445426 938784586 784522696 480467508 354706984 783629823 943955188 861396678 871734445 72177307 754320214 798690603 452201856 448741618 14782970 36276069 547850100 91602279 120168549 189509272 662887630 700440219 86662535 329037440 406623400 398673132 651743779 65013685 58991738 285721051 656973998 209423873 899548799 972057440 175607061 942771867 305789724 99286601 522177429 730649642 489916121 979274144 210122536 719838726 416557162 301309614 515888146 156739947 689808314 214880018 211419906 108194402 948471147 721485229 628885121 354165312 481437172 30492911 572158148 562234166 192546519 852127105 421169577 397723281 922405381 880226139 485984928 909856249 66662511 65221235 775007034 637525569 230350860 458740237 559618244 232558425 211248321 280315719 920626994 254549614 467888946 657632529 803279638 221749411 719656620 439334308 69234279 287763165 288040303 675810219 780885478 178565653 365039850 109733096 672784557 242158820 837507049 754798460 216525731 490644723 844423686 386886233 157355719 40584447 780218416 269658422 186752257 608496339 697231866 752966220 948513932 965411317 558009955 441398847 189901048 992730245 766403196 858194841 665549024 940476361 169002870 445674457 555548936 354611998 721178997 459191915 903599668 615193403 410579342 558910292 966998178 880092840 84241583 628611858 705484973 624504588 307546934 530065994 938199495 74961606 131363726 493744891 634679395 262236619 656249563 763329768 968275911 11016583 339094052 246371592 9346730 625506163 435719577 457390500 827032605 455015229 828681826 680630855 690287383 257162456 663122089 741472176 966598493 984719302 500029403 832570843 794278264 675365039 62774162 73680157 840846797 355235334 242468287 960137773 605240630 436934091 888827442 283159313 392354308 293510855 157636172 267745879 191139922 243136225 641657336 91116188 730901498 77292138 516060762 486268266 249521348 263400249 879109784 287503648 768686277 533448403 644719406 721628206 702137241 472289097 607376202 112044228 184954275 449987618 270488151 172797937 722852535 781753183 913336658 567048486 272833258 542863323 637531938 371629988 868656300 849643997 612698932 758018074 557681309 310578813 617957293 216784107 347919699 26366576 669781477 146758423 96259462 198080248 43870466 269378044 731334371 903376919 460046687 335272355 359513705 882675833 103364256 376026058 799032250 483014058 14405994 316717366 26325193 616246041 804708733 885030517 635384576 153985475 474867751 793635513 888564502 443233479 986263009 842877929 925554716 387037541 751035341 212594017 946248493 905100479 575930478 453477437 192947217 103554367 796056481 951543834 897349221 291158918 815820166 690214477 617622504 699757007 339062470 456133966 925893693 43299197 933388409 344067352 753224708 899572905 722967297 69848115 863721354 77336260 711921700 992608499 440385724 126217061 576183278 493398222 107478849 108989468 671741360 928757331 922129781 972583001 395045213 329323598 61306378 237036518 390019690 660702970 365413959 284269016 983823851 968439037 720547227 770222328 793750466 580147433 96586677 594742781 205276856 989173090 477807481 286107680 41439073 901451540 510663371 935116822 382654014 214959008 232465116 896650207 346478142 549136255 419571465 709714996 219662298 908255695 446338123 670904514 744782789 239144237 250974407 753102599 333262021 436261929 787528097 916415105 654585696 922023439 715275151 727232424 576857976 886332368 67316776 884920456 828672766 113400493 293999304 898044579 513753999 464215552 465225981 627162310 212110151 425442312 187742885 314877423 806315412 749463434 334865311 855807299 557937128 85500869 808801217 612779624 303197970 223021274 644523062 711519330 694707726 622723593 866872450 279209832 413630091 880453115 781754446 797215491 287530548 568576895 116992074 41455986 867666294 241604925 760502581 147027154 797691484 295610683 198691758 184140169 867795167 307834481 661488370 647789497 960799234 197400341 745513934 228539728 640618408 296427189 665213170 694220559 710115014 130315526 853247848 113557938 900262128 196695264 772598290 555098820 213779935 956149815 408179087 955856924 470706966 78792258 746598981 258898658 829393876 193774857 513920666 219145996 56889615 971939653 19043432 843362587 890801384 997886501 458080915 102613750 345969657 65494829 980719467 931954707 98726824 526966956 767965168 669656438 831983860 388668415 96036367 913966501 693105677 396131098 170196009 591017721 347821706 733900541 79018441 450668463 533896466 246850808 759640737 166521507 540017688 1554929 755586347 465166128 325123992 453900613 841204998 291709711 943121666 127127722 379625102 267701705 155283536 347085311 715599227 181295482 161008055 780451886 604379633 843393841 484637616 99952388 832021864 137058854 545898457 682262277 1006215 928374798 57256912 12930530 819454221 226477663 102926379 293842085 665136358 203432152 514900502 959535967 377717061 332934275 356307533 937710376 32453050 809669528 636960642 925551233 337835590 651064655 404282388 956193008 943636711 380368494 778850676 718623523 652806095 165361942 233832213 163035899 937847974 76605520 605411468 407427316 190740351 725177906 739341016 236954024 51483509 647195520 459403274 203991448 480734451 755308922 793869575 826606276 973899975 780027781 420357104 684317910 78113905 767988583 945862856 789564910 37143956 400904612 610801456 663570317 357243256 624248918 820174221 904146019 701586069 442100336 471411681 671195495 615153376 508669383 416160608 162073491 193353135 29607453 895062696 588218 258835083 265958053 861499190 101298412 948857774 207124555 78703798 967051482 232907826 59374338 664235452 603247847 771903098 451779490 363150926 373218351 78065848 661184658 461188054 200216933 623395819 182048244 530159948 687756667 566119475 117237870 600033684 167595673 943488967 893959704 882662655 324832742 203164664 184102680 739283894 868072326 732953598 358770047 594212608 611284516 796192440 791148304 495009497 14892569 165167365 169113629 977309648 184197242 777987856 179709307 291598557 921678096 912146863 555614317 346667977 566302739 830957680 112983164 40931675 72893639 239929240 522455255 246400750 896350049 834642339 311428666 132279763 529705902 834842534 531698891 431329688 410331446 83641252 755304786 377066262 510499785 479595316 121650354 395641669 96767827 725403237 790433544 325228243 261740588 436577609 66311811 594671823 697076831 490197008 648745885 427511299 402183177 495071915 262489233 464143344 134736795 520359395 999919571 721554694 506967066 999986053 57698634 8705779 745400920 125480408 228522884 281993601 762378726 195626375 35003652 114868090 241987922 917925821 785466659 550094214 199584091 474360971 599376708 955103120 486117039 731246682 564753733 432983150 144075676 814181941 767099280 58210355 166723089 992506867 435229186 811220700 160295312 76997795 658200832 985940549 62713234 527145018 260780974 436199624 521283049 89147645 225083353 696280767 684741090 273334142 257548657 498975891 218738794 142293278 953446686 193221920 210822639 523225570 974769644 709738587 35809835 377663051 441351945 414858549 758461256 484926758 752813883 610654727 976705543 120808590 421154303 802386296 959066792 243250827 875002214 148104056 966283486 897426045 603029711 111593157 475231054 723390506 968501589 500473558 526715932 15730998 506215038 845806335 856785314 964826528 951610132 19597258 598829650 719707764 579688666 183812114 226331759 710476173 486036858 453273682 418956884 744981120 42270301 845442755 889308836 509365750 107347950 710715797 51360240 274768611 869289264 556337920 913330162 623321200 670029643 492811129 505011129 561983011 156805571 160451389 510002096 590122493 811840549 502077058 610056453 582594301 191036840 637405066 555546729 245244706 969788104 943450546 743732990 111939346 567136611 839452960 870149921 444575536 255921650 688211032 757910260 92846898 699745765 524755379 170787033 801356752 303244734 499668371 36761892 928360191 936955265 405887795 806714643 986984780 193511724 182974593 217914312 677483374 7236595 334545494 906386827 75353315 843287754 686963807 190630952 919370835 550645266 462485872 361175847 343443019 522767090 688521106 14902245 853649851 185357865 363641524 367371442 261995109 510253834 977248175 774268830 180448892 711783964 223638034 945119707 864764251 75011847 664522665 18460523 819274375 988464624 528823871 889128980 8335994 791989426 918144489 750349585 849614816 804630416 131641130 821535926 309118043 425549536 911337677 388357128 620586227 772764785 578591236 324686353 150879235 636268295 365855653 812679270 156979344 626085581 323678586 79632748 697931996 50034368 448733068 25539463 138081173 894417713 709467728 256630319 447670823 68141267 355268879 870731924 520030676 774478121 740761665 976314092 293312491 659404172 138085059 862255033 455836435 711670551 88915967 289933495 465530107 260588647 598213276 119228547 896132518 527642757 195455159 843193591 797985351 759849639 616213585 606639265 639712786 845619271 800252619 561567538 546064960 553483431 870842251 159138359 79408507 226182457 522213811 893309296 270545125 354211087 963320675 356859890 569009683 852023020 703934054 601388588 745252005 814945170 959126669 810584619 46608753 496987579 422189189 935015525 29859834 442527299 62775013 866276388 392621428 377566380 49859111 75044722 930966890 633601200 56216247 695598755 227373855 679153357 923260257 195475899 966210461 451623847 475589422 877477836 834880644 240297388 476872076 28174114 369071811 212597580 426754455 119744496 647044179 490098150 472048533 724263504 468766016 256443112 731052856 103022025 517919109 363937116 232705434 256372116 401698800 187167880 207551133 524119992 89167602 199470085 358120356 12772077 296452696 852395822 284500719 998455076 198449902 220744165 647860248 386224016 126529109 761919641 485406981 914271811 197857255 613838404 263632809 301837082 392189450 740400447 496078043 450289664 486014496 151402558 795409320 961836799 587806135 279471121 759322177 780799746 467756023 431011272 568993612 456666193 319882546 278625348 916551359 491008719 974991154 76503764 256268194 515654377 472695013 874914879 738436024 692122283 377227291 980793871 167803418 620091272 220699589 78575604 752310563 330631013 495560005 835461446 447300695 862404833 568343606 175685764 674764924 193786084 137390009 290809538 964582297 222334390 735496002 813683203 150708075 908020456 483795076 224237261 412398944 476131930 841464743 701399971 91776737 63887602 441004394 456570965 235803380 183921540 787690038 172288881 376985967 733000642 603662554 914737600 340141542 910560903 182450163 782530641 335376729 427375652 245655520 366216396 314888460 870209971 702891055 285257868 83173364 684788026 81925639 296810818 334085902 23093837 957171326 710720532 292355558 53597788 969249254 195067598 729170281 567621991 418125688 638878899 231528652 604008177 482424583 882584959 186409587 647878158 320118888 816947732 782042850 288280361 677636248 206695360 770728815 872564408 668536011 909049876 115069394 351298628 783070686 555582133 835999033 602633059 319262050 531536460 906870572 243143510 406494830 466078210 734160185 376871658 709167571 796239046 547384174 647906099 794560795 432875079 515019978 62127978 549170560 104529465 648625964 790900586 398977082 577375404 252609974 497441798 926335880 997409604 781929408 67010765 455471589 664183993 360710745 815336769 262812092 902339601 819433750 612737439 930421740 476542929 408160328 931342993 709785774 338507826 141575439 433054669 589507470 411939217 470882344 843452283 574041867 845990878 807527041 154745733 527149494 143028594 50682466 767229805 576422323 717345251 989111576 665701036 902761201 478374501 507622525 728525546 90717168 541290094 374195435 613538473 861047612 857809400 125822766 589764059 418813538 746248284 113577555 201028882 36338653 391894451 427087932 83626544 567780360 198023164 735949278 784116530 1159367 608346204 22510435 211473018 978560813 642846372 121038913 126422983 348148509 995985984 862153742 918599541 353260548 36609096 449969366 915955502 105342065 166392821 581790197 837891783 74188404 916814632 775706587 6362162 283943096 196931888 294834220 506271919 555630868 754028045 752936777 470929858 487269781 811128691 601586410 286738286 864432291 413072602 734716867 32627383 483982770 210833411 185726484 725613901 336096067 438356137 658177595 558769760 978199637 913116946 699825792 968530860 960694306 905714194 146894297 429340213 600605139 585273007 860961066 586209840 677685307 792902460 123665920 214584596 198925382 803500564 83653007 393559380 550030265 709379420 184098839 394360373 731176287 319838913 104202812 978283690 372262947 314789052 94520557 428880281 482797130 385620613 358997526 430764586 258973115 710226078 365205934 256310734 278240399 108542783 782920627 874756719 631324458 633851782 71278125 559745760 374354098 970353853 236090998 655767190 490389911 335569233 608712987 227724793 992777247 177432516 859600731 133662260 250509390 638386295 715677720 441624010 38188978 649567622 443247413 378980837 418980072 913922697 121177757 638930816 89008550 427024890 498516571 217912251 632174794 469867772 204224243 111046272 791318198 650680094 787421312 570450615 537274648 795964742 757074309 562745291 976303538 448642837 669155627 26365413 912816888 726952792 991626768 207769484 952503817 794369289 458873383 495815010 659411707 409445829 727951853 57748225 367310559 246863550 89431038 833078341 274337945 730036448 308033022 545249042 586350738 151869098 174682980 547621811 996613649 737199542 306567100 759294595 333316158 965903756 789395 810018158 751277506 461440004 918726954 647829054 590528177 119797793 697779309 874859287 389629014 388113516 48885668 384902871 205733059 394483560 15545003 899473578 999461220 662205835 127009860 344896744 664239383 539169426 769953077 906278763 853057178 774008814 969284536 511919364 397509388 153366787 665330984 13385235 389464355 887718932 74622709 765813397 933037498 494964280 941136028 958425259 633717818 998694984 725298413 351515084 470460875 627607431 293683504 348380056 107784431 369958609 872540840 97856824 61911378 101121151 879510511 871291968 655035223 513304286 481804275 392740096 21733907 896820629 108433955 541204695 548396050 476451502 224002010 18776895 277001021 347022252 982862339 290532088 122378988 292163580 163496280 167881782 64307162 928728103 110977948 342962065 736972030 275577444 995406470 682777996 236697189 61922310 24603116 357305525 169826488 435198045 39746651 110934168 901095993 282458926 93656030 487199864 517730966 109478247 426128312 94673863 177108 90359867 100869709 639199340 106867373 837558815 745593128 408454148 266125744 764094794 124653163 651430848 655856301 872740082 509728591 656509723 764228079 424132237 83881083 918146729 188837339 355696219 18109161 312830867 469071702 453053152 768652001 271149732 860588342 369509743 908191528 303637599 813113987 636568289 409360444 246727721 375479342 112724218 507823915 342165920 925671481 851763999 76480485 956378010 670526320 664112906 142663988 540825597 980810389 140571402 964519749 543919379 53447417 273609896 651406993 432221433 280111059 665635472 244486156 768171422 114224363 375072600 548549844 83473206 248481255 200179967 984150784 493648265 44876843 558842833 841365495 593183586 950910603 326861143 672214678 998453751 925966211 503309502 729613864 146069963 813790866 533649881 723413709 743456446 633057486 88605535 774854321 257887042 577343772 851822795 956750907 132841032 24959145 247627755 650134019 600728868 769909731 964828856 278591062 63364363 482972949 284052301 464381585 604330715 109851977 937782029 960031174 209519961 369637440 825182567 474295313 389883 15283339 10523162 957966258 830853364 611250866 352107216 850095892 324788213 719362110 892711218 410679990 762483865 780940583 37674974 312718611 914873311 126393303 422079380 888265424 415931860 303928906 294674152 928596841 702007207 210782766 192551947 945114480 845703960 863247763 367590820 88969781 462889728 216213367 847751204 361118748 47455586 66272114 874338828 61816968 401122857 969969690 385938507 23949398 906942186 964163427 148969439 949387333 686860933 518901227 764679251 370216423 811146497 500858134 532554380 971815456 789349900 58903373 557704704 723320953 840495447 964632741 166758662 810986876 875089957 243916074 259000010 370026563 988185069 920940287 488120675 508378214 891406198 419228678 75769121 469599910 298557963 415228073 213256595 532863723 528691799 710151700 734449930 566072717 207088633 817764258 312372833 459727467 343336036 660988871 835174977 227719070 274580397 581276334 858997291 443638598 519368622 588088583 962458015 805988329 919599091 268532355 523740275 916930737 178284852 16555351 747162084 201046171 21400503 441560458 582078506 635548399 324620899 986807879 346674522 903436022 119386523 154694802 59794428 570802663 977297644 893427535 794366816 504395942 211703082 127159055 906299477 812418912 196880924 55156328 115385083 763958898 963025566 93382552 485444672 783165178 121367466 157372875 286943398 742675737 248959858 404876497 496758908 666012041 796165778 212447551 944695049 963454328 739788508 744414204 998676753 613990895 738524908 130731978 978904030 858977240 73691784 180318793 737249405 273374770 974703896 267770000 898610505 325899587 425103599 415903231 157848032 443146171 908319409 695778907 387839859 582534365 143523440 720259816 397334903 989575934 186369582 771548353 912721172 16528614 201181044 212611374 325783065 854529798 429503452 41987213 951754401 274015134 648181363 169599656 698831666 758990162 63578058 361969236 695438857 589830283 563074013 651442579 829001371 660040647 344833201 456932066 243528939 491907175 319133357 89242998 142557075 955510370 933669290 649507326 21777754 103253054 93812366 423908913 963350904 260472872 683244483 222014137 821239096 551228502 637817679 236628564 288614904 335099053 944531301 400505907 233632011 310901345 608414722 307207894 811150049 83472268 31746300 850867278 602309665 608581793 280426662 465240833 51758339 736647703 227417291 696824956 120695546 239974126 213887673 149065729 352075214 809068418 774975908 457457314 697785439 117173470 437075866 424128862 349833025 185995984 809203802 24156695 102237182 107066336 558881599 327557130 917110370 772598427 24211692 847196292 932722567 582558745 515662713 61020885 172354532 544616029 452069041 369895677 494453349 797184078 609743416 124436311 536350542 47068265 119343818 170260786 763798450 744490845 583165013 316117486 788265128 700277586 733786529 168985791 485660630 33027410 567989852 848234287 792150253 413374936 265719172 754335925 167198473 420194125 169562904 458194080 327117505 770011129 776668123 270125523 442691765 983140282 509735539 213917470 917288568 607005928 626865560 263263196 700721562 36848977 371167193 680880082 639895400 526872468 753980187 5453754 682241717 556155414 56506898 262795421 324656025 117973052 577277541 46461917 942901060 329566378 638030562 807179149 319270546 607566950 712031166 435068564 896567724 763711906 281702262 331885592 884646665 100596989 953928044 976826580 52400684 704229549 856295619 745395288 920574936 427635320 394668031 517096806 58167956 500416572 414242767 446874980 81002044 724820703 929432549 870485328 686856227 909986811 684568751 796785524 704342953 680290486 225876815 374023339 64924882 159787852 780718391 669549630 904510046 365199505 876043132 573686086 659059909 95232831 103196170 547173689 690026093 274006641 354426769 750714988 490265311 334279157 672566985 653653833 593914558 714694896 315893863 965725259 165201179 367570843 916144063 461848129 380632005 468644654 626006679 695228526 917456146 524556877 984857425 147850219 701534585 54021417 606733289 873722659 40188967 51798537 49124184 236635362 880203510 795085519 502059854 38067646 42754531 159722044 162711153 583233218 106965036 201305545 692051545 870257909 905044883 903466781 583826625 790289721 130101051 613094339 199244795 968193644 880519762 771358999 914668274 579390264 833664526 536103734 258172636 584598513 162238523 84741498 449002748 152768798 389010444 867910709 224133980 202599229 550743780 36152515 291780871 711208249 505328491 316157368 379850464 883705709 498599192 209645301 637515929 251096523 173813084 338012791 43244030 862861743 221391274 232667341 235953308 571934222 557094024 61214051 475128879 458973784 952187138 753052639 740839259 946043541 202544016 833024883 941483203 215418944 542712906 455708873 126937023 552054463 711517865 518719896 484586558 442744284 539842269 26534849 488703422 338435318 77257310 97200438 666140003 144980424 811621788 127074375 491132174 753770959 79936348 639612877 680276233 680220145 720481868 766558334 62168819 186461153 415113323 93437931 565506072 92693128 957732978 86039107 591715861 324635508 307757806 626060472 980282927 881848443 159307688 907234786 646030093 420717931 642319702 492614404 978284934 684284871 767403405 814377976 500631133 677831602 625532643 722063106 499321113 792228583 897290232 407614877 722280690 769873945 987055461 294525270 201487579 688285546 680185558 617345734 476762385 257426290 59722279 124239718 134838046 746659864 305020722 765131047 821266048 395933794 292556968 408030599 999092152 274032093 181212405 602447150 710387837 875086605 296280022 130468998 949387382 815696985 799609101 691864560 356202219 187010714 546612089 795948239 739364936 988449314 235360524 742990414 658213809 802369119 441725793 305301385 647291461 122381536 533018333 254863724 176244684 568755159 713229865 753499032 264715082 79743850 763281519 454253066 670201316 737799666 385510680 706817306 317904162 144814199 101993200 71613252 548897571 4999916 769255173 959780711 247637345 563381995 28158080 924937188 496975251 10696789 114328618 953706901 664304702 680579185 919006599 627261662 267797963 359844309 970830360 859918669 995910130 271743015 414579755 38221716 669792126 615276409 757192313 333336735 917515662 53649007 620616397 272778129 514259156 796709374 439542916 721704124 988380637 864165133 759644945 326672608 122802162 328055900 188949878 813694631 51653729 730779640 556584263 99986161 717576811 336667274 406923605 751057490 364998211 859651130 597978254 565127106 356752916 912098455 735120300 514415136 534717998 991769727 983338179 117850389 841386160 596240056 840728326 84078641 225551748 132324146 256070072 818859358 750200711 110306840 947902806 783006926 221730082 526538211 657726290 893464375 173954249 934297603 937059917 558702309 560967292 113263111 692853801 683912976 674534601 840127536 115362219 654287329 720516581 503111796 10815284 499490668 842253545 437480623 999148645 941458785 280536674 877753596 365579157 550174426 488071870 520389740 33774526 43135898 116908761 758950739 435076071 968583298 345351274 277324647 196428346 382998670 754857615 753431686 745000305 463922078 598997238 950062346 188933079 57181094 642332349 542692521 248677742 735364790 689041045 173123468 247086 184012535 932158479 286927643 85741869 222994693 535623909 110300256 384931071 544379366 807166740 469601114 289009690 464291150 760475441 205151461 394352917 240086821 465777783 341225701 120824916 336198666 879768197 241989568 419935114 987129480 813090148 580438294 370055060 261270517 285253366 872738479 837237723 953945264 191680870 53618359 943755817 633923249 546699643 412190513 8052810 674495648 699662531 946211283 84192665 906217263 972367736 38028969 810920416 79056540 596910255 980618992 714921186 707627684 134588612 748153216 245947015 391200796 22982829 757134334 536349226 503301067 125996246 284524539 813544584 369782448 614914677 54837322 811747432 639075735 203685866 774849273 227273177 196467665 98002231 747670360 85288774 446260549 742977895 537157194 1203971 143262494 478814759 459297859 286482519 5185610 778605242 125182557 532237999 572762067 961539344 599733763 899157692 308550540 139745936 720994368 899980787 370251225 374094267 383422271 477018336 807130632 479505217 548150429 445639530 562551665 903516015 874014735 270071668 51200710 451153686 208508885 155989860 622087039 640765243 262051683 307041236 38577033 655021391 314534582 863602619 101289466 83879176 120628554 119686500 634463359 374271093 445968793 540960020 821600064 934488817 40844693 981666182 808670370 486815677 244658336 300724658 942275825 771621782 526056816 558537567 652169313 112170020 31837832 804543310 122123900 691616982 700897098 338729591 854323428 829974636 863882576 971216264 416304103 799230435 192222542 837063730 402593128 53666465 677599279 797133976 471912687 123007993 811360217 14520985 134836112 432945242 531645337 977124726 83509482 701122786 433231478 758138519 753688941 887623758 994428398 793856624 786104950 936665137 622090236 800038745 777061231 490434049 230190967 250773694 251920658 872311249 239915151 874072351 489133901 622584694 728545391 186295487 336890587 946455927 171315660 141998199 739616106 209976533 789717294 180127608 117275751 990319136 478966818 104009565 487458041 645697257 285584802 345679909 951877066 239888653 620193645 22976263 660114155 943003484 805724663 150114330 158958840 788575941 750560215 623158455 774163752 196463013 105266242 5967801 556072874 207092571 707273334 258898991 308374136 875466976 379603839 129909543 217028927 712547798 724104917 59006429 992828216 494495284 546348516 526542268 388913860 289310811 849089408 130283149 177436799 471786061 482550132 416970882 255398036 381081434 980948761 994103318 465086479 834535166 863686469 854754691 777102209 322927180 678052695 892987282 873011812 738659506 229137770 199327223 539530408 257853043 495600049 969378693 845413087 203904845 253585071 593921583 830285045 804874441 692655692 121793197 252679308 714798449 605835632 443057514 390534689 953349707 18365475 467114946 236733415 446672058 369232856 272492468 819175127 897904629 612482485 535536978 365343308 300234827 779102351 441104103 624300421 140273327 983788949 604791030 391596938 745726735 283518847 694403161 74357009 558388785 124077803 443372433 342305168 233175629 874815670 768624182 381898832 391675816 408906180 904745858 386362443 721283645 657526808 55888976 650231783 655860144 642185625 547859242 285116543 155201015 964910446 455962158 24681523 724586704 304127327 291858079 281996052 678024840 151809898 240428130 90250715 200050913 960178339 470680172 100073879 585162612 478840545 395891257 764663635 681072302 815878728 185158238 322436093 291473772 993863860 247186390 30003657 339354427 790434855 776917817 948087302 116466358 930761033 448909729 897685215 721330345 82862289 777982181 753478608 725175558 435445080 469211103 622677469 97795819 188288354 345971328 668291355 94780208 457168163 725209316 69780227 756207347 234558657 616203670 449873027 773480367 878162523 221396781 82853888 904267944 436943709 221657408 247422844 77904837 639709271 295691765 6718031 201469575 863616434 590092765 561161405 485745377 483416773 403256232 109962957 252637002 94545182 257763124 671204915 496703814 279743213 165327920 426690921 733993534 325174277 977236988 898766041 170060327 420089923 841044688 229124388 36703870 575611992 278086673 661183349 19861766 821961765 191703024 487127730 411553796 164015791 949698525 651884292 179017791 802234958 79891554 146143847 645309175 465794749 102738851 848110123 206730540 267294706 997191962 997177937 477552950 928926533 827212647 38675737 289902731 208190159 873040876 55828393 408537621 583214378 337020628 436794525 878405901 218082554 558168413 69621929 989463516 5221532 238158496 531665116 447276201 403637200 4074339 181216588 475998364 266178766 928272565 964286515 517438532 272696646 559085792 643682623 879192160 952605944 382535193 867162172 745375135 749524042 969573992 240953994 592436778 109171598 703429788 331979063 634679347 529847050 969637352 199610771 817727973 109744529 335735136 474280445 776062841 425373923 976080644 729598441 489218807 412152421 963277867 758437176 484622050 782944783 74246911 829102090 953225355 951148071 542519125 543527899 612593455 332297596 768161755 489033858 574285581 23342736 703438943 471368213 505037619 247822500 476714503 669892290 512936263 662302611 91597912 79980303 12263265 109812129 242042364 322674688 217682552 700330627 472444412 139901873 664317539 590962045 397958487 217206636 580759583 904438644 212276240 720091232 551676967 676591379 944733725 701382286 39517330 903912539 781671326 605038405 840675199 744333737 886644783 806345873 407007936 218750459 713858105 664286189 554675837 153868023 69034384 757517641 685613524 139623427 416168862 960871519 131883783 570350202 283011554 643928110 605419736 630106232 399207559 809722699 869094862 107126573 195340772 106644386 210097442 785393140 694268188 749659716 75876474 809666425 681341662 632500699 511287129 867048314 528796510 518764037 882084182 792669555 14692321 303353947 906105967 124123618 45950245 126090305 815627951 865388350 414110934 784504942 426161292 728072378 391062100 84915164 578105756 184029952 562922144 918547706 66681250 806842283 718400459 925325863 195334038 672625434 515941141 933388835 49321803 901092327 311341562 623329569 21887817 949436568 693943172 283105492 843193442 453877218 982123945 67944744 697179058 309871520 483003342 697227745 218872148 572423699 977230145 194455111 577988413 593676992 897189364 990458637 674275517 12116756 12490212 224480875 66370346 927653673 640037984 11587228 248559335 108680325 496914339 147538279 471250174 727139945 552557632 346384426 826715080 393937100 352076615 694990093 563426561 829914311 124880081 608956234 331580201 425128555 941313687 870461467 650014621 800487785 894899892 532224220 728671740 425300792 819114096 579403296 340390450 298380813 24883178 626904599 604581872 752449781 372507116 375577163 287831813 473225602 892400858 975540531 812728865 314584366 601143980 808020960 283000281 773291799 349704411 251231467 156743845 940625810 530962403 281466317 109850692 543270127 657612372 784830719 583728421 827248592 604439689 295425365 451375838 784615520 560979048 72359321 345883390 646652333 803361007 164626644 413456912 335886378 279942962 966474203 341901789 124566300 971611947 346044690 105480051 437150440 167648528 310594365 23612591 123678271 404762835 220259797 618264768 233275830 258415861 543921363 534532288 892081671 191705076 857932714 565077557 692963290 619726763 908455731 434776936 988774808 145353975 96874172 638885623 6580034 601082116 506466532 994031769 240655037 378166544 635334361 891590156 183103505 445953555 828139664 240369537 295637179 786239189 930691093 879065437 171573730 62999675 888730238 798397977 166728332 713669447 916117626 226238591 720510848 698070984 882832048 389789169 447441283 496569995 618346322 832158444 797138089 393722087 735662324 107730149 362638468 58153935 52008600 59541030 893970880 26064117 869143417 83489919 97312451 920428153 31832378 339698238 325473848 390917 393798906 782172871 279895380 163580304 625169224 189204135 540385594 374079925 63978192 371406224 417045661 908914664 795161389 324301699 458260281 96003348 683151152 128070222 13400423 681533359 79808029 881770087 641444925 105184353 297568040 539698562 714452968 97284699 182302343 274085570 773819409 704119918 508050089 377520831 1377028 460619862 640428845 969498260 878303208 305049853 705555713 867642790 946989048 248218320 644963806 553236851 340095919 57470577 489023408 713586665 106508864 826562546 325509596 348497255 697625918 952439526 130947513 522174095 561537745 283885756 824113649 542675231 491141315 203024158 633037612 212659474 860155009 192177841 187256478 126368656 711249674 2769869 792819236 302511345 673928851 345689959 92642989 297544947 33510298 972999680 740824194 702888725 244603672 491804363 169961741 211771044 377808617 820166999 758855702 692069098 625842362 91825079 963187725 435208092 214173007 829204757 592321178 510627575 347464359 22641577 439612787 984519245 356743465 187655318 697133409 294441280 926631917 400927444 920724896 421715761 358566047 961374570 696073899 439892867 235701867 763194120 674526912 373537815 436989881 114331287 652434958 162155052 201508897 241346653 614627125 521469825 351464118 385379840 170985149 769646508 181835683 589511735 59466143 954900404 367784308 384257944 353025320 179299957 806634594 147453018 311351564 940764325 508325187 451866921 585647889 716469898 526195204 176359071 293772275 736372343 148180636 850526780 354317736 881462628 654151721 172979556 62607106 869109442 597818354 505026375 795652483 681057770 800907764 133537233 388934791 4595084 27373213 577849794 525049407 855917073 497767965 693884559 122357256 465644624 845330531 626158366 773768330 240743980 174601538 505482641 283839173 80298939 608827015 953523845 260265537 709448920 805745652 932083073 781998655 960593611 965420569 547603355 631767868 630303836 471968908 201863750 207197837 600020378 250369304 994516393 990614001 345017886 813483182 591319663 77431949 565470354 209282326 325682988 325590958 409975500 794116905 17918825 756037021 4754430 600321583 65341078 888260966 701042949 128663139 416262447 658116082 705648408 870404875 372865328 8837253 284699342 577252334 35284107 804319954 960869987 458408052 574838356 620462612 691084897 619772759 933880031 135831662 464659150 869207211 402240346 804711646 773739743 482202216 487824636 342199933 320092735 568685734 361397701 737779861 554644596 986041168 315479515 96045010 953462180 615710414 739023107 628802723 2489516 253378565 828722263 153873066 550588088 706824765 673642114 186993897 908910885 245735541 853367471 62066292 771564541 491464008 94518400 231736616 15949213 624529334 54112893 271328839 390606621 165537996 31615419 142788953 568743560 140008645 924566582 669948611 353303165 758044867 51468228 469758289 455821589 587952343 547871269 284542837 606524599 950878110 119738714 927000053 47122625 992700567 500871614 681174394 368181553 860658107 261577097 144091538 545097774 37160025 202877793 26177088 793792266 416450212 549305792 836432384 236404353 512147577 494725180 736470409 110723706 571267727 355649804 955706213 778756842 804978277 30945145 90988106 449856550 684963903 830450853 596178073 18132483 196789728 1110885 760442937 54993220 9276317 838135590 691151526 886399271 315469743 804716609 435797248 630135936 369866251 840541367 742497335 482823497 206351627 722605785 346208036 135812234 727024973 773697804 560434713 762588550 250742946 311696402 786301115 324912055 186616916 873438533 999008101 847694689 865826530 307569875 41505422 425327447 976350763 981311385 433244046 71357209 968631129 76007957 186974570 52137768 739330884 678092315 485171698 219078872 603772445 167061818 582949434 294380511 53720219 447898760 405347640 633527052 999349391 521545250 854601527 63703539 298362504 830168625 533973400 928737936 605354128 477702802 690857073 268095185 95379022 164939707 804675301 755387506 845718894 33037790 407258312 783799 201824978 682224312 683279647 973367584 90355925 421597662 967408224 343600433 4246526 887777633 262921096 630773590 420995712 803379822 404078030 320512588 130634593 202736166 729103541 749094872 961847871 831357484 668776673 984222799 357810512 304834059 692783670 818352980 818261324 406810951 435265084 680130703 750375906 654000551 918208410 96727178 596683444 523405285 173915459 517712841 402975297 738135832 554214698 411754808 161122945 370251157 929372238 765466951 495239630 785743137 813684196 97425211 73952083 500278684 920156465 133614541 680876757 185541466 558016283 573154634 359216962 360533695 138438092 478977517 724736215 57795112 654209721 918087482 110348069 645140578 505630916 157914273 923946565 305943165 131266464 469910289 992613832 239884377 138382393 205193974 111254176 533032603 214999133 896663716 112233802 473128186 364915977 586214383 363176270 108680152 129759387 482999634 911273819 978572534 309815686 833378088 491297496 352228459 798787829 611113155 407800074 28517796 46030427 518119898 716757033 524590888 451600584 184070576 566783798 405601035 744866331 678202099 446026989 876913924 106998726 419450889 970168308 166668168 814259228 435766981 613135686 479365897 535297515 36568351 906730426 601636366 175630233 718133604 160119221 676822418 237508807 403952150 759949489 292072164 457451715 621302298 654566652 723797316 855839232 280330373 730260158 471416148 279625970 223160611 229250184 511510020 855628895 433470816 367344840 8548347 112989468 161313863 779207748 304771282 128942193 421402827 344438375 532067866 399486642 75405835 224055050 95770190 358589767 484573824 603342800 888938829 112302558 26712505 807335590 229105048 273977084 189403973 776398885 125382666 821582567 463227427 88076692 791177435 705387282 144320527 416762863 976318773 16956908 492297813 898479751 541957030 562434749 801566969 621011599 161725861 913045115 875196763 194966776 441659972 821112927 720319004 604875470 345306759 765555499 508402091 352485408 327153817 736161364 228531892 129408238 289829194 887211732 147920738 410032793 533060955 198423360 978775305 458991983 333679994 561141834 755933790 474955110 587452123 209545446 654314291 326671824 322608678 883145135 494654853 945508608 997431356 65478399 751733744 712656392 659665665 214090591 934868841 225035570 449489964 455351135 381438117 958190785 660698240 815991425 895755307 329471429 167846596 805132830 108812536 526267187 681138001 936006490 181003344 687923396 241228138 904642696 790397997 723202278 325853954 209095329 699296946 770949547 235378729 309761961 168592452 561850415 796977921 217503743 707664857 888302209 900320121 151245211 607008764 406244943 989927332 961251588 178171833 766234254 796161520 417198594 744940248 724010361 855964241 632775886 359672527 523565519 585571569 474710021 485131687 976279934 371519132 152044626 5301849 473095017 697659782 930735353 434966444 209789955 959815782 814490616 595260760 579068244 569419375 822897559 185497135 23759178 391899310 507637551 329043423 869208445 544300150 455661805 916114059 760429895 319433263 624001045 580575567 584641168 284624128 974441982 964329388 687055665 371782431 370171186 937016020 922997695 700106683 676365653 816431228 275533425 563156697 693373092 104904870 883910286 961004513 480532237 429183916 939726017 282585596 264600713 304263349 104610061 496829045 870350247 551705040 371907655 404193071 150638849 127938677 736291966 989698003 86703956 86986727 412296219 353894489 107825249 437976566 936143789 9450162 519788280 649461711 924263972 73612458 131867392 698669839 304043741 393670571 3743555 337602995 290432211 748735296 209653862 560916093 557112709 758547285 652977694 248857130 389177411 80356656 317630808 731111964 8685561 770788881 707026621 179426266 911584239 57258995 363835266 700314263 800293827 152087240 96822079 120979590 171895433 67332950 825934427 762027591 423767476 777053707 835086197 467043467 865170794 143995331 448898943 701089761 245468366 339364342 363924872 237999245 608862815 927109243 671867825 817307424 792146677 761839769 54307538 680239455 349763936 103669290 662475295 637073192 198056939 881662870 658696344 834423546 819566937 409794738 829846852 376610756 286415090 176751963 92244831 813146552 965803257 828696583 353737524 130958657 771776737 285369850 750472661 60006808 710012686 338612135 603141740 61081229 29091178 289750684 925432452 285920476 802811115 120310052 765291965 418732422 317350434 354395352 574596455 463226585 986170323 604067375 270610608 720299847 247548468 783530232 475442753 52041492 515972465 51686927 272300625 747954588 913106095 969307004 631863708 904292460 182173933 936567781 584709381 872393076 401632642 931599853 920808884 362365617 145275930 933394386 999392772 943459781 250026907 111217348 622327884 232858979 558655641 216553140 394458046 404313356 797761640 953946432 293870156 635685918 578333633 877129785 585560 781624681 661380028 129111550 540827855 358154909 146232595 845477576 686833703 886260525 827010269 233099337 101223036 140895467 292117288 133492518 688379436 570274499 37897967 563083310 199428171 29083753 328319609 637748160 802076256 21307725 503735880 358211679 807108 782276147 874592421 730895776 688275762 132448378 559204138 659331738 298742319 667028883 807071408 80485609 491986114 982163258 631034421 165768238 403036717 227675156 894226932 133329103 392909839 699187972 837908436 549574825 302858070 688495454 52594900 370889288 197024351 833325165 361201632 455633333 675548823 527808569 712919690 262394183 331421857 66799964 162241649 46632116 494314968 480699770 417262616 787790415 207549746 66373500 264537900 135103176 400630221 969534118 859901202 173690904 658692808 635470654 826528937 735838431 505716998 359889513 249863558 509985151 271195127 976493419 615462972 882645800 780670325 756243096 435966760 495009086 142668298 492569847 171118009 860465566 909439025 135891960 377963933 826270059 509196202 251027543 993637203 319747108 367950205 654459783 188021648 85557554 943809601 988197243 871344119 133581413 78169530 217729197 61361196 311121902 307125220 436325228 253036764 720341890 995219893 568366582 683442752 39182910 585009136 747420717 821109561 825098003 749783119 177580536 769187689 819125441 581035208 590852051 608373104 465499138 414562444 863207328 70992789 888110397 362596924 714222682 536900594 163848412 47359900 767896457 235159030 433764782 494661496 813800938 882900384 191310325 198213231 464711298 750291042 994095532 540915158 441413988 757698537 209219878 324942314 702425962 567113271 221969794 858012216 451679325 775384763 456430340 9968232 826041423 783844162 913513309 583351206 31543793 443488762 951231818 233375048 47961141 226110574 358445005 118293667 651504520 670850551 764063794 707851433 814358184 957189133 837432276 492011163 603402379 295585432 166523109 553440493 317010974 10306403 758136328 704554423 562974907 841512623 584146198 372484923 913760198 282527882 702300673 394271729 251689257 407846815 29182138 580587027 733202049 45157943 991804080 551965675 891493295 796087991 38042526 51741676 923346020 521379992 698396698 762583541 262459210 552588607 320984503 475751776 374695456 398447854 484965331 834977209 820248351 428585235 546991690 506166516 262123165 673983345 82043274 787786728 38512865 185241560 832819640 732354418 387724054 368866032 862351516 370355356 973710602 803296366 345429637 512985878 131670151 618278590 237442375 171910031 284739966 323650346 322471941 186319545 16966441 263011804 377523791 453067961 716162673 566794684 433055789 110141644 230233399 447706876 900772028 797564049 993937663 183199519 119227459 892579186 362334908 240344062 722773633 911058304 476832202 800190656 777717306 876893430 551561354 808715476 140750120 703190524 403006298 700418073 729952951 944495160 106500583 332990965 554628229 590987245 203208739 385363444 655119940 676410031 991124607 666058648 893735985 199265344 923845552 921433515 644188840 832972130 983849724 359376421 54545192 489832599 787937154 621174803 142776131 924949696 704830986 987696612 171512991 5394278 208708280 899862081 690303209 168707977 714466071 186333915 607234569 622540243 124323176 910907726 675987539 857365748 10043125 206310532 407157117 124059226 601518962 717583857 373483251 844826961 541376485 81797545 642845530 652291879 923833731 475471490 845110659 389291953 407733901 199704934 229150015 998388101 379851536 362583331 835288474 687756664 397026484 843285875 32759685 761575901 992468305 621459553 508075240 589653706 632903672 545954804 407633058 108218772 45697522 281990894 663090345 295395192 537668147 740397367 976576461 908400715 580583729 554309444 685200079 378815707 470201907 455332745 741401232 177974247 670037509 559549821 82991786 315321492 181924826 258106536 473196161 145815579 840183540 22698096 850743217 180477515 625194171 981593266 234382359 70952106 215211171 532956007 898848840 318336123 468303872 944919433 471329371 21876714 769537338 797370101 831653078 699201338 482208793 352608723 638355415 123441864 381656966 580340086 259728368 406706548 465881258 744884376 71340526 92199290 867185265 867734445 70776711 26877247 864725332 643100733 838539267 175833267 505083602 254810602 292144963 532963974 29346866 950661624 568360283 131664222 862016797 785062050 846188170 600088520 900342208 94191561 683845339 798704260 958404816 7480366 913194514 260194530 556448482 574366761 110519260 635344892 916903672 731564109 195288677 24860527 871527437 823716767 455293950 937066276 228184129 790695819 102364468 793486725 88080814 569364693 679980285 996649233 290939600 768559223 200025791 290418193 409114090 993619010 200697672 369602410 234857767 298906417 923193937 298073220 514703495 792072411 934450574 188525829 571797278 331626083 548491736 57519040 685524671 226532432 645206153 156624720 443703657 8627694 6250698 631501386 917525800 423611537 831718830 441856790 917182400 526126335 996605888 186132212 757246756 747393020 961209569 552747643 654146890 521995067 273429193 595567707 654291650 70051637 136564009 833127220 473778592 273900431 503675512 163411784 324270452 150897979 862223858 196014296 51472990 446585877 741293846 329868502 53620884 288069823 471779641 399892072 936055050 142630550 207771156 383858278 616583506 596405631 505361077 307795575 258744131 43874254 650615247 153544725 952513751 871030545 459800768 608307194 767464938 883513540 154976881 661734680 326496068 493867239 783775693 564379317 553134958 40752291 57740171 525440851 432588376 42409718 641240274 829624377 747922555 615258586 302413986 724410701 323023598 680418456 134085058 517207136 774457883 942449758 182693773 911110636 531018565 606229643 435949796 855276679 262382509 11531017 109216045 215763663 576971330 21005144 199269153 618265 372223043 385254264 88368875 406673628 800371616 306474378 283960842 329314214 820961072 92221666 668719055 731059621 21943521 863719395 193005535 954296395 560831229 250445721 847121834 964316755 969959099 71902298 453815951 268237404 314358672 127300788 400740318 547814864 528222118 911548170 118010377 641767296 165151424 836191261 380383393 193584998 618102308 955388897 742419271 703285569 129064636 469721270 793505994 316705843 230910745 220902241 479461516 543576710 400725965 674421103 169263819 803303410 480031098 595158798 337501533 381044224 634054956 734735119 255775952 794824388 689566118 766717930 650365176 345119555 886300741 274378939 3136318 280310029 726948686 459989906 612386581 675561425 812772894 7869684 881816907 515557537 403868335 863064272 454911577 174342957 216780384 578152286 643068238 424317218 239280507 936520599 600214035 587158001 237946603 279631504 437128164 762797596 524784914 319342206 56147808 784992095 894328937 420742121 393826679 139675278 228075352 624621825 987768632 906913594 912698071 264067834 279406109 180951308 117396064 224046915 119174003 891717526 104614831 272829054 952169491 358658809 177530090 788479693 976084860 397018306 924692226 508573708 726811524 488115468 953395369 527877056 975101615 144166899 658522531 790018384 443485126 973595222 708496324 967315663 428347216 546914314 284384414 909329463 848268393 66605694 958743258 987404036 919866531 494967364 396181689 534748667 340373907 73336752 280140748 901089582 646434345 628275596 9531218 890770667 237602814 861482940 809121577 326004383 533082994 375697560 421160649 508247422 794567976 643678506 312964435 764911351 724973386 279695926 893663069 139826277 598917702 602765541 1725949 809130183 189015206 350673489 728437212 971817142 242009701 598415702 736095093 794959586 620067358 391943849 181553547 399694021 322340382 781949062 798214038 51337743 339469553 294062079 723090365 760145243 692893044 870604641 560543581 995499030 556678744 532080540 990134668 962609849 886096130 272097956 726799611 701137647 91317795 757002687 675027467 434817245 724826671 450869838 287066228 470483104 72688838 878636516 895529691 393675510 704736813 601683195 809293262 312458176 195338171 9888072 146622367 239268550 287731552 770185653 446315049 386464297 594431868 391559413 874112838 544168176 952146161 56285239 137242798 720510723 521346013 17418818 729249176 821202791 585848420 690024874 27362092 663657559 4598030 898174873 153280141 796345467 943714511 183844570 458533320 913190933 128977185 255383081 260802240 301665263 279589978 434608812 228188501 905220952 425797925 143132207 398722826 530926985 419087991 297298374 575324228 984777647 29664151 446471092 732678817 399797716 582853345 639028686 276081040 774033510 468990795 954338992 801693871 532042281 911152908 179605410 740692425 343130612 830863216 71336691 485155710 788620934 509406628 515814815 388359413 281159346 177591115 57726444 667540028 30323694 907381024 377097178 748693995 560983303 704019722 573819082 183065790 371816087 652457855 477092232 556444022 644287398 247681658 132970530 538251193 999393234 606219030 723058356 819408403 992988206 242031437 175727632 778584315 77395909 961306550 858313049 205971459 255606323 454887437 995593002 594352677 102063282 930396779 988547817 165105895 788805490 248708516 579554135 429239467 668287668 794461881 745269405 442343694 83825419 361184966 546340674 350172585 332438698 171982318 719431328 446867613 235393810 465461303 79580262 457275070 912180197 176487489 132698282 954553884 854908375 391916214 397943912 887759466 764602532 326382238 685954835 465362367 763309760 755855243 16134022 999930161 959171195 34546194 572090764 129105036 30458636 463661906 381256905 586876599 592101699 545170855 826343840 933851785 826414757 321867290 870342752 739375183 404194565 424081967 633703117 729069933 770003547 507249390 525717451 225650530 59572330 776573077 755734487 382621003 191673953 979090126 276462497 792241731 749767846 785956865 460017228 659805347 732507474 163809752 679275798 396195239 46747588 653900083 69212558 482730811 630304171 30901922 394066947 30455221 498047576 976575125 945201995 454528199 88919708 953696965 860746667 530628903 785368600 653800385 979377654 833325506 670960788 424623208 924345687 759826788 677470590 404053730 527581923 927170366 443288998 580982445 672968739 936129264 34212633 539406672 471119638 480673273 265918973 944003511 249582210 374713650 147394281 870933907 174425352 546934821 545538830 889234311 948398389 979439160 909107647 483360215 362729560 861187508 510496142 905849583 678377335 821699316 840890564 417773123 431534156 14788282 299918282 912301260 905200446 804084326 87101459 914400176 833004640 312309635 759849211 386767488 629046130 623591922 29274238 64084213 396853789 365326025 544977542 771205749 249232814 782767419 792475794 233726027 940842906 673572053 690527549 737553576 3168666 665417606 481404639 763566248 622028127 762433183 785342780 736268259 506548387 170253791 981847647 968217394 565489730 690663727 235697922 450203951 463351188 797321405 57220562 41775291 292183106 390196679 930393719 940640123 318848400 58337674 552743369 502248472 178257542 746536756 331330040 644685387 320169518 170280173 104740452 227970869 62241100 35037658 436158976 89343011 156181449 780618567 963404651 575041992 39689248 798008936 991387742 72953628 114336997 353633577 943858792 603792642 756701407 304298796 99935493 222310083 185284119 791671199 840351739 7452824 425382017 25115036 715950730 530958107 810007502 877504664 898434355 682261353 941823753 950573342 561145215 916581527 138137909 491542363 408593796 354400846 101330388 577950112 713060334 547671950 182886420 756213791 997788776 416106216 255658437 574769898 22010070 699405099 570063505 784364944 692914558 894292643 931517558 84533663 515110388 582511086 758748565 304930884 302635960 792253220 740219534 434195250 763771129 829201235 930144631 939886067 577241454 746153645 423056873 297782370 936107189 459916161 465398357 799216927 468962449 228160550 418941336 574547572 476660872 565222758 263042996 464174806 665959627 459267383 906304047 340815043 491681037 402305487 32091121 314771027 317390603 678890504 470362007 678442250 270760833 819662800 995566563 825567609 986807648 683373073 25022548 258463079 897004204 897846272 459761565 332086019 551188120 335485444 576586266 968471933 233848199 463747554 867917060 449610113 690713207 49993521 392860601 109886180 828150979 584190281 810720850 627614475 114135188 617044751 7358514 912232412 395643561 773805213 537813669 377910662 179555529 26902393 598626053 530665634 697936356 81187811 506695497 10232066 586713335 700275980 107471423 530344978 365216626 426672275 951069821 876144465 718914414 287947887 574982694 182299413 382414788 692016055 156938794 66940618 139360537 845695794 464680085 91336572 37392924 897628202 342774040 11266353 45953860 188532147 567815708 944709189 604875513 515883186 683683732 1394043 717269946 548171743 377824136 666664689 831008931 285247624 182272250 292147399 575662837 660898950 110644263 762977744 872288014 927164374 659611323 509675940 72478445 403534364 212228367 11402135 926471638 533041437 853303757 839939822 507037931 5950609 602256513 786598576 527275221 256224791 729507794 619598844 456368071 72352722 78454979 497381053 625198100 776878088 967844711 460786904 698370269 742091390 874454820 681909489 320282340 970397952 146536002 800056484 685492649 744062290 667477555 192144824 460825985 315003641 439225873 179711046 352097492 174381485 798639822 836385900 815523059 998136461 809048854 449781288 972676785 732534173 530236444 870037152 296523332 977516432 503751687 502500107 555186933 646592874 422494457 286653765 377521330 505370851 926270660 850310820 74978372 914708970 912585568 377248661 532460364 389946084 287549677 777328189 17004308 632544301 704960981 179775505 528655444 841764419 93073301 443635583 908581316 934808599 893373380 617069628 705543670 172470272 570371937 670763616 675737358 488673637 625243370 341459567 220327322 888275887 591924019 213953198 365197189 205419519 412227359 953787997 77136734 687506212 410255725 747267281 237906397 754276174 210965337 436941271 993556721 886099901 305802896 752384322 839665549 174917842 939430313 293677352 331251215 587620811 774654656 512232793 153305748 756003036 888115031 440185133 855473273 96573946 173251492 287200748 157763414 512168092 346943329 845251024 5795715 797768929 63275492 790275960 984643697 647951539 68839630 736686278 596621789 108425304 522424652 288894183 265688410 934732086 145052685 204882159 855610126 303613669 890790933 127836003 298657934 505420707 78468262 245502105 386289421 618034142 575561607 956007126 616441945 244702074 3459155 805349542 449779796 517009280 673476590 745689078 977867815 902006528 419568435 985793476 730452930 30159991 56517603 191105473 395428052 76907019 869843322 464411645 606811274 2710214 146859781 420751348 490444918 366580548 411635163 465993374 599219292 607385187 871770421 642704486 451289128 38932796 918666031 673796232 228511230 102147872 419333308 540096524 935098780 793369511 915393130 16452910 143968458 337108976 224566155 602425713 350766855 269635604 515242708 409632552 207712473 356180137 907749618 47545023 682042710 520885777 353060304 307715196 41613164 451774743 620646960 230852624 644772626 622899358 623728267 183832474 884447024 846503804 873180146 77253309 516163450 205760821 923911926 758101236 381555584 57711386 245992244 421729741 475662410 830549647 188101390 763303105 145948713 786648572 313513066 389171663 529166455 940055002 620113786 445025833 712678600 300816272 415077790 230599845 815431110 584953502 329400221 603814125 332019950 208121233 52945920 585493156 245755542 237081123 389516938 719620327 946370892 515597026 579679866 899096417 896115263 380887453 975147754 657372905 458253969 562932155 289749563 918899652 784602089 355229122 672317895 514872726 337857186 57896757 256836834 856740472 950412084 370284276 535032748 762088652 190795891 179158040 467583619 301506488 392675129 314225421 64126918 950652231 508736494 759020586 750319463 276417452 411885377 233322052 526277095 6055102 364529743 576738004 370235501 66542088 776498323 553564097 689620724 885171097 273575261 713421453 705623728 635526756 376990402 131804736 124949882 548655228 252309226 494199793 170417883 946700709 830296493 316366906 871940287 324429910 577839915 195372442 543633857 342139859 124212794 119456005 236008182 351793122 1788078 468379145 186549462 108458509 912560734 352607269 516279745 895437975 742333503 457330883 637639498 46066494 302505152 405056008 117182500 523817264 490737178 916190413 727760658 346269004 83037891 219763700 633118959 208961625 121291615 507184319 157559074 468479963 646960810 249963469 961899154 528441188 583553534 265106629 857368501 245351815 989906141 510150375 506654763 81522413 645980700 409336281 850488970 972934347 192689088 120723432 674568858 441306020 610597876 116375117 351608855 173038883 752330646 869211502 475225178 852692612 73606729 854941830 598190397 852629677 819759665 868497781 493854827 283389683 479891616 528891661 849618879 919335645 952232601 592847024 711659864 485782866 22718117 341861305 776805996 142411700 877953553 144205835 370864061 993118822 380993949 793791335 348132542 874414457 850674718 864329441 710678620 215162313 362878337 740948261 812468636 547004370 890252968 366329114 161805968 836640007 489739159 769955164 907858230 402318689 589360049 726290809 866126464 190472876 522202779 884224974 884147053 417343364 996587778 272137376 58029764 6263113 116075595 201210944 210403785 508997164 21852747 606892066 941486878 845640893 323318257 73908872 411992336 745570118 714954606 647068138 984103476 477104569 454941787 766125311 913877656 610607861 678146270 307496033 726719435 57414564 351113727 187000384 761675786 644478592 354743246 782177642 261472406 240266005 664732758 836172289 545628362 256774067 945928733 50931019 979953161 236474335 315251713 581512231 673398458 98609806 397381951 365678165 759165455 437830861 983935002 743730003 561996903 746634303 671955025 528311491 279027617 813000571 549094349 344042525 589777223 317856696 804133626 469220353 912259255 947395463 839374217 873510572 441800212 743577621 580551907 122856619 593718356 181606857 598004001 44470652 825847522 339412331 73858673 420647745 442410825 398779286 484518885 986253949 544704491 321813838 478328752 867242484 664779746 620500847 290047329 17923715 964981280 442013539 439187510 693641707 849237370 371943470 599680417 117000216 661457176 454489644 370966802 731286107 23394876 439329073 798652755 200801651 435425476 380365620 446671335 941185483 276561386 672282164 592004981 404514600 140972727 763922904 553002962 804684016 606147052 328848967 22236317 809200993 621817043 674794308 440405592 576795419 572800836 154163771 501215426 247753372 331710411 797137258 232930211 608383927 186840752 810872572 881248599 89885942 40573142 116164810 398609809 548362277 364565587 981945559 24406826 411542500 443960373 160138245 649174015 586651938 114321919 788602665 510130617 953031568 509806461 523963738 470830197 276876143 484583011 779094464 988609428 744792552 541596441 39620005 173065001 861911549 261804782 615783831 4379689 379699840 138164114 277597750 148937512 879362803 328160347 356850946 269273989 252724483 49554629 621153475 543540796 437300901 274854370 327969368 753435216 767050141 851015804 181149990 357294749 673311260 102388245 71191930 924394489 723643108 119204383 642411292 145885121 460728931 783692980 775191065 892912103 62947916 626151316 345742981 301216614 8068145 536283129 465989411 34931109 51704794 372845974 666466979 993061908 624422658 812884831 744853851 472618958 42075700 356337796 222230073 691031090 651855371 35528580 904172473 348672430 480338041 311491168 940087816 229719948 470699277 557373536 696226093 491556764 833629994 925420369 792830743 22386076 632278758 507585454 543401578 25601331 782227034 320910460 487407796 117078333 719834351 295927227 216829359 800017799 615273203 980454497 492947816 5116027 379491185 845736079 190294416 4344321 341059709 718296036 165953110 938206807 507024473 847045997 635116116 797627838 305850698 51464411 619876452 262392647 134676989 972574542 739955232 40070939 302306227 402235814 32845759 891553696 478625657 649938116 79500663 596021608 385524970 193308618 624967199 404309436 876480445 81874688 957057589 198195696 354937512 707800842 512066117 684176294 412822954 944820250 870011566 85586142 325365246 101755742 876562336 377907356 604293765 873722151 748462931 598753523 765027565 74079092 758135450 862581170 97432571 91051884 20638652 312909645 62597934 960945441 980376217 721247114 564635076 23396449 198114615 352177904 118616778 987876183 699822776 513032974 571201301 581169852 982474277 101905636 779783669 277297451 729618908 722345258 884319407 673825219 572633082 667507876 260047050 129870544 82415548 573509039 12393434 937630535 864328748 457673623 679506604 847731940 790956203 184520525 586144816 966077515 815625026 930764564 886434991 201183437 635197572 695975065 771250607 439241342 281434545 934832989 891338401 579139914 455105881 665561349 13613815 281341289 143837683 486821954 616782516 704920421 512831709 508744474 989947742 684218763 529655610 534088831 790560380 382804241 888953319 799466946 228688130 42506479 260259205 584931199 950118457 723075915 45380476 454766690 176078993 147225681 388694370 340398548 16060130 971379265 747366358 637614671 135991230 537150039 283640388 68550514 25676405 633327069 901625474 667154907 845600710 553720828 881538507 628581508 879758161 512840143 354071102 775355414 995909137 534565234 7541222 266989755 67029299 42526510 440434459 570276577 402684638 319908754 410085334 319428855 488332455 430612487 243593824 499409766 36205354 583346913 22154001 107986054 71595564 307644572 890198984 450394716 64807606 794476423 374524397 786111221 599428670 544238139 165923340 283653694 157406404 998678590 371071603 580144053 366404713 162738968 123759415 567080375 897839266 826666623 147913354 766624858 895680159 364294818 951025486 709445872 673253779 87410438 463204979 641668707 489339847 865516772 28655758 54207619 817143702 944335906 180042510 708665238 763046901 14148471 168540729 271895479 522228752 196940135 194595337 841473231 59449706 476619196 464770168 156676030 49155393 89954643 578325535 866688357 936924641 881276006 266883748 340489615 207321694 507410084 498190302 213451720 457503780 463674821 808296044 345899893 738773581 548704215 770616024 598750946 169999128 25675770 31767099 380831647 376021158 559922585 453414899 585376015 268874328 843086168 557144137 648488182 279880823 994158910 603366177 735586464 998801060 976699279 523894678 129397472 397843794 100358493 529740448 28039540 418995743 675947770 830181590 570664191 995026722 489342321 371319182 853370242 421350621 122598373 74692499 73907063 581293642 758912687 373871501 38018370 313824707 884558447 708321279 665174959 815099154 585445523 774125062 957094524 903761206 120900863 576311216 628060504 23026796 430536070 99625905 524176391 780280714 88039077 440637920 669582629 746297357 475991382 189702715 737611693 428765317 850590094 564400932 22403028 141323174 33058192 349066478 842160782 608882054 132297748 871956478 910701432 835255777 751483955 601241484 557329155 75975416 425868605 794660812 998244558 242871496 445297787 68055553 251895258 201508148 182040429 987269780 191798891 298033671 304583986 901943330 139739314 711038953 940691589 186603246 149566336 268190964 741821399 583427505 832359138 458470274 34412753 816523186 80657217 545131226 306940792 546147654 710401728 122035064 162057638 700799752 31920574 430704319 282449841 59102058 60361503 883743682 64972469 280049258 932024913 985894768 929740884 792122092 611899511 549785676 542045773 452775025 457812821 66409776 308859856 159971159 922085843 185570030 687560325 332147955 102887454 850006406 332760418 452756312 890042558 732547803 599411509 839186915 711504533 121021155 269875990 387220758 698931521 370612537 835163991 143014600 932690805 513550345 443718869 184367451 350510815 686614741 337648164 704893650 119101009 211534472 614611489 1092209 211438832 322721314 597672662 887920990 776089528 380478201 433560704 722075126 521942550 661351285 248040845 22834874 293947183 386479939 263067432 87526178 519296335 383887749 202287211 937355220 555611731 187166059 44878273 119726560 175590341 821979703 417585208 268251313 139443648 984912038 152428950 409466013 144927177 933403266 250478203 809576170 479521498 834362406 558990667 279205451 157588816 736275945 575082818 594066180 183566363 12972077 617388813 797109209 775898480 820486065 125411529 63034087 831289181 978707907 35243162 359516002 378592107 78319694 909422712 273341724 763824121 316816573 739744616 686668966 919359838 437394428 694831841 686433545 488342977 600899784 789238978 597567640 697900470 137101530 652204417 124668664 571419407 138295578 85105483 548526254 560052874 677077334 482979941 297428352 778990968 438727488 854775162 249783311 788680095 16847471 733381897 158124114 736871979 182260841 492868617 421058340 250402098 119307707 548266831 244636590 171235657 306779233 422179578 653754080 51091418 643885262 945298205 161588484 984440165 882326774 541546951 759695712 666896317 55353814 179477781 880193996 354648604 852952671 934868480 31982489 212656172 384708959 107364266 653202955 79154814 885247609 718769983 254599310 5465308 313192914 987324746 575503440 688244407 64010958 781468651 255937214 142083810 443075541 142220800 47868192 948221320 915423450 305910963 682726738 993410606 215802457 585086890 569556918 40692135 163717565 86427778 395641191 191805887 334699671 520526512 936528826 698312129 125725527 773640020 630667211 543387091 46185009 666912197 382852510 567319242 322965967 962980549 677241258 581848556 585975900 701564686 161098244 661997604 551337661 217756274 265368461 719661574 304009504 165174317 958334845 940847788 419377723 320912219 515636026 760291076 857476698 852968979 965047549 464136395 331529979 116941717 732782294 181104542 701806037 129063148 153470581 468272246 595096804 497782583 583581328 297431436 926062670 610340638 936728763 247857253 789977566 775604377 793177491 35843890 678116309 830946525 190234964 607292793 963059970 442323319 466008674 498489854 501518810 491439837 874279395 777195955 796510859 187724011 143900195 301300886 853935465 301810343 417521378 40221518 980037085 914503541 444143560 696108071 461013843 817686628 887533227 805260285 61348644 211253505 81022547 311295803 510163045 213443299 136998285 321738431 687480986 551766474 209686774 244622592 472773164 389680502 7892155 409772581 306542607 490034851 495100022 936684872 179640135 18176863 261605068 16301378 9337924 332738454 886311752 378429853 987177401 50742565 20051424 340645384 695012968 608216014 349468777 710158983 24176589 398237008 711245135 591647124 941246604 500019518 499336383 547572124 706554012 61224724 547924265 395094487 306561604 35219990 901650637 179946269 174063480 694306149 909394350 89523419 607766881 586859629 808874205 449598787 70121465 17663693 664740496 385346015 785085722 573452314 290212990 581776247 848001473 715611196 404295243 882482599 435066368 453359414 490670834 778712454 449192605 736871003 937872976 359556835 950178682 751783112 473185717 417307325 906269829 960719500 953764049 195014057 310438993 931636659 525618057 187105372 277037096 446813404 460819607 949395438 772090293 262828842 336319766 860188036 331686829 98679 486690081 99967233 143772057 812048833 360148193 745289913 815689632 820109446 913648935 416408513 34325937 848011032 914301309 823348374 427070391 874541770 429819438 239579920 733080903 77903693 105795132 614198925 884042158 56905607 947538142 24151088 341884905 567953826 827822653 225844625 268869270 77339116 886331438 373556725 580095181 746211480 881606898 677638202 625611584 445988725 224579538 683188641 993372429 916445278 970633107 824158372 368354782 280107270 604273868 399018374 603935028 749457257 454358037 199802978 311257846 243606407 227310472 609354534 472060173 696978590 386037764 689496638 564919352 597631972 118919705 413253530 360173569 318721133 437408803 303735233 73973709 542343015 537847255 463952866 15764197 718566222 446732797 255266811 814500097 5832476 616996973 271831433 401851113 97377631 842863526 257439456 157543524 719997950 838100591 942371110 307263952 365763401 139822461 195249691 981529432 444021837 612595657 87097550 66002952 47000504 2606989 264421251 719968128 222568631 209424890 470754036 352227650 246113356 585091546 317755838 746606988 600708490 951453366 666996693 479449998 850102981 733886572 153290157 157572035 136531743 11030866 466375874 200982670 423674863 48951900 175243825 939172299 298172416 163185206 887903678 684708923 592599558 772548894 149407490 185099194 108033726 549787702 353088731 137268594 787061425 157390515 442041233 189888973 16270921 22858099 545445679 701408690 649116307 367148098 964360941 592170132 80747640 743780272 442961643 42119720 277046504 707840010 560946543 266956228 492372535 181760775 283274111 572859711 601472233 284049924 278497768 298358424 345559627 334432569 590100758 765957908 525473935 351597848 346646290 887989525 818040934 310813568 876824211 202993704 363039156 766245250 568839718 876865613 662409168 39383790 988173625 473268073 231121496 608998204 82841172 970858537 162177442 677072229 436382272 30457164 914958620 521479909 124054335 389848013 141776437 664956226 999985769 992587498 450072423 41174296 317910102 646819576 285867948 820923743 711654725 253478063 448915391 740794397 799134045 887416280 530970152 841532754 494673729 408014497 472271708 931694027 973075057 331210837 403216647 459665144 180854207 225403261 55958711 290106895 997439530 917323288 504603836 468278117 580056252 254732065 571270474 706491018 931517265 733780037 591159186 653558815 207728138 674011558 985832556 443651822 850216034 277603382 988943908 791272450 364397479 607919124 502557122 934103366 665377715 667971305 580219017 550003867 286063281 385295803 678169073 444213752 337786803 181054470 653928492 115797547 616678554 490924119 665287690 204250825 522875666 796904615 706522777 341404438 33058137 937376000 720712221 510051788 561085582 965513870 653023063 774023434 834156454 419756654 204407718 43177019 28344051 367005514 889333898 723608076 793628330 345120567 332279222 247315412 607167716 955201368 368571028 562671191 193318170 68976566 17667927 688430223 819979280 259104052 815294588 627414091 990291700 310442501 174022263 918438728 245613023 13548177 31609333 666324888 42337788 377984870 767206823 875071809 67859151 704831323 747099524 107430764 937819505 225664941 373922145 643889338 273204895 584281738 987202605 847654628 650685329 932746820 53365728 457391205 391204661 106383347 14545868 67813018 929794639 674667626 194792949 441926239 152914359 487970916 487097579 116057535 637076660 494513003 791209743 639853624 435128872 126745638 123389372 29028654 372719711 226872716 922688294 804318504 117052340 270833186 620569063 376210918 250296486 351553259 509883513 795150803 73993057 499290552 917561617 794193160 213669573 747947665 185411265 582365948 29770059 793189698 526473670 960871173 729194844 701867912 741567430 602924325 368771396 701208368 633459346 905418638 103701004 346748728 142018276 226367757 457713382 292961358 626832316 792121073 916783153 437217679 102547033 990566285 586855604 342765626 880502678 766947163 813571888 560318114 248730 946059663 699659633 262533950 929112394 990518604 5334099 628267807 345491889 906532955 587098796 729379739 890750720 172785994 276904901 460030482 232849915 852376072 291678099 202156602 669743948 595677326 226144945 456730625 170273353 894569392 962475131 422290632 517650598 830695719 987449150 833697558 926010139 113111490 144001599 160518239 895566420 775786401 684404712 211021604 351855863 925869861 240825211 319454418 958583182 456170026 134887299 998674971 320120129 105972391 255423067 800051434 82368136 315841078 274897535 991283352 723843699 461369623 851728658 882513321 956387276 699004166 411208855 987414164 551362291 57934806 763109064 309740322 118865680 574795666 745144255 775502277 689541823 945470101 989780156 494271803 393994107 249327997 64065607 142018074 127237273 361033264 214739377 266635021 621025244 636041391 597229127 864884526 473522221 482796098 511318477 342725987 601815013 127391662 378319693 908796653 832637903 10982427 641226364 326105584 487225172 819330889 473749384 390872250 173254709 658629110 412173246 989877163 989444589 866777332 941827944 832345664 459386381 901689325 112304248 277360722 431579603 857399561 727752651 423144856 583181221 361802169 699307466 84835003 752494880 286028847 877478764 66018685 702746812 351493812 930340486 684163078 898953536 178700358 649827938 915882423 309176909 404023396 190816838 168708764 161829772 435330032 870643262 246385569 76909649 192141586 198455696 10803938 409291176 420000852 743243151 395416764 38669069 103958954 456832681 280126760 344819296 321059039 703980696 59159624 617752211 935811709 101790850 855493041 510115990 385456633 614472308 680830201 220190061 54663065 281973714 954179718 817803982 400021208 7142248 410064202 622045251 643423543 29767213 651766675 693810015 945616608 11511865 290187310 122543901 707712536 842903972 247487801 646149076 639519301 543007553 470654614 178403963 475000669 544267913 899454722 944869016 177272397 698461196 762597241 401393883 452076836 908612830 96802348 759454381 851605306 55592287 244844403 45769001 397852167 104090414 67328163 472044794 358977921 808731256 208103029 801247692 301525512 810384131 454348516 654556067 332591619 581053486 225011543 235047822 765420263 894574025 597120004 849428064 800010677 556978443 424216749 507693123 919313416 934795720 278728198 379872375 501594839 704886454 341345845 505751933 844101421 908045336 378328483 723266050 914483780 312397240 515409376 759334916 655241719 922733355 808823806 345233925 552130386 507604193 485537731 339511697 866590187 648944931 571441517 365402741 937164246 947736960 208850175 568211491 610648128 171937999 397424771 470139177 656987318 237466644 133517155 918626085 248021734 54719696 931466681 720420093 114680586 691048048 160443497 647894334 615190930 814296845 79611692 871555947 43486794 504703536 339711888 124305119 453577515 579152101 557503202 635619524 155994938 715083197 201155659 704766229 822207832 343928495 372987221 643921377 719083916 899878151 910101943 514351310 481979404 869622821 887260850 890687788 639182389 600677986 287808172 440406552 839218488 667279900 449882104 57303432 232025597 318027628 956382905 53014060 59999784 264497987 635506064 618350706 790587465 857448485 838419806 670426815 648217470 972348412 33209179 674300862 325799852 558403601 198456030 641682024 715846252 57984072 688019374 139276604 951379671 592209107 931920729 498826323 926748128 282577798 415404470 87002154 420937927 504065823 750163113 459746022 699105470 286886416 706821631 609815556 396048885 789329601 598650093 485448628 28331013 362448388 45715118 299748594 761732186 148051216 55807293 235068930 343787541 45766460 184088116 195577311 201845085 436018984 934693447 666385296 775680425 749589299 946272627 384065931 853881479 385535641 662784282 787255269 643264235 76100614 122726028 604106268 390142587 847690071 508382303 326796771 51114051 308845126 164540408 666219483 187346501 411836473 908778289 836119739 155728267 353431437 993185101 190678116 570337370 853991952 955021475 199901775 66616485 592217723 699464444 553098385 442701258 211070333 47776921 280615800 113120810 101748631 736004482 398327027 304687396 959956855 86133894 471382191 383492875 395618275 66807042 543687346 320770468 241960387 768365177 401713184 26657224 285868343 973566224 230556467 934813205 139987217 707610964 901957527 159891227 285134126 609626860 276122030 452277627 297358448 239853581 480151787 339265931 346037103 983176549 448587232 908626525 630910216 661659279 634414776 399418710 784812650 131493761 44274715 797952052 760760401 498731748 209993840 712183020 81257150 533833066 365735433 755116431 875432248 826455269 206738913 361905468 186479443 68174472 479689497 263694202 449155048 968470028 524252133 849986446 832707866 614660331 448111169 218720300 339789053 120830289 251604305 471683874 411395269 801471971 789779753 838336241 782563315 200686773 380864193 838849800 735113899 782757799 248287262 496727021 271104811 497004795 125561824 522916569 110150944 74424145 539237111 633114087 756327338 659373917 179412025 720621991 184010400 242446719 231421800 190733395 154224451 210741485 631000453 146661739 697126857 106937449 953334525 298010785 912531860 287604682 18819902 479630557 866635029 913691190 883515316 671356995 838496651 465243746 240907069 116448578 48790117 903363372 78743726 569751072 178455073 775198813 555893190 780195124 295770482 361963744 966032397 716026266 478621254 328895126 484414475 970696096 545758343 536220287 652630840 960447056 878064676 290133933 361853367 611553720 264210628 600101106 154198594 447971361 510906160 468026454 6139679 872981372 291083646 587643622 93410584 670614957 446876173 714126672 648786471 471731495 290699776 742636470 488188184 325134960 952902019 45225961 655491217 316619000 679960501 533965592 928129540 545438812 555697580 891579919 855850882 223668403 763547788 156491058 856568685 50378714 306018490 588548034 976068416 888471674 52592965 455282529 943099047 558677205 591556366 464402690 659815434 137233115 226298532 45254049 174838971 211881722 992954228 451833607 155970444 433818341 89597675 162663803 897470104 355095461 681392058 842989353 55529749 11367480 965757509 210630619 800952937 993359028 624605787 123783714 448623329 66718808 76251143 166407321 12492738 244460126 709059873 568513587 676985708 662017174 892412538 598584693 948356939 972572616 143087429 41706828 672133979 921745177 475796598 57208658 545931735 617551941 247727593 26181461 310462471 111157343 296187575 783111463 91986940 576885446 691495203 973219484 377675403 657867867 859358924 62571818 925200718 89939947 914956817 654008765 490195689 229189673 732926707 195680950 179824621 459104366 965253165 393319586 764907461 641844106 516949224 367726653 362327704 209627307 367154687 998375146 615357813 885509325 350948688 219805402 791389249 6966206 264478401 459800012 828232947 41728688 686229006 441601379 251765986 989820717 718497433 273895343 297565978 673385688 958100876 807637404 157739101 561969678 847933920 124041078 851509359 291126691 351313220 957703860 980024684 922599141 323750757 978730244 737936752 179131775 29622473 401483586 773771126 395914836 145551380 428772025 212164862 856849798 150776620 825303678 314675255 648852574 508190909 131507975 23090920 301018710 523641506 363338952 460485216 158402618 88680744 515461216 887308917 875556548 620500974 55956820 748893837 871631722 316825984 289321993 516037064 823004233 190475843 612598174 198470988 365622015 239014711 866825288 274939981 702703484 901375094 187436376 125303867 196168995 237166900 656870578 935156736 108447675 613566466 58247768 886261019 150404875 442469101 688279583 617571938 852881305 811461494 939435994 183882527 339528679 58791720 777877949 943502672 237276737 917529434 318620207 493626199 671658775 617327973 43316025 13846050 401502622 119918108 272084586 463098392 372633370 642725603 582565187 875365128 34629031 887457847 302190410 364299012 558131084 541784616 12378130 567882796 670969384 972749859 407822956 585496989 49121241 738573247 154609010 557505618 161980685 560816059 538309359 207275284 659488752 696809214 242957181 479311658 337125838 654546976 912226976 78436574 816274022 577351179 741165020 514431658 538405854 728614079 383697729 815910838 715281507 731443400 416257233 969525701 692529632 603194109 579966687 772185160 456157291 367176994 752824041 549237583 702506953 140317173 949793747 533818925 735438569 269011225 478184568 960749499 551194647 845272351 688714698 427769357 598258668 865532319 895307966 182489572 678500358 128870059 508657632 841114983 672988105 989573492 312192440 820132213 751688745 128270445 897505941 311050431 204910397 675637613 165862130 15350262 323400396 48781018 906477361 394450648 580897778 26715052 117918839 614305940 371719343 130220709 212770993 722183832 153582712 610619367 544294313 74806661 117408893 726610243 8929786 499047948 227149197 812319087 721335674 320597669 796181121 860335190 166843208 605533788 649417359 317327639 451295385 468170869 423682467 959522771 348394852 308052976 138551833 491014132 749736502 417111511 57937704 334338709 741823945 429245894 45691307 25080546 36897110 250281705 770648313 123539065 177909079 162358793 410568185 459992336 425774601 411084604 16671202 684910805 547622017 619462521 423952178 476288953 579031417 513475787 286604308 486130081 186800114 640810740 618534837 756863226 618856137 964732949 957198880 438864102 747729472 253754623 424554123 737464131 172254869 246329969 242561930 961845948 804101739 766717402 565277912 330313196 388350620 803560086 276496655 996589375 340474006 437540800 687860515 773747588 877691987 822835437 264919817 687724125 112181125 553472390 509127730 420291701 632686653 944140747 413062752 786656177 764758603 568174192 189750846 61665843 752771134 454434352 840083212 135789325 998926113 510270520 970417216 972042842 817042467 990218922 93065046 178603619 786914272 353078356 137124969 681065990 480943356 905224918 286752935 304899273 57854266 781863833 300266963 212559065 869589130 658682718 660097083 870417647 517570734 284341670 321830572 377539956 404229250 612253062 488736640 488819626 678443685 25109291 941466196 467561416 921793798 782810191 319671952 944866845 740578597 596434883 631174283 61005406 329600833 288590073 680932204 790271731 458984473 194890810 703704117 394786979 730503820 366618844 870962218 492318042 785289620 130326791 158424715 595507817 798374881 58758651 906035511 983156846 24364105 295725803 64182622 814494038 529893815 228850095 692723563 710878462 743940127 919213570 408732176 75915138 590387560 659209380 810198482 435273631 749912897 211178153 502077105 908521382 202562300 832385856 777844636 125650786 21825955 594090694 839109437 669337550 931690333 505083011 579893752 229527458 523263855 339615088 48742190 604899334 322113767 191537453 788198896 649754757 788361082 394661615 298430211 220664253 956477341 771639085 472213305 945970399 559735270 814786892 86192804 538091056 35354390 739566671 185479179 148167141 102875322 149396952 977076017 123050347 612675705 546140257 708923936 489091394 918559918 986853547 714916686 392534137 588873282 230221255 243104079 357375675 853884749 768917340 332808522 752160228 968738253 460150458 907242652 584348248 404817471 2870526 274988259 842992568 297751888 736311889 372124885 643935448 898701670 803491933 36357481 926433006 246537786 360806659 63186744 462470336 509977389 797763736 177233528 680126609 41263096 32489615 414645501 219071535 321755521 930782029 860602754 865293828 839082356 110418488 930842697 109269252 947765269 994655465 172120882 186163891 799019195 920648548 655740182 193816682 66796488 824056704 289826920 61892991 72646161 138240689 359032116 295327542 622175530 730492170 411874794 263282253 111842975 770031184 241653492 72094892 650070524 506472264 225416005 403740340 870242834 494735547 211263873 558591384 569151294 779867800 766457549 955739103 881237823 336478964 877040949 704299707 406610560 817153911 448566332 723237267 802168853 96291166 44218487 41173 146961935 126581638 714460880 245688332 836899079 213321202 521525462 728857313 838500705 874671718 170083315 806226172 380837663 41406841 747339420 645585707 899934571 166687561 266936813 992666743 430379654 892101502 993955265 171291767 81303488 425913130 199237138 401565939 852084179 402851055 366048172 741808924 366114224 173091181 741418666 184042077 747619218 282478828 379089034 877457480 396383383 768479723 271431622 476298138 638432549 462068153 832470296 752406691 922273727 522366062 154503390 157219883 862254512 825537346 679463580 843094984 694008264 959074355 53821815 421812249 818723944 908262054 345880301 420046256 981031106 799634391 334812530 177423231 367115033 69042937 377901139 739500781 716958818 825503924 581907724 864726903 322666725 197167412 169020446 281716657 978566871 91409771 633870511 73871389 823862620 17094394 385157560 92821923 639385215 269661730 696363554 945283273 785430918 215075564 902384446 152113761 625741337 439194790 855966298 934517910 5173568 906823762 681541436 993004361 990814032 225155489 662142941 186102564 405296539 862783421 707638901 972428802 751826569 164142226 62963185 81081888 430221915 91289911 542838303 843659356 574365442 44527866 807984731 550058691 872576095 417067799 503122629 690638304 321680435 747035177 578174135 969306561 829379413 399275909 652787972 47564194 96029177 733118164 715253948 53339564 416147433 343412796 539306669 567352706 254711978 599341876 845911932 566857076 984899340 970662117 251107403 636977274 521417176 427460479 576829786 621583797 397544948 448808520 212466439 812851372 673048861 886066451 532257032 794904098 513432790 422864439 265983779 196153676 64584602 861330023 765876341 367135428 943482169 354726113 522347151 213474735 546430890 509911877 651033182 348652764 359464662 214439108 288097428 950880960 318918038 842505404 702426850 738768083 45888525 227002477 501474213 45503669 415311838 52380453 87893259 213815144 141127204 614216429 833569900 988548093 48867744 360942179 159213036 522173019 240948598 922597688 530268175 697808051 377514827 262405897 829178875 666857452 330780409 221407436 45476444 966678813 337756029 993308895 272367356 141569814 937997381 767702409 802923401 761725400 587401827 416285864 516270096 717537385 318071715 899998129 35928818 43424271 874121297 604235073 326254929 266792460 223173053 934600117 504544203 620708232 475001827 643426671 749137974 379172237 740208531 737440682 82628049 760308303 526502462 324363092 224383733 813897790 147081101 476764184 982591323 70351501 946280376 723698553 619751045 197442466 374945506 989246206 810029324 498185790 407482079 346426901 240599977 938921552 162847618 72578485 962132484 681198953 748776285 420162555 5924045 314253632 132505059 338892728 277431142 487541008 353703615 278457099 154961846 679994467 869766217 776546404 915655317 406371747 791769408 934032271 789452486 366643467 763660684 396178751 584808406 450127620 748397693 387839765 981115239 78905277 104713957 406057868 211994875 310313789 42567673 396056597 697126483 291036824 193638548 495890632 130849238 303424268 925394251 728935363 62234036 254791586 528492062 673209123 584899805 143852377 45344884 595567265 779409925 681588115 236510806 597954981 343841198 381880100 24907298 132747257 325025869 978393993 803880569 374417169 671372180 599955793 10349708 254069503 98192307 581716267 822582809 51432446 522155491 406954825 398142519 802434806 367799811 311412558 531386530 165437391 836825719 834734285 947277338 558115872 414133161 161956202 643435748 86779122 858953582 22323053 624054891 670731029 26627159 595883858 672880826 192215887 19414144 806777506 601438939 460904035 629261909 489921465 261874674 12942591 781508368 538749583 771653844 777978634 468530554 151848156 426066646 350260417 662746827 540830672 75571153 190390398 930898591 197528978 197822478 965247908 806522537 167587206 921027153 565712676 640311379 964599987 10536486 318078752 849357902 667627228 851014676 857975962 701713350 483813641 121061927 770227114 810418082 416809098 762973902 86336831 746983672 749524345 784638915 186367335 264361538 585032239 482720650 464883275 581752090 295336810 716313042 394760624 707198050 84133848 5737347 507282943 320192297 343957582 202729529 770830378 997121291 624445185 432848105 261422049 249214420 605927432 620692182 387284588 466015184 664225874 426283976 781480318 405588008 239059844 689070187 595708103 801911192 324043589 644041408 241983898 64980105 740493143 895544643 672159270 340105046 543156559 709622282 395847259 826301902 900101261 344143000 169428183 853838715 280718612 97559669 304109165 296763750 951209362 58340890 493543196 469878966 899160480 788548738 778282235 280807528 968099643 678937825 395254262 590719208 299929453 247347703 462124613 187857534 318072012 127123619 906836811 239888120 924486141 602999843 351029122 100025880 599545848 786472107 479986172 130155799 23360820 783305570 286427940 244173484 440754298 552429504 312124579 360763466 610274664 668115885 99332182 452246048 358794266 422861248 376866949 757721911 966635130 183935363 142126582 745812062 717392366 626008738 988109545 38372446 297904291 153762273 242990165 497284328 523552147 403529504 148554326 41679189 85013785 988163022 783362204 518325602 734688488 264148280 192697451 975201776 757848237 469259094 8574405 852850386 936107887 761284754 480335258 158119033 801219836 849778570 473359673 422004904 257563088 506114167 39795624 922330570 503154131 585203464 252891735 837497924 780930154 540688668 168575935 225497885 683665570 472317200 754534700 405718066 184103964 130597709 302004247 231054155 97964708 939251900 637115869 558756376 958693249 467551554 453529080 18996762 625653260 579049631 210951122 307597315 85220261 717945974 126430573 274396616 905543471 699487516 23924955 355424825 503877849 706395250 671694376 513339322 313822824 703147059 690293178 540656223 895140056 706672068 863339037 270830749 180697502 435787261 535008977 360674174 537350293 40971179 851299694 765630620 876419485 420290022 327269074 855542573 505058820 323373454 767922718 267092761 153828214 951908468 592425079 879739757 220439253 869456568 26558480 936248864 744407950 761716332 360194936 129766157 403232422 96075086 275806777 897824757 783457474 993762565 118841327 704616064 167490956 932496982 492298097 617087339 536730106 673837762 347959086 405783073 139022142 322399031 822281334 417761186 915960568 447004877 670176097 50820028 202967281 336703540 1648557 200138891 295283555 303856926 362005467 693944431 762455414 953884448 457857391 866725338 657020271 920125773 973809821 959656564 894335933 977243077 951887382 476219206 149127412 969580835 289791585 902269914 8110661 779787607 161765847 154240441 63243534 666424335 203615716 237069807 680198535 994782288 770729832 647084121 793053953 176514943 429723728 518181618 10012389 26815286 800663908 810749897 291490389 729365047 762427394 119922368 693744887 286157643 935999245 557891651 554249975 842798766 395441385 388809016 66920894 332234019 172265154 215783754 563023297 756264497 968853198 393527135 125083198 4801552 965771725 951907840 914242169 154716642 792355934 185942584 383657354 307659048 284362887 674692688 52792598 176868539 309687191 877306361 266847461 94798131 882722696 913137761 991140248 430647980 673554027 5748836 886898815 898559717 120232624 647856772 855754697 721112345 309990974 770925005 924998256 367831060 545188923 335750617 866585000 602432476 324479496 963983782 756586746 632590547 984001317 428388009 40046018 9919479 753087940 604484114 30497525 424878361 374029831 779834019 424002995 521852066 306958692 469743230 240170532 68019807 202005149 945136017 730915674 434282466 868037784 921553530 546611452 800131429 409178186 543187882 472029534 834675170 831531402 13677257 158353901 163821895 266867667 639179095 297728202 179436418 842392463 624054525 789893849 679313334 931938379 665323887 225479436 993412949 19862533 308061693 132354219 560349187 279517004 406991430 857732123 989167164 431477849 50954315 948620405 958806005 827997173 476089879 512665497 585822069 632744508 999201668 588906265 789356048 634550154 155010803 418562437 192741155 356838287 507066271 709809174 876364240 30215665 379288000 815459993 775971638 395599839 787391975 903031989 661270655 296740967 417030984 225441417 517964608 297689873 935614237 599565406 572319955 65655477 677955680 214953769 65468691 322210537 99894168 351369067 21669286 818762993 482664104 220400485 770530097 292088753 39334921 80052444 580847623 819198333 630298540 456960039 529646622 425853743 156697216 825799667 263201396 926852416 841830615 104382497 776820941 869941082 934572184 889795199 183719303 635127815 667627646 893313252 386496270 350919663 685483014 394501300 930259481 145022406 785351326 208155201 998507587 317858783 339660784 880714204 889909403 577253312 888495463 908425348 133518020 267648118 603021656 820562531 13684112 827386624 357540178 311378463 625961551 93397804 840002252 664671192 400661207 244988924 682895374 527994749 549258848 890195128 553331487 494141618 154444422 190043173 244799236 384323749 126808692 654224912 126276050 380685421 653354866 751478855 535310221 133100882 514742456 532909729 56282120 389213750 265803797 936769395 297248732 239648114 588025582 610641587 89718027 91414878 875543198 926101555 442545918 169589018 373614030 367009762 170937838 355655040 907475435 26170082 857150209 792598795 964427155 680028078 108684493 784818034 430788137 683491885 485097716 949774341 474278223 552120757 939910577 926696405 845699533 181687631 877755549 46391186 963013628 920650145 104284872 288327882 698189855 671416635 433745015 99124313 556958451 342714782 921717296 16785598 561612737 237743448 467340941 773734215 117353241 485758418 663356094 35490486 420163611 244156740 560186862 248667642 267930818 144293628 736288204 995489646 91599495 328236381 568711160 579468986 407328990 254529502 916964258 631544044 532799560 931945847 167376253 330299698 93164081 889705141 428461340 232930806 596263987 856698396 782280927 185843443 443127993 733280564 512677441 728818399 49478367 28179872 509396859 356192912 214148658 113547238 557500848 115639713 341243322 148203838 129529057 485285643 307854489 907609785 256641637 442668565 785713398 823602286 716506947 416858237 776495118 228436674 979223049 873699135 841146061 372129598 75879819 951489592 548367714 660776245 947584209 12612942 13430167 231571695 563829672 513192747 181079883 189483300 333573336 178331370 411939977 805945893 329266669 510709253 953550141 873768054 809794751 355909713 363831857 817956773 971652990 920252248 532732029 697892299 264075347 281204783 374608007 518856297 885943709 379088932 900669647 53536210 899881249 726174202 578537378 681699899 735637956 748246487 429228980 730905168 880546303 20919410 827535500 233521047 435162107 752664373 67674775 754508730 725138040 500186115 258374907 309385510 435587469 955617227 762250490 131918591 534975179 919500276 724244207 261896596 86913307 352643437 823184266 782080768 622358423 276774418 136638329 119480435 356855918 282256624 652653214 562559288 686673287 86546189 44350081 977714851 896791742 349802471 524607911 499322921 44254465 302953653 161604417 3879772 681451556 53972955 881588895 646647121 370497901 666048965 210065652 773083095 364502850 275654092 383411198 352980341 156294806 17078740 181488052 671258939 863411072 240067039 205060522 286215691 382665583 248119711 990657564 642112622 96646356 777045106 986458384 13118543 564752945 328284483 219880715 142394110 71630855 230878089 857124971 557707525 893781636 232177576 133230355 789929085 287120522 989474530 626786045 110589933 698302217 493440657 263256751 638076458 301612390 293483379 976154275 707777216 709737068 70980927 962137577 129640853 415647946 580138413 494595479 560749555 900983883 998353901 75473896 823184203 485547008 228936099 344927349 731883815 105209293 85771619 929027818 986713334 583932341 997891617 511126692 213596054 869748551 363693864 362931670 255467745 902086638 949965048 943275711 363759523 542895176 574607429 322932980 285335209 767256011 878816842 325321635 952122782 300132406 993877625 181273487 110542782 837883349 908662041 201431382 293429717 112848702 457610080 308955138 848337801 193637506 554982796 305857567 744597516 833418485 973005999 330000588 579746153 666228466 64466291 884826947 64755869 435529196 254276944 316588319 816677546 363160150 784197748 354871078 473258841 788884558 58484779 966421141 993205687 668029693 395680832 181599837 833891885 433625409 951623525 225077277 830925993 128301491 607732333 714013080 414726603 383809901 400179003 336514377 348057369 173519759 381651466 764011694 543336317 301962201 176200409 64904862 510482182 273246989 413310717 793000694 169989786 510813355 476516018 653588387 621418494 661037016 618972445 210259099 64690533 818122776 141500261 316498917 675145390 306363064 112700198 695524880 134975172 775954181 247538347 343059313 173915777 246032551 8453924 379044769 701393822 642139387 340184220 623530512 735485891 783662817 588302912 867782649 906448028 727727756 121289140 369950831 954151744 13514566 159258371 363322230 238626949 803799325 984969329 387064753 678095433 448887846 881691681 63917529 940708668 25916406 828215637 470407342 930027928 910520467 978605981 876339916 315857402 202313230 421319657 953696983 604293174 616649528 32428476 623055736 323054139 22605755 959530216 815985043 473181679 796373977 700762038 772981949 590707783 100510399 324997872 429936161 324198931 153870471 933842937 251872997 392383035 550994682 553446430 786284348 153532798 838067809 415604256 851006336 393032702 618205776 831079158 647365684 859155269 626557171 496540481 139456118 899636716 980402544 988802111 186505122 88287199 573594855 726344266 160180824 323811922 366048624 25034572 751390495 410737999 245713452 735816786 828577866 531385104 905281318 587783595 201397359 570357539 798170908 837942832 471304822 740062385 598272268 808671978 289273228 572972806 937351420 832662643 806533549 449912893 556535428 938363958 57832114 887214341 901726341 523727696 932555209 212418299 33447561 989632342 167361737 535488311 964175804 743635121 505456815 427318068 574635310 584254822 43071934 867484955 579552992 576991346 813174470 272334712 611976699 807853556 532323747 877941189 672383936 964478222 138302016 543636386 657387759 985816611 446752854 959122854 51099428 155148773 683663467 805994527 455511436 460391724 568437201 100783280 738125621 230438094 655349802 536729165 840065236 409642916 479141397 672965774 711070127 108776980 827259589 244884443 660983059 901992312 437364141 397802698 332076685 29285913 105269165 809068105 326090989 771804656 702903441 328265544 433898028 613566999 779690225 732490288 27025221 889186502 736598708 317485357 639761438 119728922 578827736 829837099 594498012 334959037 36788292 492119337 277334252 856878177 589006514 890183551 928850462 461294052 466379523 716735246 901371712 112651945 155557127 239152200 714564905 91364187 334235348 922226776 520363469 250602819 557906288 804419493 396790030 150213798 268545181 388251761 605815923 463837443 673709409 778151909 953071397 794952582 932931809 64677727 8363268 67211094 165683312 510987622 589320781 789871777 949517098 509622731 153242337 874073314 536439149 10697426 87297519 136890624 512580925 417075346 874346161 659658295 864594979 817041967 391980369 882332482 23392020 319500215 927803361 369873532 948344451 929240808 24264072 298374397 486241868 590082955 686455416 740579555 790028751 41271353 724354739 684654024 562072170 39370035 466004137 311679608 662411972 462814794 831439835 835602370 935802120 309424318 888024920 247260810 768218914 169659242 111079587 729688025 111172545 539709366 887194917 682666033 725559524 646888535 787121483 39858202 33384974 719633311 848686253 381579632 983601481 602446340 25175022 938322390 530317706 598464390 134856268 152932042 166327919 960554718 525826963 623305706 118009614 446158828 584937201 63841173 140748069 891019106 39715176 232618321 899178705 10164644 988413647 731279788 416906613 115841256 23532247 288409698 430924622 858460824 254557064 92720369 322677814 372545393 277664461 511701310 271921953 285692974 607169074 940251214 840207566 626469063 676901679 133197274 798605997 478641163 831543191 808624475 116835324 244690269 633453849 630103909 590281652 248356007 277901436 303217672 32253967 90759199 148454684 344576176 706057358 478822685 398058251 166495841 555230305 912429069 531520484 672458835 912486316 977418337 610522837 974833736 952441035 22228270 697666421 112761614 519577072 827585820 842510375 950472921 124344705 91466954 566125695 42247085 908356335 94295175 452898415 697906641 940354129 306669076 735845488 65114253 961299898 642259968 48236065 947940243 548756526 709337933 333860414 577164657 333338348 519881451 610943358 873968259 808208795 718743612 940789134 574819789 99041002 424379587 128158562 688150039 77634484 616681361 725923494 74392293 21568866 271648954 874604394 196205365 98631305 278845315 678233994 279997882 580086 678076959 653920190 896262153 263488727 117563492 478487065 474595622 869157879 25873512 732055441 221239797 390106014 627241164 128029347 627851554 853394299 743048779 886869009 532777509 474497049 43208472 189495676 676766107 428988464 412964249 500934436 263671210 53595363 30051356 813537693 103280269 77057402 918992921 627033426 748587018 771383924 241318911 657823912 478058972 69676323 177264371 844995599 693492212 74805321 151339831 265636914 832864018 967195530 772825379 832993312 784074208 716371786 298976967 382842117 320412087 417842643 840889678 695586615 305139164 386992127 660740874 285500759 686382077 196955479 259167213 398208385 413151690 269586027 833044681 347585781 730783185 343852326 54284689 773638246 409617521 722154757 703522271 495040758 73325398 609529010 27981295 609827678 129714724 103632514 795830632 239741337 107368831 157329661 966317349 12561127 740001050 25558136 428983083 58608009 743305560 293024103 901885362 436314793 923470086 993675801 587272096 658880729 292175540 308621434 890118033 550082519 862598250 593354511 319891608 556875095 424426887 137480281 563478043 240107342 907327717 106000410 438745282 180201507 111967713 975754769 257060385 487864876 726557632 810381214 896613066 123530951 8793968 962679098 268352657 116099771 119481589 657682950 159499901 714056756 536009364 929041936 409111154 61666226 665614801 142151321 499473301 691701403 409990197 350473945 840032977 700607604 525648276 802919201 570693371 318816603 118316239 998269865 714968124 258390790 731087650 26469281 21022904 144705746 123846721 544631405 853321256 960622036 358494528 349905544 353259355 418154379 696947569 932166423 329312571 337913332 93251703 844312099 100909369 444957674 829625809 330116033 260299247 262371316 576530077 334359230 679588526 265485648 847182192 427858347 490558218 204827198 271705361 845187557 258178303 435165707 507857232 25183062 439142990 826804242 350544766 806378735 741328870 941459879 30801160 959111198 279150811 851031013 941264996 902308911 267036932 195379061 117047127 147538369 305180059 515066456 907940284 64213202 322625532 89728708 115792429 377574513 534813250 185316018 409804414 228648308 209837666 259340929 720822558 815630850 691769090 974619118 993700949 435723260 925713377 409272006 331968350 453604735 838739331 457460894 534843028 274849884 520364396 309941276 156809080 730251709 615505765 335777781 190786852 416264766 523305398 380867006 555318461 112461737 36327869 241461683 400088769 927801890 197585008 647807476 669311113 423986076 44727339 895553351 624608599 810602972 918403922 147626597 110265229 637932790 14195005 858166964 583643370 988209131 977393546 473169541 738963256 475357896 663674116 475657024 39527903 295811836 255963670 608561630 301632910 377144546 39598753 758221388 435260779 713727764 25988689 185338993 128943867 776581434 540290181 277190670 575719136 890349312 185065190 134812084 129218948 623776290 958834392 376167661 809962671 976936794 957131671 362937002 211830285 302488593 912621143 268088141 184306149 1908460 55474808 500499924 29700600 626505793 3868057 186670313 712331054 757822693 900574917 190003033 125406163 148460864 408861978 537526238 627669895 383778282 871030868 49782023 849008669 80440076 208154365 117209896 660453570 825054882 318287490 941832213 748170850 238708888 480038663 8468591 942273670 444585506 783293316 299234066 315062976 925393666 616667047 398255402 516123692 364378628 138787165 385402111 474838162 964760672 4949446 360333328 616973684 372434571 739684893 804993875 270753627 830231401 661691831 409363890 934434322 279223581 717786132 216146561 658432371 342210086 784680909 670123456 796838635 608422510 919404617 322720138 922333426 545418674 841787554 191703199 58157836 399642182 534692953 4708521 25768991 8832548 841265224 573628141 697477533 279470170 99981081 253878710 739338440 903095154 684737096 622703663 247488268 873290021 269106457 975852056 800340364 787798908 631531071 633369106 546735121 524350514 468817664 923826578 190057401 203299014 605744961 96396199 481144791 304742443 339454439 34298734 240229982 600294245 648534954 267463481 687031472 215515053 904620349 970380620 247567616 382464219 97279035 576621402 999038726 568968316 757952228 826086649 748095791 488985977 814285794 235653658 482538592 34794718 785008527 48056684 14399621 410540392 571992159 346255655 817461265 58950665 133432575 519320574 808387991 485591156 359173584 982061546 234016776 49302232 562354999 133813273 661136778 512013319 782824778 342186719 17518993 967940366 982414000 455861556 744693032 462772576 402435446 669272975 601245334 384766206 396215415 201903467 805532365 493353106 352241203 395514509 508714974 162390925 631714737 395881735 499151648 219670634 898120187 206514369 658411694 978180120 718625370 916058113 111444910 530757926 839717777 313642733 640332682 627874506 767220509 83883054 253987807 170252948 129603304 84303070 335789425 531133531 335541688 761995211 386199155 768467308 575126274 302833492 112007290 666004629 465800746 83447415 816936 441049564 408035464 73816507 380342667 403611558 797864884 624191784 641157433 44476300 205636251 996789534 792801779 326378988 69934548 967151920 632928068 458800737 146773303 80624059 443637891 33030031 997561651 944785537 43440365 494529364 896751254 596960224 214570449 351355773 615362948 329714404 583976990 865948624 681362858 677846245 962654170 735500507 959859457 222468050 734971984 896613370 705510707 837659247 14225197 203372430 289165784 155713767 41057403 976949985 606282157 104281330 8398019 647306383 286399362 104703936 255347287 552172980 711785922 324630854 250076085 345277185 421993940 575120875 480138958 968486351 7465196 853965430 185854879 155437864 675509619 186385081 234064793 130230468 88125027 668899615 237613670 948109118 337977377 38764613 289047154 118709591 250870353 699710104 537206931 851001153 710825298 909508248 362468839 326369555 782433601 759253106 920362225 418841535 625905996 916701106 688913318 244947362 644488074 196734568 464438518 619847822 169500182 207032367 631897316 183973220 819845998 159164763 343837511 906479422 672819168 705728790 970429413 584516426 752882798 507801608 189358814 5781561 587127495 446494835 610650044 94952552 571065760 969328417 431729177 461466832 315551233 504915934 730003372 979678908 888999068 782709122 449985759 466327713 444657969 131386435 552646260 950942019 313174622 670298346 271853067 502229423 118073059 944684389 389237804 349222777 21007496 292561775 502356022 286142918 86185109 156254996 44702075 327460663 930630746 290731944 370500649 518879850 459763273 356905827 744803051 738153255 257775049 278535853 690021972 883919748 78222686 376797447 72810724 73948983 860348798 774867803 955307648 764826985 974545657 601980275 190304230 53862175 225590017 686554820 407004193 907603394 900956793 741515268 20337700 896710616 831509890 749673519 270320784 321975479 503799940 795175580 455119053 764326623 472334754 732151563 838556104 540088542 323440424 403981102 897960855 346152254 399893399 491025367 607348792 893219830 840372079 383980661 699865411 160556138 522245951 82322715 80352767 527048024 260279515 460001290 725700375 555043402 320470624 490515101 483436719 726503118 436375845 900614302 146204316 870946988 821334694 688615221 134487583 739420401 975293979 186406973 119539721 201114106 71529313 341179856 269552016 433760667 636135541 79843224 902558631 741268173 946631930 373307861 52380176 314097218 268811176 917648932 934696212 64180035 888377299 571943718 432283539 203523865 944839434 746403455 288622792 342786341 73179782 330840485 771143091 781222270 746626136 106803914 253515902 756492794 532447907 881211605 770731474 412033497 743438996 338574968 247226243 891931816 489509175 267593785 786486750 653239407 67720037 520521572 745825105 633653036 277705096 318885095 223194788 556052659 281965569 94286145 102545492 661962244 168141399 343930613 702313194 390145983 136859238 12694183 956301083 357180280 838452374 647512320 406911876 534786693 476434407 403857887 321215611 569804186 105084717 46253468 425531576 338234961 29354620 267777205 373598878 486908248 825241843 39950865 493358399 427230386 771538564 595964531 644473033 882693878 825724266 564405757 998985835 101186745 126131096 985231352 402703012 225463052 769768129 885024538 166557078 14635275 290496875 424162144 365971976 19069444 458470189 20793013 423831446 215662827 810450071 773533835 509696134 688833332 576479462 282982335 297941252 74470199 954548595 697147940 213878933 236374372 902809711 21608111 73197576 217573008 156964781 231401296 764716979 730969591 763579175 449983276 956267277 724324730 839123538 576534524 986227384 234970840 490480630 72125385 970568979 773443714 91678271 938347203 148501745 562845489 102404118 959871620 831980247 836522950 468704625 907833030 429210623 247997861 722172983 617425703 650416979 300273438 693248239 722911500 922855901 378412115 377484429 134669144 715301471 388722674 384631668 179799287 697621324 202842152 905419241 690958103 522910262 168767384 427393354 779288206 601416645 747549258 110554183 392448192 661850258 650235971 901617289 428220265 563560840 495544458 591164762 996362484 387927793 727153768 37898390 358661213 147575166 217601125 21944015 330273621 189868625 563939022 496097116 127560742 234930458 855225744 695049386 903233187 287025417 524026879 68900705 874898751 330353019 904441294 365762090 731682088 464028739 637328264 187485826 858095663 243213207 193014760 648398334 167114673 409297932 255328840 367643455 781790016 86331492 76944796 641537287 416994981 678352836 195331564 857158908 629052859 264300123 240604674 229996914 73070536 672292520 259005249 982199990 75321634 880650759 872956657 446688492 196658987 345328745 555809824 905537734 112302021 251872102 959407951 799900976 761688098 201490110 17393258 649199414 410430931 130270849 647437121 795361036 327738481 352886316 764085473 970367022 186822941 590285858 897529792 647758312 428782660 826279313 522241499 734926569 749363577 691582605 900253856 91076007 796688470 960394947 941498207 17327985 936954369 444391340 849400903 998481578 698537727 354835864 380368807 432466138 601235985 536715847 815635471 391332146 88090446 12376140 773274493 278385821 835317303 655446291 347055704 254147928 639690838 948459377 516156412 533166632 397067294 393673627 483060072 465075200 503719434 267971675 485897405 132572011 860224458 539380146 966819460 293240238 348771382 497718086 620723409 797098251 406451092 938742678 220397647 320100152 4719680 534942280 757668939 783509823 776061958 844515195 541778032 993891721 497173331 479612736 992699860 337856987 827747376 132358672 734152073 486078043 788526808 573684493 88318826 901741984 683064772 317069423 975435032 643401085 855937133 97458745 116035146 365457904 927874135 912131585 378734552 970802375 521434345 431018071 854749211 822584275 842205493 748219391 257973618 450444983 763196016 213706238 98694009 992640396 833037924 359416642 925140727 90019637 532463885 844003220 762144452 72443533 180600110 298404495 602007990 780005701 710587145 18127084 213785017 653086338 352105621 801310189 441128495 309241965 533404721 788566066 309045942 573333764 652901685 77875718 960070606 810126464 771666223 363531626 979284299 122742456 151685236 105304278 156344766 414410346 919309354 357143615 874063754 216118789 207262927 669562529 627490359 651000951 787272835 243543581 392922004 830462000 133435332 233644514 745653198 760722794 519893756 78027553 621641897 625969539 599747646 919322421 284832494 455534311 198640689 190433617 340033133 683937184 861636245 428083602 398843866 445460268 419019808 359522739 420431925 868041346 492052167 661894212 225809445 73169040 464650815 520338196 734000819 239405680 284732146 370434728 544069222 169875006 224183919 211571250 126936136 417249436 507743863 869337039 467389744 286135308 281523800 552953276 4768581 295550866 525709033 650428053 116269148 774308052 222847349 977799995 238502854 448421249 877913465 183786057 473789943 239216069 741273838 519907848 472046615 303900003 722586728 733122279 994723738 749458282 533227962 950705397 524726205 609967594 985641173 42914360 980537505 506236547 373836312 817749990 545609071 450426978 720669015 347866513 145499323 659068339 795466304 327147504 417748739 110064846 176953552 981999357 41043001 718639084 329409129 585543328 89074806 129069421 405677289 882559753 464769266 883736167 882414661 207964745 698761017 174919455 990040834 394181171 969860310 97506336 705100615 559391777 814059911 83531999 828328979 302903153 883791492 204857257 369447197 584492545 663194424 94108657 130870186 151128513 556292669 25290000 257243247 144455175 671493575 259278196 327115169 743523959 448737422 774736396 236069438 840033617 926389661 558797335 547887037 65333729 820692763 609305921 75473759 173089002 106521371 460712196 199233616 971745685 613527540 114493962 898329093 283700792 659032259 689014141 749763735 784850137 25514763 819820877 219367148 780205466 921858656 537602795 149977772 28233471 133068423 398521380 352016537 481460847 838293608 363340867 489195520 279168921 861914433 222551940 55700458 441614978 784094279 369440740 674884419 940816838 826227044 654581646 616125006 148905198 554133417 126396692 945403278 77072943 808127129 170382959 605711299 563272023 344430046 380617969 995412436 269326493 663211237 721985194 313970573 76994804 364688850 514934156 931270578 440483841 993630498 436842263 272426318 721935313 8990130 105668874 709590115 309815665 758648001 343851086 961184851 655276066 927898762 673081015 533790285 273053825 714752353 577765152 968409147 732738244 810584443 479099787 4504102 281653234 933132895 559057419 609140767 461707079 262328851 25859988 290061585 689991939 719259454 550287739 54922908 955217034 975251240 700395539 199600710 76789865 475047893 993423631 36796027 331134992 196722138 332351671 957857494 189810205 883758399 96945341 285564115 887973813 953558509 355251822 816603664 992267309 644297489 70642593 199947885 458093853 5105126 682553434 682489614 605018644 920258112 853113563 904454216 827537230 241840917 574049902 69836851 184799178 502480776 271357281 734713642 910880839 523077260 934455597 954674077 170087511 466940031 554271075 67585696 553220094 627535665 785220846 248534302 688122273 566550610 939555077 779881527 498450264 45136292 741868609 635299639 902600594 105496916 371631568 427583438 775969304 585406213 884852115 840811361 144710813 970424140 311579162 191311065 528633903 780780383 697644213 909788044 397052192 740436161 709648087 771259212 740999931 935750890 178097610 807406294 605129983 940022548 67163681 783793773 937322231 443774236 97275143 351314547 146581050 563132101 719209883 330914370 519670399 119125584 375257431 642824250 783566213 609772080 149955048 112314164 171348627 326314882 456950251 509609547 617443635 711483450 13279398 461572426 679339626 47957849 540293646 458611988 652315211 734928015 603906124 35777029 62901033 247834936 786607951 653605097 603424773 986343927 860659436 255795087 637860502 380349108 978552190 944605252 817540536 462791291 237827250 316349778 662449084 290498320 168695790 714166925 913404725 636141160 125936887 40170002 636481847 606600565 200262703 911814603 799891779 734811895 73539591 247615373 657114846 860525407 853960159 847203401 338495469 734757327 665744663 858207296 874008213 389650371 339410329 209311832 484634539 57524481 478888347 282920899 10933941 77815662 865965192 819287889 465262749 456919198 708344125 94915362 662360400 29315250 331815822 107629806 515397050 344207297 442692414 24185926 106340417 741083193 118297079 48556211 596582782 708062226 646126896 825792196 160623109 380572774 324522369 303861056 540845571 263040570 999027965 151211377 732150018 724619646 118242246 959028007 802532645 434255062 825976579 846342618 518653187 728558671 48924659 267178596 711936004 550138927 406013592 800471851 43065412 630030886 892811799 657874690 347641047 515174050 23349324 747898436 165040452 117201035 162702471 438315631 566025210 579263504 395485782 352756746 359982729 542738785 972097876 684998575 576109839 693608866 618197220 782989750 430425 612044170 883729837 541517084 882278496 385575514 825149370 570389278 205730301 614788664 694573780 856767781 589457915 448448314 186449207 423451320 499939879 281921161 962943790 927523151 360492778 917679575 981634156 847686697 166547977 915079381 946274711 559266933 864204786 13045880 418461411 74169787 196481417 473297578 146536507 962200294 591415392 932381324 366858001 39949061 965752661 645879245 852406663 378422799 389643792 879267086 66353786 725457236 18763788 78697360 80585945 484536223 404333774 368276510 952322193 972067247 409199911 333691171 281204435 698678915 108232572 652782078 353116418 662652140 165251491 710007295 245795424 53009592 850276339 163124214 214203264 991021931 518658895 744716368 157414139 354187678 976216495 814638573 544885045 76853593 237270322 970926819 543306270 211284660 846267240 242223228 683568969 112536429 316265510 506788710 985303917 466853878 685543553 710579856 957970669 605706579 900087570 314832018 273512320 302077306 276454906 882469764 740523480 33694044 339686849 122564810 15683086 959288430 759356732 733626665 999139755 942204644 512135276 982127626 973262903 472896546 632428575 995784356 409701622 982935738 104289524 825770122 628692630 986500274 570627189 239329341 927188060 913139640 652856554 260589082 123679994 747075788 7642491 339247675 659047274 109998504 806532136 435232930 836213282 921418735 304276545 286386376 444104684 165696663 357147959 36244745 29085478 118816663 572903261 20507730 871412799 895072337 943186399 781966131 521265639 772560269 151962402 728679921 942984215 279568152 519670417 720112381 848316329 14881632 748782383 932189308 173087782 448754536 93586013 334021238 462142427 343408498 723185665 491224030 556328803 630053546 491247276 385158840 666500518 5057435 736151919 459366885 31388139 774397702 408692117 592717904 123969255 153201681 572521352 539924458 964290685 194311687 622654348 723223159 434877791 235997232 391193141 619009882 701376372 476445911 452882753 612945510 843421162 602823843 594619989 110337169 629359857 308526978 872908370 993579703 726917470 322593018 111939979 994297342 987171702 97472135 62592631 401660085 683821820 644358165 323831705 454773959 515656674 791779057 135186329 867268117 527883956 475725494 803248681 335141132 102215336 975852014 362095473 433698829 596360714 313475468 414613698 427061780 248857570 763307033 124189787 642187998 384846610 774814116 722747059 827669936 310004343 994592678 469775651 404101038 725063065 392147181 693352010 678167996 615311332 339671970 633885720 3732616 665600450 364572204 77319310 799753924 580468643 839495677 553629545 943410295 560826223 35865882 272114075 690283342 333691868 396151616 818455920 70768102 946702462 702863157 597105368 867133484 352061566 565848173 547721838 878719602 303746212 473287461 481162244 710597580 614982595 984030096 14638473 508613234 307023542 283953849 395383203 543784116 911960164 610805353 792824806 161796531 405446604 261473913 869949234 320832513 474750283 26557065 298101606 281057408 733814134 32961427 5262468 733707472 985923679 654636036 969346704 214673416 894713918 603138356 82357532 799772358 958939842 139989366 402787494 312687696 228165004 160573995 182569907 617391713 972908561 967538399 751620366 154163274 465154900 229357509 703566571 156547560 229024316 868039507 472888711 43221236 162617088 873691753 548943566 129956035 283818974 228347535 241787924 63577364 200827845 634639595 986648171 923538579 146719287 163795174 96787362 997003463 346695382 780376482 973325178 221526066 152787838 501551082 76601624 570047706 605866110 474570611 800177898 571927214 659546350 296200507 625737855 584352575 341233183 923319818 466526190 122246307 990713120 58595710 271240829 739807 83030519 782877946 315061922 50037291 865427837 967359737 375341515 864776813 796859409 457707981 886603104 154538422 349132830 400161452 225506474 322474241 134844184 716321336 69044595 612764796 682570050 712238558 572849642 983363038 199085584 975489502 809136065 178177857 900413830 753588775 446821508 794900975 18151006 259013198 104242314 641707027 853216395 483924807 147608754 749764031 225341754 515423317 311537168 436667535 790499054 271152597 279396557 406822940 149616718 297784916 941613156 771869579 352924599 742079130 42215618 909842439 7385415 908438465 233953804 286508575 631398013 609337475 575955428 498347146 283231090 595552756 716322752 969557335 257459315 759006140 486942625 196240198 155685175 84296115 936178580 363732655 875672278 418145397 961613590 595500887 231110565 18624477 403406581 439263686 281951489 11243268 677134216 498210815 204401359 211777552 285112939 888637185 179794036 711054497 538007453 800300795 123463295 941712524 902308908 580520768 71016005 224392402 927536916 680496880 90956877 606910954 291593512 592912849 257686982 680926123 64852972 797832952 880441781 621643578 993826272 674293510 48275285 820796479 544140492 345788651 597149612 951563906 253287678 678799778 724495623 384643770 314992852 55808514 221840025 411965586 321809344 391032179 329579605 441142346 3951512 353924363 961732818 965894323 803213635 876754083 978712125 532664650 423063587 241895208 689920543 17276635 988634930 953100409 218646564 240728962 21270785 190045737 715272197 945082107 714200077 649379645 403747529 669847012 914642249 832932566 820862442 585256973 537682042 881274401 537460600 384469377 755721357 124699658 232482751 75494619 273869681 537183945 902568087 159276492 332959201 943302970 120444776 163131095 910541909 731135347 334095629 474420024 876215609 479258195 207148434 636859108 752075900 696022899 497449123 54858195 559919661 596405954 17281683 398029176 42277421 484905385 926322527 717218326 674647776 153920248 283180363 103626568 488559702 485890246 709505121 330424007 470922470 534238928 997664314 547045749 30581444 63229334 744519995 784320088 477993458 786569420 151748205 245505572 906435168 602342155 181222082 887407115 24510668 394248999 113572278 377977764 477551917 338775367 56153664 114898440 507067100 508371817 135972441 840956477 304525978 164085280 968684834 253003986 267920857 598352844 294772373 17924732 697223023 434706591 787269188 883600383 754008281 975139561 86454992 817397518 953334370 351215768 830545218 804860784 432571022 245561706 239469875 632905679 480536276 80220308 543917154 638364273 263708795 652778905 70604516 194387250 851649805 232402506 34835406 268310608 178827153 674646061 569982336 49912730 316894217 198983027 246016837 688367953 137249894 153418714 159319475 746585383 272465395 588849967 871245679 425727472 548402945 788375962 760095145 766798496 267705241 772140004 727910658 232182594 206483535 909259979 473822262 306676399 40741848 818975984 148214369 931553971 180213478 50076691 135672482 203602747 935853498 618631302 277973865 974240311 676870 92163370 940348369 733383637 56748533 211067207 458576266 665792009 726774210 214828308 576852477 253847801 660956815 432340834 104792145 440996561 504075638 256156122 483088409 775988165 871555068 800198745 313915164 219334145 377199900 619863797 243623765 53855666 880779728 834333337 799317784 728598496 422496372 619419610 386294618 650573475 52594281 137875479 455788068 33556500 83460560 875471904 87159143 714881223 860910310 39876799 813657438 947498894 938066384 89845373 898973820 697645197 639411347 953176103 749696789 428403569 147041491 90268788 553508418 89279733 742390682 518715327 31820807 626533903 421195779 680907074 949272323 877002498 313447863 489177943 306784223 831320714 733643964 27834954 748584588 362663036 143245706 623231311 35050249 400511754 695716107 705393894 987335253 361226264 395465677 619789308 978595865 336334232 612061183 553964748 821348083 748324098 857443463 595993213 168823044 974427101 425017363 198270944 144216809 220531376 283583082 957973096 187032203 309955974 210542346 733812444 62169590 524674119 234973159 125457563 741324370 526482938 731323435 340942509 324882860 165451953 356980550 372180652 730352320 638461944 735916490 419645317 68344157 487952935 858067608 938021443 446769017 32257777 891254884 774543475 925785996 976736302 583200831 497712529 935813361 508314409 818996385 66581063 949684605 972693585 441813725 738426443 225929131 256327202 908418703 890200219 995779978 296121236 924851774 864823231 151083497 928890711 854605720 318809513 331376530 138922012 552458006 293324113 638038049 188965282 549376610 359379344 428539506 980148233 607453833 49523892 908676231 298528010 99080959 179491483 258407147 690933202 789704164 336959187 735637514 735869620 144571661 940398953 963526412 584566468 995066066 264800442 46384890 822561673 888572713 800633352 769169823 388581205 920364987 928568805 397697968 386611461 668667611 801408130 366846023 237052529 753883069 331597705 643963455 118120319 676904155 716897199 756509296 262629890 220287771 237493633 262407503 130741011 285572847 578963511 833383478 572053154 986691327 147556815 35009471 917299745 892195249 741936805 457097962 701151516 281365684 239679142 278364306 649465565 258855890 386322462 230977014 670619646 926686431 975746322 722652827 64471376 112492691 21801776 131959139 550216350 648037652 345498216 970900093 159726771 778330038 919718291 942027058 988943969 760859198 864744176 147393412 229354837 605360971 846679928 634651870 945720033 615036616 744787453 296000367 408908509 487252871 893867503 576262206 17927006 495447884 245846902 940551530 165374367 125360708 211722051 132428080 6587403 786543972 449990197 351211385 290672245 769385926 211980513 208608462 261965364 347582427 858144275 616183658 535468274 367696674 392785698 58614120 667717007 30888592 671451910 300267959 592301961 1247194 723658546 376684058 714480583 426736886 487824358 968173848 26266547 599882821 913002501 959900591 642100491 323471541 784361953 640724634 423350487 801125911 810972630 188105664 961362637 479279176 693747430 258829049 480135425 750923842 715519125 367266214 158864250 155419391 614561239 655010682 275993215 346318623 769423179 642826376 869960571 232208819 462307156 404107241 523551780 851157401 476487840 738523928 807670328 231201663 376141048 497485194 97047042 85981966 609751740 569344429 40788133 10734162 618028164 39058553 979280678 149005841 113380558 192692624 298822613 245584883 616841980 962591444 837911574 651247345 887942390 161006990 247731408 653700647 522800197 630004026 986232077 525057276 664219314 744832089 810279649 641966000 951680139 699053463 408633683 848279252 140209801 484808923 339033232 103997632 42693486 791029270 766566103 42356445 437717206 372830174 728371819 260519650 233667424 639638402 998494257 567176537 64031701 370826375 150188615 712016195 292907829 165832468 891580925 812345989 222288351 694784914 702044064 251697042 34504027 673275047 41039725 839572719 11098652 978571407 300848062 910159158 72838576 417018136 71866966 237272182 657454748 237631771 303231142 713538946 357690026 587648325 478644250 462871035 544356023 47990034 528137846 482298791 960327672 483872121 686435672 303339208 914564677 931274565 971357748 951139177 431691443 31991725 452989772 732020505 229649818 714971387 716112928 273842839 939476518 803410382 244104714 516574795 996442183 550207886 750410409 639060100 138543845 580761991 241777282 649648981 965044126 310398897 739043651 869479299 955156795 169526712 184286196 810396103 147955709 137157900 703532736 913409123 438136014 326945651 336287015 505339673 174290243 825711876 445852780 92985630 827408263 96885473 610487003 911350959 840872836 10711317 925751616 420875575 794193571 477679674 759217846 705359972 38279459 257362430 276848513 850655456 386003273 900911830 111873587 114537696 675378297 775781599 870684756 820478949 483680996 641849804 615135270 132971953 560979886 896777484 956389946 134983475 82697039 64503477 537793375 441307203 569423821 684616340 676220713 958699860 926784373 604316763 273247553 351980977 975704092 555246758 773200289 680196928 362912218 719007177 327121029 11018968 254100492 80373605 970579236 585261293 877032741 687214196 752828922 1008106 939966393 344301025 126509625 62540228 591585177 257792864 377072045 702907666 790124249 610716960 734175404 906710571 881667451 421966528 263253163 877896552 809653671 794056667 944185149 28647109 840217450 303776085 148927880 278643201 789784477 864181694 967749130 652221233 558122967 88371143 254856371 816038321 511250231 63814260 515304337 636511908 6275692 176878563 497287664 309989777 623058598 430744876 137485609 246634785 434531844 134284631 770378563 758862569 362840284 961211206 285716413 986384187 20522613 328030752 306856384 413396117 993971026 292797923 621443423 278222116 947481305 741916886 67209709 466142242 716925943 981153799 273444426 751144706 524155973 648471184 269722084 955203272 270820379 275902066 552738605 289747569 730777988 659564115 201816982 302162847 241356653 254080045 163354178 608536400 326050822 465478513 289038098 515112866 321550504 822566573 50075768 710179824 404626754 198546938 315546206 759621799 588073220 242872982 343867263 620444348 463917640 952747783 389186120 535851152 466504968 736032729 944615048 583258382 133126070 984753127 735693180 923892805 766368311 693337136 971625453 251966779 716493319 404336025 145708929 946720903 717474974 237522467 795139492 999975582 966168002 973206455 211651024 851465707 304849292 448711573 945635498 55782150 369541330 724157836 881509426 77189936 377711652 834711132 72654659 302326933 625635488 202673310 111528563 601498259 395675149 557661118 641852331 787641867 76112210 470139644 893554804 753897710 4905980 81664786 148296281 658035687 550721014 333290332 910608188 870495670 463718916 968889324 954376083 670848745 402307939 202396262 801710584 27291638 753490138 744551281 725101188 852617912 45039486 153465265 369819738 281773181 565967395 795137684 817061421 888510777 420073448 58456908 830438472 457992909 690546980 720811729 528414036 755996068 784167387 225465313 180078474 389653663 180621144 570868030 188585388 430636130 286522495 271344115 798006578 988839108 404488759 826987691 700960580 73304692 683158260 563500322 370493188 366181841 570801172 563126411 4891953 251514803 436717862 492068261 639073517 264403158 482458918 371052033 963723396 47071261 781001307 244719954 136326199 171599678 844844164 85909501 940879546 333020328 871977776 582183162 291549181 567304269 430900257 749891701 244416605 242142394 338339179 947106104 837269027 662342086 602013247 648161272 719299443 654894977 380226479 211610529 880405074 211594817 12485887 162673598 779676985 263954119 511040993 208690593 524403474 586300802 264333958 118595269 254183811 965675926 527676447 709528205 63622208 571019851 329379285 189089452 199501156 551231326 926403935 743474876 229328512 498564382 983324053 664479548 544350043 513783566 201918641 110780441 616193784 126453376 929556987 934021618 948940635 538045227 467295163 16073665 795127317 801484832 325857246 49242312 278465231 192240268 403295496 662226546 392717851 206225678 952521101 394622498 82730545 529094609 14146210 616863286 260365517 844781764 859299729 837472462 814235999 42788287 685853115 606301165 719629724 327842038 831618155 221748680 264161463 430995294 823991439 164930115 574136978 351722166 312230407 744582662 445442949 812212527 260526361 380791100 383975423 727886028 845343048 485258612 314236202 473887134 329164370 238607185 236678906 37884064 862044552 574196733 857724959 334410279 361308638 245530460 151364844 479873714 728411921 317363523 510633205 315925523 619752835 60426705 770734532 418538625 70555555 840956158 318802448 3826413 58989968 975356643 226470237 418151092 618392014 736467821 583626585 102517467 492513282 613314525 489006907 478119136 586155121 602445507 643579933 395618502 31583882 570725150 731175447 518897792 551632016 634767916 235381730 658401671 875040812 612919984 972915527 982913187 632869208 318362700 339206934 732277602 693469058 397092257 628598455 157647283 712101594 702211439 746103820 221339112 209086866 367854659 922943233 576276029 902704172 418969409 522966654 323509713 161801556 74875850 912454037 482221376 805194097 74159525 218309943 494530585 852806900 322283879 465418614 609300255 37032931 643154406 561205412 905294925 604124797 74255228 746603148 634452902 346954425 991057815 754544439 343453634 827007057 242375719 819793471 417686452 547642011 669319551 205582377 508879012 79703017 155360685 618383889 620618941 43150812 512280414 711340455 476449240 707340146 995958754 58346851 6235131 142917488 440927286 402022102 241859903 461207362 428991031 183609928 697917940 898678571 414838394 618888613 342245205 62741592 709140809 362224955 79082700 494622524 696264271 1492089 590633374 482169344 139546488 581521861 207726726 75260308 72125439 681139561 149711964 385802376 577815799 334571571 611423954 881536635 799039687 81931040 128600606 139545710 890659539 167594965 101473459 807035976 193610852 606082772 284600431 516230685 226485920 609429410 867556095 638576970 627804488 650719375 956849475 692352126 158486493 214985267 664137401 952772247 567268197 672170197 962889390 80057661 171326558 527256639 328866203 229280461 401816616 502864991 291490714 69061972 530357153 914026758 756571365 612169159 555731679 63076283 956176086 854292265 243520362 704909576 648593685 163700599 849157984 425915119 652266277 93944723 272637195 371552264 695944691 511828721 920383636 594372288 491022065 485025060 250353104 404349985 825820230 352215371 315615576 820763310 151095836 37359711 281834937 402102826 437581628 185415104 154526606 107270782 460941598 686613259 415503791 410667391 993017043 48907314 152532625 747608152 303150098 606104384 407556681 382057626 568249044 427427804 782573848 996812515 602853133 384777948 68198950 481885491 332886290 84812250 84272084 969292694 339890171 191676 567881265 856161749 752660894 883131190 198908301 423288187 660005945 501738412 804193315 303498230 782633818 868552380 64443619 422129424 352471936 232040681 219741561 575016921 636404192 534072853 515862544 898172174 856045697 566531757 980639543 874518838 616710620 783860426 555140363 706861534 125537906 887536511 823684381 625610175 894837884 887007580 436927819 701519765 132721880 923101071 419389340 986616945 151001266 918504765 530676162 527685219 445693603 600946723 140112203 525748188 421329053 95401182 595463234 494239740 920200365 48522228 686866121 399622613 988848275 415974459 303665895 325860365 560463271 928190481 568832580 193674757 949622706 102252550 477867042 410716875 825099100 10261891 402973713 484374608 996117412 145201430 220686491 385287024 325664332 726907417 724526310 702869372 894721163 238087228 325463243 96063325 429312830 293369577 352281075 237653735 203413268 438405672 37673221 497781314 732084064 346595718 539380403 107001335 560023397 389067301 499199062 920885301 627061499 639047439 811423179 753684861 211695973 191215433 349088638 472195315 173913640 226015258 230134645 29451224 888736035 691504051 840654071 324439079 602889458 552189699 677496340 543855843 282297513 20206060 205459638 978127327 358389887 670945092 159263593 327232938 502399902 561187302 455246266 79374402 296675732 669253018 740433461 987696082 747470160 821989582 466840153 407998051 937012376 903460143 149725093 893451165 148660418 217511237 654005223 365988439 17626088 75843703 397571508 419928091 156140527 57616658 361427077 199458134 563337164 612638509 979658800 786274583 808970892 362756242 44806938 766895842 305757074 336069124 405126838 30429104 54063169 941616923 711681497 485838255 231367846 177737596 853740113 985516322 912071591 30204239 2628836 153342347 609444665 671551837 520355424 684847450 295046961 509030060 873746390 40979840 367710655 170066121 481083901 702226985 824256647 413872952 578627823 141013741 712090059 83060506 259023705 757143456 74928849 243587658 357624355 257400459 298538934 402880140 146200454 40533253 769182916 822432875 10158476 882309299 525382346 51714776 379570957 815423116 329355238 587081796 440609295 908096885 474824329 324067014 635200409 127042695 841198341 739787463 38707441 813512624 448422670 830658834 759321987 619150089 378874576 543195210 422755593 735726682 578240529 623156911 881820496 134545332 957022789 822961244 811125802 883645665 64050698 848754364 879744003 590114502 994763234 412120446 129471000 558964374 989401256 94805207 736843556 386954477 653930748 637412663 760782069 794557581 349579205 757322580 803060868 145715846 16184728 564563906 712945489 762740458 564991649 181807573 655340595 628299307 620336054 605773146 276677021 129123273 389565229 347990655 511286264 689058902 113408849 878596927 950816959 369425278 556028392 373455590 526596398 363597468 574136559 973494922 700812748 580386524 240063721 896973338 247384020 884468501 476603929 713819044 527923909 475364449 830495647 768217594 669098428 32966073 556081458 556912676 976781771 682669670 51165480 913233201 315119812 177034806 538463127 731610198 875821775 605720580 22553850 4379648 154631372 228491033 890823100 349746262 137828613 39447706 13308425 971641506 322150072 531700043 362172073 868719616 277050901 726814396 284368571 40910572 402190554 914890033 686651879 45494737 371862162 322070313 228188434 641808695 204895026 540276972 375502881 866999288 627571250 882593360 211513958 172503981 538827086 380600221 871868647 832621342 957895725 188044413 318921467 49535616 231432717 856240771 101112864 106839587 724669980 313267699 624441472 281902063 245124091 406877955 741443284 462783585 543143030 226825033 579674999 525213906 926486513 250441470 397711206 737781748 130248399 335411173 447985767 288052979 542206505 316872872 678432724 772167764 159430793 394665822 421946438 157566655 696401758 782435375 619541721 693001557 58765758 218035342 675546185 694687923 754932810 720150074 561181020 974279423 12640324 637966960 152898423 20374908 303354266 387101376 652005453 534350031 57065630 495010864 228817363 198043982 845353883 931769814 422326064 468611681 305356533 309729654 106973593 517899748 243039154 584300700 450962313 328327501 859813832 101873933 296124875 723690292 316853145 562529843 435951441 420805653 723866123 383999172 618096712 981359309 147216271 412508238 452386897 681347261 795526575 697065032 109297470 74619942 944296794 707445543 103596295 49865446 240703474 522475118 371840322 927143122 369158694 6616363 193073666 604387112 77907899 634822603 529567849 281183547 337438031 335050578 833974224 414357751 783575756 936813592 412648084 410137598 47474121 555871119 995367934 923854448 702952744 243463568 757656223 619058189 262519313 515877774 840397906 967076194 528923205 598948012 600296187 290191997 1026109 122079716 808072331 738126723 958876838 210996489 495823674 857483616 177178617 515905695 951475897 82645245 784746644 108958628 117244318 244463380 566173402 476912907 416995434 292029022 271974886 7452634 863474975 127759448 932527389 719013220 10031298 485426446 349277646 495335641 126664423 526435342 711633479 786045227 896686381 415080476 340315657 476806781 228873942 138913651 992096779 237748700 536768559 549079414 712164242 324174346 219117181 292557780 780531792 125738728 106438680 842210794 647414792 249342336 353808940 53329696 608787521 305535234 562465278 334104306 582267204 876954632 790224243 322035754 751814245 463253824 657531533 802558356 873050131 183920038 760926607 297110715 602848365 856466380 68087066 794656228 444754795 922059198 712795869 360226330 843576235 356199105 260914084 197029602 693905677 912815837 671827827 36591359 458711280 79128303 789077753 887830853 243570342 85837079 82129481 478054927 364701101 981203648 623264396 618428267 399658787 781211603 278687902 82297979 845346235 292531216 594635446 583918849 53103744 125931655 302050934 638914382 561395264 58148007 968744055 62836802 982794678 803623144 267306664 38484083 403441267 649208637 426550417 415146070 600393415 294225204 307299015 575914721 743048965 142473680 67201670 862980524 147989811 297862206 445260031 151352290 216679508 349675439 589323979 670103132 635358212 913278350 764985181 917456440 167018058 347274336 192786248 244295247 435317189 411742512 257323478 794614660 890350672 756127215 728660848 235387632 688859436 357236472 597460375 427625901 830134870 600507620 484271324 464191400 151607206 938424337 46433734 982720968 694180985 397633277 172014466 198262652 423828094 188841758 936901286 336598196 389136769 386199028 964209431 244561974 157844142 514830608 558828888 400270769 486102308 308163260 831791466 155023524 171570319 153256664 375642289 916038119 656329762 866769480 661103439 110598575 895236107 419345720 386148661 861915352 185886936 929255163 605922130 74892581 311598839 735830495 814031154 950218405 359689022 319216604 478332545 959363748 20552767 191643797 795187000 841574466 503532901 224708173 494127780 365119730 566524580 455480278 98238592 426856834 502162950 167061603 539692437 99889088 170395691 387349714 320935502 505869159 409130709 673680946 496044127 33780207 444275703 659394763 296774629 114629572 194390974 911241798 816604045 842902128 88802657 442718033 437774983 637732451 680950636 132289572 957837797 159882935 630998231 712218503 486773468 940249586 434213172 208002090 10864111 648015222 456630779 235401860 198918111 155621537 136387911 879130627 978242702 942290787 569896217 963858639 547738182 385681760 466413979 16127154 34972126 283084734 712474962 87917508 552896495 462815628 174546778 831880687 248691272 410079801 241651644 3710482 798432940 36898382 958775439 409274782 597574514 26259864 893459744 421573502 716550296 79941862 29217785 992725130 90066898 760565726 272620672 875800448 852401544 935727155 510342993 915684823 901324548 34953329 669165492 433743288 703810334 193906382 383324055 721837629 539629727 382574781 818427585 750769996 592309606 249670799 46538635 403886583 994732999 346526398 329635402 791332672 65692920 918056084 458668943 345876050 651719237 761672005 192181220 856418937 958664144 862019972 437735706 713411662 599724558 307884945 109548369 300403733 759415720 492870003 342768239 102500941 146787144 719123521 31037856 385745314 427288957 326477475 364494619 905209409 842930113 796461177 507380279 64775276 568810922 787505216 215785544 465293548 517992834 467053432 475886058 398990906 741968957 801961866 642686604 343704516 954771262 515706195 200108652 274263521 915438897 771907578 838514676 6862168 480751494 169611799 752825747 648831448 436624388 414539804 354484282 888736508 426286734 810422779 820119350 74732577 770066813 248538865 30788029 525267733 379436181 978510525 732448156 339614965 516559877 910879632 612911689 535943891 24308118 85098611 685452271 63276944 929323754 929195391 663879532 54128743 772168337 317313909 199603691 896767505 703100029 222460973 568083990 466547986 631083698 448707114 563343134 237102241 113019917 460440665 786752602 376179676 447300055 886627919 572510323 799891291 164064178 801108775 409865750 271343667 660945374 398009237 484987628 376606514 149529896 67739182 735977737 837520342 807657963 596848128 534301444 190060355 196004278 351783830 782561846 210206468 391013335 141654367 317705443 513380403 802842239 820985104 162468295 503968262 5149759 215933838 223938697 704482788 661460834 896021341 170446105 125798053 198330392 716681446 224837510 850620931 958193471 573731713 854010212 895907700 662049849 752495364 919175069 599259539 800993065 342994635 254807772 293698716 400669674 132151664 510869499 34778459 757334830 636322288 17046265 287701958 720803260 848217304 356908131 48134897 848985436 715284813 783083370 826349813 182662425 753137734 541559273 486443894 559022875 382156169 651625260 9340507 510087233 973042750 632837676 187704418 224931975 998766872 243367908 711074615 579204290 577435204 379012035 934387749 881126265 375322953 786353666 558254756 298439733 871254009 386602994 428144906 606785704 773023217 424717987 425061387 398968213 927402018 73430166 781790899 323512667 24244334 59754283 735536521 267894075 724497909 711175596 372697759 874983443 927068232 278913325 243037826 718571646 996222798 929815380 583502418 528914388 928493485 820543012 135796705 253909235 384015296 418627821 897498608 565220203 425475284 798041962 649963097 62096387 835162229 816893866 52884902 263926232 787870038 284668149 764240904 817557651 201959538 524982994 956017612 72637125 132168530 56748117 264573372 179239572 480631361 404704482 826855971 162878287 789628745 695329546 489470947 190499699 771328814 474896777 921383430 470247966 614889995 978693648 35631300 192106233 85190931 100305964 492528003 7459658 263168437 958126651 6251821 969220003 913153866 606486897 26531729 366648827 659883484 548085214 181482072 611159390 597866012 169241949 800583863 477364868 959010929 183396070 615722474 874847444 364291620 674522565 195154064 33587258 233499886 848798508 699410692 409573203 742515779 827897158 328261685 74032004 977238496 389338037 703894472 908589080 22652359 333559014 718589917 231286797 417674568 356985170 406445796 646224740 226389992 699171136 744819035 608435951 189044111 477291548 865138509 385917039 347623921 560609595 720204724 700074563 260326417 936199834 353034819 455390354 449557621 781492039 649085666 13288361 585326901 421237525 432498356 660557965 783940925 115148929 989672093 898097297 687443928 419563685 849288701 555677635 638893361 816207156 773239712 524383484 683201136 968320507 123109768 332834710 970102676 723394534 34750038 85128618 521246210 26480867 228125739 472653331 386968624 586907097 827191703 352764956 718669495 561344553 467556825 938628143 187408696 297456301 901064380 183892027 58450435 51075611 362540100 992715512 165876343 989367748 342734731 77952622 912859647 871731871 287699274 19320133 409921473 887731538 805628777 266484939 283649114 370638306 202639741 683719729 502345042 901947010 471115777 857544631 957744743 139339137 623895987 206503336 551362136 89938910 638384433 712756968 629954815 722976518 676075531 764118792 200524953 296280393 3123344 983343321 449452459 188494550 886709783 715774589 375629428 971335496 356403242 990249617 945948182 925413673 794615503 225091096 212968425 465698643 243030041 813941186 372779965 605153661 230174185 615283629 510730478 540828218 779077670 891506847 292707758 207452130 379105262 826469694 200656173 65561353 721813894 53582765 814217702 261807839 574252975 816844303 764333103 800526244 399354829 387483716 321745072 192572274 227953812 22403274 794999210 991757175 167375640 833569206 770868608 460931722 313224174 477339188 640350866 973942944 593716256 596754365 352805964 384867796 287728644 188653923 927672469 506133283 783913034 638038960 831154296 715152024 52604882 165252267 75708772 244229820 779490185 99740942 396518787 147835957 128405105 861281550 298651572 195658089 412567264 972735317 520200949 738566072 327728084 465931074 661074652 539962271 510744792 270481637 484452950 76754987 456815662 30658783 344369095 275793239 775087159 256877474 927234971 195955405 98499381 841466315 467193834 261818409 978390316 316287564 807685215 853412273 314372499 84461950 136260759 852160216 458388249 129963274 211552927 815545497 406700026 962804892 968297285 256906382 779230397 151769169 185965704 406949427 254568845 821377739 272249108 252180758 237369664 885913750 630643432 561234709 232438170 275975772 708366441 628863477 943488226 335971621 751317378 878641001 168888216 41555785 148173842 542665655 365017839 78782754 534489047 711001757 273185865 912453853 554262612 238772259 53128306 898793217 387424350 752506116 174356131 117960692 266867585 582199171 755330724 209821454 881079560 595051852 324420499 376716166 786855707 708379238 548168852 162844541 291780358 102930468 513008754 725616812 542461723 582739466 704991333 345579642 182455577 59842240 283138662 494337764 78016254 107222310 632093546 234659443 831982745 183028677 491765550 554454957 732409148 311604390 354332131 960402414 998668890 872777222 29112028 808750503 614283753 787199959 866737168 694240680 44464087 129804627 209236824 13232931 347516105 522140100 266936526 588410203 974610963 745059722 282705308 640995148 625537058 388956067 981152888 861279149 768593736 230955056 74419985 638197828 576457293 757180558 184899547 879420594 309185421 452982297 986594243 259703900 157758476 903809536 43502850 558688362 796178702 70066244 986736618 48980193 482089348 170365837 788844235 246756490 320372906 736079275 627393923 115079747 146034076 1972880 219630062 620809232 947421446 772794884 13683817 249961068 593145066 139882212 631011321 381801171 800226793 239495325 598395902 403039904 630007778 812568054 483908296 876609310 281023342 39941695 14057289 161396281 464056743 935057374 207542208 597721178 304373409 516635905 708742084 445768094 724020577 490819149 640272781 569134442 422176107 368600836 175789885 727368599 313779375 618682223 377741934 947725440 433096348 475739762 484307613 740456242 298384825 695302711 123060422 346418397 69648160 904812538 416125962 471927930 271403750 54105094 201382011 769594639 944802019 215246775 605736320 239642747 242106071 62350504 841527135 75281147 225378377 704440303 943530550 32357136 255988450 4262107 195613177 747355278 497459532 811924033 357510339 742510955 909537791 326858241 511002941 167211645 842778249 728176744 67156514 503640943 553745087 454972806 919842000 345399395 50966053 290398092 737618335 530796105 907576771 258064678 317345407 42344265 844805966 716903810 586197154 642819693 103761247 175761828 482222503 173871328 99439576 670320780 169446717 361624924 889965690 329296222 660848576 140128919 811859510 34812724 550466381 410336491 726705604 517842180 239675650 5911253 128722722 624846321 458432108 947656376 582312793 551681119 314624564 47439822 867418149 412790489 531287161 718498733 803699835 657334402 528513167 80821127 380093606 163446246 497656576 3937548 70363910 765229615 991868422 693514814 756250685 475625035 878188872 330030210 412855747 366465314 884709322 277955923 13284468 884840669 211396356 20838056 431286834 911405350 885651687 344581658 284686225 172770934 57928906 596349619 257423431 717033411 121411796 219225072 328725615 799731603 430575839 335341942 983476363 216732782 343882557 608156253 108116896 503563335 902074358 63535005 885626181 713658698 897855190 987516484 769957622 717986846 553730491 754024419 193036747 45264320 540965173 581465210 980592983 354398289 191538410 49242952 457302543 275293192 187671881 736791790 994269143 613003894 627299149 541344314 416928184 835817199 155359061 866208380 945937470 922940900 927356761 919223093 792734792 853391937 423214084 45863914 253102076 266939296 833483490 106839983 424077130 149066257 948808724 302646896 935885365 362204510 151235972 718842480 845317521 143579949 309425544 175155739 321571116 450931381 847381492 981147120 239898138 347037109 358003546 594397595 226200361 501537499 669387729 238073145 897564045 834147467 974820215 425798868 751903983 429691442 143014748 560710375 198935867 257665406 985301 804229905 882764775 427714174 647800194 795362529 300940400 780305221 476698263 554698536 177417778 803478499 768880353 117312568 531201265 482531398 926804699 861515894 509123629 678738449 398880617 301656445 920083706 274121951 950685288 536592234 403628795 879563621 510579697 351020337 179770062 155978238 50316228 40309261 179179284 46297494 856990366 42452960 18010756 227934854 231100867 550864442 564943768 40723739 406520026 760301011 82722986 515714473 284959820 231973900 973397963 33567948 943785230 79390991 813493873 961263197 696268437 950642931 744808609 758431381 424017763 884378199 287731416 3697503 880348242 751126219 838077272 367619516 799599490 215003535 552497436 213128725 676387575 490414817 949423602 446304942 872674227 822946230 281795945 974179918 507525687 958496199 736518711 437336741 797829927 599281531 21679334 336631646 384610409 657727726 565575265 623247156 884373085 857628939 292941943 926251758 929254341 995594174 636499205 826756731 909785293 858434671 904821455 90686281 213751769 775176511 810556538 795977522 821008844 616201310 650443602 56284909 452664577 279037081 174657529 807782951 558325376 949483891 837880871 721572389 795633913 818152491 345333268 793732372 93102083 250768530 490700527 133628983 960293204 476986108 694621007 505626190 865011991 827345082 950526820 370596396 932088354 19961503 301610208 992981880 958359273 122912646 536105780 850416687 117326189 57430682 59733010 409167660 246870655 763773487 270944288 986575431 863140722 322931969 912589284 147445909 786651918 455522797 851368872 481001755 161865608 570863201 646292675 660030494 844705795 224325587 806187606 424977464 985339548 5022978 461603693 631863247 232244202 604007369 703625071 156470043 53738310 522048734 444010791 530055475 26342612 966002093 955518543 78226813 338153553 980163038 908606094 388145097 517000837 596503381 596857687 210705192 607479483 558201032 163107428 703209976 262796296 63721519 497590778 970129152 285046190 779680415 189160891 780639080 687879569 532208863 888959063 55187693 9853462 563927416 359239334 699742060 337876385 532812088 909743136 453108859 847504534 26658156 125970144 224192343 279267280 266791789 151425427 796555935 722082861 83518527 790431891 875480241 325610791 785484247 713826772 190592483 185235819 289018855 423403993 31684428 895337696 761466846 723188297 533587127 168473290 718340227 842674491 22552681 789429439 23679359 986412105 250072779 844462794 290559989 161132197 240723693 598541978 360798782 278607671 78815486 714590711 456615842 385906585 393589604 184417608 504561345 661775651 956558059 381595314 551032761 466166880 890410107 32200246 865780863 627577062 660393461 6762559 272662690 612411501 683721213 894925057 132921580 129740229 618216378 406036860 324462149 53381547 295194257 109824871 23593418 883375983 947440706 13187856 109840309 762339505 213292304 234874090 417472083 23357254 21004776 695797461 287476120 81944356 363703815 837854283 20900695 206420291 586157343 553759139 542584734 842537315 253735872 361900287 240729227 124896186 716435590 333282383 996189228 272376697 688227662 167707612 903400822 409929119 590640809 894867027 913038818 825189246 812412451 348190422 566923765 671703662 275322447 786730994 617670413 61201114 138317407 420859706 441686288 745471382 658536316 484339028 423749370 307734820 651361260 830204409 503153954 217846399 805945694 101889760 710165411 255599870 19361954 285365336 120303891 240163363 449375744 573886213 878297523 241000976 55879571 372578478 969397429 269988610 10316554 15565947 481496834 760995956 499886068 591610195 244104862 555340957 676402226 963868487 503565970 516027314 964182495 783816819 985449760 206049367 345128405 578376768 365539721 298595726 873864326 27268281 925759555 881671964 820299037 403514432 404174117 709194715 600310945 457979560 397766932 901251493 109723663 928054247 640534125 707786473 887944482 967516211 979411081 807510478 821624494 789791950 221704500 603214419 166374150 658120612 776127310 272448324 17096679 769074286 947193654 247557386 825807711 446349951 148520955 321450300 853783739 686739625 721725146 713632951 59890260 861169759 693170811 526095532 423733552 106657368 124206429 822867037 824323118 896112754 849693807 930650406 920879769 770679444 159025784 368437133 586775673 255922584 168718959 916878150 740140794 780429925 667758622 967967610 201536959 49812789 625248241 786117333 445729145 114913274 485361549 155857538 801931329 855342701 177822131 314676274 42246645 127807298 58500111 915667886 566396150 8807658 264604882 535555219 48931018 973786926 612458072 550636015 701036965 972395240 978947893 785726975 423909052 272676537 538358151 674128320 570688416 704445387 403038286 160087038 737925624 77269768 804045819 374450793 45617749 691936538 497658331 722894773 126597238 268248387 973883400 979753076 501630711 328639980 294652622 741341923 400504521 185225617 686322493 382416137 77119330 932919795 803940768 483219334 325365360 796049677 782628890 488472409 413256217 819439570 211171889 979831642 752301566 828504094 98566306 839288143 194859945 191874226 240579283 877655206 50079963 293210606 562056912 396751147 67638350 629378989 878337911 161707940 798966024 28301065 849434882 261252439 510511653 372337513 464117110 996557370 421442666 381847773 385377277 811691984 382791435 533521190 86092665 151751784 77618011 980211965 692644956 159410481 827931825 85973347 244999916 150150803 413955678 513267510 185866644 573910784 341230093 51402425 41691538 683790226 358761120 565889813 935399286 990992408 870686669 841381231 212114520 593373051 635395944 951905 659597846 703970353 861097591 416498099 986678735 965385939 567207978 833448580 878022721 570805103 771193797 165276281 782055558 670960047 705171693 407902768 363149244 631904004 279652498 832852846 882160894 582505034 225994275 408674466 187613207 390149145 520410156 935261585 30955424 569775541 808937579 604280513 485444764 701604367 616596245 495774120 787772501 882689858 918409358 711906709 37526655 8537886 997050419 188866430 255842187 990211652 691148006 815108693 288386843 246068345 26356863 479462250 440984004 456658504 104258161 231435750 693189372 885137317 133044344 855060740 937388171 435202993 75021690 763484457 468195329 939867742 590282468 499467275 295696332 299362425 584067797 195630436 673118766 451425048 600639281 564778108 74872338 967823850 984469849 10060347 8957811 348703208 425794561 766072642 906946291 122327286 630209394 53648080 929370345 120955595 128097606 208114025 57431083 258578128 604406557 915080400 352949000 442548509 423803812 186961743 884848036 463294172 248046186 573432444 250740043 257253319 48594508 602592706 173409595 375353243 188348461 282765658 711044920 764742278 785605847 228203510 229441753 391129593 72483542 151656532 334489862 173190699 673048532 499097331 233833837 630879151 976401271 463717291 64044454 753629557 794423181 66258315 707315614 266811322 769474641 195559702 45498226 681645972 71561549 115420932 348562660 82957179 82476622 12422885 556711248 281856098 894318536 723771582 396134558 812085662 562344686 415899176 378986671 516179179 822644592 883957658 913638841 407827792 276535798 673275661 796176038 979330552 7859162 532092074 707140082 655193587 982116225 150228584 309512247 208057593 181170676 57064691 119049521 441733226 133798266 908729378 71130568 739337377 188249553 678018503 121836863 234765747 366676088 866052807 247874438 927974268 87839038 209954377 878634591 404278443 257194306 111807888 235849416 800546765 278880816 836942333 714153233 815549170 183666885 608470863 57709512 849404714 600922816 413126648 643948186 712697582 338339087 616878305 91926138 860116784 165103173 495387689 996444919 856289286 520780435 762337858 69607393 373900183 440230807 501632690 4087233 309996965 876270172 937896335 730678195 453096523 319193378 194744465 849315742 945887718 446587180 488890094 459298808 211154504 968615430 479379190 666497926 941022184 271344762 101604291 998958143 239200664 97430314 330649714 801206640 951309778 734380768 279182844 160058773 87018846 281983170 353243337 916094337 31747792 359189125 545876216 843788611 720248350 528020313 805133559 982769697 423449063 635966283 602930574 285954284 623302482 213793730 65017142 229993416 233828086 567177562 383971705 20748804 634633959 518954477 49298981 373892792 889696984 620102715 219036631 609740801 389857587 268501189 188404447 76816611 122067483 623095454 167009908 46615900 675467545 128380089 881343327 815451792 602997652 142377916 610157029 999901207 468822635 449672415 134332259 462553863 375747228 624525836 201886718 314742406 117159276 953393243 801287020 785620236 465940304 311925443 412312779 114984703 910262302 367375312 135694715 582510095 422690682 858062684 260942007 838032641 946336277 72019088 369858092 216719501 61512042 556118962 249501992 400009425 350602926 456036136 487301423 300118203 28348143 187000826 94804206 168978908 965984452 368175847 369143977 584868531 305991023 539739922 561164982 587842993 858518784 73599436 534548647 692218441 100748914 482337995 278414242 509063509 426731045 691791567 344089361 286629488 387875850 935518001 929616869 855077111 201260775 165846961 798735587 73503244 227855543 928228523 222465418 76857565 110712090 704940684 582653149 825698593 78624982 572312826 744875055 763701223 419769993 55220704 519659885 164928944 929391176 877129432 564146367 511902054 856268009 69953884 840351478 525676396 625940216 173149459 942175882 141273100 574364419 941697542 376646494 971198175 714106627 830767862 496232010 316854462 688804807 799265301 670105664 119116530 292435449 903291411 142585402 288341371 370928760 836527637 692795441 342657311 292295748 317895809 705340243 737736141 71525947 254569989 144979541 812486713 57662292 597238692 726639922 166576614 500314669 22194910 696860424 919394316 526362863 857669828 231662749 370992008 513771545 426013493 180619470 793124027 893780839 741718674 645370601 294367364 265812119 526911801 282584550 907581075 492219797 406940231 208051057 653354992 200583688 667804400 236764454 52356383 228077208 611651761 526762582 837146460 489936350 535982666 359607641 198653629 814239425 149448488 557487022 118879076 33804500 34108300 313388901 912671866 88367682 927693546 949448440 586967346 560754344 480307687 307339872 950133482 327509931 853422845 242980698 271618454 463692749 781854874 628811029 827634139 334394268 879403971 390306303 165437529 672712671 437224482 952534596 921470118 578773689 984164217 223785367 303827611 937343817 784151132 908419809 356940094 356478962 174221249 355588640 249132251 46552661 332353724 405870520 49170344 78140653 776758521 128183257 926658202 173690676 442805950 476638305 312898309 179589865 8762804 365064262 720005694 464596817 753716271 914904730 688258314 462313246 779625200 416267517 190938182 903003261 258406426 545943555 817448220 818207556 396196394 278888203 730176106 317010068 327278361 385603717 942566859 8546919 526419871 153265289 473577327 699918928 58189319 528260312 798617142 574529835 762640921 987391400 112974912 434119599 191816978 618474007 455401204 210584592 735753647 610798589 402069312 438718076 727598080 706015934 253647271 440435925 211659359 614473438 817479547 816654618 120595516 583022749 847114012 38849622 66048138 442474963 415530490 41151960 406707411 33468879 782089491 659629263 582262943 212210444 356541854 707523257 149093130 398409174 934253360 825963657 631331240 499700238 30742475 169943520 61770992 932574004 468460137 901543767 761345986 520537218 538605220 692139503 996204485 953356211 666438039 504037215 586356684 77471653 826677793 368962652 626683488 958712588 480043349 485311694 444652954 900741166 475184797 633233599 87200974 887700176 459850750 862537591 128907874 618207081 931164331 142293010 221670989 13644809 942306287 931841611 589308080 486186206 239955869 971683625 516695005 304488711 773497650 717537674 480670355 187572478 985451952 461266541 461152574 44230422 652787164 391481150 472559617 472351170 550551139 239481551 226285833 388996778 74345115 732474853 410802236 30835420 752056969 958869932 929276072 312030583 353580414 610527918 87205706 929260601 562608564 721380148 655768440 806906452 621931336 89767569 229009314 556009421 610482450 990030664 305523815 618738087 81674730 937829767 284958945 958026496 237424843 34801856 346711309 73074471 29275323 901954762 623622366 880882860 150636144 933752420 779748306 707808779 863687922 634536915 920812400 370784336 223867130 105640222 922424009 702945225 599597271 956186882 795831778 43280926 18008756 923201696 340654084 1034598 873450696 926914625 206812039 265462536 552907909 263733852 933212677 954739826 235141281 23590129 44319248 26513539 887800010 925782013 290634733 731673901 175670470 455964905 826044315 522931708 589949931 195407523 940209835 941660329 96500304 768223999 558267820 503998872 186947509 135184375 428514118 533224272 948363954 803015551 581634612 762066717 257088252 608424540 662957242 230824793 191446335 175338432 915313490 657535817 279450404 969892681 920426269 985076385 411203203 299268471 908258081 174934146 125942117 339348718 937991787 796698651 834719403 744167233 593408711 49742423 397662966 950527212 175753024 841082449 652231275 135507534 150007383 145329679 922736323 190271089 964426247 130719645 178367606 819427564 182474897 755167441 923050583 437368366 547525909 342967535 455866766 196522713 178547140 150330527 869381887 150345395 637488093 938092552 489373049 957484510 171674143 23359701 79702902 547535297 281615711 144840314 41536075 3455795 728332100 992681432 928121286 789958667 360393394 387349277 46394484 455960295 636687541 533160478 998161302 975199339 108880379 10905781 991821224 178529208 727575148 134921986 487205837 192406358 512354109 343026028 467745631 753876611 587766790 142791263 545547492 816905922 915606795 563122847 21287548 702911157 729480212 520115055 198703489 104121159 139108168 789305178 31945092 789920346 911513093 879765974 453624149 388167396 136100076 798866650 949097764 495102966 902706387 993403148 532828369 660032060 133569529 156433654 645199400 762933079 900289179 32916123 316138046 716268387 796264874 350578269 434701985 221692580 152464113 217372222 747656071 142085046 38225827 356127218 324322474 50613014 815779442 818659946 959401508 306563616 362463157 777596289 851413107 449684283 454526689 813841704 724713799 561599174 440653705 779609604 993934117 169439277 857462214 188406577 727694386 276038961 333464220 511134479 461354224 35046940 652564111 403391118 885038899 638677362 115464389 796348814 450187936 778535987 638315854 512920939 887874692 354121558 373367191 200182095 384526550 638394846 241084769 100896413 134513041 72769668 709845882 20183822 915440612 505774496 965792511 611961171 131738116 783232067 265782524 905416151 672578148 55792467 289798360 210988186 953142153 800567055 928056157 253763871 680077391 527960544 454128944 653829160 918202901 967939884 343417368 632620889 372591217 741740273 139298496 610762658 591230124 88858874 331231925 765089374 228402526 602836585 696749229 853690031 58304243 977222915 143664543 753943550 349899093 149046997 149913673 765536167 815127994 767864219 268388296 124258013 585898492 502406134 740711793 506281439 58621542 926259369 872072217 753998151 843204922 315750504 272665892 172081613 173705823 889763733 367317311 892037669 232912284 378060468 672170805 163402107 547342103 850711091 274306555 590320702 744450754 116832791 877048865 521865808 868511513 23515786 299233488 296799104 339995484 409202107 652860286 649575024 61095455 12409978 918051391 358237127 782119029 172716290 112479573 749402110 127543867 636638865 38617722 856192376 525605243 663317490 858624344 650923417 423993245 473536153 341143759 734578449 139333291 531457672 241989410 736999045 37984610 247906069 38786755 957712281 944447191 919646215 369374282 169172362 132320327 230310477 414134439 910560630 245569815 626616780 199029964 780372427 532590265 475215038 78654680 19477451 448472614 220099762 236815124 628885024 686440584 106814603 769067041 379404664 45969507 282166487 271357246 887307592 201973055 481972847 663203404 820983376 192123527 552423865 505391433 656609743 953111551 438879316 357782067 999781202 311288296 233526837 702739151 476459773 483754481 217981153 286223449 682599058 353304996 879572489 169494788 636312495 915402670 639224272 231689486 965158328 388069748 675974633 928434375 326494831 453761561 396487580 696611037 224462384 858282683 371637467 760983887 328954589 77881167 594812771 799407206 883098140 481350098 79253705 393606958 356220010 666929893 890148744 816849755 332548552 366896075 849933399 166132569 460169166 309579060 387575941 900158613 432914207 998777167 118875111 571680472 251436603 66515754 846078758 720160640 970384726 434356017 488461345 516924875 841375973 352318623 19546656 668269743 279956223 727786788 755652234 269445757 773493716 862117767 386789702 148373393 191113803 397580286 331566432 157604787 44705154 710906481 266702484 443306928 328919314 691575917 717479753 729892928 985210219 33945826 420388232 168898582 366960062 910426094 922538811 551772332 922435893 638190207 301600894 768168263 90486838 687460861 654601345 684150449 983148508 741133551 261974356 281659383 684259284 24361018 154975989 433375315 358128285 372105603 299127266 99840722 756068768 356188535 602882700 656648634 714728137 85672931 151098486 36858884 917003435 544104144 968779194 145529299 405001128 108444442 582029646 87986635 380534328 191234739 359132640 62562955 983841282 801448635 374271605 55033593 997758056 779029141 840286798 109368357 595181544 655275263 366810684 147429931 661358740 495796335 171872028 648713309 314057953 710930294 868196847 742699507 784312561 871429691 429749429 240988787 376878601 256236687 878420811 641972434 434151620 488142629 697153827 186618590 976849634 161235084 907889243 156244473 584421417 555028189 25828868 393749802 443696327 220776000 897166663 790013107 828579001 337479612 680727476 892370582 793887474 613770137 928885825 386766285 551553080 285469779 118872129 250850170 145836353 332488854 952914829 294988990 645408809 749380774 780243580 31725953 403911660 973734184 214651701 371213440 997917881 359615220 228110340 681677329 380917262 843792164 173377104 93243199 833248132 390435177 64000312 480214946 775569270 413431211 77546980 866457331 565544894 13373169 709867861 846311764 516169394 182937399 95859257 190208783 302901019 99850745 668013884 831703171 235741362 54333604 140912697 112834962 156837895 269215287 627962071 577914118 341049538 858989906 600837104 840292978 419828685 203184955 307129705 110724326 790811497 206593520 115643902 430639576 555389596 508702329 337913530 493292759 94190855 959424464 73963072 996723693 246696626 258885173 677747872 158778213 145533125 857154868 709688395 920216419 252390331 274420593 253293405 891528244 911173537 744259961 671004898 135858151 472918012 179420473 912839676 73976597 795284818 50753884 226563902 662378048 622097768 273175755 806970837 382297471 984778176 717773076 213678002 834902208 836914789 911168171 436230725 314316226 94833850 62281986 30686074 112513294 789510689 413008465 344474314 245774290 730334066 863601679 678241763 247012960 217418130 519405651 161291491 250775119 282091056 879027952 841593701 167706416 796875358 852607337 751952418 247871984 87861415 451500446 793311532 569185001 666531714 227220220 618442161 504945978 595164182 809656022 214085251 458624989 469758890 615360147 677707667 899509291 480917381 577697904 369250586 66583559 286358373 333781582 973221642 214648292 822787810 337406643 446337705 52067767 756046436 500471313 571946209 761794354 109631879 648577800 45051690 10235794 399819978 866102052 213079446 102812790 893694003 849707692 616147925 929272324 937842478 741457922 370313748 301409024 558420041 665871063 86840478 524065738 950052383 798471140 692748734 171430661 143243014 743013566 433060828 469250544 782205602 774865908 709396141 320367716 585385437 407846372 100775227 997049100 280368536 802268773 672216158 9168578 433940906 818806827 395657786 322875742 542716859 301585739 635917623 581264793 871975729 32402003 964954554 133634920 747465629 241871258 201577566 987735278 921174668 741022808 45418797 241501144 747892247 434374654 624518937 648326197 221427448 15673680 70845682 106585883 365754678 996908695 330984391 609236683 273411643 409242487 957262675 439460019 875426661 559091019 559470028 173423122 873500138 493591190 13192321 332842790 199641738 308772559 947369560 629840457 711085854 918879809 352330567 319748205 416034815 809143661 637046073 156230639 213045727 390423636 328068302 892094203 10207115 537093260 644788553 584771721 116312313 259281817 448959854 63069299 863835336 191093641 82076922 552242680 378681650 291311240 902573351 659962159 223301105 202810724 131937901 841576916 23368406 501156907 451464231 795501648 677281245 486596892 838046834 49122435 218145230 581426056 633246736 537363793 31298410 136756367 894722970 997384105 396919103 35916794 604356276 57579177 729152074 466364523 752760148 185958124 64110020 132866568 115998236 883400502 548110147 360113760 70213664 791919305 449310325 479609230 703196529 160676152 948623157 277760995 777881751 931707237 18643757 109245339 517310883 362716052 864875653 998584518 171430961 465629816 469533279 355237494 11447688 939990519 181181142 497654510 105682654 69705267 782142244 473922158 895093919 194115060 905340972 12581396 671885666 642933426 409261282 227097428 615911352 749319753 292645689 530963769 280989734 938516031 950416204 605155215 831150871 873146560 966336562 82819445 860728641 885492345 883134724 239823845 457535416 117216170 439137373 54107673 643435647 62918429 8554883 690673662 962947277 642601801 422221564 828622741 931269467 641420194 517241915 711440848 426421759 278173679 715248313 665810758 568244181 71617235 191806245 284463931 745641590 6337308 526597472 625563872 85699938 730865429 655733465 277809262 499963906 31828349 129601445 50315569 44625278 912982640 151111024 443488392 179782766 859417969 342976072 979799672 917346021 998794311 347784783 885157612 819169101 732999722 482408865 967124581 321236127 385899262 902097170 183761140 463381491 40671172 616293603 79811653 659178972 303738549 60038319 14648270 938961306 771763301 601552526 807472452 472525700 911616818 917710026 926339598 548725677 594467291 169748654 489614246 357179123 788912842 501002957 460861534 808229887 825259749 382044894 334691471 732196323 718328414 298281007 574522335 410632329 260422742 690421008 204163173 726418151 709837430 53591828 50103915 526048166 647514467 547923058 135483107 135437176 634232612 376831481 933135140 828649555 616985881 852204625 734101289 177513250 772681757 182589959 808652870 306273609 68947044 826093870 343921118 624403054 967369886 181545398 394679044 357868981 312471278 439672098 754167036 104361043 620994340 227425147 543316499 323244443 690179668 715695483 412512495 757753200 230791500 857034085 629648495 504263357 950938888 254450945 29996732 82116851 251522911 585469490 811933554 497833885 407769536 755263287 948113963 892040769 106422323 101251026 726533216 354514909 219654096 350793319 225023162 730335912 533782370 946448300 576307076 246614976 104990912 2382172 495587463 858196300 489267836 723086258 456285313 936790920 859312538 620151902 592683091 503222120 935550388 125248474 901312081 244177166 498219647 410539682 760955686 142893719 424956087 19190820 46607010 265376796 626666349 292951771 619623567 490742958 870865634 513673615 230549947 270535193 947502069 849480307 573996399 902120200 64636725 132131107 42969109 748731551 458438134 9359974 578654540 621867000 782312917 845455441 133984730 844492860 734813299 421572927 762921959 380640163 700483258 690974578 254138597 758070124 177407223 984980315 482795194 153789625 889820030 401310524 155851897 261026825 942884243 710565105 616230196 79922010 364928167 727224156 59220666 966830886 456044735 257346204 60194464 961563864 931588774 740859975 823290165 816130625 996610027 476162303 148018539 9692210 802965465 75667026 828032392 456650597 294668061 373831827 432989727 395137161 644401718 489628876 942950936 539501255 675270044 943980460 22744605 387353971 790852043 977547741 474664205 217466207 585527636 507993411 662812226 567720451 970277087 499267262 74421539 973216556 328352366 851563802 179294853 169977962 590167814 786245353 816382787 596154551 236641361 760978151 402801638 798740468 270845185 203078098 640716273 868467246 135923244 351423616 378159733 544219643 116914075 800517161 82394795 722513381 452834083 109772300 220305306 130227221 16486849 301186418 590102816 335490140 9069573 830747402 418330444 737890038 756803436 457763949 243171347 288119854 703742455 437301970 375293544 802136820 696505573 637049940 824297086 813734559 547786551 859709853 300919961 223098315 228519154 875408306 504769615 753875076 332746891 836865668 775411205 192083419 255892781 957646488 143682396 364312786 235056927 152477420 488359986 542925524 73948758 977076731 989367586 64865991 716865225 713521350 226104954 694753925 89565259 219390714 628926606 524775057 466230029 761648270 509261759 192296823 970812089 867884147 855376782 159952661 212654815 910536203 788509237 894903466 97703055 381884223 577957489 1865921 916976915 489616146 611098609 850687304 7912235 942032505 609335392 240686250 725536320 37211987 425021489 332029162 674900901 389245290 830217296 159523458 613521835 824922511 741352923 693916747 84930061 717556179 524034899 302025922 390520314 125239154 779018045 118029514 421548006 717217541 915878722 649789890 292710210 583647498 172899450 651632763 697097909 425038482 852200583 814121690 789297352 961272168 887313244 205969667 28588727 406514631 464583241 907185920 801814152 816322713 214766354 710322589 759313714 469766846 371694803 201060164 652130956 468853829 398392374 273339998 720202409 656537847 888487057 650766785 278806026 338330381 259433564 703777173 79087571 605168674 756810628 290338731 785567302 978736327 999287016 55555995 59822702 859543799 225103566 898504766 747028689 551530485 95437534 937671901 588833501 783651948 25064708 413304637 766472168 367683128 799624955 456222037 863992438 701092196 402850454 314850755 166122000 913125307 50610431 721751219 232078726 682408265 427022700 54751796 797265392 283760577 757999745 548506135 227340330 293356237 141807917 369718896 12705273 904789454 327931216 11040519 735049973 111388955 899090575 62708815 122083202 181962533 298764674 69380078 638262240 571047243 935582934 632415567 451292853 634253838 420773053 885899205 735044408 435233702 440688338 811099147 487120137 844126385 852762292 204919059 889988568 384002525 135927376 650005060 794910276 333639993 658080483 591614857 668291750 168474233 839563326 294735324 201246869 36578679 987932958 473578896 426342163 581599802 388413646 926132034 530090565 37746785 550461285 41937674 731878850 619870807 815437015 283190746 85735728 350073676 763311100 332358712 37888815 770152353 429472325 726906185 957900067 224577247 523564196 597168750 175843931 415108803 509562360 246400406 863109204 366889161 723186591 810772501 595447387 896648961 72839224 576329912 790609834 775515433 734166253 956771173 169860623 405193772 858390857 331197360 77992633 66567020 131615743 666473032 794825826 962778496 351014074 724689788 208749005 322873059 81568930 931077247 562822564 108020359 791785404 531433106 665283352 91378862 333558530 613693435 319146781 794354985 106270327 51862244 682159267 552698983 535670569 111753282 164952123 638963019 564685939 751041336 324684696 690989695 516136906 799040053 219101336 774816009 487186059 910035606 59200916 985652131 506396125 145097217 280881129 187377992 426634581 883590627 621108849 440974758 15308693 157294034 998660562 798140622 209486482 443188102 163033789 535915534 650644213 366294419 478688926 804445378 26334716 650557711 871723222 587553191 185501092 760597941 182290064 340649692 318609900 971714502 928428978 745991598 663475005 747512290 572925674 880351423 725567887 186460427 609134982 212972654 165493005 73421096 875693837 482358911 57721049 171077748 520454892 465028617 286806674 47602669 466807981 689560929 996635680 293535320 133439343 120152262 809616329 815192145 358569450 920669968 38498635 96526781 50011632 485600733 28790039 594025120 711043273 117942161 174719656 723521227 343369808 797723626 619102290 137980058 617293120 869282619 803686564 65312467 432327923 630712424 941219042 754696064 262730929 637041503 402043936 948063798 159072878 185012755 22890870 944161746 629172203 89694050 298982448 103515956 83130264 48378603 786834013 847740097 398886998 325200423 667812408 739549424 556107107 386756933 330182577 251336984 193040148 71334758 289117735 707062488 934191529 191594735 688789248 928259563 902404327 796316871 323703222 680828185 991437408 933739907 266752125 260668449 922072045 770264286 374920588 36071911 450664633 318902857 531720992 904001631 572267058 681501281 760751594 466797201 478062298 65427803 515977947 650106411 705641464 199318139 449576354 999520550 635868132 453495418 547319022 691588752 198829410 51657637 218980296 54792562 134304661 96039653 718179960 145746205 179270957 267764416 519717950 772186550 323392586 758907918 83548059 20422344 205525118 927700714 73616036 388062056 89839388 403850497 213680917 884300521 617311212 42039379 612062394 694327165 572000762 499964255 115721562 417337702 46509391 437674346 818475979 545417217 763435803 162808456 358984600 177954960 679276545 394794612 107096038 889136306 655857274 4357783 427587334 185035173 788708196 163770843 257648088 149772791 185956376 351706240 331448465 38225093 528789712 57151223 102706489 574584150 888227039 887804730 255917283 440349980 567493557 806760594 240192960 340349332 481809373 675484326 280883334 254408374 468710457 344967507 144093436 940944528 332021686 798253723 638283492 906405601 445693656 655383225 715483566 836283551 713868265 332804035 494331162 820569307 782564368 72232839 892526538 987178190 378369992 331908177 898763877 180386090 67780544 928591890 238026824 966891600 442263191 51707300 494096438 290974291 74127043 717519178 45875040 328936186 42078428 247903156 765537200 294529768 370497224 930666752 546979692 275724788 756648104 397253002 978302021 342457659 691487056 81548229 770454548 596410192 933458078 243475073 826854095 689161263 804772559 460757018 329856081 632969275 827104555 414056831 161084553 8329643 382882980 808934367 77691388 410190929 846203961 29213392 352654483 302228760 343326658 698468267 751710423 679403381 620627655 103091303 543082195 820543204 238386001 575486022 296844972 616999862 141563068 988323395 487342650 872018544 372228130 564558877 159976823 88366340 418965748 86154984 330517478 125270056 109308967 164988627 730351524 762359986 847413053 652969751 225819294 760070048 564875814 611959888 572673305 642173624 832733864 703768433 812780085 277354701 907895220 358883036 506813054 74243362 637092499 987085384 270923265 841298512 758370077 622903044 611429618 749405881 930881237 72803387 126429614 140999221 979186703 953265848 566085735 319518474 680117177 411984555 618836883 495656788 397494074 108892913 99037509 175770284 157997202 159170568 14796182 795184012 253167847 876538837 296508028 448481439 128846079 734266748 335076129 921611041 746077225 666873343 892801505 929722565 408361031 563010274 366741602 632702968 375098819 770354914 372552528 573447258 540040267 528510294 951692843 470503155 954557310 372717137 129242794 988832689 773499799 203669066 612125264 881028372 277368429 778451326 47402789 230352100 636511010 990052962 982101431 134270928 499166077 681397576 981869242 663977550 699557030 208587020 575062667 902135843 893857556 634678220 290152365 911878365 46100395 473089796 657530997 709546397 225349481 412254725 659029681 607810247 996513098 236553048 328117696 711152370 287510486 43427362 248413938 602147813 447579534 270327554 775724616 734822968 973747993 609976715 144065730 886733681 60215752 885234307 285313581 273872169 844405729 732214580 247845512 704231055 847391667 180090017 268415678 501939882 331780992 754357695 860847238 604796977 328208949 704532778 513712465 62980184 925928130 556836774 50580112 397165456 918962638 663882747 783903924 225755040 155660499 824830561 758542286 257133530 368171756 860926226 620256252 252673694 66954016 938958158 907320582 57959464 922309016 573073225 150119021 950372603 893734759 424753488 365398317 751026761 209634433 605921502 909884263 698313278 928050365 298636447 353220306 585561198 428044325 159259143 453511605 107290249 813803239 768689750 875657433 255680288 120638401 546281574 99150480 984837886 464727993 694019139 363808109 165682629 147683098 70901974 853262168 671609890 249853491 184300491 236847911 338196590 101760544 757107912 226455438 798686563 959494004 998366190 735993948 780479870 379779818 131811496 607835802 194980675 146759064 325421843 159217016 811692292 775364450 881783762 387027265 527546825 2425878 267461565 380096305 267539134 112950091 825829546 282130108 672204023 997009241 182919883 852572243 467182054 292256304 265134731 201502496 763490705 542320220 779625905 977777510 622881414 308021947 14430281 301898884 117902403 831226529 453901097 184573464 941124170 973272153 72271381 404502052 478679252 369099617 821514286 281008031 257223250 604862521 597541180 116687007 445176409 997882452 884609333 606375206 356934548 524759689 574084637 112018600 408931308 477666236 10262323 644264155 180588068 390599509 190529631 40654983 905869702 939696113 653072363 120601390 857981674 781074141 679067135 893560921 694957771 861012990 838586633 70729648 430019855 162987406 746952926 294810251 782294039 394602325 968652207 225148814 80690630 888908900 641536968 962124362 71725980 739737858 393549405 143014747 458976327 231120528 38589071 677618906 318017761 799591520 403248888 864722045 35836570 60551255 789996874 422520433 12785282 452273658 991260601 490261114 557098731 727158544 530248571 677375767 676449197 220466172 833426456 277133862 741635971 164852014 219304385 378701090 212755438 573356080 16725086 480652166 898220684 726428945 213682566 437015226 978340159 602656742 600817591 853076392 456379815 654209956 132342840 524953074 584450705 524831949 760545641 809676403 85375098 591750313 345844531 348503591 564789486 771288329 751504791 607244371 294422559 710310560 317000019 867534634 584704690 37983113 311163655 846768886 270145837 811382953 914148749 523527420 983454690 463926216 124202359 97365947 532319096 407337048 809771399 122635821 388683206 36498481 622466977 110148594 775991775 55473560 732540058 610738075 300064646 133653503 597218916 842220956 410411691 937435311 957661733 622506690 154316385 863156825 630428940 656441742 527150770 446209656 602906321 979616574 962788832 646105418 962461511 779763351 885342595 345041666 276296782 459408767 397587043 721442530 118285564 820493271 222590878 632795206 706859253 544106179 202603528 105093243 297578535 865881435 532977971 741536744 238366286 31833900 677656236 186797837 417027445 164758512 292183385 824153888 197353017 221832039 678392450 598880371 981120404 892586255 608639210 282351361 41124717 412224681 397565100 477020558 558895631 415543570 735990144 136563584 797431452 288563499 111617870 660810886 355669069 298030389 311705097 673991376 54132919 876109409 338927554 284718113 10916577 32566190 893058778 601408315 954576162 778708551 770498588 453371664 945036445 528255430 808292364 595384220 950457848 147138672 621469347 793048624 657938592 338455814 406162790 837395761 873079194 389624451 67033358 627436587 251903819 431396284 254165741 696296091 943673130 407034813 991399242 689377395 11826068 829821631 638808634 315972407 777126457 517610672 720917883 562035254 538403040 365922355 975169523 944862725 686683204 340975154 810196625 246880553 126246129 280869916 71087771 385813563 929959235 751521419 104046189 114005179 177796390 187515071 800276778 543691359 46275982 933178136 186982160 54130593 190743220 495098781 595499670 70717901 608890367 579332490 907180042 428259325 684365434 31876824 436496349 412511419 572470186 961957801 994808295 621109804 926269691 188858479 667704927 526992573 436150573 319551843 416305343 962029570 64396027 370979833 535377109 762892944 256256212 527586599 850571496 347555436 986946499 152417652 891635145 62343100 858819976 120826301 768177538 725865684 357228971 648198040 507479350 976772080 378624983 13978755 61922345 207871322 38662198 551000241 67976151 389071701 43073922 726019634 65022448 656119497 279478876 14275893 768033400 450649423 398995573 151070769 364065812 759063747 847388787 583896227 741728777 80720980 714149798 986289294 395419197 361312610 189462913 178375099 997299672 804967563 373083685 548579463 655466913 544159932 569109450 537172592 185018511 487211387 384667882 248954898 201177821 451013135 384215000 875600397 653760585 214972037 424581269 364758834 292225505 518583577 488923760 25361156 571824711 141836582 442204385 859028136 348143659 888016063 870845434 558217314 654529942 194190937 820460796 921917225 331986924 405653954 941413706 596286969 181912414 410646039 507152411 992997267 414975034 918379692 709037402 523089211 329295538 938915286 91773774 313389835 365632268 325394309 780241732 134297084 494452948 297324156 245611484 38613489 444906606 76659300 315411592 613253835 813437092 381762702 488647579 887054887 238401220 890415399 341831014 683331462 953374524 342784415 164091451 187360248 34547470 914326888 278271764 435595865 65051868 869419159 292397222 275135892 434725856 559827547 743537953 815651511 388968223 502485428 215397170 388973430 316093973 667607937 48472319 809277095 339400827 695467177 854545854 938960860 845360808 219898403 475237354 1469923 690284584 274026617 381900760 112660499 9400497 266053590 30584626 800272356 303350398 314035046 416009797 409190397 305986689 111183344 392743695 105628821 263030298 439777024 844525161 300806220 230617743 388981169 944467900 769623260 415365955 7738607 698982661 291762790 155250467 520474740 940268099 168185744 14714201 925319417 498214380 688340067 37972963 356115084 194558751 901886470 207001115 163006285 531949680 54744395 281128033 522492896 567589416 380776755 586099307 805905909 955309999 697529804 863288986 450001508 267407469 120434383 916965797 372278821 347225990 396879243 149168766 839410797 149652494 648231280 550544906 570324715 654131477 688154618 853518876 226062641 86103549 745601788 696375621 664883900 274672057 515081845 448337204 763378502 85843818 998563313 191929945 514025780 320157776 352070790 978075616 984456123 619616996 269490473 817511896 694920603 50029478 538433836 566790151 837181991 888317873 197784841 71482946 423363772 37171450 380751233 732474612 195458538 879132745 141161489 902074315 441774209 599551257 951557203 329443012 367112214 544217833 635417356 444534901 576829668 346232008 356944820 617819426 281715352 477765390 627719218 711891526 348884192 799823819 631956181 309759850 876672646 697610620 32264138 719224779 81236084 1858759 907951109 362788288 624904019 205989413 736831442 858690137 458020281 123597812 95731173 874101915 76161641 956526449 580678282 389240566 323533631 660022214 49505615 164172195 341633193 69202779 839527354 603138140 354990015 608632828 199399158 555507513 510399354 536336729 400246035 544483178 221971375 954210204 587884532 126936637 27173354 157226527 900608372 598020782 376518965 41898103 650805977 820029818 842170996 63896221 184885834 186062855 699234901 922671973 781807885 877753385 59431630 453511832 930539663 860139381 241469333 791069165 811290882 101505792 494658768 125620667 159557914 704648251 891685598 304082542 293195614 442355822 372281500 602160558 928887409 472391756 685265760 889551213 33365373 68891972 694745715 842241195 876626879 628454493 300152976 790365930 127627073 515144236 885174280 165953143 228929389 67423460 602911935 812624219 503333579 675272432 683843500 763071469 407383222 317396069 920396246 706958035 797347707 787875424 12814431 973665547 913776307 196344912 150431862 245674306 138168129 503202193 634497277 57263995 219659492 489955960 172332983 943430327 465327513 976909846 751783839 973832774 21968037 912429455 396450029 279889756 48072655 647032389 705509506 111323784 299874275 944009231 98097832 522227104 804592977 190550158 805761275 472356078 208560797 128370810 453803507 543515732 385302672 791453564 380282109 946931503 130300147 661124915 236248920 19350402 999802663 97554990 396226351 58587723 419807822 639657784 484324708 721767672 741033455 641071183 61979942 79785846 28554039 810698907 976050028 584651484 136760546 808140658 533972991 801855173 540689998 914321377 910026450 25732218 26055697 618721450 712761250 269736026 590440819 43065411 148075699 71331548 244688134 847814860 386262530 545982146 599092371 244022845 619432351 42586661 801038684 660133480 24456433 567048610 883571774 241022563 448901449 610223760 818940108 955447678 330940143 595452444 513611686 743829946 350588061 858599621 227726204 485567802 207030145 552186159 378860134 512886085 287425188 684832213 552426063 565228490 846179289 432026571 131609774 687370224 31085342 703447770 108031930 742053708 394499583 51109094 468874077 842245733 954700330 692366338 466241564 820857107 836942090 606950935 286834965 542193449 297515428 214490416 414425021 252188701 349616889 181879091 856483962 594605607 467511953 130478096 8703567 509933782 944949861 212217718 336846263 511836775 15774801 410931317 768719909 650864113 863284021 743507351 310236430 762449465 165530928 189765598 17878960 128994777 763947323 938654434 281737350 10376019 114374786 412543526 892778678 721117750 893155549 904833919 246678498 900291723 952102700 370184583 638318002 739578712 651264729 741128615 151357846 387753673 810018672 453463024 124195742 552485581 687082810 863030712 433592032 220443101 548313686 365987705 302104442 433552024 72087662 524202350 124180504 438029398 863540256 114992586 979558405 793521351 723289329 575569643 322258570 199814074 470559947 219210640 732589348 145648170 993761255 531136072 481120952 269755865 3670290 959245504 578540923 914896986 321804835 871173275 633933338 971332556 898759613 163553734 981675872 691068124 932931034 91126035 162279526 735513728 582058790 605851292 387596193 369138252 385461055 965715200 497139577 480384706 650813601 141256241 229987777 295807585 654811127 780202466 794360123 840091240 606438867 475978884 850113750 193493747 684511469 512545510 103002254 640330563 902881829 43567138 288955454 297929672 857190891 811606739 997125824 247583188 302915633 459123979 247642409 196623065 958612609 53705752 466607522 569198365 95555124 709414926 924332627 740658389 857778624 347303483 691319254 84178441 489784771 897122996 177020577 49503219 650779415 949056048 990476337 470562304 673285195 647562593 928153517 830439188 769307070 52271297 774332651 317885515 611507584 481600925 75896358 332967544 454210023 377763449 342686405 244108257 422493123 663023166 982556650 426420974 520192643 362539714 891500087 775062922 351261705 244210676 84469121 500637177 529125185 674388987 226822164 375619405 17707969 8699068 434952053 403385402 789508067 589259288 653738671 834995527 455097032 349583532 515681679 439929759 78118985 4667447 229245970 492831976 380923066 47022277 71473008 667424081 901661427 936394885 804530680 819111246 410416377 654768176 451652691 421427197 253216700 557295065 706393462 475296099 313748585 244656917 473082932 998855657 997359488 632221171 252009964 843405696 619150281 159572513 465431199 256317283 289801176 5712137 203120736 397524962 218190261 256389842 369591504 62343517 402501677 965848867 312539530 899591558 756106829 836158111 143495522 465081350 245295551 942979817 534665298 406077796 71623601 712477992 184121094 192321542 533620032 880482303 339922150 303278288 967382646 439609221 723371966 627632699 191481410 551836193 640170196 700293734 695452465 528386222 816518676 565291033 917462009 426517540 835250538 635321458 976832522 600563521 254557682 950709901 343189094 57461961 601220295 629763565 382335554 139771640 217009381 251787676 846510380 611885229 187767771 572735173 826138428 189620026 985194166 758116634 189998401 147197879 388907942 107346063 456046336 549993648 147368082 675768951 373089264 305978870 957884932 821842863 807261883 407952401 456763556 546498762 714647680 933366100 254260302 955344358 296222847 879246733 868843900 966826418 245761965 776890797 710497245 784136714 104339963 153103839 521317001 474899301 604076668 395197242 175826359 348007625 723919728 111332046 458786582 524981842 567212721 153401283 188979028 44564107 522504690 655400061 572308638 81025586 468068268 287517349 448398751 599315191 145574063 344543221 875775854 661874356 608342498 963461219 742999332 212284011 358368936 225513282 821326559 612993161 802577814 643316249 790162810 362779476 518138565 292985879 939157861 492506536 547002253 411167205 35570455 156056131 285399879 307285390 47877674 350407114 388426748 166441088 748386744 823355480 11792598 897934935 799871713 743616000 129295658 680901001 401096864 715974921 196104843 979442153 610689288 315094765 714375383 887491033 78076392 239089278 369874450 318700596 73244148 981061715 583132892 580405843 358414237 160278373 225311942 236579598 172119029 7622362 358790321 418028229 773982116 589249149 58204156 764908767 550751178 665235267 152107137 657996815 672363555 36964792 747286454 342151984 207899577 784030740 834946209 34946652 631477477 796358932 478395282 773585312 870969837 663580658 591746801 670431817 924168331 251258304 641083349 17797484 162530384 436947888 248550192 60513673 340102817 605503753 199868083 785305438 422711508 193435453 124709551 385353432 276288130 969169139 56395195 18758305 333695684 403566942 795551964 856553949 731302733 143239526 205098980 263284048 943076659 961524981 385598305 110840085 794533468 607467250 271956729 292576761 113480231 462678727 708819670 807002509 538659535 46167095 898390230 955587861 467314329 693723477 780922014 398659421 947806923 882670588 436955175 612561980 519756621 784351807 492185679 624959980 339228878 898524477 693912300 863374483 78736329 945253129 3464498 579022411 754728107 320888787 169079055 832137404 951941732 874166331 726725461 275757347 274338011 715203464 16132197 884500895 297123747 684190722 8588542 587663412 323487096 391488886 625359811 659004083 553677311 680202034 447645826 959277870 376422241 420338637 279887825 366832720 409324351 369773651 859073998 73637783 772135292 359759 269938769 853301139 907255873 205309483 15623111 649113964 761562139 471331513 944332996 247593619 489219583 670286171 664395669 759225686 76326338 787982095 505427471 615479619 358223317 972909347 153363731 205636913 135301328 689113323 781545666 964090852 575829546 586587817 449444387 415708660 51864041 836660152 837351912 264078498 262431207 917306523 649236259 126082506 676771555 591507321 413216927 331782727 937538860 8411746 927310467 318726081 203522594 514147489 761863351 246803758 752557997 209500559 651137294 284108093 860030315 667702253 261859977 488877892 817189960 671793541 648458261 252044270 992168644 363635342 235673309 762200127 85600913 77344279 388673132 184626690 14208855 450243280 956445702 350141949 276278952 305838464 202922947 180497596 14168559 38100040 15711376 982726203 336803774 805108911 602848924 436036372 311155503 410144675 390514776 245898210 745388733 679534360 360584887 281334240 965732613 659862069 550016253 309829817 794028665 179104547 869449892 743937292 250302001 62859788 505220212 285144240 851578557 33745650 690560243 64422054 837915582 971731396 46198401 112306924 98134610 619972264 330579352 33482833 713681477 815728707 864277748 120657266 687979213 737292553 363998997 234259818 812247184 732155033 931058942 441259622 304728854 22951517 371807357 903983667 180728247 731568550 382500505 381556308 414321190 970819491 36470923 458714901 376836404 642312745 641738397 269074000 883785628 991985401 722832978 413198298 293809265 161941573 847666817 231111377 399079457 320539290 983623932 824279642 452048580 445646605 770525824 199583566 882035240 176409072 814831069 915912309 562356731 231542574 775202808 290724477 33363566 75454241 419654516 161407326 157175710 234652374 28175253 210829215 486091831 719655449 514710781 873797392 872933735 829371966 407452028 151565813 840141191 347251276 262941065 640938115 736886114 934222141 894673208 693623325 429864081 988378402 652010496 679217687 89060021 347233593 365818321 776581413 468116930 882542098 86905694 870689348 494334169 910270777 864806478 708769737 513973951 538745133 804554161 778213868 814367963 514810310 997779263 641631885 743734133 370260981 405661169 315137922 245204670 460472859 51778538 3869384 494312380 524842522 596725657 608706574 969135857 369210938 721457399 775479616 202281053 460874935 794052745 977496850 272883748 442516956 170962436 363611598 319037415 989259055 729363010 425404074 430331582 17686054 572590791 782722821 241043680 998155996 113362077 747534753 223943603 318559272 695145057 491117225 180715715 602937663 206514811 369285216 380332051 255466263 896193828 834577544 403203912 778271223 451288914 794899676 545735558 451460722 990085458 819470399 597842555 115452814 138885668 106456538 775404306 873622385 621513650 256855800 359790477 938332449 44331596 750891083 695090846 165915862 98242884 261264074 648818671 538685330 633288405 612415819 387396372 176918056 947907215 918309420 799774705 195700367 637471102 182014994 400285831 931077147 24861167 238757406 693589130 690944000 514548220 562230294 220866425 765789885 926217550 260816925 549909822 504105116 198919839 405992066 717453125 694600207 503373551 759469094 547576713 122503441 997480154 416695210 561476193 483798173 573486611 521891971 359064293 297480644 201364414 991301527 303044909 748191142 127510515 431498530 12184492 821873278 110876869 895170467 388057015 291649013 800747418 385627254 525488919 484424885 977188652 139326712 104461020 520019350 698368190 61326173 373062440 875027363 432535709 924338287 27567831 291487055 709205378 409301440 653891166 336879389 752242895 626941552 660628349 791979920 514360345 891035078 557186043 935162215 622287286 946902396 726885045 940363061 191360674 908169133 814380782 719892358 862384149 304092008 994377085 34743632 980480406 637788622 230312197 389959689 385537897 375452710 32623243 50159456 740318778 542706425 114321620 7890617 505612242 765168002 878804755 20458815 696309731 744658767 789029189 147839490 84995336 740616112 44303606 43707186 709742652 824380384 129018866 934262919 841031016 113614519 491742058 439055303 599021431 236959620 483559666 67918518 769459615 873618528 687732282 806626347 564465897 354055120 275373929 447935570 378031961 118843877 132203910 752835048 6193597 352375359 173169798 975025970 595620462 180287600 53125163 82334759 394014113 104124619 889661025 867070004 623139667 96407344 190859468 921730617 901659384 115117871 468534600 505963854 365762754 150745127 65061993 414077914 695547415 67210478 496116261 444565061 314083482 907385320 686105943 123689890 242976722 873502239 214996758 563617852 698923773 494209653 378795401 149463721 413117072 259894117 833237739 952911986 232663041 598262126 464281688 335077768 98055707 880446723 422383764 772384423 741027612 508679406 811243146 294723962 31671600 63558937 706068877 194109689 587208830 280563386 204327006 315288985 679522646 372147482 998067868 345927625 286164723 796991543 694246908 540469327 310029414 541552435 853692573 450051054 136129067 892169215 609442819 589608451 438915832 6725584 336070730 533801895 262410999 79008693 148227098 328142705 542560306 4491129 497640078 27950746 497580424 997642881 108906980 980223393 502824320 84460759 73186191 349220601 941894514 613461625 899356413 62153077 484433168 258299176 299989172 519134868 681855932 846999362 174550763 212828309 987596419 702659385 663961987 102990571 563649819 872190319 282818117 99551884 231788779 532289375 54206421 923737738 762222673 546814614 56027027 276528519 781913443 685845600 595644460 496969922 960472512 225913931 888315961 560041342 212061141 927619294 665919680 323264207 690989844 316563006 652195310 388618110 857760346 230450254 984099777 688750746 2597471 56226796 210093314 426888864 227594775 604509605 217667074 635227994 221833002 660213787 819110556 521146197 721487374 340654750 236738668 582072196 527629540 370352285 267089086 367976341 688462898 364345242 140645677 164916345 326153282 737618263 481282395 390819353 575682432 730742332 460273263 127443628 978929760 965499626 330484795 302535662 184243216 681711189 902727947 759493026 42310005 721742271 413399597 5540416 606917025 103077628 832757418 954095178 656425826 511657939 13213605 49143755 168661845 673235165 324046040 443904406 678081463 62728064 587062326 383657427 695831061 988844865 957741979 626227071 172018748 89323085 555613118 945748077 751944132 202972356 629764188 555540833 951964993 221390316 259842306 790729126 973973140 464754395 666781861 124507632 907728844 647511962 335359903 850773206 416860557 447539572 212632638 111172950 841515462 62203746 210035494 89669432 276176083 39874096 453114434 738322294 468249704 566338197 502899746 661469501 313871617 623931954 874267159 398759453 507953634 639206356 784273292 62831035 741548024 136969017 154013693 543720461 516569247 86412785 980437300 837203694 667939587 32258846 894262796 282419440 900929202 95121064 861071743 946113028 779645955 805777737 874815569 965146644 720957780 207517133 957860955 822475034 488740170 57688695 125461869 594919193 638328463 18042868 686333973 186587666 206571069 128217068 533439095 747928744 334433848 515009805 73043451 50396714 962393845 831176375 507311882 75213915 847320929 911456211 325367831 407851315 274109093 126886758 147800081 582992664 48486605 334699710 614217952 942797031 681114154 749491787 449172577 622572511 426665048 159869991 544191356 533622885 17159245 75362944 655230481 210117019 185611926 257362455 782479453 613537502 605796952 142524550 711190026 231603449 796018753 96586926 314551566 886838939 16568961 884017461 62681564 70620696 550094460 261268374 450600760 172799468 308154701 251077486 305311535 788474050 45048624 845722151 219791791 768392844 448806192 38940347 361860929 491513010 954766361 51083457 66072323 409808461 30476160 47978944 469743973 431091489 324678136 915244721 28367374 256128364 865028945 544427131 741590617 949038402 544002131 21306158 462744041 901413758 148794631 778860601 349939881 273828796 857908688 334047300 357416366 607010748 172827797 582973694 311521261 767067686 69925464 947741238 595407237 868016022 886266089 517295856 784260647 273097380 654611869 202240664 429961075 737697357 637923075 733859743 415847453 549724422 342513430 814177958 301476807 985432436 291900565 257413115 552717266 300914178 46231710 115742242 892942314 663659370 79918995 943270038 455311936 769995808 527677033 353383945 655876065 644325427 587240434 845571916 556148282 56466640 581622098 261209116 437610012 563661896 30203442 990917940 301786463 118214830 949615206 275246421 707786036 159249914 598910454 808217821 977781118 300861423 846121317 961909454 60306873 4692138 158953802 307722486 550807511 364946997 750911564 245812295 49004778 105681281 382071869 205378021 720762870 743893130 623040173 368388202 730846745 814175934 337338655 791920417 950089708 489649888 538109060 625574166 612953918 840633592 732367395 85779046 889771576 350483084 906325824 985815114 561209613 575073621 121335958 541374127 893420089 631402891 573040577 376026235 647412580 493504464 119053332 948063896 965768124 968830733 208403704 191493433 202826923 351409180 173423267 586614169 832710964 422428221 918494263 468732396 672677736 723791682 782940466 962332684 383945236 703174117 288187901 467946706 157061535 402204647 665428822 505054393 606081517 609082324 649262061 261990179 392591754 871748173 318394338 73841269 175682587 695030313 601966068 28789490 975763421 803769114 883438474 275629653 948540756 430322672 314239559 652010318 968775877 446122739 900033798 342623581 855777664 68471026 157159920 499627651 83808289 390432124 126190097 589601716 191705112 963168298 247209402 75171802 302239486 832011188 994883330 669105520 871092425 719318743 376470632 840269620 289608255 935702595 207729567 39855 709451558 663601781 687847722 172418639 13745183 578821197 838003669 192736632 132864459 10317416 956442200 738799705 162759671 675635926 588564305 646163394 608564504 199883524 626798944 952284397 339607956 798786331 464639442 949510598 636069636 416400683 735569576 290328387 256230540 793243685 370629687 406454963 516949123 533605197 253569974 158778007 262696459 281108425 397083959 365192134 479668064 6247263 457171262 631249789 189747813 510345182 151839604 735080349 420236487 856099932 645776075 968234500 27665429 97918972 642940472 13062347 511071968 277967452 629812586 688747207 502067166 470858460 240743214 423656770 277484117 257897299 337057235 574511446 881591913 442254829 23297001 243028861 559444229 412629525 71336715 101859276 931922426 219408990 436134498 821644142 634247314 997222305 221895474 122006116 290080564 766650112 694996131 15475875 935270180 343552485 660806142 177669483 951148526 845713850 506539969 536668866 329929261 489857094 919972554 973597637 545462592 812102498 560873538 97229344 727367555 812996167 475803265 87710469 703793469 98879293 102698600 586611759 363282119 963512330 952204679 319322976 80870618 545463559 899875832 804832485 276243099 28691303 942317632 814312600 827934949 655658433 19289479 843901205 754176235 300246764 385492092 686764878 341293831 240773670 639857080 331404498 782511611 501677502 823967159 410627342 749511453 791225883 949605927 338476753 169917574 462664382 84274982 147061139 358225275 765643927 788118550 935790796 2891033 702009157 174236983 48686243 305665138 898666563 876449090 721900950 827127158 156190079 813532840 925251779 473480044 901607207 281527472 203913492 393811416 988506963 173492075 465764379 712616905 610093689 144507664 134165741 412537859 881626079 755630363 251206335 852420078 126861929 336752057 290669657 841322311 437781693 562748759 444568478 260905525 859162589 25408257 102386680 176746965 444750545 234594876 232364862 73606371 39278476 425123514 927645488 969970517 623668575 943181028 923457279 757969072 558342462 143713978 584205794 952715262 924880609 41649175 540064740 907346271 476145120 416082301 670250216 616933063 933190410 311070211 731286311 3347333 979332299 687231355 112486625 904579733 334730178 467319546 58950187 101824757 198527359 593473584 315499266 892512739 234128051 409354804 573686543 844555122 389433285 697595062 710816804 869788392 268808756 742134392 348579628 888179024 37781570 916868917 131764105 188639568 867841874 894100936 239756030 615571956 904893673 672052840 329470464 479057047 953857288 542880444 819801881 458619580 196851327 828162957 739053856 78524661 83344140 727451113 695430710 787016530 207722431 867063850 766160444 849941660 737554305 461823823 631536300 51852199 891640441 502354048 862904330 918243877 236438639 921268693 98464856 608901647 214609122 413850038 45229979 470235834 706548396 598732842 772145703 304468435 187951480 361284489 503457386 227399534 856429688 520331024 248967960 355685517 538020101 35037266 642810305 602713699 979746904 972029981 998143784 244835815 364714233 52334287 29850318 988820648 856598745 969489071 841083912 487700055 115321338 31097651 26657121 934176559 988848912 445476346 69438907 219639251 703263892 755819526 222923001 340992245 394574110 618194933 628678049 251972367 499101845 841001696 720399753 46917277 48407488 498781159 453403819 61755670 474008741 467423159 67148292 985053219 506492224 808606488 588322415 204779792 441071287 127515493 311754456 237685687 775426931 442313684 805742919 702756087 372472718 513220847 682674054 273156128 55836925 98514568 583298117 228444754 181089359 391136283 103698331 900913165 696487709 919546680 696715507 869319613 90065908 368371544 354214954 877376786 403566809 76380733 27340163 356999473 555252581 669130205 157392924 376436344 654354011 851395585 420073073 39255023 78009678 78442529 196500852 150214305 689813481 501955864 120615089 375588831 639121888 867242484 380395887 714931067 753893787 164916385 405465031 711840170 921208993 991331503 656494587 105807267 598952659 882237734 916104271 263384506 661615939 441753301 268649556 557345951 631963024 690819847 162999850 545643611 411360018 673654271 294258983 992940252 837219834 92366909 432260572 374945109 53348301 601742594 136650426 388905612 344984503 734414545 858949783 486257206 539789385 85785358 645025482 454599637 728555109 248460583 432682159 750530929 544804911 178252689 447842375 656234306 926027946 871113381 955865582 733102628 530941821 542796120 997115426 962831265 788666305 901898283 759577843 684276740 431825569 914490044 361736690 71029620 820864612 430883943 798410004 40027981 896112361 888899096 952556280 398972979 129087712 569038231 764609999 492268149 448309871 231706960 944375684 687548751 885482400 587098019 441691786 551501434 682966818 539009928 966157186 874825568 278280554 298583628 321542565 636675679 508180349 627786883 244953456 175420606 648185297 357976265 231743336 179155987 474462043 621486070 662513632 371375121 444399028 66252238 628191441 879068127 980278595 132938242 595763305 933700576 142694002 95825053 66417807 801575009 996474678 756453234 29658071 173493315 602780723 361103249 783795109 652982687 221013252 240295042 985754155 796685671 287477189 326204431 666533798 945475393 63100477 816964725 494413130 189782394 542186437 560717548 697077736 550792772 964033895 419310567 797578627 392313385 131302868 570884436 154071411 893146806 468333299 872359733 375153659 814946760 917451691 432021691 777984762 108710020 240644479 936412 236779387 965247232 425905582 800367695 837916551 749642891 236275034 910759047 889729431 798573260 474919078 489593235 601751671 307358479 633092752 64219825 905198033 152694460 763010983 925843881 874247054 280268108 622304878 897769187 19967746 480715965 848841447 582395174 46403090 612887249 263184190 933599673 461203689 397995795 806381382 588905993 962926702 180438756 672178699 795120305 209553177 947852901 189769895 310789253 536717582 44749707 903245205 404963146 476586898 541027413 197170768 67675258 874421281 650390139 174775006 663992805 332133613 542658094 29091772 55259505 881931817 365735907 212214829 820491847 179403880 152017117 445143915 212051931 782509880 190459505 468238123 24478999 209052738 421110872 21499673 32109939 990961143 379077827 5057121 672929754 426345478 312374367 76675581 80343239 977805026 946487465 447954761 849670815 909492532 962846472 255273099 437270252 533747892 834426924 974989031 58427665 748432087 154676948 787979263 110727894 351229204 802259712 140227882 343089584 802269427 42229318 934736916 869208882 742419427 463306170 589711869 7561911 457214303 194270387 843694543 931634946 138482784 457270478 531796522 447146832 134600469 644003382 698802940 251582856 46975095 648314226 478325190 615828206 852361015 833452957 787005728 309756313 732710861 888328633 897216896 718219049 16539740 753963233 408522992 225848433 423992969 186675184 456417187 198910306 331743802 216954184 644895639 91787254 759608190 551738830 239801185 186468981 919380783 484650597 736902267 84255515 357346489 64279954 157360375 500810825 162577213 212733938 334739011 564028042 638578788 707086244 590494991 39205257 320914313 423244119 958208373 239434391 542636140 662819346 961469315 553969505 670465271 643984080 128325989 667094980 113359299 118644506 831376703 36451233 5222011 640911684 458783104 376721704 366963415 582346029 154756961 250796082 384389847 578660508 709810967 503318760 696640922 349313408 842456745 878473424 572588172 888078498 454912053 35234331 65340271 163020369 795484312 83945392 498829878 619586637 61117853 526021670 541131625 900525272 117401262 88809864 933715184 752448811 210700856 370980034 839931924 139379957 960316170 896122970 780447587 785736173 133952427 983982187 645361299 950080197 955595633 129634546 168839089 771410216 318781460 219387721 608843605 203367324 73050662 188307448 599396215 969483937 681162436 291657234 513024072 768583818 795081624 66597571 643471205 138269297 274154181 966336492 865275305 510856029 69066023 564293209 634453972 391955348 945514770 289328078 17219378 873508298 522826984 464683346 244019917 677342775 586470801 746517709 80177612 687675418 349612326 70032944 773684687 928782281 818236448 326171442 94156595 64845168 771600864 510939009 194658239 275071501 198078581 577218759 836025602 362698037 69229438 832571167 224558622 735058867 386341904 6318355 743814075 630058988 865627671 700757773 948056631 965432531 263484763 566992106 657145877 951220869 508926616 614136267 509523279 756448247 962733857 124817489 764417468 840295871 859011999 75436044 926973978 674766406 821136019 53519764 173493651 477479276 316931905 482192178 583673885 904130960 278857843 848008806 164336855 231358834 439356517 495958108 668556196 651848720 907441285 550556431 876724362 177964979 721598789 233282221 651746809 677039916 473742247 237911814 282618613 51602572 211645684 392331020 964044469 415161808 137095117 46066409 594027432 99493343 316954996 659908657 176187696 219279782 648282196 212857242 127054844 959199898 824208384 403997911 188105206 934338945 286844927 144094518 787091048 190589302 513405680 400723836 970164237 374681255 510200436 922421774 251943727 195465047 839870443 781738966 668550898 855913270 48242129 235511137 415803484 20337881 4410443 829205534 346850945 653775981 761064371 565255577 811319270 194387926 640004726 876052817 814028029 53841863 90039522 448841534 292119120 722444742 877019793 588409192 496932747 736499078 279479704 641973451 443767777 512406866 417329454 102454691 880470313 728365794 158410608 278631047 261277351 523280747 125336785 938518050 659410017 601678417 462855041 973552031 156870421 116847435 319631957 218166858 19442313 374948611 440527320 749894533 401469163 7670068 352847298 453801231 698274936 744008315 490228327 716505649 572442819 241790007 360363483 24581707 995034007 179527682 732728861 700503722 367898171 792027121 737887080 741957997 526883746 815161986 64174374 882114197 22371752 273972105 155420894 901579218 46876281 965354150 782370134 952223796 308905044 964257945 132497644 973732856 591249898 20514909 428258655 286433738 356649447 580292574 928218095 515278499 557561213 192403610 158999821 127475258 550078315 903245934 192943567 582000751 560993629 770799123 950394135 510238901 48962073 775296922 365889593 835125770 117816791 14895799 74108252 770395850 33439365 558643029 622628791 812566234 809103266 747981056 931710677 704142311 987566377 91655195 952038675 3857148 306499305 526866030 884061680 278436922 432350902 879167696 433719644 350281484 567030854 389798481 335364302 605106630 463966215 548776633 833149263 800404062 825107924 839508930 975708406 161726070 919496599 977063572 845674418 644008992 927148061 262738773 186142194 106997629 855865140 137429598 894053025 938448996 69366115 95078375 835465078 670348699 348715478 152933136 659429443 724251485 157367809 19051627 760705720 594053363 615582895 816578709 713727091 327234326 902103153 362915917 206316655 899268279 203085948 758183041 641818905 579414796 235107936 951981169 790084491 209035025 441520122 171636532 513995986 821273545 42083182 717411347 890079595 593215091 298882233 838568622 977634925 273727656 105210173 942995997 236391944 864571783 325346383 644152699 151226051 380188338 104787753 251011254 471265082 324860477 990735865 718193750 331235537 174238248 656049130 794775093 333207628 483807021 839411318 500797925 726559249 130293217 26996549 721694231 981182907 235569628 411303691 98255213 386494701 508657778 340770065 155412028 117042192 715207623 82688464 353197127 406518508 650376835 666351237 343393397 120506323 711345633 931345847 580257527 645885953 205996194 756892293 270316228 419157804 203366363 979996548 51992241 119191935 525878879 793238471 876229859 616917943 65434722 551003473 271332419 952724804 571783467 411652785 7434654 995958837 98160007 629102246 730386660 183508413 501174520 851887197 750362468 338802775 570415342 522968480 409860895 615701743 140572902 430312555 497313955 396086713 115617896 648837892 88813275 60858745 503210578 136810382 921370031 346733088 112448062 71126323 701349414 789363620 984652067 796380672 32051252 570082334 458691873 452479063 190306104 564056978 60691176 570844206 80852854 227474328 285111593 376794250 239998446 187341802 610482320 990020685 634039509 914182374 813574023 59201835 605730178 65937329 923687855 817726941 592615265 44800212 325543433 33352306 721942959 123613004 336218083 741835948 332559840 391217664 70721606 945436499 61105906 607304066 738593586 715057101 210858988 251647724 654509295 496768245 372605515 27234600 388967919 197334314 52235077 981219464 311990690 398927624 524153699 996367698 50268746 694006078 898063053 766317459 901549193 948975898 572725368 221934505 692260422 92084365 354992025 151784649 758208306 356784996 67164503 447064784 453902639 31716988 835359328 299910811 100283699 378219501 549949355 622162539 270826546 854408262 955806032 818454423 449632980 183322048 117698660 390447317 369424268 985278505 55513139 292856790 680706075 704833406 321866186 420685001 436082517 363732276 154682611 503520162 165840306 660884219 284669737 262179492 630561530 804968568 477327716 905289574 678426622 306459006 411661235 331416395 307815560 211643023 159273503 266781934 320456322 653045025 318801264 774245648 532829135 51610606 444533722 547700766 67828778 135747904 98621160 568981314 562515203 914307321 996874569 843798768 943495909 439486500 84247708 630701751 11376805 290199621 5430341 795903348 424090969 271111924 747711831 470269550 388227004 951411452 631167955 401455827 46113426 39476781 865798221 865945298 15944794 555931558 683830826 842250681 363847287 136921495 590484738 900358464 767830132 890371182 544443074 904528106 722111712 4385809 811228925 711482641 439102310 422451824 706132319 834177288 774294842 558074765 51775445 484808811 967386375 513725665 958932318 597712509 715644871 10233734 809931617 838117520 535506787 861978566 495513100 364123325 83735005 972680588 285413062 432246003 548759054 782407176 632362025 324140929 917072396 991695487 754702791 634014011 109082674 719284917 257578163 397630624 866875948 276210789 179923489 795893984 282546697 149281835 929849346 53248155 868961064 621435490 279108586 826452433 791476847 805020702 308398958 885622666 56013985 926108330 260235662 56378941 297371063 48319423 880192832 553240822 882852531 450635682 309333419 585655867 765997073 561970911 432622125 98873851 99814628 180619382 305860890 446509963 950683801 135771870 569945112 992649764 939670111 895482581 967668447 419906858 4023878 111853404 352393449 31207061 607089990 286074693 559037209 145808651 736930450 208914779 233998574 947382033 809408004 441601993 156925241 567959028 817672743 370391006 25321270 120425982 91831688 91582649 820332772 693605176 672953760 992932318 96710112 468022402 18703977 554366475 497840586 15656607 123423777 619283144 208133286 228818108 96211355 314495381 17310524 624407037 6389824 325434191 306613080 328886575 319834739 146711353 389312761 475122633 682836981 181625833 885504036 764227148 584580932 404834359 740740242 829957997 606932334 49389276 596944831 63322591 829095792 857276552 99163881 398254582 876327440 132461627 163052923 222260962 656638622 207779840 255102229 947151907 582556531 160502747 75527190 775683425 732889420 643365866 120645214 739738667 630795191 412191045 171157135 384970277 981361276 721420673 577430088 287262211 778466991 859561873 320246905 173812710 9130824 856636687 704728994 489319528 171764846 427178189 424181879 306633613 68480221 607290960 807429541 424297161 920322746 443929998 857811066 443294234 282158961 508781976 57900755 234689483 711964078 783875890 300277164 557828860 602779674 249319476 984475902 80563183 680298760 921814445 954018777 43842754 298264116 883426673 393074951 478298726 580421633 262638878 277429585 312957983 462085613 939315754 277567082 716819880 951507337 831547934 764511622 617121419 78429926 628086534 112355055 126257998 967725550 126690975 498504411 290572983 495531848 276220324 322135644 110943628 238210694 895975935 81619202 546140728 331456321 88217466 63667835 164739903 762391500 53318154 75536919 952156493 851676118 507659706 236221357 584142641 708020855 235116702 65452567 708013532 358993347 722825952 265333336 36718198 515036181 40779443 406638078 393564224 375017814 62597853 182155170 719926526 917765223 294790375 922913250 253420011 763744886 16571387 670090884 567135856 778891587 206440335 63888990 288192265 465236435 805709657 914821232 688402744 697056042 723011755 826632434 776937611 931295413 329993028 695104938 378299867 293837313 707724321 520630692 716492506 595774773 460641718 435314518 669414756 738544337 853531535 48419415 253421715 742380432 130107743 750904710 391132222 237427199 658303877 445414173 622324472 304159882 269573835 809340018 868907966 648530248 61747982 575562555 78724976 570953459 380429927 956869193 330800138 199618266 471116187 533849523 701309561 270377865 267767104 282390548 874783620 747449525 810026465 297389133 44856414 158088232 870391807 647153567 549745278 71877178 390359610 723060926 212517865 500527750 145548462 874636611 412949924 64166933 142119176 698916638 501255987 190910775 544786478 115886318 483062302 727363670 119042555 388410934 975476742 216083475 357061976 891481900 971711876 576373967 983996137 734565269 237788639 637350607 570359532 207845236 649360365 457616560 552349069 393879203 227362387 994076910 532826461 395471191 46820101 986037566 958774245 458301950 993758295 578401489 200835862 798770960 119553921 712195713 989755821 523830632 125682356 9226107 520755483 46972850 144256606 85825066 436329507 804536856 307056202 332308077 655046035 777957903 98121810 79997477 781889440 157796719 270917418 452482922 844270791 758577267 662718947 486998795 744967791 755097056 555128674 262427362 557195832 202203893 602061260 349616980 883944941 651279601 21845288 368006422 125167742 206370789 147377177 64708576 427172059 126696260 510382121 384441094 639202858 686561272 381818605 413417096 618156480 513445360 74403652 362821219 781523104 256983854 47323924 374855925 626930883 61907963 591735238 4754739 19228531 721556467 950020937 32481977 646387866 497601103 451752726 499090602 196664142 906926306 550591483 66741259 309703756 936769359 846822537 2299098 609956070 833158081 761533379 930929750 301926658 652082267 430570789 189716478 325468770 939449160 675709383 757405755 687706738 520453825 52043095 24403166 731391361 309026092 823161893 822440391 613462829 42905329 631395130 962491300 423849815 958139698 772452546 452980637 381934664 28921054 414103342 895560353 890051538 220796425 949541395 179387617 154914318 557713948 595406237 591484463 400956599 672975747 843082547 841566287 92928980 773437245 857936781 583674981 463699701 410474797 51747049 998984251 696241771 877022670 709088154 837936886 460278755 923010455 110352711 809284874 41444460 958030842 30883008 136186939 191487533 507193188 163262818 181740753 490781878 302958800 482913985 391753629 328228423 756801084 631544405 127157449 2858660 177688089 592555422 799147369 6130274 178308823 120176458 581099145 34408690 684832199 133297443 390380150 218088623 941998501 856059976 123700877 845102599 108743212 719480727 509572344 80064347 564832633 608933741 727207303 268578761 182174994 443827444 471897368 114263610 417385602 674065740 759248169 285200002 648302541 26282797 253304143 348017790 787730829 264475394 948397176 436579051 808019269 443554926 493644012 434136446 946867738 408088572 217509152 251959893 282623208 975743259 922328332 88124968 716372646 146509867 448640665 745214372 611637902 345528175 145730144 632317084 907119117 841317978 231826474 287781970 50998428 865319635 371653629 462702391 85279011 775706290 866286370 893579783 788152949 702724447 834398650 682788026 130097006 830935283 57561459 585232138 90557771 63229908 168377857 590809288 643900890 555491574 715684338 747278889 526162230 85525244 84110925 445413406 467414652 89849159 696097453 177846231 77397858 765015082 384573211 250197107 297132537 205086547 937853248 828480721 631907669 251220602 78817308 810310555 33583266 179698339 602312523 59511220 823496546 404926080 915680165 540656885 356449849 180966939 823042067 88612048 848266246 492318828 822073250 29337381 793674673 263310167 20729347 826160352 151996357 688887080 696707541 775902744 826086180 974107730 38058656 487537879 768772688 606873042 730130403 456782853 323453754 648442970 16005591 316236028 58717710 529893112 604254316 363003699 63062481 46639388 299547879 6465325 936196618 221073863 953150368 705642190 459051488 288265331 104648156 459713117 53281966 176799515 190074732 546959681 183594198 904636709 627423071 446471849 368262437 38404747 108686632 90025441 377449336 184468982 292751160 981278795 341999808 636250374 910056406 665096663 224292395 152911299 321319668 500034131 325258039 604683685 81172110 649695898 413566811 383008346 962991942 601302424 19024807 312630040 591558142 910955498 309422548 613584968 81019383 562103771 34640449 871522686 128392560 207062872 410444393 793833140 974277345 128101506 963223431 677567500 276059857 18744504 619269284 208696826 148595334 512315399 842604936 193838790 737483285 413789391 741295140 637140597 543109695 498978380 226978062 904820602 919299358 4332211 824572963 157229337 188432909 22807710 767864548 615794649 468265632 51348584 775597256 299267098 802481570 939134765 46474675 690096437 791023769 728714310 157014535 181132071 88398837 630844673 401230033 877139016 203343207 328210970 184442507 384996043 770698244 396482955 616058456 342899327 307480256 835610004 677709162 324385837 427447161 976893608 839305289 241656051 737208625 91901332 768683272 246843631 978486691 437728141 556836209 868917 987162036 545648656 160298794 846124601 976107420 137345699 920932668 238553139 739748644 732057598 451850282 402902672 559903227 890540739 339254123 514547332 155448329 377467994 692848919 648913932 356427761 549931659 58726327 884932436 296260959 559978819 337787229 236696945 579286338 650780537 579923017 995273814 461824729 962054729 977161176 744429997 33381032 458746062 881928310 200830613 545859795 853299007 607501205 711950166 926679273 723747219 923352140 909785537 517997495 73770984 214069841 195142947 866394818 167877576 52740808 20413832 415234069 374975295 285268328 228010191 966514269 802701741 712116431 529075977 337766968 613039108 557894074 296413112 114226004 273438128 980946593 153109374 5742753 259304063 83760929 801501358 324414169 346822706 604838125 516209045 690994292 519090807 546574920 270298504 612947435 197102498 944497581 140748491 330000369 240106922 204909529 931282886 707688017 521907525 752862089 650109155 482985933 829415430 153051633 737333903 528524418 255467230 459887596 28442892 930912187 156695680 963458872 177921160 724639267 173783308 969429172 982789973 625520676 735543908 98251853 352079376 503603217 157140419 385844164 368339054 807704076 965422986 114631029 440978355 847726202 764746317 259373061 407913182 918859340 802770564 766862505 115801953 931606481 846892058 655750702 21256622 79020970 832957627 294653750 456611918 159006882 627396614 868131996 490721308 582524042 560712921 849509088 38267017 115864104 629748518 799791670 145038812 298758855 612804160 132967293 953847742 516623653 35187602 154646094 632949171 167178336 642352282 523778140 854817830 537680979 905086935 122247143 20751064 570066963 414576264 171394636 694659843 701995241 119107024 198941990 728056508 986797668 236479371 134256531 936041672 671376814 836530637 397180054 250129212 43094958 780692503 853753916 929230788 304317243 23104687 742088409 529208469 555007757 960103876 322645145 358968841 296557796 893589899 503067882 391519982 40599073 198155159 855639089 203141223 229936929 772423479 757597089 130694928 416665149 855853418 895702773 227061708 320112237 488495071 11669191 706285819 299010248 390988537 908167808 940073224 678746880 582912534 100900144 135308343 958587867 966686275 728809866 899711595 158451924 65795781 700070304 341891644 377621485 793111465 537077165 263829095 558663164 395124577 338847615 480827380 461946370 505186558 288736537 378188441 438864038 989133794 376143484 938988505 969276781 437034034 100601618 972088724 573310840 902487411 616925503 437236396 315991654 87264847 714488132 786605519 202357776 919063566 648407418 464511382 416485221 96785535 684537378 791192422 898464232 276899796 982856040 205406583 446486607 262126270 115773139 856975697 746737536 791050692 961426647 372125875 557661598 686445303 865803937 107072195 292870810 763477490 304550847 876186100 694133599 262801398 355243318 77958856 896112361 192112125 859054859 847338044 542926526 731060251 477128476 10566998 883575092 65029389 445103301 872379048 554858959 314262716 236402496 157158840 703264333 470264986 545225310 595252709 120896734 770497107 803379733 554128299 76799295 461272536 409070541 878103179 899089966 261407263 958294970 150470475 697477370 927725226 490435607 749740421 842170461 688543111 978389809 868885276 909653081 726248308 259884390 677841407 509870175 238393387 756763518 657260688 906499561 547865825 526401876 604690161 225163092 5915831 465298304 785462880 565562643 308912569 427623486 864666103 980089896 642783521 476361360 804019078 287110170 404815671 926805397 168454217 286913928 75863756 59955006 668504166 891513958 746404869 561789716 434428618 212255153 747978332 793396124 875949785 721689318 902282368 70092682 811998557 467930686 498252228 236589356 30528950 352204635 679188715 425536665 95562335 668945613 524085602 575211297 222573171 927885045 548300011 128116676 696961001 65375005 395614701 563014361 140214724 835003747 547853919 883438730 828797573 574997398 428803880 133357067 248096673 402943300 351882912 111146455 39265502 976119287 861430559 476495855 240468463 419146967 700615882 109133118 527740632 602701561 895912768 69137664 468042219 701196667 520565352 849076746 609369307 78255513 723492262 153434869 532592238 836429192 22017167 21647542 731699466 287932758 97135062 407645861 149753437 553033783 404506074 627367152 148125113 574383127 822109807 373906022 787268677 536329536 341419330 948611148 181115934 85169534 322537895 607883498 685273853 129040715 663845396 30575656 36455012 868001711 856823746 534033173 734514832 564304076 864566871 160152229 605113506 773575754 923562425 834694943 724414620 622324264 790264407 360027277 8775582 879336232 281579328 308462470 319591247 120150860 917493192 84097583 680335636 440721883 812072948 312687781 824393534 335660517 572449649 377076792 720909209 857587119 184637602 442842536 787167996 853484133 759029295 735685977 634951300 144605171 135305004 680299525 489287403 447451653 133920882 659572981 476109103 658127017 201236717 116322000 350041835 289974632 763810194 372047069 429828449 823195684 852994242 116695169 473120351 611571946 354982892 273042116 112697128 481676903 957161616 365512491 680713042 616929296 34029596 332616094 143506319 471598118 859063267 955413769 459710728 402589552 721426156 517951752 7890756 509607858 338231168 355617367 418538223 957377509 114036047 42213923 552062783 670188869 718647396 576185419 731986383 761313247 842650006 194406873 388370227 41164950 712029087 431573741 148716572 518222648 266808912 917132166 444460435 875910644 22275600 689884365 284109477 318207945 859654358 586078191 897708646 985718426 145880298 625228624 272932573 331484411 337306315 729731204 599113956 535555157 463706998 500741113 23467279 21048005 547227117 948339771 839023827 937618770 531104111 218085265 755472790 316355419 329287628 855653355 442441839 135804679 718162025 381561537 832885800 793973403 399909483 409633454 767847191 832267781 932206087 509655761 673232087 381732901 844272432 160203885 817929973 967006938 295930289 892409757 939604801 641377030 637005401 708986953 890717288 897442979 976992031 263491478 437654403 4790421 38010478 66707776 945814418 565733234 15847027 596884028 476572380 289391325 642432226 356811556 451713000 551572849 295050782 95306731 902773239 526037841 930242930 709861858 963747471 156361644 609943317 97601141 58290542 189232288 281019551 151059667 375091816 483740158 720750279 119355799 690903919 28073798 224338096 323570518 263836881 539473562 718237587 890815574 131788628 258210769 134365192 712797899 211314453 668839770 525004717 359842973 52040098 952382402 204851147 479231340 656969811 408134568 793803661 190841455 82896550 284994009 477123751 45822196 889030798 792470253 357622575 682276480 647057861 163125771 879872487 412980709 160490522 552192222 294228517 175033277 738255224 226491912 520469318 740520916 709673764 979530821 448639792 701548573 772691170 311099215 947343856 311992451 623192530 992300232 30232211 273094796 156305990 42554269 377019879 356992053 379204542 920477096 16409326 916428762 626503969 399192036 815509034 684436079 261373352 613518451 906002967 236033888 500689352 692863241 687053931 384441554 455372 537345844 456669271 420551747 376505985 387670211 714724382 192365161 31566694 739852737 270833696 257779013 839513099 867675225 436512101 614360149 351269424 575858855 209209880 415209343 559362124 630429523 391930355 6531657 90584186 154107945 898994581 547387277 941370326 19925954 581833190 151680584 248645972 622088346 540885627 31114803 670824547 3712576 677408653 18651474 301062368 141391527 729296275 985697803 130058556 22116140 200570196 251044751 196287259 374190851 577692710 227578133 136045852 113838145 397248649 978337429 541391188 629154604 88212958 548660221 66791477 253970767 281401258 342584679 712752667 492581294 623721109 608767762 750193766 937082039 252356141 284446019 835675966 310561869 933974273 998903408 321658761 166558722 319538993 985195289 382425348 729281940 745987758 726079286 670063568 76361054 635751590 23164007 615573147 567541101 985718708 948480155 943090820 2217715 872564482 546956286 126719649 998679104 261723668 446930516 370277317 567562682 267692461 312707891 396640730 750873654 734042732 110787386 834498307 198051188 10747689 864446524 621043387 198927502 566284085 700394216 854302849 500256892 993019007 7706823 174407304 828804555 270660964 119569920 703509545 956144899 693098355 410734010 625543175 134780854 825695245 311410214 144110120 21597350 351334801 61612179 932564108 195275316 20857264 805917706 500919720 173941404 499481813 373198004 255121723 799755182 807396845 799446320 713810573 336278804 84148516 162094892 406028426 910583867 499461982 701064398 353377689 533143283 584084296 117701910 719717404 30622373 267681324 280560637 158651061 328247116 796864816 229712450 171787276 507184969 827511108 34025944 332692585 964974852 385995746 802681491 115276879 881919831 583094012 948397914 503572569 377857566 304045295 654957497 392737424 482782295 983571118 304792853 950691657 956583198 911246375 104711096 181274528 194268012 312379003 318691818 60466227 521033322 144303000 714750760 94234486 868954082 803996065 48501597 346090063 151120896 25634481 486022404 827603400 399250592 883276542 923243251 261609626 100295735 996530136 98411231 247149323 450712692 5523676 938629005 100179416 850967266 613570940 779400692 319774486 121774512 661980818 198275660 980047247 986675817 67661944 612768670 979344577 183913484 107887663 491515669 898496774 484403510 606951961 85041033 720054572 435693759 793001527 919087207 525330679 946381197 745173484 839329342 942648593 917006400 244090946 520521735 479980150 819538819 151218680 505204848 30750245 648739059 396525340 905875134 371638364 182775154 991579121 831541270 302328902 369147278 399631863 572328749 602811991 606517421 908483324 900427200 205448750 104758043 843732466 364848777 920223419 252962850 944069807 604698913 233167652 379663036 719526406 22366062 464027583 510448352 480162737 473109580 950579704 65257064 453926691 429981683 574692901 366274988 833805223 240388315 401278868 436200865 769697884 58226809 458350711 896700233 667264607 851206096 935837894 49103035 715393314 864263228 322601846 242210110 716027023 634803857 22813800 712101682 406247169 613661347 463875570 158133157 950013763 116595490 212930854 603668428 982819557 939096080 293914408 214959002 654914091 628695467 596076244 518963433 152317240 865295117 517119599 225943884 905531037 943045053 65475586 359927514 296359084 232020562 553745867 585698119 360421523 487331684 996269907 107366673 686711724 913939423 383756839 334560752 272169404 561392548 686939431 18447336 398606723 86161115 185546581 966383577 966404671 556992552 179911845 342037259 303123755 572139265 32019751 636168635 90117777 353085363 208536175 687796233 28431513 423076947 488864474 293471200 296540025 492320248 468739405 313787213 739628217 69033925 599190471 62737826 738272215 764775625 740637591 641539740 251384571 488840487 245834134 508091607 64926265 977006040 102556372 595776976 715066877 524421355 675849569 547273277 678761567 719936979 137098099 405887928 423373090 746730548 200558228 453436902 564498408 551526030 466180755 517279637 205269377 952870838 848216591 34453136 642704503 652405914 872644962 564842495 902827825 429646387 671414062 662876655 891230596 35238396 416090393 228526870 849115513 353006466 767162635 501216499 282914866 593057669 73789084 572281502 877117344 366835770 590351139 645449833 363936892 45080856 888874094 469583221 106209720 546582423 142244191 541923632 467987410 806070967 867098039 610393741 870690388 668204469 67681068 996901140 593162562 841007043 206735729 481056029 851937217 354374277 578717743 546408406 976225116 534830898 238361831 295980371 189280228 165651215 80280771 527038905 850741997 432867350 558325809 160864056 718495737 467733548 382747408 372348157 994395753 77958075 622335674 561661220 922327964 604795298 784478682 583109336 546226557 647351967 761635544 839820483 537570534 529173028 431143587 610588860 289122147 616429389 332783015 657272080 65351702 243158270 581588369 845374183 122331183 768970676 382417573 426308375 33516117 636955873 399125363 416304041 696892031 324914928 367758177 169773713 145485474 652997105 125255588 911795065 76327279 269315947 360342576 775009177 164489602 462349297 179652767 961086876 5579649 365321758 263655497 749115274 982544212 697490597 95417636 838989084 104308353 856574419 695608035 655330871 21197156 57751276 917469371 620478114 668223586 241550587 981061326 25564590 660300463 230557928 193174776 51076642 9023189 6146052 210171758 623111333 180532274 254511071 716708151 78872008 132193588 590855305 526278280 539301403 997288668 937880182 559969163 564148351 6309870 333030908 645206378 612613080 187689584 441860213 614956724 566813995 352902685 241488990 255498228 688097463 130891983 334607337 100078253 289752011 934153263 298039785 265489552 303029996 370183002 445700594 220989068 716909145 918235766 55700184 564494704 59256671 784566214 233309726 898212660 196201256 114214108 125577107 394929311 121252489 194233867 798629515 323141303 271332608 687711604 910098725 482494131 543349966 526182923 126868166 703149361 333612606 10775991 445736681 417496884 489657286 277512825 107318076 220783173 111200622 916726026 447019922 700740379 35665792 941824352 260849564 902775371 822456589 918530608 639991393 937900325 494415056 67390139 933147702 780571417 519273410 528289513 282897699 877152389 937324259 308138126 144435247 153891656 899624942 515988310 155600562 534051240 841953721 707261796 242643386 33627862 873942984 693218864 452105609 771837272 264222957 566197884 318763898 726467301 132630964 866680329 156004594 511750653 825297915 449364036 643228315 335371611 112675138 129490508 130445293 740142414 622053294 417346249 716924344 610137635 500641016 570149349 382530157 827573696 847260558 77976408 79530918 280720762 709362607 64880018 342579174 834181159 187434148 71413111 4454688 105441701 764325409 360478090 138531790 297732122 199340473 457829528 258691509 64022882 100724039 636774159 319304928 48174874 10165953 564622878 255662434 428454472 909901589 151684045 619648067 672769342 590195537 513026244 308031295 166134660 984633444 963401024 415023633 968353330 666022950 741887206 985617283 104198771 217340216 414580797 667620185 508674068 270358393 760203459 396663600 619613873 328786975 679344719 142248461 745832911 904786632 606731194 488935838 50186925 14121999 183334133 233691415 224782268 121268267 36956746 24340229 257445584 974890677 6907921 150479020 510021655 718394082 986012698 347975054 349073705 869834788 487973173 996828270 197948221 352243599 220709894 884965207 882601740 824417199 838262839 905577466 278862935 189241239 505780182 463964949 906185840 135627247 757606752 487982699 563092757 880092929 591368072 975485670 436740991 886575649 468067635 626758461 757632806 865465122 929463617 354911023 982640126 81810232 63794264 626557521 766750487 20412379 547646830 990438931 267522584 185427371 176293441 588831289 850056219 801159368 39629657 117152085 28120811 688330608 550532418 674485513 77941829 568400253 156976189 839416594 878423308 233172461 521804987 938512723 764502431 626198626 363185503 290510529 960157085 558839894 220513251 785538230 733055793 757588030 77055774 259544333 407061670 213022701 57963719 457820359 950300637 235129085 109396419 682201955 304627967 515212108 336034259 260324012 718739 897334333 644748782 161835717 36281236 782293873 886012184 119939008 202282849 610906232 354767655 267950328 291938506 610193541 478629223 966044509 117418122 246360192 332165484 780282019 240659620 137237598 119697019 855849212 575225081 517600630 790676083 3909617 542964397 918118908 176839791 953986606 988856386 897589719 451771765 634171354 477284533 459038289 710633399 124086346 260024188 694769876 199489083 982256372 684358665 761756687 675582242 287457230 933501364 580870773 576038709 919950598 614619745 161510634 148392521 764279697 275203805 276606136 179023039 601473749 211412608 978879995 782387056 940217721 966908302 437420043 918663200 553943245 589252234 814745031 912196473 548041534 748097683 98366765 559172710 528957254 919662845 524115953 406430149 627972781 236340797 258114067 120496311 985170120 536372216 794983726 29624298 755799381 750443551 522379211 217645263 734480401 913288449 626520951 634734620 164041554 820887529 504252305 859484021 825584710 747999904 342520248 803345216 55906548 159039509 102030712 510673638 781008316 851476446 921018510 13530307 174974741 821773310 706489441 157443450 311029456 291200870 127594852 705052157 474771260 410265134 668960856 17964634 595663601 966867016 104526212 891360218 385237376 419649668 170300002 129517877 982621449 388187086 217421788 503240445 225794291 599330227 45181424 603800554 33231806 305619365 421488728 647170152 654761558 525374899 644746131 685983718 982320679 504325581 916159363 585222125 108490831 934636452 17444244 702200947 235898992 455198856 107443814 67292891 523347081 326228069 114407474 109044307 806538038 611448803 393281824 361331390 302240486 198962578 942163459 126286642 995018983 534232315 329386302 148135940 857269881 593088571 129559400 254245440 284227137 26920129 387667148 332861007 533333432 929806098 415569446 646454766 112224698 802268552 544772528 220731228 622355375 149905879 35202966 68551647 985793792 657199167 20887637 427521846 392321937 948019209 780400309 978137365 501530191 283892409 84692373 232686148 398073531 359065602 870199051 31428241 551004598 131740568 358449750 124543406 594445110 584774224 413499631 125303933 275736490 406579490 575590615 625146400 73518470 884636918 274875049 750039653 229997353 369943181 688788244 89907427 813707632 403242014 376920542 622223714 240988274 175413039 774729129 243495163 743453641 839777551 320963861 270650799 408639398 6747567 256740386 721754161 611110836 924318470 133946435 535824248 971520921 758072812 581819914 574289621 774630603 873331892 546617998 61224349 172410018 180731122 760506930 237132200 224231812 621659361 411245178 525463946 788068542 989429905 247838427 283025753 195999689 965631379 195222137 418483476 294523413 44973032 545982692 858988677 966796265 524775725 836846759 57918464 841646311 698202504 5316715 245687868 830413515 487030784 951556543 900795893 323291142 868032873 426258493 604206768 838593104 829700748 38831371 947725730 274612404 52102892 390175407 224309899 763765255 399327836 966941558 804092034 341652871 392513339 440089673 434338933 849778817 353775616 773912329 73751550 174377190 480015402 421847097 940472964 126026262 824527072 537597186 952879766 77420655 64111146 670092743 872921297 338935733 272354944 246355374 747118153 327261791 99137908 754232340 155533750 993115327 467708983 792137914 567688575 402900231 172036210 991613601 366890826 322763390 579909972 494266160 493926276 731267565 140334317 689817716 857244283 672898654 804279812 790658919 982945587 751131865 201513549 913600849 155450275 172351179 141602260 985492517 641735251 224920228 78171395 783677412 762782097 178501649 584342919 758571456 663522404 883196875 379960996 276065641 17711615 597401116 889484105 476680117 369649949 454686996 656399848 677233471 331409931 893280167 408188911 94885891 308513196 119853544 410734192 755421907 946641522 759912885 589386931 764042053 888693271 750667689 309160967 867810752 817206051 200300247 332828168 42317915 404344891 679884243 823733160 772277812 872397643 538781526 404761878 19997133 120592245 821053422 732508810 78430148 89763811 48265684 785403470 448233145 412473693 759583783 617485159 55990941 965550851 231852568 761031145 969201129 163012652 716652734 227198407 747808246 534073298 322675825 917016954 399384466 718706610 862757715 154122365 603485778 45580081 121129110 34880348 374687989 966655981 11627355 188154113 874304178 278502980 942982403 393145984 94953985 31724015 937551601 285140689 443662099 854356867 670217145 173963366 445036019 962422117 743953076 696729260 570595636 101933405 410705872 263152326 696636596 223250345 242214289 833774449 187868661 723090229 519656903 121731945 390706328 713576250 422743085 636248942 900903731 767243632 193054809 423939725 618453110 153012505 351932254 736748777 227614229 442097866 225531130 289914193 329155328 335073878 994792990 556942670 321781823 382617217 731678842 680371437 79605161 209815736 887408661 923545112 923921925 957360784 213380586 483878777 82028529 189160653 944421568 508784442 612759882 535515669 720565140 856340137 777474447 486981963 776355582 377880400 762997225 974190088 641719096 66711160 144447043 737129432 366660461 169191727 152199125 310487618 778781990 257032646 96543913 18290465 178972239 439918445 88666306 595066615 476183497 235663281 483917 203453302 762206176 736829327 961008114 823740448 636190163 711918008 251951216 915789359 16493713 195158704 228486111 945424543 702367101 580216955 35929282 59234894 17520017 258480570 332863172 501685288 802364014 795227168 200162815 712354699 899044604 15706330 394064105 126149215 18163652 348182169 639962459 327105359 800239322 917197578 382376584 582464494 646798855 91260539 922142360 78144544 769394294 492448130 937426637 806661292 585748354 475051994 602257139 176575427 13952714 646624222 549498621 689138080 97979667 642940005 709319267 243047086 317951877 417558528 488856970 959289804 83261328 623740674 116551450 357407354 562615310 510590116 121680837 542613075 875169974 941991492 687585575 512255398 841814822 803322097 998955962 493239763 993821429 363819366 288181272 529681384 962794461 912751892 941446394 632280282 425402648 559416819 194666492 386497258 436530559 71121231 149038051 393049957 801888284 251878209 168260643 970941054 247913210 378474204 767792136 575027394 395979698 534265865 444102918 825277520 912678836 141303046 816695689 78661550 302936249 862079777 545976315 405073599 408416121 660681996 480854407 203622788 570195480 629338019 468573336 811669408 117794933 856186455 241472521 228063571 211961958 180177235 385211446 442149475 332214683 977609780 359708012 230412639 375882607 494676717 3566443 161206365 224031766 787696545 665538600 312593041 552671588 499995145 29712644 751547220 304762354 828011257 611686375 359705954 541607123 953487947 642891633 591234360 363260396 139537090 828530957 131817001 73790885 960478199 374377371 240076425 176954647 114129826 706387273 560789578 495938330 230487538 303511090 766374736 737096998 405548274 795887015 904632754 365850675 652316928 422981628 499753298 382182426 818259535 916632512 945241713 101447848 773043103 118094854 859524773 849078830 792539696 796788165 789880919 860830749 760744057 620677163 42413293 6584284 30650489 875792429 462201836 330520761 415965072 87789196 258206005 519906558 741466038 784453596 690363670 854310790 758338592 195235744 244545030 774436260 350598389 983342859 370460747 758018608 495738962 563970576 299711072 148594992 341507786 13424538 967243808 820402919 831425705 353570209 380251415 956564410 996409539 944686688 743600217 339163556 593802342 589990571 854034467 632491068 577597272 392042451 805889035 713686935 84357318 652538569 411456508 132622736 209442450 260916112 537457374 932403782 853875283 96650951 376204792 871097273 746089765 280462890 48074782 333158197 780965192 81163900 105644154 754095738 276822436 738554181 591668709 625566272 590344945 565605986 570959610 319728616 531827965 715974598 943311338 6237982 33305236 250837154 953171635 858772263 907370152 982076458 596432742 652969846 271789055 754576454 769889879 321551643 352746841 429910224 826746520 844797475 482264833 16263348 818226219 676459598 610782104 121771850 629133219 240688818 82422155 873516292 184389666 375939043 838851938 672800393 441237135 491999344 104800017 928024923 331320689 433321896 660096186 13056844 359295719 680747135 578301460 402660685 78875280 478287449 46752569 770933172 789662338 600338338 879793830 861980078 969730210 98969576 365022781 361885657 264771941 672742675 528451065 654235910 56642673 897918649 964483248 147669351 485870127 646104699 863483662 884928391 960852657 823056573 825695462 994646784 251759814 595912927 752463864 59233438 309448705 773358121 635757322 761604841 834401838 589943474 408806537 310634355 11997608 489237469 483295688 345870562 412546247 661736546 472307198 242754223 813271187 971541485 34798415 615326997 997688214 118109006 859574679 23860126 568752792 288254982 472805402 667945545 255503705 142613095 572225685 523971539 216601796 252902794 126469344 292196479 559031402 434267973 978649727 219892807 473222899 464785197 959422137 352752092 864045966 804368178 614735801 886606155 387556663 86668737 905047804 944682815 622653094 555621283 265218959 602178467 975285604 878938190 994888854 583518055 902759536 646611965 983111085 43449597 710789916 626912533 187251643 744739956 375828699 438244261 481669481 974096255 100644775 749156079 243891305 797472587 494697736 922999812 670249784 3656873 864750072 3645856 837559072 743019812 556016319 474639442 296518795 646341728 568640534 345236754 635506530 723427963 258982314 381348134 434272916 605714354 29667390 413394558 617684801 613591406 124508898 618464416 719507138 105010640 887984555 143877475 218757099 221118070 618989497 12786354 586436294 123281028 854083119 154417093 920991742 76488418 714054620 49972473 696229976 296358219 713593855 452472085 519336545 387794446 197308601 688313923 685305256 390815921 473639233 259481380 746407838 868414042 477010068 444595607 107198916 582021123 808329351 672329218 574123704 829991674 545583464 291985403 308816116 201330060 33279907 327955859 763040702 201520311 969130631 328379070 174358579 878816100 33970178 741492833 213954692 679172633 865085850 181532874 168242443 287865640 425102860 594022407 944609805 646007213 234566955 682972607 999602545 631415741 332081139 290271018 934791322 183751562 151090839 52497950 246666260 612155482 6003446 522158540 357481465 958662414 740634841 423257709 83991509 716326024 357691812 237351 80848954 85217795 130099348 837915510 377755252 851702363 240057709 614073483 534856345 248371678 133622245 906842868 980793282 592312304 568664318 684848749 640877539 344521564 479287445 347201265 514129534 328766019 173254227 447993593 319996332 902953033 37649176 585447819 516132150 442955245 868841108 95768792 814656997 367150074 341847370 780532718 389551998 559557883 156544766 324181988 739904271 586195952 492074697 758351825 258801292 794634825 962361914 207863597 126109153 199159788 127543034 744894461 470152473 511230095 841922718 828651292 8348829 621847763 760742017 995985852 341142079 307045119 684461083 721861041 489448364 841194595 872407696 882131604 342854255 120941908 544801441 70632710 105892536 945780946 260765395 915453467 222474437 598595341 357655711 189483628 525490293 323303416 409914789 705086111 489517916 33944457 937529929 890067623 272792999 329417170 914406320 28973811 562601937 156795852 826790424 202371243 103290135 26446435 431082249 231104104 582486918 342678414 195960520 674923352 278362371 976556451 913293738 397371847 985777587 319482839 136327205 901362386 834147579 30947773 128597084 496344684 857563273 404182756 71663687 795006084 641091404 166799988 321230767 715784987 207491078 327238812 646014203 585170329 505955220 376774208 252180041 811413875 246812552 887589376 218623855 455050539 235907950 193698942 710137684 442861134 695191930 874242734 324253853 429804930 691185199 236491243 109235991 347984737 854903729 34628560 484801958 691223697 465330302 116629679 537765469 842485813 293685755 675050975 685967558 958982058 491762613 966483362 601285918 552151682 957306828 194135606 561066443 765049349 615548419 678479359 943177998 662988911 976984647 880797820 429767864 669659892 542341546 104444115 972684780 891127353 610842962 237560423 862204127 899730828 163141071 843919396 336707475 983740608 752194609 412103663 927754164 183998529 276623537 318816378 710378831 732372401 447840632 639397708 549537637 584971891 704696751 529504608 917341024 579522091 60802832 661401749 786352701 394671437 943228922 437493257 236754594 818368876 93683120 113144208 142181498 787993324 57328124 349800116 65628696 828449399 955175585 885378682 475214493 502417163 158159903 602426601 880611888 742964243 57852106 133779314 722229508 783788582 971968358 283348829 897632581 682915896 748628115 901478753 766276379 634694202 322462090 85097495 26211843 832267022 598812711 390107803 959462628 230785304 189965151 713996792 216135228 247916856 656725271 6905953 59277895 246174240 911802910 188233571 683024539 917810672 290920552 866714187 127955890 186659092 801809669 561450681 79810114 929079996 494397724 370446055 882696321 49573133 997865721 248423058 993168671 724176530 568423037 474133897 723261792 482132326 126893848 772546924 182687165 958687373 440927240 508936941 979655648 522886441 491470041 136903345 791378523 763115300 622767261 663614482 762514372 43420179 463711100 974542567 266367004 190847789 216156264 161255321 785214711 671586256 238155014 443925207 741142256 225251201 395378243 704781950 651437325 9081764 902649091 930330881 687244059 640918834 504387490 176656751 820345835 628201485 900414780 878450021 99768202 961781897 64427838 562873661 162312792 838927148 288672855 564203728 490981727 885487268 66070296 416235695 298183556 907778885 778698096 281378085 408386956 599625725 873377553 768162340 660898897 386143102 430287136 206674782 644917173 153512762 964503011 186304184 396935277 185862443 582690306 371755843 577858659 21475022 709422581 471571235 365517852 804548037 598555003 197523563 88333720 50823904 643350256 761710157 860779643 13049415 903749152 908588206 513388414 410973458 666643394 934622690 807406998 578501197 539759685 48524088 166168208 163813455 38793715 283618570 560684799 80361647 914871336 460936175 263261238 751564082 689882530 712935493 273488654 900890323 428625672 687462909 611212071 175551734 796066415 844490331 119891202 561036636 90445416 473369825 451108435 550759469 299467985 652952477 265800619 875422350 389774406 442394658 120310494 887879284 670411713 229386470 881185189 185323174 802941296 293953085 80827541 236703150 820060236 200401634 806053062 129762150 25074983 892323846 577525523 222441828 547607804 623611148 851137460 478670124 769704812 806236068 499355568 320173848 883075499 293321171 183065459 170151167 237920012 15169398 32486436 244537726 177210458 670060178 641227388 736548102 912206203 388986166 258201403 542085844 359985066 142131142 233811145 36228974 894728593 72429031 289653073 671843993 911170392 423869636 392765462 654981001 907766009 868443305 125986947 646368876 196001134 666984936 542220008 277198772 450611583 407500871 934296050 864649038 777050304 508603275 877424203 6283748 574882564 92230743 506617990 681161627 432423256 59441718 641223373 794682901 177723972 875258051 449723785 736424070 210387147 159024912 102192870 623508699 377691456 467019191 838617705 941963812 655566101 163930967 378533410 525130725 2072804 332133649 253322492 952879015 615412188 710630782 272432271 500427154 911707948 241846501 867548341 979529096 517560880 833949869 970318118 324368610 670741908 34004741 761513028 909105613 294554688 311137064 70337461 360169802 950755287 819354121 853664785 59079163 399066972 737301197 220260723 273150245 448617712 42076097 777127552 195416686 995890721 152487269 669182854 374381411 191376519 693695786 83051888 745481005 260292935 33755655 642947307 389287192 721803611 959753913 468499471 923801841 674659856 681419949 781301159 634802732 772302493 890420298 932791729 239156662 859869844 882276978 604990677 513075250 398386112 816353278 197293484 749286237 857200609 212120911 981300643 892090825 986360792 953171649 599926591 766607109 380533520 437373331 992867919 199649743 998603314 882898185 389288009 326115916 630462750 574985706 601929328 321778300 983035613 831852774 37453771 800806457 562105335 178186819 149786054 582063726 839946018 953849847 256347167 926893443 880109903 285687181 84023884 837369135 960310951 21141020 178142380 812602571 771035513 646550697 213523072 456054750 532789049 682720470 270746519 497138457 174824165 695532795 444831981 804592709 525353750 608698512 720649502 15193912 967589037 995957757 488380206 646389689 435634951 336776265 672049131 449917320 295130745 925219543 387070616 247049941 52991725 896495107 495433008 464584364 65678756 159115066 515491067 988788568 689556866 915876150 920119029 668169312 478937224 581883397 466011453 101422833 437077198 107949134 908673513 678176071 276484215 307243480 477665126 187349752 690374493 747769130 407320647 828585424 572584093 415909641 889443609 11933670 769186030 751198796 766768195 566012234 931170884 353389153 225991755 100593573 460157577 857635668 524804447 711142440 63977020 267141756 728017769 482085445 233800133 107504077 120124526 731307534 608472676 656470968 170063304 849796773 406744865 817689084 919264528 653455187 145970070 833720888 657031144 960843517 197679852 700022544 539457443 343611292 972206858 522644526 232622592 769454770 792292723 473856934 687488573 740822865 763563119 772145124 130489371 946043667 609900219 643057879 529403074 770461171 753138979 802193282 957900610 982803842 174094191 624856716 904427749 23677443 890619079 794634110 655429907 352777876 567330313 315569397 138222604 278114707 710382370 79172906 805286099 485373014 68972952 649644659 629327202 713703284 498991333 51652706 477092636 700627038 9875113 950760849 727972149 370543218 471529030 401377128 357252828 488962257 29931549 244061352 865677804 925079670 91282092 101180719 94805196 839801160 203347038 525992265 848337891 63811021 434175306 370136389 8665059 782204768 831518706 566839665 601098036 876092991 180590184 132592163 24253527 795824443 442847661 502465761 802603347 317732422 470997625 478826290 922275118 136613976 832601112 792078052 711292289 446754204 228377932 107177229 946033578 688944878 691225972 65334464 480299157 114855611 296163423 830660580 904509897 24963055 557297018 306227904 961761002 605759267 121099322 584688266 411640697 949399337 586412400 921081348 928535594 509319304 67828406 157465617 392328663 642251159 806589669 415436623 453089167 375446288 615667572 422886326 607270335 329446930 375954715 369940997 279292893 898686224 194662970 603995430 525381098 846947768 404878941 751748731 599169786 892155716 424593865 9962380 751620356 845626555 843800727 852568257 423084584 660487544 525568237 466106862 408184202 191762236 996970616 378202789 538816005 428354232 558518983 820700691 911934534 303575878 481276053 820244757 633175747 450914155 137807392 961947093 967582661 722766268 234004845 915250181 201771007 756798307 181186122 480707410 530268068 147765883 489268635 335212365 620650298 795156795 14811242 864047933 557319319 198757994 859572567 374887906 746053264 95410809 440528189 229289719 766045332 463388762 550476093 151456056 68540617 210227455 877048889 216651661 763850783 224353945 810131448 803762609 442579439 626581043 513738520 249924286 264737937 10662041 523146601 360992798 998824241 486267450 370045386 382926928 121438661 280902679 339238427 544244366 257457373 134685493 187981375 496618942 608272608 756238479 967820115 295130263 127409387 61522668 778748366 162938384 464903571 806195653 514872674 305304289 91068434 375884256 43499889 741672138 885339509 915432390 538600749 115595017 448545074 303748171 495971206 615304479 874136950 997105781 311174340 110648168 622637401 748593856 317491337 969851946 462875164 317907627 31142511 350898499 325918326 513486835 180728816 232436519 920958711 610984520 189764364 570186758 798927201 478700361 812702525 476680082 169885580 27099377 903781124 164450820 438295432 358235885 354428036 630909892 396925040 404386116 333314905 926534758 849201799 132761661 665402387 148664469 887300168 948632316 861840700 585802448 293829644 761367179 137730078 782632807 290418835 346568846 7750308 107090873 76109536 38774055 330754260 577210326 761824049 47727080 671370475 216156260 59895883 174479651 53784420 235509877 12267299 609245921 197678412 94685503 857059791 247637282 353077798 462773590 172955352 499027158 734582777 610293520 394991130 143731164 928693442 854007058 266553309 992749033 875617670 194462576 681008445 359388510 994164234 214468075 13212515 617864795 816666461 555079184 785500026 588880237 527206821 979850093 118895516 783137649 924992575 789520075 143482357 47965638 860734713 400089369 772928328 581679335 597678773 294385966 20511751 823208697 100914623 739259871 670792816 913439777 730883005 460440834 200650335 544834133 252702492 878731898 539751614 179179705 938883265 741196291 473648984 491975984 895721069 66636929 976793705 338882240 194241206 426285374 622717994 987236124 96552977 858972700 694332014 853386082 168931282 194840223 946552812 758018017 316593620 438919421 394094430 569784347 432395997 905513617 740790361 226484506 742891579 952259804 573451994 722135796 144874799 498141747 882849126 454564379 45523843 144341004 273543729 68920612 880801372 92309952 588737823 782597673 451909060 859391331 943214856 182654559 393006196 731810275 519575162 185886818 327384479 129313623 860182061 215989958 990223686 560904470 436447128 865290515 736959790 647395790 47996754 212133892 180663579 591430293 962069539 612532243 19119769 47515771 541951821 92261913 600675932 375581917 82069496 268055939 595338258 115633158 542728975 44843447 715850168 485578778 467399453 134499435 165589524 354299950 730671302 966441296 715744355 267613588 926007319 686549664 846599936 567296036 713694391 30592538 443984708 513260617 855388720 536796560 703989395 16114290 980351954 607256646 511321349 271189089 566612895 376636708 775923839 785825670 760194829 925060385 216727593 432200973 634679373 345308969 895449198 314181890 711261497 665825996 235835057 543002642 244763006 804346775 349135664 388800422 866670178 549682586 847650086 107501159 258784534 963658355 88402076 734863522 878383324 218847783 505899728 508855898 869254644 109272769 678039674 100699611 217766120 890627206 763131652 885682269 500650384 566607487 687964666 249543473 11601901 588384338 57000916 655138295 37401544 738856173 898367777 104771975 432541956 152330154 671451085 790313464 690457735 407859884 884364610 124218058 798206625 589433722 699267972 513270854 100221884 450451602 584026579 357701993 526218492 288552812 602015117 460277077 393792546 779558801 47996824 922217865 965595676 219942317 991315741 356588278 816574136 74305118 806404252 817260227 980116734 247977738 960779361 114578541 59000482 319726748 62152840 249244038 507696455 957645487 362599593 532446231 725227125 19968634 659404615 974347323 998440300 447147517 209785765 474640569 114368604 462186644 551395557 76973467 545995269 862606995 173099692 614600453 903243547 248476225 774782241 244975470 996770984 265937243 356146117 970866080 709785125 932127195 242074518 196974603 48631740 825887380 304356458 726358186 805740818 283152371 192097114 239700323 652177402 825883099 506062811 860961705 892781067 39135983 99519850 331572110 591668993 171389803 974422096 577079192 254381656 571258620 381089185 643724973 579052433 168078683 17134081 860408595 538182012 699439617 308482995 916910654 936171656 963596656 54839147 843528087 879814642 973497282 117099336 184800476 66582608 627541987 241774772 118862068 492804563 856109099 636501232 958591496 63798278 962551509 21223402 269625115 154995888 329415836 291484932 117731722 587581233 40040115 850397376 479511181 109398939 685294888 932281866 555436650 28281747 764714489 652988224 392595123 970129664 328251880 100928757 153929824 916462301 957375114 704078173 282620894 129762696 984616907 965555123 10455680 984667044 670027428 98538477 727488178 159628372 930430285 380339170 152893827 58438970 756553875 510645118 792973204 97880912 706114378 658154601 358750288 340900700 314748362 234498230 573739656 267794265 116224454 658979344 712531934 34845008 369077767 301208619 43435102 700167298 297150885 502414717 883611701 984814568 825257730 779532197 640739382 752694333 651019689 211789308 633266207 574066055 151717303 782934957 724812249 421349144 701325932 724372392 104374968 919759825 140098525 27986101 371651725 554174704 56992328 701956650 396615767 665152363 659358565 594159548 902229760 302146846 868136746 924204135 114594258 502389137 874955320 231826816 150811798 56475712 152444884 330821975 958836765 787923604 119307247 365593677 2697834 13519824 839837517 452096683 993994839 159840583 282481223 196480916 605512612 591217922 623792963 952607076 634109 93637146 100270789 882091796 78123782 391409646 827959696 562926355 275752455 966622026 258029649 735813753 998064767 975868778 562005601 982652884 523775386 117117621 131567099 43543266 267558204 32054568 569051276 170995421 639129349 476005447 70554067 62022623 468594476 569611401 278741606 198014680 364740237 664851487 502295646 459978741 764061242 925990515 572302508 579139600 266450361 499447279 882692158 573561206 43821122 761028264 791382753 778231178 167602457 326415913 317769761 134267120 708732639 822776770 429758512 971225747 4155315 198383400 308900283 102871956 699144382 84604528 869999550 309224414 263913497 739171937 574686357 408008538 312936634 528076558 730178774 937266037 722975649 629707932 536826589 659888786 597787325 235379337 580751877 367527638 302865023 782221032 977348965 312923989 44690002 240259679 670456852 83121853 761235395 861848815 702028144 546188706 703923371 250898787 882736778 544880271 325142364 940727435 204359430 485861331 261968571 921769731 815812136 379456759 17630930 86034695 915717304 627332201 227648968 339173778 603141852 620885552 324550458 197022515 429485676 444340374 652752079 414774637 105602271 316531139 480894114 210864123 181689389 774828424 970032250 625500549 323400032 911219597 535855501 563137562 403019427 153122023 746313230 738842510 532860525 801085372 962135292 612256606 606254603 22132572 59757994 137091957 134457806 462938795 321099895 63894503 957765391 216437465 282013386 232130180 986711952 57025021 728038075 476642709 658699601 53870400 441633245 63105429 386990683 347285412 458626360 735399475 208206624 533018373 893194422 574241590 58896396 644707481 995270184 751494299 71140911 706967315 634209860 863183063 320555029 664389131 670709511 44875051 546467230 859011363 736970838 315839862 699046599 215073152 514843295 953996440 647394487 183995663 562110709 815535436 335885446 96259162 94884836 852125633 319116140 994217286 259933897 515119267 659326722 594676786 165781393 875994184 544896438 564880019 876032353 378483373 410382048 578946518 26412686 564119403 682803904 676390118 180770457 484882370 192611064 589318384 529315154 100504258 550758632 611564345 771071070 312478095 429639150 306171073 870176149 393678448 361437024 182811643 403961380 788557553 472388250 796872523 726852513 88181293 911145197 204909411 175523048 530644626 248766192 256613972 732991533 266096948 482746932 856096656 544734664 371710848 293124215 123338849 338144517 837245630 272898637 419460527 973139463 517491735 854123973 756535239 489118261 524014968 792519735 17565762 707322776 411448435 945524716 816147924 122834646 236341666 879091522 985715779 542879473 969406682 736069830 488633140 105135127 274526342 709561774 959902065 957572617 314346312 444645240 482143981 281589929 270406176 165874760 794707895 697768896 470769174 216627685 621394351 904295497 29395049 191550042 436155098 496175777 173552410 627184036 720590478 855436200 312369595 909920568 260146890 129972579 329980286 824851768 86618231 776033121 188491390 788367943 995314452 42915185 118944830 214564858 256907259 970151668 17654664 265759906 105586747 192299765 815963724 149436311 541940194 949663171 390530718 63958782 313348857 282203723 313735881 148829986 727611705 187676894 480355420 680845783 126431717 560169040 190679891 99780688 260421352 239254655 32591230 592620388 814643474 434022896 324329952 381789945 301957252 240372324 77338465 93687668 765248767 570550637 960975419 646826349 136583029 500400090 923416844 304227371 787922933 214818014 832558108 523188387 240614842 51082674 903695507 192601824 564968484 284060625 947795200 987559913 16495118 74591177 362715110 433618939 409221574 817568167 9460006 672068425 536202856 449699597 9464846 978463315 456045847 662895895 379072147 993655974 989791197 630462444 585913403 533908443 931158266 498488983 321355217 175962279 977053305 556952757 389883231 863265656 402254588 358681074 692923396 117711546 549887585 414741362 198667163 483072763 465666214 619024959 783463249 544857348 641747098 895665765 994685875 466512434 717081447 730442939 82643450 219094044 34469769 9230357 511199045 316242272 582531417 884952215 974783405 963101272 633749143 274152218 487138768 442354397 453022956 413824626 871096922 344091560 745143760 398667059 258646118 722199425 715134322 231509487 897392612 351960034 868328005 732838992 657995841 560924831 890701930 458951140 229043471 993792407 125179762 94025144 502278618 117893639 839824084 901130265 278440516 858692835 413470447 411311053 706698047 618891326 66114274 354462200 495879880 194768249 830672472 951307059 17443397 131183386 588909496 192086841 411648264 52452672 627513032 902771136 391875890 272659469 337847190 303517270 663136532 577147662 459953914 710117216 436272543 331123029 831609078 503467 433896879 915134467 942870972 228815288 175059702 465954022 487224317 93708928 549101476 659543543 375030101 964706600 525785348 967440550 800557354 987694830 212281253 176321703 367216040 466845878 814875787 623835462 264371851 111519950 698879705 869114052 430738556 614313184 220692860 901904824 339099842 369729062 740442681 561675649 984269428 325441877 60125280 663973801 998051597 697559620 456360063 276677323 799550095 294551451 879757136 844255146 546196269 525060669 175867670 334476674 595948636 927452261 832911347 995564642 71625187 640376983 130533758 534078005 149832109 11992375 647272138 753770174 329603866 522819390 59227036 800012800 10698566 592967701 928432876 999410117 679866127 589991413 436412923 209736952 904113276 977085905 133719724 232364448 579305709 801076500 383702995 823215962 131030210 710741015 515527307 522902958 808952923 474466933 243652342 872312126 145155670 280627864 700306850 258995060 774279438 592802505 826548340 730939035 919257894 96190044 771035165 975021455 415312240 971410009 470863599 637800406 387497981 756641556 979116272 110424886 555949143 589761718 395043199 818351596 304453835 977940906 871371008 894265035 842366040 426036939 588472248 924616126 842880 523796394 328045816 176121852 462515312 570997240 61096745 165953021 75265925 187767493 845519816 674376659 415373653 169795509 259595288 735268932 155126494 94775373 586743669 224303432 6299302 299945166 460202477 179643445 405224940 545046548 342380354 503505769 694697767 540090308 302228006 849515411 615838158 744569735 605050904 79642683 109441255 509777026 876391506 152705784 341535889 23109371 869970887 831763153 867402511 580529116 222836512 575637068 720416747 160677158 782480176 652103078 476957144 789526431 852519308 197130491 594376156 970539322 312887162 401563438 371230907 786495557 469641378 755470083 740314842 714664523 231090073 828704276 285716756 250470891 784030906 17320964 740540616 554467171 213758362 164348926 504851715 190845309 600481930 870878357 500570549 582853438 246080770 775106489 376570693 816279049 667338741 986338055 462093382 425920721 62090792 680535100 45482389 617461423 14572144 283155216 530007673 810109066 291077786 941617549 369553017 653672848 738348072 97432881 690988291 556340090 921484582 514614698 342769131 84256934 309267414 386726358 778418303 694746109 58241587 254472517 479143297 891060818 288337934 569631336 769411496 280723425 463297671 915158530 206672549 758331932 727197710 51578830 728285452 787671710 821657028 284477891 331997391 403278736 453155076 490591915 269197228 935609405 870299492 372714616 813571493 803239017 606695831 790522353 478936359 872076441 140770417 104757713 732914733 473899251 956302544 795859212 112081449 77279065 329019056 646484990 832378856 251995545 287762790 927857158 579383093 906175605 306228756 695164101 704528744 782446996 583613083 650448645 786530460 453446041 917748449 884754709 895206238 983179114 182512077 182844578 44091751 154581886 833399429 36980692 348718371 693672152 201616973 396373330 85543827 464451818 252808031 877358924 115381729 696727007 415469383 742840263 904795246 962360577 27666138 258292765 587710491 272675673 116153458 498023054 588901157 383487140 765144293 282262515 585080928 818486046 468606946 210366167 109981712 843642190 90435902 645230790 637195904 238991040 709920449 175187347 467689636 126234674 471181471 963238450 507606337 81660257 57776418 646543919 608023155 352892145 980092488 165565192 636035180 978154274 902542413 619718121 806347050 788372510 300498364 208534053 210678129 757807329 366740287 855379962 750447930 895266365 446754324 693231747 11885395 225155743 713280015 118924702 721760708 289169679 966627594 966317898 547910917 442497547 942357053 719621252 43600828 73721433 324228505 828655546 389061317 170679327 940315977 322600134 220472176 955228190 288006615 68849958 193478919 502539810 697542841 539548417 364014723 321322594 22634777 865206381 269917400 257863146 156228787 87347915 161100434 723417063 146837590 177254104 841283339 249293812 990114586 680744891 574044197 622260063 770726807 185609182 445057015 253162807 813013488 78191480 157107286 732233611 371353773 342838603 611082772 799138235 650490330 70179046 872937960 465143274 864502669 362012564 839576179 668470916 860220016 163818172 341576153 431315994 36224562 243433837 329741836 315597875 1024557 417184278 832111370 177341215 853280230 758987397 793150745 150958935 161270210 526004174 483976293 361502475 218866242 266639410 478194681 683233084 96293921 62441339 760544597 753454761 70378257 996457075 415517622 182688167 381639452 769364385 308632041 809736117 138439017 906973010 430732322 283069376 46880335 865747549 218681242 50481516 321005475 741416782 662698817 677848613 335968304 209103053 793585858 658248975 228572680 559790005 61496300 784891679 831995342 511398674 951717992 234564021 21778026 445477560 112255045 418624192 176532458 567150929 316022341 241290069 441670869 903061479 444943919 340459154 446783899 693502705 467268630 342875204 408034698 419633928 188771403 256659915 769290425 434216899 735868644 663501836 236257454 396055998 108404159 922624009 463845024 207367998 87831860 864453148 492921521 560015322 725579012 637373095 407433066 111041420 541603454 332036222 568736707 173946437 615562903 701296688 342451658 678385736 924172959 730265253 321042176 881570680 603086948 375183577 394754384 369188669 89906826 254813512 55587587 391873526 404940176 931794263 90847651 995188961 652576874 777198871 915431524 457685286 208353704 940441223 216312415 771646406 502306131 989739455 831306706 24492983 354541577 692570410 779796605 835619488 23516766 561788337 207950476 481516047 302729260 276452228 714001971 243337443 205458900 99172933 959144130 29669988 719054238 537310263 423393950 437374213 563982040 572148940 583249032 54394270 996417346 922621099 793563792 904056568 739769646 302098132 94326106 943018587 531164029 344049153 888911076 228621291 53643646 611462658 590781903 17056617 16158607 254470422 210632370 959021969 934356740 301112942 58447609 632464434 526115371 68480062 691308719 623946080 55928403 10483855 929191758 983282950 240362572 64229024 588883730 250516715 884235600 817181527 176443414 428116148 109479757 679764808 923163929 131564645 71804745 12509423 763547932 959769667 119042811 845501579 990575963 941728312 319984012 739388542 194808992 285112477 385096425 830620892 449263185 838560868 30576220 451579122 135075281 216437720 116696975 155064801 894429846 558791803 451154673 306199330 852955620 954555179 447673935 507407302 758853689 885069370 578363257 651929267 108450514 731885693 189324393 46658174 927414567 619009386 672007122 154247334 150320439 961098524 772243514 568428739 135532498 641688039 378322556 716805421 446460938 217538621 633310800 44810631 532889664 880020461 219241750 352184649 12746832 708589664 219554905 33400136 573319778 771384719 164946077 835158157 947610455 779302596 688747568 276643465 522608592 636212758 448074411 673525789 932944966 911500336 450836471 521448881 134855650 991250524 986484229 486138785 818054115 823569764 576884053 996649659 71924679 210927029 957511059 670032435 78752212 614520525 894229211 463400526 2510540 270840055 338935359 11948324 933075359 64097968 635628453 44018148 142199405 808269672 591311033 420810759 883658125 359141809 75815963 308436094 501538304 16888607 952153986 832368187 835690042 946597546 623516764 274623337 960593867 576242168 809797505 22446065 414313436 32842448 803253965 876645432 794221584 715249597 322012374 66384740 972577407 635493417 608362449 12240337 643286196 775485653 851637415 540828720 672135888 901283866 133591904 498654279 62419881 519623544 394099535 985630901 167159088 483972906 895919288 883595857 314911682 705893714 698273502 828794986 746731280 445238050 235387060 500093576 637131629 365926405 639230829 235990413 438206245 23424948 503877836 740348661 341447611 86213351 982664038 566729491 90862092 228324597 777696972 194492328 982801083 849044914 940731537 368147118 95487856 502517277 798156827 805246203 322500081 708445977 635671972 670988582 509968687 337854791 842181566 981404968 351284474 229220205 510684619 477070428 958486175 444327403 714987745 246120383 918953771 908948674 847282408 788531493 106173908 505390865 586939998 618749298 84902252 528385919 465798243 579398769 773577838 909826077 587462632 491993863 671110990 952807340 651064178 404167927 333164264 638480054 264990206 561535872 63876162 331332621 16750810 848491045 941866216 557145719 954333441 344423100 287857373 205149732 203038350 159911971 157178466 670791826 378284519 350309841 821277113 583428644 91626530 67001637 133762972 999940096 710793528 988674162 707551006 626501604 695881665 450381119 622689035 737927681 570574807 907859492 742174792 793130178 658196818 160800901 564986702 556756780 254184719 435835516 165111785 275791461 255254795 28264694 978710073 555386703 675455491 871668503 698004977 852704973 887439593 897185409 62881455 395769025 125732397 816219480 119500121 662450173 703341807 435252662 842602526 287995817 829262536 576468965 956434362 620175686 60258638 793165991 875299132 321820916 157185665 469040881 500878014 557266880 898613742 862439084 74681385 255301796 312629215 580488379 740324005 898208613 277890768 949783539 148185170 23939434 543474096 472021079 214234135 715994055 859071324 698312131 174327837 525132002 921396406 376689818 580525884 284050230 94343573 230665263 240512893 929260032 199117049 852030553 209172944 754674046 194418471 737698036 296047851 116722454 401299581 995376448 998711912 547654539 610941265 492529178 843837318 960704758 973968470 783491119 814436717 509536769 18220519 45308419 174570115 962679615 169556261 741595286 618162946 533019642 495346956 21358941 41332639 676943197 69382772 207223972 365508650 544307998 690692744 5900101 775537555 530821496 937266461 524173869 499189392 180146840 708218626 534733689 934861921 149672860 945790394 111891185 391943741 650693766 199733743 995558279 569928912 153586169 275688797 293694017 574585365 831364391 606152275 995506905 346374431 232799194 282857719 693626285 357924843 199801309 777677573 212095304 675193845 301170654 648600762 324833336 78964128 478965347 220846018 241381670 628216275 259498026 251643491 18815277 863971471 928417198 934114909 35658411 775679010 420173289 179723243 182476242 904903269 168430916 85128666 29440305 734859053 2081193 916586724 868029097 519055165 315206352 938726335 683162302 57343377 745876837 146189330 683802772 28413035 104327766 277996889 716963790 357483671 808893185 71852464 563412384 80592501 162936578 498870176 379436868 247651266 135616430 374713248 283548438 42890952 336587280 288413795 67310572 741098366 652470678 46141629 813283763 371679616 152718669 939299232 714824531 703417355 958081626 67095163 835257980 869219674 885501584 929252542 303380895 582075629 903844690 199689752 843966258 7725950 163752174 455657976 175443742 904477843 973876747 222881476 909616071 914884549 307502707 38752450 646427619 588199102 28600786 373602341 132957202 979940080 381689017 215624392 870974734 950100598 334095739 709378218 662341870 662568953 579936547 552965896 278917764 655775258 39012226 945504699 44927908 487845425 623984070 699452872 937183302 838580214 794188320 239409436 24761586 819658145 674353743 834519217 809506758 814297174 400208074 563399923 550639904 450847443 441917346 527519849 275934301 126812333 422947295 120614427 699319598 593869799 694899989 203914289 34358365 618333358 354527021 61772747 960847844 510286086 260325133 784924005 298349070 530522430 341269556 249264836 184629204 969331349 724660640 515358635 519977934 270966742 717941582 319300671 680010648 968306192 184924655 282156575 910802418 186565938 285324575 929692395 688622213 96701782 118856722 953348077 157848691 418958401 748106833 732741159 451406967 887259193 925237533 201185175 26757696 897415120 290534895 189686488 823467054 627169580 861581904 353399612 451786533 392019376 622624502 165505436 230871379 349011132 312615097 757986229 670276700 164612490 27827067 561424320 436869048 154383068 126417720 258878626 909174771 48502467 660373484 429249628 278984074 839471978 724458046 328995181 492497186 600109930 478506308 670647618 693363247 110298732 724688097 924437186 29789598 132357563 64042495 921530778 547866180 172549824 887975624 976243641 535101886 644877964 944476141 805747656 769676019 62715779 373042220 388803710 491499042 738510704 323309740 586854262 958351579 174749839 128307142 269094410 810296277 568709493 375719965 945465806 847591297 774686408 719063530 829494485 99513723 333632499 32001230 609277626 825009535 169843111 397117852 819364910 966513273 272967989 411611619 283260719 473473325 161368054 695231673 652875333 389673781 593897440 523552545 732607465 809346762 352317525 917796378 89060556 76929371 104593631 566116654 846755946 322976465 216035926 529754152 865655540 562282808 135908765 102952806 428627692 592336669 431416146 609680464 474501295 869972697 300853953 474438 304634768 842874962 183873998 572393559 676032316 405075937 712402196 184999323 644832332 623879847 81919440 916082339 491800926 392115745 562741586 870036141 213760337 880199032 219546061 525247300 949663851 300827736 38824942 570902165 697748977 401542445 363141963 975947332 308503373 549998689 179630783 889694690 593820329 671724092 381708928 103269729 274535168 431510821 132832830 342303996 627402170 132877769 628930050 974994331 504132810 71268002 322001156 505045988 835994568 915973245 747140462 171966469 693325115 75191794 414635880 365857832 404768433 955460077 56752972 589823889 912146030 112040446 260090991 757298200 464241492 575512641 11644381 208995448 612693766 554548777 868812346 514193677 156623598 188379892 663022206 841754883 9911003 892715740 801744850 989897863 634370338 907869523 542264949 233507693 225596786 47290911 73957988 705121103 673943322 465200706 203451071 431071218 812594282 365030266 634504483 31897712 796152309 160939183 555524118 841985901 583991456 691735776 126217548 583210686 548777332 460774288 167025362 492063934 290376745 277047196 412023140 907403809 995172532 236831366 240455383 736480630 582926574 608218647 450828261 7274091 100184645 656878699 120417836 183136129 70269563 632552807 946214078 4815980 556746970 928678132 430107220 985077938 82958005 58783389 701883743 421325086 747112332 520141629 194430137 522509305 606092481 92033591 113137449 757989654 347421961 669910434 101362397 471690463 812586477 477712805 206315461 180706435 288203716 355229001 76905321 648213220 837583210 180217666 1781855 983067435 920081841 352417457 457652951 183291198 551629338 975894616 919635113 305286751 702682591 369078229 854239352 112496194 852731637 160211374 690090563 788543206 751108982 214299836 558333659 797492105 206169418 471875917 326569500 32887515 970676782 176501243 923438248 539498401 871746841 95410375 364526905 977668539 124018449 876225117 130347026 621248554 188596481 309211057 798971824 607287319 12517153 358013426 620789 488995547 981510286 439831825 437072425 632378312 89453378 21422782 207095489 257078422 992655124 268378851 205901310 90597505 460012311 867631174 67324692 591629389 120617138 967699471 211274219 79396322 863574480 370075741 990157178 194509958 445804055 750326105 927635084 148871331 847904852 960036646 220705945 314401757 502794523 62809398 898477571 823956381 895210475 618988368 942364412 890005191 882706593 728979916 440625029 419849298 8360140 99391506 87062966 671608160 564524714 123849291 934188686 301490124 94846643 855637821 500436949 860186776 17293378 5793024 458422579 628170824 135453380 512784922 113493404 705953466 614631876 476119988 234879579 640359421 872811933 619229308 343814264 822663915 94872364 752183282 305364153 140787217 338455235 948391220 302508851 873220787 19894642 952828575 295091555 819720645 345673596 348436121 527265726 872961557 369427023 125972919 94513537 149650830 405225776 177691770 288793523 167226359 855441234 498846158 198861473 140887990 978613770 573721283 181572901 982349112 639815967 289487201 309773439 641972875 984668028 313121163 491882377 22401107 460057109 109120704 484878117 481003479 391978550 960046057 867617719 809951733 819128463 345793864 147409391 720548044 438403586 927026718 385016894 107791202 239495801 838485597 495737369 903051435 110002437 848970808 356952483 465734381 285327802 167350923 45874936 570399383 847628095 956023738 832697767 125684721 144826802 899530992 871744708 619733800 327470036 303701586 782608517 704660641 814934596 269497560 590857966 499790131 450038030 611181496 192639907 60360064 796909646 396283799 713223410 685080123 297455680 411925567 900584758 610231956 221936727 490315558 869445449 653391338 314831894 916777279 571340405 918749766 740935902 307901023 203119500 438291545 631412517 956552754 227892678 568198645 827671452 87443367 429093339 521440250 742112214 396041965 646945045 650811094 959574280 606440361 778177939 962343181 648200838 966061288 254198545 839897184 652332724 414767816 260679353 932517083 706629397 721417294 815772991 245416731 437079023 52414756 274245125 705606915 193999793 697871855 402229354 236979173 147294080 108164869 580902899 945439578 385964168 850906110 959080904 757523785 881853568 523446412 846593142 271298823 721875347 258886232 174154280 456741093 978968637 793067134 284955438 369103814 75447903 144235934 472951603 130437372 451242107 358689016 648712444 517977590 808893810 415042603 524927836 109828470 191640521 97171907 481797809 932002384 106734099 625493788 214884332 502574322 77656600 999597175 793182467 952542485 326672297 978435962 212845074 802544118 375795804 234109543 241049117 468779914 526492088 622194249 507457841 453438704 792864354 490525521 587206243 172937761 11504644 570062650 485267824 458418948 32287693 172707995 739609862 492572034 376575467 268642237 933629154 778469674 876781949 683223097 821974857 353179995 964654288 773147674 82461197 284127351 865632276 507742025 582451040 222015406 629551067 618479218 461853971 454008041 618319193 164386209 110634045 732740849 194103405 205209748 352187888 584579651 179698065 333861261 182511807 187099063 651897930 402520195 242547090 370586519 64563235 613378066 140812456 703927045 135392621 775714364 56880248 670037217 953909885 458052667 628965806 515962980 94700639 595929081 19427 592048333 752530876 347150965 588237323 65744580 325139610 217643487 893615715 164396497 996159265 501864518 99233336 616059368 532500820 93389387 743445312 623031901 432807330 37611957 387352444 736567636 548868823 489306104 272126869 576113149 159232942 736228430 918408341 851043179 847243762 721902097 18617396 653035789 127500835 875484838 491075521 876998474 972951423 91380862 292887790 390102709 389386348 760984723 383207524 392535995 200601261 724436352 711195365 238580206 636432020 229918311 756455900 209632197 340049918 249596993 693908155 981373801 419296660 321644724 92475957 968802876 721715711 319387178 198667514 205358782 416610137 356624882 353984591 632722313 404009668 400797111 483115950 716862682 395467264 829884164 531038973 25489970 139364331 489807004 308491999 116243956 2935524 61291149 402226493 6451394 640810558 826813909 523517964 778939400 428672795 325806144 512962392 313656610 568614067 506102710 1723098 415089706 3920171 298491637 620192518 832538904 109500678 757344920 623047938 561409808 546154817 5745156 656353779 99199120 613410403 84633202 633021521 746403451 170168752 944183269 817718202 163307114 936884330 70494418 91924564 34256401 636523721 606705310 527128121 676436709 828269391 892509481 954779260 401875846 330223046 422929665 452387039 724565308 997380513 269517921 138508976 455889842 168085406 196584650 781559021 783879085 327620485 516381597 84352491 9503120 528359656 938908017 241807723 839177494 111857416 580855312 476638666 203816237 954569945 991619894 670619358 696985189 840873417 250243914 673447670 993926065 46349884 880427418 804838695 911008221 406931766 869729885 358842142 921513370 31418541 377670632 367460088 53862466 935854828 828203566 45931450 736702780 737556119 826847212 848371795 345037110 845704282 19163667 576450696 411476463 228010957 641492865 412156732 827878542 951240862 133283275 3042616 68542561 470773610 336709668 676284163 555844831 89128605 787880830 848812160 691282097 394611124 534077405 945547237 6409715 120609810 375216215 850430644 168237653 710476907 226246072 722105023 801046319 354129084 927560918 532860590 690771477 130735289 548081205 789315156 142723508 226313769 175631713 473422982 73627238 665949827 817839242 696445127 565768638 715997306 657355627 953936917 587533885 975253512 771445796 49566289 737417588 940567378 305150128 715766053 150851897 453834316 985249728 728680996 573098037 345049515 431444801 139213463 182961434 430322622 452641773 670643491 606920091 742887175 10286504 314638209 178017873 376268359 212820510 91080262 974865671 851552326 284978850 68667866 102712600 193431171 580284841 430180572 153139466 840748048 398047254 231205326 401597770 943906432 752983594 621360051 752998160 827555723 929194373 271829696 597401865 345183164 17866842 334096332 211246969 374660343 577722189 927255278 565980096 810353696 617073453 568102320 739428144 973500622 488492218 138399139 9360453 404870574 18819175 338252809 210586625 555773604 434420715 370035663 28062856 564718431 654545223 788149831 638232161 731688628 104708498 547175318 636788497 824578421 826512853 937980016 802904044 433400688 160976884 177565793 138077440 104257785 62404227 901938495 534851692 127861649 985238164 597517202 581154286 538775490 669694070 143446032 938782727 937616420 780526520 947821482 258552410 188726926 394248667 961567504 920960176 658968786 561644971 263541216 783612389 40184149 988371620 741885857 598575705 323132242 899723537 403612245 118439498 154561138 939980531 185303622 386730510 259847552 696512331 39358215 73548052 805222917 468703563 873571303 55086216 276776002 59357519 471437330 313816244 531958814 293002432 579423277 35165092 62196907 94561143 890530273 769347817 671188135 623530422 554102094 254573248 62828426 671578956 652649467 720507636 113447590 672005808 835518292 838783178 597831879 899600746 107453838 304390809 870670385 250001490 810325136 896823700 988972908 187457322 206192805 1111363 623145632 227709470 275707435 781145193 368816258 840907341 893215807 442639553 870690673 872532575 330401258 618757783 593989484 279683241 948293451 908111777 997445182 166304899 380184407 730175720 891446264 429172641 405748172 444161499 224509373 253339461 730594225 214140125 754261819 14631434 894976365 335719159 620096168 184283084 690501909 292804582 414353653 622480821 229525810 681126374 353428455 809505255 920346514 154264667 277116230 394704225 470320294 328005614 221712345 179746423 690208710 291706945 555954738 952199882 441489994 502511839 879144208 337053080 217458136 905639440 324605589 318824534 660517118 865396088 122334239 168128977 610801247 633047495 927965354 889515881 704585805 327514054 572853908 264623311 894915359 679073711 55898145 941687578 372006477 914921359 438645940 758386821 424601237 84698260 100675594 880233122 126900387 896358859 910587918 877773646 49599110 14860249 980642156 71029267 229456766 966191934 796898737 760435576 856162756 233038306 922397311 674688313 36882036 755389205 437206570 288244629 519184221 907642098 664457527 769946962 896355537 885086083 171346266 367992815 686498189 87815384 310620815 799350108 721644707 915284173 248818874 603013701 123447950 330214606 243472099 151117492 795811168 409972897 367076664 76806532 53344974 274910357 948760451 441176970 111995252 297456748 652325671 752590431 352446898 449897211 878380104 142318698 100127438 895645737 553159512 690227050 932013008 539418916 181289119 958937034 922657163 161228368 43517345 179127220 945734107 440049922 970805578 667188160 228173693 304159502 257718853 923381398 175781404 980555306 464955448 24421427 508718143 760304489 515294810 985587357 114303534 734066609 492136266 36769238 246485149 902477864 27671115 550155259 524570199 763280145 899185443 666681298 709911853 249434777 891865263 758470615 142196393 535861951 74276969 918097259 836759416 330611628 638548629 564259803 183478005 507710555 56013448 682947466 263218435 14335542 491737018 805457257 994687340 486665790 250999463 503586324 334333003 372232664 885951335 855835196 945425761 518955523 700052091 677866905 959156223 918600990 85035662 95408536 497488156 877537286 5792962 711566915 438402752 414344889 872096814 799457326 579871754 999756399 156970748 533463916 623451111 107285529 855414310 923896650 411084969 659992993 418137614 432713463 726552206 784464386 869111736 332422892 859027332 875961202 200803922 111052485 263819829 615333881 706446542 290878095 23090677 313267150 800409704 583658610 806425697 253098283 572767431 491980182 913741094 647246212 53872077 594818757 49421772 798895755 950115282 912354870 7060775 191266351 477875336 150274940 416199231 280778622 284599666 168975507 930592304 364812305 322239927 570331623 158405030 620110404 262674621 877488523 689998204 8857558 313568309 609867472 266078984 96351370 418001854 249926407 174818418 453836132 87662511 537340480 384402921 348733112 986247030 355026861 915920869 665746831 121957515 612953594 950083732 287566768 90288113 337117870 964500359 633626324 488103302 498557180 983510107 710114572 680358227 464376736 27917582 877896497 867344199 534536651 682633097 932244477 529477903 503372466 419893520 404289056 577848157 838995766 716449814 931463600 453586096 678011510 617760309 983855544 509307866 897268523 252407863 405225741 653482363 905503897 285540106 608375468 369011034 369520859 548460960 448302965 898165210 649917724 63375199 2523680 27874221 659232747 324648276 853048131 831830032 951215978 260527832 248409530 182458884 910619313 911518800 857764621 577711048 953274978 76124253 363815162 607039185 460787986 576831902 944496628 596473353 542516271 740732046 249613901 172112283 469459728 187931652 804876946 971846575 863263421 506546666 527272772 376963820 52725663 458843573 878154127 277128587 255992532 942431058 360846124 756786351 817027221 93510258 59088914 365218912 326567067 767639487 977647398 186676136 108817626 949421154 14309465 205257526 186405420 667277727 687479640 464899777 946168421 754834686 369112900 570737439 5701175 332763701 490837517 497034110 483580410 540176224 918787332 914138822 18823211 772883085 938505361 247331367 970560055 744846179 734236890 121169184 644035394 224977382 589612570 503891690 899718627 157048108 254352833 205973733 6892730 296872724 679916728 152411881 44161366 185171765 603327388 589001192 832118289 833671672 38321970 978111751 440260823 403027304 699696203 696485911 537686559 82795408 888337022 466164319 708199367 800299808 316848564 52044225 5292329 157657088 129281448 689634281 951961869 235234759 395030269 733586767 817858144 330923461 960332007 116049664 170782823 25413604 909423701 511204897 870153875 940808839 57153357 159270178 916783129 844322680 309456402 30593751 300141301 250139472 419704339 850145397 424264821 695687505 69514182 567321626 435340557 915431210 641225537 838591941 64996223 765764399 949004484 926826871 680812370 447343465 560346227 260236190 536630363 939996161 234209475 463534971 960649624 688789931 330254394 441019278 663977511 252202887 777480491 291700843 720904827 275700002 936185018 485729840 832586123 771744101 301875248 96217584 286990592 655891452 5846280 989569223 4254468 793471783 745439860 608853645 237078741 519992962 2874850 627790766 492126281 460913956 764530467 423767175 834113257 580134612 193439716 20352526 984952106 38322353 322370855 280342992 587900243 817368535 457061872 889381798 108222360 314302572 956088542 171915647 727756040 42542482 764595394 416999104 132501462 835183049 308665520 878960181 564490671 457300800 293372397 686431673 78369489 698577605 748430312 4034844 426003892 232064428 257417563 997704171 254346147 91651886 321514032 544312732 954056124 293713841 146285227 37558865 277573856 227354406 812372022 857805872 739800126 595640501 553589326 37275714 838155745 810661461 832516930 111263529 224413107 143086995 401009140 406541436 925875950 644305703 886537583 136205759 208586398 586525498 672253849 855853724 587565246 120062892 496569060 610049794 984981243 178386446 952505309 761780385 891403112 719801257 822045344 567609777 608169543 859702710 525243807 95884502 710267393 117075057 536659578 114570846 136216924 65933020 808833445 121560480 71577707 611592074 878891887 126237896 436663351 95019211 21392111 74476649 327972491 38227374 491137798 65939725 607243019 267929765 769408967 552015643 847607024 643813900 13456045 676637231 59619605 258199909 480204014 86180637 141253758 44599784 936500264 690556933 786999685 77320137 768792489 183610240 405174306 559537469 914291448 462380136 903460252 675921660 353829204 628696534 821260796 241921013 241263608 109952367 657558557 100764201 848996884 980630448 133092647 246582813 127157697 819872581 188240767 945505624 703839673 820684658 28897699 462395396 74562481 234227418 157678448 922254187 954879026 772130166 292254025 136502689 876600548 494961533 866783728 769774278 175461910 153310686 920796218 499308742 913162068 604882747 791687982 415886153 373683756 93769181 328095910 573910110 357950267 653695267 70237699 322444769 712594515 476331367 564069508 842557704 816897191 438134603 273806624 951376573 101946082 519844496 159192546 124234374 165167832 81521293 996457400 620168865 585746410 54907217 109682960 727273975 565214981 18507360 875252222 198239411 189045757 379483617 823874436 59237374 621283177 525570050 680202918 950532053 66539059 724052799 736863934 448406667 211002396 626170489 149976016 543515874 554289001 241929160 28905414 897219958 931334500 575531589 421626758 313467663 524799373 970369554 462810421 705326457 913736466 332250432 149801939 526642486 434415574 726317773 216523536 399434845 615833481 870819067 668512087 687896133 182418633 59565597 475413147 893110558 456291425 629202606 784751671 425255795 88551481 911309431 722729534 494838694 62768139 85421529 889847982 146574031 370453543 664186991 159141760 721044360 820211315 59432798 185374823 687859636 625920668 55119666 948291762 632530064 336049990 427176205 559730332 971127565 999496554 884905553 824254336 887019742 375949408 865872589 591148264 846632691 574951473 626726767 250834723 498590750 801150860 272068162 244730851 446346136 34106041 966823892 824263494 555461714 39792672 14859748 407866984 637500540 496241283 705614187 955019839 671460660 364565110 947631647 136651243 985541006 121894481 766375059 85106112 896648509 637104401 865316979 255594065 67327738 185407226 283977958 952881489 357023214 635015451 105976883 641766222 208935754 999984259 190197466 361272448 755760143 579321888 728095377 606317856 143057557 905011902 222159038 772912637 906633487 737042996 716650456 76179676 433192613 44144141 875874503 248342319 313962763 647336281 637531566 625248583 752563742 282006814 453743291 139748548 60965452 808640158 876154009 760699422 376764796 618550405 62015263 185548618 712897558 672531357 330022153 66741005 893132841 835101516 522941106 393345995 960839104 377282855 57255841 166778060 511316339 471662252 942672308 717938102 884214226 719936634 745114000 803687863 625634413 281331288 775495423 787693842 636483608 41889303 928087324 39733170 351140328 363928828 221279007 959832823 279391474 776695984 94905402 715160806 667973017 972694733 648591511 609096907 757015171 863933655 181815323 54222430 563587528 793592559 33688969 831386843 566162632 730880635 90823472 410317918 309853320 377046622 883590016 338672442 617895420 763262891 783047759 973493360 619839273 810282348 770550015 502140757 671584174 752140543 189649658 974961451 680890052 970357066 544777772 451139827 964595268 571194213 954799710 322433923 876127320 343927088 213738992 759321364 370391827 983167167 357644472 907136724 412808045 449651005 492415231 833636291 833206199 348001478 485980807 595503475 306318223 949793765 348984693 950337367 225557731 281501105 134208504 79371772 918106373 869438816 271368140 507193948 925236058 521120831 65503694 599692071 64491010 714568726 283114686 349239015 399412751 831775645 463024266 642272840 233393859 930990075 234491802 420842050 564556872 965670328 93653032 890642525 993459589 765925383 506244675 472509299 160442025 514419464 286039273 691218427 332810684 792247669 663998199 20957058 909714942 215581121 354219263 30056907 156836594 265447010 792541047 350566021 321953302 691358061 22976604 165589116 496446442 473213520 850520938 611013467 546335389 226034959 771928110 967464631 680152798 657056350 985000804 516928308 866345385 354329748 61348882 919170142 502985002 542695882 88651449 323961466 230738336 981182977 276071091 77033337 339028441 602088342 659944584 516581609 89384556 587181421 965221174 582927700 160117897 311654598 311267889 519440633 555923974 657261098 561311817 831595221 835434245 153455820 354255257 193063193 635959175 312168164 852516594 465996368 384041713 156633228 794569948 971160067 161722592 385068095 543468268 424017605 773705713 224712516 106976106 375251721 650472989 144631123 485234845 354491603 731098759 824935152 558051814 598340967 178412258 710322252 207672340 32171790 680715296 368457218 934309785 18997270 928807686 773062983 125506564 207737593 541951798 353014704 961619603 422997028 154693621 256629262 45338075 552313278 126368321 181280309 884738927 50240881 237889019 440951416 534413046 469798877 752393231 476053801 455613378 847851789 517582832 35426838 630578179 9698016 459022392 798268736 219912782 678331861 95955662 80489326 105591463 796350105 382602320 202193016 551787224 628285122 252908586 893699466 815382321 229260281 559289991 9520732 628743910 584405417 26212075 491931008 83147743 100220065 672839901 980974797 216337038 510695828 959259687 972844237 77755557 800443604 141913472 801987381 414227832 154198318 46698619 507538250 926502645 838227711 732509618 422473751 213775061 708080998 176264884 888886659 163805521 490141176 915383307 426618224 271432624 905390381 335096895 835479516 691942988 902398450 690463211 757150398 220231100 581703217 425655302 897441970 463034330 697023076 300125016 964283793 652351355 401926904 48864785 94401456 345853124 643271571 671991499 545958991 71564282 802803144 631594223 296114687 106882393 912284844 927951238 90716119 614652109 577337200 299396655 270457218 941489593 515456924 668740720 881471798 129163362 374542115 469491214 591132543 106163184 372849692 422502540 106161438 805351463 585589919 560878025 253697936 211963267 245552332 32156148 175009704 402208745 437887081 16821919 994672328 347865424 184489572 607371972 374737096 916862002 982359788 664617128 873700067 852544116 290371413 83804569 91335294 492558153 274554833 155887907 817094496 74783800 200542277 499975785 889845007 574804232 391776893 616057081 899637392 226326397 712470020 613878900 746230154 489551614 946255516 880395219 329264272 650370432 365853478 901116611 966785072 811867834 562939998 498100838 140684969 553549875 712959005 992227338 255770018 76629327 58837958 439689261 502598115 864299226 604452875 14619661 22582840 390324716 153640563 797757294 389260763 363892973 820275656 60663208 206386104 444313565 623373123 32813468 176427548 807115883 909949985 710548044 145515117 691621753 772778529 408152346 360405194 52420198 368815125 880514438 906784431 869001556 995673177 900047323 468452156 326026844 580324355 447673992 388038594 797124282 489303435 819824856 88882964 90386410 823096355 127274258 633324474 379091870 109051875 688687597 597361525 401862224 372415619 188623502 102445385 964717077 712133871 152103719 420757477 479667172 212604038 32020628 960127695 557845171 140592647 617891170 106788092 906892637 265211933 353921438 222179063 560000865 648438689 867268971 660585408 421236343 724216559 533930258 96820829 123293216 124627851 891623065 210067983 907547850 839059308 416622105 508556014 924858936 807557002 392416480 109233111 346519687 418286388 37662496 881218928 229485699 509142151 446489732 316463464 273615042 328016596 608983368 247017218 251217270 877678945 759896286 751595755 327432258 507644986 598115464 238319637 864000464 156116717 233380409 375686565 738027375 529311700 821462503 185462318 812528417 867270715 85652644 820706820 612981754 659254052 260995895 34798697 349504780 865074042 324371134 389112461 795690799 117157002 11592499 707178865 590621092 215467400 855464182 781572758 772369336 423845449 58130817 718910196 947907290 697100567 453042002 565764643 915702843 798841587 876917224 189443558 536216249 295198679 280422671 836298176 173969722 57918359 856647726 701198136 560641807 922830001 43919659 908597556 511479262 6238334 422693675 665202810 963935779 73851107 542584867 672423305 980235356 806721687 146192185 286541619 549259024 54915504 493857052 26165206 936172344 223293657 542553220 801443877 39225710 406445274 553345801 772747121 772469518 362741006 389421916 574730177 481442439 636261427 836397694 916737108 869843568 54140854 320400003 122820908 480246458 878734869 426240638 287838160 3884244 810233021 996656991 987522667 901154881 632552139 807036616 856143144 566146676 492642337 959296125 46664089 336900249 939668783 360438415 483300910 480540229 848737952 372309630 153664477 374230252 52239270 860897042 266121228 45301365 224871 150532025 186247292 765993745 97253676 102316592 977676918 744839068 966021770 734492170 248315251 796385997 497458278 263450110 462264447 257007978 641914056 304137410 505570179 66282749 820841165 769696299 786060065 651693213 75751272 184561885 609757713 200267211 375790676 364532622 671600406 548576662 755629205 226387820 722456019 209126757 934376407 307679180 875196848 649081961 221583274 334191940 135028853 721427388 723147706 145424037 505218185 320675499 677846916 73294115 313597660 684018199 741470645 768616054 355488037 360459990 364242332 198969180 543357088 775063823 415715295 728355773 949548221 53330405 844083539 122884286 171160765 349845748 911603636 523719743 601993578 578794390 719604716 721103311 450013487 43666135 812761065 600055501 273741202 253929231 134760421 367683694 254025175 196474362 389399219 637192230 121882839 31519641 781514821 771957512 583814146 926215561 410971726 564375881 547425659 4010607 769116507 586590465 378770211 907472173 123370710 754087546 27095851 215566716 530088319 138885616 164931363 557419617 413852304 174174816 3900441 978344827 85432559 17174808 411529617 803960023 401282986 744011114 840071463 279985729 548322612 306264949 973063945 387323025 21577798 816259624 475203807 775679856 511969977 48723320 678222580 415481864 380119576 713277995 645202938 719384856 199244622 600625024 486670657 833982581 949007514 612067082 81054796 949439189 833438365 71902042 278820951 593729879 217256354 586802729 102178690 193404515 772850488 121429895 906005897 797097964 22785680 972895969 805352924 792590016 167495893 38464027 286403792 824706064 455301746 261457008 792843240 374300323 675397070 41573734 828011705 749591003 931328150 824933030 669070618 11171588 495131377 223312666 317167395 292009224 345213386 68233414 675516599 671872295 866325148 75188056 709029655 997799739 822006292 472560113 678839504 768471509 460414679 700894566 161121988 587545828 920879545 142529679 318530862 767046164 377240843 383896868 520991824 391162252 296747616 164266881 137504041 746649333 113302831 647439864 845441957 867567748 145724721 533146219 287553727 607580698 684574701 126471057 839636637 693073565 443235380 315911542 300345388 826584141 705204966 492709906 334440328 133160562 95293658 945897935 974712599 8552098 788674782 242167739 900534508 59806619 604973593 66069603 484304809 857230796 513801223 957030556 925485451 589693654 506624396 91008491 818530489 594295135 995549885 106989582 690487888 64087474 24800695 874886048 40320331 875961166 960051857 250328675 452132516 436153531 822959975 995105885 594342580 493508997 330918411 884391626 531307457 116437668 429714423 933646574 59443585 72279976 454091400 662160255 593165450 701631210 494555290 526416330 798818858 85929060 780734020 795372374 389587151 440135119 905235134 197140692 744823633 372840645 115965724 373061885 151755966 24207111 376775319 398650806 202116661 912558024 199302006 54654116 193163589 245194403 504481261 781178264 520258726 613667340 275594468 869746612 354988745 420191450 965798670 626920451 64653777 190428549 393209608 950089874 391695393 191039548 718155307 215213368 477620920 803935780 456081311 899906055 156283655 677156638 305785322 983174888 666552921 224187279 549779065 834073764 384213220 673805220 697500137 483703765 608637800 954574418 510260747 86806758 856794955 580490422 799471678 321273583 953076545 483604379 603916195 224121738 71293678 827057263 964588666 877131281 717073344 378558539 697410290 487643940 668021740 195002630 402012719 521002494 403762085 803965205 158985709 746303940 532381230 63005997 765650577 988685789 310963399 658923929 502084838 220644357 692267078 234719941 634394890 980961508 303261877 474917328 676899678 115327457 689872209 313117932 909044130 599178794 335134539 936090310 56718443 342866471 966147587 484816580 412698995 89540965 476142941 822708168 427439075 564434451 556062468 227771029 656860543 722153668 556407881 187876391 548068863 605639830 222370600 449686321 976743520 176145877 305384960 182066931 946822208 662747895 369782830 537530279 545577318 123654484 698289512 975088699 125027179 524314096 769176574 45468817 776293076 45840588 117539365 712773393 798310293 321592628 551319840 505947557 956327817 36561728 817398126 423071336 880531920 389847080 370718544 767790771 409802095 529301035 794582074 410361090 182373758 706714603 899746671 268260094 372604682 443754642 239253334 240088832 996602354 290313781 335046497 843567243 290491695 175949503 644726735 5217029 888440159 471515588 300307763 558280107 373107248 719433223 150995584 601254565 608600657 882065583 158287041 903857117 857108506 994753749 450692788 558791170 644169143 420801298 246155468 581427681 710976201 771324166 948511142 131528853 914176798 581097360 977570209 420468618 753659383 191916167 259598054 2568858 86687760 292617696 302532264 153012743 840546149 426908590 197215509 647364412 123424701 213409052 237300860 298464863 886586017 447905905 55598067 785185940 948432665 159038237 147535836 964422850 348590090 939411744 124878290 955100578 934303778 198409707 463586812 270767055 679379194 222032978 15477467 493423508 441006479 57484056 433020833 702752617 112010882 364756483 718787860 450339643 238377268 307452265 950608598 754353559 208444775 437679651 528102913 596477571 292662201 752920146 372093109 509948062 819272728 58050215 716154893 385775596 156827592 303284089 546039290 283806361 951152780 982149008 412287212 493628034 232485303 672826622 36332489 172229050 320224447 543294065 263991035 894334024 233561887 93281693 399546015 56762923 58344286 371601283 507472653 425420214 139737391 802632269 358934264 199133414 446069922 339128753 341697241 480822065 488635187 17782341 434711561 116078846 534939274 108623760 992460240 377910298 585365878 564794317 40726246 807117213 87736824 616008290 694776755 164421741 971710390 527132812 529776231 160332916 667454628 279624027 351859800 724065117 750352918 395644463 850988718 474833178 325111177 911972864 900085628 582492846 437226043 907794975 396330470 18686625 605951151 353804550 408663110 495391081 953434426 252509367 717400456 562055141 495403623 325941774 987685504 774990256 92428857 657848430 88192281 978708383 28076568 346558067 928922428 55831602 104384609 660282725 988972325 831605025 761170453 324854333 754184930 762391073 913116525 781461235 573041864 394629115 900570868 57648989 948644415 147845266 848091633 890094041 14285238 891704472 254163584 280281699 899100023 818076988 318219891 631464088 500320541 698583932 969728095 296120356 729917082 651564056 287268489 45538232 339195384 147290626 769901554 357840703 412019942 983467462 860990316 145301699 708484350 339520143 141653619 566159841 366226390 755099515 592684942 830756015 442228995 600583844 459157132 578545167 570824484 353296692 430862091 6928044 14590533 962984727 155065211 634858180 2089314 901715984 334104262 129930678 394177673 190046712 997040876 22151657 310397569 956987391 942302660 763650629 800479536 586140526 185613886 890527859 420410457 285919854 992517517 287701572 455103453 947829410 609246472 109786304 910024401 757146283 413393407 513671707 240189977 751927771 261413178 478752418 787896074 818169544 89533446 972811222 390017501 317552796 669257825 40325759 229510210 851025920 513953737 543234288 974775627 38873390 181913940 953769226 857416286 12135104 589877461 408033423 173373604 957073559 113118916 886471192 734526873 49491649 506657006 241724845 710323865 236152473 222569013 934653603 799441128 438117140 423039675 174912513 924840508 143823775 206524836 785249896 834782675 737008837 509692428 105012526 445341580 553605259 331701276 811903360 589969443 859144204 474997720 586243310 406402505 502380891 990789151 108686228 517601780 324859643 130597502 814006549 903963302 719528395 578652243 184768091 485022992 923703592 239911107 373175952 589992090 128707813 388834029 120402787 584733399 559873432 405700194 74313723 677247189 719999055 983372774 259041425 308780901 763831635 691968334 405744265 615570176 28378837 27583268 193609251 46280430 154672892 944831485 783537705 722295563 208421465 652102284 703349549 935760461 681150653 744483296 693011621 547407768 371838888 250849236 660697546 753448492 422669702 958918374 175119101 150313064 500270967 752888015 356239298 675789563 314402010 868241615 685348023 470960980 851428041 291783516 503486842 902742270 524563408 803597837 560276919 530737691 811302921 71208208 540599574 945433646 675782909 813857472 392930915 262131719 576243206 929673700 484994535 279109157 752123919 894483119 481132876 538841853 894084509 589962142 536005664 541232958 492445765 38022024 860297153 124896839 254852240 872185726 635156967 911397845 183035183 509781062 151295637 746170007 430623465 467301707 130611222 223860473 662811164 33519909 239935971 961098644 829470229 967848957 392885226 935817996 86513340 59862995 860046452 603677689 694448415 546305406 396291171 654208790 23939638 881147030 741602088 650272287 917072667 147186304 880815836 108035877 974936875 150862356 32219593 555326330 122626439 339089567 501322517 527911117 979210183 945452138 634135061 573024751 809238260 692091092 926050383 291836305 624911136 522709645 23280917 881086186 190433789 57081330 259966928 636426706 496943641 766788844 121337667 293732211 1072180 596631459 736545013 713032650 662333188 183029958 557422763 179465631 578389316 497273747 637682267 989623639 562146951 789464318 947438090 279375716 715904293 100534917 134221546 627473082 380035972 856201098 553187700 95216733 602983132 59379154 961237628 513179464 676975607 414032510 646602582 554836289 380857284 963768892 686279266 249080984 226936289 70975708 59163076 595773387 670771621 557021727 788139312 7388621 255747910 98376061 555317383 636150914 769181562 901195467 218713994 384401202 789853697 123185214 495751911 822405804 812880952 838948028 185486160 889148656 518214048 948217149 658905921 808496337 70182933 318969029 490273135 884696392 110877575 58233870 114800073 672150960 935737006 466672301 868491395 786798811 69923322 795754316 777363443 765560650 600225346 26486362 534286399 667143443 640461699 677202262 767439003 449125722 58907950 612829579 158664326 2425129 775192325 886162582 794881073 742765658 644612663 906152359 404844315 733846843 866781570 215803857 498044609 267778948 89950724 402423566 376580795 207310452 699631394 343248680 222550809 193200612 971382848 26697872 605679988 302135680 558171811 717845457 863099520 744630392 803585784 866574581 896393182 207363017 649000459 866195749 992072992 171348588 414949042 386893625 161650629 473089387 133659238 357775350 24297908 70802001 873428730 363044970 625014149 292168588 489544417 33077283 171220617 695623429 892073202 561952616 198248517 464695934 229340186 101238166 870668724 228906355 879439513 137700302 487606323 604113174 13497891 700423953 700504387 531360402 894349007 685262786 200724657 823091500 539183851 934726617 237124564 155596070 912796683 822373221 179286107 877781020 442431254 130965482 125429305 82010098 286352213 310311193 693482990 475033561 566534064 247599258 773501112 755844163 951185062 319025686 346027450 918545807 975119241 576903550 586359398 53084374 202106140 615217530 930703940 624387131 274187175 717179081 829653300 950015267 374292864 206215630 140349056 14587806 820841437 868131171 705916779 76511756 658152173 914874497 293018783 310530728 561800045 207057511 379415164 410221692 922680765 153465973 17264257 150465781 934416206 919927775 295368232 38701771 744500626 951163852 6323600 942730801 987678414 165091816 558596010 514524287 286955639 437711188 746727332 679202262 955145325 462010096 641901276 235733724 812855249 556533648 992124707 304168422 45908562 851018224 856246271 124457321 390775848 533933122 433443782 158358491 64473137 523304797 319165464 653147137 216129421 730336002 482389351 720685871 133546777 533337058 609255267 551860576 706376467 217686081 924476404 708185503 191670472 676064443 660089486 325129631 753943224 650001229 607834126 428337745 94049066 286173724 622250975 902883146 501986710 843803575 704326950 621819586 775546882 995756255 523238528 655859506 628348455 823428856 596569251 530248855 364666612 6404690 859550697 637158317 158622916 507309123 292993256 308288313 555174536 124167658 85390625 641156589 802176576 85947018 614954575 35409565 626717494 136299486 7794577 149815896 153026756 892400289 608513946 156397517 517396778 563987648 175396857 694397414 50255003 994480293 863490247 966133199 985583110 455751124 645328105 782823000 730044554 837010660 948533150 673196701 933305295 545225380 333071507 39416492 22263848 350005641 567706805 795753976 480829441 990159535 979421183 177252523 39082739 224573726 218172330 360350600 978543478 962464940 898231148 726936160 361135045 238720469 267865371 466817914 21573526 83378169 179378190 773805929 866362308 603634473 973294336 594304268 753527864 260770970 804369431 913294875 41885130 972151919 618417892 30657024 631693935 716825579 348368912 750957095 349006461 166115124 9046216 330165995 152087287 105578928 388590814 979141632 992753544 857637170 444395572 787370806 725728204 23251377 141149385 442519631 419513412 525275517 306830904 627508759 373290950 556926145 456675847 138996366 781179501 712139935 651472543 431675595 817528841 940996170 151063 163026116 264447405 344644997 748943162 429385431 441841750 171157332 235158415 441262566 502334174 639061479 79854342 64751178 711796002 795330287 855234334 549127695 798068775 987847741 100808873 229085821 801411189 737543852 637511298 159433093 563148705 796970357 79424819 48491251 505311303 888337785 75549928 774717094 960498108 970642811 952571310 103558410 165600631 639368179 646353152 779334427 158269806 559211567 781066865 883954306 728123342 980846082 779009559 638184575 703651483 178032959 844519658 398539756 401368721 738232560 843924951 416336721 136343096 917629086 111559297 519110387 616182113 817503194 984620829 458816890 546774879 565890856 611909784 786992149 308328033 101732406 641319327 450159516 946115236 160748553 827085720 733582040 930704776 14071648 883495789 788494339 622480807 325896779 295683144 474951929 93390873 572969147 182545761 776201706 788983070 862599683 974755254 445934306 185223869 369373222 418432763 191230372 105907900 438882742 740575214 24174850 994742042 802632137 142760751 73792717 510716791 286511401 828956981 621380408 517043310 99233506 883408307 633070645 459849145 219514275 839505568 605375493 817335820 727439047 860574683 694129760 446029673 567029044 263257813 849727106 903708268 905207759 144676253 954193072 271129934 999424640 725297618 967241763 878426773 797326293 136149862 626289854 322813520 586986522 488879638 684726510 217958373 74378707 690661835 258394229 55418843 815004972 842617957 404673921 761777907 996783623 717624502 43093308 415136029 863293241 98899377 976211109 928516069 500622759 283658832 70312974 936458082 717127732 150335498 121625894 196781874 556638332 554610272 854552702 711307733 66887543 797818595 205873492 288976220 25310039 204523120 635582030 107425209 239901570 894168760 535797586 741651145 520354738 555874184 609738778 870138846 163249170 51165989 224907393 206587537 162141143 605680435 721289358 994210392 324396408 372469627 244930470 454539087 516139647 283478244 522000000 474336785 765869766 249558041 673656681 693527144 175553184 819352307 958104186 465260009 93077625 669737266 987147095 799250647 54144866 207467644 111635571 36759724 25053395 517962722 537389579 384138796 263459308 475316159 267429468 632667756 718857909 111128967 995493727 804933900 442782636 173557621 812054005 780464402 133234821 82459424 69338951 901450730 868055916 453829370 440435055 712618038 398297543 54923014 213995629 266493036 301278188 1299713 2975449 859176190 650013163 513810042 582934062 482202853 410482126 822832925 693055643 404210481 40108102 591040196 348125753 657303298 911264216 746677783 339409958 59062702 591518762 670478816 503585772 958246088 118867969 264306369 733249620 602328413 542643603 477902755 269147694 118567968 569555968 787286702 736126789 919281999 358297533 819092140 23467551 728476777 807106069 436891650 825898224 871862282 22112348 719872225 848055753 710876223 108460481 9412446 386350350 966347078 757116133 95766409 892721472 760987707 74802262 888522659 395274666 75160245 966351901 804330718 318388383 516978480 393441390 340943888 88592172 168872405 443227435 676325479 70052278 119501762 435980306 393555628 972052803 171097162 337677342 569556271 266735401 349825036 282240330 765414189 797133380 558198637 503545666 83651525 466082326 414427409 893658583 628059817 75951630 131314634 29706549 454892280 847516321 115628948 563482661 275138038 564461222 639773587 483064021 565610883 786823199 656469937 702403530 641261031 347257171 551261746 595130560 36872054 468787392 872937834 650518217 579684875 589139417 361022085 1409799 918924960 857250991 101499104 468711044 387933768 745662814 125119600 232624762 820896073 904122220 38725357 865029974 626691709 828028249 853998439 804665621 205102817 352671696 218415536 858719410 574566253 470218721 735559286 541371856 483169504 267938098 500566957 296164505 143153499 323062866 811626001 764180556 446436381 115932434 673241003 585865318 843521953 999222997 319005556 717917960 422724393 698835629 246700469 777289827 336469760 985835409 978142062 793984494 627076637 363075815 347799930 234040723 186703566 294543479 634983491 750879289 766100976 322541140 264414509 99411508 777176378 636206744 724857049 230580244 170657167 857286863 78724941 784636493 82229480 295443041 798562775 383124347 464867395 862369426 482220683 518242945 601921580 822572457 118052120 150619138 237407123 1641028 999458285 201196873 241666698 640387180 539203541 211792114 148479169 549759823 86469489 947260276 317419485 90349581 453754418 805067091 169463180 608657550 895729437 363717279 711256965 243835566 245976159 777499261 892021161 92712570 14960419 651946423 936615185 712487582 921977077 127846880 343319494 668468722 759376283 32127736 755922126 839672520 40716575 674078941 691319822 351167802 390420369 701116740 157455305 49466066 151240632 434350702 197078643 411470013 569714297 160041922 975556605 393881036 649789376 638400741 749125820 26080328 131371653 351037514 210656736 822747762 990370953 999360262 824747613 506990196 570708073 126325568 611543577 518922403 160051803 889568909 801416695 377610327 906011629 643171742 156550662 640381244 303221861 632965407 657718927 626230888 490468686 308513100 474166063 570511052 521756588 189178535 795186906 182990250 907052289 913045529 189380947 958804440 821548864 594324980 278332591 419182524 286777744 965283089 245854415 165781059 771180296 896267767 908091537 870674110 412005836 886379713 823708409 815401933 766496383 238571589 796482676 727613704 998032973 832548445 136622342 641190327 214774654 812915043 690863344 190116976 993625141 772516543 522563585 67970888 829972994 253888551 235771693 723664770 822655922 605616458 204954587 625220023 258908356 51286365 196184025 424688864 766022499 522375726 398227175 964143122 781380241 37831230 579772553 738458917 688992614 799745573 816521821 617622582 369327424 555412394 220506645 125742005 565525806 260691793 981770025 28329592 252281779 948670857 604972699 733767752 453128223 545611280 688721906 703449599 358985495 278121319 608175428 606819488 266456859 29838353 785107324 520085453 750539667 458160594 846680962 483975204 76376678 295996628 951237568 875514873 991702858 474607585 817459952 448690683 292539917 642882682 484954872 663834487 891508726 742709936 80789431 375933566 201188422 216038124 300374767 756698126 674382588 713572196 175164761 804744891 239529189 118405132 304809123 848247577 391846097 601815432 348903156 34316037 654169279 602326797 145522030 661686296 911101262 196201800 63348719 56430794 902953081 712811307 48725952 337279099 44300264 771666522 90802216 340090704 916123847 474839366 29979641 142193247 183988897 128641390 572380515 370790145 30245457 195586464 795175453 96035051 213011077 808130190 184625214 594745200 441657823 669040836 104078081 129954387 465268984 173627644 868598981 679121173 974405007 451451894 446680667 242231663 697998929 212798185 446667547 362516318 214703251 695680765 201270312 170690628 529020895 588191259 328503801 252283117 962764551 885612749 654520015 183686715 864677479 990676420 287084501 117030677 99956447 569094791 594549521 969166358 285338118 509963372 367877260 29035497 719511 245549638 500879482 203425810 676768741 246738221 344571598 626910649 429869370 175784217 658377202 433192119 609674031 460481449 700794604 486725142 360447527 167583908 703784013 975777233 501917202 81182950 591023601 243149141 305421615 927938956 962981344 571459021 359994140 48133827 887629776 34606684 194186308 697618480 324890744 850042866 196862451 33020554 25863398 720336063 977242789 617453182 872751131 84776539 619655590 49660359 202819444 308676899 176790674 50958217 542871288 270969101 402174608 959310183 439328679 816808523 621408213 396855397 850006861 386012909 414492099 664279160 989531653 992076088 715664542 549610259 945274232 510946071 68485036 182569361 651365583 637653743 244023368 730768529 384996464 727220895 612501048 794657518 691406850 591278420 209050541 714028518 281635173 658932652 493670286 122821255 440698706 943823648 858797271 141056209 757012580 281025723 502540236 949393133 383118235 458304270 756018983 850799626 521024260 259581827 330393941 439508304 996281826 69853872 567020840 774380820 486262661 841351799 171167064 244484681 523267037 434479469 987678981 24082169 383242497 900265085 302413537 137161793 574501170 712829381 211412066 220051897 107038808 164335285 595876103 168276119 230285087 683733192 633287739 555571145 293001133 616252697 809446487 72406760 417084212 985543370 767788717 38096312 291478137 119196953 359210710 783443452 782817057 753854309 95371471 998925403 492931170 278061892 752115725 274437537 524390883 228804416 654031296 939503168 566650759 681344002 565435658 675374775 967580671 748595898 247468628 157701724 22487726 338325317 514611264 999174823 245553146 894129994 714035860 747603862 937581526 380530413 140734894 851963318 734217932 529691756 57284304 402862590 244140100 601027553 473571564 563559862 889815622 102610582 194588106 614805443 929349166 134561375 218974343 206680309 327783215 680265130 64211066 66068495 711196930 618578861 746374255 788059075 236250613 16766633 571730050 867174463 710217666 86106774 351856091 794137399 916764919 186962836 673693592 972428635 404484749 798973628 506383690 696828627 503488174 803698652 618754341 510525527 371987970 770077195 333880722 585268162 790760549 680243291 560001078 195930653 825496317 926093283 30183670 535807529 86952985 794907 718546777 843307095 763076689 962740237 604613785 972520740 881015566 425232758 497495618 901082069 31547819 287235250 883869047 970257684 552094373 651777423 683702922 789493450 864195995 47243097 633294262 889840313 328474586 108852447 271445808 489674458 69392350 398715582 536918338 991804002 579452625 972656446 477427861 234879648 347319077 302156324 166902658 433358470 777381833 375762272 751255224 165021570 299714801 645746344 749783398 891080028 344755776 236650877 139646328 579981021 343627967 769866315 420326802 727677178 453718063 19667537 627829224 741568607 241946372 84805678 546154317 145554572 605611273 808320227 704401480 786568635 809919222 587359165 416335410 545251569 967251665 592583566 92943115 178876089 402354226 993864407 409034411 680655774 380477014 378738097 910559384 467238546 468890089 474370927 463196548 516509598 399067851 950509593 299715420 892533383 207453429 992211058 266648349 479893282 952745348 763676792 918532383 261615533 593798280 728900947 397260989 986804006 7468088 157222264 328030195 495874233 481228333 91253855 890754544 938775110 743105414 935064699 962503210 905953734 240434036 454402220 797109752 719601604 690166028 868449977 526503446 394092546 59501052 443077734 568679147 416644831 456157063 859437859 618015886 276025691 526090364 386167018 570441953 316199104 281208119 872777001 82707336 426464584 482053400 981825171 298836554 368110496 819072553 481454645 938372051 608067336 773834652 661707696 376356119 878027724 367206667 987231388 508822243 387558277 957855610 203677527 14551922 590583183 57909506 63540493 150515361 188932502 359481142 80353294 292034336 228176920 586379834 861192771 229974588 495275678 449589752 458381663 680019909 133739835 981512637 244054515 965014703 998415189 414526111 741309050 905495185 674156768 95470446 229605598 504695100 360297497 400079058 250835807 4584371 716296826 150521493 874922928 754599387 189487221 894262655 874285978 824616811 439276690 983528362 714546137 965483457 16607000 566007470 412335125 815630259 795727814 1699186 658306943 99418387 802322387 601605591 238555436 15897782 519921811 365547199 991833073 131029607 961287255 146845773 431669349 270579085 107078957 26621302 416190046 210216948 427594341 542643140 793978124 913780252 418828844 935820828 151143541 951398293 101630776 845111889 315201831 947410768 3356251 124368900 716616264 563470794 437515207 606379012 944284437 483079426 840464227 333624815 138903525 385247196 60335325 537869502 106916373 782048395 387669447 283450175 645319207 877271408 980595381 288168809 679404972 944468456 128745852 992567297 217417649 558008383 905658773 783221155 802115494 710880950 183131482 437397558 126606975 776532902 992475412 864222096 794656957 300469773 313923806 706535348 620309434 960605436 285306835 217838483 300355691 972403895 655145408 430889530 472782020 761250032 90793513 688242790 192389341 790579579 170289587 825495985 620405365 995002531 509908887 793856544 721317254 835604065 6610727 829002518 956277218 475891012 409566176 661287483 618370460 536736779 932019205 596916426 149263619 545010362 864086249 105223063 165909759 499716198 342862551 311812874 100841141 995774514 615305155 174525970 981950469 856580248 393362608 144717127 211817604 560278362 91994237 9142574 890757449 671551578 766829300 77667481 275363312 199716686 78401590 839650862 728162540 274604506 763703501 362182485 504060431 306903643 270300916 843021431 402402441 318648676 654202696 201604151 250561391 323968337 167914640 500823467 257049522 92162563 12837262 450034959 585286182 508693098 614421347 433109894 349701185 745516865 946779677 717725430 711613266 899191145 299049574 714181152 510357830 832232480 67199521 906752357 936798837 106422866 889622422 948995182 328101536 680440009 311015291 593615575 532264325 13338723 822378646 746533219 323316694 967059260 385826499 855193613 915505764 640277275 312876108 105302679 141364350 312476405 6261833 746013223 87725556 466272324 371137824 621988258 495004043 400650221 508586153 303995590 325625098 65939280 329599678 152874585 41340298 840437390 406802670 380815325 654026163 650111391 69090258 755489001 535547324 647944013 449793008 68062188 208298034 747213458 12112397 94114578 520032221 460524833 968719139 863968256 285783683 153043795 415998306 570982330 167545046 525277977 801527106 136303384 20568394 599945349 658707913 965349704 773145839 993663245 729021164 324276784 959288590 960764358 830545495 373471325 839147531 207462203 550740763 376193412 965095506 303280360 629239395 231444317 350777492 679846375 422728405 334943262 917051642 990618552 442365722 576713943 379917171 158482544 872515878 847407028 581487229 578354776 782514107 738396167 618642616 857950894 459381007 426893534 3429624 44227581 216915697 107140722 158020401 651796794 252331686 51878712 469737952 179984953 230241723 272053183 166265031 187887551 907364324 175099931 29104577 155138880 992643941 263974079 662722023 894062 738150056 635454259 114268393 195782272 270583690 387968195 27759120 309062364 723129927 337064941 672104872 144623738 528450701 23058877 40489744 858921367 903148437 643707333 785780471 503864753 972901979 372206501 444260213 407004477 8240673 723478465 17883137 333996574 210011408 359146136 747812573 664428306 329545825 8171451 475062227 94502507 536251566 100161145 52900855 604880372 510735783 820483971 157740426 399425741 278252079 640108121 73164735 516518051 837050409 231473804 152790638 65020509 931702864 342417301 84622530 205853845 281909770 852240305 134163416 86040744 797523301 781286221 141733711 126517373 520869160 772848591 298604752 620890977 557664785 898897970 3639615 517059578 756927503 628441794 98127317 138771780 603475599 952535769 601933165 261739532 178219405 491474328 128511990 24863827 181355861 703741042 132452822 882334722 884442258 639263306 334622870 488231299 993682814 511723621 361889526 483230453 190703670 484749331 85890963 317334653 716515521 912349811 270959993 211801839 206193358 920526337 71037615 861361269 758307881 335487762 325781537 599935546 125094161 816434276 768216762 134665903 543987027 704230236 102650209 276761141 367985335 861761370 896849118 59535399 766910375 445102928 160666074 452939748 741924047 106862628 181002644 729712824 856126566 992956457 681227383 243283242 938373009 482280153 293171662 269112903 345852073 901662836 160471595 14634867 591470068 365484748 13733933 315443632 330614914 798717996 607913896 522395898 650951094 204007794 177043176 280900722 491034487 17972263 113016772 687227666 324346303 287424839 614841028 325083347 746909036 134219533 967875046 949283031 337595678 994939786 575767056 243164146 323284145 649931390 576544032 443446075 436228816 667185520 63006939 598667687 736309188 742844840 78033588 702434571 93309261 387100383 769112778 931744480 240017752 664183465 997187723 981386332 371271962 658490617 163437416 276531691 37822147 38924732 784630792 95838729 521043648 112083667 934071944 852186187 146156096 459670704 460140881 386262191 744167250 723355278 222450711 141909289 561911017 789672274 170196108 618341479 12731947 712905050 104633667 584907233 606123326 193542609 370004328 616133352 21215901 426830572 75469452 326135855 922452549 886247383 504241021 106989256 485708209 605675284 549779784 900581365 149808344 270097332 548237157 812483388 246517951 1013217 705123433 375332378 297176912 30201146 203268121 579400739 95748694 745637244 795970579 129565769 545296073 251014849 786140090 903233231 464915153 38417819 920181237 159590836 822680055 579532314 852007371 337660441 409518346 453159113 278974626 779358526 548709749 319229646 529301541 823077759 187947131 215242103 731809607 437771227 584776171 308883456 478157344 466999109 766265086 341059312 142412345 247993969 345324546 507756070 503353407 815351218 572927664 478704478 121834773 959363070 773403920 133280140 781761228 138037899 240631874 870341018 249517353 621877472 377768084 194031754 554263230 342566290 800976063 672337599 326774056 287653280 985658729 665231407 356726569 507784686 699414755 656559366 606184713 555374870 995205840 66293253 780048879 340444087 581304389 217518605 254208745 191834920 318314974 932102312 309790063 541800684 794791948 704271537 717536532 451157191 1244443 954278782 471371659 902793678 403337861 366577071 177125325 668478529 580677094 676258589 253189106 861193309 772595821 58360768 548942391 42594292 340754625 307980531 222110074 182588900 791669118 349521633 412722242 610777897 201631014 593308664 43479497 997913082 358404473 259672668 918081950 737610092 100288492 418405892 631361669 65420477 335945484 648662108 911489313 476464595 969777124 394581903 299982799 18746820 46217731 152680682 992303885 744145657 856000235 111926626 563183650 912674100 801820051 153710282 724898695 938478893 234673611 461035050 89596955 319492538 139902677 845676311 914339218 869875488 102426187 466582185 376034370 489479138 950819859 595451848 772473457 164475854 319147585 198043201 387891046 167736767 871710291 966437266 818560480 98203794 215720298 926811209 755522898 910149072 240090543 64419693 786913175 593455384 194900148 299780904 412107148 120735286 344600346 935450992 703289751 381468896 350480869 700328021 359103774 190084618 511498713 39140764 229838258 924186184 213545984 345616565 417136699 81346860 799886062 720194022 649789952 594327752 928515226 883764734 653384559 271941601 531688691 147458439 564185402 862943035 67255953 364235205 142157043 310721689 41575669 383991701 642373476 916391385 978709983 19098062 202443949 652742018 711602427 152839605 260352182 289300501 555998254 269773870 426755049 219777954 849266028 556913321 82788095 541524861 52439427 163025941 710190924 273919680 91760958 576524084 843508085 864120596 206778125 878453994 823412409 980707941 413980360 83746530 859819203 650281701 345365 738308753 678914915 311438917 4562332 68239570 478306246 623733908 468231261 331605550 714938971 704943419 872985223 781913660 966006595 759205616 901969369 723592512 968629973 33280 116914358 807162401 269994049 148066967 499791064 955851341 64078008 689114552 629016003 201049161 698699768 984324417 251205283 669878916 892644216 614271668 112041724 568259266 918782463 535248589 297013706 257202214 104876444 433471072 314420854 115555179 264733765 259294987 780585841 94674873 360048209 111763736 834480852 160581762 862374392 266139616 829964008 782338466 12147857 853686394 146476535 266336930 76221503 821576373 747279214 426586963 94923944 396678697 122936429 724317992 120178771 391160300 560585553 299363448 202391490 785369475 377868412 877440125 274649511 260973894 38854351 548311059 494350374 961828606 624898866 852563086 927592395 974509135 30482547 277134201 304513602 452806560 433055382 691074025 253479810 834077871 349829145 209633607 668065803 83003657 881814053 746671028 619042281 908558416 369407449 800844751 759159855 238912428 537633513 358715594 398875693 131282593 300006495 843060867 409745769 101060991 509808083 63347384 417733565 687677650 194388657 241032854 949877770 523055713 399012857 525848234 241867405 800988399 870275563 201686741 740689173 319977938 243359145 675406868 264707989 587864207 55105753 924673183 500586921 882938073 300379035 777708545 423368068 472639909 347017442 521195496 513071580 969890321 810662446 169077772 490059316 211504979 725267804 21394574 633420795 302543817 189994837 367615704 827213411 299362422 77569202 582518695 925200417 219859005 137701252 302198533 641643986 727087597 898904277 557962643 372770995 930680017 818253148 113415836 855652186 356386677 871680066 217031684 903465756 612096221 651578542 696307525 192173242 423623088 114786214 245114645 715307980 770664128 167809768 493193144 438548262 493720532 108069647 105163717 228264576 758382188 440310352 439250158 323187821 109247692 255605083 895589619 603216599 512224869 330187906 440795730 736544081 145339884 727003693 830387126 49873551 553751749 570645202 593557588 218472041 161831630 871521874 410702515 507152743 209631478 23592314 568196200 880543157 468471656 788012929 885661614 175957719 408001836 82747046 539267110 486649323 469286425 226692881 971212892 310250612 604688428 317843548 155157414 970846453 139494872 116164147 104925786 599061117 22936592 16126573 819110837 844153149 497683193 704447987 807239080 645978432 15286566 516072449 220216374 937595863 61209305 102801776 277453582 14391009 533024492 629222218 494960671 885363450 25131781 360619312 773506292 850046967 45688038 838082077 683393461 985716289 11980802 333816728 109610971 779649231 791640232 201237670 360342236 269695763 340954111 293948264 358171985 209159123 802851379 471327448 23539685 803446601 851443423 938572115 880092291 168505465 784706968 122689119 701448066 109451725 743243643 330610108 648632458 129318314 50054377 897686907 153049345 391867157 619272384 494117802 354851131 791596133 70176882 22014867 361866385 397579625 686945138 905512326 290581585 777007892 352201947 219313236 851553528 399535008 529544734 31922076 402581136 459211093 463466654 552976248 147316938 321808953 702458074 627032990 525886675 224312375 118229982 748533349 160843774 827218924 960502945 476869555 470389277 168791560 228649840 665010529 252472021 540485022 767864195 477341852 921210023 187795190 238681827 972062113 886473 614060526 846498861 901946750 815759316 516009268 894842548 477818884 712509499 296859395 444618113 483946219 755447626 697997781 37194724 699493390 391638032 184422926 755905203 463028920 504433682 69150807 900778968 107485869 251006036 800143843 517758179 651083443 522746095 770197193 12829892 910505535 352299069 830544542 870885864 482463501 866448180 966228505 941868561 119357584 260813322 658445960 300297601 197025893 120538154 457396190 172751911 147952116 350738976 29197715 948650441 859934132 168141354 726330412 582454084 59260749 58745548 383759009 834837487 439196125 329594958 966332000 277668137 764043378 920252863 631135267 166620220 27113666 702135730 533739091 553538489 474935677 844255550 499249413 460119628 283121135 839647230 8828529 905877886 435685823 414195516 225144442 489482328 711153551 301819145 637501876 537864049 512941232 511812586 683852816 679146162 567919294 294325631 295715341 209163033 658071161 574201631 233212025 723244612 414167232 712323354 294795787 65460244 462326662 211979286 617343200 455260783 453932847 149540128 882478622 496655308 458512159 13159039 172027335 270612330 585177715 529832938 561694953 419987214 252696270 749692814 763300573 861925210 248528508 695945658 848547211 129896881 655890600 390959479 47385572 702033328 743191927 389376362 933758642 456721992 90454454 60757676 741111347 591718066 985640309 640202922 25473480 15606714 668183585 403206819 66079762 924633644 835708029 287542508 349958662 178566884 189044359 566578400 970139492 12870319 585581863 390316624 864171196 213943847 660870673 90128594 51828682 952087919 359184105 982868675 568421633 39716737 303189955 127661912 792942955 236024742 943327812 124151815 431717143 745450184 216645824 559279547 624525866 299362967 371973121 153452618 951805576 217946911 7319076 389867441 631722273 667165220 838827892 968416711 204977130 825081962 193495140 734139705 594060669 649265916 348056633 229131951 318514970 990707355 200142210 489427350 804215171 576912345 603936011 440264950 226309539 360942239 871694686 988780284 770008473 347570048 614306731 91339508 490132702 941195344 277585056 359625881 623303366 606017814 641036945 811420469 2937391 384872933 719881207 288364058 488234229 39323565 344716 162286689 215720088 992807960 283806801 509581773 687199979 521952908 370665973 308629387 89414395 988298256 153036933 137116686 192095937 178132894 683837022 915192528 535605066 489336374 898526007 978312026 655559942 659573242 286454181 390918737 474850119 963068035 937357985 565333795 996391205 120821872 102542826 576238980 761254889 500226833 491045794 83924233 472288540 524592294 145848555 477302069 410593442 205772604 834210481 896097318 182131154 954360333 946909964 348135054 124166260 836167338 947867234 520932832 412763384 485759126 805341668 600214773 124403117 46677009 903236951 805882088 634196709 897012431 548659940 676045503 691477995 439488106 338742526 594696569 935250949 984598721 907971215 790122552 478472948 108807781 321467411 787714779 985008132 898835333 675036000 556484073 546803028 212114340 644286492 723156108 737170054 686797010 42250904 352126982 548286634 11108467 196733495 694420961 679437319 379761410 181624430 581339761 230483542 469540354 28646396 732778773 727224937 675116137 56473652 917688903 534907161 926139610 686723606 418427781 638076275 528373851 61469807 66016020 165050366 822490312 647534069 951514622 744361869 736473371 783433305 911457551 358040075 862291741 200453425 477446717 392539640 315423130 102505409 115289269 570360141 255751159 657260413 121935009 934732518 20551065 421827039 261324872 165357028 822827860 15001704 782728252 914075246 584880566 876147296 831718870 98119709 842435911 858866099 53095869 162587175 372582343 740748950 285564137 160276264 774085672 243423295 647430491 133786360 922712272 49771483 683486246 587773236 192016465 471524390 955847832 120571268 811089150 227042391 312377271 444965924 697321556 130584038 721362965 412790727 670025 58653815 23614202 197042092 248619326 696479840 627506457 580664812 242866273 269879655 391461113 975672587 261310405 926521414 787006012 124775254 674843493 241316151 145827797 50369811 189800989 268517562 390575855 652667704 234394687 303017939 100258102 781636186 749410829 362635478 114199623 661711621 97006011 309126642 293058373 33702016 640810745 380103445 87188912 643441309 913779094 670710186 279483168 51651118 611944891 797698451 540361814 225731746 636929680 810161769 795652829 860538058 590092682 138076708 307083598 541378721 325975677 238742329 775989975 224354951 797097636 331554186 229188737 678035779 993112499 156329480 280774149 621648115 753225161 595112211 295025382 966751051 771307957 980482042 388827601 689117761 930556768 157258496 831332843 34932879 660313973 39629488 381985506 342242240 837102801 270392511 530014528 728691080 173044035 588272689 591918228 118791956 202958495 58206524 362475306 830495541 148138527 140891583 946242841 852155998 189897431 258212047 381398114 933048520 704358981 769537384 482685836 936250598 867469695 35248106 329457696 719107525 560863072 367494662 842651741 974467180 662495654 482400599 112004187 731781648 347544170 531270685 726759832 801023598 935581461 1709337 140242455 97344297 548184384 538062180 179969133 785298695 869224394 692684906 33826449 453652330 424675203 390170874 800437765 937895304 138194204 464254075 426911965 182321382 397741318 496607909 787417487 195849137 811035895 447327559 49632655 834415478 234579026 258448491 880682722 178975120 299929767 706843652 307177006 645498022 380863432 304702663 492583604 989575875 355636926 549558660 172901496 239546765 159251722 7261231 932048948 546011793 19719959 656736454 930523521 221335107 382159172 402499685 659697048 972628319 299780361 108428087 80974595 721814466 93276264 369779129 917872086 698100376 286557536 130452620 110569013 986940737 926479297 301371657 699184865 313295424 237022653 366784694 154992536 635920663 721611794 246115288 591879513 195254594 558185477 200945763 57954972 34771195 72126902 668366305 176772301 768004556 839973049 489907803 539152125 567604324 414540375 196913162 943197957 745698288 472071202 77809165 65026641 518555296 992201938 722038318 190137801 615551187 991108027 716378792 399342971 45723066 682808933 720829395 154587370 868250258 561132827 103997449 58769408 614668122 975426909 743677830 673422017 669461356 45745988 856653390 940180136 871737606 993350031 35062845 394848563 625693412 520287241 718490269 757791577 293991459 291465608 767363001 580784182 538277778 213333756 450654883 256839425 529617353 550301577 430437291 355956885 54222290 761872862 473139950 925640338 735007206 347363469 978572635 813374188 369955482 534112989 529840527 532037394 376474577 820010956 105390217 530928804 207128680 787705659 848241003 527488348 4765368 487816956 807440475 811120916 83172960 672447609 441725645 572308273 633667701 134139667 590677374 921388159 224300907 565208233 138899891 376486265 548903708 278135286 68244053 351030101 349685386 99354082 172727941 599159749 790733775 651362572 528069580 771352396 153137947 823198127 775877454 939328181 221182690 6134762 480323857 125163864 286389038 781821642 966006746 689802810 316320264 538476828 483595909 955232824 511829695 924290217 362671807 850101477 427514372 517483918 259384835 410612097 880983891 943919103 971459231 227535355 136855256 686718218 178980295 936626345 175523877 424458780 666070327 598212707 109614237 981233146 677068761 635544258 857833860 744136839 983407727 504099206 706281955 887413008 559000710 518763560 486099265 204053047 650552839 157621068 743213930 276854281 512636188 792747279 130878392 11311760 157848982 45802554 141136634 339657456 748505207 60583920 278994792 186726371 303469571 48953724 320616652 335725328 242958911 927436367 899144947 118465411 880944126 909862788 324438354 639181063 898739792 472884937 582869811 668445110 77638621 802813386 256417703 421884458 433206818 3252848 891041413 568588090 243012096 444673998 177827686 182175563 105515976 144131263 115204557 98626549 478365431 537181526 844101524 112438311 972981127 755113768 675249230 409862493 443538325 991552760 581016054 145561546 214857652 808795469 247744913 976754601 23851768 560490112 886643668 789151371 716387640 331579435 189347085 563947142 663148006 181948680 632063292 974556958 181822194 442198621 983522206 581708132 293901441 896766001 889690274 389861774 289386949 989549088 559009539 436345882 632539965 616045922 972956607 267972650 726598233 434892663 712098689 196667192 449004400 678630452 119396837 905678201 375941310 104998543 493884047 38978276 523504564 718653113 656144457 183463899 515271109 832167452 137548488 687457050 286735920 71335814 341703294 729368880 436166956 74390459 498033169 653588974 580484133 285285164 234126517 284247342 238737787 957163596 738578192 416921846 379174979 138000810 659714376 548812635 480661405 735266802 229705235 284053145 227710726 531500911 745166544 85541322 443677359 206827770 33659396 46270621 200552191 642340962 644850087 376281580 611181846 359749089 613725651 389370580 289529383 606731735 247461882 28243560 494738846 69000349 825444673 751460275 508234777 687903126 897006705 189377576 941461066 422684975 860194904 872856710 636632976 794128752 515800945 762188183 62465769 237257165 64428669 240131165 587850583 237776520 349949855 467553636 546047136 143407831 698551149 976412942 178750247 705499068 381934394 932574872 786186974 942884522 660494855 470640105 174174687 565556721 48086497 529877355 879232662 854633484 252198387 857184078 295751285 178991444 598551842 396113161 270229295 399830852 143056037 169048747 699458901 635403681 320256826 406416946 744494569 482942035 232750580 933378827 482398431 929235789 67782723 663979034 540175890 574644099 438605623 209735113 474279512 206163968 156368064 358433030 402456121 659935572 767977188 708572060 241276692 490290575 187428704 67792063 635852521 49097936 142554167 839129315 305463586 721401788 341318757 195703775 29444758 71593840 328549145 781775379 129154331 6032579 133128279 797556356 341429007 286683815 437930822 652534446 422343791 82235011 610618836 208828382 189217523 91235813 774657641 784145144 465004897 978452679 709934345 882180885 983482084 968294655 352107985 313828100 107860657 802069445 699415703 746738929 666384046 823569479 787801209 796950659 537111109 77054807 341539723 551783000 630418256 870400693 774009063 256082420 282451304 169796089 829900833 614589607 297490513 497927846 300154767 840151363 397622899 87483805 794873637 255768099 274212594 657499323 600024442 408875015 916738635 652565396 637070719 610833197 876571504 416096808 731567020 244889557 255840341 657902107 566516544 303645002 162680206 62249102 48115889 146704903 541308357 755681401 648196383 115215584 731866093 247466779 183495667 390104845 81775674 642741054 901985208 941065796 930305584 292618243 504616135 727272163 680613115 199841447 405914349 533521728 577877936 705297257 122372075 646534320 658765863 903220812 464665954 540276997 765573211 745517519 744041514 392863010 214435310 34978431 781999599 934105345 779796919 733697182 708984759 98780145 489972645 843026161 862042245 461949368 956147191 448309099 966430749 379124430 304140393 584669938 557394423 373474101 463888369 693364738 955728335 879671767 396541984 657846365 654837880 423781755 407891937 261264072 953026679 676295905 520513825 909592736 165538744 356251161 40997793 960255398 237093756 353338440 570237283 388641800 963552764 981522621 540658567 564722780 105913388 767085320 500423055 952439550 623403634 974803277 189224423 181886097 347271686 228745532 952955343 626199877 218769954 241779051 712754562 723633090 888435870 615292509 752138567 11197464 93165897 383181475 726845995 176561602 764190717 891892395 285416951 88965875 212014389 20622924 985965657 980147324 326206735 439175318 594109841 662012472 368308504 605216805 888561675 701260916 712685557 654525214 438449977 917712242 22185831 75514801 654531118 825866857 185559303 979845477 661154483 138887245 862483721 145910591 234937582 524452078 251549413 450943840 796307026 241512075 316770072 204498629 333758528 228986771 762449056 130519931 732642404 735435589 338461883 328273714 799658291 241456041 648799763 875137138 70737727 37723093 607001391 533585824 19429842 905417031 215895721 424206881 917444025 484047971 737756217 341378419 583518968 997726062 946433501 696777420 864469598 859746172 342559341 955305724 624566088 641261408 857543783 591461419 5525694 35857094 640717652 246132374 990302041 997384255 669527868 153594671 149743378 125494410 504182733 930948671 656829991 49633429 292374071 678640332 319055677 240131525 596483900 510878401 370710394 748926762 515727230 521701110 564920618 948118509 998624127 825869509 801828333 558204706 179286967 272623331 347497704 750907008 563061423 477161595 12300346 370745929 2204800 182760866 585205933 415624812 278688454 976796942 934287927 268622452 905634926 411929032 891061163 717707575 609265368 231550835 482207353 655078934 462023079 112227586 449653583 735609403 158954825 182077102 887864660 84115082 742904661 146384830 456549166 771736810 600552071 888739792 31802281 661060937 491053927 524793503 649522843 788910934 259168194 769798080 356511848 64403178 698235766 985632663 449829338 686906665 830869535 465802754 528223911 561493243 950562041 81378004 244357433 130775935 32255061 514989021 604453043 545242471 678253565 858357169 424967429 90958265 838792515 158759699 731263265 66970098 91734144 293358148 107450290 998888090 8861016 329360811 886896306 697520946 181696915 415475340 966699407 842359771 49236108 846617212 732003002 548356291 323267486 995934854 838734933 214645048 707369489 930010482 338460690 303599736 737881680 928193223 665888572 180254131 280266789 450076169 59278947 736933694 835636357 661130122 122792555 25524435 663515354 433474491 298139403 376873439 564697142 502905155 561613418 200803622 236808688 590674031 341851212 545974720 818347994 380107922 582165044 260506824 156343562 867680826 93222319 460084823 657565512 590824093 154597357 626182034 538193741 980814391 492734482 192508658 726508533 438851042 231702560 523783033 385733560 932963670 392699666 453756804 528642945 339953644 62569426 597580199 664495668 1726835 290822727 109677878 641066570 861104998 646396615 274664636 704537613 314199798 603177179 840877736 145629406 955389799 551957717 746628634 452087730 660003657 387742151 784552818 359064827 396181455 860893274 271954696 148742308 214173391 367346340 48993084 508970850 933388123 943058052 614190876 479828324 920143493 797522185 898925584 198413103 637878745 425483925 7542992 271196409 912616387 290873486 452454277 673641057 173354100 81732417 372716976 815005841 41848127 928553721 473135149 422827979 446573099 249981747 202026265 476879271 255695729 233068109 498595302 589622714 695011728 935183034 359598666 83996045 821312935 346624238 920305892 694498357 289330659 734642667 987123869 788695177 984143690 904857289 73341320 493749387 269206204 682933628 527508115 58750050 205475146 240871863 544006151 758679578 501435731 669195401 150606564 529816092 161203656 341763432 316357622 2363002 544386399 705150652 705297358 466786534 478712602 440295507 402680778 589827741 441497022 30652357 506994748 640364328 392728682 675210296 543050079 12626612 437983215 835665495 879527424 470123988 13643570 22809805 698751350 741320825 134126046 151189960 366577225 131249402 952622005 911494954 185898806 649194023 553556662 318602370 198563314 305480080 230444154 349944724 883051109 907983884 464815094 9721251 208368755 293667756 78691919 80742281 152942842 532321523 181470801 76093932 346295810 704819056 122003187 603878617 325384939 469733171 349855278 677442557 232429415 404582361 682549099 503344652 47342359 367297813 722685290 346890155 636556775 599198648 464900422 495032345 484464843 939809043 788781728 722809495 599895267 663906227 643239357 115535690 915903626 607572787 954741685 789221037 476099020 34813267 411631874 379164382 824836161 347318239 185892992 251281171 388649980 567327477 666855062 702681830 908595408 466767434 616133199 326188969 308301526 214871245 108530499 664614135 81049416 361105440 698458479 493282322 461387183 609892216 30948087 592110471 587296844 272056138 744735605 106317640 704352789 991458661 209550967 232367159 307138051 581479899 784185173 416840023 98239770 546092748 312828283 484844680 654733519 361914344 520060980 282389328 49729243 811275660 384868662 499549031 774456010 200762585 843788399 560073649 652619799 786386710 884455972 663833448 311689987 734345363 223810629 993456192 803685337 966015506 865857618 47120438 688525031 707472792 245025417 778999534 976085469 637521347 321825288 98425085 141548901 546099357 119297736 226960435 326195733 922989943 323030738 885091106 920226892 916224442 724379458 483422599 676348670 526013820 990386942 525498195 330313826 132690888 640039062 908538281 70167870 611585834 366787302 675022980 518803705 401748721 356446274 842074038 901156341 457158675 136124165 347212086 981989962 570177609 27220224 242416456 37737206 639549943 358068418 405482349 551243444 664323430 200995681 965088254 672786595 723105308 693986296 625107722 970166792 386246022 381205267 149431818 3990120 147278524 156805106 583821143 981307562 110447863 100360577 191914215 440351293 113108774 783120121 953597220 654332746 908413829 166821874 787187181 67541927 646079249 896024750 141039770 19460115 301340334 451820973 866268399 653070932 964015701 123186134 904985112 251179516 444871261 563608329 828122560 754625860 588745140 547948691 921875320 71599382 515582270 919637908 747300349 264163152 679491558 513088272 890476549 360554348 790862720 882674330 620829003 376298574 1879332 562600300 448633850 934154037 489657190 609968075 738849418 577605625 870207764 775470188 793384936 973107604 326757718 49432424 457822646 251183758 714966945 897752264 631803215 387295288 778656412 850803487 167466471 15915598 704278337 167143472 507496791 528456102 553223634 617890059 926252174 19121744 613444196 884610225 374324104 442977783 117071098 35537347 97830736 884369901 770182704 441121959 592659224 948543571 773078356 597790497 375747082 374694343 346678757 83533130 948686399 702520680 966641948 966085204 776844116 415686646 959346031 917397038 870336356 58943705 837879812 237747571 993965574 860770933 504375420 920628776 838181322 6438756 589935533 80107985 442731464 801643849 976214017 878068227 231293900 254078052 119857982 53764524 213580248 83998241 942111885 250222432 71818555 742640685 355568525 780287804 705283735 284489763 613490280 568227889 791408343 297720363 952056025 792578708 153900437 240381248 664890263 524797105 828003670 749138306 890941745 398302815 566161453 210731803 688264690 274367290 164628826 206045466 36157449 122624951 133416334 110361220 565827402 78497746 524083041 123804498 921578810 543242982 5095862 999842621 173922084 190724882 223296369 445043236 150181836 248013510 768944797 691999778 210752480 280324694 799530280 19786520 769111867 919452423 475189193 316771655 125484761 989894391 453677668 438123484 887306552 615387014 250960717 404990880 839103082 22971365 32928843 688758446 441610618 954948320 217457423 465585468 471795563 454064026 555198840 886267434 123075790 615004874 802207424 216817283 860261917 46554951 765449335 213523144 150400159 794826121 997567120 126072805 442993681 416475682 272243497 183859951 253879686 49988451 276426937 381926230 391694925 617292514 521334347 721105208 406406630 965075657 277513146 475142304 512970876 369998107 264239997 937235845 814809983 924255626 531228864 509252753 79059147 165691176 190295333 599627221 269486568 304414146 246704548 39295635 994470588 509889707 998568053 106435862 948290704 651648972 20651924 748694327 914355908 105374893 428913713 472825540 732763596 223150343 239238926 143916694 431680314 432756560 333973249 948926585 286242923 659766002 179271151 97318398 917856111 645551706 968137654 707891489 921858845 477807706 160955330 680660151 769978316 479563110 575458251 490408716 982446339 994493013 463308365 794124825 733402721 607919554 712866515 932157422 426144110 270138142 998623276 352565858 384739446 822354513 226721122 810541330 333572898 764789109 591272751 174082386 462642635 991017481 380743614 398464878 200072602 721343352 805437826 485265166 298486096 884286108 20079328 401845927 795527456 547418626 764190182 516189677 237111059 50379778 808810679 417783801 191697622 827839591 668775433 539029406 271957209 793666246 37073464 623409984 611988603 62388470 945211915 240531809 619068519 262209393 810482609 721024507 770159059 173719346 632389369 850811879 301604565 99659044 442796545 129371499 536929508 498329461 231647357 289909109 396025296 494149726 755805759 668712180 978771863 213486219 992513019 957585779 892490652 681115306 472452600 332763742 209727063 22295578 95022237 250221340 46524926 148343008 476609498 808137317 493877633 687727460 958475559 387383287 470731233 358106218 307655608 928021247 420353328 594769760 213203659 963298019 896257419 784699227 355817553 76084811 495338698 436388582 590197660 123376471 44012270 259956206 472394993 594618289 533469159 138766692 378134124 593211565 735619393 140740169 684695319 904005347 803394364 548755796 688978839 883598021 439857191 448361588 605814472 29907498 779560361 3423742 804447835 552876992 591506373 24716429 475926703 673400867 3192914 399420911 759869866 226622458 687854994 492343862 381253323 649148342 588279858 358691186 689883635 896562123 375373269 138193938 463997058 678014587 748621830 298845254 709726968 692576341 871208583 598349307 215492081 105874905 498063006 991848301 434335553 348417785 905076540 398476700 279877193 630193765 975847377 685316701 884053978 738557549 907161912 155395228 789522919 575847173 735161533 208897268 2961778 913216515 63324618 372414181 37595481 668767480 772693188 946938303 978464499 803809347 290839253 399509178 889680516 387315716 689330719 758096936 547819035 223569965 39528127 814892703 59688271 744148910 898177395 702909112 433321282 831941076 882826461 544290137 38298192 782464965 50148051 248894584 486773104 880354599 355345679 462501937 628343910 468125978 660574211 390641656 908577161 375677567 709918428 607831218 192395084 530453814 275561755 718672126 438834759 87616551 184476507 47971015 829469498 300748553 824829760 143122575 273179726 655141187 517832332 195942671 283136207 218819821 554930520 332132072 93625557 167031694 412700037 690228596 313025017 405469182 773998943 802216340 189460448 826763338 326515257 864719581 782785874 547646083 200303815 272707078 281413068 791426167 851069117 685931558 847819403 945698814 984082639 180709353 711962334 798044025 254469909 516169382 487619397 760111699 988208037 288077445 558962134 137593873 218113392 759229901 893242725 108766243 942650885 20711648 956967888 833714847 29738604 927524851 133616308 246740067 944433564 599434874 351499251 379016401 973848956 858083131 933671758 35020258 396092178 752248387 392738434 824712035 366758145 108782332 259744453 78493088 350230247 870857791 631594529 328825020 869570890 709956087 37540617 746420585 523134278 272630173 767308167 647201811 799990187 454719304 544757797 72597573 537572122 792610386 326320557 129318102 770823354 637394552 733255822 184246685 711633948 71769052 248666835 52378956 146414750 574407976 628221511 984112609 806453950 279921618 461101509 25287255 791132802 808961525 461927773 10985528 335613282 500317142 321604250 839795444 278045589 65520698 221743407 728580125 79131468 630568196 977268721 582124178 970720372 248764938 918417608 215781131 944541492 132888668 459327427 813659794 762933627 695410552 975221780 659661739 1924748 684480585 700581648 523538579 833188815 125352928 68159129 154736989 918988045 212683485 274062463 358024765 602365284 370696824 203821203 746908554 735377072 200903129 674952184 694844826 442485423 730290505 771429914 661358853 152568477 754112211 643254444 536729656 116578600 861754504 771622964 536072529 812226306 82494428 768647871 980639997 189213481 907959969 85834585 814291312 576940667 221084517 369822302 442619648 720275297 264032741 114880963 73040635 563963245 475063524 451921494 744325193 555647796 839688378 846470614 181835809 901951761 834440144 315763439 779346172 102522662 936983701 168872327 180154872 50979984 617238551 565083249 610325394 703844054 690386313 99990080 102597057 130430619 844371072 418804339 292071297 975178259 54105159 889030087 198336991 663047833 267884562 757799707 112779250 605115842 398169757 378319333 94511868 680723879 79889832 61720691 703883487 158934112 636790181 481932686 227667045 142824839 762879638 97800228 313187962 489826724 725207793 266031884 334168204 975802254 863788243 23008362 895548673 751544984 862072132 976766388 539359279 198737709 869794388 82575520 858246464 465615862 624047372 971156718 265783495 464326200 884925535 475308386 456607729 657237086 642312491 826488744 953725456 460709641 381589013 79871446 270259194 476383981 704955517 171638513 524805178 165401830 573120001 607625608 755647640 38325321 842156878 670948387 743286500 587061273 729440963 790393520 399940760 573644135 868395969 450762646 696202063 838612265 983474324 678550152 521139610 274628202 226908043 405589573 76321157 426190748 652564968 506050228 208798338 600911075 877142190 641850599 763055463 989274878 916313709 330300073 627636784 827314666 956054392 2912179 765435753 345630138 901375047 395103626 574598702 420864017 33171504 838216654 743336522 55792020 574262658 29567316 725364462 199716411 485372581 634721972 734437092 524814098 634338803 325494720 490153468 411732803 410564543 108308530 509130723 557121940 434379067 335618850 909537019 871986962 971969884 623544315 596993576 421979344 346151249 514794490 715580601 195277773 887310686 304387808 660602255 965892536 524119253 941358 467980188 653580894 402285419 896044969 919857087 665399003 731229947 616998418 504681575 880294138 762735670 204056883 192493130 504067846 692504146 238313823 343677363 366732957 809733840 184218960 553036418 275443517 993826085 697081014 760604535 238648325 209221695 356940554 624122677 605138950 504617002 153508204 991103189 775080210 921350171 808300684 187765056 666929573 49485784 534578259 185184205 891172664 517780373 993570985 274644227 751365911 318742498 124264386 288938241 230742778 26763952 224676921 609300885 814410319 353298065 113879552 816615340 610600533 535189556 467303431 650078285 313871379 366976652 946977828 756861162 424341867 898935109 966796495 899081089 581564432 431286702 728862335 625323977 966142233 729403801 389362943 966076720 713774199 12140929 876723410 169662710 797888953 516867719 174477266 891589499 508082302 423400569 905636494 538900515 396170931 521414354 485312075 266071165 624831293 23340816 259630134 849947226 23842737 823183782 900640015 166362781 290947803 55282306 290347760 29727581 915158494 472415187 588563186 177301113 827505795 825319868 908779517 757935317 276789450 560078131 108782504 911874780 677311728 841129646 920051424 307110833 401242085 473280087 652341591 33555003 888435853 202584302 85318947 922089165 307450474 446430352 539839536 335463608 121832090 811522497 66629701 732513239 652861013 608983133 289935401 478937890 520232141 668295103 989166779 125692821 375537916 82837587 878158285 588651122 980332210 994391108 233608198 832517861 981585072 82535613 17720116 534013946 367889172 815425276 198097254 587169128 142900976 594632635 928721379 196885621 762914350 42614931 823054205 912086869 193636530 34639712 552295319 271554067 420013537 618606280 297765183 932305068 842072688 406252609 965298339 774261050 185559217 305097447 349021678 874360591 918225567 745655751 483248070 748189907 764730114 475283364 855926906 862482195 8234439 51451215 120144022 818396775 378379030 542085562 401203141 672698695 452199922 109777906 242546866 407197576 255472468 35706952 741831302 625770569 412617914 677715466 617919272 808057863 264413545 124406291 393674987 445053337 600798790 844936871 906161262 357192152 925672684 247672477 359729741 37978747 348656477 748173748 19993471 85420862 214762426 83474181 563898694 165909058 872360079 480733223 769687481 477410408 210532353 457838617 115441338 719347977 885311130 194761799 997055439 551211884 682509316 878021052 262387302 393436194 247379139 614895251 338356295 952466707 620374088 381026364 328704367 526785089 514301324 333988505 177617298 86796461 241389824 186034641 722061875 918273467 702171492 486610945 721128214 327422797 892180923 715023671 877563385 413318603 734910788 64594883 64222214 800688806 509339749 92949259 915252917 616624753 268497199 859032615 390713109 415380973 304573229 362830770 509146687 94293490 435465113 989148706 114752476 89941580 552855699 435413168 333317018 789109322 171220768 691154341 334282032 801271267 450249425 939446909 292649012 722224587 612746128 909048715 511878940 452172897 178498332 43861239 757801880 417895817 29353879 305906618 411676139 982679289 787463572 321020220 161113282 631419540 553820984 452089290 277736573 97020918 573754888 520659014 926163656 57190586 448476777 294134501 925629850 888218421 784095268 650337268 422303927 646318994 954998401 134850025 304034802 432356219 274999289 771820525 973397298 94146147 75737641 27006112 347746524 490200758 958544967 542322756 168651936 752759540 684930582 57869676 396229151 530965983 304772975 404540652 109158251 31687251 78297109 36662910 437134616 355071757 286738247 371560603 359624822 520254695 70500052 872487837 215460375 182604174 834077555 771242758 367240202 994690081 756734066 860321836 579081834 512329940 787421386 431504593 8439387 214366195 461474779 918222150 270430347 513113703 145603276 407355623 420203359 444501417 914703709 996827886 566970918 262745658 606514373 790863579 76563731 478056971 836425934 682100653 433422819 827878037 123958989 862070817 324603009 360446960 988048031 614651034 873951588 432312842 216283061 583113270 448726163 974203153 923726797 385952572 389813605 575898173 774571583 477875439 905870540 800564146 130363661 753405026 143254816 49815267 720148545 348407721 964537944 217511876 524306779 828962884 252874080 73088965 257542604 807488613 778263718 390865963 473008017 701143927 343382009 72009351 888585819 150631315 987559923 655266410 584230974 376301155 660265092 834002490 440652309 173010965 808883482 648398588 355442142 354563295 981081874 966958388 670224911 271639476 492762165 73506237 24209525 488476748 567974636 819041630 115031864 401778661 944216956 124786028 772175241 603453928 984833179 957109069 595509961 409731972 172180023 801581240 437589785 720585239 228535678 832199845 727308685 6793351 251677720 363759642 323290602 287209474 554297656 321062287 545981113 85357455 276410903 336091223 360411110 215776402 38118252 51581271 797159021 125222667 219829360 100291088 838606701 376077374 359581922 721742898 215791719 684243507 998407941 964126702 382253194 121094199 646700533 725173373 149576642 986584168 945507312 822361689 901611205 415520109 798879603 51687038 398656358 347951758 134238352 504479348 711216500 392601868 632577597 935257118 23382817 759943199 611458141 170811004 835483288 434901130 462478457 586417199 230414999 10662862 229927848 150167375 494138218 68720827 79578523 58041523 806929165 430347790 413097998 139213852 108879474 424860301 591018407 81950561 698575506 525912269 782226554 891525971 237182389 84039569 480582056 421961816 156159651 810856580 416349433 566085658 153615992 389066065 546450917 26176454 654178750 130877365 999472479 66177311 184008533 966271290 417978407 327226467 677859911 193752454 289281427 431647214 394557836 12429423 987464955 320603819 489395008 381385927 49316673 545117115 901128844 936628037 372542944 606458468 507041584 426535484 711271505 927430612 629729016 510322676 774511131 889525168 811737450 896501374 704735044 85653653 766120459 341378666 695036802 956921345 669588622 384641956 722081759 640422085 455122798 43862258 434377588 2675480 618458733 431095277 373934478 718878701 508134882 879629872 144277771 599251821 158176722 463900650 707613258 446105228 384620734 608938705 293104591 352123574 636326485 99592907 598999099 631330510 129176697 176156250 379540255 559231789 831821284 246044903 53630205 87852822 664206859 424069640 760143995 349530386 123973558 859238026 362336099 482046226 686589799 903636252 833530809 304012202 418099655 346203496 248827752 172139027 589821685 899838517 822889670 706938766 239480916 427791462 19255892 89225023 591175900 251603538 422998558 343826446 528722127 236330332 2981799 912342496 346017837 722103961 435346625 651944021 556763411 366318980 901845214 876659559 929358876 180216028 838888352 348211500 464336522 135852669 777793604 638918001 618034338 980275091 18006251 596348747 525332715 210648679 355897512 597341489 236029301 32943023 124346675 998250733 341319207 174971245 180226579 883584182 321936621 813027730 693249030 961803833 407265561 519174834 717499047 25631294 413993256 477187405 807147538 315981258 714142589 181383649 841125083 478083154 487314917 516918910 396417238 488319664 552536957 255559559 344915158 584267349 876476442 171948501 738516868 346643951 814880198 132658613 552682933 842154069 87098747 789805738 182921620 345730573 429974921 871127992 94909768 489671642 25301121 449012660 829519495 464988923 510452517 125424178 649093285 715039519 814042729 608746761 673806164 838722308 163653585 155545838 383657081 97777746 182336678 3705982 274139577 975117675 344297404 564232364 821126700 735660753 923637253 815363960 339708736 882396911 730431115 170975366 436116172 435716454 855032070 238234540 44753733 35262621 346344178 133316266 923799523 367978573 562463404 180296949 279972151 165538879 831450232 93745654 796536006 853466076 535788368 406476771 214614791 327235859 910946852 328424220 301122040 251575199 411833529 744782355 891201085 506023648 964858528 149282516 519412422 827434772 128414441 988447077 281273779 427702636 189410659 164104699 948625848 967973925 841737543 893800887 795365427 948734509 287363539 332648551 128849762 597910875 366354889 649275975 160672646 174578863 301125548 993117826 16923432 279225296 423180422 639324309 844566431 488892019 401671638 891594738 475983236 317971147 553826745 710458261 330354055 35532422 437835657 669926039 919143228 536268014 550665509 768397151 791048648 800408927 329448021 718759747 92880142 425996518 721289336 63493416 481699605 56385871 341625930 844597570 29926737 725669290 561550840 292559001 945645868 110283520 762823222 387671265 194776892 535722685 83524265 317253213 924804980 893190384 424051866 227451250 870492857 683444686 184371974 555424113 782919768 835717891 202135223 506049546 966347866 768215127 289879033 779761909 156590165 883864559 914467727 648390796 624763959 972859018 300349706 649162288 193629121 9497853 723054598 293419002 280860080 655334831 651829948 972826755 808438529 932445660 284777602 547979414 120020684 793958581 543982227 513632260 529920535 882286592 501535 123433512 743252920 467684392 828291336 699632152 648391596 757224870 91710765 944213642 626127186 90695024 869856739 548626472 703856196 262916770 503060938 146342061 174329628 856019780 758955245 377503685 985598825 25752276 560368653 407586345 190985784 651355203 950892172 375623144 350959636 22044914 672255015 182172840 356139382 832762801 494004593 592541976 893291181 823114233 103417598 366568629 44113352 881700910 388736583 986571939 702283586 747866599 753070351 515814585 707557761 786654763 759861879 671948000 913941177 996500934 972130965 510652311 642794395 401486141 297743707 976525322 903418268 592179611 651952817 181921076 924432633 922937670 517117325 35586978 347241915 601371391 472960153 69238658 772152441 336403782 894647704 709939076 461322768 431056820 106980693 467797866 856333782 572613997 47474734 110412946 887707542 679444249 460811379 98618606 309574746 233467782 660809018 369753783 121735752 733244212 920297736 170598099 74138292 793930514 302708634 652461728 876222836 671851865 378601519 297543867 71476994 747956891 598209423 492644349 346531721 520351984 854448635 910202579 273960209 659139456 492472833 667628661 887869455 298334560 384015379 299866000 390467603 670752402 172647453 750191502 550690723 380787342 895397881 708138606 911309578 188355429 960717073 684852274 386857361 648393038 716160081 867413387 749228707 416588955 112991394 314555893 730859652 931856944 261481153 940037306 4935340 533243052 246506082 25453170 93164710 816670304 784849192 307136732 650383941 37495671 498205930 727305525 251641779 953272307 520266146 915784229 7166690 373166789 642871238 671720109 342224352 362540256 432375167 369705643 783982528 645809673 330373228 301440128 488935287 471613205 201393955 977699247 591048519 44645808 829551729 230082548 639612028 106506250 287924085 764150129 136721558 425550685 318896334 458978563 737759335 865790506 601223888 60783613 330353845 442792786 498358646 312262450 806814206 610891073 952983391 651450700 129973682 549143488 670941518 530252005 667833073 602510375 146162598 129500748 200067321 42026550 52726173 546280730 279799396 264242929 468750430 942505391 813492002 774145624 73751331 455612506 369585067 643205644 916984393 577601431 857703191 351867761 940914021 442267031 56296797 189642626 750025242 800233851 691952284 531686838 871724907 792626357 675461877 749881177 507519168 997132688 859358121 103212191 611845442 220288662 466474646 900586545 347020326 392199515 886181914 94847275 653091915 101652897 752901133 377020400 151497880 700868977 439421541 525723153 467332884 563874459 405022267 606313296 738169699 993323454 983383864 757420667 226839279 728011886 650849242 560997030 656379491 761432088 703769450 435141073 663024071 695530113 356181456 394661165 928483095 15211472 172246918 574595418 408211916 944156774 565034985 596847158 513132781 613308593 88654155 378560669 43083019 692468949 15221646 166356526 263231711 556240312 986050536 507390833 662207019 342486655 500729160 389596672 179438370 76811486 839417544 838708053 160814247 772636352 682050189 422673509 456623586 563657823 713555194 746157636 75024729 819781394 845588091 185280214 198764007 299532235 116446456 964804327 861468605 26585456 315008418 254184720 986425094 334397091 323479440 373740703 822129433 315356293 917496378 573354798 831180690 508227989 486092224 37170290 584201129 168682749 856853933 424246487 711633959 381542585 108340595 545008642 698993681 872700259 841899475 824015212 896112738 479269003 617238130 581799676 681141238 500449190 296662191 906168626 899421067 745618448 914668217 725466557 246153440 275220506 88107688 397484167 618488257 747694185 340662924 794396109 464126328 357850943 933336326 584633538 593669134 575192672 592641977 786693651 901069142 63482079 657021724 160404141 492700594 974827932 146843518 481307625 510135739 881562193 750749296 688913747 537319213 392440244 624761301 731309740 242491672 767352730 929999147 560672150 353257405 181458639 684894206 254631709 787653743 327540184 627436471 689032434 659301476 523942416 766235614 674312559 399737353 49290067 845639444 427012281 51210136 856971057 970922035 700358325 96013470 812825780 775741265 900437731 245798046 362110575 569866855 150720740 767914314 399354823 476885321 578573596 913544715 482615224 438708463 482426901 226004773 392575132 745106356 382342615 861025492 902883000 577220156 965869433 975507448 93603653 686109749 691348812 332733358 843866942 253402315 429260623 388469958 717123101 958981849 960681362 545022080 231444008 999856415 910053478 362074850 527644005 470396508 978550116 311229156 285407490 899083694 464022430 670769433 930587158 589903795 626351537 208497752 822580369 467000703 319115663 796292145 925261441 589750943 767855067 85359165 942445603 484901719 757955413 644985179 264211033 183902190 638294661 586066886 29410554 524871815 31058054 475844176 119953908 737747504 43465030 663303164 195088412 582736509 642164420 275020545 8400534 121901865 146887371 461370434 763254112 463760916 702666228 695988704 884252749 407983047 449476025 583178229 953383266 400255243 624529785 407703847 541514187 522690895 3973459 225993371 48926105 198155140 329663608 942832777 866818120 735912339 508589617 45059903 751071844 603077656 343233764 768788037 334438832 22158998 734525234 15881218 880943343 179008010 333366617 167380040 410819331 438292360 489681035 559007141 471163298 836416028 717965427 621316214 565591527 216924349 93131400 756997470 715444392 438152406 84997139 536527065 652613751 181425417 835019411 954891051 417224283 204236655 58642727 736745399 487197507 704306183 268381443 796645411 912750757 897249264 324277635 718506476 399657418 261760751 687906178 643305321 364696441 870665449 955196097 794736152 402543678 869377108 499275940 716054147 378125815 413534245 802694938 508879143 626734769 840263598 371242573 480899960 937705537 40550273 180025690 78002940 166152928 420297510 13542360 322658640 657466689 460146108 705326696 451573781 662317089 323636025 245404250 407736441 335617441 34578585 881510657 198386937 16958979 183955093 700446946 443396779 924028999 614010763 286006962 314834135 770246412 370346401 798096510 711634900 165282802 752007203 327230680 75733809 508582746 440257142 167859318 816074317 122616289 180709889 109860789 336806001 300123745 423915902 725999375 48243552 276986350 698127923 615135992 326697381 739200396 52352056 204310233 507629548 470413302 948914509 572762530 231146646 125500574 88400720 125878756 529115710 800243712 822552978 991924546 572666284 126019900 308042685 431345863 601139046 313422278 604967281 906044947 549134957 926995236 450084541 41725267 641574331 640358418 495544945 941846321 194421634 699533071 327331708 180693827 609558598 988558662 348626905 602238784 722678257 669917855 656386460 209869236 348427963 360447119 428593585 712371360 380580340 177993083 227550684 414649037 839881065 971349990 741452770 247199312 35833127 23413999 411913228 612041610 429852980 493734904 195898855 82319205 82376588 135100430 949740930 598227367 323349098 578722041 821677243 222234422 929646917 285239033 125047899 176388558 229520336 401456961 185544535 641067518 449375962 154418701 181423262 306475850 17318232 34120425 570469090 403057388 937912503 160768272 22329167 481283832 516717713 831489443 423828361 245424209 158253609 734377655 934169727 956471479 321265751 428689602 526497212 817472072 309910329 821601736 252510625 326602008 44343844 330387523 934713303 722661074 435852999 846469105 772624818 140856244 28713159 701922432 538781184 519299911 14581641 746792090 345074448 886881714 863745024 924331182 643331620 415886075 344170560 532167551 197292342 823441524 407858642 676484108 48477 875903245 363434465 131002965 510016586 995255951 87359279 805185551 661902095 937483258 183468547 352521100 955686709 116937801 193221250 656850599 602564108 533530520 577251542 578470015 231626139 516912263 874591222 109420419 553057287 967906353 820986893 510932736 276614520 62900987 867460167 651978980 521646041 700224671 357088553 599846837 319808490 369141931 600528885 71813839 559226358 453308725 923454224 175076763 395764573 125453849 649520460 863513340 606294800 277631220 717252708 401777237 132413885 366389371 833081671 775112961 628944131 923634088 275367818 276426221 456200062 349192879 255943289 340971833 38935208 186367692 422651153 638543852 444588993 761863063 775779489 455332546 850206194 669267541 579902828 590998130 120365142 906079536 214662725 389120499 732432477 385848031 746765247 233529639 237729708 849938745 868263890 249063775 929996945 701039483 966288182 783969383 959866358 243106645 702795857 983953540 295815885 25120776 782153963 495314251 472014039 914273317 450689180 670668869 660294063 684858241 156425226 92851806 14903681 263809069 238264381 152495432 664747113 749717799 849281502 19815597 528568604 961192323 802146401 658860556 387970248 910747661 953207460 212239919 437023943 356633349 414368430 67796499 484584564 777147811 303515331 370467266 872565578 216380925 366833222 376100550 14933455 707394726 646706469 176919978 340973656 601124994 5366539 133863345 450422461 90100238 172368021 399053944 225536260 167415384 915351010 277414102 963759715 688013576 804761679 113071979 426849366 561127213 330879939 57750294 139310009 172236153 276260098 798321371 534481347 408826690 195715919 19771326 852614175 312908876 96884050 722245290 936233898 465976113 737897484 732001655 293216744 945724079 57013126 694401592 153591990 156899945 303858516 618918727 155811635 24089680 593557173 571864059 109190152 771587541 39065815 232761845 59247865 167926827 476476439 268543913 861070695 408847572 827841744 862628262 473812360 323508980 139484202 397597103 12691842 878758086 326843946 644259439 290943011 48763243 478461631 976224695 816965131 334174719 974161796 530743101 832167620 228553576 704341507 723842471 584552604 272899643 545685849 246901010 696545743 475360999 552384116 942050191 697139507 53094943 159990348 958401859 731558471 681692420 333866279 400345575 584329685 147736978 192060266 622623622 505335581 754549063 275729387 956123463 209621777 321563481 874646218 469261067 266940012 130955163 656308530 862719725 36627042 822009983 949903865 365427104 270854233 489498345 81576393 348927843 880470489 737939306 829980060 76481238 818829616 523823612 748313114 375589753 476997902 328290010 1941348 156784304 315185806 995978994 30319458 668948115 155977460 875409764 217502102 798229133 410629785 42412236 932963788 934884124 475558657 963135683 964246029 927703289 395651466 895925825 241102076 246369024 556155689 375379782 356958418 188152296 739968150 147767481 79189994 588394011 635472811 310932141 574669815 956550771 273005665 649183284 557465795 438242442 438830719 440267856 680126968 579410386 556388343 359109989 340802722 525117703 624622199 89837013 371441533 97304918 550719326 909836091 73950562 194082727 134784659 198671931 374053522 920032675 789758917 513855022 606590361 436891522 453605282 11577138 796384942 121041999 509572857 745931122 782434596 730887856 865315932 333921953 74676186 827936499 961708076 254400150 715301411 979606372 661204344 17572906 388505007 587024049 164850157 465673765 304847217 369414967 274303951 517661011 688214982 951315040 227749450 222300978 801136705 189083680 297508151 434029272 478226026 96439422 772600669 658825338 534928111 734319701 686280539 700556181 848759897 323524218 97609824 192339460 319955898 886718031 403820125 985942788 225387026 707876670 850786679 143164677 112414004 421853180 859587447 835445574 787100674 636816333 303028704 439607972 149630261 99810948 909838309 442528242 219535821 951748518 368869011 953745653 855988903 668565577 65096132 458537439 538069473 605309067 205531916 230840092 49947145 261969651 180889663 61844706 148995371 168179091 30801912 756941900 474842606 458219852 740990170 6345181 394923392 664412721 501587341 327912808 845588120 496252474 921162936 895346345 342165874 878293579 871161897 950459220 460582413 547878074 818318213 163340010 630066992 576695357 919908542 134507908 403748199 830271399 383172609 109089344 451885660 392307765 325107877 600654272 373348617 761445241 301510552 657272364 638286821 641028731 825198675 953812920 112083030 810607703 865328096 89823378 596608385 733666617 492553995 329769789 555029036 88552015 919085632 28408455 998202253 377348218 778987173 294533286 722633117 140900318 479295819 760798560 808578579 305341860 557655992 993231120 154742780 85169064 606904756 510847898 922349897 516105355 446942590 405987839 466660935 655866149 95964748 776473754 443080793 671613158 717093502 338829018 492731715 631625263 973942253 541738163 945744403 283209874 321306670 548548441 232043189 849991469 774460860 981475974 402283948 27147612 550036395 784163862 913398183 677062918 902563519 689999585 384275105 239098150 56492821 673303335 108686424 856522315 850323423 706623768 460014238 442294309 199485149 43867181 824507387 62773749 611137260 348487631 539570703 526223166 585440087 51528215 917693807 958014016 149017311 21634756 38991144 299057535 53199893 819998677 496445935 148821638 137033585 231467519 324658219 981555530 857402798 150230260 849830580 721613226 877341815 748893883 650162251 161774968 287135292 372548921 369499917 391996274 516076226 642246448 588313797 908702522 275306055 129876715 95855150 632173445 237865397 53379183 579337764 643185133 884687712 770701329 596174258 33313341 374276578 172199568 171012978 264018716 939242083 893149187 939837671 963407489 754099303 700396679 447352650 612424618 250753174 431825751 955826925 400056768 439955831 488352202 857824266 279665944 862210816 793233878 795704547 407711870 566245114 204888960 154186356 591984327 148538096 97790422 702490277 453654002 652820470 593904241 801189429 260283030 454290543 217167350 764010558 532867962 252952079 176012217 341388029 827005196 720354570 676498014 992545384 660471380 589362528 942853405 207406996 77206719 293504130 572681228 625406694 265304565 381983966 301780088 546788452 827016502 33454907 450649895 164574711 529927834 717630792 562819258 73046208 318096699 858175124 590814828 195998673 528341674 310811788 508454651 260077826 586748727 422781401 917849059 180898826 412909323 405672934 103888616 172444563 506953703 530611635 862936759 227729101 710230796 562807078 124681628 468272203 950871894 185771069 824156289 886648607 225575842 8291613 476819214 934717368 207745947 850983045 317272094 622336822 89523599 770596764 191117826 123493208 915621886 338089330 944912336 777258609 505934192 22071011 779475142 700054957 655415872 431574040 825977720 685479746 382142122 225262736 273730988 749848728 356249449 656753589 425888945 766333761 230009355 229532469 84160862 660320287 605467286 339527923 865244740 326102261 641925232 117519565 362107235 494669737 857189011 974982085 676578575 400385099 381696292 685937662 516691985 998922098 610323795 919537255 883131316 120542215 423825475 774990386 234974492 166982002 845432271 938730779 814720804 912142956 577321188 772949115 787808034 683452460 79247444 946061209 72002367 900997178 91765812 286834951 243088368 928528263 483327187 209046830 168026361 530192451 623082426 589564765 258693781 602534233 499046144 765220178 582403047 598587852 856735926 29349328 507945766 58630888 301545564 421874187 627055826 519656412 423715543 717085147 651855617 867526643 602882332 639340055 375010930 803127626 132689119 861842851 806819538 567636798 284641121 549885765 99985049 495551808 189332779 466854483 958947036 139487009 67270975 430777800 576294953 719695315 544483285 601415343 468899528 898879064 72909348 260528878 681049667 843194586 309994365 557895274 950080468 68340347 972143362 320317160 76783451 966939130 62153391 477483140 24178207 318306646 621771714 540644460 215630489 993143953 260618783 603591067 859340827 736864165 868423608 911278357 143136023 866248275 78759809 592831133 476840359 797213656 199218118 482785573 485260891 410373281 793286177 750903437 596452023 677857325 190175052 63311994 858289943 458435853 467241565 188141218 531063474 951677302 775977028 871780295 557369397 99275412 964682839 550811351 682389564 672354654 403069857 181840073 461452230 916722930 784682280 368775663 235115585 794996529 17922708 71071603 673698827 456091885 479784055 544251874 350083303 606517881 939167431 387161312 179446567 158462388 383742465 629112855 888428502 65878784 416362696 273479656 833158211 728094 696731077 965830280 290152604 41404488 98145276 736151964 290784297 566594571 869897128 950167179 174188480 491051567 337440068 881094398 797936852 310734879 436253090 863763911 552665181 590133541 766518523 61987304 377109903 955818440 991271633 739441963 823543587 734727943 833676607 206697789 169975538 619832165 52011386 459784982 987637705 946972940 265076181 929434909 837631864 994733913 5336198 62410834 962640054 114472119 512481736 331975962 994874543 552222856 34405303 481306185 144883359 919270660 930720231 80395585 652603456 261508089 318661366 174659983 613772943 743587373 279643672 842426857 235066726 425617285 249848824 556360232 894906463 69584867 372835157 730321815 664359433 770752647 214157905 141543946 485157145 72550690 410192746 489929696 368512956 152534826 134505257 311953489 982732292 451609561 363572866 24862539 151783330 247038135 363331617 382624038 585084584 837007401 338335151 17940853 940059064 401619457 723328773 398582709 290500715 717697463 496750711 279282937 180823621 500147004 529479897 598879443 417261654 313253927 251582216 983726441 411955864 254493063 757621087 451461910 332299553 783687115 89223222 701118828 349082721 408921831 44968133 161759220 572543434 220303032 217126262 398837673 177729400 600480692 1882290 201765048 6716913 297222497 718005647 583741569 386828084 18045693 703781148 349582162 608150847 965698153 342556746 95685005 570113640 451473319 233927181 696176590 659349492 146983557 174832686 191484318 61729923 395066074 453445976 407763231 52911472 925395717 5353670 235662333 377402492 755723106 621519121 9669903 114956336 142030718 493026221 633652636 674101057 109594499 686922268 362019878 340607471 64472965 399286124 41068810 272812296 128573906 468315747 773380276 624562605 288519408 380241057 129488470 598225963 639635022 228833819 484749422 793267408 960621142 474252531 941626147 619128905 429598333 699556873 972025163 617102839 341547665 887763445 816165097 632546150 99883663 417408822 923884252 968024135 932081858 54587320 584438798 70942706 843709572 4017766 29239703 106315666 464281150 607542112 298048290 193611513 106465827 155571389 777480285 829392901 521854244 772522874 166562688 333219596 687656367 949640845 180317474 567800119 860157923 777014741 291508707 931321262 870135630 470777257 182161215 210289508 367105025 126788912 80933320 732312265 699538964 653012162 836068471 352440578 654845144 249127557 462143323 408599892 668967604 713085246 504109133 503339037 128999589 969527848 894417974 416118625 797560703 95242593 916631615 97369646 587595789 341026398 514595620 991457286 577053632 482187094 624067330 31215726 528265936 583194980 613196250 560559851 617813829 316171533 307485030 973888720 60920308 248874922 896642689 827981354 13278717 955721885 698361573 745336476 326430191 747427898 220848331 693226103 880515571 251036128 301437743 604755262 868298995 484687874 569839207 308352545 521906947 440352215 584210484 338205699 447247748 623462781 88536438 404672773 922442202 91124661 595218453 893000513 457722857 725545448 852455110 848722663 676593820 186732262 209934907 158503474 867833393 160680172 586360406 357111853 361006495 571133562 410341 623211522 627895590 390265196 241520548 663528240 894970880 133591321 338446809 526092775 38745277 878377216 956170855 689264387 644630429 18065174 726787064 683455108 646496744 631512453 916832844 866592264 805885194 108709841 480819167 582912564 129639224 519361681 201860136 584602475 416432204 884394303 393098016 807655464 584348514 937726781 502789867 700811336 510910606 316072142 57248349 313937648 729099227 899337611 406642103 316257203 573531812 310912593 81888383 930840563 577826224 321610730 460314772 622719708 864915027 306852664 668499226 84135039 268968963 806543075 187528180 180060399 741410269 578560488 510022505 767451638 643875186 87884775 568932541 309684854 688535808 754740739 598686187 754575918 899489662 547667312 90045841 734079545 604559272 549312618 333167914 297765658 189076027 79448133 218659948 286748655 748425748 955012671 498548497 982788591 736159245 622509192 519926819 751352680 146291777 729940369 974547287 614657349 443594900 89371646 31565881 337218687 196787000 610698292 793615873 149403084 178623877 468387429 319305036 65770667 702173664 986189065 22681213 829854932 924972081 167026005 219816352 347970061 255156641 10709035 305758275 126869282 77761221 1414064 112037717 256016557 787725509 900139640 922834385 498645807 765666719 814816088 771959832 2030917 386519773 791337239 201973424 699367557 626935902 83438853 258967030 14145779 74213160 834897744 82097226 186721692 560738890 667695305 659289033 900382396 282103507 643917087 541253916 255294085 985419894 353946227 948196305 918080090 830473330 183182642 891873808 850889612 463616667 30059120 773672294 519996901 93122469 330303230 575803322 961292558 947258640 832079516 710027799 268338507 294077551 950462253 596246496 177997990 12855887 219554661 265236205 543796752 239465424 199741225 487565548 42087320 591843839 258404158 690270090 228884322 715025404 344731991 573038736 873375804 312028966 413649154 677260281 917303679 778477359 269819971 868814185 917933734 203505365 519659222 276124281 702913206 47890630 274244131 191313487 110310435 953164538 405862692 181055359 74278414 543159377 402436675 32627972 165754749 831018050 387619286 873029347 514443655 442145070 942076632 198865747 973235292 386734177 839033102 481186236 869192053 330271218 979327762 281319961 644906582 928462276 910745489 146334507 10360202 552506521 164421530 95598733 995369151 976092555 28314365 984821733 358126181 286650824 803831735 10921527 717455784 444906568 847817012 125799689 243194159 513823675 687030822 324101711 444333138 73411500 535620129 904701042 679173249 672029908 794110924 59098790 696422519 162811889 606309992 790519345 464212794 678615837 243448510 257083257 929015455 257777337 357012685 329841026 162109042 315917300 124509599 66578725 500059708 321578662 810321770 694269695 223736572 51880675 254965737 511267373 553660561 196305422 374456342 117307739 197852948 216527296 642449897 301232287 299533494 299189015 801794537 263744930 767111477 532713764 980423070 539234934 703853688 58381319 618787571 880121537 64229862 832494109 339898170 57519460 785821334 837827295 664453305 11107928 389587933 737836616 408088891 415080678 905159773 746796951 846574462 392211485 655023042 830572393 950411724 836175816 19625730 132483952 400727571 487974604 821727829 600359632 521432516 802610450 944120565 93914787 369846189 259894444 37371914 312047393 34834474 201767949 202034966 517133685 645112496 102874237 160923514 217438531 882387567 144474170 373551287 200135487 422130147 878765735 601453867 925743214 312546507 372694154 896656372 675386894 738991260 997327697 839570903 855640091 311789556 135297263 688051014 827540777 189440590 40968092 618205875 260642680 974929574 772118101 762436386 980275272 576006667 741740056 101325406 840750402 531010614 704927006 964287510 738980636 531311366 5136620 727780450 8948116 260904483 831156769 468675201 56713699 696962753 338965207 632822275 314494738 375985244 517218981 180461481 639470517 929232640 606926984 92862935 361568690 986942729 692529869 609301178 167637575 736000990 111254469 665314792 894161602 370770055 510710457 82550292 30513069 267373455 714446443 750553388 789346474 200583875 207005425 515180715 766173972 746205180 922926768 660824399 604609235 6936516 245836127 743734542 873332377 512653965 144024805 564325587 148981119 759076541 967439004 561994859 225916530 230943662 940610087 851408761 826829908 947897422 609691615 957322033 583496978 139875765 821961026 806034867 301095053 831503680 35873882 339721605 675786780 85315678 892673980 385821905 616004693 128304440 152853365 275168702 838867429 203147731 487711498 619221412 43408914 661421157 895296864 10986584 276762078 414666417 287573841 711182254 647562194 355300217 111049754 921754782 637485613 101603203 178832173 586221143 525300575 779249789 965176753 558553292 128902705 389021710 387750060 847716630 874809083 266239690 570631911 814554024 668359279 309044855 770996159 755030782 87703588 446675506 735117836 93788595 188577718 853076920 972388860 585068397 866082569 352547594 329390000 999655025 239541377 881887104 286293044 299260560 354498705 584712012 255884956 999103931 435557179 403792517 806216749 552193819 721451764 103280129 430185939 139994231 883186502 498550978 330505509 58403556 839462011 60128949 934447768 935875082 933738624 811716476 533335925 766904833 372410241 822093888 938397630 143386438 546856027 86876530 855494795 60672697 189176434 719267431 362945987 832494400 31435543 325326476 150880257 803952793 765194639 658769566 105327873 986772719 624854454 505405558 617995889 352832293 399916944 272530902 15185043 915929903 840338469 189624957 187537997 497187032 649577456 809837000 399134778 585633687 370519587 859967370 257596715 674139199 996097334 361298121 189391266 899895432 564023895 132516827 774487943 322020497 512374418 965073958 315498708 14249215 925820957 497007335 164699090 877443026 943822473 761411030 855290665 409392483 475237564 225742496 91516111 468856206 427739246 341641161 208654951 869808189 592033797 920610771 951660341 467301319 669898341 744629037 75567177 121978388 870378009 746396449 394757892 693101433 641497132 876415393 62108073 712038105 388793779 305753229 109081618 832317349 820604571 126965236 755541015 176293530 526665865 974711806 797855538 752503848 103247704 740105977 414410173 500820703 627274007 252633331 485894891 472487542 371539541 446595643 900543115 243479344 57687477 486011188 606228942 86564426 468298180 280394058 612655243 668817722 751902578 828038969 662598600 816581215 155266420 592013864 404445354 433026479 932427212 56707746 389601160 189011925 458522643 528932520 275606737 636276010 72700331 501495458 471429023 683950471 506301815 762733418 678128197 1159848 500699559 860304795 579303705 566487532 265763580 181024471 803527498 907315839 555547230 50329047 821114217 688595441 649683152 282450668 332876695 745598521 281392181 611906994 127922342 751963326 603927538 525908851 100625324 454079022 726260280 608005913 505047845 312314925 493490774 370242933 896897440 240778357 755213288 426765997 93363274 658389199 525279272 823996975 381036938 233024912 226991345 374423951 359356099 467138233 50374988 263628087 508134571 431167279 98223218 381752425 168789661 189748921 49024575 696566818 451306646 196404918 461267999 634571617 94209962 199772190 462685774 882276025 268834498 871298039 658718542 308718676 136316878 403768685 842965556 64661931 776561333 916662843 467105283 243238762 731451204 822946539 585149607 763867748 670266265 641155848 767008184 865377752 945300528 636538200 95370687 545492144 394400449 650985313 763218657 20479420 789418908 758294476 7120190 410749014 875562303 893858788 231345198 70401738 554374801 362662327 374675206 624554671 221348791 410140721 69530178 776054746 850737387 220270197 657539696 470494962 951426922 999868265 278058189 307128955 575828772 84822636 895813654 443587382 506838398 210208223 366281385 209720404 725774239 104668808 573945199 963540423 558240730 759363709 528934872 492025246 613890660 329992363 390197898 199508441 772167588 40638197 432462206 655840352 175165023 453186656 312178243 174678881 550857290 312734117 456265817 789819386 845484591 869667702 54221237 994426589 462508467 911537389 709536010 581523294 278721200 815899183 52074394 922928527 823729973 502609921 702679239 119424067 99438655 970256763 829207501 617821996 554105408 177742399 103382824 472432751 969520159 495039596 525774589 524965011 928965647 678220953 160090180 140732490 179297058 633339936 964617799 146672769 616060732 813790057 544347337 268708640 639251274 552619232 476854022 206385538 718261848 979816516 180620588 482778198 791488994 122907728 757196910 910380375 521683456 640976204 477829636 64040431 232804152 88395002 521472214 363185117 457198880 317553464 195185937 950513614 469604286 489740126 248262525 203689616 969771309 200924167 788242695 4728627 166913326 2772339 208910756 982074177 403721434 580648138 375217520 292424097 292905634 528294342 437343668 923199248 328406382 692962575 6049434 795660455 848982104 478500571 608046910 574422809 862693443 312025388 551168321 571055649 760402300 82902017 107148892 456890874 904013451 706815969 717958419 100288710 375481857 506892801 309354099 691098971 395370587 542608874 166013676 307636715 655856815 623907925 418087299 339166714 90997634 803535774 821957539 882932801 698249212 349668279 403898728 191997004 658353462 74378529 11721444 284229571 436087261 573680354 515446114 163703053 802365355 350268794 351091717 597683336 373518681 123168799 769076916 448618251 303996611 691565830 411996936 942061326 816388609 137638429 517884642 594758780 657340040 344524091 975979107 578872913 583074752 68672284 805073746 241418889 106960203 476793673 678484 934885183 891471209 143178143 937227825 220333100 321716959 782974460 958549350 413810579 441437421 804721561 832473058 966736542 334372004 542764894 311049805 644494740 654967744 639246644 810866742 900583914 857098808 272432862 888756359 553277038 709697961 966741877 106944497 810587525 760802065 993111579 187961763 547511568 420148291 189796644 920125111 325545712 680985827 905641789 890804467 81097182 782296851 341200665 716785304 191761443 944615673 437468367 451298687 244259936 541612805 821231926 356030146 692445797 259263523 848183772 682416149 159814296 904606114 250603708 218464001 902619773 634646867 698283513 6584633 59373371 92921172 963976169 172952675 593072394 208522444 876323261 609321357 436973149 95552155 171780597 851578331 783801937 148879244 676549618 927248119 385915889 111664692 653098416 928244479 830248971 215238884 103318592 803362733 490187601 123203323 491162073 398530038 134869802 417975944 334244578 204641371 903944702 285260365 336301978 701720670 882397204 669476298 749531665 757068878 401792111 199741732 480191967 593356847 160975445 521082684 207883215 412890380 21427997 408692785 37114245 751727835 510494402 318869371 483092593 451812869 835079506 835974004 622405977 86535402 532925114 966697868 633360946 141881098 82995093 175408431 723925726 89704565 526725365 992303899 55547084 491604570 511718068 326397059 507692649 597807048 233839867 49983076 923077005 270602481 997725049 41388079 97536655 822841786 919417348 959857161 435492986 449807192 601319042 577786997 218996045 917078216 800524277 408452356 563596787 515514033 356027847 823431077 100365961 707975516 331756664 661193516 585699856 783128034 586595844 70263655 347824050 468742844 407589374 262288516 605838525 173291503 653999260 169436346 810455086 819407065 670595767 843409651 322745155 529685640 801251658 182486589 736026903 838769769 943823404 962695658 78442919 976266259 685617753 933806003 580461452 654597362 567769525 456138062 482201513 640534587 22628475 981624716 602857144 630919210 95502249 411714646 453527130 822512078 77280244 601484246 678929305 309380548 516392071 852104700 812404640 288105035 99527671 153035429 569465059 925606094 797751946 533617903 629947165 219265451 891157679 434528941 797423382 229728665 243017564 737102007 665903671 706367384 967008048 659576542 462279104 591952201 456526521 878101791 316193363 39597101 198535175 488467345 802683319 710039515 159390453 460878090 280103313 271080068 153226232 491188671 215952874 390083154 683590959 294384745 112440712 493869030 949477022 170102687 396495390 944027068 371685650 760134548 237681760 76034730 762064851 290557780 462761208 377643929 235591265 823667489 573254798 551573344 414234431 336034687 403799310 807968167 172103277 108315143 922148896 150325546 501171416 800617925 937670671 115369 817017387 747356968 947681918 940576379 61666576 418339940 300043137 359648784 98689146 133425885 712045553 401085659 31723489 543886660 144224055 890439209 498923990 268740939 746172254 552790142 878204675 1658253 987396226 969965166 926698496 564730545 942696288 600714056 984780389 974824234 98236383 573699086 864184615 426044857 188048928 914670306 242736933 165576428 891806833 360228809 445035863 823408031 712328249 392982101 805506832 394722804 628917943 19774708 555063597 582483022 621723493 593451410 435563201 284309824 555095041 74826186 624875358 386837077 773622907 602593070 185623572 897190255 318951111 480626824 744347500 772452702 507131470 844464680 570620015 434179728 63509922 154936822 68417790 620942783 859826412 422191983 187725817 805836528 500163182 267412511 915689563 186091774 707062094 889476266 707023952 296533606 512647594 60413442 153123515 6593424 971402474 701077562 443519730 308988394 617498066 939620668 114617320 177883214 537435323 666330416 991410348 900790688 681201396 607960112 317891872 371610591 998173029 461843999 893076919 306315951 789788374 950201569 375600275 896009298 669345232 981199586 930444130 740688293 263752512 349936842 267870370 370294561 552950367 814468998 788860766 92351696 977194547 392215769 178329481 793784257 38173940 966832866 200217108 815539514 121862653 893984016 523810736 375833032 82699825 653709476 707339735 932018968 772089132 111488830 640053259 40959322 643829084 563157693 51296441 786923561 886099818 471002616 591698957 102936243 721309284 892243688 990295461 396649655 149431989 424513388 222279879 677231793 42192636 941875803 543334228 638808004 608039527 854779085 699054870 719242841 921184680 636610859 369679474 282424448 981943720 788033286 662182158 140213339 32331548 272175622 676806017 773896986 489693033 511385178 614620586 204474195 339870008 835694805 585886812 60203327 27010347 761418287 321158807 297798610 357672975 253441178 719544784 39236810 64331049 241052510 505197130 90701476 116051560 904598121 479564751 221859130 23364431 284669215 351789925 18556223 931948798 735735318 80689482 571451870 583875771 565773318 833955185 595227854 494737389 259419979 266924427 27474078 311419490 840415353 166894560 806224644 884803292 491113037 983122609 3981849 804382708 384985926 405096489 571457189 925490262 337723565 192566226 929860073 815316694 414264742 444371182 815289161 524151901 307600314 210075087 275136060 217434123 932483482 665566471 688449565 369538553 891192024 974070501 124484920 761757053 728596783 314595214 936755854 668261464 67179190 897884700 938131816 362518024 670586770 88137173 881320705 18664447 406262159 324874414 360546697 794644073 659594062 509441686 251941571 291395798 829954651 232037426 509029993 90482278 966099858 199648542 794394017 648500851 837100474 967720631 146044362 792983147 185928844 880603742 729434534 542857818 20325798 406859584 202576554 957540276 972429708 479566184 447476285 494518299 846130938 354855876 593978480 21468162 231784648 8940220 352596895 853020875 296871522 141061349 143101141 177942578 983761905 106990756 466285197 323067975 155472469 253919269 95880313 415110587 200770347 918314152 97009927 558945177 585713386 682836260 981562280 175316684 760056010 453618099 184042528 183495327 793570190 935613149 370457878 461325022 756282659 443271455 917438552 462035429 936825559 135553893 410484930 558106364 244951994 925535748 776432165 85418192 183829056 281589796 133605377 240281619 507037162 16677694 581128955 864503529 927698271 291449653 335464462 646057097 736481247 13421108 301291308 85331215 753652284 150978563 591517847 947716314 418889878 813829292 996699145 733228819 315957773 464434655 337893969 951154083 160943047 96200728 812862178 233241878 873082324 612635141 31735071 54364538 269287441 978530812 706385082 8850938 14919465 316682326 8347702 496757751 446399761 756403387 908794693 765581317 671298491 837473705 999130331 397731399 702301649 67914806 920221324 214946658 545319819 47306590 885977176 576560764 818137466 730510535 499336258 249796232 869510391 138483308 521080458 938359855 619009392 457210992 503834654 680648362 711776823 893169430 685194762 456039741 269577543 786093645 556125313 8176326 878603688 672537244 720888886 595908748 393992850 655863609 368297208 399192622 816295249 929456288 197887863 258353032 369504883 690635070 498329269 359927176 806585616 104162064 726606481 306329559 140309009 33420952 335283382 963842065 497607084 383974547 41427212 772703771 9759680 510549828 679046057 367466194 163710262 615038503 225089969 209760874 54673973 940486411 505261635 137491584 223531228 59894594 497997403 309233052 497705307 613286841 677884607 216597013 472974159 133715719 18511192 358708453 655244984 727870414 175308635 19647397 973660097 931527396 697578538 453090646 972559973 862506945 998980182 816062734 450564562 403791938 494551310 50643028 903554631 90931927 772478641 983182645 63062171 952610856 612133931 163140005 735260291 509193919 436531747 463301077 17736968 15070477 37581183 494083695 778396041 695123627 991671789 831942576 115761339 402396220 861587789 883225472 427310680 162470653 365752205 1788837 272843608 363024128 705273906 807109934 783079841 954790843 990677160 111253441 993248203 227539992 582632115 948248641 972728019 613896968 337211239 111356569 530559967 733519371 755679697 308017231 220066085 359155977 239461156 290765614 601033995 451161099 256275414 816394467 555210404 381728153 353350472 234849364 595054496 326565035 655924624 835203800 430407050 187471646 784192275 105039000 374745719 273202602 778819839 675964762 226067715 998176322 216953746 935743391 293713920 517765850 967843740 101063130 691436552 225912460 283348245 24446385 410017650 558560699 328262816 878103933 27915234 109069337 516510339 899657806 536093453 322298338 715943136 641260271 701173121 980085979 391048790 126178016 75354850 50033902 77098457 983640888 347680950 77482162 43639602 394331740 844757484 415367049 348001205 496068678 958171889 420161168 365514954 637888295 676725042 494818010 935982188 425060711 588643540 342460529 40259113 233173056 37185686 101653652 930671400 293719748 915220397 984713541 269643435 619876189 837461745 629804467 665058356 616699901 41368982 351826849 425198793 750934203 87763983 524721593 900238969 574974033 494900637 888531069 968604223 270894051 575979364 55877670 674395666 556008919 790431805 535809461 394746325 105049875 922985545 375250273 500020727 956683415 78517356 726774735 813529076 925113966 376357539 101647015 98482089 576155028 783418299 768982161 814053613 600204308 218746582 554308387 176876592 278286455 811803473 140896890 669770926 690774687 537658249 909528165 241884222 486868441 479453008 270394486 648106464 927385522 495495739 7153519 920274912 305067269 934860920 601589748 82592155 26191233 241158581 358425205 469591099 37541704 478476546 534566054 611248802 781333887 48933556 367793566 738763835 217641531 671033242 182120800 131760107 352737052 634040415 374761370 583203340 252111506 846664588 750921481 6538283 366185912 394295913 277655342 839359808 525342946 260372166 322888746 871116341 972611475 623710996 597242120 841568617 572294101 113781257 803777151 562657897 13216798 8723696 422165385 420109862 353890081 212742246 336792947 775204180 355752395 320652201 44977731 646796414 49352930 525511912 308343582 393507364 436883427 437862931 32596318 365616697 229198284 720756813 268149125 374485263 33297904 526727779 589668224 944346895 276418840 404113471 958257538 45074002 599367695 53618380 460621010 413898476 800999578 134570484 102660672 803191811 231392751 106329858 615830075 823603540 72453388 143072762 738002015 962397990 395008735 763645040 696805372 654129894 252122023 763769764 57118053 774363590 793631850 603014076 566434936 779079569 69397801 631061813 808394891 839919231 654368394 538686146 186684422 330375203 56413816 876118559 971068307 103465625 811445119 906222593 487727195 570728698 630076020 456325414 187445400 873557837 479490739 296268268 290775544 910334309 236086561 188647047 913792018 782766366 942401875 830486892 836576636 790905399 967457240 30839316 471040136 598430088 620439989 859125645 344363451 576230562 107297645 308042225 569498072 52958524 76126998 24819115 672272368 781613393 836832206 460966638 147933434 152728633 814117123 369354149 31883679 182884471 952878219 500116174 548873366 588880239 947735782 945697034 937046950 430406997 837846564 25337648 390741587 31045130 894332238 186162627 168317815 290475921 108734859 643836804 231410520 709766102 989484315 280087323 986186939 312445749 611234716 94638046 108313874 858778226 545290959 589761349 167758388 416020137 202757274 932797222 885799830 787130591 644452380 954632558 323674918 234998171 726744625 959339639 82068012 857518285 440328478 639506288 673761764 680843345 436772728 422327863 757646345 359566601 482181972 721663778 601279769 579307655 209062736 937762410 142686186 725750164 917503153 683014121 31710744 496626606 285042724 718198366 341765494 493723087 33447795 650298233 607191683 395896058 236242832 882111569 245781495 730232334 757505455 756068248 236265112 313987633 818595569 20694298 656277954 383931978 95462418 820777724 409114369 509415205 336294114 263455337 167658052 547165474 306182774 299524173 291781174 744067471 365416135 924042748 580450322 308611930 590824886 259395533 267245590 337634336 428427110 666989197 102880696 692540076 830551909 221073334 201443729 683954581 136940397 626141398 251013988 447144124 159022928 668592436 736143459 682472012 607491845 783703642 569651105 633956246 938321819 792292417 542976949 775536476 747060413 370196411 158609388 689862278 935500470 849728320 386265857 519342940 866207954 404096943 917649652 849982550 286195645 767572768 599806460 115882853 341538178 951681172 241672431 921333187 965332703 926549697 294907115 551044983 998772671 906709800 770040629 815758685 352136419 264579990 981971973 415717092 197918117 184849852 490110290 153490971 984494176 720646816 270214866 746875901 529694601 746546192 828185554 859548181 622794800 168874049 534707427 739246044 573573641 640746202 826633765 540793091 537279834 739366486 346710109 604543194 430282835 186190427 68704542 61825814 675322417 547856031 949914455 353811500 81478797 486382138 948867553 644277772 173186649 41911484 237552767 912018629 538212228 775412540 764692130 446475413 282478193 988253227 498475161 89768473 466805089 330627174 112492181 894592524 407087063 211538687 179571667 31460054 756407026 916059828 340760182 173244454 824608377 674099175 431097515 685197768 772518696 828809772 507084020 895833425 549968177 525256755 890899721 605622064 773040033 965474614 405696093 559536148 20148449 928620935 671871646 799942953 563546320 588537468 188534432 350044031 743645942 475720461 247560829 995231828 548862067 433452141 865247811 902524654 810003631 125290722 118621335 696329425 123467984 462554217 336500681 882899291 71955344 383685163 128453989 136571368 292839377 672031527 149487279 109734597 393592582 354081971 655171609 639163185 307309860 215617449 98879169 732558298 214589740 162110190 411532539 94779805 672822543 344542559 154406042 847913415 413172905 296584745 745420696 416392730 107970957 541878703 54349126 473060264 677726691 276301910 721674459 442038459 458383321 541108812 598853635 189727646 618956316 847223275 846384960 591059584 548944248 434151301 964691723 863595607 89949578 420947211 55767227 213187650 968109153 408196160 249436481 296200416 354572501 70377179 682353181 931090004 967980524 530900290 182656093 770015842 618945294 26987469 130958804 859688581 439393345 132008419 86760105 596334336 818314022 413745030 852577933 718748398 354493343 743836047 756456830 198411056 583689386 235016069 677100872 936390142 885240612 181253746 241879734 899337003 833153795 17700201 704033734 374455374 391915002 156599646 355435238 681284988 919223879 844648969 258535484 178491601 387736461 405902750 345904269 543064830 25868401 273398893 119861408 952153356 324675725 840109262 714109291 900735066 592273318 604266279 35412105 375191742 697639759 798591535 68636455 683263691 349500115 21935201 575050329 225497553 136141769 122275225 250546460 917728922 604975001 308978574 168909043 928303357 181176208 950185151 133611335 909949384 338269033 183855175 930199319 395559396 660374743 174648020 876165751 319092068 574788330 548564421 258248088 508075809 677859520 56263220 369685936 296089170 398576881 939455807 545326207 287264122 698845297 328337482 440596340 346497931 576145184 378186703 126061240 574932256 910379156 651900402 921451722 659808825 14438596 344013182 519843028 823021610 470492451 769307171 218788363 96122658 800410172 841072525 933645722 99741293 307491545 125099034 16709953 742980011 904797926 728419900 984653737 212791646 472355307 969501315 478137753 644735964 400105065 193893115 84485982 928558722 713753696 119257049 821496520 864459653 795874208 14277696 969966075 723970980 567016935 453082165 533906076 258001443 737884693 896747506 773839884 129039173 392605623 419385883 728821785 689906721 206550790 476258212 881665734 416624379 823666662 819868569 42117970 90167771 536537525 654710449 846335832 926602387 657496941 751885098 664900168 447484829 152171749 664107797 630659171 584883543 72909171 40645893 234117850 929225135 168359546 174816226 697289045 773525769 721498793 792461367 115506933 246214415 120099502 943558027 785543855 332495038 170951362 593863437 154162483 352375918 213299688 802674092 763010403 989400616 132577427 265303766 541588312 664383895 780201859 738445238 971780793 878099894 411648111 774580639 632762167 441948267 564949098 450489569 591238558 746784480 669150570 297569482 869055367 710191415 930612867 914804233 958449044 494198105 72105736 906397899 488959440 860350565 560589180 492702777 379082436 743696820 232836666 242431047 908015668 969385509 270063118 216589626 6772591 954681199 36956957 39191320 54495931 714733156 641221400 468837845 252036266 868232971 833349034 281958156 332249944 285681760 840865749 793030608 562952219 461870051 752094814 793097268 698410235 233251321 524414338 29052358 547042365 775081247 511039765 19395814 211560537 983475106 712729027 499976481 447464567 956690417 939183840 9944897 738106573 770892121 844944808 342707935 99980971 396866595 859775478 279924705 341310908 8039241 523607375 910239689 192278489 678091872 602055667 536941449 971918351 167138456 244735405 81476232 580093897 120024511 33517400 331276355 957428395 854970400 474886922 860220032 55545251 620939516 400151056 74852078 581515900 200901186 742610237 763162887 55951687 862447105 700239506 290537349 317207715 851164590 956214400 681806247 50890434 343721227 757013221 985477966 651379868 330764469 97437649 222746512 121236784 482192888 557318826 448014390 72488160 773203896 235167058 461492852 238898133 166803971 793791731 229331263 892255026 284705860 242085265 982057191 617218620 289276002 371122065 2773197 105213210 285647039 4751516 411991817 305305158 849097164 742938020 107777223 914079406 224253252 719100612 307824669 109135677 134979913 624794059 938429150 412211867 732555728 613639701 694403924 184731910 473296682 407850417 137228513 806288486 237553819 107955302 13197080 649019728 164780791 768660103 62881852 951355549 874555307 212085423 123508900 204176683 73071744 360230787 903666109 757676937 380268089 9664239 35047801 671814356 572630785 750405537 887820832 285592933 112309320 139004962 406061877 524436130 12003242 372867128 296674418 75243060 664071683 274527358 202857257 878152984 304653126 574024174 858253371 628125011 620322848 125382161 84066914 799437214 688321072 732073206 780380753 534698752 257537258 217808677 712238313 33123905 183040325 759272434 885075516 381084090 660797557 361735544 891481329 307154188 10728260 530774405 641455694 228205517 858565781 512484169 646512450 533174580 753001155 635517381 876944043 530296138 866108532 753066715 762179473 3541453 438433543 747681461 354236858 50697137 582716480 822282577 522010352 839851392 948890106 368429468 407989430 963326798 634271465 635743757 637048964 282428984 983139383 93385666 380512738 103252431 875395079 771779360 232331999 493954094 458934288 921664096 387197576 829773254 176490663 650226288 717166449 643874970 654989959 665151904 142687218 226731880 491202810 139915210 353434598 360984900 48759264 230487391 492496673 472916576 169074325 301720729 689191938 175282531 385043450 604631689 750941723 234248054 969969397 458580281 850614108 860451959 34229143 916226199 630605737 177214583 444368836 228183071 729910121 479083812 316884514 192188325 116515736 605796805 634311207 119045470 249810268 922529044 424024471 608789325 434814687 793272609 697908285 465118966 279034628 846261695 735807094 559031082 971383312 477276351 303394925 355198056 653000378 528778896 754716903 111148945 375644651 916934669 758280235 16247556 78439011 240550297 87923126 585388660 461006294 171060793 980082066 14010447 833065712 759373656 891620063 782294068 869500558 86794296 110909075 568818399 973760111 672740086 120895895 627495648 185158630 565394357 330181949 153439279 179741409 10693073 561367582 553581970 371831466 946413713 871164655 466572450 81785057 478149009 750027894 100310154 903256829 924147582 462082957 640850570 368525323 799092049 429740398 950428818 640329714 599871173 139322796 140820406 229343102 746155171 952429933 487388207 299646142 455369082 923473776 355295308 304033393 650366331 940307145 327854744 245738265 932252569 232867666 878706879 59181880 679544277 406845123 474670735 562293629 797992541 538506670 364179544 372092078 955950129 261934342 185165231 959335950 192345341 940475147 687234657 908620621 897874603 796162424 232020544 387540183 537899264 727438736 111981409 685585779 994424304 505059259 494483733 318236142 933660949 550354444 454612783 999177319 449745480 864265712 282672210 736447229 21742099 731495218 439737685 550267493 561254128 519906375 550681371 589418350 159319768 293105835 390750203 195974481 542069349 649894529 444996911 999060182 557544436 568325372 571640375 361064881 940701247 194327925 223157903 376646784 972825044 173646283 750460098 777147349 149261960 35929650 206287472 237725612 120795349 587064117 816169676 328313043 605516504 248535984 494583231 104204485 724618846 302849264 961133222 776597552 510889215 69125114 880681165 846514193 157578429 127284928 949128487 487031837 898459098 536548564 359153018 504691381 708736597 617742209 67069820 855566763 133347147 552488293 222428953 159471930 838199684 273352422 475241623 461406576 733016034 87238741 643917741 510206117 381539619 793859537 224254769 111295042 354157942 675312520 795034845 54891800 14795557 372046215 747033816 63543031 498942966 465442013 666672615 763030708 584792220 473051751 680359008 655185703 386377584 521128053 784448330 864911377 897869122 23271077 549912726 15391117 377221013 548309696 305702050 291561250 554241360 286453387 269753765 50583857 683645045 77836949 84881532 643416500 161565707 537008608 129269888 471914469 504763 312305904 681807628 407192020 861070027 415810492 895242661 773910737 183256034 592902127 348168301 375316173 119613526 792728324 336375784 141425238 186005243 514142326 363771918 343782722 74469555 74292994 217052091 432804990 751317007 866241633 986396272 802004735 581717243 780770116 105992358 482113815 618082492 488355594 51943294 209366729 978875757 900554366 755709436 807410328 680569797 908347244 923630902 139457321 436389139 637386448 458183639 945871204 706004622 27632708 89406949 827929485 743586854 116924015 363159859 846841957 299501473 482761372 225701588 730154008 634074467 476197699 344839745 740159928 360484409 71242864 96919398 958890887 4277565 363603334 224351193 102242582 155586465 476066089 752194100 824753156 14948295 136586357 783526228 575540205 2713978 471061315 89954932 165753373 833071258 673121718 979053540 890622472 759462757 478238640 190275804 314430361 152918453 682158618 760404224 265943554 326769201 152565667 476156754 153413220 580867813 595269409 573292068 480687830 840942430 873556788 676971573 172038625 711000232 805602752 776468923 44396772 65243824 358155217 422531822 726996573 297443353 429465230 294832944 835495001 76151132 629332261 796699271 819442328 430809540 213558306 638876696 255856690 400684189 844869300 794794878 975467054 181137248 633841312 716009209 663007424 813945539 106947733 490760430 427361994 273346178 669964618 708757174 607206946 112300537 390075086 41698409 216726152 215326505 456652166 506095992 277642893 920005993 706161870 804430538 942292750 221543032 723742607 990800749 565059395 453034769 442634143 53521588 280508542 612557652 827300240 313685722 62482061 161679111 462561490 240926426 962388777 912340125 837971586 722399903 326424504 125880928 752963880 583654743 668274738 997238500 3691381 51547612 614032721 262553031 29932467 835401255 518800315 161700906 739476643 699105912 52941670 218913681 66371846 868094718 546539144 745867869 931653765 154409429 145396383 11057675 865568345 362744100 840635630 701773681 753515286 506441925 535224497 946230080 446357351 333349217 704925195 146000456 194901979 893151421 157231237 956355342 634678039 798555015 888684795 313511192 267585888 551477716 996334569 768068295 682033135 260707720 332636794 358052038 208635401 998934293 806115571 494398547 736614485 314759456 140373983 378053075 723372575 479175934 686553828 173640915 385671998 595932576 682884956 214658240 106405185 825584928 917019782 909965374 321268223 24066007 891718722 543729186 834650083 278101900 804054368 752344211 99018822 623797370 658544796 437338617 463851785 355100030 307630539 781193640 930661024 832806376 407576932 503007220 206507817 590947943 76417284 134631524 850240504 535614572 812187284 437763816 384363819 900240279 909023714 809409141 438280523 803447041 864374496 611134753 695096521 177210619 283388173 656477356 730146884 468911865 893608808 989745831 900860412 266748726 519430484 612146102 364356748 538649599 557690720 737295763 971672299 864300647 980609134 187995339 507388525 983906868 544261550 823152645 101562460 121527438 63466044 936340533 707998081 534331100 924882842 936697031 706493840 533412801 994659780 893615869 953093775 128140366 994020535 828516889 593074393 777763449 231255136 313099002 496342686 766853368 886979015 252816487 639794339 626222534 71040541 566239804 33687630 242556327 91734084 338961471 996571431 151447573 832605125 184922162 940141480 194959034 227812440 633568871 279061689 265921080 238349057 73291606 763910388 626438951 955808553 264923594 657822843 532454947 60182779 38822602 903747106 238442127 957690423 402821229 153938969 297650608 848927444 166550561 51744742 556911546 972815042 156781253 299914334 333295779 871634192 266482748 818858717 551019464 397987079 397594002 688147313 967003711 305048520 723217693 61851575 282833862 49861136 223213248 195489453 560587377 96261291 10314987 178127468 500386818 388867763 211502388 345428168 138736331 699380074 709628110 690756929 545482003 327318176 846745523 872027860 891352853 236477287 409348607 525859098 231241870 159178146 9384341 797150831 627823534 442302731 262813180 782237087 714653491 973739473 491279530 450158367 128764218 951969440 482346569 639553937 181194317 84309716 254760616 778334249 469407701 114666350 784291966 841794987 699491921 357798672 423238119 287330332 355719939 708031752 673876436 642244221 503823722 199242703 492912635 317016313 398695347 759309138 325298186 12023739 656746429 897141807 967073888 668439475 627885825 857717482 543162295 269105760 19614258 645751216 629609772 56533235 801703764 398358703 528696900 937665661 630825282 468544791 60048892 838769375 178403210 303306262 733263151 587719203 551747534 218891710 992576164 61558098 325484283 716851023 139449670 980490731 362436986 942699883 773370761 287410345 803029992 496306986 239226429 147731598 263829157 824694304 822129379 213578585 135522473 470556038 697283189 17736698 144250569 844535880 633848565 33561256 773993219 783653406 448721899 661291454 126369235 680486015 720912781 848061107 569801020 975526791 369186151 958973693 754483861 696421103 856406604 751620380 835838243 328634051 723886289 661790012 983433309 78065385 970967090 577948662 434919738 842204220 585392237 245987520 616179935 86571429 291355825 748589805 752353152 262120134 590304089 540219764 935601089 79424438 951362559 826702352 419350527 996318616 936819041 772532479 742818090 752454552 31166222 480219197 919778014 276495329 263826848 673335171 102550478 942522324 372419143 861995945 54341794 273870148 504127423 473060348 198183526 654301554 720865301 551382244 931975654 298003057 828467391 714140889 429668748 746872783 707645533 988105409 829797027 397810450 939684988 321033675 611263504 437553175 339259691 28803443 198301499 423833966 676377128 728305508 46582802 96044867 153008246 806767917 902902327 532485310 362886668 446210165 227714652 114184463 126755221 519123555 945564904 578002605 848038832 877828972 414937808 61527154 53068407 340218715 423053022 904127498 616965672 31661823 112142354 842854005 274114372 421513209 116764568 74494640 486252404 646571377 612899026 576664716 822333115 775327608 28603137 50388557 242033221 964851042 198997434 474224650 410740456 554024495 334674101 400019345 946588804 486329549 973042273 411070726 912840555 130317770 165573300 492394762 591474741 507516972 851213889 542636826 951498387 424101354 394429555 796641557 895081154 665625064 414260481 427407885 923536004 472386966 422862643 504949816 442599524 207621240 220520577 88190774 250743139 709740501 452546516 427838457 806779579 861428211 210875137 854581243 796807030 860144671 440226560 512118367 873420427 445842112 128897339 658960060 935897857 469173222 699481373 850638826 734960968 821025443 409196661 573118931 204629870 159757595 584373226 902687304 787757513 958775842 287242769 743887084 306658756 590112856 9466154 997284720 233781004 18064501 484572409 817671342 227249471 151544595 799640493 519227361 219716067 281517069 7686037 743146794 292682400 425007083 132605571 678000774 930253980 171862892 896547200 558813223 467980827 718695325 936514569 132668751 257792991 872534934 920773225 374378538 337595967 516982345 448939115 518183492 952067 82746314 508935188 774496473 897820977 532086035 42473435 904613172 122686572 585854474 205710077 37801500 958345750 954093062 8105997 745615427 117324390 37932645 230140690 848482194 649707971 947649817 740489788 514787590 830822944 617755192 387162701 830718310 943738519 720781468 98714733 501276356 142757369 107400390 383358569 303194396 110168182 123400594 539542477 998085608 948410670 323733256 613391752 775613684 384664298 665529025 992712586 945652904 965726067 646357229 772027194 711733360 176981878 460959355 233552248 312734653 276467838 244547496 972959278 671814629 244729778 692225357 27373932 284352114 601920153 986631531 111108879 255335483 502674007 497971673 431312504 345732614 928863179 278510130 902725611 72869249 77336015 656456887 624962403 941416788 45780393 280099033 582407458 493692318 431392247 3620482 618495369 70786199 39266226 106295650 189380545 153652662 956002043 16427080 695813295 490813689 452329977 421818836 840828326 308581351 604662456 373302458 76416131 976272199 355294767 340718148 414613198 74829756 156406678 5851908 680833543 181057252 720005155 41374794 997228298 620343581 270051747 924410420 322961124 600151706 871508299 173824072 816958314 598537972 129847242 268493568 752138738 73926655 355989422 248213262 751751662 920699464 287142249 412573166 851229664 136748326 470993495 247286632 886321267 967929432 201876130 599936616 503275595 796312924 112258294 656822011 939773404 122574409 614127399 515784474 340879514 254184545 394430894 840974124 577815872 389830170 910396698 650536792 441804808 437607751 652122135 183422718 203492236 648695856 792158810 493765113 226341246 959587115 395313632 603703390 950265278 841694398 613315007 751519303 817498184 324345123 579710462 982545221 615511081 280322624 845085337 476769244 566077177 948252119 619034083 63806395 144178988 977231918 452427235 432326608 517471321 528612357 810659183 688478278 493003018 307819277 554830381 832512965 354565593 164614791 684663165 39837377 849482181 196212456 977812254 650299203 934649407 966503722 181060176 704700217 583679575 359087046 55493899 670139232 526957635 647872356 803396450 86511338 384271861 733143001 13425098 516774779 715373779 919190702 317079037 263560240 805929509 197517506 361774842 3005127 393633284 474723265 522238727 695275823 799521741 221510263 39659918 582193598 267052042 821325178 742336798 440463239 228721453 644604876 279553635 701235622 100539741 296635929 523134997 520894460 439101367 903736219 107002334 290982485 247932873 846005143 843293371 768333822 331277441 801046743 34845166 967583147 946588719 61526233 186341066 279373330 433596355 385236930 706290129 875671812 505778755 612320976 668695562 157351910 426106562 476225108 118865845 663268934 474517487 897980040 788030646 384679597 830703133 360008250 552274148 254370593 798430470 851140013 892705137 132289995 479067937 399744242 807940758 556985128 334113829 669354969 555235071 49337699 784002858 811519540 669894299 704660258 432052706 853509349 927131473 34424107 456337176 330224308 87515276 55397055 140030488 831275413 135122115 98908732 289307789 994810487 92825094 887631937 285528409 823869882 499606534 53142886 776665015 706276333 121675423 71322315 933030671 73887936 898010736 122219662 59924487 629717749 906379619 820909610 580162332 25795193 809997958 838557928 739892414 141777030 163178999 140318183 519710441 687012321 265963953 803216698 453329500 870773309 546585767 253878874 833962855 437266924 525672471 9726590 175132999 372381814 947055296 78999776 98377740 685531814 392584994 49936528 303218031 164361557 677738144 798159892 753640010 958484712 65879867 11928091 771994843 653322323 15360269 168100186 835915284 814730612 561472330 422271686 890283392 282680691 742075781 825060951 86010866 304737038 551054309 735408709 371161504 482270707 994347714 687862771 14374847 471174634 355152620 462375685 162940060 661050750 572006944 472258770 69892047 624472829 323980754 93422182 449708402 365335587 434489491 602941739 72673379 174953279 895690418 623703805 573602994 938225806 488226405 677983131 80023002 831803311 992793719 231008338 202251246 264191435 365489928 71695042 655180840 4696314 470457197 986191245 669833897 640590899 667285001 320578826 717890945 265197691 869431921 98450976 486241513 480362593 896145834 51913283 848663267 507941328 689795207 299232556 455666341 795695007 355352606 637287354 937441652 414624541 388156352 280764628 491007949 109831640 560606305 928052923 660558663 512533006 298221711 938482247 835716671 813741447 547049962 257827019 916188033 785980288 786304826 715813424 2136779 173359486 8627406 596566782 792814782 942536393 526003923 182133400 14119187 705724868 642289782 406208266 749798325 860125968 212646869 239119532 559808209 955003061 762379229 37703639 742278073 604309940 355988658 966819996 554404162 243518477 149722077 562757506 911077140 556998185 359877564 762152037 161699219 27668856 862757913 231116466 548071640 298265726 452185461 32032920 347877517 455977255 447680004 359135513 276176157 583946748 330543182 248405961 907636914 13072818 772586008 478768384 91304525 829664267 223283193 361576752 516451135 27832872 365486549 458687713 22074050 507274164 555981813 803954081 176199607 393360487 897261757 994042406 845667471 883750284 643880175 995401798 59371100 282021717 412666694 533389923 177129025 719506597 885653179 666830433 560798509 815643699 470565748 371361589 686126610 466104788 389018888 675963354 881214238 320260330 580415954 598639217 255902817 835048335 689838390 551541999 55519133 817055244 304614587 552189891 69189477 693088027 990479075 255508031 111568556 590159120 954239103 196596339 132213130 130241130 303294064 221901849 640367838 472674456 807000577 755386180 54249829 698852196 470320490 382025987 873240094 226079951 219875393 635884622 397008032 312942626 363591333 746427315 171874887 967266267 326794746 427771713 361439675 856745455 96066094 240931984 452385805 566571446 751549212 855341227 952074614 835418988 753361365 991211803 724789398 860257960 459777237 912653247 57636150 403610130 678658903 615595326 363014787 822700589 568037527 291328407 640809482 538071556 949563068 875471246 343521948 31074808 875595558 972518732 893450155 171979672 836247843 616746924 660649425 795126128 272809587 954165859 792638284 766440387 966482553 378065502 751632295 761788115 482548757 950843459 964968296 973160062 447933933 328636942 485235673 466192367 187242804 575026567 63674212 193759812 555323004 132697993 871920674 387605863 92644775 545291992 342402604 340246888 960794208 786978106 216300122 311629301 243283340 739811825 742576025 628903757 341471017 376413592 668904783 171989929 757082245 897333672 733386270 534383059 378697083 631986661 562613289 247633962 378366304 793188141 928935037 668769478 273900129 107289485 901798191 996423482 407602224 658568919 39506688 89359818 130635028 432493362 248300626 464815644 29464332 858044412 289446258 834704114 463188573 173345148 91197723 142593597 502158664 868957195 314496189 603098511 486168378 188378663 512909565 859316414 272323614 201305245 614186078 201353977 766646187 162280353 339082405 27034958 354383545 208667697 662121146 660677859 974338031 844787765 514695462 75052574 332122808 643829621 548474883 545209917 212237906 913297909 444824519 978208755 238442401 436405296 516413848 621544411 105136252 571907631 319498004 69921521 464574379 580807406 207612509 599677382 884736863 446538426 823965469 214414751 29452001 228773245 42379411 245146222 450338616 156262675 42513050 683358094 101038028 414986520 997725705 402918043 639523476 995151309 759198774 295194222 495976898 406047742 927198804 55553003 756245441 561450645 639251306 323703727 663616006 266250524 319886952 688599567 863491785 348693896 415670200 228146483 839575614 158202769 597233127 29857484 467793375 159848200 487095605 360538881 482438381 320121818 325058988 431529483 178002902 667110134 982420282 798124228 898033378 952779399 876466336 265001966 937615840 790277458 273352110 800562259 595017141 718514114 871175423 814855352 930993092 462625217 850301009 680824835 824546624 579727342 386911907 463777664 946498649 173276867 723465165 892207994 366699001 295819895 8357447 251300699 802474080 507972313 60450065 788768426 791972626 592286760 84314617 619102476 93458302 297289810 52840347 835308904 162069291 653531076 990824013 838300039 671918324 147060726 14083568 384903872 657364728 649164613 380528627 769806869 152823186 596875360 55058933 328259528 167553174 304459977 979071116 524034929 995524993 39053131 193788518 832960195 769105458 824691036 798454212 965956342 573743344 952511687 112470902 715209366 380519168 186426903 950444060 993101909 78234969 426527404 334971497 586378049 503232602 602534469 30759329 124656618 621024329 666143207 517689883 72114740 657793201 292447954 434319931 985452473 939719595 465240197 478759695 636743197 441547544 85100475 651632474 178713438 818512725 549439691 792659053 82723425 223840956 662493460 834402160 66647963 353900473 149371574 446818852 673826111 641159218 158180246 793847279 640434900 710955677 495149891 857691060 203180376 885250971 590269096 927497320 308310297 762372625 392684517 38902126 787006599 243772444 329205530 126867941 307512957 907118539 712713702 416174049 933103442 382826410 593788338 158742435 748694785 232572292 295107974 641448613 127087409 316593327 877704070 106644063 752080016 370067661 306244658 834862270 506273487 721621950 119344103 755139660 798310243 290651876 624429781 208826399 202403304 100743206 758245275 98621014 471368345 242583778 259974858 551141080 861012077 753383389 27216373 238901753 249806081 315554293 481697256 875626133 574165980 906411317 708328692 932804426 290178783 141060409 325239570 288027603 655787028 306166908 189346155 90274306 251622602 560575706 463228552 876882145 59763279 899964136 167882634 486209266 579735148 652714212 399972985 527139298 432210665 605041201 821821925 968963427 243297337 485874050 46685278 636004560 367367334 678850537 417436293 265200226 930973833 433694298 829990055 320783494 140937128 166436589 261786103 464774557 170145428 425386626 787382415 630478553 201862956 688849135 446231478 521288855 879206207 731642831 776696645 827473757 705413166 548849160 593178450 728192357 435396570 301393321 830702268 88644077 809785109 33935343 5394398 240625747 329742852 250259210 523964634 703617878 555305340 721406902 526248218 562983365 734498487 878799334 890038961 215901315 675896290 182135729 801389924 717975771 691841129 537237415 313344706 520967554 524332320 577089483 164297856 145112967 222670391 579740913 317520673 611711543 998398288 506576071 211386520 357974019 286960422 613778461 944461074 521787072 824316416 224032193 596768334 983374837 916041342 623717252 977074576 226050891 25723499 521329052 919486115 505320290 475684038 582026259 352584575 549651352 125081690 382222955 596678807 456850371 428972448 161551433 359272533 4893914 971031411 430123797 407929152 1095669 598312323 651616543 397029115 833028500 547593496 615435023 665987775 246099525 690865576 136326300 145444202 30260947 899190311 79874758 475764251 339217193 328112654 831296106 818570804 581653970 588430770 635892344 700631814 405745010 609512497 171303123 196639633 47306730 554475834 321051546 908805166 593027539 169405745 732671081 348435225 334431391 759530658 699635575 92375062 324105571 763263961 962009700 861006367 948654754 117317411 313589622 358646744 984753327 349430888 789992535 58700982 901482200 186321507 588030671 837896779 937978578 767936769 962087939 947422944 665936938 776567799 754919206 79274504 455887504 658831105 52214340 555255523 219500074 184474429 179381294 404999494 450502030 611343536 803377129 928936420 195136573 833445468 494063269 877672839 822556439 703215109 416012052 461842011 364464306 792425481 618805752 976578529 114563677 501516187 776893887 244575723 820571999 518668176 473906702 156493627 528792652 187957090 203887867 611916359 384373231 556475837 80068000 24404355 758137871 448081028 627054790 84596563 715322367 531710567 274455979 956038604 26379690 103772265 795041463 143066463 662022230 201387787 371721471 512304533 267259907 579525137 767980805 4183857 696030215 305241415 293224553 706633810 439486723 678345254 535394962 75542616 774995959 900904696 189830305 931666933 897414934 375446326 979201822 400868941 577715607 101719918 583277918 835377845 667251441 388590989 340608500 332800850 457623725 16178623 599581596 923378563 410582039 248482401 410872316 229086825 483873678 704434994 218268405 152319929 556931998 76796320 476993508 605356929 461576555 357109690 936646277 152343550 586920935 1142470 593464890 302231109 380989229 622521060 563040917 743452988 986449435 807078272 611688807 821642349 752337416 772085273 356287068 114256349 576465485 976587401 126723444 364692076 92602628 186500360 743960899 328515378 665755778 334473221 34915187 987865807 793375161 99880887 708367019 472907830 892489170 932367198 408752768 149680495 668600185 38392175 967763508 519105942 105971845 667280968 263828570 205528124 1181517 447013978 866459682 993957511 157672745 619880755 790735043 123000736 52828762 996363619 539001986 604560572 283770399 805143764 489285624 150471493 885655336 597401107 621997157 423198517 558341663 843025053 17273523 533967040 319161948 421308452 778942295 473433100 799515366 946540451 789242538 874705428 31654199 130477096 55597782 382963196 495853512 268621546 473331434 558328243 472909523 357079295 942065744 989145210 192484868 686309030 754771381 160793449 244640893 527888231 333985983 783511263 296893275 14069255 324112210 609504187 181411999 742354261 253223301 193003465 150103539 530202285 673097697 118327894 80300517 810369859 443744654 702998518 520163962 435033303 402885261 359008499 652035351 80718726 420074330 159249230 59792719 997553575 639930002 457742190 585170925 943538678 141490793 844324192 571903044 400117486 461541462 113340233 498268309 112077913 768518242 263144906 571149239 810577366 970761170 502952168 111509153 453415871 348097232 315774369 504549337 906712818 427426487 793905404 344162065 158964895 991953103 901220054 276001520 536968556 662546359 841876454 363924306 227473462 781097394 633399508 511376845 619409794 497560115 38752293 574406686 525561418 107354410 556093232 600129490 126201969 63979730 856782321 245359429 734620652 767418842 805826923 401271705 675072040 382087806 345133148 796819333 67596063 743480290 335281933 872363781 58738407 131712052 933069796 700596821 105924747 639257746 852951242 504896539 433706273 870020573 91471882 195882025 845534212 813763901 830714545 584321773 542287281 929297732 561067095 291894518 63772399 265397744 488850371 993208771 949400266 60941873 254669696 782741348 460387473 950372165 942742113 818779484 963619835 794592087 404658657 999439102 610829927 342041069 681737284 444788320 876095130 757047009 463194142 964282446 361511406 933678793 17738658 45132670 346693825 915399999 118401368 427415823 832601586 684171655 912136122 127187804 540442 284648897 886912886 325241215 852409459 349086959 523557251 935790372 817491493 819205209 588223225 10556770 624847354 490894417 627324954 667780644 370246879 248496512 856844169 732797863 712472012 515485930 337208588 210970850 53558160 751807538 56234254 92529170 933947959 11866436 287213440 867178078 699757979 594082471 836288968 230411511 960711725 195877922 372757164 852566100 998547620 21208948 410351793 385359979 968437139 508291903 388472972 622745359 169794535 721537149 189149304 757604307 891620224 399118289 134208484 689709146 119166801 628522780 116523035 350181362 141025742 964692343 747181467 676551055 766475335 437112156 767489263 969478158 147741399 577375633 964604902 707383298 130876282 183406019 265382261 540743491 439956017 896634321 893312924 662692670 450177910 321293270 462837318 79774715 180848851 383514958 161768653 808764939 356329934 913600365 996571041 64619181 913125574 153647265 975464361 20921094 664484873 559968463 78958814 461711214 987648135 701805569 128755188 986789619 262602120 586633848 342303716 338644136 765260166 5257890 588465014 380755407 991741812 856608863 984579849 335463675 111527688 973592296 762741548 590544912 350777387 577262686 997253645 638790573 670246730 528883413 779703850 250918753 794329598 675713460 699916243 95728807 690917770 98838173 69987312 368159361 818137150 143462456 419281268 727760678 116420720 872121077 19378624 893044796 636914128 783743136 167221089 226094676 19087944 799758302 543562413 346372932 733403196 642093933 204728519 64860249 923035137 238014484 91084683 292959158 111443441 441303987 534163575 43780459 295247621 930859760 493702054 221208989 827808901 747084379 438059998 754398697 83608354 607659800 825115274 264988569 886731466 386559365 265566439 329922229 81098771 340187917 200683589 989343785 714226235 357574154 781028878 529622608 397484986 687520159 715260248 70692931 236073162 502962983 410765995 807971960 538159993 313337779 478897835 23872769 303604889 313697948 865619467 988030236 331767367 967879525 687245844 295489801 478339186 984788482 208353710 758288417 359905945 780975060 989249895 976555835 53532433 775777323 625412952 214345636 424367896 443598487 297306981 91104465 960216953 493602918 550585469 327673222 698550126 874456543 599460487 325434005 827995907 803697294 308489156 298681932 854952555 641514110 768434593 21892896 542479525 883986221 350589877 321133014 758765494 42816998 815069938 682745318 75095330 302480637 769387747 829362994 69210204 891558913 298081754 927218962 778281514 224364544 266044558 450496543 644935579 460231452 316237823 792230206 569890542 91284380 935032473 457748912 194145799 293737068 967688896 277143962 873932229 376923793 202008928 833105985 239568869 909867669 710998098 403116478 533516948 195984829 233684872 951080794 165665549 80881517 485246267 405312938 53688216 553331444 821776863 336196730 829472981 564501815 753710711 447659383 165473722 370906596 562702423 170690512 246048303 288832651 701071287 807543000 611800066 526469217 122873376 878690593 788442366 569224114 800429246 835774257 92249082 804506716 309036674 543945610 114766726 536618312 364691454 23656408 593629104 47195190 431231262 167928685 960248572 191273110 60905552 618489450 927838818 356008181 437133542 238434206 582603323 486323264 213711721 892392117 90106479 186985132 458623710 712155072 101576524 171351957 257368293 460756086 650920164 207631578 682889607 100820607 492818426 245554314 135340619 10400701 340081135 319092214 732524926 266585009 215078149 575770135 443083021 832390730 244827880 677863517 449551166 901582556 814308155 845647705 340825458 625665728 248390024 556252361 609333083 420916034 868246370 859955727 305817346 724951708 733961789 497246183 974748300 679042883 518389804 440385492 244201264 792000587 855382837 795272880 344135839 505003531 381605706 727800792 131764658 923774278 267426031 859359495 119770426 541592286 830296957 428055609 778494971 451391005 746903024 291259295 733061795 166716950 449856421 222002303 359075422 557206210 862061296 326213007 920664392 674238972 945709078 345907318 458328447 284732954 689781364 600796022 963914746 931677002 743039420 990110725 508066546 829843082 260119375 970420545 419100670 555136549 119362252 682972728 41781469 949459269 219234675 233170415 849219549 476714167 665735302 736035178 69833359 715216223 556018092 480219525 47985401 408662705 160396702 658757852 178428393 175724779 940788631 973193563 877185496 331100296 716983430 428433625 257804926 970397466 652189856 422447271 684269256 585461218 787689187 236425503 617432172 727978146 784637743 599613483 439805702 229101393 21598918 561237812 882395082 825388200 738671267 781677566 593279861 320973875 990745652 895435484 717775102 36696216 381876993 54715442 654285814 246756574 945842909 388500547 265968289 40914233 60880348 551467119 729329646 781668447 708482003 101055283 324665303 612033780 931189804 734798203 387352690 363132734 496091220 448226984 330522037 767594386 181689590 985480525 722150158 193067830 913652735 476083707 174230051 294261154 577706820 771910804 954845380 905154950 297808246 861979470 393653520 310563043 218683862 613778870 446725549 882127758 145886023 388888529 904169273 79522035 117549872 722175830 280705407 32798790 473064636 772517644 81260890 729519218 505494148 897267453 59650006 90869734 880513667 533112626 418095352 174586568 727734201 996585516 369953489 128028412 349100952 238019286 850334952 485305375 478985436 397202939 564799837 826946411 958751104 558023276 745471885 84328414 630579189 78111755 154949045 990071454 234693261 813386690 307371667 321776165 381090549 729851636 797033542 517761580 194294752 668973294 279519949 608505654 268223586 319033075 733371394 415186551 7827199 910302222 706779931 746173971 851209329 967987276 325480519 86200237 205186354 875685411 910984983 414768318 741105528 144990400 684833375 369844757 91468679 452211114 623756467 779907344 22300894 802261700 184817310 122849443 559691013 63175593 403282283 194755531 218241218 139077731 790474625 913677312 181543407 305095623 601660128 527829283 605110697 450395735 640886881 889977176 462022484 874722699 704393488 933218242 725756471 758725363 81756493 743375749 586195348 808638913 594109935 379122829 162600300 850937901 811614595 228062678 968487304 533705801 254209845 321107193 66011489 301282302 914121186 213837037 53540639 402224496 34323321 24783712 902684075 175475978 451528724 122141646 47014753 551485704 519534948 366700483 293881747 406402935 10095794 29129013 509712321 667743820 334001266 529446111 991371972 127468606 840885884 381554676 363545744 219994173 748612555 997287686 284754031 703194237 66233643 969999311 537284136 75720272 321792572 261206871 857374293 807721218 120881681 985484718 968388635 502903837 337944483 162221433 768626939 703742672 972257134 688769702 536748429 245503770 693013432 689915013 342260569 706853782 87792875 750393306 262809437 415087675 711769225 293228828 656816007 752669543 604745533 682764260 684739032 364433129 179559884 465622495 499610138 382255430 684184072 670406560 193920769 670835360 384550208 24034311 981958887 933604788 831030093 746823646 362646530 249387928 113102020 784241852 861641512 788093 781237593 3589261 281155131 178908693 574215117 612412579 447139145 645467011 625308556 664649092 740731757 859200618 24165079 427621437 894327610 320648076 98152648 846087943 668291035 78763968 176389784 682846945 17606181 821285415 418431119 681627054 420759413 846015974 150018438 630324063 287162986 315675912 176099263 595040974 292398919 419778546 57769436 631916165 181436212 307716406 536397559 48734444 877050099 650155155 644777696 689621053 948462920 557247300 146263159 472852431 951881992 811351086 197064182 543076513 567325477 20621972 199765922 527590785 561024468 699311117 632489921 443748351 609817145 738107574 843203243 323734428 183623851 36699820 54599201 510008449 629701094 298239159 699803203 874990958 523899355 351805404 148440425 583364239 629183155 991111001 582505101 792992601 100037005 37755487 562231082 573264068 158234488 168649552 360806810 239736455 347776984 163242197 33246707 686321243 893984886 999801472 246815794 511696218 683186554 630227324 73048310 519540674 516411246 839667419 892191214 406292705 839544294 313051124 550499567 318988572 810385902 254612742 473859016 720894813 871600558 643428302 995056123 276460160 932621848 594781006 594477471 889280775 757188483 224181751 67089344 478597867 253982517 507266417 106198094 620575422 978279401 926786620 867823348 113073258 968918772 385954455 608922931 921243961 287417390 320537381 252543332 62971500 455788126 204226784 708376628 433555039 431566556 696136773 106195722 920584054 380303427 477925116 688334615 929889078 238502212 504817271 211241222 994674733 568831015 96731232 487959167 272404787 288204898 372529713 480767362 77681793 286623894 44878968 438938611 159362168 5316774 53358926 928096511 620585073 457139109 359069379 444771874 331338501 292063723 971889587 523140445 811545192 121259775 585360565 265150196 265748889 416503988 113953370 768328176 650187624 190839091 915053318 994227962 118799286 757359082 505053505 305723482 330862754 686801368 40227148 959943712 316095074 259934240 90845615 272566712 878781088 322935357 509788466 416476255 869295250 915364596 22230768 18023677 820176848 732554914 666001352 375211472 286254452 345694964 838092292 548013186 57853252 469955349 868748714 1857044 427185807 40724653 528847197 750600436 838903839 577673420 449598132 735454620 418908192 237923305 772267895 632717022 962086906 560470751 456873918 104480576 605662237 500159477 422272502 61458722 8654034 864541025 344713544 994113389 67080065 922829312 690907918 796545254 848999054 193352432 759788748 427381935 271071819 890482407 136810200 683343467 728477390 821352081 727758681 780560276 406067789 745189246 631440814 293025298 919703270 45757991 245798740 148418615 483228161 83833820 987118381 272274593 818420406 777115201 242624490 112357515 499311477 483376412 99074314 821279912 160881535 252259518 766379133 859722926 966003967 831773651 165104006 480066148 770623579 484250017 203418830 254775074 68681961 520696004 247096349 894784259 496786075 369973442 772310164 889261785 709775401 217595646 857658131 346128230 659168700 76792299 899637717 134281794 123800781 829017170 180134492 790885277 201969460 376026786 26288950 131643728 454038204 805359325 733681384 900996848 415940547 594111663 720393172 736742562 855241816 616872988 564335221 752244003 124442197 360471557 695588863 625607083 573222075 8141255 99660851 420691894 735638390 291254068 290058588 960542134 341695933 423221652 510932621 472248427 271297673 547265279 310557816 901516988 912882725 979749934 597016493 503350031 137951360 510999430 3393621 812943251 914750829 804428294 765898347 41405001 389634270 211656330 449223919 155673199 678446233 281152055 378761149 233474942 650325888 529305448 910038006 150964915 772987266 801157150 464483970 125568038 274108573 122352541 955751564 509927880 922017087 843591247 201061481 825071591 102165744 171407238 992784007 384683875 569542451 642257011 107291133 181160878 800915557 435467125 696861434 335742049 699054868 524760160 673048705 778473673 459705738 920581261 561604064 892128460 524017811 994725841 209285997 481213429 661073755 68574872 434963471 266572173 95365782 311971573 805229914 688224626 879631308 276268535 972180234 949078722 79868523 73405523 265585571 269049627 14621760 374530429 840997348 871231052 611115572 356422965 603977466 245708794 108305692 996728223 731509717 109734975 297987862 73047782 711428807 610311319 163042625 575720681 528709353 385094500 158409925 896555334 420823655 341567892 465105308 545147325 454569371 98597176 455485367 310793456 109434372 714943766 3358332 854043505 835539694 235938153 410617965 62243495 115706213 650093971 965572980 828189069 33824675 828087408 527454765 733247847 682954428 523345470 698410774 357284548 222467746 68661946 95207994 70858977 726262673 627810844 279597724 97657076 827860633 776951838 547463672 64960181 59550145 326335270 355744601 468807744 147013376 143042577 453591570 191409476 903955360 108799852 610736039 938659261 647244650 47092525 383671112 547881794 508820491 646266009 365506905 595231769 209207112 114542461 480123869 198985302 124665363 498203069 717697898 775025560 168152591 168296047 590892243 962336130 383053989 22185394 830044519 620077153 742319263 17799113 265908122 430688791 346973108 853214312 116467081 234851237 580436890 748694841 19363853 740777087 984398058 931259409 868951575 173892105 951553152 299482898 400756495 353978869 840306953 799410369 350878293 643777438 24669869 933371375 356259526 899038006 595024619 564555805 244897752 204027948 55935779 5919735 727506420 458664842 941407907 27503063 996711341 148512072 603753986 492860159 619611835 632339180 433153116 507229659 790563998 340317683 43973842 305578271 748805065 552080541 747797662 619590939 358417174 508237504 492643234 211930746 644141711 153176783 466276097 311594141 33773751 660005735 786278018 350289876 645732581 600600922 624364118 407182693 985349888 521567673 23659136 363472586 825358189 406275191 312708489 126652752 76899481 645775748 799215872 444089422 444674631 964418682 845185865 71712836 728603286 831983210 866638923 648838767 539936705 692362590 282399268 892563291 672072161 843484993 842475950 123956597 677709651 740211383 375056078 48474631 927478784 803307107 278345624 19941344 658570416 736391584 182205343 454274739 793750318 973454758 795404711 377144632 305376930 162992229 257034270 935107159 136076116 246953626 932145800 489811307 364408956 531991077 142206297 112438644 521607930 265142931 149112600 704033194 722736422 661678294 876998778 619108486 421230084 412576114 75625845 731496401 449665197 685970522 171885710 337038065 411380558 623352511 397027944 828927186 490196298 445117047 752132807 96672202 394367954 632023783 667048745 288908532 902125462 567406164 839267174 943214025 617915672 847979416 148446804 51324884 571527413 203776031 465638673 921740838 781728666 528078989 18378339 130097964 46270755 347110611 955190799 97086128 14035060 440599531 395991908 196783565 547858251 159680592 111130674 371727032 556614102 119521424 164071177 422946235 459497557 561160333 796962620 995592440 180801728 215605305 167259052 906234937 18005657 576617332 851364580 287947726 385484201 699753031 518460272 249407304 108635742 696971844 602569115 414255232 563585188 183461769 104180001 208312033 488374275 34022737 175113377 554356167 369914416 39095040 335785027 402288681 437303462 762070555 403158640 858402014 106369555 791139635 948744715 696336429 205640874 616529063 166759513 494011989 617882639 174320651 618334558 621014224 948344586 314180878 467205183 889311026 35979983 990598881 369080629 625463366 851020954 857634341 674480324 813353756 111367788 166413310 173253020 863124640 642370444 647636762 780078676 256005748 162422269 259614247 214187197 343508339 201522602 807380910 610117701 291815567 174367979 366647471 189071857 63385957 46080131 726188499 34548181 6451500 2706620 182289389 156668103 159166834 912659527 917723583 7525230 683506461 289837745 234867071 485666115 157387466 613023987 875685819 889021415 842709263 816435085 511260809 617044307 723543312 268133545 645862160 880224933 625847042 685148778 432217945 206261707 109156464 962096605 804818965 739072773 235944390 996955203 402695288 50499240 333698053 498546165 101847228 18397669 439434479 937221529 15212704 624286410 810802051 790956041 724276114 576017506 751202287 18752045 619813923 969026008 416537865 952482012 773981935 785223495 25799397 216276530 302825024 559949780 627146380 942022755 491254226 12970241 473036244 640703857 727574868 398365793 831913575 465873092 990837823 515190902 762901899 670900144 541469778 568856545 3401289 23629312 186541113 140497090 221633534 378984278 943574960 512881165 334102090 234452843 673549440 87529036 534443994 661729686 112569341 528997967 523614847 344304746 977006985 233473962 66320738 263767010 248058400 423684937 911376043 272580469 78722470 720429462 854454866 732555397 752756334 815770088 996002250 24211723 482266349 672071680 503730940 210690827 989770937 826874989 390660283 788537670 618758672 982190627 528489553 19453781 248543602 747066466 348724740 957689606 60791992 418219251 500634071 828180749 486561663 187045833 115530964 374480660 372564456 72676573 989954898 494648061 442530876 961390689 213158102 23900633 738818916 725963846 800830822 619432476 113641312 944474490 800303000 253673142 947869425 291911907 662324895 868174377 700056108 47403711 504111506 238367749 766319335 531649511 737245988 660851044 876802478 488911541 117321197 917963148 531200234 802846838 672217360 749743605 591124275 957752351 569966336 772765621 283475235 242556481 841025547 454966159 20101813 471235990 516697541 472346541 649272910 949032527 97129838 526940765 9466548 107456540 155628242 397513391 354033966 274171933 980995243 911707189 559907830 691366931 256775671 228150189 846614060 633216993 996411017 20981801 992170743 203987156 482967547 502688805 539541442 858215364 739742437 460512768 911582012 48164911 368275213 456351413 794371030 659240272 772526329 92650191 680764476 631843574 66380781 998972373 344917688 173488644 442136218 411057364 966963296 366495914 650587450 697613023 918924360 401436018 767192422 954574917 347359910 840658336 525286822 147145787 671576587 991681830 536665130 633636149 44598254 997022035 683195914 331545940 555307096 944810044 498041658 113072580 499568764 283561429 89692377 913266332 727907753 551727786 423239450 854548277 456367255 915072959 284810882 320989096 101425119 823009454 98051319 654131237 731006520 627916560 113712866 192256623 134162344 797124975 60361696 555754354 496115481 28759820 980797955 186968475 118169041 669948 156557197 346902216 493787562 114773236 603187904 958512469 494855143 281669288 228522732 589319641 464556088 21495136 201755547 782689673 354323840 999233135 383242307 964974260 144256915 668276827 283238135 177933708 463971492 527376533 950856980 597055819 174709939 523399354 844773729 504002551 494132141 141558019 356562198 575289895 446726525 613638971 320388680 586506013 454847917 21936928 848698341 265231551 588514083 937772509 337259126 662440291 974008021 604485978 922653808 481487982 540157436 970121310 718948224 243946786 185040045 374966449 969362173 24592790 884003970 641906929 371443656 187761593 134818862 749432389 825045718 151183575 824851241 867782170 597023884 788559286 124510831 485224707 51411758 152560185 191480996 390809153 349384733 568393364 835038306 741373493 476033880 745790347 515631823 415815485 10101671 531031852 907689749 988977458 198530292 787923948 777404621 305622834 320608348 970334176 230871643 738372882 740838695 689692862 934923677 253167217 810383616 251175868 633055152 426168615 324799334 938492174 944301584 168099653 969310057 251826979 471566460 309476220 436182158 667680743 66407819 917641784 542482039 764801798 171025302 401713646 499618857 545163934 203693882 159537695 272238783 494126952 607715473 805405855 661091706 52150021 943740014 657843722 707528750 530874624 686363564 426061863 133156380 269363865 559926361 283100161 829345315 346978496 328452138 174823206 976356941 431888079 252535993 428186951 295312199 400288516 983611711 235558414 261873660 328399746 996069950 665706994 749016336 877273605 469273919 981019135 550728880 970355149 974477875 660964245 356568527 109356069 278795763 529051854 656857178 122994716 525560250 513275556 307180172 141385709 490958955 770997358 758742152 597399115 970938588 64185489 881701303 118431094 363964371 698560606 978281964 555630319 353037920 653968135 329269368 71638350 128264265 864071433 553710978 384257019 804694870 14981424 880086449 410327513 11357563 211422325 376148286 492519641 766883928 956663518 821413001 512450374 69140360 975848678 114933022 103932646 459431845 496648190 159291325 940149348 711811569 368882608 722952407 881481630 120760691 566708571 10925305 735906993 665107035 397765548 357439929 772987813 397529385 609185645 520859555 169611172 841893094 776144085 552348830 916847895 301530576 824842476 687613529 718426204 296217062 417787119 227522772 176575000 49157806 657240398 596817518 712059951 978721532 391305863 374601543 657076022 141345352 673798046 861075047 927546669 846668783 765596368 629462454 599620351 520415055 866716617 813032952 240403572 265846456 657461071 513799149 904240797 430345589 349299997 520533231 641985397 800732114 79795000 503428684 444942348 264921814 367659889 253910335 240854902 966251035 721226465 49613294 300629754 549520561 578889701 136762571 139900276 41920636 996004590 428887531 582082176 5061430 451991125 467717758 569776130 178539651 688305790 250627993 383976432 474886420 89172700 767195014 809396581 309987841 459761007 853876775 971143708 948441696 174360007 984393588 882954051 377053764 190530049 479452107 668782398 339862985 242105419 896922326 601859640 402072347 900172177 692149986 680891425 71897549 777150517 350819018 2009100 554928654 148752535 39397882 804458929 884003956 653258066 515785326 288892725 408554210 798491032 89033933 223619059 752539685 16074120 596138064 788067352 46283436 813158295 804376309 827126658 124571889 568772229 979117274 935956208 371240483 764522206 379657947 984737850 1458654 11576993 505610209 147408297 715719324 273934407 401756729 835610338 52768004 695122345 339503578 854631570 265714201 544694023 569779867 704120587 595089922 619153943 97854390 931236035 999622830 334414689 858212460 747807928 79305166 43401483 509886565 288434986 827607031 608935771 159766898 987020117 173624366 316362131 777831282 658395609 289016605 172806028 83869825 674994301 890227130 548902333 225698489 723458088 405229721 348688087 286764420 745821800 144540960 345038943 939044407 253449900 143010619 544961884 184708896 250581704 143802234 25510945 408214985 920128629 603997087 242027159 387777726 374909496 765119385 476494602 672455900 205469295 425354650 226123967 530784051 672265027 197805055 770367884 332803691 354387626 735521547 858228626 307270755 115669819 964549674 493903787 58668671 855524763 492618986 220658194 875487890 722334692 885589365 756444885 433531754 247759842 388547372 99878761 580823926 505990883 925737155 436872204 563933607 646360583 890948568 9778186 288007467 822294796 888753144 610712460 498713105 45381235 305999773 150746391 808361967 347026762 829064549 368064132 185803538 914822330 792494254 233217478 926264106 556669614 305634738 614084934 952311299 45730883 518815390 348228520 678213201 987793053 443833300 808706347 676215772 736536598 827546760 77499150 489532742 28049127 184122725 784085891 814626746 740642942 4891420 599258758 380048560 478300293 777535819 159563887 267210680 880211984 688450016 398667910 70026147 119928920 300405112 920683455 675282495 795246448 770993349 202296418 920585429 840221630 590244577 327896098 37632438 78788276 380770887 524505447 7054608 734281616 212304889 942367888 834214118 875447710 585145703 212963066 221989326 116224602 956453621 36231597 496494736 150754987 928851380 516544336 957597434 730075725 98400982 333598966 910678824 567228054 318968558 711072600 928990165 737371736 168867407 332429260 525220776 146512729 289764408 381223114 341734059 727767323 398390993 955366610 264231915 460841918 737267946 814090610 530995462 823498069 975706842 366144287 466285871 621403379 16158766 356192576 59032282 470175655 467838226 526433145 49983895 970618579 16718501 531648798 401243994 915227614 576708319 793639779 302555573 365622366 801540096 634978660 759505319 158156586 116825326 941894560 628258005 701749371 859315416 66371235 110056814 579561021 395083764 175423098 647134132 20001914 303415855 232916348 614995104 239319900 97071879 904344831 199306459 196022474 306182500 474986858 840514731 174686410 107491736 55595668 273424091 826248780 840166697 790152607 705894048 947094163 953069284 169644760 220478669 845377891 709085535 816710657 791752944 499085828 129240672 254957133 248846357 333872559 888932495 884577618 34613068 96117848 148435401 218083817 743701697 170036668 963988262 868930798 198723935 149871749 412031224 994954863 759804391 648060576 989899683 701779087 281643315 133357248 420151773 629208420 856678923 299075733 51635939 73433971 450814555 65729963 820805586 313876461 946552579 895899577 769227930 130431827 773174849 561862904 548369715 618793668 983387424 635458648 444868119 851268148 612783610 851379705 455697142 641067815 168726304 116987344 477797585 423132188 163949678 694764796 944019087 3425674 911287055 977632106 139193594 41752994 277809038 72151166 751886155 780593037 288867651 362774538 15210964 611121948 715124766 843308856 823114474 985183876 409290737 563235593 873876352 84764645 209269420 347152875 332291101 481436100 632858897 211360608 845254102 444116111 975622629 717898706 621452918 881920153 329163520 557382812 296589439 639560038 328319825 17248470 717542819 529393554 125665606 940932755 526230462 708223443 770053742 693381237 978742977 480894509 996227060 318439112 624773812 413511084 682197661 12378074 596429984 111715568 211126662 16130929 792808075 629119446 99899420 726249541 188673078 85765764 909243154 816483133 206705728 352164366 944085629 235156395 238305560 404844809 71205972 579019711 758566357 817155110 424768226 296399243 721482681 320724706 957571365 897593340 595980311 870184570 338470166 590424683 808348498 836589035 774370725 378328744 68424781 568705323 200277965 431624909 409253436 522923837 314439829 283291686 772306446 379735079 718771822 123492897 356432514 488376790 935332232 966203229 765829664 222660174 386944585 774957046 822794040 207428449 199113796 888781099 208769561 142799344 745214181 943899815 660469177 147471761 832911888 679449273 403163840 98721872 261037473 105824425 680406038 222621024 416271970 327678213 167894284 561610298 440262158 406849635 128408984 240112231 204093715 885748718 324275361 611293865 372573423 931796231 963086105 749947097 136600800 188843084 7627083 587834245 935121451 246898289 481924072 783199927 230458298 224942904 633829312 784701211 3493125 535545765 341692296 365993601 98511955 973967550 124817527 294549247 739996374 551042116 322429124 516068445 956688474 682482295 991545544 585561702 354263717 995767406 388393492 536434760 167048563 100067518 216220010 828516726 749414660 165578822 109490760 740089820 39058108 561185280 532641883 376257702 309457412 369369576 935629073 110508219 21378272 704364824 964285242 815273023 166131401 351791869 353891235 283353211 829197418 695437975 600314721 195949299 580165796 842303540 3566303 657212546 756584174 570877827 45933595 328088651 256833965 252370160 7467742 199011565 158336343 970709616 535060194 800684996 989122750 981963927 572078662 753905954 413662963 164362452 908137832 877040598 611958771 441035437 562064087 118893567 971186681 588034209 919969067 798412755 984492198 920574828 878207684 358726092 189965965 220827046 266295740 121970675 658201701 872260335 402231162 90357715 387348563 894470353 901859042 461117029 377500011 404408300 833239934 157037530 691755072 624709374 659252130 515610451 141822881 96040162 278936297 842502844 991789118 465428517 519536221 769461670 536543656 479225639 684837216 12965075 180529108 995178413 719214420 70174735 938858640 785204250 538830517 950680322 450523127 431992504 507787486 320017609 13282681 101659785 576961530 295721168 154632474 607259241 323862229 424157425 268691191 474201136 199325135 200334655 419415977 145347450 780008791 459498515 930525420 529993861 338299525 696752011 931476815 623576860 691846241 771226789 760864789 640262570 490808776 184515084 833987771 199542916 754861854 152614541 35467714 379283252 463267496 745958351 313503604 698186825 945667465 388406438 931502322 853197422 629813025 165176644 996320805 582842450 627398615 667318911 301045217 152708547 32296503 404495719 880739430 821461218 262850310 990598452 140214619 868034673 744419066 678192684 846077603 341591347 606640146 842709889 975510434 270788286 136563487 409204658 582910172 779844785 113974649 363435461 647016993 765385873 667972548 365440106 999729248 737557499 147668761 420220716 926064566 291306555 273390056 853146059 671204176 284954630 284711331 88757666 339213348 418712060 803237899 152364581 780495991 212756916 407490818 944457884 101796709 301208280 686180676 370348437 520193979 126639998 769052227 457511113 904720103 667528493 285279015 859536255 735950109 254125770 400682178 20658135 498821504 603102133 864236370 978594802 113159714 108057329 160731500 717269410 33659985 812661918 858817038 737863219 933678954 964694586 609832490 523128038 224974000 664531739 470868755 904116751 440675779 322219138 241346170 548193717 264699940 140608848 180306389 267840688 816937453 651089594 602553067 240004375 135131587 38552909 717611625 585532307 519898916 190639692 793633079 137202051 928204630 54750787 797711532 178551373 153581630 253257024 512454536 229538768 919444926 986448894 938449596 956336600 963078616 509370589 932405723 343733228 519980756 119003290 448804080 452440852 854699264 705127465 359371254 445308942 68737582 714726633 123358749 31625685 508387655 787550807 275642586 357051103 331725161 274975705 392193221 273602245 957579342 246248009 740296576 465647931 871462980 23065896 688913306 421262766 708052817 206071208 493562805 433553939 877666726 508368013 237151794 584643807 686106194 276090569 205704297 351153168 546818699 657741799 624399218 349873336 801370524 990181849 603927750 754680308 853226451 712723590 464916090 269358292 700976614 722269569 866390504 873970226 707999545 306512947 371647001 630279872 430171057 331991446 697899053 189209121 938343329 142815041 927777904 119779811 551098370 513734701 920772415 673134773 166615769 928840614 663777836 648430128 482743435 38869744 566134819 991773439 617733763 359883793 827077056 537552074 313567759 380882398 870941669 460072315 755569143 369859891 708045438 378015485 65255128 111526906 69005208 707870845 483043852 935844272 737384656 900655330 802299058 705687345 123640908 255911852 602758916 497436912 857058189 813996417 989394837 565379350 347627284 76371690 820944146 207837353 367552318 811631804 898439331 494655490 409639328 69732479 525673234 345784394 252591073 29844764 626316075 511172264 68260571 792446745 441246241 724050031 744183482 625376145 392383316 919953809 582583535 816644608 752041601 724576919 963051129 644380759 642548096 638048813 179457968 404682654 819555951 290414749 234508977 982449896 400478698 40198721 509651992 326986729 842574008 849027620 922526024 470735513 297469890 371000002 214298460 926221727 25233850 859713564 240055206 871135390 552470141 944012961 442761699 417943281 624474096 748761233 297138435 447107352 234891486 219833713 93027179 668963310 939130016 33963321 706396164 584655314 306387960 640355127 425245804 387826747 232589760 171878774 334668145 780507324 484004721 474575359 162449742 697860470 344138239 589890358 529795339 711142361 802894468 285838158 251809360 882466052 721561215 242901268 524003579 392119546 818018411 543516394 955618013 268013171 199851643 482562621 343788800 165771474 336069837 552578310 897622327 507875986 217896322 386923021 915150752 155507009 938992219 812359793 158269034 649475220 320181595 98069362 572864919 345830540 205097821 416110201 463139690 69142600 524947614 900684477 233797916 609980432 324773037 270033541 538172622 486378257 424704116 31009803 153342484 217254007 692549754 263800729 182578080 101023061 386979019 443950007 856100885 895543306 295841311 425571705 762353094 934138097 763466569 205869698 692506460 516382091 136746829 41669941 272174531 940919880 134899153 214810194 529027131 64164995 10914115 400419345 327421755 638366823 514401516 262007430 687341511 690645943 243328018 592309590 906100172 326551382 620931295 49283849 1116528 767276818 491803408 814083939 405614402 178448155 553763632 81325558 617489887 933702066 651601584 4566214 142693293 24073548 553835010 420636197 619743461 348615966 35817166 579523668 420853152 179366990 699128268 130112134 32066097 834674120 123809070 913086651 909638161 471244916 982568020 643358311 85455834 485098352 228947988 424517968 779940515 967926893 685529821 853730415 37073270 446964592 565775818 206175544 758273617 132553259 857105095 733081522 111590088 829755306 665940209 425054846 107251660 132230185 330424295 738605159 422026625 132138714 982334331 71174367 967632254 748652422 619624990 188723056 234030517 241410770 257461050 572531091 629806972 161899691 511248060 418952368 776588024 495739113 547022551 676264229 921967241 890002933 12323380 70431282 814741523 121429914 511551463 91297219 584633178 561034973 521821736 587743173 758124386 102345064 781535251 546767459 887855594 319399150 622542260 835478398 599356382 178763685 654646177 149396895 671629867 829742203 269269479 656195876 931754611 702075408 850568746 424434863 694146447 22458091 520109871 359642153 374762386 956847001 347166899 362890744 658844015 341631616 898185261 930609510 44956970 44112010 649080937 865707046 568921709 554204263 311777883 788946726 479966012 111747729 139884558 808262857 380468173 981543481 254294314 779530542 170652304 399696868 124397771 711993674 455307638 487091537 295240771 669941383 462603223 483671602 348709212 4139993 658181659 238056301 992721082 962013795 452154953 608159854 755909766 205328928 838478325 153133627 559729090 764459125 188447698 115911451 730418229 930962642 491483452 434982017 504898705 370353515 602630477 840717169 230433407 389596660 10107110 822654553 978189783 751152848 301967083 33004921 689236647 965970932 745539285 334517135 406656145 768744439 337481704 213201571 704453542 285462611 38343402 662243365 361316899 288874215 353806931 203046782 811933673 672504598 721838242 567550696 575980340 322471377 427435665 959536677 980906868 844398532 152144534 425594627 265458271 11244646 280328863 199138102 775628629 724964175 780358190 786541702 510898697 644995442 409643039 743991940 345765181 165823652 337375940 555638141 181520859 304193313 598640873 649286572 95791918 227503590 500738942 965506811 895543988 932107529 571931451 213892914 991931247 904445807 709468517 909927546 740130912 123082303 481279346 993803103 980534147 880008183 101101202 695478896 86565363 795820611 257060097 751708897 498423132 118176733 65954325 730339835 902538640 116552119 36884237 168084337 811443426 289934098 662218671 287371032 684161021 478076437 643135506 102827757 346416115 647718346 614124089 808338392 470771986 830020239 915631155 628041608 716986315 686700483 632271944 286863955 745940948 787308038 514408117 240656424 123367978 16204502 292917685 915458704 164377246 747130392 45157627 62114303 809471515 527069451 142192821 874916136 706602921 839421852 997675822 404972356 184777755 327213715 538720195 112158267 559398425 10395007 560072878 105737098 660184418 906920168 77273985 162240106 58760177 143918230 130421269 29813094 49050907 361645410 515921242 364272528 227992062 162301968 71609323 985992127 702071182 706276663 966008249 353907517 741233221 929534010 636103626 786596815 816907082 323923391 418535248 646619008 512534272 583955944 554502916 811296870 899470407 726835975 792197535 298571390 586163065 601513939 395427585 266653247 255097679 841281031 922287670 746169871 274820338 205966769 730307253 919561414 215136957 839938466 652350251 35694416 368588441 930303925 853754468 867528229 622968681 675571106 432814839 60649265 827850097 963705588 269296532 384538281 825665954 105971541 939279902 139518647 336331120 922724408 260809422 432565085 306728510 515859299 95333120 609137107 261389959 617628862 532107663 420229112 61279098 117416572 686417347 253115445 60144200 658412378 972192515 21240697 166819148 901142989 28819616 402216450 244664478 521631313 826946022 215037631 600350599 352092825 395174325 17763722 423609374 256863244 468167386 974195287 995365541 665716840 164672686 790952972 206608327 637460941 295540582 340010811 597790630 621911684 623710212 856787626 8158319 598286317 128972666 842255470 221241094 527303511 336630228 711530063 131344739 538447174 103402862 675437944 523570110 858092573 672708960 515586827 248070518 851074679 579979054 882212778 847734440 837126354 348343383 83015920 328118608 866689522 647416428 830515602 758636352 783813437 160179284 19321319 393208833 313153222 150221661 423428152 543658118 985360167 229754938 35257336 711462557 183162318 54029339 890848809 993430459 978640890 568657078 155215696 24297813 268261905 99378536 851002837 749549308 514491840 181060401 372549695 171584692 218404412 351567966 605954346 750888199 239689308 162852574 520359230 875726038 226745827 722189627 621954874 624637534 457498511 456784549 589364826 931699998 223876931 352227775 158332894 790959407 415385864 966735129 228782210 677226948 498366085 985212520 437332704 843800785 50247064 78244817 990863110 667706624 764634912 523114382 681596435 776822268 852239818 905007177 440406493 612599542 351981485 469049191 812687185 731226635 917518272 119519012 912354501 970326046 120624450 716248883 34749384 570399782 313056011 316937970 668551391 984622038 428498657 420225336 539806470 316365364 684013433 627542573 562073804 376032959 605943325 634697436 287807651 938386702 165995610 582170246 385146076 379933669 997516029 532586802 70337890 310204322 976256011 534372376 146203131 704277461 313551454 597351943 548215566 666142883 615521396 344920555 508145674 776595902 410943498 791140966 413308482 456067898 881381001 182870234 205948458 333721943 266468001 111416588 409338361 425433151 252054371 902787099 368876644 433876052 623400137 517104373 960699502 297921140 575646137 657227662 373203895 791067940 637765073 295982777 490469661 151340771 853966577 409937870 404932624 616451544 167491103 103736631 862597925 140535262 765131710 489118691 281148114 828264366 541467092 844064502 843399835 682669957 885871985 635875316 127180364 911688944 638565698 78309026 916377030 36346053 691911917 850876392 136744286 237224944 702475385 134644071 433589037 837636507 948807304 453185939 752930373 843169390 823854788 804745045 780313693 472875720 808803357 680873975 67589257 664896721 246162435 945402071 699239794 963475046 737439080 968961259 118126321 936511303 664180328 165524488 3940670 519588638 660054757 608785174 519090419 253427776 435650736 328428771 243479215 297972287 267138239 978354785 816178537 706085506 694681504 940080996 446831020 990081964 458121882 281061747 748493271 429124650 485508584 695515981 779683448 143260621 480470407 336869559 732517759 72582538 947995137 993951994 198527947 953021709 749664885 497651201 169524104 347173333 568444893 613824528 787801299 134847620 742462901 687906409 706654027 146585168 685634190 889949895 811144448 585220322 483462360 220728648 911501266 956710398 148302282 873786826 655086612 963173836 244069387 84200233 704817399 288945387 475836111 980483495 145099368 360388967 614194203 83450189 151999651 224106664 231936900 338062016 123425016 986723565 960167768 696868159 647940775 47996576 137335714 699509227 407229099 655434693 978114356 108773193 294833152 317099339 212784538 702551326 478681053 795165186 623563498 461891910 463962852 807671967 605220548 47774580 349292980 568999620 852045753 307640997 484722067 988726402 777308019 627246543 418615639 835354721 917123222 26761082 688791373 898134905 690108524 31901122 988399972 513627381 889093597 140512079 512717386 601753095 764024298 145517019 522944898 705799678 874057264 213298479 401650980 979768750 26870155 253301662 624334478 760428339 264091294 981801706 413809238 114604784 566801952 587781278 723824614 967504834 683756560 390243277 438891067 805697524 721807835 881764545 565957648 892146132 481495436 548914156 264428307 911627881 924400514 669090496 306195491 369104972 138876330 509194667 383893438 590443960 538595081 711136492 715591402 623727401 869187037 886123917 343410723 872306567 722300505 453709525 953544158 206412650 368254451 610277105 78301603 154644045 622702599 161996415 42022407 526989134 932063398 617540327 934030783 224983608 285863544 577528498 228369155 103600964 418316374 65053298 864184710 660184650 765603901 570372955 907220518 206332414 864015196 403939760 95043183 20097354 574027318 766310673 366067005 788403470 387569828 747450162 30028891 509447596 60488114 927681833 979425093 4359364 485995814 564861188 380387186 428495591 518418356 722107017 513214522 510462364 21436845 664693069 647575644 658609610 131981195 553529472 555941494 766122944 399590381 786722878 942457866 278674759 593446735 441095159 105374662 604463896 919860963 857888743 586317066 40226099 683393217 864723652 995488965 525190468 867777285 612289893 338510646 625183539 91236253 542996718 566063816 306706293 90899346 870711081 835354879 373885564 108627772 381569954 532345911 170160411 457853827 859100874 929310912 249273845 90920875 446578586 687674564 437288240 861557642 889508974 305869754 629344675 710562721 620623748 42651135 293625331 492408905 895352712 456071808 51434895 503187438 566807547 95392457 604745383 941502057 439957286 137683938 143431217 807528567 722135172 378295333 307184874 832203734 494367956 193298159 993973893 529227191 923729814 620738357 183286197 517946118 897832688 756688983 766258204 401063469 817356389 683671403 875350656 505613056 33441757 950255068 792297305 944279250 104983773 156561641 261580948 167800349 38860517 180892744 924248255 69432100 900134864 752036160 447116920 676531961 710674235 25565928 111610709 741718159 191786855 325851092 899854821 935289836 347003758 146044733 474501955 544707612 518357253 412470553 56411754 167429968 297277371 756833214 89370296 956919253 767972699 372217083 564458015 238989578 795618972 439321152 531301479 403834330 200500857 142739800 958735778 706825932 558571826 982167123 115908064 355001841 61515088 75142584 648088129 784512117 445852240 177110745 515194202 851136317 944999880 528444107 499270230 588361927 602443273 833647112 29612036 832946208 789193722 767181189 676155330 759218724 571777091 758859152 26001308 870721019 125147732 660194558 702079430 139052501 456238083 127439492 451621005 699296948 572171980 813624349 842441008 782394663 182408844 232824779 531509751 133932534 795134842 75955248 47404549 42712923 920428426 663676160 128544891 161256174 322920861 914875595 175799871 466416940 419992758 9695120 703878567 509888094 557995490 72314578 226892120 832638724 128413469 128864137 496641121 652194194 569532846 477259010 472043164 588627422 254227243 668008317 350803759 20820094 868339121 998490069 514611383 82086562 608148212 421707903 923897705 545126104 195706844 483077786 242851399 791625602 499882644 333532791 84028403 844010868 573485859 430055161 175402052 391406057 439808688 6433996 953833107 954681795 650453568 473647858 67491461 190343128 494309791 500092131 981642622 465735610 290195510 446376774 512191988 667854353 557628156 670376533 419062162 366334762 124464179 610921504 482157859 203963662 709219317 517118150 689593573 988313401 490001992 374571765 928886821 47218313 231676274 58165025 767496704 312066188 701035764 307377249 72623634 988318061 917406883 531837105 242192837 379444419 694303736 945255473 17850532 951068590 198388934 179633855 267766349 302731308 272150589 731899075 220482216 61934415 282146131 723610994 978220624 571197711 92600926 312582515 664861920 714287706 484320994 460006473 741049503 152165036 420169943 172376858 628714408 710331169 979337583 368676953 392975485 678909668 737839319 597973144 940016073 978782926 763417253 363976788 198219375 713832088 392651659 757370603 377051542 928294797 184726158 719149515 648766042 478917070 161743776 17181136 640315096 937928214 43176059 325630638 964114894 276247832 192081435 555912772 401491143 239518138 544467863 118021003 788901747 494275781 638573197 990776013 706633667 944280103 388618829 48588412 241888278 583639428 779796684 951069910 114102154 252350557 530986577 970934516 242481719 489956814 871187588 701102658 808648933 959495253 912316962 126776945 505822417 590729171 591314053 210877619 532932162 142259765 823912637 222319460 762019812 890430783 107895846 511069621 411390966 847657094 123709227 877933245 675914114 692137942 485305419 877789030 973571093 611714910 861517335 784877173 528010375 388484039 492117236 886522018 80026658 460508919 490492898 160041453 173229410 979296639 497536512 646281991 988438579 48729992 583585478 294383309 239043914 436661445 131811781 561373948 516275191 459817430 714886328 90774266 364140162 883816026 161096684 756960663 177495419 456164538 409004823 371381565 286445049 798232826 706240160 529015824 105552564 37799800 973752359 317857491 937466965 319049357 976141620 586136736 557222582 34241898 806113670 95055295 45051156 567119054 821264642 885849582 626159963 668860816 316880020 316713928 348292246 723997411 550784082 965649362 330212798 219700761 990590219 293325138 582988782 437914700 534991727 915735743 902255069 801966711 493226710 28294455 422131056 440027409 200874358 607333754 421185647 522915601 541758751 32131947 187800191 350428470 313327857 316790343 265310400 627264818 936028645 995455649 110035468 8268653 600630649 585547948 44667740 719905664 583357257 508293006 488066694 130018209 42779446 191923458 278508392 650526727 536226115 427999990 634937689 570696216 450178438 537164431 255039417 678094271 410157894 324073824 604800913 606894354 171100071 470225179 429998288 238598925 172365067 56698021 374266763 234767005 769518024 359266865 367265843 726419483 183924603 646680918 616561947 686900391 229560768 710847601 507056331 690562312 679656181 804045230 494920200 245920542 400262678 544178469 556179807 410916103 807051815 998583686 249004449 553713344 334634639 376140779 514624846 849204137 812466852 797930904 206833836 815754307 546437895 765602130 291923823 35352875 290936049 749831206 349788416 642035477 304039469 379296221 980701925 725648577 388011649 750063850 963487812 926090112 817845690 353969186 57216417 935635008 364363106 920755441 47383128 741781498 510622094 683718739 431287052 622195485 145780912 938050663 158574044 379204757 36409198 413275063 583333486 780392814 422894824 440158846 95559575 236497778 347007911 923458596 722232641 601880707 219608761 550201059 973424935 467916609 712387496 700161360 469661944 347429724 890614580 626300988 527164847 794454827 140548614 931849149 226111376 597191244 951982319 337878221 130717490 32957743 303906692 499128104 305862202 748016640 510695975 582771626 382283091 974868383 718622917 302111510 788248037 868049110 506723769 574041161 656098061 531476052 982555351 101370072 11269047 134537639 428500503 242115790 154178300 939910972 332916761 297886318 285494754 308879514 821436634 98556779 637151804 288708972 2350991 125288077 496984113 36003351 720521089 677845924 974730405 337823591 760296314 703750290 262473025 573513490 873649078 290683473 339939119 678978475 632715428 396998593 213050423 581578521 502680193 331331993 148955233 446255433 750553391 52110982 621267319 952056850 899669487 247011526 388667910 617909922 282817415 72273022 958521535 122657356 732590860 656702621 205148592 514668546 353602804 451505625 793065979 329766611 823234022 512759463 448488940 63624094 219890368 138261458 632020145 795006315 401077606 876416019 530941349 15183245 897102554 330620414 241650574 909213683 581491290 353502660 459355639 516229557 466141056 727185660 804660115 322802419 37954944 885292619 106824908 624876683 889475181 569096936 375922864 995109320 798729932 646690953 70415748 483629333 626922418 394413611 57259965 698147370 731227038 543283430 849884130 810200755 95159543 802183530 559302318 175715570 843207057 493807478 568312602 5390412 371699680 422023530 853762498 808589487 21364027 419130855 948712737 359841750 341420005 709251215 526166070 16543666 970519559 484335072 264310710 307429167 811713559 499227362 752552925 763634644 679750140 123637672 121420196 787044949 982636592 278544489 699299346 94121115 561276874 295997888 97157452 755631300 980461663 848986971 655942200 710419573 446549043 168634743 855466179 528082854 910032763 663645195 27099830 472892269 399672945 425173969 187839584 202803460 488988234 505192602 16950256 38101734 596685717 965910978 101386517 512368534 884704010 970648169 823992060 696888455 997745193 535139102 972418393 762687810 69775491 65036194 548521256 318923656 952074151 371654564 966744408 681277077 273654035 318972579 467087223 371084379 512009652 679192612 594618599 793379458 545641668 898690342 225576894 902156570 150845429 170429165 954247527 663683392 818697637 801260410 80784011 67793687 832478837 249987501 24728993 438634545 319604441 871213428 542362363 452760108 626858884 260826684 841782156 933317743 47089988 373537088 591175027 694330933 408403511 371607810 157590511 27578938 132016170 317590596 470304697 401859387 440690842 873903772 422793218 265639464 501929863 864493202 506779955 910810071 759174055 126882518 975679575 90125534 120392172 440301818 239330247 681034511 845035623 402316884 293346865 497978162 45290388 274598846 446193746 752089865 577463104 444505008 138631066 47170778 397288100 973100831 307432725 655131155 347274250 67215920 770505157 242790645 475818186 283820625 649351508 283292044 490424334 437081372 137633344 782378807 184960699 327977322 150756488 888478731 919353940 725800991 360206276 705520859 535357850 137683800 990585876 520888781 80275646 909131561 986337319 641108137 792501080 484699007 766024081 463413903 402252939 141997545 709095414 607028451 204265710 137366624 522623647 474636822 830643787 247846881 778074749 728123842 832613903 43619236 246229054 100488154 859629060 560938749 58699899 666620351 82528853 189347499 887175951 400084375 912622856 303244697 761567016 380966694 644046280 573229583 849166835 569817359 900274813 734960323 59185127 897142114 528154216 742635703 839913061 7286945 969089587 377800692 989278879 757960764 479629437 820518551 870897661 586631795 730766173 462659251 970537810 10974576 511281278 808350609 9746311 427520452 687717839 987914117 70621749 237833758 633506104 133626081 880498151 839467018 303366203 203866616 272151611 419953109 188802567 826095047 856028564 196869824 119562704 25697968 71942833 722818522 433371428 31011480 28669530 126783383 801873317 618183433 448173634 526344894 686808317 38728448 754038894 485200687 9291545 91481347 727454244 997001713 959317697 843479192 402035462 630729231 655214801 626238557 397299137 709141606 592948017 658801835 825034279 272622490 459969792 474513557 832095115 376550689 731229461 325498751 285132814 778167866 551315186 34786982 948096021 490200846 82479211 817399151 758912862 769357584 87506957 486970875 653694027 124259541 235860760 303113555 197079121 837897898 413917436 370770776 960994199 798252959 137826914 591711329 301748870 868694615 518709568 838350293 186370026 673483477 79329988 928519846 169228710 476400110 401481645 683933566 313637947 679613673 911115495 213106396 320113823 557602020 395774108 785104846 741889833 501535679 932022008 994158376 128257126 307286776 850151055 481525845 497813846 162340152 433281587 963048498 474902533 189291530 586203216 115760236 733524500 150029075 505564293 449747592 648049636 157930129 598897702 59224044 234791982 372152730 736600709 261309020 412326289 787051915 128251627 624132530 260150224 433998737 785917422 473448214 162928848 877173173 330743930 774176783 452908607 463795363 183532857 444363447 689447378 739185 322449134 389586521 289906247 529581887 909364561 987917721 559053685 559561695 833946581 157441002 162589633 152845651 64508729 719012110 649317022 389977419 706588792 432313862 241485660 801867174 888942603 954163978 154126562 829977750 159269855 57264283 466419326 936525032 304136311 970050730 452550558 328556922 544036686 874929526 243173586 793263672 934067408 224860838 558012328 675099948 998445968 20671841 15530243 577977333 628358488 955381438 285750084 249812536 517649257 187984467 8001018 327987218 627612660 95566467 775213178 289084898 194994122 962531046 591832457 974041959 649723591 160201800 843960757 540044841 684620030 836372625 332600684 842587070 449214910 352521603 430376012 16314085 90402872 517777726 890010456 635399994 944179762 984692895 984582108 754968341 572839286 66037450 211088157 304152826 867150299 491557587 948353703 551732392 712287157 143192427 697627511 800159818 210929355 932193294 129443896 429862274 96651138 114439002 858512185 456815886 256235735 370013383 541832171 455279687 571460513 820527256 673850411 931486103 596703201 499586772 206020418 206367023 119004888 356388319 9153170 242366008 564728845 722178869 629592292 699405398 154671679 465361527 959706718 482639704 584991261 93358908 630326990 788455583 781187523 178667262 680474443 884232886 710991255 642423595 379808339 512271510 712342209 498184974 561350510 624283466 916654800 748195880 956740458 103533215 981772245 684143000 873757358 181451309 377681034 478003573 453434928 600916204 99656360 388810182 982428074 525659667 372075033 839960013 518318745 632438927 730459182 37867721 366580769 520628706 127046332 180704297 965112339 253104789 176609426 639017210 318494728 365896157 679956617 859130315 64875999 808694877 204682521 291791278 938362967 69861776 485061569 625169344 854915710 325396297 639805576 580749767 392878727 902005065 147241790 657213906 359105696 418648107 191200480 694454818 43163288 754134742 913664644 184996543 2554724 36404496 251170460 724980985 60324838 827681848 721234867 818100217 602296235 134861972 664001684 836868400 295715161 572728743 606047977 879699534 492219233 935247386 580946880 272787340 35123410 865040277 42048120 10791361 8410198 497588363 822816806 334941440 729749605 912771370 839306342 987801062 130489689 536299966 583309103 674970381 793724246 133960321 403397637 403729187 516339832 660675039 177515150 503057002 684355410 164222419 583621444 96237739 762018765 120213877 311257784 752353737 141370962 552259725 884159593 531100778 897825675 99207881 858759375 878922438 361979277 613026126 262553643 8884635 235955307 658093859 7143164 916947822 276184364 488403684 481942311 600072891 927161758 303123289 649289195 301000370 217625883 294442312 669256873 29600987 691757435 100009675 507924130 601124106 170768732 457348149 774683754 547528574 549323239 901627978 597321402 273717806 497225880 62471598 923931196 235711665 268797894 701095573 909482967 160579174 218428076 983671524 164464044 242932701 394331669 99266123 543336056 735832905 792003546 772473151 26121223 778835323 293628011 793450801 560499266 903400431 528894491 739398701 908471615 865259505 245962125 55555454 485135881 245958961 698164460 508481209 939200397 710105903 89073258 279547059 226439886 503733013 988659766 186205397 858925934 725868613 634786425 346644460 64324865 282342233 652274988 780709239 252135167 477031891 715128980 944542778 92429070 542634243 276130713 238311275 344378768 789181941 608426907 551696480 865762617 299795093 214894413 660229565 289600206 938081425 895082649 696714564 581085883 152249387 567985976 254570993 615648616 308200557 966554503 414704318 171763700 336079252 628581685 321909234 477066358 13626802 990193993 262819913 224188486 500923513 781015460 923732294 421991445 492683386 607651650 561710216 867141799 395328680 551983301 353328215 406876222 750881023 719224070 358075173 893457486 906143299 386592067 340188395 17413949 491049263 227563075 927621048 520661515 853125880 937233721 378947986 162757051 502487154 134894208 842528441 695957263 601927903 56350046 183710756 71244706 924590498 673226495 378261065 794545651 381878720 477229403 373917378 581944278 974768208 64600928 411877700 660625300 683583881 936136987 602120510 529717868 25843135 412766851 152822941 383907424 967221663 332979333 273333258 608928030 944498806 28315470 20505848 110792578 653324561 653374227 283053020 246900144 220151388 523901934 771491934 42459385 388695835 701239054 740240564 763681853 312276755 50693064 808954604 346442465 288221093 438861327 748629266 543138861 558083888 784337213 857005753 989750099 731009658 335345304 697769733 144126959 749480885 655432052 740637915 830218185 679935347 962758394 751389287 961275612 934613504 215052437 51825791 797860411 1516347 157851734 53667396 101043900 937542464 61823038 89420082 869403651 20844492 609613066 638466348 46154406 125803622 260284181 780919912 675143017 638007013 986372539 125044421 366159076 146929523 32228975 718398572 431342572 167082904 583940625 358900139 211727324 503958910 770783092 707530182 735916203 672582509 960113350 647297961 685566459 100762266 736212357 257545888 103847314 946133579 782076239 720940401 450213378 466365537 435780608 562861941 702198547 431316348 312797402 75591541 289235465 587545970 165831567 622348588 321713937 972867953 257334669 621674283 779463689 918765566 518641683 499273605 314812677 71574416 114916611 204147783 737398262 848862660 894733045 811864208 898136509 672749573 855617277 142071708 461802288 124310973 422413046 96543953 702609710 907924100 663451880 899319554 271627222 80204210 288132882 341714281 862576326 432054399 60919521 835010426 599154928 38284766 809963782 357074649 115120321 822768226 712736559 172052991 285737064 956724179 504154551 820240260 788239112 656253876 422651037 472557473 418162834 41037008 534391356 965497828 594542965 180211959 758936433 680497392 839010559 390283516 865326385 900819303 399429439 425315614 679680678 355388318 449710843 880603970 648012031 350373793 504536451 226744518 122486351 925437433 464599041 114227273 445526537 871732896 862061361 960005816 430605276 58564117 453116564 137063251 52837799 130963226 493982277 190997789 164314600 314855463 505891506 795088734 233601110 846920892 380489871 565820880 363003194 898588906 767094017 177790360 836836808 924902907 722407932 263826135 640298708 778195259 147928516 514896052 771055975 694793997 884504978 534383848 754086351 675339262 791542070 37245738 634439657 447370199 471274298 588802945 336583256 840215647 370371664 685035955 342617033 451811093 136236973 77620490 439201701 43393859 94536843 702743958 633436497 575575824 570616641 42153481 737307109 67538981 626945682 661924051 617207465 409479623 660972002 368324899 816177735 784501527 629502790 120246521 455168282 488044827 721181907 665330407 695541463 542588593 220349022 504245477 590876408 547028316 214831949 636134187 671326646 846847302 41147873 755889369 565287447 986211354 217616932 389946803 21449850 454433935 158943562 625693439 311105397 608208983 273800840 301426113 133948947 454275648 199034215 345582562 741197570 736053571 790269898 123110123 812571170 247666530 449790036 857578573 924333355 501756366 587234603 513316207 139564724 498037323 100595567 445320008 941864873 356891744 474390026 497433628 853105301 92279624 16374822 388289589 990592285 423800859 186364907 236855980 44580166 542490306 541713905 699113793 957200239 908176657 853914490 19389159 648629450 310685561 794536825 248708477 406120922 401305394 605797782 551446928 923166425 934200550 965199821 413901026 488686946 731675949 132614953 374451968 715853388 200603574 717364124 558784573 884918503 84577078 568944614 960316182 58856799 380530964 115485534 529314230 575086204 551310104 697759227 999753135 81777298 756050555 358951890 810167989 33890941 65586102 714054830 813039418 497562050 927734790 573445457 135542046 890229130 37099359 848876355 171181121 924333388 573465990 642851534 471069566 942990271 131171700 332828936 425758722 790690995 188569260 839754680 158175308 705084578 64151804 869749525 842306006 442416896 948771900 521788840 959581750 213249320 547407564 91727802 90054421 341200295 698394357 483303753 723149450 680222460 961078302 918185912 910267359 884898284 942634242 834377237 956321820 509347541 795115952 696081518 430583839 755035686 250513784 655375707 946190881 213673782 82722181 975826025 871564968 933589494 109281916 33279178 914374212 492650573 264253987 923666224 222656342 816559715 691724431 941072665 31269937 225529388 641531132 822202706 426938241 833267939 737332872 347191137 663893907 100772146 87142541 628025951 934931426 355381466 524881989 626815701 672479129 489305526 22238860 625514907 906951146 825169000 157163856 420181597 879360333 960160651 189232450 896308621 982526588 324272818 555619254 976080998 356529734 278787728 623802179 556300901 247700799 371494905 849099838 145269922 933201907 414827208 282949710 695431358 19248888 265175454 940834861 119683850 547165402 837726146 432846321 657300891 954327171 610365217 281698817 204957574 983435412 671704713 283481150 952688413 787706153 176543835 998040035 77745328 581899898 958571381 917615576 632317419 451299651 542061180 258913948 390751123 865175276 308749792 901619444 863210875 283788599 608641001 616772526 101424707 143841380 494923157 680939341 860639149 713714294 791889284 109521834 279752339 750851061 228565449 19881460 614629791 843708271 381455970 901783642 364561358 591488533 31776097 159985928 426502832 809379945 589448421 589117923 231395541 813136219 965438500 828747731 927384460 687290812 349671597 344264170 604074808 220843586 205448640 913086211 396799128 370678471 206160410 388409176 711972869 660533193 156991283 662108400 245528144 306961430 523976446 500651318 161874018 731988456 661823242 315167201 161125969 685733776 405441028 680962051 662648907 135486088 219232944 717185973 913047429 571668364 219976884 846743480 402178155 343479084 649211399 539127939 720423798 379213598 544006839 364532047 839173019 493739519 584880656 543410272 662771350 378986337 739877911 363424689 38040746 185068026 377787748 396210790 626351945 573478008 728414393 951459602 244081721 308450135 412051558 789186061 634769194 436450219 148046134 725308090 122886599 504515735 512655453 149936684 373260400 627896487 95849593 914754330 50770281 585333420 773121643 821195160 754228838 616184308 40563132 898821716 926942462 371905992 46566858 540975917 815027375 301632722 282966567 565926126 436841480 97195579 543633411 199050285 569629342 804369552 528079385 605033192 532476974 103120909 304739737 747451250 380892363 585035097 711190519 524406286 866970360 553055177 390886062 6198255 433580733 953610891 914589583 459742961 241878538 494283569 428455881 164402686 521736553 510307686 768787791 501472191 379128909 566039057 689508859 180717679 875591342 611744437 398803525 815707464 235147086 636617595 28341461 775793324 366272578 614942951 86136241 423514973 743009005 521312079 821307516 331816711 69128350 829220254 554563902 443423213 482645892 63819138 983589946 79454959 932578928 94254211 434800996 21313241 446210933 481481409 272011859 585297968 985866996 478377151 990013149 917662047 224149227 804889309 458700773 803937346 907503571 422926917 757329075 272475548 261536189 954011240 533599628 562242669 639906981 991153081 276214579 357118600 879998781 480514481 847239468 858680939 564390264 619658884 271825429 324361960 89695492 109308093 727850218 440577345 525556281 945374175 77348046 730238784 594083794 741207909 139959529 887179766 772711029 54259401 513661078 294674563 532972081 864743797 751419971 214445795 499841266 930880440 481616863 789589215 723947814 988180925 481485051 379457214 948021243 190911721 608283299 367648781 739868330 511255473 652849509 738198538 36683758 845493815 857562605 654415440 251935113 188472333 429958350 328857593 125554178 722237095 333840503 934262455 485844789 108937168 472994780 196100937 858308548 729736916 305395933 981832150 152457277 316740383 567090948 672263261 74828903 779332023 365353225 835911543 50189758 219457090 913375801 789828279 480499962 811935701 123394727 798054341 298468777 78670230 278575998 527392179 68774728 655194809 632376458 37771412 259114881 542266198 656307394 859314868 16154773 672948124 139936349 35919899 832770854 31074236 638892428 785682214 392874721 89781620 173215785 489555450 793351116 11222728 549849862 685123447 316033492 847144750 439776196 996522186 94242559 500066160 429917065 155437010 583843452 537049231 383053553 786640961 121799757 347951974 316280850 496284520 875307451 277795956 766557922 216785476 551473336 371680029 836818541 701060200 299956605 408304299 433741151 150356191 338640493 7211709 118220496 463363629 972937903 270361196 955405356 522073932 478339310 258154305 95681786 322623479 722278372 492249337 644144828 498770926 249829375 181231784 418905242 703160576 463461460 285801322 117600553 1206434 866254305 569545717 918111143 513744819 381705915 384598662 515041496 259355314 317110251 460794376 740805648 564730331 626883742 729141191 63969834 80569681 366597966 40570550 907960947 254265473 844445473 544436943 456100625 303336215 395814187 726751808 47315739 845351445 119512272 61274142 614486779 453799118 671328842 824241304 177156140 54088178 981914063 650890811 649354422 711983152 348337476 989159479 632224048 616851563 388333874 713375746 500781304 860212237 918869206 544107097 950285992 817175532 767334287 9813316 59571767 621655846 945613071 495526717 26690187 524224210 875425818 156426825 670976184 432925151 522631054 74800372 892250479 710728521 726102229 241432035 203668298 33391026 278470254 608911544 190286751 285445321 407816825 778001582 848430750 39953776 395225972 933585109 269102216 801675804 176103549 816376439 445311452 908494664 468548711 273815693 718802996 864478053 999450322 490162049 170470621 590644019 337847044 283369092 310509851 645489600 101460483 853446816 546916295 67376255 248028540 752830467 61397857 112911033 167342372 34381970 588588465 604385247 91212543 964829325 193956597 507409765 786459352 610745907 910197732 312569715 49090211 130167770 936483827 613138517 674499482 97793623 233999823 77728966 633004224 24696514 155695797 119156094 222133566 135459817 734320883 119758199 489719455 647787554 387017984 863872095 582341329 739558686 789355210 734388279 821093108 540018112 218393081 442475829 405843473 473390908 604944817 464145820 501468237 440943119 190573776 165820545 144060823 274641320 67255791 903717163 893776611 798936157 730776955 947025705 450257637 147708963 822401859 304818334 906572904 241802448 421722353 278218493 410326028 143515842 573908590 9932568 580362569 928432073 822132876 468974538 287398812 113318584 4169926 881660836 745865238 167460538 378524725 869531815 147752729 439707429 312015775 183207970 668593375 941207289 404351197 655596458 714482836 766963043 469014841 86201152 259465290 124764498 783385178 543634320 198700159 442723821 613625728 588493844 755144379 130534736 835799354 24229465 153642337 318744346 815544031 148538502 819642147 518483865 472122031 478293621 956426051 608144843 249902946 742673404 889725595 746370006 668879755 585104111 89480478 325563778 9508016 147542626 56792044 8941208 378159354 935389934 194093471 669466698 726176891 233960123 987474864 67303744 20430609 519831906 491233981 732995340 344589223 689235479 732747919 38574687 935421685 755040516 336325270 967046159 218140406 240669605 20123966 908575982 881853116 272152716 628282856 728284074 372808678 611068198 948456030 196219495 491690857 727606648 223650928 497720303 421265663 360048121 48793218 958616391 681669242 58478248 865986509 283677634 955445003 581729069 502346195 852098829 772618655 563625263 336927712 795789889 250403949 642740193 623038011 289772703 125357494 857899912 122515362 381924524 739928216 187696597 632546415 668832292 665148624 801693241 109456536 591443383 510863662 643204956 38343427 277111837 409178277 159733988 346674501 539886078 285457203 254404145 603623681 791966747 664434542 40376366 197202969 355807593 377099071 653733881 394693770 38027775 331422669 807033524 382524166 524652536 48435904 718598405 92981645 379658608 16772106 379634765 492851646 347426035 640868540 75514590 778643972 914441884 68651433 73697143 240870951 80166442 891541625 629126456 690740807 398891131 191792150 985646851 941403622 279925140 844101619 541581571 966828870 336492909 630632526 70068293 654396007 89637927 435465088 558349464 486097612 459171911 470976664 350683575 923605265 609520345 645337410 311318879 346979711 611789399 919131171 286366930 565026100 420031477 804811501 870445425 907025296 297377604 419986273 44409183 506553347 216664896 906205296 470876682 543277886 190443291 538866031 886846365 75363194 798128794 773451973 726038943 358781173 56709160 434486939 75195204 300535454 257005624 449450048 97152377 93638387 519902967 596597906 355243514 139400187 346340048 339622206 335268853 997846770 873083767 841236298 78237291 844626670 579917199 867654170 723379323 616405534 48980953 386826764 640919384 670370372 35856309 311917226 155587151 841068439 590921907 154517457 305751140 859984453 782759999 420570929 986132833 33672036 227342831 389915952 277351567 341696567 231690086 979813827 577492839 592310562 817290608 662317950 199908804 644000954 133120244 998511661 765396183 406298192 636722362 214266640 290650572 246144410 717838334 102444568 627365101 311915033 392647956 650401779 42620411 328786602 212169947 135754755 983217568 382190460 118707054 282900230 349882605 408773350 457521709 163164964 215884365 559281109 263541776 897473794 194838450 794460934 826823136 668880981 5042796 154090335 663486 303966734 922721254 882982248 948510133 129205585 717067188 358101619 494768896 525391594 120821456 489440910 756338072 977578428 335171815 364992895 93523867 350921440 613162510 442936932 590028842 801598125 200679807 815642271 496444652 535755847 920785653 697613075 541614685 974708305 882300604 241525925 563046229 747996207 703435487 646773467 599206579 822529495 427279024 848460024 892268513 708158187 196251337 710735789 193326077 836863751 510600422 309827568 431619940 605856284 864633183 614186325 989941826 874144586 913374054 364232001 621462563 326800284 994388315 350797946 243006915 505480772 368115471 470723069 965864896 266273620 116230183 852387874 581491834 898709196 856380800 188169329 538384159 14314436 344137674 100856358 90872515 242370698 583570721 798817822 823637977 278567849 68522191 399449610 545228355 848669027 65911540 206139310 678794601 886727117 406068983 671796893 343955028 650708474 138614205 668495217 282018648 136705699 48218487 314622900 410625619 31153683 869483533 941036312 171771236 960892724 669964025 519555431 136015295 705603696 80557609 836360219 817762795 144089130 568313909 678885246 123349168 111491343 767675722 167766379 90473952 665272466 983732868 56751451 39322224 441729616 839763766 693354049 949349338 257108407 385858746 962034528 465259191 125306610 600952437 547398224 260808818 624104360 791017406 481041025 991752481 827440840 735198983 446641076 923136444 982270509 15857845 142076044 694766680 340105507 974819 578481163 260901282 17933386 845467123 299331036 294867719 8495252 106698525 114226995 812851143 606158725 685927413 201429051 587692954 561138617 122852180 814170495 491613740 643212935 471945055 469942171 83488654 328092358 946083057 165340313 505848903 401901661 604373495 891965205 391660816 868458208 543402727 719018447 660279323 31051164 77588179 656783844 905147404 495831390 683909979 880006792 301481098 111301204 487530191 372884247 733334556 596668111 501154518 50073160 499783128 415966999 762500990 347032908 151532289 985548660 843184743 34440387 219946479 281221724 546602020 578694954 68027503 832555782 653765601 490229248 292914629 14242749 923970005 687165507 520351055 788478648 963114855 493932883 162404569 605467238 997888771 814806217 217839502 219276660 914190866 739001885 742805116 660466253 936309290 90306064 322224673 574472998 838257374 271958554 536096050 418929804 686361298 888198988 301158433 319093513 195582958 215900916 476620951 740715121 814279095 1441191 701231351 314176649 60944573 707456371 319539098 752741073 433263784 669994763 308701415 811694906 793386732 320856811 335245959 433588579 812762293 949069793 598317459 679063135 256538945 983395024 961645982 553376883 567778099 682199150 419031394 162497571 161312512 296504980 89570554 395996792 106850561 499274368 958388362 524555652 308099388 232719660 582075824 261510858 454645088 698970321 4311755 980734316 145817780 388613602 501105793 602280193 527325558 198039890 830754027 696698978 488848298 298980242 306503560 733842971 321678032 643185280 617746021 812226676 364291227 815896516 478227230 422918121 315774851 453879567 189686854 344816668 775601293 204684787 824296871 270804336 705513901 129911656 50700969 169486333 228928137 333325658 775632332 325369547 443523070 852587187 32739258 683304285 781975299 264382045 782286921 266903358 358868906 502928303 6044348 52344351 270953703 696558088 872837899 604377230 482496921 984517202 58139012 263919662 495925158 860838165 103813027 218086046 347173755 938412184 516368083 423181942 678319084 883313359 701301454 726417843 189621933 681317396 425699075 913298193 942286198 870602116 936149519 772295430 630923469 39055780 910548585 167032159 658060549 484558519 519659527 862096836 700902537 641278868 95221243 93357134 221726842 357057350 905203626 751381114 431711754 824087427 720252850 494323447 853472676 158880361 411124932 848400151 448660729 754848106 781019543 420490856 202756069 41764152 771027362 798078232 117617623 51451846 369013368 229713130 963938659 440053895 581951200 429934520 925526176 451765638 674379879 140583097 384770955 252325375 491372178 896567506 964673750 959912795 139021765 978857040 753771017 629259628 504619359 412299372 855573159 786150738 772227310 593158175 148366841 559962611 508379780 282163730 852402235 62824999 932787273 108093067 635080540 417788971 301161457 57076530 931451069 167330650 953769456 969942848 857121451 453342031 263297543 403104052 919457783 550162513 913117011 747801389 584508504 726279697 527509189 149826545 397081834 233561077 339462498 231548915 867121305 191253041 226851997 613574344 424715887 209724641 136085788 154475700 888116566 308628957 403148979 697329119 982903085 580495877 511633794 352006590 827719071 716865100 164833074 599734125 909055399 302075305 293385701 429924202 928359873 744085871 142662822 254829690 976747775 542187802 950237183 274281350 614375235 949633091 590513883 164087195 710146136 922257598 473526397 879540110 446795907 630936025 501087113 311843537 735696254 232053406 206680563 743058092 723775542 397191344 95537012 679252403 212198539 806081229 616107399 7804387 732602408 532409983 46951307 168804779 152742881 490292712 838364180 321040427 401218161 315830934 502112950 711554590 334489654 633905202 255314609 214902176 140359817 103222933 112081611 617889433 849415095 381762419 134504554 536826616 362216638 29870266 968151270 770935502 792150136 467499573 166840183 933224055 26024745 811238136 676377821 647773222 204257534 385452312 275313871 788654124 758244211 549107785 616160516 638349522 290020700 18520605 783820161 807722721 876869089 924266746 351978022 699083409 505478693 870527706 836250803 664364969 228794593 371588227 60179364 863167458 396080135 163789920 673135393 323052599 998663975 786015465 710859547 615622879 331702012 205749312 421566898 989954900 365780994 919285430 232603310 993742658 727498269 282366516 675386273 579897015 387196331 92457034 888859115 920062918 743918273 259104393 511991739 210994840 930900579 836455028 262945952 289316142 917366964 349322212 304165266 654114220 363813930 129039621 647300193 542144133 224800520 532812579 926374474 264262594 316826169 863948211 804488620 517672701 94307820 911804884 77775759 768497614 771254162 763551818 554865350 993071234 728337778 839985797 26663349 601912549 330816666 334251163 79447216 824954054 592010361 736666608 922226526 279796749 380821874 567959845 837701664 897264682 78878760 48321798 311778161 30582920 176804232 433995593 342592506 190115517 840919536 821874238 256958902 51392480 867893370 450218899 907009434 404686345 155535713 706208746 424499018 754670798 91989232 308881527 993201948 172871116 987477198 62872109 437163494 628246250 298826321 392546002 417920963 400963787 444986583 498624539 301984841 703114209 978220762 618037688 300933361 17035123 236810519 461369182 157108748 241492864 925316679 910498354 852293118 894284966 165356463 251619740 448449108 531023301 983855439 190342227 948371719 250542961 902240577 387545391 210717047 155738188 594647291 780422794 320824215 651552571 384620178 798133552 62199772 536470277 723280677 887377355 425528004 575328523 246748847 48304365 799670131 166456570 389955800 718803986 669101686 579435758 113275690 485091159 169095245 842095398 202836414 51006097 220330428 843286183 909533512 365339044 298152693 833281423 894591368 737020893 979572305 466397135 673269898 698680709 861336360 590493432 585851329 460581560 537656396 652012194 917293204 599590448 307346417 113405380 882649036 575265693 974469787 4765779 825622729 502717223 489232253 310357160 444691712 982940755 598877856 28671600 466603906 829498277 389563170 279971228 296889648 199607727 569689613 859632741 696182877 983850918 146854058 262363002 482610848 480718328 335419388 75311126 731464428 83233294 825156672 587465987 739775273 438951692 139409868 482904751 332955725 456960374 551947302 627246665 811318931 217103145 494841581 590712502 470477232 33431797 8880530 660292197 725111432 405761929 255457650 870312002 269223560 384256422 328536597 280705643 399192687 920384947 48463565 899680898 743661887 337787604 640076253 70642096 158134312 639718872 563643846 238386311 848848646 604856057 55900224 264159324 421803750 408683687 536213629 164794949 995050345 163095264 808609417 664242184 974763887 882124062 262686569 614232552 726793451 52081102 180038378 64801423 687594857 826852218 718396269 86179210 338636011 91605161 965123517 381150449 394805325 669361947 282036535 99497559 62264136 50530667 906258668 17559993 455987023 730550582 14109314 40443515 353401216 857851943 344747002 761288293 102525681 390029885 833843434 973534332 297229627 40614335 129142053 325887789 162542991 699902774 349097976 974354474 729030858 929165266 481425623 855310109 377370564 738489949 81457916 507948848 264782572 709098537 695744317 652097838 734239292 132430820 682682511 459333003 644869550 725202243 345997660 768032060 799256647 331117176 976376467 937194172 179215559 625161199 190051140 861691608 671377645 621539386 184644218 389915635 367887796 847647616 344468442 845526947 55684270 360954127 363605070 147312159 729357139 759316616 948352725 505923280 963025410 278608218 966200921 349891431 454443986 570807809 20771841 99647948 254714319 613310269 436630293 700097522 671823151 773050365 489544523 936617570 832160250 42337496 112316427 92048626 248187421 664064518 465178079 439835667 621413862 18939346 155994170 137358711 844152907 814828425 877722086 604251978 7219308 557319460 396561651 600130895 630467508 34279825 458674229 651980278 908400010 260382518 801135960 347988351 807074878 224871756 269042280 362011370 304268305 505660902 508830775 54963256 808348773 883915107 485435455 915304694 746733805 975164171 263926752 994985217 236423608 661781483 491393062 350557186 295704491 414670807 759624881 775042081 875585653 713657500 664167700 136506283 239416639 636499047 789669531 19370172 537924512 86910624 842532098 283652846 117156112 914412460 24869293 561722733 894625104 699499814 947149766 56753850 374198449 542215240 679880923 644112954 470915644 118119478 813266443 712070958 405821553 252095558 564715101 82300600 353930031 531971600 957529781 482068161 76244968 793479851 67043263 580990798 472355722 332757649 694208993 10159929 367534582 647832893 248690018 792838421 886031147 217318405 151082401 918503713 260574273 457250103 157976982 798567144 281607511 186127125 883823348 702044142 369950054 989330459 815825829 986121812 396420493 350173368 547634892 590313891 575954347 454714387 523472797 548066588 179488559 546344188 329450820 957804718 104140353 826899875 145425565 108318698 897087153 107839344 448857456 358717985 375853701 457392358 741264624 590460454 249814086 263595709 539805053 261622341 416314639 614635268 184934236 964844598 726572447 711379529 976545826 750051915 937142430 614510235 148516486 123480757 540477752 810414069 108808214 959814985 668981237 621036200 520485896 488233317 390991589 52536805 897058210 964710474 876662012 276246475 936502257 669943123 450988294 903908419 3096524 791391605 171911537 551850997 596005955 343322177 196851728 137525763 871203215 540534112 462078216 576997379 74943001 765792046 548197035 487435307 885534414 125246490 780799422 152752377 377211884 673188535 392826891 728762204 289869282 654152370 962176671 303069791 733193484 16976551 819562526 159853859 836447944 396626893 771116280 276987348 598498608 101549031 805556563 252097792 741843155 253380876 28531110 820415010 470591108 475309092 70310882 420037650 738576701 491693897 872372179 794141549 105782698 390984422 648948546 658844747 654804027 417980795 332126431 28820383 345059828 739901289 78620932 283799010 976259334 23362264 83457038 783729506 55234114 384849955 902999790 992285147 980051445 602376930 936944916 145349385 980750552 661812867 692339664 318956838 325280910 517167394 778802951 93371333 548385680 525651650 740941796 646385330 4779047 258045776 4104975 77879817 261781816 618511504 86996762 441154017 268945941 192673960 363606758 598878549 574257812 439444336 932346815 241887425 94031749 145108619 137407347 422298424 653624352 904554626 714020228 946237325 230806604 301815389 588847659 685975163 475502467 995222588 35110481 372985524 112788974 311182292 295672743 289204089 221622027 740541332 66236875 437409950 302503253 60933474 358386861 104336378 184237475 667822311 132951670 105347391 917781844 39534857 177742605 26585361 9166036 101934226 244670099 312607027 429836134 116814324 937351093 389082682 62273579 530146738 42085830 809653220 306655811 756171610 258614492 638933883 362845898 70209644 867665367 679018669 311670742 429818967 609183225 107907140 642135012 569119918 883637545 562295978 65861824 332325666 287724868 679510090 292661499 745247781 534788499 413390503 181659599 773072473 998889539 691513694 411466984 756849736 894653984 230580429 53620363 669451058 232907776 18116591 657998684 939418916 413399819 499508536 152947051 358403101 28756821 915424234 700749117 494718628 38769825 479278632 773229905 343300719 814273200 294697925 607521027 104183399 518877802 442569790 371028357 901471643 259105385 840063323 488484601 595488223 761492504 899959638 710257822 362571871 420110085 98110863 283612735 641258270 689070989 468315567 226767046 280005259 108433164 264891829 695678790 332981676 912647521 227480228 151153314 919726439 880676845 443207234 256316835 88106194 186180966 407922022 860858975 837480758 163599708 550935139 699381889 465859581 937972671 120127607 956375067 829082862 824681854 354600273 231255749 264702256 528793970 198437451 892299195 351409179 597688005 139004681 162482642 15708674 833822401 486536901 245478946 130736087 231025398 895020130 880431698 23893902 637939475 501473200 512395636 921431224 780949717 468355093 34806700 889565184 272332832 256002668 56172305 601988373 542635592 849184194 825606196 186973845 504272560 204898896 833415873 473905643 464988446 975215204 286056235 236771440 423694147 995784106 736856911 986059488 405261634 582362914 240657886 972040860 751400340 233969174 992992943 276685050 222869168 16228374 61494598 733301859 247771270 177485261 841157283 684584710 184742600 969880071 689563847 459755688 305139153 18637063 923679064 576945104 852408840 233512489 160290604 367412430 683889188 361159283 54073371 416212913 458912123 789317994 69290060 855997079 112821591 15357969 596558453 681081721 484251670 772551978 47753468 898793120 950365390 883834692 290762752 267057314 922657590 587920968 47454553 252020668 735423766 355289584 754782954 553794086 129232616 127717552 585048659 259483540 483002269 147487749 250361811 892798511 677919442 161380598 842205193 606037001 288639509 634176617 189640460 578896453 129213481 135598000 406691671 695788573 258380357 918414722 201382212 969300173 935256602 348675246 673094421 603179734 60378492 929114147 883671464 644677581 960844729 406146006 318583078 299363328 694284245 501232859 159327132 413645938 922817214 311908542 381652268 917767511 570351288 307400 462246928 478951560 520722456 162101116 969288521 648276559 727613735 312842526 79443086 35766608 455697245 47029954 748123500 703078459 37466150 393118311 358328936 696183410 246294578 275639805 930046267 567796131 141314642 638341900 672715945 942968122 40212281 184052132 116929193 934947144 754013563 154423924 869645847 317764575 647440760 976804839 881257948 54441835 432437683 575935394 512057742 653168064 60691748 483675376 21646501 966005285 600039476 456951483 317558094 762434007 173955895 631621710 35470451 664512543 225402912 290700296 968253939 666274606 70740044 716859594 715628581 332518554 281609274 979439844 90856131 977055178 276492976 225339716 501666638 82504759 205090061 230838736 874433875 249197084 622586217 771972218 423015865 873886261 77128940 841013163 110172624 882030648 838428788 524220000 362581668 434609097 509429638 608345057 14674301 308966394 872489850 466539003 441456925 195436848 780405868 355147352 179106566 390319448 282224686 150846568 209925796 41967791 406980951 379499681 679415525 39128206 478788317 93386020 481611856 733269784 273813650 936406064 402472075 64976382 174623542 29620615 419667362 311947743 608393469 547173871 392686777 336813130 655392172 940958357 302982991 258096836 722910616 559863322 838226786 816447635 436706805 827720395 375598111 130039416 106758322 100076609 661158633 628237774 54069621 234567757 369102020 915187282 22037547 470301420 427957230 26544024 220004289 955462785 828489225 613200454 207927980 38981146 201023565 408918598 649005631 404421304 949052477 385257374 312247041 698054433 628218621 317131209 337991861 974904330 871161487 468691116 56461263 827573201 249681840 119077411 534887268 722501997 873218465 821999991 967867775 241282208 561396260 799417756 554396692 976189982 434080903 924606444 201274917 795995008 652037094 174512289 347105976 435196241 563759674 15064254 854859817 282042245 596808600 439919628 138506043 99668749 77495253 434891424 795223188 524663325 385169340 920233021 375252486 503958059 708488232 413345707 800380612 54554063 562817845 413259342 592603751 335255883 550811949 407361897 220299692 642483165 391607384 885291301 20379286 27295814 795352227 348483583 658759794 697758550 907854604 105975091 224747441 106429569 947825099 292387168 703885243 477596448 310540137 223670255 446604139 206016849 770655704 784164657 731820151 106692684 545843850 452540559 237863625 788491222 237339312 508890935 661963255 726093457 341372371 895439885 294093251 516506932 143685217 429269786 743549066 897769466 960502623 404905622 331994386 89426499 368652230 859922323 71290366 100321653 771371585 776597852 361484173 78406362 745964057 642910511 325668217 856738044 339918466 885969969 785469269 935475993 600208048 579100944 365267717 18548771 379139087 537031751 418043951 925466863 400754358 406405257 786015192 417135861 688305291 112970911 625076691 75252750 663810421 847984419 391216113 580327300 351746915 41263311 810515017 786342612 688663043 282850458 935095600 776522781 597036524 594953489 95619382 638071576 703905877 279506950 857342555 725527982 741195010 391265356 906556624 485088138 695616054 341753985 308013447 735189793 378880075 920440354 211040660 849510207 757867745 10026005 515951749 538469752 87439364 2350743 264562420 29309358 429118142 554267305 631646202 258833463 739577616 90732107 82478853 184535930 821353980 839004146 819553147 506532617 90988197 748118441 53804309 183667325 857955710 548417428 782868195 657667739 903921021 693242856 392631775 602612545 788400111 348422396 234028099 224005112 564857135 392775149 278263288 347496432 911565850 642202160 35776916 525285864 612710985 759362260 423553975 558826715 204580428 555680396 798540167 419137260 894438272 987037018 288851900 290575724 581355646 906601838 985701176 165484446 492320830 268077967 551896112 752788665 363719185 120856893 189231451 865494638 740622754 216434406 595794382 140525070 47124229 920121820 448909566 908031069 670283361 35929817 72697389 562757884 353566343 219029199 438913158 835689467 508819017 562529878 880909661 517439610 984977689 396365346 898409656 875304974 477892855 959305959 745927618 476325834 301399369 515151586 708632016 992202876 26791757 120053354 969251217 7082452 871835570 653026902 88856709 614773450 758690139 607857919 918679892 872850873 526312137 331270422 318119052 35285281 593684292 583895654 932867879 807466512 509011721 85402634 479965746 478377337 272084720 953357259 365353616 156436217 119646367 843408547 55913657 552096892 113002758 386685070 800882029 368310545 759113292 609822367 644508162 75688462 234093143 83523882 718051862 155648167 883745566 392940435 470287487 690346030 810797749 527303905 668541020 872608654 844870970 994458480 842452840 861689938 686479236 112909558 488551488 534612666 123145645 717247732 894451677 645140052 75303974 154848579 962046129 325117041 982155313 762896446 130169106 183714912 101524908 141253222 942115359 609452823 838748691 636686169 841196747 245524229 833640872 397644690 590450000 313821297 411209220 275693878 680084081 319632920 119869310 151643383 535027504 580842920 677980022 507422091 480309413 479652245 724599157 438226399 858932214 294925742 664129815 267552109 305434378 26681001 687294423 959194429 714983184 152204729 792793610 613042342 169506975 690454750 917656680 741233723 800747451 808993567 165593185 626833414 519636691 191025822 528168956 983517318 958518240 985849343 326668967 875060665 581138582 532957303 426340535 198726772 669016343 591329873 848359326 957490976 350083534 108716462 257095133 915034234 683264870 380216592 522722121 506271999 565400196 584705017 321898055 295440279 793113657 429166459 345927143 260223203 308520088 952899111 740587050 945886506 534740974 172908580 679700139 12990679 783194183 940632341 411245008 823471349 311127186 735129353 502398113 350419340 38526426 333508534 552500493 364278293 526397172 638331497 543590084 617434559 475677143 566312595 514852202 553751247 131511560 159552345 874924965 828951539 928574620 816040381 768654943 393425916 471392722 287616014 483643092 289712712 622959037 835525693 259230943 32223299 481209153 659106215 261758279 94157971 823602849 455099175 323300542 653141615 124776350 953023010 575994108 669040908 318759145 905212955 12188438 69302182 730573931 640446800 999618980 414312485 326485175 169956783 918573777 711891038 929210669 315737970 582555143 698085256 231835281 10405598 280261039 637638406 883636593 670723500 265933616 306352003 326469979 394474708 216104350 196990340 192469034 459067224 605651321 104534891 903959572 72017523 655706856 689955208 817298687 791036682 327834646 258836267 105428448 697681624 275661392 766163095 899497702 578287256 921425178 887551331 661445508 860453852 228484457 46773158 482519319 723482767 905536081 690405737 801394745 993110621 266058786 395308721 949159638 336609977 741545855 196656595 326869135 780086294 529370804 779255415 340045769 981632297 490835964 19023822 348815404 703475110 54004461 386088281 200916404 62314603 413686501 309617345 564503301 318401734 686436811 523761249 397532704 521486008 424999082 251219305 570823933 590572050 546190016 276858989 154215282 768925812 383946211 153256819 494020276 630831928 631526118 295744545 447393923 251914655 160579442 295762904 147763154 408982541 943271864 642964175 359825853 360973684 499839883 208055280 906106315 470790171 377483532 216732303 582153299 133774522 358302180 490088000 7728909 556779352 787138976 931963971 433204621 496740861 240224135 568119796 559761389 628846518 873500251 994982022 292451126 452998314 843681251 762611645 727830416 331148169 861687320 7141391 356406423 701051703 912207412 734571053 267779005 181344427 18770424 374931075 794704518 494011792 453830227 376466877 65421326 762783338 835789700 280530102 121721798 877321691 469672450 559560696 644380707 328210577 504336297 611684789 265752798 739099288 135537844 192782279 987507694 312915540 168795254 836127995 184289589 417466628 165436390 214821930 504123529 479165645 969097888 947069631 799605715 293731969 12887817 39701672 699185559 23311882 874724341 701246685 93643881 945032356 609818583 335759253 873542629 462099907 424141008 746650306 836641532 300368360 664506214 718539031 311253903 876696131 576064049 518427728 642514166 588314831 519409364 11543889 228018506 363606176 253273188 262676950 333188222 509145739 964819322 538181778 450381718 833246385 162002719 241376564 532467353 437319767 272135103 898346371 872299868 379917525 174164414 472933659 946184675 59978454 67668045 751208838 331154210 809263551 752883828 231182418 204126730 659617740 736662781 754668588 677336160 449062703 659577181 654128286 211834342 944916828 543910209 953728717 219993040 183359820 818435090 443346157 520023104 830030999 788817868 179257221 501367059 512080456 555635929 350638987 313824505 905655696 145967694 902293794 446597005 614022774 823026282 692127418 651655150 757477367 968637742 186167677 262094628 887387378 96514938 21321911 371662366 785812398 781592021 29157807 467550533 517539220 366136108 987993155 50443804 357825290 49717875 136734298 146815910 439256016 589930988 274879288 691497103 433875036 998077196 588813274 509415034 490981165 1075039 56558167 474863709 649930476 405859005 207471483 687583638 83369129 34609499 121006830 198486473 236337871 790357618 610990429 904977550 229417437 820269038 68601304 526964758 390276783 118160345 812056628 819614781 189249875 432541909 231413877 482340872 869572064 405434187 344767491 697796719 381742605 607573 841649083 758191407 782481240 222019293 483787529 586400628 17916619 894377145 713785116 472721671 587572808 890588118 774726846 647176904 489840491 594565483 456189426 738625401 264178910 173138235 175690550 43078983 639643936 981357227 173959320 481964334 993988662 107335016 362757401 144118793 208671528 234169228 125977500 450614482 168165342 914145479 418593584 205000795 338220747 862204410 399164139 257129255 478220862 996422990 668376635 588212850 76883467 917477365 166068345 394885148 843946463 776324756 716828838 959226660 785531503 800917501 660531693 363818979 650918801 997672649 953462183 954437045 416976626 792933615 220587017 799295271 382972884 85022286 841276244 355782911 330392572 157365372 659308010 736744017 884683201 736872548 148656934 651545635 878075671 845415491 82263480 307049867 957539530 658863795 387436591 429350568 781991218 182920241 475855821 668601639 735159380 736479740 771602828 838482293 970598322 315408661 46752434 664937420 645701470 575398505 785639510 397910462 535379371 596981364 706784542 582840348 563934205 221447386 963525719 642211581 792409235 380656703 578167702 861710747 565002883 124661208 512265878 725665484 394858748 808826527 24662600 505409333 298288543 757730452 291170742 693204853 95615913 282056046 716765239 794262493 431991966 263230844 373124897 201401480 184660033 973144939 51924237 1537435 702148738 963831227 619375266 628936693 446135056 506488441 820665618 294878912 775263948 595622628 151745239 355827838 656377201 726250610 74448888 728448115 2362952 262334427 142961775 733421933 452671778 69963589 641438396 998832044 128822246 92994248 498875916 618802684 815067618 395124630 80960064 773305376 806767792 779010557 512670823 121908358 253554848 305599863 779997934 114646204 197866378 810390774 585510165 43514922 783215240 351832108 157468136 61842456 710989513 288319646 697535095 717230272 381342524 299816583 366751413 500350192 318427689 20760365 921237680 567664856 469846301 274336357 437291306 228743930 351292610 437316006 154797384 601470583 209264885 298167977 843780832 710234368 9926062 620733600 672575739 879086211 317343149 27793315 541195347 68079136 234620179 353106697 343651116 125351021 431806217 71875101 391654209 240755661 455910610 90982963 436167675 776123127 658716111 205409740 105242451 739877985 826823156 43054071 97888895 561868995 421343285 227074488 905109050 484562988 481925479 7995128 382285385 316271863 12547978 30875197 484079920 616716025 883351313 334751318 732629397 255862457 520955200 649005322 159921777 21294969 885238942 954398253 332536793 431007257 498588353 697437851 56091952 702247422 773379074 32505322 547879692 740254936 378895378 131512115 313011225 142814758 602048715 229862819 443885866 787476926 925043909 146968916 938575459 79327829 406058917 382294184 471436786 450189880 917952236 62796159 149482564 34084617 715093430 220545273 115771278 880845622 689112022 31235383 800932352 389194774 393385259 261108459 581898227 35741150 543986156 929345879 715509501 469660813 162397779 910397468 109867809 162658370 749108483 544430017 451365650 966129783 633921546 979867062 643544110 826237191 238917153 385407 847058504 299394139 567371250 375232883 864230885 392317313 801720224 543228286 822309994 218748682 891191869 846498023 58928862 269726597 363681697 626218848 598139774 554130982 657441129 727627072 396161418 128966309 106645656 572388058 179896650 902209144 634041652 986552401 639551519 837483641 109355381 290782618 503973614 166063292 660918770 287341779 744118159 848786128 55104033 475337035 201067657 266784242 122754626 429100951 118705038 328413564 277258603 78243885 802920422 897335279 237189482 53167752 13377386 580076252 417200896 855755443 552125825 493452965 836807739 731931125 154295522 847964470 607463868 663415327 893735016 495348705 308111678 888646854 67319078 792973468 795265637 853734155 804688225 88572441 299184864 348957994 940646017 658242774 770624240 113300714 915417538 914723197 944255574 690488740 372111597 270728220 51193317 733730836 92888139 495760298 962630078 139305834 749094566 654669788 279483999 482793141 274134335 970490870 325246107 49860817 94534051 984398071 617077637 816673120 601084073 387267010 422078506 649518046 676916152 924392062 70385784 150705653 722371747 399999611 552141188 627901022 437156684 10581467 695450719 595358397 199997940 75477260 788978792 732976870 518865424 843682632 322169635 294896066 718939384 499886926 978228163 313886698 695892250 656750281 117165111 65674656 813272681 922000072 236758018 412045552 668541497 628271962 516569080 490012408 17346696 726905783 723080416 265649120 444590681 86641667 592601575 825157855 361826852 143127954 618953561 131349502 982806326 346527301 352056362 182484833 605108657 976285940 561077777 769236138 20509143 275251263 947471317 993723897 429231713 739610214 9878090 253660680 765825243 573559072 830848466 448991853 243665366 634792448 724076778 520476721 394186832 699871316 576466458 100978693 794533040 127795942 98497765 762358654 57813085 729275334 714565936 714363192 820616679 282502530 98186043 422195265 989351272 674202195 187205474 171033352 533855620 909414889 92764848 637020860 229635595 44192267 112526914 858522629 237282911 392126788 404270320 675435387 261854023 472691869 960561818 274269433 179156364 534619585 213934418 496047842 265852837 937461879 377288582 172457849 579765151 547614715 213250515 773905090 635109348 411679953 303469791 960816810 359301504 32104809 486604662 764922453 638840565 970055037 818505540 776517231 645346129 259904825 531961645 770791921 803586574 706624564 779060655 256912357 671874607 859274889 607168207 358850277 690893944 82314400 949266014 33338945 781673240 122829227 729181455 120610825 797626791 501557908 512943152 474095851 863658309 264775581 172524149 843467195 217783607 865223255 740550811 969887860 333122475 137711943 708238765 426973624 274075073 794097451 547068336 892256585 561213648 578954118 425139926 422120202 826278339 897075399 624782933 936765739 794059548 775060702 666672221 216737764 466251526 510424802 925445605 341392496 267956673 680343626 15671576 791500483 945196036 742968778 419892835 178694435 823065546 962440329 234988724 519119809 63617551 645649329 877418707 280243076 90136610 812371943 371933451 721036053 558257385 921445738 772286711 860377607 840556673 942355 415506577 940594429 511718640 598730265 426699314 205282007 700700979 615144747 623822033 992675651 720057694 191646837 899303535 352328314 891152731 627224336 793593993 659067841 506336402 359504161 27368065 673104589 928153576 811611898 593453026 880949296 380704627 83929610 802432063 3288133 530985203 391571433 808637011 700488503 128322786 722410984 466743348 992933358 169268871 167855406 849320845 224680862 744916422 712878362 608750623 272688517 401687940 323396576 502988890 751016407 878849862 324755790 689361797 362955537 59615222 367864485 775371941 104308518 739324300 440942743 612480741 905486475 69321079 530340390 148488814 130455419 506048522 106739245 257396635 638398756 208551994 282641374 272489331 717680749 826726550 705872724 26883732 534624855 252259115 769829368 587171092 589480303 825767445 699317415 635566555 773645978 949685860 296498970 386576022 469527339 38443373 231902041 845328116 294329606 114387461 180011212 979850649 409534217 519217798 846699510 655954091 153773982 390452771 959733833 598413930 125662547 103414420 147455038 994390053 516038377 732810786 849727199 389461871 910356626 319543524 609729627 123159607 411735090 209391115 690345938 324593760 475879972 434266610 715561721 123708589 387322196 930931247 481917663 504002948 639990724 690847645 284081188 524977066 197258679 586750149 388427607 484990804 811121184 139340672 830718417 566072928 947317033 664277800 99835434 36897454 278065240 230583080 329304408 47946334 857329178 595304304 339866340 315720184 114171464 359468308 332705791 392691381 265160917 315099688 311370679 831761913 167879540 463512523 976920584 880270095 529096395 961893190 289927326 848968833 170960561 458665390 830353079 929353458 44591673 87563276 499750346 982115127 187902230 76226981 779402865 446436556 720281007 904780712 653094486 416966420 687235354 347793089 518618648 528683436 295766883 318209015 687450754 109334615 996982940 744356971 566111696 752594374 656402138 651818583 659490133 403709373 687907645 206675665 48805508 790118025 600939030 70610081 725418865 171906567 203472256 105863490 299742659 863075618 303328770 693839287 329730057 390930908 341553186 407403188 40680358 311801963 947806396 424590312 324852784 295448857 515392418 719350254 289853187 242075322 589236016 525448568 431185811 337245667 489256192 102546475 477377213 459440557 85553671 261843025 848205412 693792557 838926864 736306847 412784829 328029869 398753436 818637794 611896998 156569977 373528437 97980553 832830367 754131173 49710441 924284670 767327210 322763105 187435520 764942128 482372523 120983262 754923949 107788442 388198155 150342828 263112460 589509749 629775650 802915429 778954595 137288898 671034847 113216082 976551131 283700780 211510534 424088335 322042959 315678847 618469095 454428195 345441102 736306949 207423134 424210216 824708061 418845734 848546601 386379894 675201733 694366954 159132341 863787469 861465101 69009231 348687860 877673075 195929414 648143449 454287091 712289304 781837217 268459647 407512167 89540186 222826366 495653627 628723595 160339968 661241404 253430886 698511357 583541182 47716728 357360173 169432838 126617943 990582349 737165448 555962685 814036311 660247322 619420647 576419766 480394100 749486029 943693906 318360393 798041664 596204559 550940792 39179456 639266695 346311711 342273889 643631588 546770174 173436410 517320204 475545250 535460405 324113860 123453821 292889614 16032914 468447511 608148654 483414826 139844037 358890266 322322084 601434339 254648446 785885185 575778322 69433923 66763030 791862482 708552732 20345845 301424633 544859328 100400543 444233779 439884511 249505115 705423574 909096478 183257177 321109976 268261905 872726567 385221472 850121318 117324529 828928101 420277662 246334066 187724734 798213826 741862177 797183514 778383417 701416493 891977452 577505809 177470209 380525953 964405247 767170343 86753977 66200753 357005988 318686912 402861296 509823853 525028945 173955158 416509106 484937618 481616233 830659874 304090341 489113065 972997880 232809601 198534573 317259000 827796915 367003038 465452355 722865882 492338460 553502689 115329530 80883458 819133789 994833718 836208913 104611781 309975088 81681676 829939269 80146285 145245796 314240254 978677664 307929866 564922889 408400108 163654672 808392873 991366160 257941110 194779471 587010802 349834260 989331249 493277515 764125054 96061369 609546901 869314662 810783341 968693523 770750645 60195813 415079975 6969152 421955672 462502534 385865630 713625550 892952063 26132464 919986035 938338842 211868783 484080473 614329164 70237873 4550186 773512628 87297285 139522285 649212714 124804680 370349496 629383608 229934467 236812374 812097668 363799529 512202696 177420150 608949307 882889114 665418828 857034150 555472265 645296294 969863092 429321298 654831707 521816178 456050260 81832177 830022698 960468859 841642024 333249655 420685339 991480411 987022299 202427687 262387737 268151612 824226790 958917360 786485000 136661785 578082851 512849095 439060773 167997168 805951147 826311886 270276015 185577347 235142618 333101287 589449115 429476180 81728306 557459071 954958104 641463012 940025385 285911217 424119987 184879628 11475796 28682839 745226481 935863947 857448259 535121816 389837886 536168522 549729827 735015839 419436607 293535930 71914453 99542322 346904175 297332187 729560528 681898189 519028594 48124699 65223158 270148553 41502228 591950884 729400977 127377227 175129558 168756448 665779526 747744511 933645368 137007975 464430032 657239431 193566148 403735370 318857235 165089916 658188389 79065532 185504402 472038369 390305022 572946096 162065354 275530889 908009610 14316542 61758295 193387704 345775043 879473610 704069720 473791820 11018376 722693384 730782255 435775736 750748355 694132490 947322799 164778717 223949407 917631201 253987889 698833363 877727188 849357149 627908504 904070581 417576341 957825594 450092070 581904415 67972535 61190338 675596217 267352418 213095491 239846443 939586919 742252053 630643353 499859812 622478836 740262620 761498634 799524280 168168151 521811559 411444535 697098457 332936999 488742799 710246363 746597597 936913553 299155240 925318638 945931216 274832322 992317943 97138780 353243471 234288936 529429697 911559786 298833721 210244083 946011427 307927126 315176957 962343167 48571853 431447268 220145543 911124930 769931655 421662724 959897546 715821313 77835768 491744327 811597664 279760266 971826558 284742969 562861607 80086112 295581286 591954310 219981662 345458633 576268902 806566947 397000208 906765008 626817736 535937439 706521937 503330217 856338505 896382642 634512270 277229773 829225763 32348924 302393008 974016687 706223174 907278163 897731014 135314642 641011821 928618744 32027849 687653415 757117681 732174697 80635193 807577258 866764575 142159866 338888589 236463125 301655426 523788674 526151692 296579369 246350315 578292640 352016124 796640602 351082151 989924256 860525796 658741982 727805956 279222803 636730029 923291627 294874930 122476530 46032866 272404781 850957624 633822188 353994191 697159059 95184912 993990709 788277796 290030011 853548400 272454356 241771856 640214058 144473820 929546865 272672046 879085382 407108838 909760772 650531677 94893774 319052382 691919648 702974102 924775636 845516041 191170364 244397568 406549869 22660268 430916525 916990690 724997624 64859545 877173287 935405007 969631081 54157374 9471877 709358499 991293143 985490500 686093629 412320565 629882892 641512107 774992993 191555397 36954823 472718108 417106662 480842570 425922532 837772822 405927123 641880118 74429461 525578297 369855374 872505684 255020543 36804732 402409828 155596586 500814919 521997051 257686059 329145965 98216856 321382233 285466597 260710791 106830838 912962742 769002249 449302270 743060895 311991195 704657188 108526052 748913998 327974951 363729646 734458753 510589918 906143396 868550283 879908243 610973290 565571770 776881960 701601098 998513340 529883775 620085449 852174251 698523755 379430791 989231555 534793085 722472180 549316562 727279036 259820699 134557765 434260308 136829890 561596447 966385900 287485708 294006958 884593516 273149388 539019027 614417003 95136526 282419028 503366487 316400118 120888901 864675514 586639367 122729620 582270451 443871048 177995613 746030983 407188077 634650501 565905428 660321331 693873415 261521810 819079642 199263911 578732704 168017891 673214395 936717859 30777148 120336266 866879350 428093808 1524663 905064171 777525379 527164797 420216903 235084641 676940055 715645462 987439878 711962875 384428113 603217421 976327698 884870359 912036543 980053120 931376167 891725095 913458513 208669398 584769028 421580909 338169053 931924075 482893389 974888151 332575255 29730495 294473288 820405441 812048978 319244136 993467659 234894843 941448331 148821202 770723919 333223449 649251477 34490796 363920149 655337357 659733967 782759062 668052056 950509538 701258969 996335807 556502775 10998823 995588285 981483054 494914448 918672364 314939025 750669232 550208197 279593955 438475546 979498144 10136016 874542294 581625974 898116009 85807693 945796440 54634101 259736057 368833663 734547547 538606325 416434857 89929492 86145234 773823906 109718302 563674797 461540334 278760137 993660867 429784156 820561327 204549183 368056709 531474026 106222247 604568822 288660593 985231087 643131017 932300441 551617486 810655701 840475307 518872775 153659819 827693560 407591077 636076248 51829948 26491323 406114963 144061943 788386969 559352257 540834265 899809776 156158406 347756161 311588002 222728358 763225497 883115316 316397147 106791703 484874404 189239951 322299654 984201324 380432654 336490957 413032406 913338935 209068416 417542798 553157343 975447863 366168963 561660079 799018176 446366000 930270397 9493853 37415219 815925461 683566310 18088439 461723815 102795753 854770415 213261826 343075068 2485738 978476088 572923495 489368493 852268878 217564546 965816071 280104261 127226996 138307924 456644700 238367033 63164728 762371798 626830898 653191821 703276700 56422597 506136235 229747379 538225129 311766276 260633678 360199788 775130752 961033716 908698354 24660275 115874934 715400905 789039190 180437800 548681471 835420445 981805890 790268740 153287509 731961865 195015289 256074121 354094077 992183184 347989940 471980577 526586716 49004318 755550018 246091172 508496371 414779471 81775636 620009459 195402309 115060297 384328551 142956623 712806138 107631446 175391386 721017511 9877928 113037944 638859768 399589289 579448701 698677720 588993789 633792349 995003083 806467585 635115763 916495271 64420004 60797867 569205561 377657642 200655321 619102070 162324551 682497666 886162052 856762352 705968607 504179666 102011990 256249981 381209385 927786740 457799894 602681522 448305230 917395913 745893634 760321902 118733858 481512116 846946838 361916717 933255200 860372107 667772262 111483242 44610839 280647444 462391701 850453683 35001687 728043575 397475107 115938584 531102370 593551495 132860668 403231096 417103743 266134835 3035483 782948275 244668850 292969045 734531797 453253542 297095082 538841140 436430058 79614704 316148405 488026901 55129694 462728310 953058346 323723514 815316160 731381854 923420632 64601994 743010522 698249413 942381604 249712590 660061425 254470468 666764938 486570871 769277337 837751732 723663794 733997257 768145131 222794404 40060402 187325240 198543942 680421283 587189330 184836372 981400154 617318654 184911541 49961319 971229467 475829661 714548506 756237651 708513607 535035002 263906321 988149780 794170906 857317670 150425159 456380977 251988699 32918729 719920797 486005119 39957892 72677752 893477852 832301125 967796689 181253817 77630204 302938141 124736637 288786758 537493474 498017479 776638783 627763185 177487760 170849150 121781162 694686576 122236896 296301611 791287485 703818384 862797092 708471417 390880764 639897298 254203560 258669420 652278730 322973220 471283293 873673507 354603484 886502042 15344276 100099699 984693260 739421548 147175488 223181419 309840676 97716045 251116357 939743564 767103872 808880452 818711435 670983104 269992806 108828737 640043595 641633967 238421220 518116698 259510117 796722125 659850414 524547722 85552018 651844883 160948225 691149286 149383815 140364233 431481304 746055245 806629003 35241903 623152259 876094816 159813981 934710216 542337440 212386738 835898615 366791162 56148442 12906083 165797553 475972177 209709229 132904683 914153126 193031157 690753477 784368127 437010478 942893207 426679351 983114413 891279934 231721446 697148710 59749587 181269897 222067137 450487908 930244989 621712895 366461037 520073295 762237367 378764287 636960596 25186828 965651936 884329678 401767684 700469211 928875129 682790466 191555023 725265052 181100717 65375318 671480140 835692031 681765198 121756001 869189503 420862769 535486325 391960966 251729497 689375300 227076142 745261348 598157212 9606790 762889769 810479838 843465629 799259646 950496233 320039623 448189197 481769955 97311114 372544321 675381014 127600899 333293647 976435634 73074889 144945654 881689129 964173723 484187638 329169223 949274145 321373771 282086542 179591557 87092359 392391465 712023857 720276715 138648793 710100691 397824173 163651595 588628567 946814300 555769570 518236256 931112440 769002548 778165666 270852055 873957334 832642786 703154075 407135915 515049890 664323678 380608081 261318029 521481285 2984408 82476003 849784908 484529451 115160009 214002646 446918154 627824950 254334373 54903316 205619225 701543265 549211976 821833864 663332876 876274608 411899222 794750161 842121651 860545209 773477279 105882626 239974190 726844329 302215623 488667272 93426060 11416201 938304470 464619968 42513822 862384458 682644077 305540030 901639636 355470310 302108857 533650727 520035363 20828865 662329625 288311503 124214777 714462297 904149858 570336563 914147578 775516764 202500797 69675507 744788302 85824 827543535 165137252 285277787 217342483 206446116 513499606 575092961 993341756 556122201 718747076 977059810 406875732 152406976 76813976 483357466 687521966 102739495 394899622 274902661 788387623 864434792 303235541 225670067 745984491 88581415 258197667 359848411 696784455 506845885 113823240 95643218 554127436 399799594 805669084 472683281 979259708 284062271 839977709 875425819 616380686 982845900 849093117 355798617 388555360 347897235 689349053 855653817 432574342 800733993 910625178 887868726 910958566 821724113 819610305 937298366 788109717 820734376 907051897 5333726 498494247 520801195 181421333 684459083 44018221 737311375 40207454 221981553 458393082 951054824 501226037 387410190 325901133 407641591 407714707 742736125 61046525 874875819 558296743 873176575 124987205 929873464 567828713 265915151 83553538 406935493 39164428 289540629 320638652 281981552 344374937 355745082 260518352 356660167 549860102 559831732 9732190 370481328 372289908 892833573 763421247 948451983 471116273 381664570 475341200 8107124 175762450 546565784 761185847 337047556 78351738 975870163 582262589 763638982 627085305 935671603 69374700 678160869 794115625 556432888 984200904 638592897 217035816 87435773 384853384 556412929 272407129 769185117 659940755 119428827 779227376 31610705 143484944 292341007 360230721 424336755 484540382 747941552 360345768 153412433 174324150 850655812 77785842 775397203 770137717 215294720 292488719 481871135 959871088 879952330 449331347 879975352 93583607 831413434 59274785 253643322 796161387 336054910 418166445 811988283 720479635 434619252 44750948 946600874 193447452 352185199 339853050 390949886 513023759 678473504 79948514 919827383 164767125 857781926 614941063 53309887 326488424 332404339 204759114 892057623 6928681 417696778 304549525 233079022 883526782 204509966 329847745 904519677 436506635 9262283 984448843 311964034 512160827 543950325 141276895 360594515 788627208 214722288 913331314 746758221 965282597 498467923 285782160 98833656 66087539 836404025 699165723 864002303 303342535 258208159 861183010 663343749 235122272 827869799 621353558 685010760 861789522 203650678 718462273 826432115 808631807 83749933 548580511 730084228 720120538 324739001 648163967 103013895 442678743 492122152 688370845 372472733 868368509 246059014 309943108 188636320 511926521 457088496 693954943 842363130 544875876 975320005 352836369 964085026 658450114 869210270 303922004 104841295 119068540 696826679 283923608 81626633 480128265 743420225 765944703 673305407 998047916 528705007 661866127 881414728 150503105 3226853 500919171 996462067 553622057 515517369 326261727 764357954 975871062 766684928 172860046 582453898 518277037 20077004 134566673 25598216 711643951 544701956 819276327 696996777 911182445 853406742 321710480 791144516 754281538 724466721 477125224 664119821 2925369 596045911 471764154 823229396 911324152 701560334 826122282 152467589 180168377 514641583 151794530 98674541 690469186 601025249 820967059 450396560 737879571 632741705 978213672 170395815 211396282 516641708 990055944 404711098 687100093 883819870 609305353 231655007 569731272 648416462 867347834 349010604 2431793 543991591 645448408 178126988 509075722 815951554 647575648 619994565 490075928 662400267 276694727 138737701 138889414 28550635 769909620 323860538 452316840 918277718 704325766 341953444 302909603 640748390 455217945 806800606 862649217 944948310 549176577 153057004 752664609 858701635 192517862 995869444 545516504 162050771 843180998 327264807 91054535 266840215 391189876 169629910 971212030 718028956 391574816 883819649 255798947 975694972 753714642 101578244 320884124 226430514 591623831 89612179 154405151 92803101 973854835 285735017 126928019 383621707 570661433 593463170 166120751 272815717 301089761 529443267 701821765 728160951 480452613 270631261 168195208 712492572 338149712 849039676 603070704 654516725 709498337 868420909 845410645 251816692 320930130 217711339 784124098 763826489 22576585 51229892 266065419 449267104 92303708 929175099 9919098 183580535 716701298 136966047 847801790 993054723 353598419 286900363 380666497 356233484 674871818 102739315 613087279 200532893 917662021 333898694 270755959 661972909 947653817 219773011 185214405 865138573 721801287 500770100 334147892 9497311 287985067 44812983 440315880 366328303 599481239 679804868 297404644 307491562 725577014 995736653 660237280 56462304 631139575 979789366 988754875 730005096 619289095 316259376 239567921 940063950 933000210 174316515 3025961 899825761 70594986 458645124 343698228 819094111 826555511 495633595 773555709 615968999 691683159 96266820 527064010 38153268 187583040 565465839 927464115 491350041 958471590 533027164 67236836 16044907 481310927 582629778 32416932 767715749 207064590 643881547 235577021 730467520 426106186 972551620 931038730 327854749 823888031 143779370 604914489 697737665 101167001 685259995 297095877 489615757 63648618 385495711 346037421 554852214 821734166 112598309 399686190 919809750 732738458 219773879 409211071 76187483 54898171 993793387 39679537 640600846 69184206 677670338 247507476 245451352 238344756 765808635 657981622 934633201 714642839 34276461 352876881 896072037 719807400 327480874 877583871 644875490 388636403 274115201 234822073 925825750 873605380 857247395 835122556 159519279 119957751 209313344 570446809 697164 144483605 847473762 405995542 863614534 645855458 803672438 736763884 228650808 788879111 431403549 789816596 789199900 488510220 728283355 531727894 28866081 388205324 306877459 490338194 745983205 768717287 763397613 598229370 271200726 942490897 285694716 160360176 800872205 403276199 568337178 147215714 672018085 228117573 465445735 886027341 329117467 354502500 899777631 135165897 923937193 922435427 386130248 71890732 717049826 451485944 494226946 695346026 438485525 236863467 837688141 579554082 618076142 257145869 547404322 971743402 231545023 120546530 371040954 42725305 29153859 161327030 558045717 578676245 855782528 605702073 696456469 117013557 62599675 732882008 279731483 298153541 690502616 141862290 286326547 802918255 87931094 758994529 747748417 93672327 904542267 179630789 768354818 80883565 506451257 444434874 892784523 733613670 472277794 175611879 81713398 115957573 853648833 945939516 837214679 412702672 762382959 69677438 651745863 847756978 799592301 621385333 311522309 960607529 626578169 422169260 865696482 293923309 367660217 809696674 128892551 604184094 927438217 295549783 29882728 839916744 748800846 248728817 81666133 727196879 996697468 518964174 86916393 826741197 368161772 879462757 895361602 502859852 171385227 516507910 516190558 210161971 439402749 852301772 308013814 36206576 504553523 416812471 815178578 58258088 575470235 134025298 696152053 583046058 416007737 27072399 195454305 857529158 657553658 958799552 810526803 862302154 892305159 70194604 973047317 175852636 798440541 306010392 4191311 26719810 380917828 561069954 518947346 383955345 143238955 670036915 4378060 418631973 280439772 832205384 475834048 968334492 558218391 265729567 976581436 10381827 1231209 859588329 297883356 243422060 611535742 714237087 133853614 120453911 298330846 233848247 313603134 398555272 125321994 602315963 788370773 569999146 341461113 455679783 482852511 272781318 569482732 717099489 377326071 968916073 427549615 73394159 630754794 309177147 454004104 859034587 612751066 637166824 671014196 461908047 881304072 117606043 156497063 801705734 775985603 956468801 803811300 395522738 701341317 677045378 232644925 911642652 806451242 24971612 395307750 177023711 767818839 723955846 67015319 953257894 393175962 874638281 179181731 896444898 63612299 430082828 623118642 376414184 583616131 568651848 164817675 242159919 399716531 572203035 900759732 857703812 121826944 502216680 55799867 452864931 283401247 868075324 313034936 62176056 666348428 777801389 945706374 540799977 990693210 631991691 758896533 866346261 637322034 303548052 770142950 651138650 537338606 442470743 280313409 325763254 254541933 786438228 668494194 539897180 813804543 415524259 381217680 180373506 564995957 873327810 702020326 201011715 170221496 339520222 376636480 605571883 532437939 983301650 651727286 965928624 161795695 558560951 192637706 525644710 604322862 219607215 676974323 506819541 664559324 168202971 813534125 99122627 717357728 360466706 983842740 975763196 916563683 981865300 796017531 721373267 80239231 712293480 321305342 668069885 943101162 902441007 513459042 911821545 545938515 169153876 407592 793699917 110321162 496134886 83485334 193007095 66380622 615405415 25259224 543397829 408434907 292295067 789953244 261156920 633013711 317519936 462532353 719067258 792481648 888862371 234917510 108953948 700174062 77452634 699156263 537682611 805735077 296069605 632729226 332281942 969466489 772548416 209893708 153489404 697471018 47014290 209375732 630041382 397844313 99497729 513251012 151489157 963250260 243455097 638113301 718424971 394880500 779505923 934704736 336266137 429975116 893925980 413372535 917775620 516071163 316999549 956107696 761204749 676058651 595043630 867614282 462952668 317343669 905500977 567518756 808957501 163393400 26983083 379369269 975356625 926451477 261816683 849029512 587700196 750883528 840875648 57639907 671379773 96102638 698160587 559934599 740734556 794639151 324961067 292997840 925446700 517583951 534390829 204564301 949480527 333302407 249796108 944301840 692015118 447687759 893297075 958129998 218355715 356556232 829979441 730130989 307528608 157324720 894645815 835859204 163665858 925536041 453723243 274850882 652428539 662242341 329735152 41194111 622851865 656468842 555858256 419877606 124725322 906566551 267174134 204523320 102630199 462249026 639074082 963516670 12180518 670769179 519238241 896179087 867852787 683854152 2373843 180580115 134961725 223438230 946375748 453104200 538820492 202270704 700804132 273433383 606223468 676031068 54089352 686769932 552909507 280495426 78475061 468978602 806671781 293197727 114352744 620711944 306152009 565294718 364284688 13766074 105564894 423522523 84925425 835905341 327443344 444066988 55257302 776661321 791890743 427348455 669902638 832734528 189618922 775320780 101413943 178664586 178075417 90983287 878169422 391169392 109333496 546145826 29592672 26009620 718305611 502687374 498947705 745678608 655800529 666688615 162000262 523827531 635032491 986489609 592061289 866557854 135339626 946166965 785423895 686088350 239930545 857415799 787338311 297164489 604605716 727277117 491644021 630751163 106409013 847805919 798144534 4317040 600260345 644544349 909217274 336855942 399711563 200011785 502961269 516735985 183130275 690565293 946387015 357867462 913714457 761425479 51244078 844371944 149363484 474593910 129209591 69467841 66500980 728004313 451426192 777207761 882229818 230028417 915824548 989081587 243164025 789406230 922094603 533692146 959183276 70767462 483539731 954168746 974524291 623714502 704440962 497880190 94215596 46978560 199393168 180761013 767891226 698573951 360875127 649073897 189320577 454826604 930382073 207063742 862558531 280348981 283385631 291335331 506984341 519321031 463587867 159546888 968664753 463793922 431342283 157885660 1585436 386006513 457600510 93914497 118095155 259005561 721180598 473712627 989713135 342570257 557881768 142058034 460134576 247231867 557029147 831515093 962146578 373812399 678864825 888388809 694219428 252720784 470478123 632835438 235814715 425051605 412186245 888592826 210850552 640901445 127049492 176102703 505533799 357469140 949404097 70036604 997298144 394847155 403269102 787810252 980488401 107988671 61854690 408440903 481977402 471055589 441601883 716312932 216658146 261092751 255424105 537186242 207594526 178865357 369708712 457166555 465246483 142014244 701527332 609826603 558395203 269678603 898878627 397578224 764939166 434597354 261900867 968356178 397215009 103705995 676154478 373566828 441179083 929344224 749807937 613861313 810705275 593516234 747490099 677734490 920044843 251665857 527861830 892491164 805023192 983999980 558472636 990935830 562876015 756372013 967142970 660178288 845876326 233518728 320610710 151245555 649078181 982416372 597900056 280138452 85950033 162190259 658426970 39693046 733802712 998881445 668086329 755242135 407435736 777496191 516991417 328937666 139427321 529352073 696961408 738432019 911435877 830705875 71579262 757176480 219514799 889067043 476019172 230191995 448570025 196461738 892425594 366298340 959916928 336811493 746073989 571761878 43464515 606403146 188789766 192120301 893885012 373707668 574569439 614949504 954550063 904016138 118668346 768588750 173964134 894211902 292642473 641067686 775841858 872222211 17333095 422470893 84002214 512538780 44455880 454306542 207022184 369816968 847959927 310841927 531774943 610851676 927002689 819500759 143439018 675318863 560189563 497215830 976551148 795276775 920647252 557876011 988459208 267256361 603565070 182671040 60870051 363584662 638680236 980521660 591158744 997487148 853867186 140730421 338180624 771412482 664097750 849852895 983609300 301907975 437171312 335137951 958418141 577912540 760133610 191344809 919033215 622322953 469959154 400231869 99147371 659139810 61036898 990941070 862112843 621876070 685763768 839711729 40846648 120637696 463097824 576672299 501431661 273267606 165045180 102025006 417201185 814261765 474824889 79813449 393744313 793281672 324652035 232239278 998645980 313493197 243486818 610963297 243026770 168835499 358684272 737458216 311549013 59255034 432812515 977451920 718379061 221030249 669107223 554099545 245751867 430165723 316162033 992259277 347269188 874168083 452840156 847776125 455552545 559817070 420340609 553854866 222498497 938154104 199793162 269488801 534619830 256179382 792902951 79987865 275278464 491174087 392568412 826864481 268503850 550764642 796949873 473884545 700394326 950314340 631111024 175012398 373745367 992569649 148709131 390857207 86562887 479428833 621736972 699019326 847694225 529365461 748743672 15902527 23449237 75043111 406652883 668818830 952853412 720796079 848474489 151497799 883172645 490062609 822701309 500188130 850024101 234561528 979178902 650047974 691041528 325545603 246056413 266314411 470153901 497594798 802076325 875024650 113625902 632056996 314339702 776843596 602850184 822631815 45264829 148583404 240617074 167715264 246607278 68155847 103644567 150086829 51087587 4857317 940858994 341363844 225269178 30285752 419097143 124246545 33757587 208712936 970301024 800800911 873928683 80419186 17148055 6768559 307112204 404038641 476911240 902830456 270967615 896914974 115359577 331495005 240240428 633434697 587843844 15841196 472086119 550648234 65104072 743560796 382702975 919664205 130395051 312015768 557623031 119803191 442696031 767772315 661543955 564883036 946248824 239619237 936977959 167303085 352971439 469093746 882965045 501726064 891073264 104071096 67456024 382490880 350560994 75528029 766359190 438782505 579653520 497057175 983213006 893519688 998714445 688078696 982123454 862308161 222786706 427327896 419716076 149601629 702088238 427585043 915857858 504695319 582395216 411967856 152627780 438123627 363842962 249666153 356058524 104204660 120702159 20490282 119487380 688821413 581442949 817523658 191736544 31494402 80822825 343103285 236168977 814895145 151372034 722205059 983722213 458155324 435527635 570026458 886137013 467479339 916591691 226751688 550024378 884159752 313057550 647205747 152002679 277170242 988185373 539375603 799428243 235718385 914117114 965903257 858759094 29207653 217359225 445414385 708766594 957865270 871292101 173084847 514176424 377748607 991142002 407547020 35783219 108025281 277665467 599133617 802628253 588498702 560661855 898264259 446632665 961368670 169342959 772709616 712150567 422671128 563104385 98836050 365157592 647873671 813725512 812395360 233546052 867878530 361766431 296638107 396209503 630325315 814222491 88268043 262189343 50208403 416630925 34824834 755119133 373133064 946262549 377347059 769686269 168928059 717042678 579872697 675375849 840833636 281313889 609635629 78950672 72449418 60644048 558460990 84288203 451849521 454874946 602969177 321760737 603863230 421591406 345106947 613629261 373917689 109133189 84429345 839201717 404517608 543342810 470545252 431980611 748017187 298550615 848245262 762938343 14391385 738090297 21215470 438992251 753613520 53723951 695355398 105438028 532960239 840768241 872275157 183575324 100999571 83651511 449584674 532387146 730053 917470515 293886039 960711859 283840614 958609008 914999938 11403814 793614948 359453067 711076627 584235717 39202735 109621957 623930301 849621540 623028444 376163291 381385204 159715332 335193825 557784278 174046292 64127844 905143818 37941659 921123011 675640349 938929016 987854536 929647920 18869549 604043687 429448787 853557679 551057384 690270378 652268984 260528187 33472410 451119039 464683568 722272510 39594195 764082400 835368181 452985805 332306202 150241610 546325899 689581591 180491491 500172043 802703928 214949209 280893368 860576441 844742924 77760567 447325487 473182944 45777042 329795866 386753425 266784731 713506676 26431696 513229412 258081010 854869954 730812762 374852661 558937855 491681507 836866934 395844430 63371807 116463198 473435260 401798028 150341760 536874812 655104326 666389872 336022632 142733844 809204387 654862288 438229201 691197400 476570042 863907685 118119749 989063104 172780710 396127611 871912576 366178396 703762827 152649810 858245135 376456401 28917336 38660849 51929260 778300582 267638875 823033676 945397425 114029999 181857791 907702323 318353131 929130429 322696525 867058322 138219625 310698347 166403990 627550770 504815574 522274627 566248464 624075303 613272810 381261058 110657490 360276315 125862235 188446210 141365238 720379597 541650177 499699815 222819142 914187171 843617236 547728892 673108908 317509995 584506583 749329222 531045658 768078551 366998236 917261794 78140920 348248681 763367733 750009968 324117851 994037476 747489000 453010093 866282731 210145418 67372525 766149288 421452087 548192066 517184297 799692737 29695168 781338055 263160204 407341961 323267873 660973259 426269886 755375810 94286325 964672108 726134770 940200583 992233123 625779572 780849841 107066665 123773105 193302487 919251470 454907239 485373320 410117642 279124965 12864460 873190272 176540111 200411200 904142918 685613677 500589893 305727466 510650712 185426272 714836498 244096372 59665534 214766052 97380957 708916712 324822563 940118996 21312227 769498225 102240927 757396014 387183045 290855451 173991165 460656117 926661864 633996007 164738724 357527528 292916986 3113132 69038256 340646925 347001454 448255806 35714226 888663795 341507671 887990345 911614635 847864063 934511855 664852631 802767002 993389320 212380698 510973367 15574835 468600904 340110776 28040777 915971078 665485909 810562516 872904495 473831255 2310960 777416117 167223776 930603870 967206509 657741438 726123692 839278558 501090762 176430097 520478664 230973689 479537990 798187545 324689034 560961215 430833795 545730447 944763259 416372910 24515434 205820394 449193187 44222574 188075221 445804998 152818862 84964342 771228023 546258795 907076341 786221440 865575110 512883730 381092273 255008429 729888774 731991871 191836175 707874353 632547808 117355426 512570954 969916332 125509691 596642301 481966796 321316963 269991954 515874399 849768408 394304336 528796846 338638777 769092755 556900148 774160197 59200114 175925564 906040290 271167362 251462928 26362404 239751754 979281762 888703714 511825475 825880387 238016303 975906751 375409207 105834909 550903917 986902455 266052613 872567397 554695086 853162119 466558693 27511142 119303600 898741234 402493813 582479156 986950713 481518066 70910326 506218229 616733318 698709246 150698703 438862607 438487275 417828789 75593860 528861737 872524069 986024006 679892246 654387845 303557495 4992310 676956318 230081593 24668833 726041379 938014488 753847667 288356973 386246885 520769418 595930573 558532250 989730033 25220262 11005781 901602327 525446513 426321548 588305512 938229173 826092619 527980848 699877010 376584187 946066990 854214540 187105365 362689515 216491955 634769811 544641793 222076524 924837976 434371770 587620619 566898408 1366130 567828356 847691085 264625621 983371837 433071272 786601657 788092937 729800590 769512029 266760583 486138809 318972189 151644858 61556751 147095011 727300609 281647580 460113670 476091979 641748684 679245335 867356967 920776121 290756962 559290112 284985921 959533056 888852195 641905085 376470951 778191907 578193453 422137358 394508952 357379067 475072119 673580239 361828107 933330674 851684623 573126405 917492331 464012853 115900146 172262162 326797470 612063476 30645386 704508722 500992402 507774104 617075380 742795293 592941828 786541653 712434897 788631016 935135842 35565898 856076895 119478272 552483659 525125504 64592334 891828894 429383406 118151766 666132796 665159995 135539679 797365551 750524472 902475467 816959868 705736749 973602984 353839628 936081468 117221083 395915842 143733432 788031020 125514881 370446516 437292594 826324481 959444439 264432384 317535189 81036763 197167360 102584506 457631368 670560773 879209779 272998136 326645702 667568642 210664757 800740922 435242692 549349222 445377648 46826561 752618432 189231739 529623368 920124175 712626196 732202541 753986524 331280914 63968069 811860188 608496686 874549025 399825040 484760107 64521008 312845318 775191685 810132002 556855281 461953079 699185922 286882538 333023099 899604481 33537781 391901350 42997698 357915903 455914733 448070338 440176436 962417792 395139508 925909740 799186885 64047045 867780695 135207802 361271082 988105298 247057711 294026845 725649949 345249715 274747067 934056422 931350728 712787876 259026955 221599545 644198869 160258479 152368383 603996817 984429523 958273841 540611684 182207960 982698414 790699658 885171910 303366698 256479306 220495838 806535242 529912662 806765646 696154111 882766482 191305595 510196762 244268057 34025798 670083202 175945339 808644027 587658836 582145132 175686645 70766370 766428549 631220484 432234654 465864225 401957021 175883409 748217858 115083084 427214379 681422988 424548342 97773719 399784111 186297017 969020315 642719569 415889992 879520171 299562239 727833538 738009750 306992140 297514559 565060239 922156366 533224406 385404738 283169466 539868607 723508779 568386596 41439883 876811035 714083254 81942817 209079226 716178755 492844594 343554217 959696864 748874597 148193943 658367559 210947736 46721545 673386473 482736440 98216079 457940039 847427343 217362233 469446539 856404358 174840206 28184832 802366620 900041799 694551453 32564974 932309648 751177392 861853649 219320289 457549563 268666016 75083748 890785143 957509708 297554977 838914894 716084397 171299270 154790381 393221290 972803142 279674843 69356473 217398469 22281092 448607343 722165104 828295078 797822543 270367270 63511499 372595133 352079037 408212451 102859405 345251521 890433075 311195505 581591933 32855061 193418968 655831234 187128629 645496213 175621958 588775440 746439757 608058199 1148353 845443951 498441316 745778895 20761313 898188792 37956473 852739008 21345270 286020282 355565533 146809730 186024243 604223918 866676456 718055228 294820437 165378868 264541977 770879429 225307966 669154873 654756004 150813334 169854166 265582065 199786108 776849015 608338489 133855644 246208843 261219154 366302500 112528908 437325110 988575298 468160261 853816206 765640366 722349481 930394546 366798465 28760548 438341429 956086598 445678407 566155254 633216255 899141340 186102649 334085078 828086416 204171167 25985958 402282386 540856658 178138337 381308106 101202420 907523959 888185015 55455764 563777492 525152086 539668346 389416152 574381465 551141889 233885125 905056693 210723316 118212852 588518911 193710638 912306968 575194205 264834137 406601246 166235516 997154612 59738088 554280642 165610145 748575929 455235753 925101180 125115814 401896756 580173003 617215400 550354915 873684249 204930935 834853427 969772149 91503971 163853903 407578896 388183158 295760288 149991716 870610813 946181350 949325756 287697432 964395628 738852150 381649866 205249858 241529225 664857557 217337495 321982165 889603874 193873566 553385035 55985014 705449206 882001289 886210364 17707262 810384362 277626582 433880713 589408115 173176083 877006926 904762157 259269351 164830164 619702026 468365480 455299149 232323932 795361587 274627641 503936441 771243909 497004876 2179508 666672499 259624314 78388277 428724875 848320178 229428777 171731432 874572414 103025377 949819185 24509358 828752275 686207562 196966009 641609622 740842186 932028496 989564166 479239505 313901140 786072051 185733520 381353804 911022757 211192214 918733946 197761626 341394977 406056505 502993975 192647658 974116977 465685564 555503777 287761047 764441191 632560232 412480124 631820768 23567265 603165067 406955300 313707035 919237217 25115883 124924584 911344812 94072540 342908609 67369608 518294905 391033152 406116658 919511366 821322278 724798103 621588533 961719345 917182270 804731177 86637096 362867863 65030857 540118626 592831844 338401212 732743240 896997266 606771904 319441730 403638359 109677323 639700336 365161783 131843896 156521474 372838056 320380347 897092205 851729064 343918650 90769609 409255051 724520984 910403510 5925077 521676896 790115348 808694352 916752567 333894705 40500424 239765415 852482244 276278036 520158635 353913492 683867403 369311608 471275859 357607975 725174140 439367578 560487378 81279343 776304265 526285193 12763370 516211200 315231565 94863702 377588683 69023388 590311175 390494147 268707026 725608011 267630198 133457859 521068005 903655317 663290291 58916535 114575087 388583631 987508557 319719977 78467769 225236729 896358602 119639389 302822708 537465653 609291356 984706747 483861545 295199332 602151534 924710774 525435877 793109432 547613047 153062155 747584607 845790894 612673795 842245455 134663859 259962255 298510425 396014484 693582809 428452876 37343174 174548462 689080623 823581847 293769015 656059937 608172174 668572741 199483788 33414748 824520118 442613693 975169406 974260940 636343414 965697162 568648056 531952905 885015168 100618871 328021306 306517081 515288119 28359183 637967393 250834634 391485958 857486096 774837581 126027771 595199171 311996783 542485408 328820480 973527135 199416821 201589761 3022143 971152760 185018167 953098562 783674129 768030325 809607135 984759089 349942195 154714062 354187489 819102529 707160085 112166209 943812534 997034292 957031389 282982479 362676430 142504527 129315278 126231309 409665329 455229146 289412239 197739409 281079682 166366742 160771551 949378912 324920252 263697035 796308384 717075242 857952978 465619205 239267935 908078971 357525613 97864114 981006922 564880886 887955700 69357124 460376558 640604280 992986787 224735920 56658085 474879213 285003388 58789866 557176893 137789893 289960962 311668610 926812670 870803244 372415900 219731911 750625154 930414773 281070822 386507308 147155915 232547064 762740526 453720988 666363480 851064854 468888086 815395409 116251191 240748527 722961144 280566787 953295894 789847157 670080267 46684124 565702382 614118856 572952205 821260688 155841524 604512761 249448567 226220990 209790281 906812597 960338267 938555970 257733672 804933347 64457704 4878800 549606954 227286784 454711938 707618969 646251831 908690857 958616503 474444670 732220075 439670108 194482246 36694086 358826266 119805987 261438512 219325864 30854358 9036696 584377718 248725463 465063302 839337906 940108931 583752406 631473869 656070847 935620319 88421900 23534504 797712818 761590420 162206181 981437528 211289397 941624641 697011575 916304680 47845013 838910647 247198738 812550850 60434080 483036994 178268923 777599734 979899378 860579523 463012214 424720549 717642629 917334270 939205096 859287051 687569976 661677809 15401303 954238322 55750265 835985493 352978381 329985120 170552408 530907100 676773299 930683031 671181450 824049748 216034917 80432896 964224926 632461362 585225913 410310006 168387907 599126501 487119481 960781945 481501885 37492038 221538141 64822962 887858523 361174629 813520679 617830960 949781786 350339878 571135209 385213606 665073153 148599126 754584952 110508783 942996461 528695857 209421113 561072715 34992746 778343270 708831506 697501144 25371653 973864922 909637038 414630927 148792847 325828377 943451816 997170911 554215091 123106950 877577613 560303479 820136099 955444898 673009054 652510571 805003535 593673613 38910640 817046063 922424237 545451954 895943964 481402982 25489974 478010298 245743296 781066921 827095189 683564993 886055778 186751654 963177982 614608985 410547419 856416044 329027428 492770777 91784382 35826793 549039550 282624771 938816871 500771485 323180889 273737659 573565616 535128025 134608968 997923095 560537444 194769503 858762733 264254622 79900004 404533026 778132108 995894240 177338704 644671050 894189504 360421959 618804446 201997902 394249375 911396258 827961718 374802850 818804294 525211995 512110254 167734078 263820705 323748489 216272014 122921155 830917376 847087795 993659231 767016722 433928957 768600275 596075813 779147332 462059537 794212735 624508840 780454505 512710194 807601703 910135683 571051282 475879339 962461699 520106305 207371786 375767282 501012547 987484237 888991467 349527344 243162701 432699472 619743284 522176751 810947387 478239664 491530178 423765929 332093788 602566712 421609999 393161398 148438317 989509245 338628520 813854632 686613041 39119098 925594477 618574304 80498393 411662040 947518068 94588642 632111242 84545812 439120730 154786832 393305839 809618103 65063280 939775684 795572748 666637055 97944789 310501604 206284257 488910425 570091458 217285576 287150105 414565562 802668665 802891540 233681573 191814611 984719734 740782499 217431956 15393837 56495401 560509704 628741750 966583508 236296941 256674631 903617224 794577760 662575697 450908768 923825642 937387292 703884306 757720391 984534429 235789667 968969582 745809676 729602597 994786230 659511855 96052578 713338228 328912333 811834544 683761745 308348954 91835161 976554907 523777701 244230510 327019230 601145412 879001859 739952336 647567317 726087107 983144887 453032961 52585268 451895517 220408378 933113785 597336733 457589900 327872552 971096091 516389519 188230248 38607308 259626013 888080634 737546142 420207083 755175451 160303702 861888687 643119533 871610926 637721414 251147599 757121366 541344703 341750659 724670407 713061566 566294538 51829454 750913271 51549819 117124710 418708169 501611745 291822749 128376059 188589673 519445472 627362081 136304344 960240328 509521070 338780126 854548204 141520730 852196580 671727180 370565497 372571741 287152635 440304963 952652002 571674026 740993306 410969286 670013017 316697994 553831968 478062730 275985561 345692936 355133836 151680751 459132348 346538886 196856944 22315163 648042819 62169212 510586002 543693609 698413723 531029551 890192264 175374777 862497860 433808103 19755263 749691652 361985826 566163998 897315772 379144689 236053066 60088320 397893200 631321394 98546068 202784064 799723049 318101365 653053456 935598584 135092100 592128945 423560027 564662290 602784391 52205518 533226436 960701582 573208185 39439540 740865110 114373325 451161432 301056576 765824073 823863458 938209755 872058821 53886747 155273706 322669864 748470416 483039001 378014600 849887394 745440534 200185833 429278027 114141386 498205277 520889803 367114429 657053479 294576673 931523135 23782817 294463170 850584845 568814058 469730297 906551324 883997755 631395368 931266734 201253790 144413233 543604772 703806120 515960500 102738618 681458565 760745240 138680093 581829018 602975386 167377086 325832887 992460626 343758105 546310193 84581736 161092728 625333547 352198899 254653880 499184419 475757689 254515059 496166739 620833269 965811526 673726587 891529279 308984765 288701576 876196255 723077618 370802095 706712939 681869755 469621026 407406477 448676965 502613874 556364916 173877189 827711950 53971416 468713586 721225949 458926110 412007649 211291371 60142951 633879074 89280259 204510988 925754702 814335736 737087626 473749850 643307287 822337810 89217879 513812331 266161886 451123366 3613513 471743378 447547447 909901141 511490152 898375749 589081918 653868657 200928260 937963513 662224721 795892414 957637917 105161075 607378501 351197369 84064099 897750481 694603250 252677155 127145267 7362842 843122981 699411327 533522212 621793061 488171342 996022287 782209167 38821255 141853418 765354258 719047873 45689940 921457562 829679455 259526568 506812319 69652120 179323583 761050974 207400301 710404234 197081244 865673734 661775144 672612527 709525520 747209561 892873030 964498306 468559963 149325064 28898173 903867450 949029855 919716024 278294297 214600842 918579924 27192496 602816162 540734483 652227869 625579847 212871347 168088274 404786646 368910392 998907819 673956681 579885343 182075150 118469144 615798599 172013237 411640517 146485847 318859018 513466944 288086067 33619186 248735037 51577997 478154038 959375265 938463617 877004981 171589218 746710430 869499899 643901457 887755608 796771291 234161311 101226747 905966401 861583164 517558303 576730812 32570674 975099491 87531398 112980217 368527201 251496096 368275954 555689723 689577372 296572041 636074661 582916450 807076940 233873209 831422800 203778230 120326823 795682779 181720481 889141888 331268097 549359173 169430137 229113028 625456892 137212884 853823666 522733836 559267555 13584399 517326277 493690203 779507035 102900049 617523391 753942580 967891369 417399301 387425118 200149373 603875958 931873275 987786324 937002545 804325354 17983239 155846328 434358717 777995285 868110580 897886050 768751148 456548724 196790038 656847549 507242929 144794692 199426254 387327468 742853800 373301973 440392706 352352462 952424893 77984074 618079230 340078282 562978720 124370863 150138062 367368904 397926198 610150253 449577523 391051997 472398984 827400351 710765007 503048821 940500801 714111643 327702889 774750153 199609253 972286795 371329757 29035448 562149371 254805388 408828501 421742092 339020702 802822232 879658149 964344186 458335924 710764810 396221878 3897616 153558427 306742108 983014568 956091634 354449346 993987771 999386739 723496536 426534233 883953941 285646668 951718369 953786697 428048408 277670140 234300313 62554225 62753614 60168505 472819168 353276197 755136865 893674437 550635585 157979437 578386252 886305696 315882083 548473477 980981217 527389632 686958209 814309408 704556586 972219215 315532048 679866125 250834294 667387128 816712720 103686751 880318581 259190586 237091361 64752446 800423119 987862617 544924565 32663916 434396301 639210763 308276014 502711710 611235714 674051663 756054007 607936149 174060250 655591241 754780016 460803416 189143261 207931347 43860974 548532564 189509222 891291567 932643766 852466068 686201730 754321644 667355410 237863909 81648391 651358382 316485690 988261573 4656228 544644974 909640418 604330993 743926782 588318576 65796440 480982021 691667738 422935599 697497490 279385597 617529333 741835715 430398325 723733096 468672879 910583675 635362800 18494123 714467264 147995823 857969804 769584230 755462934 368752968 412921473 856193453 408730822 738204734 858993189 923558901 231634394 193626462 673000423 383405672 36542623 124460028 225859054 939422668 484605385 397136081 282618009 162768877 259659315 55166769 202279838 258803598 32849141 978856300 687595739 545331665 185049248 824209580 938659186 199086071 410462838 940572177 134517821 857287892 303398986 396273990 323553051 434991583 328788777 517140985 746198714 790655277 268224851 876326254 981808848 450795323 48027492 228881079 72568872 802903372 839947962 823572699 73376487 202655743 440255151 194013185 96269981 733556343 164818107 482891661 464308103 929453845 158748324 472462277 209170423 928743926 649192359 573758031 299345155 445784163 422429278 749397933 860381743 143413434 991136737 798853973 761935270 459528512 806183356 410651045 778895629 901376228 345599889 478486226 902616272 862989567 325515954 962185885 208090852 209470658 25295830 776214511 504191171 979805383 264829172 19531405 690715353 388371668 29388679 821269010 580879041 833770143 795536457 781807424 80404885 591845852 168402353 131382014 997393470 9674710 636347420 547208219 20278940 673844876 535441199 692303477 976297571 350156396 401761640 240784623 343802532 165660979 953720113 682899612 717179928 977646709 801360043 49311330 948943574 201915478 914213243 242943577 630315731 551639250 793542528 244514746 161534735 984321688 319099504 290685894 171194109 539942903 735375845 486667630 484289741 377320837 296739490 718301976 357875823 863688350 143790861 704832712 598290382 706737284 734816527 454007213 306658614 554179747 906324265 703366658 511150569 135774396 17170077 424649464 653649987 770836060 974337723 30828774 491114180 608154902 389987443 602600623 990176736 380384272 337472429 174066715 999720270 714648310 304157633 297166951 645771766 705704965 787448763 432100173 916810358 346771065 836041227 128733041 521820699 248803428 202563862 676820378 397453618 528456425 886141455 508784992 689432280 8536349 528472010 36680008 369050323 907058970 667447088 91790622 909890862 445031956 870015748 500066980 406946499 155379362 35171262 128262631 116589984 813338804 23145240 21453783 335481611 519023230 865482120 336382257 640427095 560133623 736273095 747572428 383313108 763065425 546464471 649843314 318055887 308641104 677904632 244501903 54184792 516989922 351628541 829447497 35394099 217323477 591860713 615873590 759761569 833094648 265166325 25017609 234792228 83950191 869640138 948831761 311540471 816522736 367535378 926193857 422043200 881026426 744907348 314572171 699584173 158664421 561166972 114987691 363969400 603182521 671276594 966482574 288560878 607890518 624003745 594007035 848927153 887436367 130743596 994978620 8066492 474249563 80304565 335876218 888584615 544824210 694859313 45908444 459562135 407102609 837431499 206703075 852741986 986486064 582488923 143890528 523107500 457014984 924995146 225184413 217599029 487074270 500570202 950212750 758913196 118830865 365792796 46319077 960884478 93940020 432256022 334289538 390627464 125633751 325827109 185981044 256068256 330070771 238092171 768603413 888817450 535640020 114389580 563453862 678899393 563249642 735106699 270849844 761529200 183122429 35976564 871096728 320222211 335841381 499890619 853513253 536120048 668768910 933539401 46569050 6959355 43880574 812860291 113343795 353556537 921259095 479928674 467918152 542255517 613289772 764077895 392664070 552472124 46423857 971564461 892210439 356389636 336542861 832832801 100833977 261959024 807748854 722579341 51346830 432239207 461911838 982726295 387854741 527884662 282352272 36249190 33641201 562799366 443298468 711365000 811355606 132643477 812107539 184967983 139017955 471635675 949972584 347448978 116380498 255323888 870691518 423698087 245540670 728352831 45481484 418731869 968374855 525443949 713970477 684538494 393591225 452859986 725541323 635694091 514725501 939233056 544484929 383462501 234058967 445917447 887032092 298309890 947448744 998513876 247080740 371304316 6452440 708049006 753102386 811270624 785706086 352451118 967868466 137555363 285568653 348594418 761385268 368414235 171836862 315064490 141677929 999424633 376575325 672968537 228770602 667199387 198604734 865905852 578243992 444733713 907699123 335092306 218345231 380712417 144466681 171071341 209128508 164209149 793456023 302516081 436664333 5220333 258928689 558441787 687483267 952453455 844035368 572723290 597660022 332755105 614927647 719089129 796304722 504932961 919696988 410908884 1514334 327547310 936155431 379887722 136068935 130668162 360189708 817806249 146128422 592241806 210809220 784830991 483260042 299820807 59533344 750516396 189204613 277869722 717078058 545859539 387626689 795204058 48896050 291023007 417912007 72236147 569740188 358659983 3928424 352292687 658727173 570273378 456431164 736720840 687543587 351994786 13639055 213776466 999909085 49661860 216621014 820559708 363599934 74961241 195098976 653513157 396191594 477330154 735201984 828234249 977272604 730896247 553106879 7263886 489652278 916230090 196546524 126745735 269366762 34064557 846919916 109627356 165503218 951456910 967757044 880587856 620842858 830518723 308372270 493750459 475621447 251574132 913294700 164436298 562086155 484237802 830845912 773328703 795359314 323444436 461421050 355059969 962702882 50050414 305808644 999817486 620888270 95224644 75817057 941489448 251803229 79705559 903331257 90756869 973211991 82006370 389093851 541416849 659239166 285537954 277995032 991015336 554495773 652411154 998081783 154322136 503567563 263917242 755273174 805747564 491481083 231708902 781639412 181678970 182596013 327249626 385060355 392836485 335900645 271963271 15618135 911116515 389435754 730756231 501061461 184383710 476123442 475252937 246685518 143509429 894462219 956845247 446696765 52510406 502301827 272390112 332579348 797591686 84954190 962311824 534891145 25868013 458829488 883605167 375844546 782225050 46700471 963977793 8421312 579108303 295838436 83496376 192344050 859834555 946097760 509756950 209681242 548094992 221261792 932914117 231126836 553096484 728351151 631566699 833968779 742829521 462316052 810187466 920892719 199422759 646895372 493926152 599264706 835452397 295660887 575909320 738424614 616859257 876708260 645917372 972263779 713561575 945781408 374229752 498640902 522219579 133405506 710308048 670152376 639952049 100642421 772538174 320490635 90842044 632113387 508627728 6053945 109522154 77229143 791506980 965687784 325161521 310209082 909710229 222959530 543880805 278748184 502178219 203477014 824082021 752894603 594292430 479350231 126582615 916949612 832699882 81307949 22392269 425672352 475308110 572971602 673616174 536485574 535737265 581566301 487763478 729936533 526281022 863052236 575070748 605238146 876851300 640287018 856711012 438237806 861906202 887031967 204417791 242646054 531509081 863276841 608031663 530740003 430181435 155143249 638698140 910088030 703164366 716695863 173127907 752745550 474476157 264150811 689661164 176536004 12686469 639478850 57960052 848653412 24288343 900443512 813748665 599997068 345230466 936376912 261732516 460546711 679503600 608559109 522127863 379072852 583257279 990148656 232557746 390269656 502674941 65562261 74311291 505962212 807041156 84382010 829190567 692379503 807966396 218594374 457156790 264046907 751780790 645829731 944359470 161343454 535514725 672650403 191297428 212048702 689088081 561264642 578719672 299694189 227072435 295206512 737700269 797806786 121234177 545323102 771392428 486525135 502687092 148019622 723850097 575234154 224354111 500524825 188275922 913249725 625021573 157039891 46815737 728815238 187506405 625682138 629284778 172734450 441195500 768877875 260575985 178558860 950856782 465827516 124936861 473180460 377069482 135035465 903981458 367824312 627224014 880113559 884783868 895492544 4160454 678904717 989899212 703575675 913568876 746016599 328599889 506027816 826375329 396549852 577711610 80496011 678304998 504313812 98302266 552137165 703414065 812867721 798311311 921626939 399701972 677665056 720950184 180287136 450583288 304666328 946481574 342386166 387247719 884915499 434165235 843375044 645169710 105362031 890012435 16309429 105508944 458870475 332558287 783521582 464296327 988282595 26957358 617155400 639567483 588566000 506679929 505552150 150601795 743605036 113173273 305119606 804972572 118454486 48962372 567944589 9612495 945313306 90636114 282713878 253718444 228930299 371973836 218348797 544105912 65059704 895817527 315384411 818528320 27615094 173638456 787098528 408482901 827837096 264513603 777380329 732394207 809882933 387094198 566068690 591303133 996395184 743358428 662170112 647993705 164029753 756782499 685950386 939696044 727638657 500043225 95719043 976609232 462693862 251633555 412362425 157721804 457153635 733113567 362655780 801867559 900626948 458006081 537220661 45519455 874165870 622398554 416107871 334117115 550732014 842837021 963790198 802947254 485994384 956059417 752846042 603126411 700618327 289246636 940227894 112153027 254189253 116540825 37423265 590935967 49502015 628361945 878405463 143754511 647664481 691416495 79966167 229694123 136540391 468314614 410075233 364315920 321846740 630634748 694335292 35021478 204337992 187121543 612385364 973804185 878108428 27277485 170949845 987850514 55484565 560669468 745530882 751236558 832972738 670918077 422173752 506247600 364448090 497071375 254517538 826065990 469216882 939435741 811590846 401552343 557479464 157626231 148227645 718393449 148355649 341051437 573848490 591466477 346802178 102418428 647019302 890701689 516209054 187067865 408241158 861632965 348020948 45930697 992257596 689417724 118780736 16985730 97515957 370623802 594700463 927085725 899099168 496529250 599948703 202465611 648357569 736830561 758992123 753562585 811107536 879670643 807905161 175047732 726579846 15471065 738230979 164180391 837308058 253895535 602023233 749418654 250360501 776860127 351315143 234468738 298262271 568636150 759269837 747812876 152238034 910600149 282426987 965160074 103427000 611466797 304858409 205876226 761753370 749016256 904915840 297649182 552736442 494905911 113668982 81297565 693011849 611713148 254828017 4804754 905590869 417474203 36326755 838353267 224584665 685928139 457758680 846404123 99286456 259777574 18125882 57547518 642124054 359083483 493952721 835551936 624947692 62790400 911336916 336269348 199182003 460309897 898875474 216152279 109030306 174977704 734163210 567084583 119816239 868617888 980147141 129107546 675204824 42671973 806140646 22155751 189293581 33541008 785516668 667495489 594945370 859142142 172317498 605893637 444808128 677608546 690911084 743215959 395443758 202151280 353552875 611177126 149995261 164156567 740783015 669491381 432764997 264507310 406659367 10485003 441908841 196791353 399776057 307365499 951727303 717630272 901981848 870972302 72974779 424863089 121423336 925501932 731287937 325677023 256903177 821147180 982130849 85398349 818547988 465230292 501470169 427555159 553316882 610777721 549879604 825228719 106520964 138295104 333589497 685093729 73638667 205012658 717808855 633296696 588703264 502820245 865751686 490849152 153370404 995331899 887546956 560808037 373845733 210042837 70816662 847689976 684914577 838090488 145223719 620338626 10724468 672925065 284068728 263494025 589241498 95252230 628233270 351783557 908693663 989939910 857202889 266128774 690255859 791248161 306493910 126826511 609899044 183428290 637491193 810001275 147629843 734485194 478339291 689916944 443521405 742088465 38513182 675864502 434658813 907449212 417824404 862823823 478701192 574121862 728546183 777188745 569231380 49219160 686930681 845936236 50949905 429817796 781449248 110936548 617262329 206551869 286267714 584428481 242740411 895432486 928532215 509017059 853545593 642304297 614367102 608155889 30206270 752175200 890925197 986275089 153161621 53834732 740285997 368862628 408870037 672318565 995293822 726472454 48687885 597643897 112437442 969683489 252371424 657723906 6083845 567543610 705923247 508011249 178844654 71432468 655100968 832704188 79187826 282552745 247632745 309000978 91950185 177312540 304033323 41205117 467932229 124129485 474148497 962832056 346556081 82052362 24919948 481144278 832443431 241335606 826145019 47175471 189367999 926686531 641264757 184465247 820117347 272871961 249908796 974231665 140075021 785601295 820276155 90114066 37378636 552842586 666461020 160241155 586889982 415860157 577623824 809074135 679315560 198843627 718562043 944217186 695514919 231039164 122755182 76077693 23242391 103868250 113962434 857390922 924063364 279125284 865517518 396592727 627590924 347494484 101757836 172050688 845666707 47473565 267409296 260656744 324142178 182027380 530053339 930899617 684023429 446893927 274559057 677552220 48530869 271930487 933468932 862189968 188655674 890635420 593599685 484508278 579017472 316623952 46718472 320268775 822030177 324441610 661814025 800821702 958821638 192211970 804773939 733331997 997326715 478481599 557246629 157148676 616057119 362456323 803406684 661825295 445335166 309231315 980652212 683531676 657625759 569718819 388063245 148446289 265872277 784425292 703173393 17746148 83698980 998605639 146952001 187041276 917082575 118975538 901158872 822069126 998249866 696247029 403325481 882848889 928649445 805720723 98974167 531707837 400808645 143540548 993163023 740090669 746520194 114574810 410509148 366444453 324160134 767790387 741477955 797217499 817909487 328254880 320848161 660429214 859809733 495534703 973291521 371425018 286862431 888572767 740080580 408142716 486605920 53187830 540274802 235714661 49296770 707554958 325631567 423253919 325411046 362709979 136793541 734195037 378032068 279767289 669149646 518979012 413457656 146905130 577008713 715569194 194798927 871164294 369567777 254031467 105046546 406894723 63733837 686574721 271316150 758393859 15481551 676471406 783334001 127198727 102726113 104153409 65835242 899358630 378575657 532217118 86939178 47994954 152430376 805177504 270660011 619948212 490755271 568267927 976435862 940901274 235884753 679408560 819069810 634368873 772461575 805684449 664999129 93152654 484018988 681829664 419185425 506036548 248980445 396757064 813326806 261249419 657470797 701883318 935843361 76712393 575374141 212275938 835985166 12835242 291484218 499182900 26435888 596387771 915600429 434607842 668580467 999596248 496838398 648644838 959605922 949941340 761311502 425697658 75908836 403243768 796871932 725637657 902443154 444470174 664374924 554288004 593950024 8344013 312980504 797022275 682581235 934068728 463117475 471123411 685945863 43381624 353532954 84903361 525633599 607063199 595061336 856787321 323067395 749351569 176028685 391263199 880963711 572647632 724824360 585826323 444132653 367315223 178867941 92889237 642911383 205754175 351708818 733397292 887650371 938216915 113609193 289228750 13911763 830047180 388653671 402302357 816851806 731495301 199384744 79473421 287856771 663461119 90787897 437594440 438884827 154194086 340185167 780702788 510820461 337719661 846575996 297844387 581416186 157313971 158938903 256660468 624163432 230727283 433962482 936802087 922752195 945323234 290439162 271802915 195001616 653341069 719735679 332994719 212372092 185389959 196689072 878986687 892532185 165891587 740104606 994940918 578393946 838626357 203585154 622941130 562978633 559640911 580429149 867864312 283075972 362147484 457225708 16180043 612418437 436966438 476489508 921105774 828353979 872792257 155781170 236180676 961472266 877017541 188066186 789064771 94461914 650204996 996469181 599477140 483975072 179944929 707777006 113859700 998164935 688849721 916614351 885167228 301886626 40100358 895486269 553205476 547201926 999816529 646815023 46368322 265686836 466850101 743364051 782397675 730101909 145173499 361490196 322777926 998771937 411590406 519873161 387202174 868381753 269537330 992134229 523741285 189848768 525918773 249094282 472875454 544977925 502828119 70062226 35835135 215110282 382067553 674540744 17422495 167347479 794326796 302786962 332523655 372329574 939527253 900809953 556128264 128390633 488013618 693469473 995401726 978904291 525622816 632828262 382231532 524165936 446491223 244929004 960621772 482688688 974689418 999542625 641113252 283135907 616895311 6520650 897217039 798334405 820475785 614788609 719375142 46739799 772920366 326237633 670409148 103438906 935195999 462221038 785084095 390190347 121025533 468565392 168014218 63121046 805711247 438184636 945748272 894033817 807618600 777484956 273856612 7217979 527698459 234003710 525863969 870490571 360030499 800050986 113142451 528992406 799681885 968638059 58006210 2278767 922367369 807480110 827707944 795148224 381391431 596338089 821990981 704882874 549648606 194239868 185935353 957656826 706606700 238814381 537013481 166604155 753188111 633580027 269551712 84786825 649817935 786416164 582047597 627387861 205670097 218993472 252387414 12681742 546257623 474674147 721997899 695464640 634268468 656828523 900362298 69289985 89261652 943556125 204585135 728230867 99675025 311400083 805754141 950888898 368685428 554174618 567177310 438095223 57713508 988665693 857308711 321753772 672912865 808872006 879840803 745996777 187455076 119654160 233841163 856024312 845051845 430701963 396909324 181613247 224096660 839384605 935664582 675016644 839532921 898595754 888447206 193085299 418455590 976369840 899988399 570755625 261920502 668400301 960365333 795165657 613277172 665949614 851456431 302034424 585754494 482833585 480653532 896412044 719842300 702718190 585330914 332767963 903822654 458590776 99222480 714194882 420357175 820474426 392441327 341874617 38796667 678308629 457332821 220984196 462581369 589055902 257410939 877413434 309098237 645611857 312032428 692087592 762757440 805074746 209151599 285997439 254835762 462284531 651833248 988673711 297440995 305944293 625550585 938525026 224701722 701090270 700366490 80078724 135475431 628149529 407003316 558029274 969630425 117968497 258295201 27748556 86960932 439172521 867112783 784405758 366366263 770773188 696148087 548197103 439628297 98938415 158787873 246054667 436402678 276694342 366755229 940118690 494277803 607998341 947593918 428595201 658995456 23807661 50083465 508004379 157717025 781800576 639933722 825259986 856071262 456413558 692123787 796408426 424668568 83273227 607245913 284234541 929645165 22985062 248999357 153907851 899883986 141816876 695639519 969755143 707773089 207745663 757153299 766496374 880394854 207676111 728265770 216015285 750375418 789250910 542689509 32723670 150385595 147171867 38296085 143943045 679366616 851145957 21260203 641840116 475701830 174107673 950230527 588067012 248881306 475015409 420786979 495661889 458381031 565778983 522610056 719342455 221443745 903591808 361068135 307589972 636203101 378685310 973250567 750909630 431178839 282101521 899204905 475617060 407629812 138362354 513863066 204275119 531933966 280692898 733752140 39476808 752734535 761690592 625674499 715837234 559424480 946770095 694777157 579742110 453060496 980711399 356689299 617987733 76265443 462486088 278668508 800154220 133620240 780300336 18492233 668830392 536857126 718473989 324107954 46460055 734263166 89553386 542030778 223608885 357518585 892093458 903869755 441480969 105380397 293321147 434890285 185833688 159586855 878068424 657004857 440578272 192033060 604575865 206144699 223101005 381016223 707342053 698040511 371857521 685698358 749791455 422099024 545274841 719029502 989701319 628787719 922780376 64996215 867076981 568980037 670789629 257313373 419857518 981643827 48471988 627615907 610075603 354266758 696351620 353241388 36469632 190929546 772997186 897250040 549268464 959637434 688610731 378162449 774736528 887370368 885027274 307178787 190047499 460034125 664852578 293728139 646037336 900338411 757854730 996236655 160990682 59332421 286638849 976648820 960792885 101402106 404318880 265246754 33902557 361439930 928148521 177327004 267135278 939539105 659064087 158834647 317069180 479198096 478748891 618027760 354590595 696404314 343701612 913811309 84384150 749583336 738043528 126112843 875212679 493886853 232147765 893943455 638661408 738313384 222996654 345008721 372407214 595176831 892899756 166398952 121981932 191734377 342646382 800654786 224430446 403733268 527839381 99213096 231168667 907089965 690391520 32213820 171642257 362800167 583380357 817876242 394134475 290624060 228647884 350926407 3526163 368182667 359777454 85653526 835501540 602707682 384175947 625169202 736370891 766966231 537136487 272906311 733874946 320324005 366036770 431755065 474464221 608251076 288208581 854835569 523684005 649150813 707630831 60638271 228521195 22445520 640319568 887636007 887773747 332024990 128188116 508602777 911623637 118367979 173690503 597436394 777864668 881780809 740871445 807740208 1099808 182873336 687417579 371143337 626893650 151173575 46671891 673706867 745493939 231722328 880445588 845160871 45065173 511000991 485267242 110555062 842259337 257878249 454275506 865621986 295240273 355640627 309354260 164973832 363573658 129837116 987421193 34078698 451772925 715640531 775459815 179426691 721860569 404312805 433505251 105527450 499298525 47947293 979406573 190843060 241261332 178948984 912812213 437084159 706073506 499024099 430247936 912970288 395030684 320012880 251081948 610856348 290211455 231328162 916391564 490761617 968875335 555530414 662296056 329008756 258077434 83794533 961809840 8536977 517161451 403447899 965735977 470360701 323279873 347150370 751773038 5287708 943437807 622161549 689079692 772477310 317784950 889368234 961873620 724753160 526130057 320691486 784999954 321292512 672033050 574142983 308677608 236691554 961250130 180927839 249290614 759147257 874301263 433156850 680087178 745224481 158807700 915370525 565571444 834722384 74612816 765744811 801164790 396712534 56484098 359183787 589516491 544227667 560445362 280588726 455426890 399692597 417522114 99593319 346966743 383384748 660646744 683672881 159969132 719433305 439565127 225013944 155915665 488621690 996569464 505639492 86992725 624486197 632436588 307286211 67554923 403843021 542695063 374349917 340481985 875737451 22736718 222983826 573484499 708680683 212670686 141327333 135495943 981086099 546438053 276056330 8518339 592144068 439964984 673236364 866574180 70468367 833722584 120529454 583598548 333364924 648398489 435323802 962860978 478642416 172361258 159037139 554092904 140559270 178369203 313550462 502848752 309017280 779967705 82910536 230795261 947332293 74681908 803919045 997915520 221814034 770422996 832650276 259748027 456292311 211240519 961302775 528461304 224447143 894985840 296483155 12434329 293983921 463861603 915161740 586066903 697446453 680467974 655839687 606096889 346128821 819869411 821653291 916258202 153699354 585679543 957583528 832532143 382518399 765576409 621220631 254890022 822549390 346121521 342594169 229941447 352845782 479987845 581620874 161229414 584433592 790694343 810546664 150287765 864103898 87332055 296610196 94550010 841761533 331970201 118883729 294873705 252483901 748662551 732959795 189563173 535251711 787645652 218329481 432849458 486733291 252625637 370482284 429966294 948408994 230125896 259943638 821777482 123905664 547105054 901157584 869573516 557916746 542400680 234944068 446910002 679227079 543407514 623525652 65577807 491619517 459905238 27665927 868761506 185038694 244508413 773272103 638672529 127171864 816494466 681997907 805482974 101378675 484427193 994267388 598396860 699835321 948336991 136472734 517008646 490611226 818222879 437592744 38497997 428538099 962219124 261071427 117566052 748152649 85618628 217455358 137567416 11024325 580508680 5338421 15227717 600091136 581578981 677019909 492526197 81018005 33977400 444773251 199150550 842823082 399878913 769094886 425275316 532608332 172678475 767329881 540694577 128154416 184761797 828556482 295955009 6043266 837727031 714322594 319142341 266684479 307769783 14079409 837359076 828578514 37457694 84723400 931697667 472369532 141230131 676637955 278220604 580297772 804537201 206461524 456544321 28823563 125031715 695470148 90641075 891246895 975664188 364850873 825391786 80468589 145248042 842931173 334849366 198982745 726515015 570290513 536184590 434686244 891498953 127205489 838136178 539628830 731328323 373727987 611718649 307439698 734245008 305090124 51085764 368005159 970282849 504839884 209435042 732025585 722750476 149701448 447562147 397110022 903239015 271228656 798169777 149095746 350319369 247830790 849528964 866085904 880599398 220550313 560574472 188247206 539407954 354172674 6073144 950630120 732724693 776309976 101365651 972497101 903249744 687138103 103985531 702423814 418063362 252296347 433768676 669201960 999884582 837504993 427110597 878466356 49160074 74415092 984957231 499177274 431601633 561214377 772096906 296978689 979798667 616036198 232376417 421667457 745020496 852172724 875432444 860241659 951734876 529037996 488489267 398285424 266615624 158304198 958574522 308839518 384173218 39609763 673528831 870415698 415352714 244242746 220895665 84854880 326058610 53862229 758253300 490476260 24893246 543300964 422825529 365007218 46750327 449751427 845240711 827234917 642234219 788092616 166581260 158103189 951100738 478773942 361164430 855039305 56131915 146761669 33905831 796857858 804444369 969212922 869389099 585675545 55449771 414313529 108326405 547009315 125744194 825600118 500397262 432500665 833624692 406679408 566505847 859081665 834729539 738676822 852847413 747918210 331227867 900522827 912146641 303913497 764832801 872520404 136496840 148107641 2274579 486453121 46606135 513211139 999171674 261701812 472144289 381856730 69546758 144424159 11133265 399089416 367902054 483450977 331596392 644039828 93520172 265647635 814569175 610969263 871204328 489762011 649161931 116114106 663207084 978371996 77838595 644558751 542221982 754968750 909586843 650906819 334590891 681737684 450088790 901856258 35190149 201914007 260743344 461063155 262056160 621440578 589109478 804961987 59582124 75901495 17943939 108907833 776085031 231253740 823082188 223652756 825780812 598725490 574002972 895488918 304280862 452888112 949587663 159316830 922788889 759246398 730655874 358363660 696409669 335623518 88800518 815551446 660765434 60015747 991331713 87053260 897486023 337822074 530148032 377776603 461553216 778997195 629070380 857925526 585664800 28912671 681726948 974112043 24109883 420918126 177886845 622597608 798418220 860398753 957734398 13449951 122834441 724846625 861308329 555713230 948681967 419439006 265693887 822912468 609434674 727655467 593703713 440116161 840301148 18989698 732033784 986957548 711589876 96355707 26562453 380997101 317787923 368423313 320327226 629889921 615174019 842519025 806184703 927229613 701774582 790925488 341448764 66966945 359608460 467462561 133590648 250163020 497514565 622651393 499552832 339264853 857152639 974996236 18819171 741871792 42531704 966513031 699706245 26501152 953655540 304460441 279912380 500824338 954279260 794574828 331890295 56205082 408928142 368868666 750637465 104838169 531291012 208206749 824753550 774719078 549120570 371006070 214257573 337265271 602694271 997381856 632420010 5241427 581577848 751282564 958896284 125230879 891177287 245602912 143742844 958847650 695674156 523603199 684893720 477698446 283849741 41643210 858568372 777886808 858990910 230757823 368834282 473562497 523266880 161132545 633480017 207674495 644515667 549954526 17302157 615709401 981774522 651696819 914672083 528736402 391903898 269008785 427263172 806860243 787032696 836912224 807599026 581197399 841698867 466974581 552160108 330652873 773831392 753869464 524431400 68942345 325533695 847716821 143090389 752345505 860721926 601881266 437343945 181439286 487857067 382522877 981786878 608656274 160779430 473608243 450733299 344057370 764245316 489742053 557975592 390750548 820537742 407009183 201806512 516694506 798201566 162718480 892564079 364056975 563937194 623867097 485351090 683114153 377645105 261293716 257826739 784832928 470717878 953948622 22170798 454866051 291610323 594950519 945228314 736903921 364268559 753276917 983938725 145466249 105827929 993724873 382571352 462474170 552618866 364481568 957933459 875713032 225921114 716230963 201651475 536998067 582337059 524229301 610440346 506968359 33336991 125378613 61769837 671007137 873896374 913037993 12209923 329583267 889247626 446297044 677247259 881315629 674557675 195667934 966415281 543082705 721362187 332656877 848638273 496044727 283090875 735286134 392913878 323778904 507055823 392246215 639138109 165812842 368812852 240529571 308275895 502921209 627992424 530264166 133092997 188523831 847190139 504397011 16372650 629926417 668161639 686025350 271147989 254657733 437252514 310061805 767863015 685401206 780284269 974670851 927278928 174902420 699439944 419626928 745980511 122756964 385698194 777685970 611675945 255876581 916275356 232153260 469168330 287965049 501033459 879032784 384933648 134370988 399229006 112438320 942468630 176018841 152062324 101331906 592124125 663537212 380868906 431337958 369133404 885152620 868347681 674851673 521800391 330094641 951282913 427115138 514495518 373554048 592747813 971429545 151475053 195601146 14740909 429812884 636954952 793227039 854552726 995318171 134916469 796395158 635179088 942820814 675557716 615091512 551861961 668754624 146155279 648974855 166243554 110128199 42551100 804022599 863886155 356140490 766756033 361126714 97019406 780157237 441299138 388161437 892498420 434268705 667579649 436356808 918307696 93674499 577360991 321794952 754212885 673695406 144459858 62184300 199601989 550686805 708312761 419869881 607843120 491491077 263825972 597476647 311367977 245066486 145681669 968731727 486116654 148648945 557025705 60868099 502782922 146850609 698229428 634426388 815829333 625467295 928069730 760990700 586036868 114779298 181418234 576668028 744088222 966737345 263997926 649563365 306815916 754998931 251036156 432832715 570363894 877494449 474699363 867113973 884042318 752863070 958864416 944920346 700642338 446542246 940888621 145497430 861891466 196855923 783787185 136647211 920877723 445673429 850498720 367739562 753538223 911442444 970288871 905786744 492190031 444406376 871922857 366069201 992465274 752448345 729989973 994398259 218498366 103370153 788560270 420865166 457327460 965594320 438583385 135978585 954874799 62394014 324078050 786416674 18400978 151639864 625387751 112312113 647149903 908186329 780657301 492675252 352547325 901661551 563578032 367038567 797636297 429754672 169451391 467358994 378163814 213123470 648858635 679144610 150597565 294013001 267801677 955739057 49173 945640655 919599176 610623456 107104819 155776177 623011974 8744470 282915106 892382453 612302359 87382097 93145889 554139133 119865567 902527248 976275243 698599215 858332809 289914377 741285318 739578915 29914296 480779125 890492900 268127653 849089943 842259208 807918379 782594645 859282003 270105010 103655124 437193062 348463401 60416636 403370940 335441237 596910617 586024143 694392541 560020485 448121181 530169043 751691222 255895184 352017504 926397935 221348430 614251915 49669001 262606436 619888631 597800793 756646237 95736342 712999152 801126517 8400243 119142592 873764398 245244013 491477516 790600213 79179800 326151190 819205831 97614494 333727046 836454398 769963478 184206618 139209932 361485825 852455029 732940982 403793646 916970182 528296545 427701952 759348812 400440285 929511797 477743374 574914421 423558761 733699475 528029681 401351077 568609038 882452473 833712630 153290925 362401840 171540427 404632999 963244838 209126063 645624553 253218200 20199234 507028324 475346337 827572576 141083878 217257774 359623215 857269340 427222749 911333069 383992886 948782628 648311852 484516452 462836536 576980016 161525687 924696022 649343348 752054077 113275134 73519551 729122207 363795331 965773137 976069672 993633739 828952505 927640126 904190270 509717277 686437112 159304211 360400806 127664878 452077559 219804771 260770276 767150325 349536670 340709208 925518930 649547917 824576282 166798014 130441446 399056993 182447859 417576275 335774518 97600207 999869531 380242212 246278329 58335301 131462206 381331107 695159024 397042165 850510073 680891454 148223412 79403338 184661438 244994839 643292595 796552264 733007263 995736627 46666448 892768723 862543820 154673393 182043655 873705476 399543128 611480598 942032704 772637681 657344103 381790595 215346844 325480929 864416204 346278446 763545883 191054110 933454440 853071152 214814002 755196609 472937774 33389239 520837590 16612479 505772896 5402218 242457923 82673499 988694584 74118512 950382183 751017963 321224727 51762322 716337410 737832338 745186511 849648091 92876314 854874296 453925659 918835760 650306224 672846573 621547120 997180938 531283407 895900104 918995958 179858870 958906972 58336971 677516500 340030064 178242491 827000192 491551321 748853511 556899107 846129456 500169755 730628690 617650399 459147562 604994463 893210525 172341217 332923356 553896446 944129192 784135869 110274236 757934409 360071404 444916278 513513112 223433095 886890277 167329167 100163578 770186733 492778764 274826933 591447138 145967803 130478086 646973996 976188110 999593217 993491291 501803435 579547530 386027063 169059571 101967072 87854692 519649822 50778313 54008625 965364896 820412762 126040832 783477968 541939907 787140784 18256849 182872142 232901720 868167149 236523051 199924187 848170656 565245562 292691366 370454457 550220126 892757423 797539819 507308129 242541126 426722079 600116974 921797987 817143877 981633857 781146637 659213295 800368937 7947939 857571255 534777729 857243633 59470091 794947769 842262259 287477655 762665477 611096617 599405077 139193019 893722538 554607421 812388552 518631202 357516138 274345095 337937732 365870486 45038297 734188052 25348140 983937293 851158725 107684098 119989852 739852264 275542400 555260678 516255481 592833658 586301479 116010871 937872837 15739374 440327463 618555756 26244292 201283205 145736332 160618140 170770587 321467865 334561501 358758364 179738243 384980329 460429296 652951066 894326862 221873635 36168310 421001198 15656464 680577750 489506862 866235468 413566139 329258008 356425745 998422455 96221782 314908448 287826260 797602002 171911125 917789713 528272029 114342522 697306730 872158309 399010903 888435849 508713528 650116815 335038828 685590780 901705361 812114496 707048926 411899831 630525691 569708066 11382904 353109685 627826753 71596845 463970656 382001890 832349382 848714062 447224206 944987879 893047532 310150880 457627808 296796360 820040289 588988055 679204490 972872269 205064734 989647268 493806799 511916309 755527188 643387933 618404871 121704685 975334590 989146439 523268050 536377594 393045546 364084877 651325639 52066204 37494725 800818052 505880694 681204444 2673905 858084347 885349651 941869950 702006253 620190231 678914077 292544828 774673273 820741525 616482913 342613079 820809110 583361134 289685593 284981706 834266745 106189540 267658677 89054053 368901220 724459597 532515607 128133670 996067568 517691953 159579040 224470346 336874739 21074367 805537400 204339564 495409415 796064607 216025777 72087836 698386168 607007585 172927010 691155679 885558869 817876134 924185162 828608310 75459955 750888777 175273322 956841075 398201894 371357272 545609166 989529427 517163300 892617044 22939325 255189808 643311617 451228380 181534416 72489057 8665230 751778715 280656294 496644149 391738180 320634558 247661422 666626559 157957795 707520031 87418719 108160548 779889512 48716820 910115167 122526465 443194635 586003162 360792771 548804458 590879344 627113755 838767590 208439417 670830525 151754617 965872322 144049373 981818460 81889103 924271752 150460934 246946188 351860133 180905673 680703055 138923806 475842517 410643915 594730381 870537535 669432650 545813455 195901319 393654520 510855006 795683318 308674996 328261735 631280547 528388193 802970386 984855857 267113638 487036406 697460537 923802423 947268402 538706705 519517130 468593090 397588983 744910331 80562853 217147954 326593152 925646348 895945241 486911241 381505586 281168713 305555005 417395141 262544241 103997668 355843636 152961436 827115511 4538030 868488806 606411811 45200347 960775207 988997433 546506316 790607112 995903664 544241568 27151061 111395502 931510617 984668732 796273472 380449067 209577828 22688522 377733614 963171122 844872676 535615400 327111596 810438379 751261363 433836932 472113855 251587868 817468811 706794251 889133165 392077815 418425000 113071450 199491628 400946451 109196802 21881427 687076292 770111230 987636436 7690053 929331109 735946179 526666957 473302016 356544465 888764907 663791167 870220216 98789617 95097211 418754813 796495567 62384372 898978640 708354343 433194588 87067861 693502932 639516920 636635101 262504894 922154879 402301862 153218416 332823473 565018154 929797449 276655453 901598495 292917969 44100493 333537797 81341309 928121899 976901392 636410895 291616195 340758915 620028899 63566435 794835223 850967520 526054425 808382561 178063020 727078431 19167786 309367817 703057545 951029698 798643343 592850432 850650532 63188859 965239375 779527300 998945445 168272148 607843488 952003378 922808032 367567351 495688677 420620280 681715677 835041488 664060857 948267523 798410616 135409559 453576511 169279187 25471235 869603505 681022735 886438148 977186627 785005274 357942471 904160185 137045743 423719652 682048413 902952645 84533737 724239909 347798117 50251503 318421514 941501151 242520202 987063903 603954003 827862986 574958025 453103157 754910707 99247100 72855811 648523278 967777705 523306434 175423055 801568121 956821976 464882041 610959107 704002222 513619025 443181180 480178396 774691618 988103360 18451151 969972890 218218160 976754879 996615309 814538829 104005072 242291997 662606063 447396758 194404325 55255262 557551894 723033657 375537906 148931597 150285783 567586489 96356914 155670981 898979413 423772742 94893062 271975876 435412660 384580095 342332509 110651198 66554722 93667270 638019633 510170614 946329949 360407534 930347852 64653364 353038993 9762734 596919632 441009026 32117941 738646737 335833871 927886555 399719529 671660219 312189647 811894472 747259997 302257213 374384890 170501984 660789603 886013142 398321534 478568967 782833295 405055902 355356512 267098853 880224755 192502058 825922053 108679243 106960169 425772187 275834644 990899577 468943579 737971508 924800380 939762864 15198690 798961514 168048288 276151855 961947191 971448505 469116807 694232638 488573584 674513092 493741441 190339946 440140229 468736959 758238412 446972064 358640166 544783851 981940894 877120511 581503079 877409253 724594808 224113174 944476831 890858714 938292103 425634476 468194185 854856869 826981016 97132519 986206256 335293971 891012783 142776154 359553960 714016662 74355179 931952430 488533135 642820560 331717273 664728854 71046287 460226819 786703260 792416206 427980248 371222066 875590334 336183479 431379540 884968856 901288341 550717732 930054026 744737520 521341771 370326164 355438869 557211203 18203645 220954561 364412928 512388482 984740309 729403422 138769422 686767872 618203732 538360656 392791485 672745629 309661675 954377088 345392073 193989292 130594100 419522314 85777495 664322210 373622912 191804398 205760539 327342784 929025364 704756655 618235780 546893234 475502148 644669864 414316721 49052314 408446764 947075470 156321798 239927438 21242824 209176126 82369029 275069257 959187709 171193215 477194469 384261182 320931674 114583251 454237882 926345731 977572882 442874378 918730741 226541913 820441441 450638596 359344581 157484715 695395798 279756575 264764646 241891565 512330432 142007414 760112102 63481645 284056180 268946575 910648163 138206237 354623073 393710459 558281695 912220281 666667419 797928628 671865485 178298252 117687486 867359285 746862570 715219563 827521858 795421389 459086721 462642682 918592843 158575042 54492001 25861300 181480962 313318574 54539365 705713709 163402516 640851173 184729064 248162073 434120938 620703944 793065967 526518180 965171621 425573834 255202928 473601820 715907127 523166880 995814418 745461904 457324047 934972021 651369869 153401909 49759528 291024149 623124194 346288309 657741258 454815322 995911300 634593866 346872991 702669323 372382029 641525039 993147699 652694782 419459269 874129616 392366559 716842703 991767832 728813542 852491090 995956042 415852139 831194928 982340033 952538205 560644948 73921266 392350102 120605306 577988562 349931257 938225748 88802875 395293161 755323473 208925606 984306577 560597853 683148550 178718632 451551791 29237078 646489671 703373934 623650443 355623588 522555494 379681194 148805282 106494772 559076371 806147834 181997598 865012699 47364022 907267868 316665411 272898885 529146743 499229217 235872811 279744792 474197422 217821137 769022089 260723961 339765119 277560387 337372117 765489228 116520234 70838823 541563215 15218774 797988216 68794828 568256740 38133636 211771076 177354536 576072302 336692666 840666013 718934829 82979774 59479144 917619342 131221197 101620529 724892402 311303792 84971453 29274133 914938468 206726582 590547876 112140475 459873948 977166311 115930970 609434006 499309833 389868242 136370220 797655587 260900337 521723650 438271140 332896429 351567908 407500217 228576295 758850517 386391876 25759911 689495045 917023968 286031724 644982482 136271578 588553401 89056664 369969153 757494041 291247050 459763208 428906896 297537549 401198403 210318853 406420174 689700421 308729245 264358716 324832876 284018962 561621102 76254818 869559283 605310069 30349388 659992370 367109710 572644735 247798413 11792022 133766555 558988070 821146868 951719464 584708278 661049407 257874779 763697439 753228249 91241295 282656917 979734976 650432279 758947229 744004169 979402449 432448784 439872906 959815487 992188180 616515335 554514821 933073617 788929810 708618106 95422909 243373438 706873734 463413720 854984979 274258562 106244186 149068702 82117740 624389590 721991421 682047908 163611932 231022215 901933570 72650719 821651892 7524891 181379791 565826363 589903396 143780102 962600067 695412862 580292142 302387014 756156408 311234851 416268303 322309026 76843066 944011976 675629144 269003921 163523879 69422702 576810101 303843201 662146439 194540297 831410138 282018979 725638400 474586943 18946354 95663715 490613566 742410328 858950997 428012445 331919505 501669791 105179788 184242736 628803458 936130170 271231413 389158415 70037541 850595298 851458356 729835482 695547021 391690893 855721523 941776892 569869866 67923885 586936381 488857838 351108078 990570792 811153014 325090411 495580872 777603563 10831687 219200151 467606958 963149855 27045011 893968930 49363197 414483234 64742870 260634530 298676267 439263540 917039141 110029020 195500551 362357259 993812018 511844805 435745265 570764130 717549748 174284669 67359709 289648610 819455416 431826753 293448228 482848377 547669105 670816514 503694769 302227898 483361924 726055429 776704159 574917157 318348758 552238072 143989956 397187326 673657847 178276460 934257179 833354337 320898719 836991831 148089281 233071875 616045218 552489731 261304999 569916131 340812864 593062810 362732510 140449596 786059814 191017167 92964443 503475045 305412209 361995611 930838525 730847949 4549118 499185741 582661256 179610849 428582901 972467464 357331373 359242319 513514332 932899877 549338232 796364443 10756938 726435836 247545029 945959940 485302219 675225859 765145085 68781140 166786041 957719084 418030682 831693567 207794273 881450563 681211980 944406986 267843408 10430897 111760720 339372411 188748135 937697117 239589484 665989301 110691469 809699569 829831635 746220360 998732655 41305921 734160424 532625659 32307673 900345545 716053653 401027809 871212530 452495905 189536376 869948794 889251224 233469066 650882678 221229062 156956463 733443129 555509630 975227419 712414492 456659382 886513789 283068122 603224098 215056175 645489866 980749945 519922806 728051513 645282758 305359286 572024246 360522659 113653655 117427187 47626712 719244301 606341577 688290233 906616942 37454939 71127717 149669461 382677429 920671261 939694806 262533854 901009438 148140581 741626489 765511635 237910755 176973077 340997051 484802427 398745025 40813901 734720070 427365379 67960384 533280041 278252094 481741687 645687725 891398057 155772686 567067049 747846965 938541391 914773745 720845741 44103401 141066746 724000277 293300170 421708781 216300205 241965517 452227330 685725186 4555190 484178646 189863196 890165145 414057819 804690438 83886096 262040170 717244989 547328540 389986275 663964659 748565729 458846010 730798347 753587196 422372246 574092846 737676830 520661901 914514430 185195263 862176094 697770978 938796118 272973341 497332328 52880670 455257802 449040186 63502036 293002210 632406208 788731508 997063597 762357913 165201691 816164108 993351031 93961566 790454152 897237278 347120195 416752279 381682298 158444917 682438851 457259460 696447294 67923241 76696617 770511890 96235442 617986897 501040535 926979936 99508836 504998055 780545405 686649247 471119846 937299800 863911028 591837663 844061911 844467034 458920232 473757974 40583442 557161961 19634870 912709759 651478437 944374425 594372101 68598032 260924924 927500747 7808831 836142480 739197522 503661869 267593286 504428670 993472436 528554734 273946973 434564803 825657169 821119484 358139714 645801901 666017409 907453294 513772520 73231867 368782393 898974961 336340124 111185371 346373199 758885688 97003628 707450776 509118236 633165788 570588302 226155286 173629610 117767117 801206050 304375439 204773508 222261996 63219584 100309802 209780761 909461370 90718176 738862674 345618658 653320389 178103748 753047183 897659729 771007303 837901221 941425860 270121717 333367884 84930302 880818573 721170003 727983951 864018504 924304739 800467800 785910957 729153285 274607408 501428169 143422770 888124268 218862092 963481841 699010892 435804435 737377015 481677627 261936177 550398531 144435861 823802905 902670053 794105452 683633264 892419478 737711574 185161309 187345081 630693003 16800475 289944446 172393075 343431711 90972986 206878551 272219429 813905914 31296778 674872134 887003642 908168680 782011894 663004529 854971061 694083313 593332646 242640782 928350894 786003880 55948254 702984411 136842512 930021857 140151666 43384528 804140230 647214223 600598284 208548500 872623729 65267111 982839340 316570840 101910131 970938523 621878935 20474913 422897127 240436691 757331298 986538334 584809322 192323139 228117968 22837505 40406105 745070160 726578367 991231184 54079555 898383665 354438904 782385928 517970241 440201670 11057372 743290393 330636167 607282118 602777410 495724690 643436264 391508462 175245966 607216206 537286210 662341150 478989672 587964090 320305167 985353047 687167408 237558342 164207887 547876312 888707341 607632092 96433052 918888372 335003560 709904279 652518686 848572579 492428084 547467490 104476135 160752982 169705001 580152564 734525851 667738340 50145190 386012103 682942681 386741803 739814632 306373208 430074938 558838568 907822906 123532688 326407640 138356151 251045088 772179233 849365289 880941858 764913874 957870688 446662548 66153272 704165193 223946421 755713887 609856541 696190180 856398874 29600729 970483330 606151929 453916589 167053547 431530923 909132538 903763252 215078506 696320504 136891176 240670529 44378145 997785420 219273278 15328547 163970943 209944910 675230220 810985815 894879770 148546571 347108014 685551915 895447143 907961880 675495024 187761923 987774848 768652228 117828670 744453807 92673453 183368333 843253209 901637141 688250305 563645072 62161085 488868529 291452010 605969348 699732784 547510491 93006442 874425198 157459542 10191677 48934007 500969131 586661414 775024090 372281455 71241764 117382697 56608865 10880116 463621760 666084737 947572996 457038609 342928078 926237299 137697137 957715005 324263294 253316380 70696489 619464112 500416317 827809712 226085980 761955469 153322124 508267160 726911391 363191378 247808521 90873581 414288176 441424863 747103767 255233201 220190397 771168209 386951975 493152079 877356345 824629463 964107984 801685513 128724268 786342210 331815179 639801541 970356151 119371809 658103129 854938390 822282007 218980937 861866055 860109250 882532975 990721253 339942833 145876695 8539134 215848689 939366798 963658754 915834201 544833216 681921904 40020268 236809357 10732054 729211474 618459770 791461687 753296148 968206496 61444023 377276857 922690597 194060992 322117286 895371846 441067328 664261700 208263154 310152137 601819519 416064162 798892514 977391866 25327707 907070794 437975657 534632577 56808364 184998203 630245424 503478456 900087823 920417327 486609468 602205340 647621548 602267931 162980712 600565339 81696892 902088216 341863768 869430289 206826442 500678954 482225896 927277453 477950151 833111100 664950968 118253244 964102046 58945466 433585985 887290748 187537316 817807008 75369969 873439013 647995046 373075005 489668009 50734594 656401950 808066311 685344204 495320869 222607117 126082997 837799389 650679442 487508695 351413785 609369883 345272950 769172267 464024092 660447095 468986883 75615637 77077591 639441517 472173627 242191016 931940484 349048193 58054726 385239290 397539315 10617714 345075904 527573669 944164726 960581096 273243167 186222125 781815783 742460410 299010301 663730075 885098681 963664768 133835599 792961615 962797875 305350119 639257224 743575291 361686126 159892654 989827581 780522325 453377919 178056471 566833801 209091742 390571387 687882416 985617846 888881546 981272014 770093485 449278840 557932151 352563407 678841432 967371424 643989200 580743793 175424697 579052549 746317836 17872938 364845986 6480560 913659519 108124187 147644922 645250051 556453440 182387490 859222599 241246137 607817222 612405659 329218504 185129435 593775750 753327699 573533017 563028941 970913627 229628505 420527562 887103406 609324237 890113712 863540778 413566800 587206788 806302551 290228074 546634880 688821258 642989346 741401833 686749964 64806160 670225846 405706337 639388745 553895038 434642888 675845995 844951838 736010634 237654614 162572010 926052545 325240063 653402345 444940308 864805794 315293462 658933084 110306919 643421392 540876846 396786453 748842090 941445793 89825376 985465776 752751540 336402762 358753382 623575928 568812151 917957574 843487964 979523721 639246715 150643508 303031021 949232606 234889567 945115883 313876266 472399309 532141895 865702625 218032827 75445569 520399704 873740842 631270478 26811119 519046008 631167028 917137904 916965983 909489710 440582054 760856856 586856257 702700783 582546224 264521912 116705543 704110049 732206735 443543092 451842945 716106536 17995536 438639071 242214011 368589525 582901879 639186428 654033860 567861337 410982535 816465720 630614224 649706475 215243538 681642340 374226967 84250118 873842561 412106865 198067473 252427902 442516839 414346837 67493542 865621450 867770817 809079391 665841387 787907639 387058712 256903782 687205763 661878159 204046915 696545713 772599503 457469421 160629366 802425122 387485595 562142280 923853323 92165197 951351170 555196087 545225895 882822518 459647231 219488762 339192747 933200033 371810678 320486256 516015185 948475665 189428432 498226569 415803322 62847604 264246773 459649914 423792794 552227628 943833682 39897691 381812147 476270683 226399762 931115036 499157347 999061903 960650414 158532841 579690951 217405681 210078785 175646917 327069591 679289321 73646828 960242565 765089171 270430969 910189011 202737674 409709048 706278067 709304143 787696361 106627062 194806843 904890460 798351121 462955010 754334588 720009026 584355546 679475448 918191580 780989095 242756099 640582313 267581635 821690760 186778578 330414301 456346746 945658782 634893390 16998721 241831335 422655867 333098077 947170571 197393927 252758192 1799330 640976897 267945957 627154456 160186998 633396945 327739254 947278866 242389703 197710277 4160079 695272586 281758927 51275063 925277341 696382553 206629895 337091353 502017211 377099991 690681436 312720412 208672258 407480471 880766319 92239753 901341823 102129370 348559370 933726371 415524703 555942423 25161336 283242592 280379926 34730122 298186623 280623001 823930701 326812886 38963964 760859238 362096425 808778145 99221768 5329024 684432887 44941947 378718209 434573294 506466208 160790235 827780408 868056741 868539337 179491271 940019202 716371910 424345601 778903320 534566092 59274566 910779827 634784606 412372875 857128488 906289657 493314934 924137656 920138661 398592726 277598307 31504806 796877541 564484724 754893948 164037989 276997308 187615430 45006120 746247499 490399232 959621505 79054837 251995101 973562068 511169361 432714624 602172995 892722272 677618582 565783271 650236723 16189178 707730938 132158780 280158906 326217987 419032071 903513350 790776446 52155937 627327004 66272154 929360843 578233050 984408733 684000377 831019482 824875542 232196454 358810714 712370161 125397531 487441839 664518715 831039656 857152375 785481055 445663872 434021503 772497671 684940679 826660945 739290881 844769835 764009178 932355765 764185652 305152349 842887686 885948811 683082375 972818937 87634704 602074481 15216945 27601256 78476305 934005672 537138738 709305688 748864267 338829252 299205283 288398707 335515189 57044333 361870798 265253172 363329282 123502895 695873921 855893127 467694934 175772012 694448565 119995481 344272648 51018505 447256853 601450301 851605818 584890588 62641561 338459756 391935937 173248532 489799561 505512549 67088157 665362153 797098583 171660413 509564592 2654015 236217227 282305172 927718089 329393567 990417886 100575788 607810693 918819584 484208162 961133095 258422755 268972604 801582753 943440835 8127340 723756734 465978772 760569037 387492188 301120468 773142469 259787978 907074362 494959839 646013107 896293855 61994266 297477140 570503655 537479457 653690455 160221779 757505037 831287089 877395763 908190716 838461547 443320068 510612514 270308903 121741336 612945983 540171646 190183440 670690418 332161495 207843028 413794190 380148417 166194308 724316333 124865246 950948226 152957029 743685427 164508512 663694008 79976756 84777449 266776970 471444600 919550306 337499052 563470094 939384195 94175447 349858337 241517624 321129347 375908204 325714404 670309511 494931631 146608124 68542894 335213046 666668861 706074363 884319475 750181677 64380639 454275777 881992505 503477507 204899690 306147628 442035160 919914141 629852760 899316075 256001794 858698388 336800759 693180658 319200359 415239035 16911876 986966621 431831534 153889756 399753274 959789439 146846547 858680306 229727487 43812389 369402986 548343912 575131648 114232971 892781441 858376502 63792572 913460507 915166054 727984040 636262312 790302017 869162201 198091303 967142733 551690196 485033324 526580019 646636175 457424730 557907216 89718626 826525253 622343497 150060337 161737361 741993514 609529222 163902847 730348726 827810253 565971674 210444039 39561133 159140246 888996261 654000467 174679956 654393448 497497835 545263023 175604872 749085498 689181336 232387694 813196259 276671735 123362439 955950831 915606204 926570144 540586564 253730173 56522303 92158818 704775991 862701868 816392572 432283178 944285707 196273834 901730070 462819869 798013811 487992170 573082870 38940299 410167875 596655268 698155022 100252502 837171546 597895012 513834008 271481910 875687102 97975513 611088448 947617594 980755249 783236670 140855465 869894598 627628931 560063256 298736012 117890511 15405998 373297141 760279000 448749812 127745308 512175357 357397372 166625158 276650755 754007046 15278918 216832973 865611940 654753084 761897993 18784741 450658262 42117111 382480748 994201450 17591490 821196566 938262377 971563669 165701798 404028696 6111422 788745061 834633590 659645075 952176035 676356539 968018087 722210283 191734161 980401296 281892685 810075568 495657539 850542905 871057113 897070815 40707773 775753660 564175863 175698443 629175298 584119535 744601381 542856106 727066060 84795705 472499882 748984683 809423262 791548428 714628278 126198092 324930130 836815019 603452164 483524684 837289139 472762707 591702380 137315849 822310435 250802945 56431447 719051356 148216118 235928991 475882819 679716381 502759474 395082765 817249343 553900119 222855772 230168943 972497021 954401720 810403247 630140201 515475293 6858779 456464241 173520197 418673183 803190491 889910501 190133042 684246567 675183931 443607980 921848286 707103110 719586500 678768728 711304394 294661520 4207719 769643420 362580283 93635809 202257579 959690252 958802584 650337658 481465536 757085482 520509983 466103075 264081925 243109155 798038541 649965119 342439451 13773301 198716085 557291838 720966558 719169721 69820030 903905127 305068681 666491938 528291044 220209342 528999516 941127206 294666623 565430020 640911014 427799564 462145968 530462809 301764439 179259169 806018075 765041573 665808581 994428291 82123695 979737998 655681953 821014012 416472424 261224772 740272678 731792782 180901931 523402304 17276650 357975637 188205844 896384404 338372203 614499026 251680161 833673088 188144863 855681324 505721266 683354018 267812310 568862243 957143147 203905477 531830719 118160770 545308012 738670777 900599577 586666050 349856151 607739552 295705124 487855121 366840492 250197962 178113838 265958713 217567183 197053301 365223960 517237235 609152 95495416 98208982 248331230 108082592 755328682 20962054 558627973 569752840 637003025 661799261 925263359 392173601 876476137 627378302 749180969 124015262 858200235 448777860 517776659 453586262 566057627 126646505 370836527 878715738 956754220 707575954 319162067 525762348 747673537 276318454 155186524 44832904 624866732 397971917 860900680 961493012 246014081 68543046 147984819 714490481 712180283 85471569 869704744 697886536 552981220 857382804 649843063 988128649 51350978 730347075 466857285 190025325 54073801 212338092 693679115 779333330 453859896 959095044 858708816 911260096 846719858 36280092 221889221 244898133 826318250 983698871 241906451 852868674 371094150 578291508 687492004 609268964 499915625 545519325 476425089 623217101 421818531 700768584 681014547 164142333 968533180 990249137 642747153 868515728 867353174 224018177 286565323 349035376 458636567 689720856 172809599 108511728 705902725 370118412 426855767 84227982 466489928 588083629 271604376 415575150 351561311 595205880 506057295 421486581 245113721 333178860 926334197 757612870 748783506 389769741 800369470 506902937 760452965 406596193 887706783 419666469 456434583 579052779 750631015 269610883 382587383 468524022 8129972 699932169 404045859 931800496 378884694 923852847 708187912 753390893 981304047 311361582 226808802 724577983 219646828 732244589 635600005 768191803 27712259 284575067 241221081 208152767 233410322 244506016 963047053 613336989 605277745 129577398 537496341 619442113 187882756 143412913 688447852 703513917 768064386 955040488 28687329 280421920 514171323 251236968 774430840 697586544 905481144 192460143 79201500 754896483 469099878 929102682 38999392 300625071 134233712 242269596 381043178 852101207 51556807 755813833 145093630 237349627 893249076 721349049 911117540 708798176 744366251 775273202 666424713 762714442 536337445 831036869 349753119 170546307 199574871 125472780 458481609 471414494 360233997 732323446 737273726 317929628 425378385 984515892 121552369 329848495 925935468 306419245 715721894 89224732 248465538 666389769 946565136 701607899 968145949 520583732 750573823 457021604 321003317 180849281 364965267 388142283 507979195 744615897 502144995 523517991 113057034 389419644 164466078 436889636 46613271 433125746 264904534 717599030 793119779 148519338 705628479 387046804 36265945 811405769 468572034 35899554 720157361 870560471 839977256 48298876 413151269 864862798 542295270 590271956 35873199 838456179 498703230 30841143 673545150 998449892 747812070 322917683 580160290 448561214 102927446 308770305 587769743 287134642 94083613 91148081 426755706 375843287 388837622 234224950 887662554 200339477 869632695 354807120 903370555 346004344 450236517 183346096 884464324 374247175 58851082 899735097 887147680 315939139 169051956 548104727 24684096 279664231 369649870 761447372 148451025 702362808 670206519 321561264 262481946 890431694 48548672 401273000 232453329 849505473 274825946 38850192 350597029 99116437 665193729 185467073 243503178 290895060 783687719 800834319 751773111 114433898 494320228 847676900 440106062 272711549 948664979 119238355 570469938 725650432 355021270 488438752 187473123 670550368 93923260 626017328 606580201 417317345 734934753 166830222 978570731 815968134 530496825 944268000 547957610 250877706 269061634 77276643 605079725 294907597 772181623 554361619 172737920 764702706 476842830 760184441 604416097 14427435 770103104 27634328 401954192 772396991 787379581 24034116 538597978 713067015 246504715 615935200 995393718 739376168 783315983 999512258 240819737 310798954 186215287 350921265 557624902 258804418 380172077 16039612 468970075 380091273 232528990 344438754 649761337 996022077 111297574 225032638 776656606 671705052 235494156 2159416 691220082 41404831 766684804 365872160 927781417 116533138 498964614 759146445 605910339 163431109 965712579 91665572 149100736 984778253 839990745 327356474 205255182 115147862 367461963 790210324 232592258 958499652 510661562 105109318 543387428 721577306 133549670 990387852 495196264 558588162 937564877 260311731 631698173 148602546 418827960 772709852 306522915 447498809 710610022 217581069 83380892 389223935 427399635 348439170 660031745 114422870 923797304 882500380 837528927 203966528 369321931 358875090 369504766 544203241 299047699 72287976 472111734 804738608 455262955 429851884 733250430 954430784 28386023 13214078 587875865 732114274 744677104 823671884 116481078 193534130 739974345 746706790 723193185 609810084 695616969 167674972 791584360 917675436 792025967 270644827 336452640 467965256 492481581 834460818 682502003 195400472 105216771 631829889 749529854 605178156 314342068 916744053 581688850 676219049 419151475 848341314 226225678 709025120 821758812 315601343 944539700 444172092 819461637 939013126 728746049 789479211 394900675 284689798 907075500 28266737 864270211 466788644 371437530 173744583 311966779 98940388 208303159 304066285 446871528 46382194 652339598 6132767 973069174 248910279 979916814 168494466 402623538 776598987 59221285 123069946 497899667 619449625 167278781 585554210 895498921 761352613 114372536 995935581 839436210 133559712 236952126 728452013 651455954 111953329 437971966 484191737 492514288 927337554 558344311 789809262 8094852 471592680 701117455 787986347 140106728 84914471 151737038 750446593 254134902 30358204 1915086 869058323 706562171 356277359 509657126 246675374 135352284 239214497 296578423 124544666 645647650 693815390 662923702 636216541 364303720 596827980 51742399 243382332 929814048 670745484 993466552 895759659 756763309 3178189 415528050 234139701 109815420 104032637 525093669 402515388 584744901 770621468 350777867 455314638 784459123 573146982 388839412 345206261 781522413 852853118 910047726 425029746 955997206 824820554 445457375 533414371 170900834 189896681 149825317 556295828 891990002 877870534 144840125 629400224 954005745 581435977 620016342 292670418 225358887 752769207 287444260 508029556 368601959 914880968 430225756 307947603 43203688 712948696 738580257 74965348 346057245 939267998 681377818 913726759 934638573 187839470 530847784 894214356 326828930 263463056 941204957 458989792 768276851 177404769 912678627 103511582 319771691 60224468 784371617 92091421 438232380 482795870 31661824 611226694 38648335 240406737 107899201 935064299 275865342 771038280 393099938 536233107 59743293 450220101 551024579 893051333 281214048 361921311 953625657 751944796 880419249 90335128 59113280 232686451 147390364 469622556 994690360 633721150 161625797 489729849 103011779 614587284 615807641 125640599 317213708 935414842 719835524 710206400 301033685 19687028 729003429 377758211 259958563 983087602 534418544 439092822 313500589 477280157 385194295 342641831 443543466 144234559 15178160 701610761 416740832 863509300 360642449 937908148 943224927 175796893 505410667 214528141 568553639 709977552 364732037 688326838 359197553 792573655 442542986 107371540 898344673 856672531 711332116 251746710 333023917 991334139 634026047 691826115 416349153 457500992 536794352 709826510 634118899 649071954 424563635 102484042 784979626 446301891 625584318 478481043 117912089 598449156 142839029 421470313 625346355 632935651 696452540 600840058 403168881 813538568 351049347 376719152 286866210 106438007 268368238 36098507 761386448 207069382 4291849 922905371 536715130 207359811 850596638 50322370 367494046 953314219 435258505 660336456 539127464 696217193 115784076 394069232 85307592 734970889 533463367 748030029 308701955 432824593 339820334 431787165 298396091 604368771 594020987 99435232 347936779 257506170 590991219 888740234 918172109 424078959 637274396 512482716 755676606 445887374 968284136 672241939 595095075 543622748 729530865 70989414 347360967 17725385 299589468 840422868 735308757 768104293 866409346 155172243 930927169 785902794 817405859 887612965 668094681 996453890 745012047 570847164 466988288 153217596 909925718 414628206 906000538 145028521 548513498 897959984 60170196 4525446 145206157 155779805 309726899 735444747 405189725 178304407 903492898 77491455 896510488 873262585 532339264 962299167 531155098 429147930 539279743 212487925 842934448 713671408 208407853 4752345 167622167 622564466 937650240 279871555 970589579 192670972 575705001 985962461 695226766 599060929 106489699 958525150 795382995 616713727 345701590 369770562 564957572 86496686 648897330 469106966 426677258 871362316 593319108 322534061 849781020 621016626 422378729 482309405 255713656 214012025 943497955 600536358 175919882 32744409 275448364 917138334 541673492 381461856 204270402 26432412 691507257 142358467 807049060 6248269 59635859 857189076 269761 927279760 935263266 619401193 92004787 87475100 923237742 460881431 855046540 897756808 142323093 197787056 126417274 762622937 500389410 993409655 733648470 55921397 426852300 320199512 558332329 730606072 435138072 70974858 64659831 751734975 568732558 267038596 885980311 525390385 513715887 193810682 770021529 907534602 345394892 994976880 963025170 393528650 920950137 244622516 830771866 69434160 585722198 475536845 590093014 505551589 375012255 456503427 394026534 798579866 227326024 907824211 342596126 277985375 117380319 15389768 909444507 645791970 602561088 116136181 627679931 648999183 231575173 656872573 149598432 576098742 146233956 157282826 450114360 117350661 696289711 970547174 230545463 82816795 289331778 806569638 520336608 747411418 355922350 257052267 917186493 385311051 563442136 786825116 955436201 835851341 418392974 892018252 648868404 289632693 966524583 375926908 378226162 430332084 832432693 472373808 456248900 230461016 927662318 437548457 51626803 876813024 513294235 964670501 872058295 146721331 161029995 392683958 228128124 104742152 351853587 750092985 498689846 288902070 201884602 434621928 45223036 170285546 135755799 433985357 407630417 206867209 782217483 238057134 950623228 230249626 183428353 95357629 931663939 331290216 549846370 347569307 891101001 198901945 702591127 741623090 138356503 115172409 96135120 21924758 299124703 745272559 347811583 245010230 219328548 835137008 631300374 327830774 198687640 661570925 145763456 678348554 862057030 421513626 768664673 234184437 991373294 257706180 981797430 872428473 460133090 676634938 595641463 383391956 188983102 240487301 322773169 3963644 627707070 772301097 169269164 890647416 993444975 127467549 764458726 406104289 368387553 679562242 952076535 3796449 719013550 331185158 845824808 9591427 85777347 688995815 383877650 611484848 893480072 704837300 160332681 113777124 917153265 187341901 745107894 451023372 690641577 913698873 864679642 505070252 41409754 235135288 482488609 585085841 81259006 369877719 733174741 487382201 817739770 529937382 524984589 549523981 704306739 839619018 634774251 599014161 444639493 426382275 80898655 595209110 264577901 565605136 239050807 812683474 265528247 340294755 816006208 390755550 107499535 451838266 810667908 666751682 649730935 56048940 451558536 54028728 474842673 650274973 280094238 78478732 780807694 805451413 255108653 952815813 199466687 119431916 219567028 682054817 349664580 187296256 442674297 111979468 248876562 273635757 925678444 289752655 568672611 200663455 575340229 270681916 427338291 79697156 170375253 747000268 987342019 555635412 426632608 515720046 651432000 869878436 362488086 575340668 186090324 76951639 142559485 790936101 607272066 727506346 112791653 364118058 719620474 34899723 671662421 872326715 157232610 445765677 752584086 639856435 986911406 272692641 866939791 275590723 952745588 139570143 956835516 517181947 426825422 196393134 660852781 342925183 657868383 76297950 339908440 340294399 966907136 262296261 494060284 456869575 982141033 532551809 742534444 760257493 489486025 979506078 308902515 144440694 948763012 843933908 50874984 955733574 984914619 628884512 205624920 308257550 109582035 969321651 390487572 590268369 951191880 987921906 730244195 374074118 792658846 42464903 896320192 161089065 917523829 237522555 446103056 483868769 577316853 186554395 415024572 3405062 550805349 608742912 83030811 930621975 109145291 118711116 127380747 287936027 695172204 256148336 860441264 813239086 972402521 147301276 779206943 638717838 201944016 244262005 142117416 713601619 936859924 132951910 720156501 381160942 866060371 793718202 495259682 298970201 553034287 875443474 404652212 935978306 131578381 39194986 926490675 846442153 832272093 269971578 65865681 733617888 284117066 646570510 830656842 510435545 678271038 270193462 881424680 147563597 131927880 192215482 396311044 339134501 221659761 893164680 255961342 249733351 31367256 85902840 505526552 209642581 489635828 51479538 4157737 666052236 863726630 50064503 217953848 516117534 842162221 173065142 832471502 763828864 229978696 687025563 52841615 683010839 53944576 615058373 64692088 107012955 599790528 524235727 40400504 439219306 403602767 215374195 216430757 318848162 494538150 735072612 626978080 418290918 205366474 895572564 242254160 719064370 39764828 50677426 389921686 33950366 851895940 502868728 938980061 933397190 4754137 973231459 151914240 89193984 931720012 433666032 979746049 191962188 22125818 950504196 588143997 803719358 526343488 745469200 982091918 226422049 947778219 78945941 94997917 706840009 219727723 90599652 301893880 795615995 709853808 954572151 507181859 348400851 425941620 896910647 811297721 506841473 804558796 798548890 637884095 792687085 69021486 899450226 357991394 46204645 255221958 711619214 14848759 985237868 611122601 910608028 420440322 261300790 261275511 931340536 500817906 98001630 247882902 683822909 44105112 234382215 696551763 266354705 509879155 525535419 25863193 409147675 495969365 249714268 924862380 782617263 847891946 908076370 721255541 326084569 152398933 499864565 153258806 206028308 907426175 273558325 671199665 218970743 708558902 698956534 402288545 358227304 531905137 194664537 546835202 824293266 739281944 890303867 724870229 238933723 565840099 743424387 489786445 470619313 908094632 575866085 178277528 328629528 407362800 412787079 253373202 126657347 963783884 393670338 948426670 862727047 473193914 593494530 182576230 684469591 677381856 323851118 134334473 920294276 729929330 697432779 655001732 617830759 25411373 609020473 534643993 15172062 859607279 140565969 681777994 849181365 498166634 900684713 488127948 53346910 891612062 794538077 524260569 769014073 419097475 283245468 735937899 67045469 843337412 756930694 298100021 37555916 934081803 166564504 819038977 493481273 395027569 129717578 843135521 201930352 442507315 288665141 170900825 166286985 205136337 469616304 213146524 349920649 753035913 152072827 741850517 816758175 300139457 542276117 573733082 289971341 888440235 814742242 238429053 421941536 275180839 164020781 79416801 371787240 638606532 862334093 765463430 888805186 420358744 271676315 907463334 927908328 647002638 166708531 588995954 501840348 250086291 89330533 598896286 888203991 899248577 113280505 770722319 974475282 335513879 207068201 815486792 829168922 608678715 311494585 901307532 169992020 260527456 925636131 597025380 693611552 727506875 606112418 385052737 119214525 321484922 911031354 903691802 498424678 905989610 934681676 717675692 364099175 219983720 227550809 785164428 527462547 561930132 367616282 718657815 654313962 276762130 710546592 741595353 507696356 884946879 69572474 20299569 206720513 198837078 55924788 950469942 673375668 857907397 37485114 827704122 257710695 940108338 845700896 214286952 432116765 467498385 683132947 723554876 727832749 474882944 995350352 129288142 872905159 879074602 153680021 972058983 987833119 153006013 455241134 587128437 782974758 350936554 843824411 947952060 485662295 130814077 817213168 952295696 860566549 807622558 601023183 654305291 217241034 631748889 553204295 371704953 664903176 808235707 57292626 525685443 374292320 290083811 410271807 867526870 518501296 491431035 282452332 797140364 159846762 334947519 145338206 772326016 22810173 950904144 77235664 168749684 613073050 772473249 43579401 882711448 890610058 2951401 550841780 751819136 732470969 939643888 358035395 462944411 315565043 140319051 959437313 375360008 512116276 354313460 84342106 295122868 146733104 685475864 851550043 204477517 766073374 32792779 642711570 963700461 840334639 467850675 367499558 950490248 765775248 927432383 412757620 499666893 327903638 272461428 617530053 788201037 823704773 543763807 680478559 439668730 763165730 68438241 986790144 553067575 816496721 643990771 199360200 913008328 382006794 74855737 898566191 319253359 905148273 636279170 16990774 40752187 976801664 737769257 842072664 811645531 472327905 354803539 866880445 157544010 430379298 272885331 638212308 637499477 813066593 436344055 747238230 799680071 256815110 44422870 219849053 62900011 630596513 342571065 843320669 753870284 177063435 145313348 461813676 33440547 773038601 680592463 650219311 378703844 30156348 514601148 948056147 547079312 343356483 587176870 895854912 769694935 114944407 490811576 919462879 513788492 405643591 867780869 759243464 46746123 898391438 540581331 596923260 265787769 537991457 424605904 859103895 252256554 421151503 965376113 789289422 284555914 319778783 736139966 250501195 854260953 149645991 581870302 427324021 816805018 272784568 342144349 704823016 636444181 575293942 20459024 455030080 467349822 231815583 307237768 5362474 415531744 716173323 176964422 663607791 850834824 423281196 533674292 994376039 934161319 123653804 100707232 177302671 736129966 776410383 497542108 419339079 562847468 143809613 128644813 691203795 927369776 217209568 24220024 755895144 853294331 802373874 131949633 603628361 559685468 499177653 618744226 726881600 849217760 738837585 657498394 876038953 581013387 146809913 562580295 570638821 553933321 753911537 601091978 394126858 624304882 622653780 443802414 759920213 691974927 38664786 471308141 488726602 334143732 834568474 299155363 569836231 726515560 108276893 864399552 199971811 478119738 326956710 954491137 472456776 598437723 342903138 48203655 87040660 87781008 347980221 33801708 256418572 281228577 781650288 680451521 144052954 449632229 669132606 270835536 583096020 795495913 851362818 702664712 372044159 107441622 213058198 10498106 546288537 911762884 782917731 594434089 860272741 544724886 257918324 421453755 937590189 430711961 24588979 340049699 90563121 163214596 782008169 460423378 502800055 981273978 512053037 828523740 703364340 188221163 565484812 309522443 162730547 225215590 40618546 39654827 139624550 886726805 43392530 738458047 352689513 920256869 999792007 785236912 317773367 152661398 658525693 761279553 228923210 266569611 407595807 855329312 783037765 997830397 142139020 5076178 557488675 80238867 246051059 687156304 883139129 162693116 895811309 403946393 228189312 519917640 450641106 248529976 941688461 110218504 222412693 557778058 41141473 34948697 436369245 290586636 208321647 141129160 50583619 268557919 95515337 937948360 121338367 534366331 338929178 160525984 698872777 803652388 44090357 74537776 898558539 352538322 438833585 514067094 358337256 695356438 525811238 124643112 759203201 921645571 413323024 406554009 285832760 993398732 353548032 37702853 187067594 588321839 497090158 929892097 436661359 741852035 269760991 225865014 528306317 573297956 530217754 629205883 325530948 888963765 504566170 246417010 141045893 67779907 135477121 239267164 454772843 786568940 738695569 494293776 978374803 844421316 487858419 739958524 103766916 805665540 840247039 311116162 459713454 892524553 292834322 367487085 532308985 263713263 502598119 937094478 390858787 861662240 686867703 582151648 682475157 312570234 830992532 982133202 193948560 743140264 124342044 354457669 844720835 915946903 67078496 12133162 769286610 286420673 932957167 831552994 16068147 740535663 944187061 632184615 93597247 288016159 617369163 737934796 331423449 865208335 979320205 437717374 570506194 616849172 836190540 842308683 365888551 97582649 784990321 201210398 218701877 191313738 311954958 551753289 781658337 959157097 845406148 174113780 244759927 962663940 7413952 149558137 194835221 504361376 919065139 981686526 636783693 326921104 807091706 616959246 132974090 58429336 205683406 50718835 877033218 503481023 358642510 931735963 839665228 365510845 63522685 743679580 299540913 940240794 869330176 946536134 62547076 337618623 594294634 341128288 243171481 811305665 513303494 660282244 234063298 845024246 730990214 831563962 621638527 225031062 748328205 234604114 663125695 595770206 304325624 990282478 279942625 279436515 999328655 773923692 6049198 824236328 850549300 393136734 228835642 968019075 453961896 633133611 834802431 741629294 630644355 904014985 688533594 471676205 793022131 595469679 295510331 60692246 276038052 227250945 295858523 821189607 839739495 748196648 659739007 803402095 245882374 348214610 763774337 202640197 299758119 325261928 580262885 688843608 812555809 719706977 187612594 42282558 559310284 365198871 225773356 912919809 142373832 311303988 864358906 264334520 333874138 691814337 203080180 800574050 790921835 353871767 25628525 260623704 963194246 514688743 873494035 189861680 778860037 502808727 892443039 820892311 540315292 563976030 20385715 924262594 113310076 30447825 256247622 966970616 734719868 783969262 566131421 150769463 395708853 627478935 941514587 405546037 941670391 415286480 202210449 710378919 678698762 959855321 716941422 182481333 238062931 196679882 544413025 370592649 651818928 528222539 414685459 967523715 27690206 142071512 879041674 873565058 368873739 72749781 260326359 693338513 790691615 565578992 72831220 287258774 539191092 915043162 724313586 462226192 959908810 255786511 10596608 970493415 42316943 466652050 491058249 156288151 24604206 562746179 311717518 759301247 889143540 867200842 415308344 768827895 344998244 79917566 143626451 570947247 875269874 148123773 780673886 233851136 590897113 712875286 622623339 111572283 372902661 30122636 447702985 293664600 950636905 99430941 35190519 673760190 687711680 443554819 802277243 469035123 945892575 772043457 460188456 461438500 539623090 27563316 741953090 163834756 534579932 450768035 495730000 663932748 540108314 632361183 565547528 683478453 819918165 78899557 901461996 440649720 51321817 335964607 984486262 854885604 252851719 46331148 146581365 128101567 287815151 399649228 518962280 601299491 997388798 293245295 87699253 163974405 429770908 433564640 340656117 286255985 572979609 833309071 463017789 850158589 669115542 5128824 880710968 123889105 736390541 806296150 844766609 678077001 620503870 3827998 716415106 63984495 811508651 555062167 799084720 172803612 544126145 428384759 44511023 330309640 706396546 151786307 168988873 657391383 174328948 842078585 175997141 64230712 817082241 993087774 542065500 792133123 801920509 441025477 407767115 921681933 715828618 793612844 424873847 998449947 746264843 412512796 257930602 179921716 604640631 310448457 84209274 506367778 52589014 248486210 233180444 448464610 866867138 4364675 609459317 890588575 415008882 680234049 448862735 674035436 849050301 333908906 421102260 415003983 200958853 270958360 746836400 145044178 205763333 251541925 520268953 672118212 25622703 719806526 542503450 511624087 267579692 791425170 136668382 639784745 189746654 181165399 121698489 95399358 446413190 335810934 871593799 61396430 195902548 707553191 200220145 458894671 331010462 326377429 520465148 370165677 930735664 688701748 982440946 81081992 943995828 78986809 318819241 944438159 505287369 391360323 934002732 925111795 41039787 941993824 694487140 368244682 823371060 52345931 672337644 407048564 417434967 402247123 672521256 8053058 842060428 457523014 723649659 745842598 737870282 178962531 970928428 221909763 955026471 81436267 648467847 77117181 250085346 162675754 92549786 380926237 931092004 348658436 885147279 902364910 152676814 718305145 802497617 82002735 633402463 605944097 205151244 223913683 775796470 916027114 880406787 742773144 394308935 957156164 844518538 718210445 420429093 186832018 393582539 163686936 428812245 913912214 147972541 639096774 47745055 136596280 611791546 959885146 750248897 989217218 498129401 230269363 17739610 162691511 382322312 983340353 5993926 9347331 797954814 858853883 467949505 392023035 252660122 918908215 328006549 599953521 864412353 261120827 80315675 481614451 380273796 426772126 299325971 668501768 130846640 350233093 566189903 491942145 185953277 84610259 803503997 392545431 708142182 96166360 338175258 631102538 605089363 636064994 245420367 53030687 355106868 72496285 565742524 932111367 370856560 40211586 968481264 648188423 398406689 323367656 576745038 837735522 415854538 165593108 374035541 805892792 814046638 920547923 136056182 609883850 595027928 919817334 206621239 742553073 26860262 57521842 188930715 426101492 577903895 922174863 372456993 50943040 324240557 333789283 429840489 133347377 591567469 15836196 819266628 443351786 140733096 714089890 942834053 634810843 318986458 354353259 839662759 524731355 455918064 445473708 155611871 608144414 936705780 453267936 103089460 204332118 223719420 249325179 306999298 954125834 492563511 187328996 940108920 703367117 872433139 329226861 588662696 339407148 80770918 219184025 582786789 113995303 903042105 605133084 932275317 295041396 78629910 376496345 117782783 501887990 952605355 576743321 208531059 492221492 891070081 674222630 482122249 758816841 250617272 697558173 2109525 194670893 636282362 128737145 701587731 244339775 649046165 564330530 695293944 201933859 122081055 967260522 37823123 415064825 733109520 615815104 364457314 646009006 734045900 817043202 463857860 228760598 437871337 483810204 679443361 767652410 671666388 493449375 702846399 679964505 266415380 760588161 227963681 85242041 483995415 590232180 872757222 304760737 452537847 402461001 691053474 563477270 474098842 388700332 687244314 318989104 974087318 1864624 326945798 715246329 920768484 421850892 1796619 737097608 942042413 714198626 130811490 677209988 38557490 627649252 146905320 240543411 702783754 786474918 329455806 392586877 115833598 110762672 450031254 107848501 892074352 568923494 819340596 691023681 335727924 243494681 662796652 65302095 228670440 305348652 880173235 343400380 858740156 412480726 401602834 75827139 582711731 950876312 710969322 567250950 733664720 602149455 3467487 395335892 365384749 54316938 496246665 901978191 598197283 974512036 67362826 639740447 467961624 597054983 978053761 856400905 196592119 331606993 460075676 303788430 309261291 497158529 661251326 380428731 535895676 484944928 252389379 651596412 627363038 446147838 38439924 962352465 327584295 176164396 131756267 82832180 880966469 719120550 585352536 366929995 474733129 290470502 940964121 580025130 153169745 51280555 708750012 602939195 120348314 15314040 243526641 936319905 196969153 157334015 950189241 17305068 621176984 908928687 294500446 825014924 109158884 464651176 356544467 483207995 265404425 415820025 477391388 433763913 217843811 253426208 286841455 658290671 117158281 268442958 770914451 233120720 395284088 386551445 686942413 755772445 397508742 78956930 2553097 78020807 402566258 622846722 900126985 845772559 464153690 947970365 123182704 557265580 439645685 292365235 608247933 309087417 68775134 380924615 357210198 566193733 750767361 564315980 929282967 243534616 609011706 464550687 122636098 973226747 917199621 667170352 559829301 675485547 728719844 524196267 365503504 455439786 567993221 624493924 168925399 918228203 675769218 465756278 174550523 699437460 424538492 610718101 973191033 192927032 56215855 859230322 502965518 503365060 940785825 507416229 213387876 101117827 623945919 437379653 448972222 2761464 623200150 419408124 70772722 340608086 203423155 378954053 552181404 153280193 137458243 194662466 103138077 793331190 412205557 858763783 818030842 861707630 460434158 413231869 464311742 611321670 23818982 226379102 914896175 704856586 903269421 69408633 49804553 981920616 511438088 318387907 965424993 113021499 549926591 370150389 619959371 514605146 196472918 608073453 174201970 296932205 860353993 526012132 690046453 135748928 577605160 997878043 107260947 710843046 876508801 208776439 826413519 912225010 965894301 795945144 797241627 468168850 378206782 946438572 126378496 156553010 34201885 740742431 198297434 227885031 636285290 699099053 786495771 397173796 815551921 483652421 872830381 282565285 239081647 472854226 70023072 282855244 547268542 261059979 604656396 329640423 111047580 553180616 301599049 323105344 535689065 849206480 997999259 832974577 335518594 274184696 511634674 581190559 753546385 873263040 126840751 846127513 687587784 958886390 35100243 168667588 97672905 434994398 134579257 806223122 501721593 267051265 196839980 751581200 112499914 863159779 733682431 263338763 966080110 937857949 508449933 782178952 31213492 122684398 910096328 624431078 980499040 371520344 299973541 55056763 624721509 932173388 829610114 156531045 810260026 397589709 74014041 762934342 604383920 176574381 300860099 364706965 410233143 676638542 896552633 854867848 136752055 947267293 488953571 785661423 607572332 722623701 331883305 305202489 756601364 69705388 997410844 536374941 582114124 116628184 537009241 817112740 663631617 730242433 735677743 167123587 866673664 136846178 90508679 583164198 372125135 302220314 565659981 164427775 213883829 105218626 933181945 707546878 324445438 8478168 524342575 879291011 707771489 800237602 366500540 965870697 804205139 759463999 508693920 150023195 813039596 520287395 212447205 256583102 809342141 208390317 902407545 519667764 304670466 193852344 407593708 999604953 420309400 832553481 92547489 175696062 635842995 681346171 778678872 181388649 84566473 583464778 554523423 546903151 607312303 500745690 629676126 61291030 95038407 209322442 335375384 810713698 220845627 483248675 559459989 36411448 646662273 206385119 534754794 893050350 612911755 428840698 466140720 11124028 807963484 939118161 725662438 836336123 792111189 687217724 749066983 635719231 855776239 483651293 286233061 635349367 243776230 530978944 305692694 243849279 528861905 285602875 157231029 146002219 821909629 459065682 600481292 238142846 319065075 85016604 419217725 755289547 862355220 289605644 702464495 330086313 205119924 124300189 219206892 361940555 294515438 885223274 257248117 10253302 702747747 917884208 701567555 899792570 964180669 145395493 922935842 204709218 924367316 677901477 720077042 444927159 399174701 108099514 733809809 140668869 879976790 265004234 302783914 499464394 386495230 812158174 31457810 500492693 324839756 586773564 584427110 972255183 472541668 818067784 612673858 971254647 788852672 104947809 553240169 871717869 817174700 636312528 348978684 926324745 576850267 606265018 974410306 176590165 609141329 795408826 193033408 410630977 74874580 700506226 795887152 702215401 308938185 680782573 984784375 829561829 590997607 143639416 736593634 801184517 415590167 876935925 479392248 652246188 499953362 82859774 398234657 330578907 438355492 695728815 893498533 700902016 250884091 802635615 930559547 832937658 684318534 558829990 811584418 33569224 234495488 249250126 417894374 865788005 611483864 119652823 903600283 281837755 124479092 294580908 427856739 437107233 509393931 917775199 111693110 241260733 2183144 50503248 335024591 19254553 793774637 493166803 588545528 580272216 208170813 718785787 200177383 596847724 206748481 303172089 478441451 786245820 838039551 67603618 856305488 481089846 389822969 775062569 491452438 709726870 267379726 857370636 78226048 266011139 148501304 39134240 456464080 910043755 47228649 617553652 294670690 133225973 480866641 898867266 189996676 504310617 597639212 48401777 130813277 948418024 662581869 247341697 586760177 914308005 296682941 981803450 177474325 18163280 251601885 144015444 601523861 740345838 691246046 535424084 229735414 912938386 55950952 745192723 355942141 774526411 597513955 212951370 183086002 492197421 226011347 615918329 57604995 673836805 205975142 958357742 666279389 123038044 833232248 822570276 719111076 902228606 672345344 380387193 866729271 831785444 993234390 602405807 567341244 20386205 445571047 635278838 481036251 499010701 32177898 334663908 811559115 278429567 71679548 959445168 520076380 489325881 523013103 507255913 114522372 486486095 720876557 593220992 661831557 602518612 526429830 812489978 739830481 141718728 842758053 132390021 911015512 347541641 802127108 319722816 182823402 639615640 34169099 679607389 199577713 119402598 936794352 434718936 695239265 278405177 901739743 273401861 695419851 852782506 776783610 13763640 561712238 371677748 444954916 251125206 949164929 425271292 989754276 685693111 997643404 247982871 773100536 555235714 345904409 879710846 263962225 553009496 842773119 79124993 94390783 461985988 10095643 692968954 764908860 525534094 635111086 893862700 138214438 381294169 820915246 531499883 141693382 137781874 895796025 274693916 585053665 30099381 811878614 227011850 706488734 331136218 395963547 995095852 630825340 789356494 154416885 481928237 25344286 677294916 878262770 825155372 545290108 418940094 876560585 89774618 158829972 30307588 505299776 63481409 479023680 673126048 244073355 512927109 725962362 915115119 690295930 409469939 531399256 724812511 209355537 887015961 823069533 955797850 344960792 448356965 910138827 567322580 234813443 313302568 599515924 435188656 455333674 242340761 191891832 806895207 940441089 857766960 517117982 428797721 930296273 758490684 813095287 291191563 811543322 478752155 861104450 170318378 61820675 582354368 728235045 160221616 754185277 736782625 206750650 638817860 12733800 445723683 503132404 361228909 505314356 579290011 760393550 342493565 352341297 22549009 921872166 339240130 381007138 941962884 805072158 864145328 643234435 465273386 634675268 782647984 14595830 23290080 599854824 98961147 462120908 539536799 136785266 166814351 204678344 771805591 470815821 5714176 477351060 375282182 189258300 188440058 839016248 621973484 16983622 355009971 596862575 387236906 640228101 428941497 826289269 587858486 241163279 730464311 812234794 788546024 371767019 848400127 492756965 794750559 453587047 22931015 874617125 496364339 877024238 951778288 828692242 449506760 440250598 307746863 662828635 605366374 491102717 364125194 953916869 230605974 844276171 736479728 991453328 235022530 938782159 735222513 73856000 271401956 4286201 637958110 925518338 341790999 307353929 95234287 626728994 496879210 780784890 142868598 378230954 83973307 58715839 385803703 365643805 966340137 574749831 444254634 874075872 662322451 353759582 750933779 249962611 194212623 995690949 736964387 284474838 434906304 45314499 142088521 255444541 758070450 87288488 21683510 775531277 782171297 850045629 855198064 628032113 299862511 620611908 134078787 878801877 283809914 79602854 627140269 546224802 815582126 611178027 653122224 472596295 529678117 879386140 767279753 354076384 948237978 699455385 72764913 765084484 194490623 666056191 71820567 389612790 258272543 169169102 139875749 86127652 344209564 411905913 957492144 978579529 806985491 130986479 465856431 683978486 525747323 373305824 388841273 301305123 252953018 307714754 683446326 856113647 3459263 67535776 107690445 84970160 148661208 343437063 119771434 386988886 380290054 328888447 352443146 93573460 408021120 2984413 75660027 18191556 227171409 188533239 787887449 649913345 251107225 111041319 810809645 167987245 715206067 416478023 704424376 147945225 239540296 8314831 407562528 916070338 206209318 130079845 957683159 300054856 465250994 213220471 470707329 7217324 334126516 328276822 882122633 800910111 662097680 747119802 715067676 29784193 437682455 411574952 124273112 382199704 703051447 901977465 456053274 807021620 455325243 149074629 152494478 758042789 612160663 17688198 585950773 968407419 781987038 244468478 697300656 704811155 729117686 12004720 183335804 825515304 87743086 69089390 95480941 621560006 522417817 661338243 919065123 928495235 287457060 590903273 577782580 546954806 469638489 106797297 654133691 539416359 579799191 792628594 997783854 830341753 402700304 194001011 758940247 989540990 388705976 832220983 798175918 866054585 837121667 153515125 453192276 100422619 902387891 861883806 803635193 572875711 291945797 73053641 709517739 181906017 194103156 331509538 330515642 664351086 996530811 343599197 849299375 379430350 151931489 59497859 405842050 114453627 593997332 908916777 272652481 281945922 821980777 547087527 595764390 222055192 759986468 122240871 479568541 1351731 145354418 263890795 270156573 338316664 182849927 668358135 194491006 751968963 817398062 565900469 458973601 885040876 287116825 326946505 582604320 943040883 447544617 862671258 281923660 418988648 576639028 119766117 214164363 143464579 973019261 487770695 851249692 713323773 95581996 986040225 445588547 992615076 161613478 348095270 142702117 595942672 945642054 918277258 455681534 134446247 117252688 382524398 22625113 311744118 969898311 341860998 989210712 865856202 282191419 112251331 550313432 336879319 981922551 493305018 113547932 473348449 566107889 467161179 252426093 842034902 434998594 970812916 123638768 742638804 898876432 993236973 448163996 275023685 999417394 983650958 985301417 221651208 796343393 226872749 235936078 719055187 954359924 966891459 22314746 844666970 159121247 704165479 983881678 532323544 592493596 424300422 34904906 527688061 59530948 905567801 310574736 464615199 133922225 658375847 632533130 489585110 857681678 450462609 870957347 113287907 173620552 364984067 213163133 775299659 844710928 409443957 144544456 91996264 595919531 808903215 685756010 804461180 858349560 145921033 573331442 337855852 243067126 842908487 539127314 692845378 245353795 763003190 704248687 360868863 998559083 299073712 673898347 62562606 400543527 875268724 426223637 303489720 205810067 14219080 147401494 323387726 392514287 255323832 595563416 167158048 734763114 437107841 476529332 46254751 625370868 297262764 81629508 166890310 774400371 344273385 975733680 229838315 286463156 421342015 654895580 933050450 348916282 529689705 434335365 622294945 287133144 397940450 298605050 954341250 922998186 887650584 65639813 449989959 690865255 896752585 723895469 970457434 15368255 158305185 149200021 896312722 765624453 511975499 192875812 74783046 90840634 765496148 613067698 605731116 396967725 250738009 563009029 571928656 978364148 697814246 614317072 788280957 895852527 936574900 383733917 87892158 168253042 377364098 615574999 551185419 993406958 367340800 462010224 489256834 867990488 600831128 912368441 691416500 856279077 550126730 297168361 577891391 469327916 552069219 142797372 643315483 878301906 412012772 360319705 962359607 483059604 70376439 127523727 11017680 812990123 730596931 5973065 873040479 334289346 782408705 63919460 175804818 88441159 196894982 378557109 550557879 979092631 443458478 450856327 344569511 145101118 772138868 644351177 211244300 742773520 656222168 627335979 415391583 908781775 764167125 341458851 316901061 615942143 780963567 963737736 337039375 347874277 687346334 280455292 132935058 981695593 144373201 577829876 159452898 269786745 279726827 884881714 780686803 367427756 180262942 565647234 946764087 656874036 432832178 937194685 402198792 271430366 958535319 389236735 192970264 145110700 426159928 911392578 32752025 745328588 458857030 680311509 983242941 13933513 976357072 595339694 393709826 492258834 805524192 874826913 803482835 447147731 626171787 71424035 691841875 470084731 470452138 941811062 966528539 532704005 870758713 164968380 873625746 953257749 987184882 249002335 464882581 113485453 711164490 316727186 608173202 441282132 378433786 823020139 607065526 905951654 439343329 656839803 451686768 569041031 514409506 610054496 477143502 122494291 422740085 826329624 425783990 74623807 215202620 829397555 668887769 314923292 236761216 484216317 5888828 177247885 51054481 145089755 346202790 694579244 551430183 264512302 551359090 175559717 27866730 620927061 672666752 37538647 881799806 561806815 457162074 380661828 359475689 469793121 661610144 686523837 906787678 124488838 392522466 786877581 149432293 303397122 998000626 336630727 397870406 86987733 444131966 184435248 232019610 882866543 925246817 915258238 352308386 222793177 97308169 514798648 689336809 707059386 576436954 493203087 362696796 258619937 754925859 76665031 830130879 380255379 692373597 79260254 327572460 248179309 306937087 966090928 838045828 901473186 158152940 511543468 838903941 778724525 97658118 588223870 771995369 854245432 597537222 151966247 403489122 245174090 228111795 210216156 775329837 323905053 194947402 493258032 870430243 641430791 169915475 542683487 128258559 555148887 607673804 766821666 496046231 698445888 952979176 453152679 812920817 320491918 400697234 764661577 508337009 422180501 722874145 740854289 996172425 530932072 150309452 350010401 168316923 842134196 736951272 530746495 757993340 358905697 415394685 878484420 631162953 948284026 855956795 244585019 638507673 707916759 511754763 411913713 550662618 814188642 220094823 428340168 438715137 462462938 492600091 203300139 56634248 505366830 906230472 254186593 378532517 836021098 710884384 80127435 815008286 997358691 283319121 613022558 884589737 742959192 927643020 847968488 403957851 649534281 409740715 911179160 278908202 391978162 560956654 798391640 679919354 515418156 253635993 816788448 657733823 984150376 753148650 808974957 718493054 938919983 471444155 849770616 603123954 908987314 318651084 452811402 371989938 506198968 377573193 235334160 119599974 318038269 786170550 845616751 86387254 792654900 867505619 831245614 367395856 24244835 251294642 315100134 592062991 381941930 972933325 584170368 250584610 744693941 279157784 558786767 541705055 619444541 945973963 188644747 429524822 259984904 857198894 81148739 151411330 990407388 321688304 760538962 525878707 810784190 300388801 191392523 712395478 255449434 271021569 810156996 391779790 774806622 942066184 834087447 286862268 690526268 400163477 446256373 287630681 787131266 901448376 305340092 721621668 308328465 52613999 298502574 312844676 186970807 754086936 275310574 656627740 205563211 186649086 18549041 194088188 485608249 213754293 82582674 518611095 463947390 136397354 777773969 628216016 492826730 238604910 770601643 957921411 125583975 918720963 774439774 832669804 71709323 129216414 604830838 465834712 676114333 697025815 997157146 635397732 632830769 405955723 179775833 284208651 883278683 251165029 876384014 550043640 570419273 650000643 59737384 416603885 129996871 499490499 270201554 61584278 14793800 200116271 904668517 744066906 108820979 817663096 829637927 429076099 565992779 937680120 933285001 171052427 996560468 152351080 731150525 456126292 833742150 88133125 806545464 831576851 116389643 9269906 772319083 900604251 710434291 452543925 830614004 378686715 127115285 181533606 874320425 604335964 51630938 423564609 525029296 108885339 557489396 746883560 465793365 331749665 136834251 74708895 538500881 800011821 273811842 690883387 683353475 248865145 768630018 540606903 498161409 81955621 390743528 604713532 15404064 951628710 947016579 487326271 29125072 899518828 817783047 391264071 392792804 237685728 819364150 571658702 686311356 160595885 574103267 294025672 191753858 473802820 507380145 52314945 488122852 208584915 279873162 108627283 892171360 646773572 773209602 819596785 413379886 918043008 539633257 373630347 927144955 9008914 570386769 361917676 45040465 900865936 679671795 443674681 270250383 19566173 431650952 962522272 633286709 15719364 818958979 450344705 535003295 78044818 216746650 30161906 885998975 602024459 610152690 908959975 357649478 498004274 674253203 352255819 23382541 846873400 189915003 347525530 885032099 489500731 951473224 690145587 528296432 748368646 28216959 471528324 660051367 677608756 955456422 109344515 458247570 594055997 786889825 399806088 853595861 186979030 41365807 154581408 637944829 515209769 920611606 548939471 64974578 250189157 567827366 809488779 343528289 498983987 667391311 263908831 426820383 673906333 959518850 770876655 823394437 724531519 962457803 339725088 117913193 624968072 894326319 715706262 605022111 103650879 730197311 662218658 877470498 207183667 87468842 889843554 664016529 541940883 117068729 339412371 219259573 547824172 427208719 432880570 91101576 694886449 824767597 236412668 255906233 130012282 456086108 664171155 215929093 896915623 281297029 712736343 170161872 919269193 240613516 992462566 961926425 142573433 166878844 939930576 287291929 947235541 936843621 166375584 536272637 244673995 607450978 777743795 38229790 644972482 690813076 500629565 596396067 443138212 276860706 310132830 891691967 127686675 129953066 411687974 574349161 232265511 529801116 784626489 805066874 716117322 959258663 984443758 7950383 904768586 461063045 413482027 555375332 704090694 494604683 792970253 283605984 914665824 994446377 889256815 247854878 736951795 452784985 990321910 52851378 200825860 122756872 975629071 806141484 349094206 25632221 726330458 113264959 327248488 484374604 794914108 216069900 423152501 244082942 27038793 603002129 1292722 832997066 734881458 217059326 865447652 323481912 84047578 920269517 542861757 295505877 738407299 350316597 81618324 447115717 544370560 365019940 705242158 743259194 243848539 116897453 702190493 407726091 161666641 934975220 155987983 5662738 933636500 241813959 493503478 218306051 398928012 80100088 520205947 16589646 878146514 803543373 973147540 696465343 239367642 31516560 399844709 91384718 653783096 791974959 774100482 365620906 486349003 625047664 66260877 34382138 144952952 335825283 925084695 893171632 439133273 944124400 705191738 209026963 295169321 2609046 1190609 742020810 510526682 618185138 309799681 177311892 987020337 533055828 749729637 621596098 584731567 475392130 10180596 202888607 370434534 470174574 333943418 667947278 994934856 585124205 235302552 923430523 869465092 711225780 608379513 30421279 276557149 485334295 165589398 640164247 991964109 434502547 368892958 418402568 845989620 137628446 464673943 102158568 327361672 457854829 863427042 687998266 231698989 742856149 357427663 66048857 552329843 87596364 287644842 893102265 865196730 649010636 797086317 913466806 126887446 804345468 15447336 469093896 700385090 192933386 680146228 897999197 960190032 353214084 336703470 614253330 863550895 762101300 940099583 240426619 744413930 736002713 67457555 93118811 801401347 993723856 796244701 634095544 220388861 574380536 900924961 362331369 685889623 541877023 72321074 627146732 312845094 596617784 257148602 347153163 847114238 944331420 867769260 665766733 834527985 212528780 501963831 267369306 337550059 212279682 961258491 408679451 782355686 262068140 327442372 507166061 740238201 949096117 874927418 739268283 771141235 398178892 734755937 341732242 778064174 697956293 113258517 580151360 616906457 400993076 450308001 431362087 952560886 270776939 142956160 599599079 688684343 199462077 6199208 879942524 813818061 460780604 437012000 390177369 246865533 964432335 775429959 435839888 398377569 437361463 231055468 78360702 830309670 855028559 441191287 55429378 766883983 828898970 980207670 741283184 254464891 90862469 371233043 289743484 583138939 434644525 905758782 161379662 342607926 440201334 551899003 746265441 857210553 23673240 648857119 970328004 22451311 589864026 447283893 823704935 37520611 699831881 704314989 461957174 150630132 910840031 170650875 197724955 76743049 349932318 971836166 981769194 4373811 182308139 650944087 170652742 95449049 895368044 478954179 539147346 654860263 542168139 41488800 165546029 557414108 649855845 589882996 627603577 68245100 963796284 568984102 869444736 630516022 137225986 938578623 540791960 271005500 461107712 284939382 406759421 44687654 245102286 832529259 242591204 523777710 498261 811814073 588983448 285240180 675080192 182007945 702865509 867211901 594287759 60710550 365680436 64303940 699216715 582288627 304903678 820630892 560723473 372937201 184018342 969881444 632546091 323162585 619425708 627269232 310834340 68212823 86047437 475431853 592058157 855467943 233460912 288464183 191772823 490171852 257845229 988440816 715041972 723211542 225988649 506082144 717945075 347118182 444822915 295148197 419163658 255140205 668498846 726750345 320771706 6517630 598864582 988328771 994918863 539570819 794078344 104167820 253946031 688591533 590752154 363004383 431229271 164020361 346737795 675091274 559006102 413994368 391302533 521399634 224096862 735202286 845081391 702280963 544281800 435932289 770967855 399627962 535648811 597529238 401920701 63348474 109025971 975816404 210449212 611588607 276048994 432751363 808232468 104072764 138114976 75796705 346511996 413402563 793862326 466537003 610228922 302347919 255816178 379414813 775136121 184906791 86908091 553103932 821595265 248634466 473478375 783403760 710040573 844705971 728601204 350152921 343879333 603693857 863189129 753818187 706674870 739406998 746551162 186553102 66086364 392317789 500823066 267163699 252964343 676731593 359624364 861787201 391039076 69086632 49010685 471980766 895796085 458132512 833424627 19814568 316563547 543492591 362124628 813537082 169401984 808658712 56559157 825367593 750604796 874528385 366881318 728285585 851720472 671525286 365127818 661797027 123354344 907747584 389402188 32500789 338594627 740258293 863788756 794099250 340293461 402243534 669416485 560514631 570038983 603406492 822876336 701638366 250164244 326282126 843529500 243838985 918822395 799869036 572409316 389202751 98289973 140993082 776947994 905810394 148521351 751541131 366112728 688500986 933804484 877186157 49451378 303002644 314780541 393707861 737849111 275716426 981500549 978307529 36138222 411390302 325497675 214747348 315591811 666153377 598666443 664640788 229755769 406602622 435456197 522452145 919882606 221947798 652403624 695791444 628758072 367127382 541363251 318796948 252827504 267072542 198446809 268739570 828588000 924523475 675245138 720197452 329628151 775904910 259676785 825452994 794948793 860623260 562034506 678270576 424035706 424495685 362402222 8564829 951435434 256308867 144731862 269353907 539039410 935310863 836684401 426157091 748049656 236609348 197916876 642206911 68570157 861203669 526396398 77270620 171905812 724718825 278303192 376653777 640746456 480717467 648791848 947710872 517254793 947551666 216317240 995032076 579677478 730681971 568127556 195399724 96399630 489639583 517067404 532554598 940476126 49713454 330763406 410696985 715992528 545457455 476803581 111282441 35131772 17947558 155082542 79108599 637151439 230597029 663831496 508116726 345183591 187889699 493794191 563795362 396553296 455147784 222264741 746163444 630214515 166518243 290703157 206036251 316066282 92789605 491947030 410140867 79602502 236990988 283813291 247215061 56346481 468900543 522304602 894838370 4882862 322788629 533456938 758426869 883184557 122756381 247378040 470455031 376435817 10490541 350433402 690494545 580959414 908447036 881251706 47636625 389419570 25135987 92872307 582238914 328901185 220733607 25921342 265969610 514627584 640692557 83958966 695703869 886940156 373424386 845866638 866967946 785390439 538266494 725949533 529741245 5992077 876958088 759915268 638205081 2001921 669748079 137218747 572801703 477012112 824224191 614173748 897962509 435437458 381167949 127189157 182589855 757216634 640965215 362358442 267775549 494293794 972526942 212188538 711899129 74874842 356825251 231695296 647863080 195344159 591727708 921682072 870001558 285533755 785572443 910659624 851980 764095205 87141347 744619840 248575006 54259906 858970454 991173189 626608598 916689787 48811912 808700110 388548203 346681532 360481566 518416256 726518926 494472806 836708436 930205891 597232963 473127698 142044103 905154046 205611199 568042493 75303162 618404243 842232560 749438229 666205973 919690783 74546129 989408725 230691832 512894506 775804890 378661007 479965363 58996906 587870404 649549780 693449840 903441635 862713047 165194049 818293345 690487002 759004616 419305914 604182505 944770360 794408665 954333918 999202648 822800161 887730666 149813634 599712005 289589451 252524317 835877057 375330454 835452163 994522594 515248257 638254719 550717720 136272098 910930194 602754915 65531391 964419535 126675679 27225581 315759522 669285037 839558271 150859010 15127992 413567176 798471519 171736426 663013433 377052242 526915743 26369433 683560492 421172503 359058727 44782210 266593996 782930099 296675050 339354921 809646388 991003302 269807092 496419728 21585525 985832259 756696809 110626078 291925381 89071233 370441535 228426771 831360134 285846680 785731996 223706231 828827669 734353972 765844735 704948960 527188681 921701696 150101192 149894969 947339583 181724741 994049194 631081167 322037757 724985822 800955596 621393737 693690013 513536590 645799764 18254843 528427998 693643646 402414182 221578239 856248729 18803343 110586896 266887468 85172681 200733457 805745284 129791805 161004253 898031847 848029443 531844686 803422723 676978465 189477654 895811300 566759776 271581770 847511270 457799098 532547496 313211516 583685054 76940578 326823099 474834171 170558771 759707262 132945628 981527648 597416541 782383627 743957907 632780711 249788919 997538875 68965237 293682383 306338058 893093486 187506434 963969168 920560420 802243469 634785454 273824093 713398052 31914422 335661201 439537480 247685228 653584040 883274053 885466309 388038734 713533446 352493932 35154511 874614721 508848639 542639957 769178738 222704106 344105838 979452398 328152797 467318144 433158929 116939509 113029429 299565131 52002123 748466791 436611970 490354379 549283991 288445553 787068986 600469365 26724091 671373804 176338725 239202786 424051176 192172571 437498620 947420867 410637846 925398661 686731709 674180388 486607629 23324528 701409361 310619229 734368471 793912152 587262147 581572654 960578085 816192587 778719133 672512299 949297469 367737868 252939319 215836339 927616915 984296307 973551361 375110129 224993688 615574659 146702227 524486176 974295678 567745986 513591030 880813126 925763060 73942897 85463967 632827026 558178593 455464279 85384552 621991349 46063758 700375450 480752915 955985783 831388823 884555459 166719279 354739220 696684565 251540965 471481907 232147483 884071614 159316063 619662766 408784066 565881339 578082641 238628883 384579677 29399445 980713724 837272501 97830770 528222189 633658882 241995952 733795457 407246698 812454056 680814848 40231739 83092907 645839619 936884702 556464741 608841271 289716051 381011892 221496522 997514766 356623414 198134177 121771751 10316841 214451994 976615140 669856924 635489825 354218958 854486766 169526447 936107107 723432708 999541868 421761637 973829299 139140943 449135667 24558497 985346657 430827578 121355445 524916518 134219902 649055882 956507273 710864488 169822458 658495780 251650584 404719162 118789298 440567299 435231047 393223055 612635024 126261726 276632845 264748420 463613224 351819181 359506277 373647880 192808126 641887277 926963665 647461066 981650906 203022760 131813112 472527849 794246095 328212941 871218633 393636706 839871204 692614170 38034701 943901912 916172641 338194242 536228537 360934796 698012725 237522852 958544448 370669297 127980011 173145961 135860918 388561045 295008653 461310429 979117548 919710011 177812022 782399415 912091889 481529560 521032298 917775588 939364407 858536229 74765676 536318334 810772873 689529118 777847784 539760935 191119789 393482400 247727188 599620788 94916209 766730877 395527440 352681863 165442085 122780631 974712313 49693347 775772201 490332277 173282053 692241292 429848147 975824889 118669059 123121953 461570540 368836134 516541489 987966721 702686927 261770703 280037401 560833910 414730109 661341936 918291588 789270560 37640809 318855992 647704543 413608187 344247344 58738923 531085761 113780220 695221798 161870681 484585432 255318451 729047281 550867773 713000158 629572186 766067392 750122819 350119923 374554257 777628789 966176026 807103898 807347331 499069090 9907995 570891753 465535369 437492123 139519924 908160848 731947138 549183249 707226037 181576077 984571850 308857279 636789974 630989005 867950370 854178891 484694276 423812368 649835160 461901128 584825662 19984349 715224772 739495424 44739473 348572378 40801421 670447987 422060896 398226169 404096128 464118340 952656279 247695647 640283171 611543234 498079402 454320000 761360117 102861699 764378337 159869895 326180878 152611448 835210531 602418892 160151234 891343564 463327746 626142895 282904743 829775940 551216794 623706928 698680710 729739147 618883981 901417707 638256074 697563553 535999357 126981964 128173462 799046964 781783370 868017023 448759527 444228752 139806060 297365700 409933433 576591184 945837466 85321895 594343310 579814779 664418834 199409856 385050303 300740487 83049135 514306598 498421743 112115838 280930248 792019562 676992585 64466489 175172635 217740499 900448544 499701229 987724830 532514046 843690445 110390529 768518863 379380297 559247442 801195301 393924948 53569562 122888145 266381671 594797006 772534972 241792151 855774048 615358767 908690043 208776010 912788688 581930769 321491026 692974312 915043341 478260159 127191833 994115264 393698236 429328996 199298563 436833845 431492441 423843373 785332344 161510243 524110603 393094522 556938307 933785345 966550205 777750174 897414613 543392274 183333977 789596357 659023779 532670703 218845501 386852799 366556273 857803602 412830156 584569897 592408651 103388666 113962139 303321948 542935310 257108175 733925754 816591811 986210880 263966659 342004107 128083893 676293971 987139293 397895534 373282843 161929197 875137411 581550244 18290478 172666917 448334955 30698995 585709175 873549384 724660580 792404122 458326403 340845014 216828194 340328960 235801701 158142438 506071947 953346768 199735268 916596330 193439062 619611788 470436307 518763721 891433134 730186922 192351932 785155545 21647333 714735690 452502081 597209858 731258140 848974059 95773966 137632113 455954178 211072070 469934706 286004531 819383220 153409752 258598635 134253482 302595994 676751300 980324038 586761438 39182258 854630345 909563949 183981666 753073079 590531310 987411150 472161213 31221649 904851652 403372590 419429451 838251454 78202785 724102613 896135682 258711944 853726776 731400466 280580355 960981809 86573064 257806049 397979149 364239851 629963881 620424781 907585162 336286719 392794329 74621832 947529544 509666628 676032221 964674501 166546749 233176574 273461651 920492410 337599320 411877983 183853904 329634237 190869205 438209543 635651703 229098887 671375028 425932007 538481556 757351175 405904078 681697850 807791908 456566413 455770852 739562908 569657720 437971389 796314318 634628398 603630665 322641575 443956837 402119557 598985066 471328371 560248560 231413772 857869616 957096522 391783287 943918191 378712388 193202384 21882462 23681748 633614345 509182684 255904097 318436798 980908080 510976760 4116308 237965946 210845128 699003513 968559770 358861111 247888875 160896717 25874862 548709667 673097243 196613647 758660400 798050821 628412054 944905467 759680607 890543287 944429971 510024732 982615517 5007908 241034901 480467146 816928600 663236196 395729137 404812212 468027171 300044414 731501046 738116380 144591852 463678365 886380628 107279260 927065813 653714224 724188884 704948373 278407377 752913496 34735642 393130761 606688241 185013129 312205147 552822896 394904103 636176652 640189622 582237045 77996298 814096050 711894999 248379055 777455674 416670648 309547476 13174876 409293393 808863978 648217070 635523353 193124023 892419467 227565641 197971743 418384218 837708644 513392146 890193336 719443893 961694842 485352277 764101673 941657791 383117408 323429749 80901879 669089232 882120823 760933725 748098154 487205414 908260662 920875522 411971019 823295271 814487444 795710728 750220551 115752732 836882210 671388500 262283447 608075144 494982211 191372096 627409657 467757639 672352715 644041108 812950665 248982146 534660807 548503499 808073444 134783665 343447159 664297746 261381003 899465234 575261676 528209566 532361815 591767009 73840184 588625919 8585594 159851832 760926307 635129739 153191457 408297615 798421364 915384980 498541907 773409759 611792653 984230406 87970383 875296867 820166112 666964471 874173915 999280752 165712707 164317777 907307156 646996956 695285581 145777397 161715235 629536929 841588092 946843040 206258693 757327450 89132259 381227536 472998998 795658197 140637267 474935353 665390813 953685172 478922450 171401215 491022743 808169771 988419859 347177092 463682936 194339167 165680712 809799428 870740261 472930354 496913786 892901134 69746744 422249414 100073733 895258472 156574940 881862720 275277539 76677287 990857576 341727343 805972187 203754231 624604142 861038012 820107724 118310797 754184866 129645545 466610067 308018793 98732767 414478662 146465907 162019583 658048379 231490825 480543900 484846728 861129436 643510263 774160338 699051572 581056171 556538527 877009239 684902192 687170776 476811955 357297939 790845231 197730638 443202861 927105103 917937894 59025474 63672191 164970614 923257209 839193417 812890488 105319776 400366649 857814104 580994964 393808640 813611744 196745363 18031521 712469819 176852168 322762098 800500951 797315213 869338913 689992517 683966668 58448521 655948751 425260453 101907850 236495328 54055937 591259856 685075642 841578199 108481137 292789680 687965798 936552278 575229897 568500873 963991423 390914090 262095162 460174754 759884453 491851846 476645785 442875476 750159030 194899546 132819783 818960195 79549659 759656091 706168702 684613244 629340241 291656186 282412178 593922002 840622817 144829360 677283862 396325258 847427539 638541154 129400455 118416759 757800819 774426475 859658079 225979429 541277539 679217671 86721800 838084925 33105372 214757513 448512482 160421407 272493239 243831186 752447790 915603854 831283605 546704743 547623294 822346497 163339476 867318310 507299409 882106029 804073910 588740288 656868995 263581394 255775461 560134622 988979365 673545867 375625901 162246301 686522495 827354309 219111789 705912603 699765196 423257316 625138685 650203232 846804419 709352525 961050592 526839874 128421610 76114165 655389868 966574384 784339938 591792489 863310014 121116139 344908432 852567733 639775366 682023619 22278174 714735337 814730715 558727424 801912969 784338051 123669738 988626778 253025178 354662500 252691116 533820394 341167084 160020623 337005 803521721 136443581 914952184 941024707 387009799 485418589 991965852 346347199 871779385 469639080 207517886 618444638 961850208 474483571 999532746 250004313 22808879 125577290 985828356 925312306 600503364 528518578 630337477 736809890 90328717 441833367 547602677 678834403 614555326 112288628 365374409 712332739 77004491 429239997 438374241 847367111 699262450 404431922 833699689 530218702 534985384 206455355 663520508 397878247 766783870 547619738 24621197 106086213 177704872 419040943 796720208 738394891 305605760 289599176 466619548 342082153 552815426 936342828 390551925 745258586 461043671 673546816 764534904 837276217 470700561 985996678 725452266 850195003 320824388 769580173 667842 367599463 816757345 549826635 666663930 970908154 723606349 867272553 609955874 149313264 820396092 459859574 737181371 432718007 109155398 4701254 266723673 222797374 531222163 833725418 507149968 358423997 155874283 56802727 852577821 633839263 358536506 13781112 589786090 269599915 368391208 940859899 898543535 256916658 994736606 240643686 180975478 1988677 335990599 213860285 258352174 245291493 995182957 26504967 377307448 395827758 361251994 334420089 850707951 713172052 526210465 368911508 448430391 561229790 114832241 251149794 800155385 93174012 159349626 439269752 964744297 193037869 373792117 164801893 465999992 194303240 499376249 390850523 729873864 873231234 474548895 386870062 161343463 724503379 410473158 927952667 619726083 835373265 597837356 629441895 802390025 824508518 279866103 544411460 170040053 381146244 145333142 844932539 797303249 111799259 523620593 276601379 253051085 678598972 562119995 798649071 916202847 375485275 894249494 389413774 573784563 953920378 915211745 729062621 945391226 462972234 893373486 213908931 79816343 917350952 559224276 239522170 502279690 191971219 62372927 784371932 487321622 595856956 918805381 699796723 570632149 979182620 639493581 350773147 884712109 136868194 560959280 276529306 463430173 679850689 778116059 483666772 15218254 528460004 342346726 325501177 737223232 877554132 691449026 381136351 137350633 731391980 85663014 525580956 132504070 675182294 484957705 308601848 248699566 241133220 154317315 439021809 346385828 47289615 977987336 754932789 789476170 664278228 318150767 679960524 628087941 475204546 321224703 327365478 183626005 318867442 387562614 960573820 614077015 655733050 797245542 764796427 147860445 139808951 227686322 445859933 187959095 261609534 40325982 669460079 608639149 841208154 171845269 938504958 982698195 999637026 334753698 433988360 718975727 361491679 886067626 403312997 490725702 553123963 799406564 567801029 494494145 111658996 685143242 260622437 345187931 795007574 866687715 343677920 691613170 172996045 749776922 864326092 976133078 413110097 872589193 560125047 547424342 392826108 294551245 579708262 909526049 374013333 299654938 890948039 599294883 231008556 823946156 745793487 46481430 244350956 219892392 710582331 932979201 700285767 211706973 653228338 23591668 184319626 375088318 61432371 719827289 256246617 973598379 242629826 933098010 532651672 293153226 174825836 575168370 369670472 220040525 257035483 749887432 785747300 171003864 85468116 236893711 240103135 969609710 779718214 366482927 139525402 484557487 723312425 433886695 689097536 437447904 737121508 742546911 466928117 523275897 590439331 641563906 561030011 463859903 597492537 791084719 633967427 554591014 484583395 540240457 37472039 32183084 347521165 809965517 128575000 808667569 490370413 927602802 539213807 747149831 995029913 507558807 746435548 411052310 129131005 497883408 205223181 504086929 745993614 58586975 176143078 288032410 664010702 859700090 725584718 880825985 293116053 753205102 838580152 746240899 814262006 580050449 30829035 132943771 43957552 779870473 841001657 285674625 120637188 371813505 744522798 841480709 735181360 11900466 574719709 611402096 45812122 26141927 393674893 93220984 614388864 257223255 992973901 570837951 297326744 608578882 949426376 43340552 191108733 463577710 958415910 870983146 336832143 807815663 690414461 712084886 118268005 94704629 516440796 398257088 27023658 83921986 318768673 941329164 358612205 213292023 24670988 233382484 768250861 377090174 993535697 214606172 73272273 404141127 952424262 594352321 125622387 555610734 622954192 765555104 627640982 637756309 770257752 56054935 145862997 340975745 664274435 677470528 823762946 53084470 608320811 155963448 260789429 994717163 341523829 948351449 618840943 788242359 35560836 149092352 574557159 21587556 966746217 971800874 794548885 559628444 321835134 535993352 102069620 691141915 730657237 855274350 987867131 159340327 828648252 43655871 473133318 732158604 342111857 87656884 885434450 971983976 250196937 940013398 966705692 48560911 35446432 257612494 120819765 717270145 920390301 335336701 408372680 823172049 336015545 758175874 245767692 653254246 556668220 205130039 825427914 43957223 126318758 955468133 173718188 166818577 603377794 685938479 88582902 327456695 667584023 654859330 739671652 561867803 623126707 841627523 643537214 646439897 882966616 982516247 166829690 898826287 79620512 387302179 46165135 183705096 731049896 573098006 843038379 873118363 750659816 123847373 968971932 96269389 201256207 846203213 846486620 233559143 606085349 4886242 4506314 297230940 261587618 772857004 90097899 432739480 708899235 131051244 660018003 418331113 550366617 925734335 502616718 865005938 230737443 418788800 623200840 3147769 564498097 310996949 240265080 935605507 942381025 180022804 164605717 644255426 26653595 210931459 632920440 622608626 682473058 925398845 17796831 670607314 72073935 431242955 214535548 54201402 688901758 648099612 624360885 452572003 180198419 134430720 635726243 250779208 322876179 582593233 926382400 713362668 871048683 809259734 738306413 828657100 20515610 181172787 789764016 17314035 164609117 706069350 359822225 685947004 258581461 228602280 563035934 514059821 673996161 668974732 325461842 402501322 743523761 425845584 573050319 722033208 528314119 75884292 252568430 664341249 717226463 755553328 935321219 454913549 819799240 346245860 156459961 868864317 271730526 586735442 234277861 508928386 647882829 530756077 57090060 282491491 846160421 645899888 698700126 476953620 874527307 615923408 204487788 74736622 268332551 890072227 71580863 11948840 349994278 25954852 515291487 311725567 222647590 994276535 106035034 123196636 396820892 874540549 906215409 517232294 296786510 853648287 31890982 831921945 341324658 69111551 971200784 66622916 173372227 918857187 690927162 733599123 427656102 274253564 326719264 483683160 171934249 681403902 248443867 944630790 514158709 125545658 677693336 428296744 498749654 119000551 888406284 766308348 432211155 944603796 837121789 694138158 892656760 209870707 471810406 838498088 729074194 866642267 459907288 674909916 326304521 494244522 874688414 937320085 374384710 924425216 745638298 966684870 755334621 262347859 871137638 664634326 986269395 206236485 746299960 185514208 554275709 8378107 766303873 549779438 352814223 751418473 401958036 585210233 681137841 526471432 306759489 371763930 610404343 695691078 932120429 506243263 112548997 884553781 246788271 723730776 112299780 194562762 901139900 802397666 361761372 527200426 712198558 537582530 377645032 836486986 617179825 440054949 352449337 182024702 360266204 466922995 463664116 279260700 252604336 94521382 882428457 759181840 422681506 19314138 552973942 262274070 288961776 452030992 458365741 355772187 426320929 763725988 40826742 50128505 631373154 317785112 286782945 933061938 18768136 716197994 81834327 54222095 763246803 136970215 15943754 367028416 818649568 298119387 362511857 327770346 962740849 869546066 362410114 89072568 797284680 123952487 755738810 774366948 292923015 29672636 593933109 193125763 122855006 592449342 251550135 327709821 919793680 830304515 140239704 362857898 229471325 156695085 608994655 110384408 750029972 250424921 370666967 959697407 726076501 381101570 800101478 162316520 102314435 166889854 83875170 926588250 790222519 659884332 158431340 927814492 39061396 652598481 390428760 744792706 921306122 570319196 960290217 996910667 819607736 125418878 130158052 376067718 919093089 346183279 767513347 691839514 119280294 139319383 760260985 86873188 424247365 511686948 350502083 271951896 871741604 601908961 728585714 139477819 318334839 149944604 2454578 564907377 215040230 893652559 218663358 193971112 361177710 101734381 61026299 594389221 136503779 730007689 164155319 269186972 875265989 918591323 842081273 523914707 90908744 191493848 200127785 882043488 445456131 885420194 229548151 948182745 450960108 620817692 102633296 761738301 467375749 750979451 692587641 896350069 395596041 62313968 692310585 286747898 231654701 35236986 321281096 100604319 375110723 939817746 522471876 456810033 404816581 472833782 15435828 891327505 229523061 648691100 220590197 365597026 489332702 667778272 932289752 656636211 862783311 467106499 607580996 999209642 811181043 437325053 31268100 66670512 959584639 952759723 752450486 498040141 745692575 214704028 649119309 684409127 332706826 556912489 491875814 319355461 212510145 250737183 915377650 795260112 127817126 473515970 921932264 479230659 841417252 188111451 15114976 217301671 845098610 483372706 448072724 763143338 551761073 384581522 225610311 314900984 822649954 533587943 476785692 491118741 170947407 628651959 852726380 381103418 494435921 203302563 478452885 876186401 715683548 747478852 399899144 489305536 640055966 56788320 295884857 575774312 752645180 408932693 941415463 590825289 342218319 414409981 436948601 614691992 60650241 341480026 326169233 438756457 85477517 289837997 722321914 183672751 495749589 949485625 990365213 649498115 611751821 473768166 785282221 592813480 498628772 215333754 96580881 672581236 507502200 742041632 947201905 284578483 436895754 937229517 55227553 34392408 903363043 435203103 201968269 545944498 263053821 638571202 59452347 641572940 671659029 232506085 214826000 765510977 70075540 870880678 933731069 879267030 312983730 213837055 65905435 537098006 34505837 964289945 939900550 471249844 265344431 752977080 407064401 202417418 882464281 14874120 663191462 90024328 325742407 216280028 738640956 752466408 6611659 774413263 223085959 280153235 739319515 405073227 597150188 718866456 718975346 312446793 570417230 330217936 726798941 905999147 172246662 453614988 100448594 555477019 226418503 979605914 917162576 316811827 419858710 850760408 269287543 468134991 271842342 983416394 529281345 983855642 568691605 787831595 312672664 517405648 504693122 918379452 9941247 521575447 389006679 316088477 452257436 511031182 561006211 886871393 984498402 571142730 705574699 54708509 11432361 179491964 511588669 240660317 460847395 169511657 253106648 241172539 619028653 530571522 996043783 521223827 602639928 242704322 308594101 540597500 680627635 444156855 477959453 403359609 541302930 234813418 757257358 499437893 346362446 635527905 261894401 229832043 702448379 488166734 398868065 667735456 805832566 931503619 67553909 918950702 63927934 642012554 221423014 304370777 378801949 375026199 503941163 159468274 694406722 194088475 234896053 829977135 598189596 101891516 434939296 616863653 533452189 124359582 589754597 729911048 790217306 217477212 307599250 15206739 233518510 423049025 719070218 943312816 48110618 403967536 68833288 508498558 13498854 929796498 540012886 333534284 117034918 579907740 545164199 855901694 629751749 659865117 169595153 536800917 933990417 541622889 434036501 991016745 137296280 278707775 329285835 156361318 320746878 271298198 350468056 553637502 543847981 104492831 29468626 493818911 831455415 522335009 89186749 103298266 865722101 155424977 450702159 513463597 480141407 468349960 196512475 143799659 71977140 80494920 245458453 484007535 710436799 978277340 769448508 574379725 750534740 12883053 446038861 234618868 77018514 361408233 289681505 911078144 742143444 74397829 257146164 371875515 523930594 725796748 779133616 520898101 606273044 211203099 164663936 505756097 592574003 659445569 671774779 937500578 703822280 703018202 459073432 37192167 905922812 677553764 21281335 944015353 351239577 331318617 339970606 433226928 34843334 480492622 71757181 686372154 668623662 31633137 882850665 536264788 865952180 883489323 47261270 608437665 690279873 200660030 685573820 767335165 576047192 579477767 435014119 718078984 603509170 673859353 208332880 478912447 706324687 144733562 863984967 671478697 445549444 229731500 108945674 990680279 80237352 338872295 12976542 756142854 878631249 374298845 120935187 365380894 957164082 38794429 939232455 697935622 305055492 199053347 702527407 687075543 89740813 45827092 305600898 706973314 842672761 929339290 510538287 333209665 379895842 104685891 721876468 646128542 507926236 977428811 444655368 571675285 172098995 401004638 6902511 883379938 160901209 46264453 982040991 362798993 910403251 135595453 174657774 150225597 201182359 158901352 395229466 282280000 811511746 326751725 728012875 36767572 763695027 589460636 246463638 180465818 6663748 50981383 85517513 646475703 258134827 792552373 883313436 602660135 862052928 55569347 969524502 440069200 581420602 905855279 462013276 803168654 819323921 445111738 494891909 151408452 746620067 631525030 457232703 657528436 543187081 922266065 364274742 806028448 845587569 333920266 837416234 512782048 872693967 652183033 867801310 334611691 303079774 861036667 180355213 721096837 691477652 231927532 157114092 168880159 270206586 108233264 510686323 265334987 195336755 953140948 754225015 350194300 702543336 889970936 617592307 267797985 42265674 861695800 991808561 636876541 720048266 984372007 796650425 983752814 94033472 323769938 221879343 610381570 422662082 894864228 757478844 361368509 842393526 875885499 831790879 997524595 978615104 680394436 413256068 933636389 39431384 72241052 800805309 129944184 8545556 606983665 614014256 439269832 521554521 263360372 456157184 404571669 442084198 892263700 904526116 542748087 653112441 542945993 189654280 823484415 130376012 329991219 927424032 363628444 247783608 902752581 996499213 933844830 491288058 556552223 544689328 513790501 159643171 170076282 904654375 731260177 131732002 991581934 618196245 172391760 682740803 223515562 113905558 741268448 371760400 221973548 147629625 731772740 423935618 277798993 599077437 733636565 648776136 36021423 334370959 881990320 135124495 612871399 70937001 545154482 604896722 590131212 461086832 909803501 126180102 986469012 44000656 402239751 570453029 886521890 720026764 983559808 973905039 917629328 179252246 297719601 833790111 948112245 699960746 75904846 600582445 25432950 568395904 884884740 374823313 267455506 58315403 351238786 201454600 510020163 513963150 561430436 954166623 455562288 725614604 462793834 256110336 338929862 300914951 786373825 204756722 665356080 797091322 283603481 813023090 203219675 877923268 735805066 420481645 251355067 29513635 368613516 374040897 991068200 537475479 433619703 855489672 873812624 424648617 640540000 515431474 707346647 961317006 385584686 110695485 862929095 865423041 725961842 143068512 801890574 66691106 745975378 769933014 65688640 912202327 689554626 166854442 915278012 884012579 236801067 905092205 395759893 211500687 33155623 686787764 180692258 317091371 524990199 755893266 282730047 589352072 528009708 85943425 802708723 905044693 336905944 365599005 866824325 780607637 439333230 195294705 373070430 438893110 93916024 38884469 122390388 510670612 549924030 319925359 123703962 695336705 547364498 819233864 253948764 644767577 781963224 996837662 413489675 243272222 937635351 330599758 855735399 931548291 120972776 333308942 613889793 316899525 394002668 695906533 1487974 914919883 441701741 263186766 118676190 49466919 730344859 287744103 704529321 547110882 344604936 757399301 132735598 154509109 558351991 697791902 775890496 64908700 15238050 250462166 572539984 600113799 36029396 735549398 184543323 532164085 414024881 13317408 32808145 540478621 922677309 704921833 220058002 583143100 495710375 397621511 582067996 196732326 355759824 322377368 639468919 955118860 69560622 326833423 960696455 558808518 698100400 768646756 18943399 14025139 243007101 184156662 314354339 569420508 772278460 703189362 314658079 142782113 47582281 818494069 754005432 216101134 64597164 983261086 70501635 31419840 240156457 561747467 602223891 858952771 946970254 620691925 713440501 539905177 78812379 532044212 837593191 81796047 6576460 730782007 640420762 897949490 20046381 727048934 792318359 609121896 80103106 594848308 760006676 742672948 325308971 811274649 583766661 285790226 118380345 919024176 762910768 712066476 716000957 908488720 151401991 257468096 2158469 681000928 598051140 763175250 812502238 696094212 588595069 247300416 541249475 7721100 637338762 10483571 219746572 1118091 97805138 778131392 158364654 177278892 96948596 598642723 229548356 825318331 746866083 496472040 62190829 881294101 730664736 837815579 697525764 503378669 108626054 588888328 953387649 751981294 451535213 894875792 941445431 722780659 703720036 453319192 962107498 111238147 576787003 635099638 99743264 929297024 837131665 568025933 364259422 752102863 421979403 733066772 111246757 72240541 334315862 663526841 828263719 445390727 913389459 749206819 73691334 633294360 974681190 103003438 61070729 842481984 934965952 718478038 257457967 733011957 155940518 52504881 653408479 307058790 599353783 919560094 111088305 474168008 769349987 241736109 279403104 335728424 411493024 911441563 808062870 156680393 234046508 674725310 621344466 442392008 7600718 205573727 24832838 641393510 965308098 934585758 627377943 187728774 200811857 321139932 185345495 899987892 151415340 942316635 550476286 426339873 513882681 94883047 864082386 821937829 473735839 848077192 131154713 544763676 464930198 484734905 396677862 536270585 140584700 963909102 674628720 233216861 551263093 836119619 305790152 696698716 74527820 258465698 464979216 650723062 800454208 191576211 603836820 242066865 259202431 113608864 482983507 392043094 772439391 39622038 819230645 402483056 406650261 195946495 700024421 550955959 954184096 796375628 837248304 249742550 875585051 274398559 969114542 721840516 589340361 638730894 757026318 918177503 573583256 170085690 873692657 698600404 70166167 644498613 161813120 855353197 405671114 630803101 243735460 990398792 74946198 868677930 385564775 46919846 200419103 33648082 751848024 942934782 91340460 381289726 695646024 378250680 846438761 969948631 27614766 841853617 27940772 725059955 269415947 237065959 670059158 379146486 580117288 583275876 968649699 896225603 391391545 198200124 464254431 282643133 274980164 135582572 543164725 879332981 407412372 505315393 924376186 654489186 688447729 470588427 575630570 504596441 917113796 784535489 405892049 326867443 791343499 365405949 236056612 374004657 954386083 592748732 734394812 555190706 757067965 258963831 130031389 817675191 882206227 17331829 646780694 533051878 460455835 336977526 591291122 163807095 38912503 337466016 168202908 655480918 991387717 265291571 122493258 556220543 107219250 655026408 305792470 871293726 304598116 560150475 740661498 12644909 629379383 644718126 927734770 538027157 688765506 278563328 295642084 50126177 828299402 714949312 79740193 937251521 329313756 578124350 889241678 55796301 448046889 680418428 125756221 584704791 606119573 711055011 994187157 251727617 223542422 204601513 142458240 352708152 70803403 395203554 633774203 57750257 449064444 246530922 12637626 761016349 9069335 248524055 840109420 154455267 29173864 701356895 824317165 105872081 743923241 932050235 837265685 754519682 531989750 223063021 488133742 956647847 338171533 71770919 960276980 461569061 725621157 124087306 872879922 220758727 656035796 425927540 793869600 962529752 259791780 553472461 684521678 995208998 165566965 405584769 812325942 357571189 127487355 532076977 836154199 402047284 890248091 610714013 435177311 392168971 649681268 416309839 759438909 128201081 699010666 13345806 729835231 505562999 769436075 606113990 212866407 938148571 984467490 637942299 245064637 633243538 861281946 187338668 255511844 886179449 581721595 318607813 792926634 890092906 502701379 257185899 644698009 242479065 701438159 542453442 911344110 215780796 596449146 272473383 480079180 330940088 424905518 939061059 417110665 409079679 697307653 418293450 343436078 627246616 905319741 742212833 625025467 627624747 456152619 532363431 698966510 42012046 745238872 236875948 229169111 210580378 844335173 111115629 416961089 377261986 613582279 148196151 977157363 332736001 461553334 169924737 328945561 589019673 64357057 530349388 70141144 650827425 241476632 952293479 910322639 46090498 246954240 685427664 427474581 966515452 818263898 950523228 325444266 965091197 144303497 958134258 251602308 806249751 779412056 593672177 730187840 421739834 922531372 733505377 888076111 572641371 794644247 285040157 109192659 402456177 312425272 627612005 887594153 996036805 377967300 449841560 899300302 275756978 936994203 483812697 336313111 700003143 217367668 955628893 534112249 886683534 699481391 489842549 470449802 180605396 165846015 496115199 545746336 841281172 135737534 733360860 130552469 512174748 340589451 654056531 364439843 971578959 805243788 312189085 8841916 912129445 668114673 3661259 687738442 517637986 496030738 713072192 24084324 252159488 800733455 438514597 893714259 717203622 945012880 571091298 656131879 887172922 910466779 849564687 3447697 706915962 12797325 284996992 477711947 479440378 808019620 797575987 318250557 366573575 172368024 377991369 575143869 569741801 271620676 724053006 610186136 402780422 284953810 970105210 32726931 412541746 697191155 883922956 339066045 636283625 840066053 837597751 802798515 213435656 478534110 388280941 776606121 923042125 743051666 443796285 382466992 301543554 742354521 807955530 622301908 67604112 111004930 54438185 351227104 461314996 720204765 347187616 903494146 721414055 580027854 639456291 474593610 333255246 745861167 778227251 293474989 2430823 942325424 795042044 969795256 539440703 91047744 380247228 565605736 399159215 869474854 866697619 202993447 831899366 135064459 856140004 378269042 991690629 510933825 135198176 653850608 562429380 823212130 396009275 932497153 19833674 944212826 508095234 978720119 737053416 944144758 132938533 603059847 244602979 366348493 854976137 597372106 585055951 944680400 827729141 900770961 629787964 21772404 622870791 859671286 750920191 269024922 182785029 758976268 193378392 543360546 929045443 819023299 70712014 68892393 511609300 495062523 464448331 55470230 621397488 518027069 143594562 985037945 45769240 21248060 195274492 470430995 970672942 466207556 305865458 221544445 373545715 591679761 642641309 438778720 418363368 986984529 463211381 686722846 392528616 951978548 704625089 390303686 270599019 780404254 955774375 345598766 606924282 434055151 454889904 803304203 598563197 809358166 562802638 401761451 437721287 526493525 553298146 661170658 711017545 815469931 767619322 48831042 138769288 945144712 936284731 939371130 866475394 159430815 470997762 830271419 530368747 649948409 855935752 195704853 767339142 489172451 319771548 880522393 531801268 611883659 371759717 578878663 348848039 858710621 736669837 863949769 746686799 665541102 312446795 462683164 701748281 607885129 304716353 480633140 901997473 316248482 529725772 846750068 390155389 70201529 901677909 889010445 749195979 852720626 393264170 650404325 776924697 905600884 601344292 490521797 649835082 459120684 695448536 392328415 137330692 259490020 348990379 989668779 493933966 97064703 330676982 75228404 440186335 177738410 285522994 999584121 962452141 992246439 693197417 274043537 751282303 219026460 593225000 395015744 396370429 673753650 812508999 784089186 973130839 568349180 317007759 255655083 260398550 52837261 134359801 508194592 862448075 786728634 142380570 854212297 176328828 761338415 656826769 208643684 506770925 268453902 334689660 577465264 814635496 937211083 417387763 288134977 942332295 457014174 205116357 629920945 501680903 23055335 333786342 499927825 49878174 401925883 63491078 67311543 976928365 857555896 135835372 593714713 444082180 236291149 438449506 21040135 23808649 756671627 804228925 918446291 682237337 107053219 548917920 11894457 527658695 904911379 820281362 759388997 651851034 87711355 75190534 867108732 355717537 537704041 226497879 245978426 822854252 44049156 214270520 91064521 192742995 314972630 951894298 510782242 277758354 110976837 33419177 630388754 359184789 22635091 927100767 333235203 753592007 893399583 673096013 489442182 927245671 698971403 867655953 483153463 395182348 954923972 879212200 279234174 915448539 208678984 167568465 662907306 534439805 749729652 845666475 793413761 904521274 195025911 422920457 54716976 213186501 503753496 604654647 297406124 156216884 300370438 312809932 77095883 411650653 757279482 530255043 25031759 443909966 53077873 423215098 685637241 261265966 787360177 873380196 774538925 999497241 298491507 698561056 797788630 13358854 718268321 946661778 297216821 733668329 759787138 467220926 196965194 278087628 111049368 107100243 88657258 142003793 673745964 741222149 28614038 411083187 213153358 694428897 923349592 652919546 370386756 826474864 545279124 661589184 722659238 42673988 672592503 7665512 540020713 591450723 546419308 906971081 238187658 257566516 242390825 2952655 425113262 481645960 923565074 703452795 137652975 73705147 108960004 734364531 744417450 238484063 424685782 62254882 162763232 22573829 431758261 593534904 27912525 851041326 50416665 220132182 595994488 581462718 612075926 153691273 456969050 970457208 52031077 953237034 542743922 573941714 349660031 203413350 707405561 278874972 147302614 367694813 71993374 986025842 337809794 84466337 456924767 87028238 24324941 924202106 574318189 921129467 306505287 306985900 255078540 87928266 344338700 172108581 797311659 546891635 459491312 951839469 29389956 725605574 744640497 914273832 933368655 15336763 875132736 469680549 626796464 648683506 393827838 83203390 822011955 431693240 4043017 538882724 479024559 372177263 991157076 4023950 629415366 951787070 256089661 154037850 187084031 623690162 202273934 498333663 7844281 131460849 320332455 292591837 809106444 283260055 200095121 162424631 202476592 150832046 680913141 219777685 966386847 555750244 945120132 918076717 193016317 532641195 66507269 833741004 628134516 434903630 928373909 142259120 572689794 265441813 717891167 58950856 544367773 209559846 197096592 109284673 954052480 548570084 881862675 157437430 533692750 86577744 585208378 700952180 236617409 341769162 885063137 62330069 494285439 20507255 762172985 255874056 268389272 393832635 197030236 550039210 755605048 636003509 437147829 235014067 706033020 831280545 58684237 832217305 868167758 798383867 392265383 410784035 396280470 665201903 811094515 341748886 191420460 570233300 858088365 694061903 177547028 438715309 295588469 69336542 493576426 797204457 991065020 812010624 417189756 681017737 344675784 218826220 462832563 821980958 285831901 760058290 245887363 346250796 123405687 914033404 335798206 304063847 138163611 614856625 158957433 368855725 846718495 576013257 542954244 260368847 342031506 690552058 203943677 600328237 864492263 531539586 897215986 580512259 950521934 720844902 114778473 35943219 136957493 217314306 645919062 289436247 462175346 585543226 155559768 28736056 96576676 677899654 910416963 281709734 907088847 806499279 713743737 949460901 413248187 878781906 721643930 468120331 892311043 180000250 703616779 434619368 796173006 978589731 942445068 958555480 341759923 770421074 785195181 239708089 235329482 213899201 94556920 705682834 321948091 749258665 98076906 594180341 976756281 318436470 86820181 928929845 810259811 181123314 710631897 668571237 531391123 195272813 928559815 747723125 323089284 374590433 743996966 960745824 859867423 346907978 939817184 923100330 685528890 467577532 571795820 510275123 14833683 818442263 302146722 599397090 911466672 880597974 855553498 735623797 127348082 242475493 490144412 781094283 359721549 872791239 84797335 259222044 636351572 685096552 930909385 638658941 787670264 46299043 558239598 604234769 195567907 583549999 162076008 744811632 397503597 444065106 90958937 831095013 530052540 347005412 73612921 741345616 953388996 665530625 607704021 951741138 82596515 107609425 325885044 495990876 504954298 878249660 992058003 180633889 898104603 889953426 336692750 457281328 570298513 40114007 196525462 286817030 394355297 984551245 676867571 189306952 632426602 998073403 949163474 849542848 445464325 107630326 599373098 142534938 388891206 773525538 796747133 907296532 282279392 295073662 459657005 317892757 895609239 454922041 976835623 141962118 810231579 95690364 475534505 522472886 750814778 59883558 432949359 756879865 137235384 133738578 274663277 500081900 859755999 213595593 17972889 838925336 869329905 639398681 855801113 128757422 92735239 314314668 95667073 615968669 621263991 137032662 560702978 732029160 254483587 222790900 661385160 56297197 172124919 401403546 211533662 142336502 7157518 12815538 879068720 812638792 22160015 882140477 271045162 651822035 768637152 430275339 489355069 830656818 398737455 798553429 416799369 819947645 241542334 195483777 387599756 547937136 758293710 938737706 746443912 979755125 866692377 103314460 38892677 390015993 813466930 669028461 678427963 137559836 513261694 441732496 554360137 542416843 666924092 990856898 376439867 121444801 363387246 23373290 319232025 440629421 865145934 857291903 115273303 478461373 362705951 370841495 546851152 205753967 971022706 28519915 747959585 876880325 708489956 435956045 463819534 545163513 454901780 297427472 324954768 166444455 721992731 611887684 590679821 516944253 205095842 922054240 841136763 997210033 431545889 238278312 165230148 862975705 307378081 84810412 956228316 208741858 818703078 255863366 599183768 185053288 231430831 280801254 904550257 469792350 721022755 776523940 405321325 800101105 877004338 817266394 677386888 160117267 959884154 433071969 690240887 176470111 425384071 66834427 353626426 521825481 492212239 17999743 799050237 362574268 656833068 965249661 224981571 832896065 821136515 323614118 205380065 748919094 640000598 628083347 478878452 922582349 323598119 601994649 591939416 309627126 126607530 172522548 421886001 306562210 993660881 619659288 516345903 298619068 739466912 677608606 254827599 603376920 907497422 877267355 4742744 858175311 611576180 796129912 890856194 533588441 671120077 668034107 307985551 95815282 805896713 478970500 979566097 482548724 992841870 24574467 385280643 918554287 242427351 92069807 123394407 717296425 97658757 194962049 650119646 786111750 842681689 775529282 217836541 627513519 404661733 138108757 570260815 371892146 873103953 134928877 454694183 598398419 374163553 566086592 605006317 851591098 596059406 868347174 636048681 245604203 911658235 78500377 216189909 176764087 648246837 593134508 906952609 603400981 374533369 287539744 283391495 718971450 137833752 43549179 896742206 50148489 858092711 979231318 455494023 594374341 867345577 968580659 99382800 416148798 181073858 488058159 232173763 829902682 269147721 167935577 506522615 383969426 300889069 463442840 792104508 96192432 335953428 295410004 184275644 423635758 953727688 218252227 85735150 394001852 306502849 691824444 407857704 286431990 880191266 33383870 411409609 557450347 53938824 483707100 816325773 685578644 31247050 869533961 439356818 433530116 328113696 157567566 428378474 695975009 806683838 895863631 681190485 599186827 982787021 259824824 474526616 604190789 723927158 416382190 211465600 229042303 918460208 613336250 410117582 750024239 72391203 79274479 327967340 314512170 619450067 204606251 391731422 993281982 794795817 289003994 952486579 575400632 695697811 654154419 51566206 524256963 740728553 270799903 967704007 611983808 857654126 111977792 758489450 297072176 961869097 260109366 77101928 579760032 748179193 986082900 913757210 94600792 655102687 80320021 608825095 139536837 107091374 21069140 187103955 340971175 658795124 834791968 326967542 262290298 968834096 106808539 761328578 685639361 176172257 53845055 995188557 612045473 388028308 515279718 69779033 867894789 219781805 839967988 557936489 283022566 265966733 368531120 717908464 56732858 499940488 440319833 578369922 828916960 738372280 894057115 933846904 574026827 527332625 940142773 98533316 290273596 660080127 945134523 382457771 810464691 522463245 197059493 787694075 334666708 458152457 949525085 241426380 329857151 929351603 634674933 64495539 859706681 502204547 353338837 630482016 893367267 841164069 847268919 705712539 162090213 352481358 376847737 176371960 113977873 200523737 940020582 504980659 144351738 951705034 925970259 819724507 39106576 844566293 889929600 214463022 682751289 492256170 661872949 111995473 803282430 60636915 605476987 494315381 869947852 980709857 635983747 271365286 710028641 394459838 284021253 419516384 635909990 686368398 679150823 96991780 18434472 315375014 195714998 6788140 962509591 809498344 431198822 392257319 280623651 494198899 192667298 447658287 470931322 783546475 708390394 76505529 253346096 607612937 460355017 853018977 978441195 533568094 102389108 362012469 753336219 482829392 875546812 919740787 292841966 24023441 682215776 682712094 461153160 27074866 452826521 324313839 816323970 547404724 211246448 649722531 544600960 58824718 512165866 753609120 75339423 597892847 222701041 489753821 70102300 781873970 983714359 413155196 677978067 504889086 394699027 513566927 497635909 447092117 397960162 836024978 11917630 344148242 581137220 871497916 681065612 952110964 423412470 799830977 290411222 197570981 377553893 553142714 948430068 428292861 38667303 773832593 94622933 50620867 77001906 632140644 219312991 454039159 946766085 418631987 796591011 19026090 986624907 145296714 765797120 628826502 820395688 663859659 244165726 117170555 613453032 621208726 643731590 828561086 971033321 814952485 656338596 411646879 522392432 554526593 7960642 267919111 376246001 484356504 4196424 413451253 302238814 555273125 659413099 349643923 452326895 968647122 529297672 317384717 760397785 369185071 362094596 514638033 914046839 632020954 984304504 82228521 895022589 148983207 869153934 288129416 793528504 946512421 748884728 876436855 949634047 558572465 773892008 275349163 427665019 549248733 499093900 367193940 505310711 332005622 731340618 104249806 757300401 761924274 29009664 498194283 574235244 77688572 298533194 536262012 734329170 155392248 179527912 971157368 259075638 653169260 947626490 920589015 406697532 984108350 492886895 138199699 87324307 437471560 270805001 881430737 181387862 230093028 910426457 732385012 618332961 195199523 821252903 39421637 195625227 405156838 197879631 69721401 432796374 818690704 321092403 344971440 328998693 911097095 402486511 743561546 970999822 418489976 637079738 496609865 193977737 793153528 775008599 269269032 777098863 895190126 421662780 598407382 846771926 398180335 859911750 498078739 624430253 530181816 706235550 345585081 247410019 340059036 374634554 358999582 40976657 486441231 862397008 478345516 619516748 625323896 106811665 977520743 340104152 967484450 34573972 734116982 414703225 167830240 820663202 402178256 274286726 68308329 895843116 535654872 11805822 25037557 666512570 961632362 320721795 600976700 943088007 300523107 452798372 118619614 649711256 632144243 269554206 544445673 212861284 220147150 736534522 916079456 188451736 476923442 608085654 600053322 808732140 706930713 240377490 716163611 996083270 795474278 386156524 659725769 659717297 746850307 194444658 780260756 768114189 770077177 421898443 2590398 892711657 122477342 137266152 442395666 258342547 154666446 113123120 575377873 162393854 204249073 504303615 795661886 324447342 546378774 479782455 561486084 898222188 999571975 912619851 352323834 611545575 41434583 167116827 670042535 355991812 394080668 222241693 172723289 609236222 401423750 886596831 164204098 107883993 178709817 459694017 445888159 281956997 3222027 830783658 401065411 993696759 850186649 929048676 927257677 36428114 324030172 524724002 703899095 138232257 118526746 752500856 65536832 828059039 223007192 14235962 614329574 662705957 778726169 710326449 386619746 432950303 548379618 892581711 598353024 527425309 266544615 14454554 11798554 186122533 518285374 40565355 412566766 475385903 374586028 386727006 737126569 23186808 138077851 115540361 393617349 347782105 592709647 240194824 448992094 797705945 82813154 552486537 579342982 942696874 310751295 806461017 732645111 585320989 314650334 172996176 124065210 508877430 412057286 121133397 297440026 53915940 769959466 395979720 123909625 612980611 299270375 927809657 955735218 31895982 991774187 873111547 385145939 305400468 771679778 58691678 230896843 434235718 808903314 190809470 446194201 528056336 288327611 511118474 498342551 574439801 817451469 228937353 682926744 960893260 228285784 932206938 802151657 397875393 722123115 697055276 925022035 176088996 314211691 888177877 3393045 173211317 578410652 712353212 302550690 443085932 158949878 561755196 283582576 930611762 153939273 757578264 927929838 605796394 223578977 684241391 807767023 702986850 128974531 719814921 176822219 8982656 547521975 715268796 212358389 17538800 185294313 907522192 917219536 111580012 887943758 56485230 631447965 292346538 346727917 234566187 26245816 317782562 510395626 927870197 967200321 372458574 218568748 88117218 145072730 933595464 372229873 501447957 769759913 116687651 908392190 974739909 311385099 316286740 369222261 946490275 519034379 501922580 267797829 821800817 762901078 655391461 437357275 632620911 943946833 953536600 252228172 187873619 441550600 291962133 876491136 16645983 458870627 62621735 819654796 822472462 3875441 886120077 850706012 762900061 545897615 426238288 473288237 356675306 255684908 25282412 323881839 865976194 163621263 677977397 171263098 939595207 256106935 193960483 494206776 520541138 254017824 94141370 937132450 444898163 859826716 557085820 171528239 369603431 910895660 269609426 159464907 682029630 148633691 694018132 747188111 851187688 657309193 729283170 445308911 362603744 186974249 423996441 88136879 969746305 944935256 131974934 623284170 951927593 527556460 88596397 549817401 728952114 22672460 34031794 736065662 770086700 332544049 187013673 495468233 862081337 295228139 841013916 869786746 190177121 666381549 466364717 740256128 309010391 376423622 400016062 831950192 632466210 977149794 122069571 697252720 424926543 423968267 765646584 161579202 195816452 548533613 399634251 240981127 404738113 566419892 479596400 40219187 502292234 932754694 691176247 894535619 733500822 938327784 506915564 779306261 607789255 435191325 707338793 785376176 194341722 89432081 743702758 586250814 566234364 227412108 229405351 140336509 581370268 746212462 823506220 667232000 866375440 316927823 374081795 53312639 439836858 310975155 363645458 994995172 692244997 549337600 378185003 297636883 14254843 64251006 873711591 905064827 710496066 646899148 652743264 81850913 192990599 913984654 674105596 456478981 224285581 941662944 43613929 430566383 977106310 34950480 129329512 482101955 277293488 832127209 737367201 747832040 577023189 231322511 879395850 149631109 280746870 723115717 998417203 468918268 612681902 374730296 612172849 170678918 878090164 528209882 994605453 969638457 153178685 536018281 267013491 369387978 981532279 549965500 17481641 542640433 463670625 311935054 620151392 606512366 320327255 157280648 50607425 221096348 701785957 288437125 171125195 228618498 68833314 117368057 347883299 3328369 490510913 8765520 189342383 362311333 476180898 206147314 580601217 241075799 497426355 631139444 224218648 36364170 312630459 566110161 932652843 890041198 312341819 87218839 307567636 297129453 630124474 836195775 939269617 588870496 701323152 814751314 712601634 910115449 661591982 627071676 16700951 146299639 872022736 295369460 876256009 381010184 786257569 984107677 650175709 724527715 501119175 61391592 98740332 859434204 101053065 922992347 292312502 22499117 607004118 810290205 605795756 226319567 6782467 372879724 614513850 238516345 695592073 400565894 518391485 365599395 191824394 441638228 156505284 838498688 178341763 462643270 672612072 558848013 45285427 92567603 99488450 908764818 583181848 276886150 895995834 3588465 721099503 172012774 824520282 261085676 541941218 424291479 913240720 438661954 174463390 279627491 184798456 440947508 938787404 252006159 715378525 491975582 734867969 388847361 459984715 436983427 764834098 759462446 729774767 932510108 727033351 301041854 285190048 978203170 440148307 373133406 873039624 264346679 631579145 791996708 852057840 404203722 156317661 335186880 30007921 427953851 1090841 730631094 434506522 839361924 532060075 974232922 130314524 405521492 493000643 824895610 505316513 280911486 169611487 404805554 785800587 380215686 988696767 873012680 883017700 357048753 398197508 45362794 236950698 337151573 136015011 851619688 306296178 334848456 20914386 515837131 519960067 585359112 419804837 966802901 513643326 428240366 338619239 282116010 8934035 264367912 997802641 665358580 403813344 386947091 172081184 940827471 950843050 67865992 919205412 504346301 687036534 432097039 248542052 972500144 98388161 408926378 818259430 487802476 13092957 875674365 800094753 825643652 224157088 796561132 432907724 168906971 230708550 390741235 739217491 330136738 279951579 269451284 480280974 966262511 906372596 402303300 498773935 389342133 30569606 625347584 507468302 507595760 469341949 671781819 406196317 328085052 370797477 69532730 851220601 486093932 781630398 219930171 647892118 953436364 327223027 767883499 295241279 849844402 234827924 636399159 149084514 169073757 348435658 966763027 25602851 960912785 337858019 287487223 277527856 72690773 97887550 333377858 492565546 722084004 112849667 46378380 420228374 230433943 814657135 513611477 416156706 925990894 985569131 8547956 730823751 932612303 999352331 659429186 899441191 909587563 364968315 126762064 165960493 134762057 548636975 460154305 83483439 97415566 641293928 958066788 388412036 505811582 316748345 318981389 712527862 364359938 978247230 915243394 181164189 224284114 170344471 30271226 810029295 524203069 12772852 374474505 736830252 980647206 572685930 905488108 684620197 27918083 623873938 757107958 185356025 481244113 683563141 340358378 764964575 167150921 366788266 805434839 827571205 936092739 850814290 312084381 427983897 28826969 594635588 573277998 980605767 437806258 664659347 511344610 532734919 821667909 56786825 628405204 828876907 936962101 461756391 905001329 150553049 890507795 646026538 887464629 323412626 466095059 635411913 141080753 404612693 506987862 356598002 913272420 802609703 410339205 16243021 378875736 184096525 516748641 723633397 919277852 67287350 753879891 605564993 828160561 452216124 746821195 550184951 342926334 334720445 677925857 21473954 853653950 321629777 350639786 492786988 739961 576441072 746894804 867943515 157532405 379169289 849222727 544061690 300046837 950568185 107541169 528952229 850671612 527394905 238913731 310888174 271145374 793666038 850472187 799202169 604727045 789127675 207253661 167903982 513523415 749319495 826352912 825142907 331835017 847663479 314631839 753987343 636099073 762391382 796576158 824227415 516541016 940132395 482812544 838924426 309883712 285550911 611090187 682366016 936639304 595868086 37301286 662058070 801287245 291316252 135720113 114416779 881064033 474774608 522053556 565163833 440592328 922903338 41696650 276499593 753670339 421001224 564743628 791613455 245613697 916141140 494750711 750140511 60231496 827142491 13228887 396265053 877795390 506523006 469695627 976835958 846185848 221287709 546653358 117558343 998650413 563444781 456452342 428214686 639591583 938730073 715548303 615744822 431927200 631074283 843804358 2711692 53114294 168111483 4987221 717065841 412746889 493826356 909400587 255827173 766773146 994767070 330995333 380676420 33063664 358723516 623193988 691900960 381071377 422444768 627778671 669438949 852535918 67360021 637918836 336211092 316862316 170033071 945527799 26514711 672475646 612328123 9152207 564751090 670504277 745311149 923983164 566815722 2304184 538817504 653573602 25605422 460336869 975046652 298747535 830142418 771954550 689962363 223146862 499963484 109483690 628744834 9487664 922927650 466133317 611598869 32668954 227815435 983395926 304804947 148722139 330454721 911426539 847689232 258311308 853000072 103495439 699263202 39656116 959436937 802656489 587915347 291386825 968783919 263675071 60578745 217368684 179606935 140980528 28470785 468592631 758299742 651466717 816772154 854749323 127765179 521101625 126963279 50789877 415053249 591050045 784883896 262919124 687489915 777974606 694614546 126852725 751046449 273988773 220045324 131007113 121548096 598234294 548028483 395566329 164324749 357152552 696488448 72052484 969141321 989857194 636861874 904226478 645305561 798565952 433069847 460509387 507772117 438185758 288010953 836656558 199082347 63809171 712171781 410958160 267571328 556057347 815293082 743315154 591810505 969479532 224091138 278531282 819535383 88771586 31635530 854475190 468721410 364940656 804615656 316931183 448779563 574650032 161936234 876148216 1476666 690735424 288830065 607698216 627865444 427646387 581085655 955415244 262435584 372047855 519307965 140744914 325195542 17176342 380558649 750246267 547661934 599307714 94539919 153420189 124006632 997189557 862414715 25670454 892882183 916112036 522573406 3998023 405356808 155178645 195432575 536363597 148738160 761422933 637194089 62069469 303766893 698653058 336829322 617061295 530500763 433080925 346097156 802027782 332951319 138004421 628411171 499831989 240498809 105453081 35733342 327610286 87868074 141297938 154470385 714890919 983228806 692371839 795064715 580977578 162601182 778687313 138552485 527657574 792647200 998361600 223853913 352020929 606573479 232105679 401058368 481581784 612644505 742019716 33157250 629406556 304337394 25185074 738606255 774198718 580697243 304563617 436238982 872998998 106816484 446313868 990859903 664209229 379808093 648147484 770994921 291564167 653063743 502353534 388201112 518004314 673121049 615692250 994535135 884930337 468268976 843904630 225157799 333088432 938979604 963839067 728146829 272003373 953379249 373249433 345194921 810411802 31843347 382727565 924830630 213042697 337753745 247130444 298221277 754715094 224543989 458264846 560961878 798767636 327430614 932611052 226671428 633055516 330370397 967196619 423429584 101637235 760340616 778150057 426971987 769723427 775779139 747344437 568877531 283137292 523741072 19456029 895658255 831779172 60461913 419090391 848483949 101475698 370458131 407337025 938915945 210796297 497976811 475962655 928690627 975984986 210640507 355940022 975701428 783393652 493003997 893768750 502879058 429498583 307851373 217474050 529621736 461836086 368013550 868749992 868871488 808988767 135324784 86893799 620895744 638281412 513124892 493873898 94124200 171365844 111712121 483876954 727345609 54593292 623878419 716855248 321745330 606999410 456955208 862379107 527799885 302215580 766564103 103058345 70306447 596436080 802827256 663751316 222398239 137976850 37030238 95566396 311280034 113722928 571372311 362301305 146323000 806866459 741455141 244309390 376663489 501332679 697797172 850363128 266092372 862252979 896920735 664460903 648551954 424048743 606091010 526519381 206263010 128721622 543665854 488035504 140653059 471859177 525087855 96855457 970639194 107765252 525115340 336352391 438606098 265451013 722747403 260905026 24876463 851075464 133529598 452442434 57391836 754178862 85953508 871945772 665336706 609669180 968772966 212604179 697149576 123128290 132903724 647377385 290361230 563235565 290172567 612764926 96980565 81258052 967652721 821471300 384656870 118248047 165057184 36167633 468568100 717893715 477418058 847510799 461183893 305933602 935191753 763108157 549896606 553653469 954954145 569988431 676809050 701167070 280574953 2469497 60146808 840005847 279351499 219384073 992260930 998582872 468313101 435803065 521904413 155735798 662864920 270943307 607716336 835664919 595796994 552523744 887255063 286992788 849255061 512670363 578580950 801716633 859554128 450429811 625006026 465667547 47420289 887547871 783261568 362942208 898423846 502996133 188420488 954827763 734646738 756403463 102988418 89718289 82431928 45375285 773337575 649175320 237142671 801983832 304978474 377806450 592485643 539180437 952828615 819801977 295345043 56809261 465252710 379008566 173023677 167283516 907932339 200464212 438018656 692467430 402177983 439153768 27988551 878008074 263658570 564766884 763325288 601560046 839967546 698624894 246930568 103396773 880706398 690807788 936144975 897313699 906930668 657925522 420125 481630620 144805140 615270538 276437582 328712189 820979025 767454517 814710093 173766991 333814448 641163562 401541422 102870967 706430790 921326653 246263475 821454038 139166969 455057474 410016456 851891146 773405704 330521542 570330160 143921847 53498784 693901510 42365211 488752768 903276372 694969925 274762447 735704504 617029358 494653592 671282507 764650863 616119752 569370882 650612354 603960185 589557268 626750252 314740073 628017616 799817070 85608131 35858397 383850484 866890627 977181219 893671482 217382594 984814509 703391165 629415894 99616771 643436303 658514274 359206612 996641375 516891721 542867714 600350725 457864786 253245206 657531960 560533505 365183760 989276440 264575257 737679020 83676740 352248746 698595705 353460790 19622362 333944189 626585564 905039762 990662491 601221649 71980193 505184089 251105094 960736910 673464207 783816385 536629723 535742769 426155849 588574083 623380355 940935942 537579219 928408147 61626518 80190303 196015853 801991797 604050242 676726661 130302420 88744083 26126864 111006881 979395765 71591374 454927899 656604018 590698944 168075490 210512313 941349816 914793605 703019898 472785821 632357118 381882685 28544767 206392746 728024293 731135372 61767532 645393741 216063973 325551546 166734709 703285514 513854230 457920695 666796621 617020938 106484029 195913137 268128386 217255379 812714645 952856429 157660399 76273835 238231372 50504474 71624771 703763784 675995782 234641799 269068424 417766407 866233074 620405753 692987256 251131709 71535427 298037341 104075418 809574797 653820815 819235340 518049717 471380843 132697784 673622071 228964222 903597583 919083196 33191027 341911997 777597455 332120173 19025498 480344748 157609759 277343854 392264605 402154968 455983781 134313866 851705185 423068062 200884623 635354052 818861275 185997585 707075139 254206686 71821956 223247696 701478752 183177576 981577578 816921299 65404184 34114612 566300254 502567619 324670026 489477360 979919911 436475793 578868770 656959105 548085735 950718613 831121242 167134539 731514915 712959888 51610481 1126673 426803273 933456969 746458782 942577491 667622337 931284003 862833317 174342529 196673694 668166668 655115920 868740960 980310561 61828727 776365205 724609631 119948397 942332865 358245773 422590195 788420875 948210616 252587140 776398113 173726712 378527208 198308879 746608286 996705603 280250985 628355817 763141046 806632514 472763843 911836058 272448498 675334203 158930589 506709651 451057238 804059252 714540583 606762385 628360977 953244700 867932078 731919319 314307559 132397282 635698780 598086931 697781995 199026996 776957383 104630258 480479781 882887155 540357206 229162014 694006649 438252972 649932441 475466939 777991218 202366109 231805965 461247460 853377163 924333385 127666731 17931156 163721904 159641751 715813713 828599391 73093935 616347714 823892862 103272362 867113099 984261764 937183831 945180077 313923597 103345719 703485030 278659630 190336972 667965691 860534514 676784525 510064298 847450848 307723729 473687831 501203627 7418599 18672855 894566683 560913201 335042618 442585476 526411744 145055752 203516480 731716063 644608022 241596077 424180254 789523892 913728324 386771409 348066019 978186338 385473941 355501249 354162817 48944801 208760202 76525717 272867241 127072431 341332291 611190549 161530385 584095723 929013123 854447601 483757213 334365855 872104478 136650069 453839005 362334096 642136770 191727143 513844425 94404454 822523491 166472414 988098866 604980417 530502868 157165343 929972965 412095332 685672774 899719364 761147278 365345462 305332336 377523993 293127481 310285830 191819490 365078240 829954569 183180367 371441564 638935787 526221734 24915262 447682943 171666991 773821901 122729202 920452630 203164568 154608541 432723074 810522219 152968505 502128363 274656432 876316430 696555471 407930956 980225938 604414202 648749220 175536059 188978148 441624649 57758108 849596263 730521002 616143549 17344683 527431093 293365689 683085133 288822592 693458335 234393043 925627961 79744297 15079290 730144912 850667976 962584711 791991147 875116000 111837816 384291784 296801221 912275502 151259228 654600054 991290176 521148744 11023115 137459216 421375874 614999012 361441346 337764287 470334436 502069467 842887318 160556612 918750644 770357009 15275904 882050085 919113290 469623008 967037563 303175559 92910727 651283941 331516056 518524541 935281247 243613058 187852515 975549320 817597656 870353810 975570362 339639917 888740462 289233674 616446487 866796545 417758680 938698290 54057918 135140321 462862764 118084915 184408004 51965856 270990766 206964332 721777042 293996056 586769737 857594539 517598964 873969714 846912448 42323114 641825913 242333881 387015927 13619882 441833339 950765889 140084042 300285419 16409037 720082337 893676898 880029456 697626703 860341007 383303812 555138101 581493182 464444299 932537059 986935511 607498434 841360686 360058149 304570080 468159812 840362952 279854160 30860458 666454883 105455315 119354917 133317583 378312445 181999344 340474952 134468942 669680404 821171273 784427181 446593117 493896112 434182600 320710571 275195930 542826847 651857259 318766695 161161380 265771662 254261382 698081819 441603614 221531128 446818215 936579366 534336408 416368115 220077759 861312850 42944238 719297303 961839824 396476788 882432766 543748859 522432846 371273608 326636904 50628890 903008368 211272155 670043145 471278027 286079407 467742139 682042571 650176163 475336637 694580721 838636930 113688482 820565141 887079993 615791008 380726598 930200963 588837930 526769990 776217460 785705986 936889109 81585763 837629591 506009296 514163104 61808697 776305933 290451721 586459562 279487291 893380161 372536186 194152249 293017767 264442745 430692468 789540967 109868507 771322507 236019965 987206619 557441936 973391305 556690775 625363190 656600506 130708682 221589353 488927012 406588205 725527914 717058868 16349053 380157477 335437868 185460802 471105767 719619968 3242449 523212825 768949612 211856448 112755321 223352646 983761844 16718454 294787475 159604398 983297328 896856886 149233064 376645664 360831957 747684640 381223055 190396531 583248026 879875520 68808375 20791177 336309142 188478712 936903634 919595389 98650336 92133251 962102482 72099825 106439390 258049105 873424773 614149173 796004868 691458545 355566026 905528040 860644105 451138801 734285290 321976672 430775635 306039768 908395276 434896320 216948146 689796704 21312869 804391089 256889242 22401733 267277137 891748564 51049360 424630456 299957187 727300017 634971332 50909973 257605284 987582949 320504340 284088865 557100696 820777030 473421342 41922149 312728216 55559412 249645064 507381146 800027693 610061311 435459453 70011949 845101158 438564703 690003108 470522459 210571759 241191161 194097301 543558508 692155782 531128089 254143403 637878341 275984429 300161564 644328273 709912990 472508915 389475527 635264842 32465761 374230690 433656930 611906118 545667968 206657852 159371877 783631916 978371108 565726101 781112099 386555415 848580378 347453576 726831050 719081973 81077684 480144251 274047351 507098070 53254541 195810985 220422123 775062049 610138823 742990854 862699578 182374023 750493979 971329502 889885447 808767202 180404437 353129599 463614866 432961116 144719468 900193117 355228547 459548556 862228720 362221868 390559238 769383592 175559774 677388141 254748403 454258531 625687380 926010886 290538478 710422543 810106709 598811522 873326568 287552994 881507113 605718163 639554208 499471200 344531025 371969831 785193569 953962944 454590485 510280924 139275946 242303130 223156314 997008400 56164973 950922058 244627905 852646428 715386272 718801332 6986486 281638868 205364912 549519602 955416222 431348142 340795737 110623745 777986210 965261696 478387699 216700094 645190749 186774072 201672810 586152299 261393002 902877549 613281775 733924330 890384215 788115295 801271768 150451150 138806698 264971636 693744513 922738160 76213351 810154690 6599722 812791900 296287071 174393232 586104082 94303203 309766423 58629762 608051644 809140867 447902704 253387023 131384624 7905322 940548979 595401873 880635974 344813475 212636360 771040466 134065535 741550262 102016533 509496368 667566196 709883166 935059700 715100190 37052139 926251165 27143740 62562335 809125242 55458052 860122807 814545240 628698094 77567867 838098963 476236073 909497116 809071151 199364522 569048957 307955516 698985151 75045630 86358583 325397142 303295893 575893957 430976896 366862732 780729539 734440081 333077267 464388226 107819063 715690697 606959601 356647473 4516956 333540632 938946295 895922341 276911964 722750196 683944784 392510576 167781132 812585628 622509690 318385275 683347938 349718360 521551955 822540998 742142799 622345545 164566404 20732281 599235054 387032102 514251829 971788144 255295957 179474249 40178851 835853317 90389342 393166364 42185458 998922453 484142250 850977131 433306505 453838610 844411275 857900127 432430378 776429083 352198213 491813830 691483248 220666692 408552877 34272226 758097784 413101503 818027928 12272853 599925645 585914556 350191354 596466844 921556732 953917897 166819291 825240480 308236107 8666303 844655075 542599191 363563044 932025396 528532 5479682 907052054 317990256 550916882 357473446 95001857 871221343 34800142 742348856 999097678 602170002 222326859 289723358 417639965 660665067 703795147 86601710 232391321 30229009 141116521 994204750 376322127 290233440 387448584 399844255 425316246 576119344 396002030 753722286 152138690 454867320 615438109 616580104 530520083 866770700 556503637 48569327 534375333 849765405 432201907 589945852 113204469 627434831 815074401 656308745 850291406 318717075 792322681 538919560 204002369 723895060 178013516 154857358 646032888 25604896 691672023 756408188 622044392 794505825 275878567 890200828 145842594 254592104 927474177 486609878 448442769 681451005 691318395 611474876 388644420 688093684 254238818 537676753 139506197 985071628 378136863 498331350 817771403 79794187 714207611 435148935 721205722 805884243 27531068 426472840 761770799 747456782 425407213 108522472 583088317 963876793 69781596 142097221 497432508 234562054 336514859 901730003 771057067 632737838 760268198 824034642 532299844 535841163 337861906 917178408 61787566 772448741 66335697 733896528 253017223 903716181 93932554 943133699 172948178 749345879 458090173 314718303 630209758 970887973 461659855 459949698 924699513 866334881 459593556 443318548 838356959 528065366 177135071 56351410 276164568 627313480 535593010 90761581 808411241 93234120 916390196 293529829 419042294 647421174 379480151 683300203 749719891 841901179 107318095 440790872 147010514 770633023 695558567 570608001 656762175 650358352 865741038 485077207 587691012 393639449 629540306 135365575 683469539 377165945 521039472 578542651 965512971 610157024 692248616 212813190 608382680 751816255 254084251 275781048 133234483 196979668 884190781 27063297 813791037 332776176 36648179 71846101 111213793 491627095 801358912 392476655 28258092 804572991 695148963 282291855 195753263 57033209 581451685 397448581 275505903 496104586 148436599 870790450 108916837 314367225 377007754 177884777 1704605 936312115 460983579 52729423 96229358 224678553 762271383 455985813 769041101 624883559 439327731 916421452 682558482 220971 285541394 679334042 309699087 518601163 127131788 564118081 190743409 391688663 674962027 799054487 850993379 651806459 4920426 382254099 808452146 297562919 617784701 757378502 795986239 516577881 634037651 14953402 727865750 618533298 990517731 339524709 175266461 501564814 154216797 559797869 148222851 279640435 740630254 84312786 969107771 544245054 225193759 942714168 818744507 542719370 968897573 343412196 224756487 879182255 272257739 250570848 289402205 224243378 570697040 353901410 645639933 701020887 541686470 340829213 104083984 484488851 332844394 191638243 269409887 248006444 322324813 442293386 845423449 73849840 706862032 658380298 173245732 960743490 356616309 555740526 82433267 978064012 729319705 358017318 149154549 659177178 262905 246235201 690637516 461460299 29855411 481265685 85276226 229189302 347553135 291820462 387727886 644622486 850503084 284186113 935591534 539626516 120663864 442253860 30926298 595534740 107003288 952829255 450638449 412801415 411875098 140611044 983605094 183114653 148392950 793038843 891732997 690152445 15358809 101009661 914372980 595526733 819115957 375120762 431581826 294952700 23068926 924781628 680334656 604808630 698789459 812703272 203883927 678415638 117281395 846665711 412010826 973287631 220677179 271585425 949767283 324977009 69167738 871740896 87380736 564345333 381900511 645871691 331333039 962614984 684721632 576251516 878139023 940171913 120978229 191352352 869628910 737688204 518493004 327225004 899787709 874928083 806095917 640466843 845927720 601060947 69237720 399498944 523048457 326588080 540993877 167653098 304952105 77866374 457414640 786584953 725707462 13118481 480944828 388112636 90179422 703141725 681739291 983925337 248792630 79244339 986629460 345658191 635108643 539198919 513890278 938728375 740270848 112924880 251210964 915838889 660045321 220960132 362531974 86386786 640117949 217883460 193475804 581723510 948146619 937127622 672070954 938962003 621160276 443252085 797932160 335209348 49577620 245427517 455845696 758228852 782016570 337289819 904670180 24871340 386673812 44559962 467164620 671561938 927073232 215017694 649198603 323629408 603081519 375621735 603858473 581072300 239480053 151738155 586954232 773307197 24315278 108377995 468331192 458562027 892897525 19231631 544954892 983706264 415668751 159370989 877514076 108516168 600474775 328320705 496400156 117089981 618704459 72413497 602938955 33425121 617921923 836653241 190607900 144335915 185220528 29226025 397777040 718002933 207096440 677277523 54943075 678866582 353706670 741359270 38639692 384021486 463534568 826655896 71251565 956740713 407306570 137164940 142376445 466911974 522751395 264592504 901148453 644127932 280458443 387857666 366864823 484742350 877534460 782735270 467847597 893403463 487358852 152895016 744734597 794581517 400145572 927166270 626220686 36645829 342989865 954953055 201004052 748903480 338001494 54544306 971853867 273069571 100271498 818994276 727660715 479474626 212926340 410474747 603558696 830731933 77584567 886605615 516074924 78997015 135753736 641826887 453864776 564500367 214047619 445352245 583268093 559745310 275452464 913625878 205603262 708906017 216088128 123836867 967789607 454984061 754838997 121122789 178062304 76899091 256601477 293337331 162396981 193454592 943996306 361370103 717367971 683036399 667021512 803902849 785743933 524921146 199348430 566009565 505255264 42264590 77241320 689315903 568579038 930570677 856163874 613111984 77833447 110281088 702810152 514612736 778739704 919451020 988242325 331390757 739866120 790539570 781742030 44093091 302350896 426413196 904313546 428786563 2932625 907884679 436749311 399140453 605571391 464619586 771911581 173813950 470379237 945550135 838813624 164921194 359910059 108279130 994556887 507192666 506809211 80374715 308966764 953680864 632462721 229062550 849294108 310528419 724967656 594310217 14855966 837575107 513905163 620014303 738260796 515135782 45657255 875243409 16179578 372580405 379053735 242019560 265778976 317844944 375797336 101192805 8370433 788284957 702060049 518937356 602915091 884345510 493010350 342661054 267632033 977021033 701102648 814445205 807171460 201312448 346693442 955980525 431673716 880353150 237432562 826121774 524623479 390491676 135212183 567136096 373555321 210390543 222465798 451468726 550825306 344197676 713901162 114346256 942054625 746559546 552962801 423448984 249977884 512323371 566608341 776925774 556228036 445202738 403182833 989402593 253906587 268196328 685326809 131043993 403322469 981598024 914240119 878040707 569075626 12124526 90973611 66005569 274840948 453907714 111165179 336341667 461336476 984415896 188777726 90192859 224014724 213137338 399948845 791763786 444782903 735068012 693882274 25149963 704795083 584680385 70484067 200484764 999069626 221287538 887395423 484066980 870918937 381746672 535757034 863278606 524088541 817500641 688036843 40018396 692702978 689564146 761365858 224925742 784095617 576668990 172150421 192721849 723203577 158172848 380840864 527439788 980696929 334054177 914631715 598871633 429157207 303796910 46632943 445986087 162573240 795050244 514412056 987898450 451252674 255293422 608275897 324088784 637185702 582426539 353594685 300312816 981217860 41964480 926290227 188700410 932399495 268798564 736567427 520254700 895022968 366987655 641468730 293994630 907988983 67200880 72281509 966488278 69025914 116574729 531650193 266391547 984472407 261534590 471394134 115368225 490994719 890710118 716316504 76816180 429477266 199764343 260798056 728304798 738937599 717877060 856257354 656328399 351607339 253349682 36880346 956982999 508487882 634344875 99739984 55676897 439984277 297279845 117588723 237619672 668121721 307544371 348480039 831803456 465636081 67176258 943286044 331038096 846655444 226018482 784315862 188916611 634645802 11634184 584176481 365166702 417073395 327833595 367124856 340119018 283654616 132013246 375303524 718219688 441926281 716474636 537429414 946652232 775706390 954190126 804137438 30800457 752388108 640504426 471572266 123429244 619435146 969449050 700940658 828111322 750800598 218473679 443562946 976577053 821271069 643753259 985742322 539725651 78944612 899518673 643981693 270036721 687052743 259520787 439116575 521225323 585919301 775043536 357002277 449911740 677480500 975887435 654403952 957177042 324920822 872945509 228887780 128977698 95311880 125035394 577660506 945226724 255920625 265487269 547069634 402530025 669727914 628746500 446160854 362841162 6654316 435625520 251656525 203181377 237453952 577242693 515143871 110611905 235607189 119682857 430190488 932717260 707624552 347243425 28948761 616131589 384411264 272166895 814052294 969278455 390296262 838313501 146250321 709217711 261565999 313315551 872554678 561910601 831610645 708367482 827667845 685271590 155947598 408033609 649652617 934913329 113790114 511445283 787969112 484727917 209730521 266170544 398135176 775231629 672595449 402324702 342889626 611735696 24261901 475446841 547532011 915342150 707907370 756925000 202098784 388682038 965676190 290109735 575005610 461534448 819561773 971180820 233351924 406705927 32249710 311274891 115290923 416040216 356399660 94495866 706094160 280886263 129273826 386489363 991458307 406665685 657077018 890059068 291384452 13300993 770728297 990738738 88245545 951429874 375113128 227181522 382211896 983637458 846791620 327861415 700434075 739559522 550966703 998735777 427138018 477647189 657715454 381662307 505114357 683490196 385811393 94177446 223834249 916278635 834236953 759999937 473697069 846069201 875096412 724903843 178660318 254260045 435529870 647573234 162125037 731729815 224802393 723294902 19772906 853513562 808821937 333063027 1657935 142635846 402516763 553931161 422523561 130318546 123617867 116545292 745809122 134199815 559473239 210387274 866239075 18118088 226154755 858437921 16152744 797552677 364228843 420510163 910834907 154778010 203008425 98788599 480913750 494759597 884638113 356936170 404633144 92177932 134509686 374394620 194543606 56344457 761298196 659256713 999692551 964868355 975627417 723436456 578438895 670604799 876144040 353739107 9026984 607302368 3079808 872483290 435371492 723878148 357227505 510356927 908634383 859047323 928649516 391557902 125671671 42273046 231679878 615547676 119258561 917456891 262295130 878349781 232325500 28603206 573809151 282012508 509218924 993082084 343006332 928073490 21754492 32527726 805520612 918195290 383291436 183485198 821054822 23160187 916208167 645053469 457302657 185112104 482359057 914922483 475952639 539719289 489047081 560746828 287903761 882582422 312001455 633966625 150700984 367912677 229215311 783736460 508180285 276516864 612932450 117317005 704992825 282533691 875710231 419683642 958407748 315412785 70869824 656628960 549970849 818600060 965259618 123372373 825026894 909681564 511949757 792096590 882505158 52849494 324455132 959690600 562890158 280401188 788350085 191247819 217403936 103603386 795816420 975976961 526467218 48773803 61804597 907454257 142721327 21985544 667437848 10547173 759413462 744262411 268154359 946377312 877235791 660695842 893940306 579270137 364205339 634974239 80334317 554549499 655464372 455889523 387577051 769793010 966698815 612483228 234782398 623207065 284935204 159116698 199610933 712470527 21201743 247590065 78409321 841168688 444062022 987865387 350776055 119916867 909922215 474201162 599584088 276979566 272101254 77278549 268617159 911779353 807049040 59888890 42936133 178828654 98987292 644134672 497493159 91655317 909635829 940196572 127160125 746147750 949363813 672996719 938095702 527290600 478945550 700472583 942969558 989518895 797559364 90673900 275638420 57367931 288639880 214990685 991694065 46258460 329775141 295345512 26098667 471815612 825581699 624185648 365890318 770638371 706254204 498506778 510617003 398713010 41658443 394697826 49460300 672170825 502470588 892127409 549993651 464223212 257075597 949906944 314465552 952651972 840121204 180048679 77898771 992717901 371966125 158110554 208786797 882533481 76564013 185401288 222921543 433681520 752069497 234154393 164192063 764169391 332160146 626051806 113454790 723727998 164270732 90601028 573441993 766077669 273808064 192878890 73833073 46255710 989435089 794166045 827124982 288677907 716285874 289622505 830469940 539378467 395461689 626836879 774806125 81651399 870818175 480648519 667017586 324548279 457006380 158318032 886656222 309670850 605859613 348945767 193100424 911312386 325614825 1053979 956831218 266608673 512572237 875668083 232349977 769337162 458546264 847191630 424531549 927429855 735884037 390300450 583332544 549401919 548794231 295090828 444065057 863879228 871686468 707248658 337873742 744596108 841239564 48546926 661382005 422843328 467874101 604653056 220738229 277907925 801438085 102321219 983672911 842675811 788522865 932489328 48226716 505743902 325192651 906915157 675222067 599119813 312337863 540193731 61584324 695004924 848106403 746271478 610248461 989099892 886234144 156631453 481567040 150277 727372020 944777849 310983477 540278256 298859776 289337033 378003983 496605034 833257497 727476005 416770001 345673672 604862145 501944825 430697934 179068008 47215731 343545350 847153099 619675546 793192521 817375817 488831482 501568641 53770145 340937932 542311084 541218502 517351874 593510637 559449634 895957642 423227314 306388695 365246877 325979020 129612401 70003559 581880869 737466348 562541215 130796424 253722226 552916099 341341744 146630618 267685668 621420051 627519213 84563735 840311957 836883346 410225796 863577756 672889198 171986175 915501468 413534144 719056048 742769462 337276444 959338507 479116283 340790979 345496806 292710336 444648055 944015103 676428869 754113995 21731064 144155551 532328887 109043338 917477255 423246875 461717756 860485922 7889863 236841153 863183508 379139039 81371739 95396644 501938866 261091651 462047360 686711747 784132486 244443925 982626341 945902656 274802824 144665409 70287697 286933936 170127512 349886159 528270930 495377002 912581659 871795229 818549905 791727054 49355467 151383639 855305323 253476530 573628480 970076018 532998312 124317799 213822353 591011236 636384622 304206190 243677095 292376421 168987829 947610089 401254534 534790224 520034763 75515139 357137275 320650149 477968823 621925607 903266763 94249105 968720690 807909675 119638442 76229690 521560836 260812327 53805907 498340826 636284166 686578994 515730664 683137862 686479017 952164604 634650383 528183567 781610994 288442663 172931033 700923217 51330275 95760698 978310419 492838778 649505127 968931606 859791287 526433242 750276723 251237169 470943348 802769428 214942446 836445121 571305651 449071549 48957000 14689492 43673636 394381442 945469430 100394010 778723017 706638159 378292237 102645805 128602968 508563419 327035704 47473537 348022885 463319826 125424006 600987624 383811296 704478096 412910124 391599361 731905474 563419453 22043398 294227974 754006586 966581697 692403050 934570145 149288710 892595805 306998664 913478904 939435174 479231840 774485388 30113327 845533847 367645613 892397342 731974934 217659637 742530111 221295411 368668607 950774458 757424444 915637413 669698539 699723024 35203288 295480063 640773414 160479531 686915543 687889470 405362470 72438147 578909197 199394783 970826727 703293786 446992344 868415313 542950943 498859444 721539788 292944997 597113971 257272505 317461635 72726233 286608848 234125941 427811551 203091851 604844637 61479835 938730961 333787122 124181540 760741075 554240866 162284822 470062839 430862610 535277321 526765250 545061771 470099106 626174136 604598213 724539185 628840366 499622713 124725184 221357925 290269688 25412750 684782067 224236586 978124509 912826080 610178187 673344517 105850846 130647155 271558113 396998274 30570705 188758435 277052094 663453475 797033974 9178472 851825560 234271070 320664239 368286976 509656540 807964932 752516128 655537880 49358140 175989920 395945970 155105998 723170879 74931172 420246995 27614505 211907403 952892486 539332855 958672995 525891804 827691271 907546353 139478547 233367899 865510532 254269111 707372580 694060845 135630135 884154828 527873480 30096540 508387047 146147014 556680461 468982629 502820131 784183713 449923316 151397937 241363838 153533845 843869875 960112137 677199286 829979983 616390127 64077636 618735792 872659674 999673720 589809137 470398003 934798243 712798318 865281670 27433272 515338388 105470691 757383864 79326056 546326188 131887572 751336657 919436877 151685646 452624241 646205864 57895509 811389118 668402535 372855355 543171612 632404255 680537878 722091336 178618671 396019798 855672014 504909686 465078649 751509641 909266029 316687293 711350710 914445319 977008358 888534002 855378082 564959021 130952662 222940499 770758795 205415131 90676248 635609890 405490237 524559412 647977687 386114526 896372214 479020446 421932292 435178946 267123266 588724945 860222855 937142176 799748281 135686194 678413452 139821521 335793702 269605625 265178073 713129242 645289163 302368566 538233502 49353096 254697507 823429047 42676562 387711021 854952208 121667313 904660639 533412907 101304680 794086014 111012018 881584726 71765765 957702750 577771198 301076068 549590508 459400228 769041254 444086318 963506458 506231103 89546994 794627126 955181672 217069224 704853199 777165465 248756046 879066060 829520351 852196262 245011644 105120009 623343336 93286890 385660507 118963633 525472686 666790113 484708283 10148726 418071088 376680273 332932334 945170573 183621347 922655329 450933355 336155026 892023444 463768429 905438764 900543031 823620313 757990634 529525641 221423269 724503405 674748558 168419007 463312860 93696016 424625017 799976537 913781388 24433857 204640574 801458903 686160604 461715657 205453703 568274204 134609319 601973162 351702726 906443848 573382331 920409450 309154632 310006983 610375065 706631339 413797812 37356619 207149952 486886094 77063408 372298048 365609688 337258920 38806943 465479693 658764345 885855322 63068593 450138773 363230741 899040762 714781990 893629098 409815300 576743110 500764536 743573274 775761555 332082514 783704915 885833580 568954356 162578084 976156844 741928853 444743430 818838713 570009033 829548786 363919485 603961452 822367603 517391274 821427046 662331617 488360393 844382917 70199386 812757468 950703556 674702135 565295601 692931299 628721668 503248004 657303057 539367085 575272970 370690124 549539799 525658408 22149865 975331825 794883867 511831829 192126290 189784899 439036379 229038604 792481545 20551384 541643220 876209298 750835833 924483320 140150116 185645825 19686304 710828067 747188405 710561200 791910428 747551139 506045823 19097438 906080933 713090823 21397218 611617357 642132755 64080213 209451822 535717412 368110534 927080602 232972905 709026157 896966766 508711154 830008165 176949663 625153222 237830556 474543948 809178877 668081061 106373311 649280712 707968200 663582986 900092542 2451542 482825790 49225319 189215362 719297910 457268909 760176401 554028792 481740352 909099777 462685237 926281984 646225336 443451189 807186666 557359650 107343916 438765882 31023472 799539118 857752089 557060109 22023119 751573903 556983001 382801564 832419504 63898369 324021983 114719453 298123508 637251258 322649552 957360404 344644789 173554811 773721963 380633248 170101737 686375790 160950234 577290690 377180666 896566256 405187532 263720825 349028855 4895838 110799751 190441449 341406346 271590383 356745187 680384211 812968884 168807324 817150187 431667905 324707722 566162826 758160135 881793949 673162505 649794056 687540078 822548329 241975143 804346231 690199134 588983480 819581502 129366775 211142278 141759711 314296108 47797247 258232314 267608672 37732688 108494783 309857476 145875382 629313642 100750791 293997208 159454178 339183913 138191474 587379920 449836758 632974552 949064997 121042188 379522518 863369147 603154390 547065907 330182005 534247701 715250937 197842163 724806947 361228478 6476544 154884496 150547738 217209381 841977041 428549760 62262548 749622001 359198672 59028295 768781166 16289130 619290818 780606886 66145917 957262142 667783427 380950499 131519519 987904839 722116401 268905825 235521866 502249306 936761310 997092335 147166859 453798404 513646248 884770511 6698747 770213691 193764539 496617875 126999891 505782120 11551196 278063649 160584567 962065862 638213530 651323143 710166317 695248374 611214841 754254163 10870848 108289620 925462708 179553846 680791935 436408552 10837028 400857302 487217214 606510182 310536594 297317032 556707233 128800083 769213215 682508170 849321674 479106003 876656972 496208777 184206638 225176485 671323363 33394927 199240900 739307142 358944234 166813228 484650862 961512827 745193283 735844566 319988476 896585009 188478857 672226288 259083079 551566831 245028420 121184162 919517591 739419794 105722586 116227119 827196244 608409245 84790594 745021488 304894853 178532591 546925408 123563507 282713899 768647814 711379364 720924323 550404792 516543075 463010271 611790640 590734064 411064691 443838504 742248705 613209338 242080936 330056912 72336222 241159556 893821294 375745904 72994607 852323268 33147158 65054957 451634944 185937984 271030994 689558203 614401506 632009661 92261896 714760441 705369317 214686432 462700780 949071199 609732290 997476543 19059314 161195018 335797726 575960660 529962404 805394686 479471174 648071822 847886501 562118346 789961413 119615698 797979643 639568898 492934458 963627193 831990317 963802660 196457397 33759157 836753103 143575881 679060909 659574780 237969216 852436519 366129019 637654909 487527019 420643532 742429430 930712051 691642620 279741785 952184038 413776831 458513940 495510288 79346519 403448007 878102825 177196943 374679267 947949078 167415623 392539578 229313403 996037677 358051857 283434287 574870697 52761487 869229740 49273898 109016084 227046516 663871731 488064351 597362418 362101986 919020618 941187778 138608843 343115339 695137191 819937628 609614386 559781180 154259113 317415263 744723409 17550226 182755934 862028284 539154545 848871364 493526281 166155958 866292387 909176976 10922787 954588858 907199212 325354161 801073584 962007634 544649323 944545883 793068401 357231649 226575248 495719493 794962955 62725995 338790823 576283983 320150533 353195173 287443927 529295695 348852448 275888544 783810814 796190819 117925093 102504847 737973838 274883129 644223896 185979561 916340933 70462588 977347992 727950330 556899429 236685308 338365071 182905336 767709528 326743233 497124873 529066936 553774370 810309487 14928768 479897706 318143660 278277285 141916119 461017582 31032144 527405077 686269182 81644920 242693757 399782755 632564752 87325360 625843741 353267170 504008568 267297614 454543875 821529204 113435718 56772930 227626263 857738665 509022631 247399961 78851121 19711521 415075238 173772269 787350825 940240077 712952151 639401894 567326393 770130562 173605377 60371074 967152796 51213992 383899636 87299078 295344887 984685280 582833532 737706002 417001804 222752447 369473518 823017095 834352414 681648183 934127600 328679539 918236850 37200387 586609391 881084358 655469937 781809729 177523833 943839255 307445712 6045728 722801225 394030134 880943617 198472204 839199580 106425094 844575478 86824763 921568637 427208227 786340566 101552893 911174882 287977052 402864985 892393865 519884949 680081038 217527182 828778777 192825848 223962411 764623343 482322556 91434473 229392028 900416471 136126623 833284796 635936988 973197428 312312222 77842593 766101416 635137011 549316680 820040388 460728505 32179415 695289488 273964123 815001769 26472768 497605496 990840229 853554971 245209004 707613075 225968562 73286306 351531421 774820250 764219245 14317690 645518023 938198928 507465194 4757997 958844794 815025993 772504550 805720983 397827067 808426968 310779472 227033486 179622859 639077444 377266284 559644285 23793531 428246639 917780560 329160726 996246047 514525683 234939955 766612257 511944341 599612589 695102834 650681496 503363473 642284318 196822209 373867548 650290222 521733780 937289376 475578 635886381 683282372 253830001 379298024 704808707 931477558 128010868 4770889 849405095 808681356 218881193 90924476 377575183 530717641 25974690 693851530 185566540 962525201 46864253 157604239 612981769 6349789 334932464 404426709 727452047 638001266 972785855 298230910 536252757 646006791 578951766 647911573 109760228 892750667 202558573 76392501 472965926 468899898 150452758 903156298 864377433 41602866 706261805 625693389 9368475 685744389 835819884 345978828 414863123 889777296 424486521 527256412 253273835 22712538 636699820 324820110 529140504 566695352 703008683 857471579 950823354 349350925 782549688 193031443 630989254 286575838 253667541 186794082 846325688 826243418 26794668 211868660 55183183 374130220 568035557 805185200 756134811 643647449 431765197 104768867 815148922 849667347 464260246 457067914 417317232 781361212 384846771 796090896 978477981 703298763 29465403 73740612 225570557 780957793 955806619 793919600 583818417 611049192 538274439 263563128 21413088 644258650 515551412 289987608 34388292 444889241 858877814 97577632 621017063 138637321 690831767 14967926 519989730 875384383 462656385 797026158 268349579 713697351 981108679 657537718 227937333 377154938 673202293 591745004 770596657 584762000 615605630 812280308 732883147 761989909 423624329 905628160 105415525 998946793 23359301 207376831 248276734 743954828 811796044 580710330 328840352 326718747 30305036 563635156 900063202 140563900 436266619 217798612 479926155 359295762 416351426 267561534 732782526 84912400 267575870 772672587 324733230 977363130 251306927 203505110 411873345 796409211 235282815 782162107 299304961 58252331 225587759 951633825 598393314 236752571 94686868 978680535 897429004 604572680 505542785 397862903 41345123 719329300 403759606 358352899 380391328 661134083 637163310 782223491 776365388 780936666 224331643 942707414 202124737 978161152 282670918 271453477 334756509 665125311 267982528 822319520 576850930 912471395 764219346 685003989 171755038 654302499 902631295 43745572 267262657 892302179 671585902 28131533 66656392 305551651 305490089 547995418 795310389 829944357 986970199 706151104 782272097 913811071 446965113 394420301 697936477 770336101 139607667 10699176 600610606 699675737 793871204 18137004 689759971 434314309 764719164 968705547 683488810 246305953 686587265 968598801 624013321 654622346 851682921 623895463 559639418 474931135 246396053 222607424 873433308 756317423 78018800 987579970 623735302 556430619 603267264 129608272 57266800 937853424 788582057 167543275 125342390 260763015 471065571 115533089 877074330 910155296 309991073 671003606 961581288 155645244 356019888 199846786 439750751 474824093 499013184 649029939 317143248 20785971 693490422 227115189 3834310 839896548 955479329 317174140 492606471 245241373 233034600 208348978 983901316 736439865 125454919 864800401 255008488 6560645 198043816 132970856 179409641 701355772 852381307 471988345 92767776 564984962 712331442 755730314 462584318 492104730 337739963 201597012 181556821 30172769 92864182 346360519 272638369 37455298 935896882 466069596 872420635 193211904 313506401 253004328 424787176 226655875 389469941 196284088 47737695 239663947 183698815 871043789 799937384 965565692 691287297 99891512 784375761 294352818 836532639 990932699 675584662 404259505 867628960 358683491 449224073 975552475 539601161 773478378 831659116 43231984 564417989 327054703 269914642 813095491 847660179 653131855 720776229 558495348 57432366 176914374 892959247 565534125 528595626 147986170 94331588 196677727 470018209 912432147 678578549 830222622 602230138 691762357 924586268 72417212 671657954 728885622 962485889 388743973 618787256 706269933 471903119 665400776 242389520 670687361 612488748 50743793 59189087 495389314 884336923 205872117 436112800 281328043 105452170 226997604 55666161 187518025 489974077 524426477 442531250 148214645 640432592 249934088 78510587 594582499 611544413 316114570 421438862 779518340 991439363 37990081 877806819 493157264 311756365 781780583 19036521 493550472 919716229 242386705 703369251 464286871 781427711 499505248 273837506 900503563 320176979 269083202 652964256 501636710 401427241 760860883 946460940 54169148 581462843 86380179 15967251 390482041 452960462 555702868 193258773 635253333 867938929 178292132 150212792 906425632 509907802 237272045 361502596 392243100 610698298 151629381 438783075 333200045 717685440 417870393 28523048 415611554 97981893 185713071 994577494 326473858 259006945 568243984 830986622 448824177 291828347 232493693 160792605 346098063 522337848 818425045 962628487 930860693 223015298 363331196 191930861 864379830 947583715 481661650 771065863 717329319 325529542 295594050 945869425 407010593 670359578 411286748 413390783 219399361 108846057 281050485 613664553 947511182 435121818 425969230 112138446 382674327 82272807 963560656 252643653 789624495 464561586 298183721 380825713 237943861 376758953 554993320 150089233 145271701 580982251 523977419 998607815 495161584 956914810 721247763 24273877 377984049 715692105 268650136 242313313 734362840 712615542 477411103 752945476 767316700 941883245 210567402 34157351 672319706 652365083 929758106 914251208 965662793 724431228 750960690 507660878 968132275 537945602 70720526 71047908 403745516 443216167 456287131 686892942 634629249 356883899 320114335 542032356 188940762 859923379 195863186 494855957 660686753 195442171 937398408 212683382 674709548 52619189 795893978 463576103 337828627 76965231 342444419 466583478 40747949 257309920 233076700 644552385 788423584 729808255 627159114 91149439 309363834 190115620 719900341 835234350 907989089 704051140 508623998 774896929 820847532 245896697 240299358 354615860 185790337 216924603 790882664 933460270 34196990 236970540 920160245 711530463 379666227 485975363 458495422 340259633 802807081 260076026 213136894 908295485 828781587 421493319 986075732 659583683 544486977 192457794 860152924 157924572 311713840 53271219 477239416 840956398 780897594 687876870 85362096 716958297 898361646 811939723 994685892 777358086 68083979 970823908 991831967 953190790 495016161 506115070 865494983 656294017 647859755 195497668 612971409 512834675 850162632 600375053 260280008 612679400 583158132 878633551 362732841 810371328 272404636 76643139 624444898 822079370 433702080 391204490 523798905 74805248 281869949 473122347 824689478 832791090 247253852 259078955 358020792 66880495 616388887 24362348 538214202 252578197 923809053 169409083 766025617 289261991 363873592 475122599 676192058 387128404 493800177 23376534 515382576 104901343 574547880 455001432 746785006 55999338 3157545 212200576 865979114 189145519 487895996 369864402 514206719 140943693 913087294 596736593 483780636 372261142 875911191 298227861 735156963 840581242 742057819 154476795 68891076 177411215 78161864 71842570 632509587 517365436 292621400 134741242 998318409 551355875 936728398 149098402 674093982 562139931 327223483 399878003 994742443 972352827 505436674 777437931 679368463 792234646 344088256 609995244 259211048 675792013 787509276 3155314 719280455 629229432 834628418 396859711 352773378 311363139 423580863 390851604 582302462 576150314 453631054 495150 852511423 334794678 235727874 42712665 978293138 856728152 981959464 141924027 75141637 794830984 920112252 294921970 24241165 346490406 628496373 50928780 819807752 239211020 156139384 91011791 810525985 235798987 683339693 986070287 596380165 977167581 533622465 317268452 639200429 377058355 756582931 502281778 685947214 274796235 51962979 739319852 737477110 884280828 748730732 231151997 879328915 857323612 67186369 632268525 514229809 269146820 974458954 216481520 871787677 391889701 904284627 314232289 8580790 900584872 738690496 84449851 758774781 176046460 802831429 300333769 770490511 240018453 797717884 690597936 836207966 665589841 935047906 681046152 362722982 375694332 557845452 258635346 608013140 160358051 140522241 679220832 687931686 630598237 659576470 956220983 898094278 87624804 263699772 197836548 716672730 784487014 856776062 310974751 623126106 962615450 844932385 510520882 480056940 193694215 189869442 341001920 46170970 800968666 313645616 479873592 347283077 694162371 603324564 506531323 417706678 520211369 771665848 608808413 137176080 720270364 553710547 874460602 707533962 422323811 421169979 770588478 145696737 155419598 27710632 333893938 774189938 399685805 115344442 245622462 232686140 314403862 76406426 860536559 946154144 196863921 349434372 435523423 453593008 802471446 676069844 708912121 478638709 256648644 861659901 877412901 25129541 479953433 526100341 814199763 668965576 521322702 110876636 103114240 475834536 852345449 169283687 44910923 916736191 267202957 186977126 844799402 212464443 638636894 710377985 110323620 879902076 324691761 819060708 762593587 633330902 267616054 466988483 813253703 953682408 785285474 696413328 352565940 799708741 785303579 462576878 238928722 364793491 462154509 176112896 352115026 882477465 716602870 661717830 763558064 888404289 554385573 998629802 488549847 219046587 517050372 328308905 612805229 584877497 23723516 869457839 473332314 689664399 362031383 39933026 193116783 142146934 543498570 584444309 719222120 841254833 454760179 947215892 352961904 165259105 231942531 343779881 63426595 900713147 953648292 609974877 80214200 398261569 166779046 342066164 284334655 123036798 139421179 109508164 317903953 633045441 747983672 882708280 401079639 627891445 267690737 546558100 576471526 162879177 548428524 939384228 108062144 595823800 886484219 626434521 560781020 180562422 211458801 842163601 711439640 237796036 297081228 680061160 501657557 950961772 339103470 326614275 981197448 162460955 220489397 886256049 472217151 497285648 310888999 148797105 991218329 696320507 553148776 552394934 325183084 394050479 198234010 14283054 551428372 183754542 572550761 879521639 702873201 384794723 181606789 873605229 72030639 48719813 93038112 667211710 502180532 283316938 368105273 83348023 795044692 964606645 155740010 354022564 457041861 710090489 588589120 795661152 569360474 331508756 421283682 329248842 222782176 371056951 514673437 40574660 902836120 963626460 558588159 176964013 211518378 18680357 343744533 825281784 317868315 715978454 259943812 811198699 86948351 17062635 253956060 44788853 374325571 235646775 16514189 630703368 96784197 897774375 385015727 257069242 151874899 989434196 289439367 55767803 71562323 72144129 54735916 21802078 909346958 599584756 383827336 538927175 360331628 757175193 774601297 990852177 904110021 121877611 185063681 888383611 579236018 603147611 488993797 384110864 723715647 447980327 387306840 658659346 194268410 197698345 131297081 151100418 667356313 953399831 269786939 325722404 731029893 825242338 375986526 731744201 704565161 418287481 357633994 880104611 613841733 767919371 976494831 16334275 43675019 576281303 897945014 234450483 319671140 135362769 949175041 174650067 147390730 969133951 234728265 822991749 710214143 308087681 345219351 59692403 8446970 505897530 918934005 798509036 311998266 520062284 410458963 930906971 300457297 130641824 199624042 379070465 359745257 59564978 1870474 291648181 62343639 250757372 801609343 957571643 505279316 181470401 654189483 371610276 317205408 582850027 903046396 772900582 792489929 607223843 552119264 556617549 541889207 584167514 71365022 653704717 966891911 490415183 340750904 46722425 4476869 795122030 537754109 987082015 465947306 531117152 974349728 817709439 935086179 801791167 212661609 678482997 511549697 783362898 17820464 49736262 453554873 973568563 376629032 418240187 174708584 260403091 46552199 229516654 44140636 236286995 599642261 762186798 678313616 798292248 845509749 159580315 620321860 736346561 964023907 394964743 279859566 602947425 654413803 790174750 610977780 748974243 500220071 735552451 827293102 341390110 950328027 845422962 23573492 749609339 333872222 839850602 730433374 342614382 62462681 756832505 26273954 131330875 732583277 783599629 263658825 258607301 361402198 747168199 65784190 639118843 620012561 124340621 242329927 648807322 345459070 140615631 912806075 505081753 822357104 850153218 708317921 626756275 491647411 967461236 808471716 218984437 300341942 680599752 213167860 278521484 197599420 865142555 220161823 178081937 24450805 140640046 877350530 210144116 790990209 992256396 916373158 267191773 276979410 466937285 644310863 24274786 216912427 697296899 133546289 497082981 912388608 672127131 876344002 311587224 665721837 341139425 420759696 401286866 230264340 357361727 928182032 102087107 561046512 420951872 66048467 800972193 444819005 67842509 860829307 37885855 628145884 956349888 747102990 388908529 986169563 913831235 799219335 68116914 965097447 194093874 811582882 417844037 548767848 356528336 21397104 646052807 391700203 246652657 35552215 214294380 271065844 202884225 787238951 717425110 633289879 752880530 2745333 194489318 545922028 147168165 22723662 800292487 425867305 768625561 369075094 727029485 225372427 688117949 985186324 839283108 314184074 412168903 728316384 107048975 87903736 467801178 15728308 195058360 124303705 590265662 430278652 520575490 108290095 236806290 28187020 921032484 697176600 302053530 375180012 796049828 717643771 393854654 217256955 691510586 113456330 19261298 282943433 573214227 328485521 517987802 910449834 586525041 666418613 334421921 255578207 307045977 741640467 371587700 412126598 372114525 755853023 92653254 147822022 772383674 499506699 252589483 536868132 725276358 58425452 613414333 164736285 975969625 926228791 900843036 570958871 585143767 879359721 464396849 856099116 375685197 624890914 206449677 972465361 223058877 651184458 394425405 669608453 590506330 905084530 489651876 902462899 753677763 613453984 762844637 435740830 675949925 322785280 60361915 719161525 801348404 944852787 893911959 309986825 996740413 941353680 426183367 438732688 796828259 347572183 574110121 144461159 555488353 258344373 455256136 977622771 398295297 969052207 103976785 916778575 735200481 35572836 935128439 262533680 479216463 72215863 162979914 33408741 923221086 487438242 884419121 81745105 313888599 114461170 999826412 773781539 212656817 634491671 269543249 366694368 998855602 327477607 470790468 901663814 896020809 358053337 558942487 369021345 678739987 106427876 431513761 73497142 842150642 626985443 981262241 402234722 153493289 336587182 734326772 306714657 390841901 529200643 297407113 707189937 794403254 31699614 159481657 752843648 140453504 374395326 518726030 658580397 930274180 769804482 736353525 510330192 100847353 459632702 496174809 545404537 489180338 126288418 621745981 571593168 228190822 7913320 610445574 309920998 141123960 891788861 140887843 700752723 960232658 732139768 622112330 795523895 973995542 342335284 534736099 434834343 112116851 298535113 1122126 591914735 216594866 949960375 694173049 311018862 519203682 930759685 319712965 646001631 22691438 459460002 730788044 521212566 182450529 661400046 824100721 358538896 661602956 472314062 884471296 541133121 189651057 964964667 580045523 59071074 557252496 708708111 29597015 625942755 587686735 139063382 783752030 528607125 511208308 866340457 184302717 844627976 591613266 334799850 713041542 692295598 794433783 219570856 402844103 669371161 924047249 507598184 633422769 218903126 898022028 216624757 972513846 496024521 937838408 762115909 436213611 903491484 884797257 411355848 848576876 712563521 436314325 508438623 760554124 516206001 603173866 515610171 459016895 850289329 879282012 915595753 847495182 984610839 589841025 504348358 668662103 937092697 921736174 583052413 322648408 759604603 259210541 51301725 387591018 609455502 401965850 182016140 186227594 391710120 763104116 922363394 406342058 254812849 782230641 610874508 332663386 127441709 676525438 505088348 159174325 340611680 188579562 57898021 878552494 10332628 732307004 328153383 177879367 727218342 350524248 79695447 486963928 877212465 773402462 82649933 464457240 352376738 647050914 284332068 335781326 87483968 152002110 859450429 503132695 200284351 642316142 659879359 991219772 20045915 551525031 383848502 379004408 434144704 520772108 664530759 105455336 3389475 888664127 690379411 548115793 986902963 660990986 489947749 104252547 250581681 757259553 858202983 458669480 185263172 878985840 936477976 54701506 342280280 74424709 819328011 153597371 23178479 917623123 444411194 60206606 718777470 749120675 85584025 939625393 816595607 727031688 497162252 383210383 882347086 60651411 567157517 520895665 772965095 805731299 794116751 914986807 989578147 27776243 589593105 148863005 684685081 245502650 58494717 552229187 805074105 923425627 658731642 643912650 592745412 863511536 582394812 98453320 939778577 321179057 526003292 806513443 628343845 724449836 891504561 785431774 347563598 561678773 901422919 869518222 425624384 749459994 237276304 330658370 263454975 110843977 507750556 556684411 885133617 394042515 756471823 61077174 105073304 407632741 576531371 373121626 293814004 274652646 922057263 804890652 81008093 114652219 640167188 862183387 357272593 571939343 136503551 691308109 729515646 297279659 450488850 5933940 231911577 681372917 340858895 193760359 823312843 359779062 416775264 398974482 177863281 440957174 832166065 893462080 324768451 559597154 682026374 367538241 280104543 770084466 337385350 305741398 451819833 266395730 559148695 807323631 788609493 540155270 268560220 849240344 239588937 201147068 392592093 713077260 889597829 719930228 869694835 142258812 319395606 289603686 716697742 847399370 988720453 144003134 54561596 605928260 589399185 417663844 863425810 194085481 55457061 810986287 108848623 940072269 637678542 565886026 383319215 427495700 398926173 850812943 493447358 733467414 699167452 914984417 366285278 681424558 924779483 100480745 115548028 815525808 765775830 102146861 79061293 804878940 374343474 475569872 793394656 165082322 516599217 843499584 795652547 55762215 147276060 360384184 188391704 357208620 870208755 392372466 171830173 86570249 893770182 723253624 690322972 260601269 229543201 126736473 730770167 813949852 20150396 84164057 477664131 756888472 60127670 811023603 661782474 767221087 146565241 808517811 386728705 426567811 149689248 402323354 918128585 785124081 551057605 880063918 232995698 461333965 141997073 778075524 87041750 500267619 988081107 848664107 836766659 331137477 719074447 975430210 894399583 780496638 17200819 573434200 614276830 313075675 890845923 222474746 919533033 270083817 404272430 371089529 311888884 588096389 967212740 121609886 56604955 593608050 418234879 870701400 380319442 660451030 570928243 758456528 109810609 501954462 731017078 344516224 787540915 692631954 415902468 172494359 153924179 29153090 570461088 383292179 971255153 646662058 745317908 126953589 421020619 125489820 893440917 894838326 58821852 419973738 489685948 591693666 974693837 142591526 79168302 776671219 929627581 844510542 126960968 329211007 453847323 47115639 507259725 209421635 206242795 133781087 132552272 169340503 67711314 314277483 173187121 523665155 504663058 583742056 834577007 650042448 266402376 397301115 773526233 762452969 570461875 203957822 879772240 280376889 801058731 399970219 835243230 752266502 549963564 126796329 907312202 758564054 582761522 846099860 904926111 33751382 320549411 371161654 442676704 933527553 370800392 785136996 514608453 106417132 995791173 207936668 879619533 169264738 523477555 493550309 84897797 233999136 399176641 465859329 81347232 642479128 278174535 80668296 542135893 593839204 177163032 380371795 383864894 728673800 389503887 547541548 992529824 586749287 139349654 87413305 315782358 571859256 498278682 580495722 687367249 585462341 431008684 246119360 803450571 728334530 130067393 784478138 260894539 139589396 856156958 785652075 88588345 592083493 309539996 754485178 820870996 560555128 972665745 201235430 201146664 991687109 276677888 219884097 109281699 666575332 122674780 474489948 709932551 439022206 464141151 276658737 1368148 136342669 464158836 710312302 859434686 376504370 984384656 330263160 310356378 450847487 836526825 610112209 689675761 146979789 625514668 16150153 973040927 729425599 954311626 22341358 730954565 277051903 665886269 723098489 557567411 366161017 827095071 243680576 165872884 143737633 111136040 9038131 47350778 771300936 63491630 317868145 121504416 653551654 771786191 26036213 150277745 613470766 779829568 630146660 761633303 828836075 657709700 750217183 788492981 958989869 132066394 771037161 803614622 656928764 795255050 880858469 6224506 374840275 562592182 477414911 217534706 584717655 419598753 595678418 679482263 39668790 595215092 600872069 439039231 325418766 687119811 314748612 409184230 91296729 931941797 999027738 969829373 479690622 873484837 136327832 475678090 185954945 739839930 748053201 910672246 734947733 187898271 878632333 634898590 437861217 601949454 789332544 642482074 825949950 44089241 744556645 726708929 304406675 917130368 350427342 964311260 518296876 795191375 783225861 654100737 287532186 245832461 170431102 238514821 561705975 253172633 93239991 797935964 86639744 642924747 376907261 386718049 500801467 344408911 267623011 505553263 339316010 595292048 481705504 484166379 268397490 883988235 342444115 829236842 242790118 752352830 462131425 949581724 988015417 830243316 337664328 330952038 913359609 179667139 449680163 406127095 898392305 717263557 133736130 111701051 937738353 878881057 239604444 197691253 382359888 477299556 819973257 845961081 364793141 554047953 735905732 470743174 890571812 437021229 833759396 25298961 198361756 718032990 985333191 776874300 412112143 985913019 601138287 861920447 741934574 241553799 849487861 728177082 566910227 71647655 338872571 933807318 939705784 725851232 240343862 890425968 828110366 956138492 897488235 983514547 231029039 134949409 252980476 135859468 114143648 172169810 5948151 347701019 437926757 454816096 948107983 909053575 475514311 467316951 315912003 841877265 768831077 676828865 961827315 500621259 663169593 718760272 145939294 886218602 534622811 546848536 75209892 719861439 784667457 996778199 913154549 902693840 758167281 528335614 337679465 661112579 702805331 89434752 198470503 657261248 815575419 439095862 860839017 335852546 559369503 779515512 17416975 745436905 794913113 939006966 353964007 568029363 304314378 847934690 735254576 734536513 266018896 588466129 580282649 373727912 374462641 963187736 339487646 976810605 691722813 786303098 812028589 739833241 50476251 966437871 317612488 792583234 290387485 440040292 321313757 156037711 657545525 344625914 555784890 2085407 58325107 321516658 887763592 823220120 285313218 494404359 63314903 688456958 739739073 469939548 533962905 148820949 521833453 18874344 465650382 953754955 33638338 874766435 347996869 198140740 876453492 680748239 971909379 775223479 705459235 999916042 264517767 856880938 430983035 49986461 243890927 983562974 889392431 756526923 258954870 585642237 671989959 706033364 177662349 923484667 847515796 959843055 981469470 743752484 548096485 18360786 955921392 992671468 488726315 232768154 170444978 261868044 467364523 737254109 488249584 650344164 399565124 494290168 38754847 898550894 135304611 246345434 179644211 994829755 604779812 317545767 180032716 921389921 190117780 325837569 112837906 683413356 640775026 486823280 98013670 407058450 767691948 579419801 827601926 503230811 512293798 248258430 294558480 856345528 18907346 263649448 950733787 947270832 455954523 844496278 546694445 664115480 435431548 427865099 812411294 72375518 437417024 337101839 226528845 884976029 933299193 274378661 369530307 504352302 704259425 936334308 804108423 845419563 726697508 560502396 6947836 275756561 414363070 437782958 777062405 556246734 675616473 957073253 918423907 143130376 22189541 693419900 490767126 272575129 141389015 549753740 993538571 144382103 364503921 848847592 56136649 945999981 300452619 631473531 282365348 807547243 340734819 683413862 659051554 360544644 503502200 452403183 266270463 383301637 849624448 91957944 516072248 111196471 747396845 283504760 652030559 348964010 468556453 805613112 181060429 636557401 500854244 211430918 879848379 652558174 389082021 137352849 345384537 530970625 927726844 37469833 328265898 312916470 348288544 2551339 26369197 819574518 43776697 585065222 942936258 368067951 413972759 54574734 796471650 696259124 601336929 295120607 588049547 384580188 515430498 934927720 997740557 744592507 123434381 945546028 836176328 561150888 546579063 5814149 397471036 88358640 940371684 907981349 882758153 731790986 915449419 297426219 766389540 190397825 557022766 835804692 568497371 419676214 974397444 894146122 920761278 915882306 206242744 814323995 675118153 49861687 958266698 529288064 710611881 108988446 66924154 720265272 961409717 866324112 848129681 281961699 90802693 740689066 335456437 665654684 668013618 829549243 529667180 642839757 626054838 259056656 474884960 809653531 22599276 521245280 420341839 784718038 901509781 431114098 88559391 121828286 679814520 787031822 951746427 867475244 233574908 491042592 350799027 201985920 673344921 872247742 642651123 549961157 239611734 89996290 768628183 302210445 154878921 155134478 498287119 26500116 551009735 796438574 718001223 981916361 495919668 761549842 864537151 5185994 683835033 425934064 142049405 571995791 758156115 684496042 449088412 664917899 112545844 143698671 929283194 716069002 961469287 202948966 636091052 327403984 770771520 985945564 604116574 518745913 690978740 706363105 655351174 934368965 192670454 220802967 867027467 261052839 82447981 606296957 653543670 400616354 275481631 729430726 139148169 710328669 159382650 294691937 264143246 527928546 927799625 450826566 372338805 164474641 800007699 956501446 662550200 937173648 703526943 897901152 51601585 570815847 959267080 87930238 385875654 747654539 45587254 391538411 345536276 588688264 361719087 121090275 373080324 944349581 107199361 863840698 447708398 714052128 453893927 555648460 372513848 401106026 50528557 353764698 31496949 325676421 575762896 115998622 197704357 89489018 404437200 640755686 487159677 410054564 99007987 958190182 776565868 997655936 233819958 383707319 336081057 121202986 589947136 807408384 137384307 100634693 683060328 403115247 583700809 289887796 224774481 710249107 902791081 792974625 630250442 84053947 336681223 851302867 71170129 361429722 482643097 936338661 907273979 630430921 793342919 586320417 84484719 419815125 884110301 890334328 228961972 144368674 277001145 699632646 852136079 803840016 367262407 493276406 713094923 381769588 992165478 379200923 686911656 256194641 808588561 852163259 648404462 380840859 200098342 468147483 382449067 483416854 231072538 913657378 766744218 949123664 388822553 913187797 798936916 279508810 389953690 978799597 70390080 242937327 773415664 933551623 581007097 860296549 248336979 597310324 415556519 123641986 709576011 808657433 878127515 845995548 286387117 494633827 612586092 300811000 618260664 920065638 968858591 252787853 763830731 550226991 741466853 62116180 560064463 761259550 131563561 900460486 275996200 343831057 603833758 399064811 31248724 825993727 53138095 976440910 50429036 908703625 474764004 745144666 134277219 339479067 611821499 985791652 183505489 604945829 642629670 197636262 329389603 555550461 443333285 367428075 188108255 423600683 94287925 649756061 133439126 611011048 942743215 134107972 394286474 953505394 223705840 610257953 257094173 553914672 76033200 826065270 513589411 949824230 425195170 693467267 12866549 758416385 239606894 324116482 613919207 835128220 39352670 723999526 899506708 759516104 886706958 139954543 386028890 509326326 356117995 71882764 515269895 101146969 482728466 542841665 675545853 140078259 87319326 561017764 187306226 406786968 368063195 314150839 847763029 66133345 849594775 775233371 662305345 733410290 870687919 578936930 179804950 988562494 237516534 763774702 796793890 578202324 314945430 107053433 732529543 419653226 355883811 793947595 401608946 277196998 918239404 383383477 176798140 803844243 35920337 580358748 295674170 657134 524984394 380922567 67907852 411457553 194355658 561195967 642060421 552502428 31012571 492764234 45536169 185654189 371849163 958136089 709324439 17625156 374223873 196306579 370269020 579185619 982382636 26597041 237551938 471551565 454648465 305641179 952489078 441894773 193718588 679683805 481349823 66670320 62464512 256014691 868185897 486273584 972121325 14879443 826810792 570554570 84082049 314466017 95080378 497494916 451665828 420133661 694128947 355741528 590260560 547325477 902894561 38145725 208778592 739589724 114926058 852260612 290817091 299562583 255527698 430360082 266130325 807425888 62078537 84261377 489518567 633704039 163797731 324244318 169883751 614651720 253800938 163653991 900638741 836551770 27018379 51981364 465890139 88560693 35370841 605519441 827608940 634241671 52581311 378402372 326748640 815557352 110582056 475429986 209833657 968916323 436817047 452383973 594780504 30222508 692026089 722522689 8272811 828791353 512454310 850437339 403048073 96159270 891066124 360193361 623333052 230816206 958232351 170333157 527346053 192044596 826044247 674397353 298807565 851263987 401998753 635207888 170779376 787571789 417022683 398501043 210009166 344421041 197679031 432230823 741039835 533392676 33190817 954655927 862646626 578128567 716985705 231504004 899048739 321478520 782026180 372593646 190431308 716559139 529140764 873190311 61740948 425714730 688763006 767364988 592666436 96283621 263590160 631698597 218325090 234279104 856658383 817099564 962871885 202990481 382330847 69599833 869815733 29207204 197565812 521507503 268550419 521057788 420762672 643250993 348620510 236269795 231270108 190852185 324958911 665757419 980049918 770217188 285314704 341539484 363651510 345119496 3729809 611123085 37735790 43575944 151661627 525905875 76954379 199073623 193479039 632764287 767111122 181566879 842417114 29739692 529018655 917467932 406645769 84762497 130053641 748851856 645567262 413813886 807072845 824345454 110928471 739356951 252035854 83126972 380453133 41338929 228994796 543118669 111748121 371027905 549204948 254211479 938611861 305474469 651121644 912165393 786332756 213079762 96998983 735152066 508457602 4566303 931965869 471038377 877319790 615034970 302789376 121783843 396695758 930898493 316234105 970840272 387503375 717642950 179873442 567975496 294776747 177481450 685308844 185654073 39977045 865825107 624972575 396890114 607509687 540381505 131776801 954351008 976981625 864459582 43116505 885041708 102901383 766251776 867266745 383490845 18559639 114027082 449608900 303150955 503738862 948123441 850162481 422217470 370833960 586030186 113679485 209842675 150444153 519392950 869671124 725525854 416105869 34766179 706927905 32174941 427616805 450743441 37622033 483085826 200376508 116151661 986974473 375782591 837600897 173770751 5292593 359871783 851097925 312083478 159258496 464550929 909035502 572687103 239032239 359240897 531415616 437080324 803058615 633507287 880949258 699560619 296031273 477035705 343626589 435829402 794872482 846946213 781764978 472724644 500988542 358639743 456607256 282412537 147438160 190547123 997562913 66198911 314920877 561619218 953260328 178162159 690920255 856899018 716800451 596478607 499459838 541097900 962492196 724015471 340243156 873981732 605425289 450861707 506625409 607685447 146336574 396292069 859996616 589245260 298983341 761248400 176818821 493033045 443288130 861085589 571524477 306567228 615543361 184300707 73860490 713665733 171731391 687460713 977021620 21737686 504063490 93198937 515892770 938207809 213929959 327794303 91321374 181621404 79746844 547709061 123703736 78680177 579814867 523483334 581630936 761339788 360799026 255812199 559831199 297536136 790432575 479200880 141002240 15790650 569209948 826660064 372871953 135337863 438620645 698373219 979159462 492122036 978475559 278175143 227797410 490181153 900928287 267931710 162607522 17468267 144486967 497607122 205309277 256555141 567939936 735164874 674335019 848210151 394362916 62363531 649846539 657928583 62929534 51230938 289592815 455954812 162567968 152094911 800251829 494345297 468678317 54158043 400988047 845203221 66857892 796626795 507658958 181896655 935637107 66965215 343011960 975709855 910414200 431621042 326772323 399449321 612919787 687078159 111120567 64831756 871346308 74082565 241078944 810305906 368509497 568380063 240962746 855144811 893270700 685710967 670187654 424886880 548046087 703801775 640514166 681607041 329234447 186142575 874645542 869943088 729193399 808366847 526739005 622173900 579531486 285224677 813331529 526906065 19511812 425942675 599931915 60916062 683592517 435628151 43802584 933657282 562682046 219957733 992640157 608027373 805965506 406010490 494653848 240803143 197852661 857252994 266612934 401459024 263974547 39896209 416549928 246337317 958455667 880310847 956959276 88978735 49419115 165578309 464024336 393996867 96588776 474712252 435602664 218209262 834435835 217565806 471912554 219054458 12992675 433081737 183611721 907582903 650599741 866472217 86325910 831980878 959903874 713888737 288476228 785519956 805472043 629588120 573958062 336368428 397917434 481284999 705855946 959578476 605892826 230062109 302172613 841288836 522150082 548110953 646838563 141640086 996784797 162248259 629117700 87017305 363150490 322562456 726158166 589901639 52381828 925188159 765334744 388363059 605752316 329108191 982128629 551556283 804020901 301119363 548005223 75799549 722948507 813392425 481947182 150902803 316448421 919260929 282665181 354444671 904502627 633748202 34441419 651328514 218437121 664045105 435597723 386151811 655879351 884275318 659077169 584573024 679013971 245584834 125434543 359109689 374613436 958016070 908199020 605174308 128340268 852670254 961110761 74528940 650204359 404623745 636314313 306359148 887620688 995740039 851310571 674620637 66189274 671850987 722688097 277701492 809454685 803712276 244815972 225560353 279181032 216278969 193338204 78564098 577331788 826219436 589548286 146744159 125347159 748886027 630022085 812459354 739780347 991175577 134480431 974184325 870694159 140488616 788728341 844350184 582083960 56614801 243156338 680292118 798239063 677333021 74215159 390768637 836273113 923091110 587264525 619576735 877623377 483432375 842541204 97453059 224984876 172312076 996003563 11364420 649841253 172218141 545243156 297090143 222672845 730624590 804787972 194106675 613399983 87283973 245778716 211517286 286734911 81381511 495362898 307390950 580283715 801343631 953232800 606072258 1865664 988451522 66555515 883734902 888234984 566099117 567739825 769270386 722168178 3671380 828053899 144129285 58297196 380292539 741863770 512331041 788450908 446214765 866122201 135423712 233921379 608490389 890266662 681890981 773230866 238889719 377396879 193528918 448346681 833109627 765501187 859408395 272292593 407062538 405724495 748496675 498554270 129537151 849513348 675038099 167535634 374813749 13903234 119078841 892626395 998436287 308308951 729973472 225441745 647320308 542839215 162957501 525681274 16456679 127351936 733719483 43765904 714569929 878112012 374056263 570679022 612686622 499641242 672897347 36273520 681641600 948933107 758181555 310895767 797956944 275912533 764508267 19637194 930140659 419953896 467673521 974460330 176099836 5392089 218458686 181682013 12828505 840759200 334417860 784071707 611694161 221139020 472702027 560705454 826222537 231320680 772655717 145042038 996754347 671541077 937315363 135904773 81357109 440790577 201957487 50408083 137234042 801232543 237362189 381912569 170316547 886547070 364414517 113937764 619305041 365837157 953945146 984757881 302294974 432158483 372399469 893153572 48673599 491294445 223389491 63072056 669396823 270383430 196605947 279937960 565666009 430433427 777316300 14153870 825024260 542729739 676256578 387511361 560780392 628298022 808374899 533494686 692452482 105489348 886162641 134957875 246414424 277382600 110009424 819355771 836506899 126260801 316198950 421837583 994410169 855102505 348236335 386048617 573850134 291881389 957166109 858460205 475460976 413326753 63370807 71525824 932874521 868206450 155075283 938673391 42594624 436788827 638224102 482715871 823570306 58723376 669218766 592671678 671729757 974340814 261916293 950667570 889323159 6543324 726668316 635626683 171629914 461343288 974333924 445613495 376734357 176777528 391239517 93266509 537236715 417105997 19415192 804956150 594229047 482092244 424863192 575938840 946338326 250242796 567756676 10662162 995199901 187260452 126961339 705415439 296434913 555613469 582532081 371774602 784004627 321247428 79932457 670622184 444807842 510872874 795114920 294414544 988833338 250487340 410001101 860098297 689137940 509205915 289066756 866068640 710719090 527791915 734098629 98072988 3676688 82988484 794301816 311560668 74472106 685270358 731560599 293957811 537604383 375413018 200347822 324764217 935447014 403908363 614065212 516970083 921171470 332593984 703401648 975855748 525760249 339414169 830206533 966685099 640296063 568598720 150454300 984604491 626640192 742980965 854918784 10808245 796297307 107736402 494565073 656445558 256747741 446256767 361113129 951149524 481605928 84303127 260767829 229188038 976937488 541056475 859208261 470395093 261771608 492533538 998766609 180687766 658086231 279536337 11061495 647234957 230343252 9380236 890502879 110347013 846291106 153600226 25016650 73641813 632566559 686194041 978323895 734717273 543113991 206275288 708221995 442387208 920905331 475575717 1526809 681285345 2247511 541752598 368751407 21090021 333779237 904815517 69083455 487816876 25733316 766151265 496204460 782886956 745720244 107248912 965531547 512449556 684881424 475905844 815031613 99024652 408776589 117010540 12709834 643615375 937745766 221092217 247953898 800588418 872849059 428673428 710547809 667107083 207057173 636874483 56896206 418431468 300241933 595687468 230618896 777236583 338974882 280044635 152763040 173148898 596352021 706994533 986709676 484068824 298749837 577042972 142174036 181133694 916719215 718873893 639465937 351412866 769568958 812366812 259298943 409210538 424638027 967455546 36600156 625819185 68492526 771139696 979026246 744685086 146966344 182616228 16716342 118999692 508275440 386214366 759228610 552635051 207066108 589154552 179060465 261619392 10982824 828388329 914454944 995281941 110356355 99229960 351333107 514751774 348506980 144559900 334098991 619382418 679126734 869750200 550474419 322416296 5127737 398063572 632983259 599974250 614919763 961263970 591790360 827210258 466355906 746196871 9324880 8167458 518421150 268438886 775881610 627022673 356583354 436679771 387291840 252450307 397987677 637759210 691147303 985839240 157923726 591559417 151599861 358558299 194108240 957000046 261570370 46574868 894206523 175789429 501468459 41493275 542832437 220183312 915061044 836110730 197691703 627790246 887145745 635579980 336602192 865968185 530905736 177922012 484325458 652938883 225848637 534902169 717392253 220714046 659179143 882020433 807847408 972871342 886196794 64150177 762859806 944180201 211934957 748073606 191402866 691856185 560600762 948537214 417570274 687412946 947970903 212253906 138849506 41231772 56175751 394851375 518699059 778591021 663920 814125656 935995488 948347653 492485939 149133179 29125570 443310798 305339120 324476200 119785415 856055476 159012938 596439879 98064468 712751881 609038844 628506948 95862944 915022381 759033831 712331815 820554197 205925223 85589376 234473308 753219791 63018820 551615124 66821209 939507830 932869037 166537731 124061682 799436697 343662017 995718788 180554810 735268606 817465094 578724610 330052083 918147419 350898984 421176694 847995475 261386731 710649447 73003537 904338699 35320278 673837496 894071657 172531978 340911438 415724427 866470575 840808461 648100374 48500190 899306588 567383936 461057564 767468915 501780492 846922220 95294267 435632425 127767655 824023863 575326602 45929625 670438673 451836751 408632469 555137390 9378565 484205825 907259451 720877580 810890855 696532064 364337631 966110098 568390132 903857846 248397199 615039392 954245093 912331266 113662576 860015384 52069623 479421345 446718886 122977561 964803748 483058990 63301939 567613103 674254989 512224320 612471626 784214055 184005732 636829907 288386770 80432917 305289656 657982676 931701819 807027092 622205090 286117677 595712836 520652939 64699119 150659689 980150217 598210813 822566419 341195441 411010976 920445956 276431174 513425124 177028287 219127168 742961166 642076182 662817759 117518047 965866228 875524800 242319737 130822308 719155696 904866622 937328336 46233144 614568795 395725071 567882859 693245761 757228131 9307880 232915388 220980066 789754618 394175078 791021662 945701394 703962460 279872107 392580909 306112317 914589264 660948885 715130825 283444267 35427001 718107257 856488896 264418866 677540123 736654641 156828031 868165802 735449021 703069239 346881114 815721419 413870120 113764493 653616847 955288646 625092135 127631631 99746595 685434927 373793073 139710986 122674553 747833545 941021395 250327130 916071604 741331700 649230451 454430314 924217411 535021267 939301876 437671272 469334132 157701272 196950330 863821488 244131016 831133642 767877085 409826280 771325523 219189692 63444680 804082359 918152253 68751922 251216073 317509990 277709820 174700790 721735099 893354548 994978415 161920480 504927622 728967796 570433947 648176612 406555156 218354305 595271170 914006278 111497454 731994296 859753882 428683556 748566801 333888051 446399315 176996147 657048894 815602626 737992869 972117604 973602215 282014724 480504131 233136080 858679907 455107648 922897212 506889791 413939888 646134866 407905158 168440855 568407916 601661648 497294417 935950154 348394787 562162782 399153870 918079127 758566759 714071333 468804261 809372268 652248872 118839968 784645239 551675513 249799456 994676884 679966293 374983346 281813888 236348348 228885057 965184618 927236117 577486506 170260620 477915710 818338352 602579547 630090701 605944471 734312981 935393398 98353894 735309133 508832105 240483624 58854630 657031155 33525170 733271924 946059848 530727842 13201094 716810356 818059689 952432594 98910497 268503148 674184115 490499377 552345729 91145224 463712904 809490067 761132838 991570925 994903760 864184816 651229609 637680513 233560357 357945147 223563677 603207784 980417060 447441126 867086019 792768924 977170844 579625291 731377566 781039422 590942079 346887855 2818218 923174991 959971942 82948182 355302785 905325909 399237441 935852803 204067525 256844301 61946287 388348589 17426860 827160077 46920803 450111750 193159202 321676731 680037356 816719669 575383586 166619426 551103410 883000125 716746 859278814 483901922 212061842 149511802 683257329 824524411 705875023 180047424 815068817 609539712 844383506 551520591 230237045 252119899 855840172 605766197 532327878 174424333 548183132 962871186 48395020 505448061 611313991 357949460 185580385 970146246 372619217 151330143 8883984 239209787 702239998 784346889 568021331 698006274 823526479 582925908 623812608 774380316 305580190 537455350 629533672 218903293 783323297 352389436 518152749 745415651 424755576 675563749 139895310 464880096 78859888 407352075 45702304 971747184 752733191 877109612 24038291 542271389 858895570 387700818 70263046 585412127 485644533 222642352 882310993 933803395 289914435 952351797 978498240 893982643 626369627 651062536 284573463 568150147 361781126 923263789 772527384 762273445 291735178 446862702 140291838 771535700 847020415 454908080 357329129 399263458 65155711 633846498 823828455 44407655 755768813 615480832 88180378 747306512 84056553 363937392 44214887 701675018 274692432 29948669 488526567 243146895 414892694 776500225 600517735 439571690 232226755 755561487 828536765 661676863 547698586 600863357 701423104 853689555 686389995 620291268 593920275 281509768 760635800 912913323 439904351 573929678 168136049 309845215 817631654 221108336 276877002 771996106 389185932 761731854 564286354 650074600 954746031 739865844 942287374 808950761 160716575 198548123 526228326 937242070 461459280 982323047 90883743 105397096 771770526 787556408 312720653 401645831 301669451 284961040 23264848 765114618 967694477 689024220 12881738 954233201 198036772 39263238 918186926 111099261 983570464 540243061 562005115 413089740 842451311 146905281 689941965 211033765 116067098 234360663 84457852 768245810 965149893 246603438 771411922 679763687 404100775 489758316 772625451 676315921 733079614 246631060 563893053 238714560 889582722 165583646 576837658 752677459 82959368 814662704 105035383 585762353 892995997 962359604 628076631 953443413 391343989 52450001 634932080 431856898 114487688 306287924 682398584 300265669 656453861 965499826 317766220 555421410 81966637 92220889 45262569 549293550 99618932 292534870 566344317 464207795 16360458 397495264 875525597 432690240 804596993 78719030 588099243 534990107 863332017 295565760 348040717 893395576 509727884 853699597 458371792 179687161 528193312 644764782 459236234 634576675 631727447 218135776 389265322 558751177 116542615 351754642 212215285 168929398 344552691 761224162 385914961 445480799 757216573 826681169 80735445 960620946 176471831 161165951 885036854 244915596 660048659 707708994 99762827 607973443 156717112 306248140 414901702 918005936 70001259 924473181 240186034 919325487 288211959 165019087 226275623 468204156 589456191 718792294 429200351 207105317 422837051 439993297 508331077 629986396 788297158 825479355 501846684 681382803 72986591 834288393 121745075 245294862 72058041 898353511 679115048 828313062 414812279 238044623 922735639 803581030 521668163 629051508 814306620 346009923 917117965 308733032 14857051 350461511 927577544 987543130 318845166 378606790 6469106 614588019 655483758 791161698 93675943 353787414 550343319 356521114 284039610 815893362 197369219 837995035 829651085 844637143 30049532 528068379 186667554 291475169 975016447 977895504 781510102 879538968 192792384 540208043 617778152 759145641 412463981 732498235 310613328 509179433 593134743 130874725 438058594 720505849 821323040 482918082 259338807 864318688 15320575 417556355 254667697 268577748 195180965 562377020 476061955 762103890 829202969 413650942 32271168 723925443 452625824 312886371 499963940 348102290 601370672 160250309 700018822 947717077 672967984 112913450 469057355 622540517 520945760 589539354 75863222 348392518 459961236 641886923 988758055 753621866 85797292 436575221 521179766 583945969 122841500 986458224 510394518 4934789 205259940 884138453 842168689 827911522 576270201 416473222 453122674 584730839 768040882 789831251 675914436 269187327 739967257 223716093 850354858 423844777 769850317 552300846 728842555 575193910 191150283 312719886 255098273 257926732 166914519 563175100 20570929 727320172 323793576 754377327 660489863 238792803 262452736 178846676 394227802 302585182 341662898 303234623 286459428 807848511 400830702 138225569 903383312 62665331 518996613 556642243 512375730 207968644 192979609 150022791 39759299 286864815 740198964 58307847 903152862 622586707 826997272 483928699 667770124 976898174 715984591 777752192 3217729 950913531 170986816 727614181 378495022 176597678 154935375 360062408 997979614 425152397 875936259 958392237 274996815 14537507 928630926 65760867 446425370 964513383 67758139 943698511 226078455 502154009 603216325 984246303 317199789 108181983 351931580 457181185 168642004 543486977 103101648 480412654 109087659 597837946 828191610 395826833 638515910 248978521 355488869 446427519 775866490 984236374 603799030 821631362 575461804 324493210 353846960 447309839 902616095 297169128 854997374 731907875 496115509 32261315 924249455 507018179 673831523 833082358 269555176 240179933 345990552 207906353 602979516 627435354 376626546 277307666 559739473 814755139 329279034 27553085 842197986 570369147 42159331 741664338 654706243 228749580 357450412 452719664 426031050 306703917 893714710 644409927 381122006 479320927 243176025 14857331 888100991 87458501 408893748 819690760 68112345 923248324 498956679 15803059 859643398 803050153 906548583 82553790 323522212 258919046 741813169 627403969 404388171 874843294 461902589 965413655 284637667 873481252 843726382 460524016 751145708 171007640 196509719 134562116 175163303 845611423 804051728 456142659 548820046 34476835 540280051 118574666 721284019 884499791 501380756 162674076 37440404 80803309 204938865 389230082 428941449 129967606 246121001 347604514 876545450 339470747 342151323 935854477 413508204 555771097 951910599 35288009 390842403 927185597 661850115 893978602 220961183 301284821 833731718 769134201 600833638 913911915 21756182 105272399 351331443 419868826 209361640 919275523 673838800 649957536 83315344 855053011 834426739 42991640 75671197 798295607 17193182 959300425 427682077 219556918 63301942 840140696 651709164 58523133 841154804 849704734 164285135 723656141 486946200 969479933 712038621 843680192 212765018 82371938 770474433 141433690 947186442 895553821 501887659 311646394 524653311 209699461 110069104 916936901 718519750 721974760 261586475 871869705 489895357 976781853 627821674 141305558 120744250 413227474 767319326 320537626 685069022 613917922 378315349 530249883 784260293 543697543 16015572 340595804 453379419 831673201 407015954 549432026 440091334 600505238 70871085 652633840 904736752 461710125 671320639 981365899 823931562 90328987 579689349 705782222 732455066 573715125 251937891 171057018 805616011 749827578 499759262 72631890 97569757 600345892 287813398 191796766 501638373 442633344 21205311 394627913 792341161 871135851 566224409 469213713 65869412 299756712 375506042 30477469 89288269 939407434 731342887 403287102 430222726 387821942 336220801 383857332 84946691 963907363 264381518 382115800 190094877 252493538 380688681 303020106 182806452 873751254 99912681 701335372 391314814 768560716 998546240 449060613 993932843 386206419 974195823 371004710 587608281 283084774 737728144 521818931 816307181 697187002 470039303 19413642 603552516 633165952 532078337 951794110 923768015 988639192 485788291 622289681 890398326 83949951 371067884 959795317 596720533 98571991 316482363 520132518 986680680 959555699 965919803 675969005 766031558 743437929 615761301 842719332 144412219 576426449 322440713 835188065 116515177 540098269 395405665 408544987 388939506 739897906 473828791 160177092 656551767 404521341 159442443 51392898 68189515 218690118 56914607 60654625 73015066 824374003 929111557 463687224 244437550 620565714 956039445 917171336 513563138 95877710 101289825 122870716 226910189 994330493 957210511 515730447 196481790 264171277 721822223 236135447 341073593 336504868 802215939 671317717 512710151 195664033 733451840 820241135 95958860 278598037 365537560 84756217 260544094 792101753 963176081 197980341 451180129 359945873 543563153 178472560 579003792 971673357 893538631 302996692 937736281 536780473 390882717 4240542 779958961 604217979 942701997 442495716 679340120 583825283 555067380 467761487 21944829 368803704 152935159 674852639 368857116 735275267 405545629 135741338 282666784 545455329 636268308 628128920 851640965 557112864 333446787 391515241 453928041 670182525 914972928 74641037 134666315 336522672 377662983 670166845 448252024 983534034 212119586 926844024 19075003 607658514 528132734 492551888 379476859 469754559 644456110 234711089 89119666 330904944 880227103 625925450 238676310 106277280 161440514 593155415 411925948 515525166 742994921 809561515 975420806 723165147 754626706 483766888 527774277 167620852 24529397 952610772 603590347 941399204 383047413 988271367 6836177 876830310 529110959 36237415 420764248 763886410 844941350 679696866 194108497 887202766 646039486 399299952 598130399 25648788 952926675 977204601 481536304 148182693 369124536 214904400 583953751 756061326 180323167 808525849 93852377 946676326 832664460 665482484 130520525 50630983 248610867 291622593 750391677 288460297 667529602 938231902 319735093 478279957 491049435 359060458 704348257 434570181 19269617 525392 970291461 231997273 133718449 200377359 428795542 447130277 362435273 460045994 69410411 533067005 99521062 922858398 864529638 781903214 352199720 710849542 397257989 204412105 711863470 8839729 373520526 753455776 380828042 952313293 44972097 881100042 419974665 582986602 351847555 375316786 177305234 757270445 912080508 592930992 780572815 612009707 360971027 601444280 498921685 209723499 626861981 565497654 600191482 677645217 687488428 350021062 117402811 552190583 679894082 442473431 178265880 466698357 683164948 873532192 799486730 451939640 440823155 807676992 812543513 977244629 261022456 431750274 607813313 979066307 492084954 877632288 618435856 226971341 994661383 95457131 976551130 646365155 42766157 193223386 125797347 352061287 777501850 485603061 41120261 442731777 388748347 788223399 716379584 31412107 972019069 263280641 778359760 911177768 27042438 225615738 885870386 239044501 127298453 513518298 678580823 743802502 49826766 315215301 474936201 301981849 402792944 447081088 107291424 565195564 625666843 528813838 128411632 600320751 690677143 832407191 230438631 284563004 520878241 355659449 549908080 441179038 253999842 312237051 952727335 688267790 282350049 651398124 633024860 213660390 118795025 993770343 619333391 753053144 349286423 538708679 518435064 954305069 205971528 117125697 212732158 126376065 513183112 970127333 582428328 1005204 705096331 499984317 75851685 9967938 784682087 320114300 199682665 540782875 778586007 744531686 452431415 57610026 247654629 465207655 807195373 542257455 720933928 558543519 65601846 749310923 272012556 267730186 119016656 65649574 927027553 985960031 997277898 393400751 687668897 482087006 597372744 811597460 970725409 563708570 184379791 906812243 843258340 264893258 571767461 171368703 690571373 404137089 749338130 163133443 398154196 478508592 694569668 319072485 259071314 316341231 156489694 578578829 531388005 476412399 435159428 812878653 175395722 374358463 247488152 82787579 284418235 27814194 951994458 580635830 394497245 552128551 615079497 826056463 767306292 824569927 786538232 17867184 687834264 599214863 113850484 818858234 551826859 258715600 253819806 20104051 136343973 468784935 569542258 811370558 332625036 526858794 666358539 348846838 449613367 917895224 523187519 550186012 446571806 495203543 775066525 502492580 584286152 774315257 814313901 553704159 187708573 82785030 371467938 253845090 679588569 641926008 264612953 536249915 613816018 845043017 974044045 274773372 99755088 240932323 195901959 208856137 333182316 85372051 482359900 202790812 666504813 730343929 792270254 178385534 703577042 390772418 246061312 225764710 7865209 539797755 608545813 978628731 135224839 32557681 985337455 431269441 298596854 919764931 263095932 895077849 769631613 966488451 327640562 473969728 73611906 22196455 163774666 899610664 553787980 106740406 144139198 413183850 762447270 857996949 343387328 380739849 942426428 600561858 672225497 416551352 394927368 762681512 324111060 831274524 729177257 315374972 91676546 621393881 70261922 575804894 444355202 290601789 834325471 501680356 723428479 333016397 285827895 567465709 406352879 595779737 991529601 114307316 884589635 330607933 35210080 200083710 979694405 480750262 645540589 328301408 834163557 275800068 104233475 282836675 27905083 425984966 724700426 333190479 233821299 882034354 930087872 579984108 955773748 301188930 968565997 15444117 586863913 30660740 606437488 334159098 930642924 332973961 634225155 62530219 882427428 775016613 840896842 897495451 337224403 681745493 338352530 83750215 164178253 269091149 709126391 46344632 766458810 695505305 169784307 429566445 760000224 363433543 378779939 367152824 923695055 430453414 473589121 186397891 669585190 680194121 232678224 146470073 782972601 773562704 256320522 620356737 47628420 122673223 845794864 523486962 399767360 256252117 236306108 561296867 861976269 366565044 494533568 303471897 611458271 821939310 301625068 399130557 647875370 576538862 986859239 445244774 55523077 735448925 825368667 831770255 95270138 774121615 572150904 922395834 540458314 272198292 882512913 274821588 647645614 915415909 363777874 541585945 828210303 410246915 722600172 575523614 341681184 210567578 868802799 271663449 835506392 645240441 988712199 712743776 144118168 20226821 964677574 504268078 825144497 652184927 364858522 194050663 463329738 180509123 583609733 965646054 536032813 539969742 934422831 209853991 763186076 77327739 183387731 349895252 249346153 216696127 275251508 685591244 176133130 974996427 979544532 264555289 284649794 510768843 75030395 449950681 285574895 343014329 424811967 683521085 551971380 727952595 707736325 547882920 31382261 361588898 564328674 145980707 985125091 804816109 300917707 554167776 435129007 808793396 96161379 275774360 173168051 466849202 358149920 498696845 498720881 187265473 310084102 170587664 89114839 903143406 913557977 624426940 405946683 721709482 612180498 794554034 12103141 443544789 859876393 849456853 881224727 286872969 217704318 456488891 456587700 759063281 852924959 521637597 434853869 539416721 135396172 170300296 631052148 686701878 691498788 705378584 175071689 288616682 961715026 977863889 461797023 103768970 774502125 196772828 326497456 137033321 816194106 573113836 886883799 418719423 641048714 211341235 856398078 384657818 501492961 504313344 775712763 933404950 674919378 417420273 425896638 383579417 767382083 921051175 961732521 816700885 974542549 117970308 643362625 391150320 257915014 745668270 13429873 582778496 301463885 13891934 140660763 160098735 65130539 495777840 655271009 944537119 856751721 784276872 929585652 155599732 866942304 148549728 765476592 886881395 190963200 428323774 676693971 294895629 950703734 444951563 426287057 7790376 915062328 113616180 906691699 173089315 917347820 726539061 223590797 872056566 16515953 286369835 38897737 281604843 872450075 349677939 18813876 710425416 447800848 262995365 244703404 82978192 207058960 765698203 460030845 782260754 621197853 594366018 983716456 489611150 269482047 172340371 803742987 329544579 369182066 550690441 79135683 782707730 470906075 810762662 862130929 53608845 908201317 373070241 907525848 133447792 37777526 844634656 442994088 477272823 849028156 388802231 501723387 726987519 329860513 638866206 315983196 843442677 651669475 645256045 754638191 828239705 388465122 573873706 321121604 790491147 922435935 341245113 423161757 370523934 994483187 539846567 779012068 361576595 28305208 769017224 864664281 114006489 443118321 640243183 226484204 736411555 408576127 62684233 972650150 685149723 641528581 270400450 605386038 786100400 971902765 39765531 206335198 816838095 394200670 94660632 42797813 340801541 837101554 509044749 248653427 773869844 502982228 213569688 626646727 367163196 943624680 641727549 960187553 80748540 434246813 694312619 818259120 10028944 369238587 94458139 828457763 46603969 749719303 452644652 757224056 595472446 64484002 721251999 92198664 689826524 617568310 765836435 313727658 450679041 896216064 564187409 393521425 383320603 77364798 769357672 527520816 60849810 998087889 385198923 872118428 726796815 2653023 167999063 172911731 893870532 658228317 764627092 224457218 144766601 771804072 365622074 530118145 34824643 480279432 42319561 969856697 251022437 246423876 166490558 938084948 440343214 645904982 208287813 964557759 147322958 568890897 836577221 479159106 321233429 891314796 101473153 471428858 845846483 252065590 887931002 983145867 593660784 723894972 37115138 701504222 725477004 776380803 364834914 361571277 136003591 385365400 736938257 976185293 963457953 949081966 107858053 566938000 518436926 625286433 488579078 685511435 954544541 917989990 796418543 292717202 688643409 543028616 861553286 262727635 926003365 387416768 219048537 575347887 774699291 368436667 624481774 149791275 115826612 998466693 590545484 117472139 649079240 476822372 191620178 650047306 193018230 324928194 370579834 992089716 230789190 643861413 433405089 896819030 328851615 401006396 192395614 652249974 754123317 755294437 614220418 961251004 753972030 115676981 806837112 988776833 687932066 473678499 326424468 840316261 584858121 32089170 15609089 348291208 30928960 398866008 338898498 144564812 335791562 656827622 386943298 525376107 717054672 922378111 883193524 24551313 809985408 112565029 205459899 443570102 492938868 187533949 95431971 836168449 672960777 678801975 398219764 6959337 768261500 348319733 226407767 627877506 423606937 895342958 21490245 233998722 395714785 159501711 765997196 271264131 114371183 440245531 334678388 480035826 771603395 751736887 4133050 371335038 206792821 996884133 719151761 645951590 50449121 344876885 383640123 133580683 49815721 664505378 96787545 993218311 25367260 552212507 32276733 710051479 564342638 985659940 287839448 881989267 439073766 737642786 365934808 647260004 501921863 512077011 279404601 952108417 559597881 534876609 807277335 259288396 874009338 813137232 232939181 927218837 477069731 843124751 459582683 838862185 654962996 364367539 662071656 43046887 572787591 968062661 14385825 808384201 191323725 127035847 880730980 846639303 772587858 253424848 506771861 282864385 450476892 706382980 834991970 436332409 712461307 33454484 396006058 309652424 607930140 893827798 445342855 444723217 250536467 535213067 82797945 233081301 370566911 44172048 881877976 286048191 388358431 499743698 705502093 557379292 199967948 836224751 969619470 169661895 26655059 605593501 15739328 776858034 115819205 779961653 566430425 316296235 336481488 219305916 7421836 294185714 950009747 328359254 560487182 518341641 424546329 107526300 13081940 45691830 977515779 919290802 870006796 128988011 615497757 471015066 709349510 153467776 525567579 884147159 200620164 395996164 580338244 950822305 346181969 335634788 188228087 411570199 247271164 495217157 563528352 630889087 255712233 359298197 86879921 601102425 263347206 914766086 162121268 226799349 987208989 799705426 565330040 318215436 980451175 931016444 439721642 572774759 455183461 539650757 286609811 496422385 786849864 986520552 291607692 872123203 63021223 879047352 493976765 581014181 312571493 264528461 234509732 890074180 2685824 289636649 697035999 891720238 41472161 392016562 856288234 23440533 395196238 594230191 73526548 421731445 804204294 96400263 366134787 849903926 463702039 233100991 704189687 572252894 694472457 685550083 241467865 90105835 812777899 445958408 667448231 535207368 863493157 575024121 865154139 893524647 882588893 961790098 674801194 21865861 402965966 278208543 948790051 566244105 148972886 88212913 977483862 721010741 552439084 66100525 890112644 177750185 329202440 472059016 924363941 763344933 687025558 599327956 154075987 642860802 15756130 287144862 157700520 455055354 863833045 786917488 218261849 47923751 163262652 382828515 481942666 201365408 905987222 62458969 774777634 421477618 858888060 926419406 498779139 112631516 92523171 472954022 100553987 467076678 14002148 735820076 313838053 929423205 429816389 273780189 783421722 132693675 844878074 964363022 113729871 221329120 443995744 96615052 62297961 110785204 905319561 124014531 480710483 607957774 656638138 100121842 855765489 331452570 626939330 387940569 473010748 140113311 828482397 39277159 484214433 249683418 612108648 161612444 674925481 359014298 159068920 732561903 326162483 460931029 530854735 438113512 219038301 260714504 523937757 844164576 795493738 179183946 754362626 162590134 771050907 930254453 212112814 940912239 946379998 11219611 534388613 265676650 838531451 443389919 826058639 656543742 353859037 471027928 189039096 610890869 25192286 786130098 868310652 852483171 959300317 357783722 10616941 711360371 143570428 913953889 425773681 151741245 466018527 90712000 543101356 658767164 621583990 305634973 338410267 127966920 964933959 119477948 743713933 728056713 296130833 770156655 351270124 290692755 288083613 367175091 676020812 55871185 768644341 763909800 100956597 807056342 2724455 907811124 863082618 470424258 350273114 941864817 923981585 566193185 572122360 831765088 510517724 892578156 944447958 94563441 72224623 712399165 51765243 389931138 559322026 7929912 690619643 533797873 620858589 828015128 120415788 70167669 406203390 722776716 167648690 348095341 229124864 651787958 231414092 203519142 882812879 839998375 290583208 216317813 638748651 797131215 984711752 397512946 328289313 79919736 779518809 257610070 193661930 763638348 487183090 525449551 11236561 66768437 495506801 161890674 679863445 83410974 335700183 375681951 239052128 902656493 40978192 732636795 776232659 900781276 468331869 914160494 754867775 43260406 377392969 331252896 172286005 784173897 537686403 851545942 231528316 610223166 864550022 100321567 957731602 683477318 247305289 197685600 19385421 543945990 51188658 338192551 252817655 325278355 572515694 597589537 337799320 35126308 829910634 349612166 488090630 587314633 452017946 108131217 197715907 463748185 239056572 347429034 14602146 501680004 252779347 478394987 272271023 389152251 47725547 18509576 567542594 634949946 86420769 588952141 270559683 323252056 858564417 993988364 643657962 523411810 522259872 329007240 591853279 197411932 855687352 352410135 628019959 678684155 80091824 855052692 976805837 802848769 405837577 466167647 499051341 70947795 203223958 75145177 173807281 583870997 624701516 346167990 225746687 874188527 962651420 262923240 579396361 307239223 140324587 491034435 807762760 786930978 211271067 962581974 373582445 817318535 339006950 714467595 660680949 264124445 948382865 884269814 448632168 314023771 152700058 735276019 181975401 551677382 463514788 911128396 976094163 704388371 941235521 253300401 15212609 227226978 189520356 92687948 120321551 649197228 731207307 261495360 157851863 842994179 170062547 544058666 475692000 758252336 614876849 891719703 582275237 779683552 956348694 791500853 98052088 564852565 319765838 412362554 396224226 220631318 691526812 405985448 77686546 869388318 704294615 105954132 909879822 446207213 64483129 951420689 435723035 878293439 389140500 13968518 10683904 128361568 164336231 203171681 484544964 231885423 130182896 186028156 541889601 974444567 194865798 616376446 874661146 406513031 459958116 356038487 276347607 169916817 506432024 359317501 13358370 770685125 813280995 966250018 724352954 488927343 773302619 421572041 901248309 499093749 182599263 211683830 597326197 815634015 853194509 71862531 715573006 12639720 378433722 11674873 42023025 295361167 902679792 72812764 950153301 848841190 660151498 567008507 750630048 319669336 179545473 790353945 794342504 165437997 916752649 93925408 165273071 411429773 894449458 562845774 289667875 106146609 731324748 534049112 411563048 587984895 373373619 121971690 404613126 23354061 730456726 361522760 111762894 976399528 30223082 78171008 984924480 816633177 459310882 433541711 10456407 628597791 6594891 238209183 651346600 26392596 543814106 148736608 115733842 869329705 487270616 755152854 103823835 103705372 4457018 451144936 338335451 38623873 717424559 322650485 315068129 327918496 62505293 656570968 442447841 226738039 321820825 662545269 606948037 857862803 1761504 440100601 557619893 919810793 841568434 450882317 897047852 819453446 253784109 330748765 204056325 837017420 895533638 70831261 348043291 991156368 315807020 273136222 836567739 753109084 384301940 629135070 448453974 152686147 705836267 448183409 709085207 906501764 253070267 71321115 383102683 864275386 159476419 690381858 573184406 416755508 381497323 821714143 150903578 965669472 122496847 294758290 791762199 56409019 628466478 43006719 961180935 573184270 791854868 348808154 586587240 987815594 144821160 235883422 988466367 212499723 754791603 216196864 791744478 605511976 351023514 5773209 26256745 217968756 575246235 227997177 523793387 297295351 912683299 181519617 218372925 803370927 355272608 744369409 695686783 312232572 690888810 459143213 900776846 343184261 560791969 722252070 225784468 437706042 713534458 344085105 932065366 641834685 317054511 58704938 40886225 130037070 527568954 403442182 862349567 404602672 443316571 287847354 247082513 138760066 420939626 693471064 498491185 976383500 788393673 12793514 169590457 440156813 68377547 669996136 50711280 790687058 268957348 214270407 978789577 914114179 188225173 813072031 921079867 42750552 454318721 863597712 953691190 839190549 252740720 503295312 15459382 537846174 843669428 729422824 573107044 300788741 213509715 5608119 655214788 387412243 208352737 388873499 400033387 966620695 712138383 429223822 236905391 975515929 465005204 883158272 736974383 338228513 221927485 758475923 170992979 317579866 513575234 700289247 662978542 870662411 266422141 839440191 525302648 478287624 543932348 68830031 437633970 110795015 966207652 224083335 395745911 827068138 47379261 146831433 727648766 412125929 71551969 951819871 908811295 739647432 990027106 70478949 122556440 61390024 506565067 83579206 354153749 308257939 687510212 339881503 904653493 841377514 386194327 913128811 447995498 999791138 871923252 752118704 296154371 344824454 145548118 729500785 738785474 859832742 674019694 666682031 859392420 301714740 468386123 360250287 996524912 796577784 500015844 194110311 119890207 69376516 40353869 210187197 426232099 31721725 447241933 602260964 473957387 701361925 517094975 732074632 902262614 879520370 717874097 891778618 971804809 536602528 516802639 106411528 331314088 93038822 903542051 708316027 323408226 892526507 75818917 49192813 46057941 763152543 838205794 932503997 177592230 743368957 59156132 52661769 830401348 765816055 460566502 161607202 670732585 298503664 257979057 252580517 554181789 696356391 246013527 393811937 303042992 435576590 388207664 636929345 15435273 742099562 811949193 704108670 325502210 373905118 283744934 232115729 489252149 764181894 557385363 722085977 793438214 248257413 590954189 98812057 850184273 107795343 757665700 18735251 568896293 878670651 687990533 378114233 740185289 497671380 401368356 722657110 636689061 501146677 764958511 659194997 378449350 570310498 633092761 99107627 665487718 447405276 10882786 48226463 490329677 673809943 901313942 499885424 834910982 970788021 701167160 120468905 671969945 800962887 85712529 278048548 526031384 558177849 703553933 284395972 908975341 519510357 518401103 900698173 475992459 160902003 986616202 225025382 254042365 950126475 986669080 269227742 515845157 744132247 524962781 744647598 923050786 902185415 765040509 45567586 599429583 147934542 952044562 403778771 388768089 502772273 487221549 533173897 509796046 848324488 731400432 804293832 115393779 370739158 149223616 17326106 893143930 970818076 574973980 659680249 996446037 81648484 571399686 211882875 746146168 290240287 811778494 622102060 585761521 223533300 535905702 927181812 910292833 239380395 334362413 829593343 69004955 732482742 186093961 899407109 210966251 33007877 581185004 133121416 726544568 319796009 438986858 445282047 307617920 179376558 211718022 117491551 941633277 883632425 51614507 245467225 710200911 152998739 742984835 847590432 41287919 975105108 146350343 146382975 579624487 665714776 116274294 144540334 976177838 69196595 860972975 942005766 94435314 548857199 155794633 807584590 679221733 624076183 37115401 850267525 700246668 613722435 79430191 647659706 973593509 107280075 189867356 429058721 53328126 889368821 145992409 305230461 692900825 449519522 439714074 319927897 388117340 35765059 739538021 348795135 818788894 33813583 405913468 174984644 916643623 280706609 202474862 560750136 607141855 285652381 133653444 74403187 581959644 522685137 200529050 628096400 487846198 126495840 350369082 251127506 352857036 587333671 920197170 263094326 52854602 965529135 155785924 754789390 322278702 755117860 803663086 634614229 171895861 229275234 963075732 300260961 599972559 339882883 887870253 549625649 353863838 790861581 672201744 237752234 738911704 311338841 856615957 874049520 698029937 521040807 759557771 276912167 850970919 349276932 173965346 119780142 781774196 893788409 862068520 89836859 222282304 440212079 375389239 284181551 978031431 579334678 643513836 237724998 850606856 177468399 408609097 752940077 311396945 523167003 342140515 822864680 719307694 581070142 673739565 304703858 458165110 242292416 132792358 572161085 717541532 318297833 913803005 860550651 997561849 287036181 974050498 808585158 393550724 150011668 776433713 189356382 138209231 767317893 705476268 801073602 262849422 695098981 190169531 237491778 346001529 397694288 493093267 740349365 446735826 359803918 389862277 664671164 945408850 730111670 327749425 168206709 441803295 331177315 634650176 898708537 809225381 273352575 217611313 843842189 61903599 546198774 826960734 588036101 401962159 136791166 466603214 71267309 374695624 4089989 547630182 133634220 92509903 736833428 413873846 146471123 646652587 787004807 667996458 622112733 229335348 788311353 982391028 72774347 193614088 478478436 390610413 410798016 486058962 653404682 607840648 54532546 45608197 242280575 733878223 40762013 918739363 486086869 638253973 92987053 900549373 787481896 602623135 47089585 203481270 9590043 215791776 154770720 902440760 471708993 732802691 471454277 452998067 320422203 628650343 294944289 69519171 784980288 961174034 885573708 366941246 10352113 242209125 226236743 934287401 439747647 158602313 471561870 738570981 594208948 624547170 996906189 805554700 822452160 155294361 763412526 673210859 696212988 148057829 364047587 120043839 246154093 95923519 211830019 59165243 682541714 737798752 546109633 647928096 591206988 757358339 161856431 140342608 306155452 350771876 269112885 19924945 974702204 327076958 914434615 77222317 7078696 148918946 196137690 919773359 347561816 246957646 462342240 3576329 432952469 46968909 367017785 338302480 885233646 78406439 608471805 942964773 554100722 807305360 430756450 333953354 432470578 705915633 115883370 155038278 410197218 748569523 749454038 628012802 439765774 847531018 420428735 101910780 595808288 751090183 333647389 984307485 649877754 843572891 411518327 804407569 699909962 106610199 781303324 434204616 965652705 815080507 587921595 25433642 651874894 150601790 958874133 497568489 225714127 350798550 182778930 890077510 124801594 549258311 722295696 127292470 891971940 617703763 128345199 448263417 189645964 899690230 693284621 930785057 274657371 159501969 596177139 695969975 541112669 557732728 640827980 325419453 678854608 340950925 256678811 126478557 136621554 44303782 782990892 83739196 656098269 669690978 986706364 286010726 182776918 100965027 636718292 3724948 469415479 744147334 513101152 576352808 137545460 110459803 514214114 411338712 665803885 938653336 600417478 647301394 374811341 661707594 429074498 229200753 597942516 165159426 155782726 210300997 177669258 917304816 208783128 214621111 776928088 512389186 820011592 867073085 308941216 849944615 645245017 217814886 268594902 558919330 482452491 298533960 496425905 160800616 724440973 755828912 922375220 78402247 631471411 85658373 291786619 804653562 158327370 419518063 977593050 558690844 778126367 483047098 282498949 337726415 882096334 161992443 150594132 435182639 569256040 79637594 241096897 272589104 491773387 671073512 103214229 250823289 189575684 591963463 945860860 699407001 452836288 559637142 658135942 491058490 455173052 344099781 342300246 132572024 897844559 642119601 173030419 432571849 389515150 619581962 556359505 525015131 471726607 260812259 899230610 830514095 354794704 601335783 370055547 697480797 206018933 580695879 196895681 274065200 426225544 336838434 779052290 613530118 520940708 890181764 627453210 601955343 283029396 103079148 604073966 142330205 925616327 157658023 645064239 343363164 411620721 1363375 9265297 770811231 981703053 979711469 155461262 176421714 688916124 730540818 219522152 484180401 535968068 877838151 147303107 745544499 860923531 598601833 179648912 955725320 144350575 348027867 915906179 26076852 219101417 94549181 305556874 293971324 13840913 593381464 579724481 650464875 342927513 836813832 882439506 484850464 535349842 887900128 184477586 325520463 122121100 785555196 653614261 604976086 717017193 272791969 593761050 940011146 376024569 755142462 385029927 358289985 949860107 642119844 710257693 450613327 778775485 894441363 70658912 733261827 669057506 480536882 568163640 992266323 920689430 846207138 80335274 734764493 358224141 709281684 494234014 75356197 406808999 188517462 577833218 662649422 764518050 671069821 977546810 854411401 485988996 255292235 120660790 88208529 545948090 660761887 924025993 753124329 132552284 698939278 118530289 192820987 317748190 752521150 914567013 857567501 461981094 121206112 151349894 622212721 99195984 173237416 572338908 896001271 211202376 670566372 136804971 426633111 438603174 155859606 159296110 671595789 63583580 853718617 77361246 550760047 725853950 480296000 147367132 695762177 816780634 219139749 887292359 769356701 61128625 182422370 687286804 370994897 128593058 474063027 741656093 930521863 653903528 332227368 483149075 371270204 36641752 53771931 304357742 165967252 332069613 991893627 925082981 933951113 606054649 860605223 917661398 190911781 798253178 932822185 819766581 142142756 758289557 531082227 975356013 11693712 155529185 945211537 88414595 738473215 122442932 386731319 362877408 580825039 922870009 222844382 386048232 614828108 62499078 4412260 63471723 75513952 503406344 621980271 72815251 524599901 290237462 377134356 689726695 853572787 51191787 395051975 81526413 989343324 808978699 651970875 846231879 572587576 338448994 83088610 481215628 687655601 319095351 840266448 501520660 484841631 473592156 293526361 452413157 716868999 591823748 811562611 189548496 832635586 547050679 251528645 214015272 413001813 612178461 992595381 401628891 556860473 973713536 963396622 938031491 193025485 199943959 889089860 353539530 452124733 111120696 552966211 546945356 3195985 913690402 83832683 470067907 446213363 803606458 955577338 892203945 949412435 215782684 782746352 799464407 325351123 410284044 116612734 385603516 577367433 621394559 352762347 571764561 966550703 124996781 412763302 571603698 810664009 223831260 669639107 639990945 852408149 965845207 940992626 444249458 872118568 342838866 215015595 265978950 288772476 234414215 330912156 850817463 116659329 217754800 400845383 405415868 251740042 880525191 361829762 892034176 15995732 69825803 782507919 312723407 882764099 937818294 36628452 295971494 538269252 551225663 383454797 86589090 939856693 517059393 382062526 995883061 343301525 361297125 386146915 485336474 533122521 228805335 273078158 386045534 344845593 761379818 375926884 330151134 161841376 836143435 461996454 551056204 66439912 708595816 127322565 557351713 404697018 452041019 780619506 961090750 309624867 141430684 293921950 531398316 803479827 967031193 288233787 236095982 920265432 724536526 816008055 581962665 744864770 935881854 843510531 318820165 164353325 272705222 220756443 503459033 472333624 377182716 455721129 447813157 995788423 209597955 368429518 76916445 336764930 180792795 766466681 278487080 677992681 131091905 631842115 815902891 965796584 416325112 451703351 293868299 499006055 443691532 172206080 120693025 740456606 187694939 315992712 555536985 120339616 357114780 931813483 378358342 883508587 46856123 876616177 574803788 266964371 83515629 310235540 513939003 986629037 428480075 65367099 531466578 619864009 756197682 417371620 973548564 975319058 689818742 501511239 276983602 165594133 651935375 423660542 159105787 514576926 800369088 750648467 636990405 669874044 205561188 845322575 921857344 506113702 943716053 238926570 306911669 631120046 836365839 752953739 800891172 873140060 427674005 343125049 753342350 340044383 113746066 328908221 289696325 432778572 223704012 809436512 212167458 937513776 964161777 7891246 887708569 476225782 146438370 886014486 452749351 712405771 592891536 364502236 28729693 642748543 405277377 165486625 926628213 739686763 574531182 242149083 837847273 208116622 310444619 489531277 965932714 455680782 674412458 546595998 789397352 527978542 825110756 666144515 963108765 990701628 969216716 210590724 876237424 882702540 398914995 858776066 575756994 412225392 650236281 683192703 80233551 16068843 894370240 267215677 496845544 494907608 309130765 216773843 295680535 718055864 472872029 120382639 403516071 649083779 203973371 682302509 119822402 903032976 243651049 321704762 928871566 761174845 275766303 124131161 188479751 24210061 759619172 288809826 208842380 230630266 385531559 906639215 16666566 285863170 857601204 481677439 202086006 472409345 497819175 756016637 383858779 745646636 283926478 20058615 595715040 215150382 892219347 621691855 523691663 471027264 499490115 57092784 752904802 592455010 332954702 543775847 506349361 861006823 702672314 562385759 755984208 456227707 455007332 646926490 644862649 988818574 639084340 605727299 366675023 169041846 515249948 174601425 704605147 300344440 287847818 692693533 163906534 684917338 650694376 772722558 382198156 554721799 319998704 379209122 357221732 506596417 114035703 846704817 763575164 962752009 56325972 203431907 351811861 352105904 30941124 768747097 564638704 195880032 523799645 789414682 878119862 12542530 475439510 525546215 674301399 697242514 444888353 467461156 100399938 638157451 426696589 630082083 803992888 277429866 83587759 354608342 459875253 501428056 311398498 460294045 901906826 737145529 58188542 758226384 566367251 444228900 798403391 769313197 138583791 97297207 238810456 316999849 913754256 953148648 766303291 47700651 568514438 413637433 121653837 792602402 397959210 987058270 566525782 573053022 241861869 727914163 355762668 930930443 880924303 626109100 723728159 181555326 458713515 365826318 498932473 619264259 609586856 396245245 370131962 284483598 338639737 736044581 34915496 932825598 890581895 212859237 250891244 473143241 627402039 279174313 675771586 597395337 349213151 933929349 767019031 674299067 387115598 948672175 948125427 285987337 683626360 566091369 43616044 336798746 273588004 816358958 980638290 599854623 481329692 856319287 561558197 830027527 511341017 873478647 292539426 693606139 128424166 949452856 302103359 195539911 265527516 130685737 362331446 480999336 914283460 451877112 405280543 277694048 410022376 759269217 28402919 859616851 334468058 411055275 998324330 844803939 137778690 68406465 543598192 943935509 866570859 369952713 162477832 69318167 552865552 696894538 168260431 7469676 666090068 10895022 867501044 778274050 411009843 972189005 142752785 871097014 427554101 695928127 394330692 70101055 151858907 436579222 139227589 637960810 27760007 646936513 538739625 494344264 364760399 166549684 797833353 504705935 279909732 120881073 447880025 804485114 498421414 525004091 318687795 521478721 279321542 586253529 382110852 565524734 786720364 816796970 166286806 830749097 601623374 586782539 79184868 151968645 766359571 428023957 848378998 813813780 487417527 609155074 188447019 999870228 812007902 556815660 308374019 872233458 891747913 910972958 213210165 811763500 930444612 571434882 351039512 162945394 750223673 329020751 609224420 575521743 78378489 871078328 999112659 781885917 580067289 126801361 479924910 659471063 778549475 814748034 123955768 720608055 901184342 28057659 903965216 574220790 179479905 545392390 126170967 861355878 9279742 412450937 158415282 141284439 69556328 421560602 409609241 581760670 163348540 892378059 280985681 879807882 822438295 447857929 317556744 179985850 499657354 527966235 220785644 511267515 394369107 277139337 161920268 44233712 597461771 427322575 589139446 980749906 775376448 218756457 195247474 531391656 140251787 562134381 722937328 98823982 587062004 628620938 760468400 915178751 673483648 286760999 45915160 194822468 556344104 676237992 352868314 941390840 216435270 161125779 506911485 59420216 83359145 698974531 282709831 54882899 86352913 788572992 906038826 363898132 522556251 508884625 639815588 123870801 95879013 482577623 33242434 171342642 723901144 567942556 513184811 746703643 786491144 228556214 281431948 971948782 557507460 861421208 530697053 155102655 903422912 611704007 851992513 723600713 776177880 528328535 445355191 764399780 842344315 317408863 879056712 669163448 469980500 854638316 523622123 337006683 534255702 787492337 305525436 560917019 156073814 975755790 79342916 792419844 823106313 258822030 71336007 501646799 315918590 350978496 960444291 315931495 932553780 661368853 512167430 124880657 841928408 411316387 734933086 148101569 401050393 19840994 50298243 589052155 432055771 173426066 624131417 170823842 561774832 89098039 937317770 916470000 887210061 379198042 538555564 484998361 710017394 865841829 167041117 150145383 602662958 165923113 83012223 312091423 160444360 156234333 6783203 174155888 707984451 192817025 417559296 912878571 481114788 662958919 861349974 947165726 587272515 489426318 238033358 5334243 177280787 351598035 718455714 614984358 156560697 51847096 523923395 560394597 222985892 935905662 571482708 391903151 914469454 641393632 258478599 664945783 924219373 807610734 360805526 971050585 401609384 62188997 804533622 883044142 627860298 721750756 195360358 149460041 981000166 949155069 616049062 993666939 451158134 99499741 531289223 124202576 379068506 352084699 7786427 269187232 254425035 286544994 843998416 294522675 772609152 287565999 209783291 864874310 770632654 159406041 222707385 943669183 855409092 222581816 996022957 195993200 43967716 576633328 284892648 205280092 986021714 867685956 191646268 363626659 877080173 3706557 434595317 126848833 431757184 578062725 312258129 298195750 331953303 523225967 404004588 807075868 30975182 933852166 629826940 281888041 222705633 43676240 275591648 282555943 528497137 496685485 418750615 248377147 523648747 121341209 716302287 495037634 629511512 996522870 558144416 384931003 264358377 991686073 373907023 443982836 690972312 982145877 797563408 232325426 91866985 125369898 459112310 293663600 716345768 249356958 509901976 730942429 160818951 366067642 824272402 549825300 313829087 860061888 393895883 173009397 773060468 618596820 298097930 989683264 339132685 452101141 230069504 431781093 448450974 985537389 214050630 540459006 451803770 311917447 83872205 51716183 205900291 514506834 344035824 202355897 34430735 892467617 768190436 674290189 456405911 809189562 747980281 483963383 670579599 421726467 893762240 55928643 467954941 388132848 29051794 239802295 770595021 483757284 251999444 418845934 76431902 402990909 837783797 586790765 529924825 467640035 799238471 6992621 708178356 984892401 101446734 382321138 192672418 647823863 342041800 963004731 927107241 689631451 936947220 581065305 389773539 70983980 455615643 136179795 208187629 275355243 750333273 900700735 913117135 966605545 844322739 765699760 724395215 19541717 9336677 732512506 847264409 269942096 688871823 177091492 801874136 822021462 266197862 659640922 633832664 19130556 25369980 790846125 868771375 599735183 341220114 781151810 741337077 521121321 698572550 736400551 434022946 300011673 235005603 860559171 862237422 328144942 933670152 679389405 819727335 977825205 92868980 382920555 902574406 777035496 767217584 877585863 226940671 636488002 48230509 865153763 883723396 400726454 32517173 933122122 627715934 717540470 315971754 805209170 676002270 856677997 168191053 156101442 134297934 121044583 46667410 396643589 275010087 225650501 1850378 521212623 388631472 133570902 571237187 815976347 282902526 111915779 233462325 243932262 597929378 585267957 779162173 727155398 283045141 16730251 893861403 719122037 689030154 47162659 806915241 301769830 165372483 203126896 592962687 131940320 214372455 494801190 402853969 902464892 285103783 909197779 129179932 756986590 710009401 998518586 141303997 341386630 55491430 330841556 141304033 875135478 733558770 296823554 590404803 420878305 97714950 350296795 256977349 625227567 258467907 240003019 720110169 215104246 494066609 247574744 936754434 983575167 246439664 298758862 485796952 439924485 950023117 557184892 697395543 180111820 79470591 323152117 952279703 93719025 24397528 400217241 532198441 684579285 98317537 145656447 361021452 629761955 197648701 346281954 256632719 51312046 187988471 462656804 87001360 457392439 208724442 507281305 959739142 147750908 581492110 392377319 475603332 280018377 465667272 604256449 675366999 507469472 874574991 685729386 871433756 99722763 431562219 159132875 632809110 758604577 475245762 219749043 837438277 848058466 729403682 568581625 851351473 915885818 132838666 791325942 881312944 110339988 55848298 159932054 551406475 803742454 478796848 968698066 958012722 86753750 438982893 877735427 859207247 385335840 572654341 782743252 728197777 83886252 49999123 878950412 985550416 445215800 580092547 704876525 493543033 962415403 720554745 410326251 259608325 17729673 263250800 186365780 210388159 878830691 153836784 674648202 58533486 813067419 55722784 494497404 529495926 395076131 426266516 634513549 444776020 684690428 419647586 381831237 514516617 910550612 316192844 997072128 908553402 785767637 356530066 325076326 321173593 854414198 55427316 558439471 606045455 747260394 640627 514341812 951469352 626174329 713648834 790266935 826117306 518495526 114291162 390940278 802718804 68097819 572255256 273130005 728509584 411111244 628557327 614963579 824867285 83749264 565400223 784607537 912836348 952453051 896456645 113297808 323883556 371001754 228721307 966608036 130398670 983347190 20284168 745713644 708505864 611043498 818750578 728147336 365320846 538983617 755319326 945713204 648256756 726362900 721147345 773776561 345521771 687484277 567266359 321642422 17751127 690370819 883170328 287627215 882785336 480977255 718975105 497148848 564565013 331315646 185336654 160344391 256489135 914410488 508723335 229092871 285146841 221195023 704830943 870846905 375069594 229365896 306069922 616810885 997762272 136995054 303234777 419832831 382192363 560008010 11068134 120818976 686199585 99476837 626147070 630970804 243867821 652399026 722232195 628422902 278445235 462701865 48659817 247210527 887629414 543560094 484875538 599471735 795074715 492567381 348187020 335503992 702769033 244247110 175500810 464011448 14844976 255040678 429622063 982373455 980970055 515532598 150168227 557954623 719024583 241857548 495462216 321721470 332163587 689179922 175704809 387246701 80514783 529384101 442795512 180587149 171859488 690310379 375672026 333353756 409092801 713815392 677727595 960965573 164957445 592125672 131830734 800486924 83801332 140695282 854486231 33008559 583454050 163898931 134039283 998887580 209413017 473780395 137113794 335449943 866924688 354156925 913067059 640990599 591287569 964492875 200038455 36177052 936948064 246641287 709988406 461937223 837249288 27421258 556062708 186989623 361837989 213566082 324499442 675036877 32202946 242619478 23687973 189286141 317987291 691152171 695516292 742437610 968579265 227988021 458174072 634181488 604307720 468537206 435311896 706343619 16760941 366225136 510190444 808977535 744628204 673974577 15361204 320666220 708970261 709341301 111346126 918176809 276612051 719670184 880113894 938025259 315138229 735896835 394160250 879966163 795391673 221392952 143185894 806210072 835782717 516615916 823535735 884852160 548227678 902331553 831569095 26464823 245227457 917619685 235428214 581904953 701332982 396782857 471273433 235539530 847110116 118851248 666063396 945474825 15780737 171742266 596876954 197789619 75081786 554632622 219582279 265408588 604445479 338033423 438801839 780853714 449497987 109787508 134928995 226415493 302506974 652890949 828004017 944354276 397954732 356182429 974614797 965344064 679973660 976156591 242547491 818232974 381867331 960560116 977277562 425996221 254991994 800938077 874599006 292093121 266917717 39104031 627633439 384929271 880709241 425501495 185735556 878226511 533014014 445727736 398335603 480364092 915820355 709894113 455922918 356474297 245291065 652727638 970576047 723201776 493017638 466702614 496810955 400927321 797117064 918347222 343984028 508588711 244829349 294989175 315668542 514895344 235174684 57076611 218061972 190533455 256704602 332428790 447696251 636711285 152159698 553600834 173655444 948052741 69238213 858168029 121241854 223536193 237725875 467556222 479892692 6383796 721713023 271563165 273248958 696910078 672867050 661725449 635735775 140118003 279592589 642313544 6697308 389205096 956062182 514020859 849215208 381155372 708608084 498579643 809280835 155252968 164470550 680586626 223548236 678863398 20511664 118761983 990104716 290422865 661391666 733502063 126566112 846902968 557164820 771263555 113865177 848004019 645595732 80620279 65454929 684378180 692295701 756313922 590825493 359087632 190973715 431607957 775483131 158890097 71954941 712869726 916261771 736160308 506022943 738064369 949162038 750865556 56254737 651251942 101645385 696724751 796178440 534932596 375103344 879220450 523744018 223674341 275874650 836661271 286238225 651343827 430757833 769843334 470224877 987676876 811579959 638098202 60211931 253784613 304197619 255840190 166113064 875789718 20895807 189209538 26512132 907596630 864529380 564113589 831236031 886751302 11834212 773549983 890707703 993289457 465114916 653784034 345914082 233539358 773170853 514448323 179306897 350471370 756191562 170824629 799623453 459715813 111797219 553111345 229952410 894868201 399870035 590602788 381668722 114299569 755697358 49731700 243822431 622497218 951915355 324370479 787205819 11214191 703287606 858891883 341442171 935025559 394322337 310783468 803196463 299427245 845574904 583948452 435169620 472252422 613392564 679987279 936304556 944218012 684080750 34001236 642653119 657136127 218983759 166698333 836964748 3184183 763509122 376374943 205534010 480758243 872345819 896948691 734657365 653440209 980281196 164685285 761337021 211556023 646388354 701419874 414067086 14544727 173495008 570678563 141049687 354294456 575535232 724825984 218352772 737537355 336298927 287626104 963875377 428989009 675379693 316998507 245842273 626276865 147681456 160867919 554619198 489057262 984932153 563588424 55947456 533756857 543601541 852682238 406154922 167091878 343234027 74143108 314928488 159739761 559435509 676356881 674559292 960541416 463892111 942644872 746675198 17623835 881467907 898156248 506588204 663811468 181881214 778870194 152106473 157767527 708058364 771357901 985315401 974547748 842255753 536987871 601124015 42973369 548076682 909094025 730497043 634151025 167787251 869733530 567841683 989464710 890421411 206274786 995998820 5912967 970561766 413973634 610798417 655782241 528108610 589561490 359680715 742097480 925112884 446268662 913831554 337430669 180666089 858825031 976381724 993951340 326497530 801154508 533059878 938331008 252259037 716317303 633573838 511253659 482874730 309820404 989219653 830839983 166934788 745426017 187227564 629638610 644769050 866973468 290870745 562737731 243863041 451164589 50989023 678056990 787844206 533069475 373855922 736407693 977617433 636602548 918618790 288430166 446740299 81132952 122560997 477540904 51787025 932863306 721091191 227240049 744275180 936098464 376646380 492606649 700238208 794894770 489387331 243847374 213699166 118335298 5696633 234730375 319355554 712946242 524570990 587685299 496427712 474598371 717914225 59137530 165190172 148674740 933712903 382202211 277991 678424855 376562493 738785955 973607790 850198655 838655085 314046968 604397581 437314820 607706513 207540188 508645895 290871190 40360452 891327040 304644134 295682455 326858365 681531442 239178339 927333420 698106957 666520971 18262048 247239246 884102741 353679738 698426154 208116574 746199503 257531186 594259286 797004223 462833278 466052611 66375243 75835984 858453683 496222401 684217182 253613725 832306701 402709793 696896274 176863216 277880595 134742571 101977472 528301739 148593658 725103132 330987912 168831848 420096656 244205559 171658827 422434192 70997223 196973139 574090689 358044821 219385997 297427933 983423627 289460115 970550908 801069545 200006362 635255988 880717546 995778471 66903102 235467244 533791629 189356476 620406065 773693199 98493966 223425601 34081404 978540880 185594069 859738833 387978201 112057261 584692226 74799370 192398103 190135182 458153997 607875177 213417390 71662142 445292356 280239063 33804236 156132080 279570676 855317263 346841262 737206130 496251839 608753547 483086322 738083254 925710271 553671919 991940445 491055972 504302557 228697253 776141765 197695167 202294559 259995887 433314578 293839975 244063101 938371021 784628375 827932393 903481469 29578350 712944610 128562793 321783359 133054795 295887668 394209366 609605288 22435375 552185698 618356791 609582437 826230160 414983952 20763361 402878707 855662339 76484748 333526246 734372576 683915455 89161501 139733384 877373427 718728853 20926412 907613929 632534506 595507391 678617986 259286042 413487441 228768390 317814986 903876482 827662695 98144286 393978572 101585853 407798677 227019295 515948145 644249257 246604679 431881901 959915043 174489419 113775582 951397057 736617473 998608610 230783031 863224595 325030677 458964879 564039958 539982457 629863824 107666699 948801253 896677126 410922146 128425426 506324274 617065166 450563238 470217026 736712893 518578819 845348179 400298984 998667089 496453945 650363216 505283881 309839335 275727865 267700895 365373569 205434832 722635564 414912854 572756669 823972787 820446533 36690286 814003853 639062747 920215504 282828093 499996219 483005983 287758978 3341644 565177007 968127522 177840010 300317650 91126324 496581464 389212768 208600286 682239509 564091413 544378148 161914451 564008373 322548417 463055469 615715548 912888468 475122516 475481669 503071056 963780756 806880118 489892627 783997497 329680540 417724167 221347990 736930129 950237731 790284586 678170625 836000171 574433869 598273237 46200263 486177081 551375068 951821933 626406736 596613777 746835270 131233796 131743797 452764212 44292529 68648519 990344678 244966462 654394866 330926826 615102911 533796800 923281958 583325548 502056466 166965766 143721180 602330861 878071917 969098666 235989196 800644226 604658995 840271208 753737231 298695630 67490016 338533696 624107390 75878731 230080780 970386360 151520858 586420808 230834460 227204793 483597058 715858717 75533921 499326847 153503661 427865515 640824612 272254564 399388374 404432192 299460092 572477091 490198667 774434263 521505170 18693852 47496263 585634229 189465705 339338277 186984403 959197538 317807391 46378905 401955755 834059039 841543 761584103 175210520 911104816 326916132 279077802 751446527 114333436 952016502 884451469 587519361 491439123 808293385 377099669 626169097 302686772 750342178 564971298 959670178 407198392 680057527 874969406 432907686 437553354 733189581 197435458 532510611 151555946 758324303 665195497 642574432 634935092 918898314 440965171 604513521 944072652 944637169 868723243 506569824 578585347 196825035 205638404 448962647 896429939 534219639 224676560 29686958 856077887 630220544 115015093 383210483 820492318 471175284 398453580 549838278 142449637 207976233 66243698 315080753 70792191 324946429 731653323 508932344 244164788 606380773 965519052 55512907 806256415 974211838 463734485 123145233 550420804 104080354 58899024 6060291 972238199 300390644 672397511 319473476 477363041 468201034 683751335 238139530 339882893 657556843 184929244 157169697 170741065 509746311 64755787 989093838 517460947 792983335 956845947 345166796 820365004 516711983 958257469 522773940 840533964 603397202 614436797 782822181 139736827 961341271 588331481 596220094 79112758 399958704 273706112 503292165 543805911 497843478 189408628 824867486 891963670 907217403 851224849 248830487 842288677 636587596 151956541 568938923 94285846 326183798 610328725 905841956 749688304 893672779 631321914 278003200 150500571 63682897 364304672 399807061 539257192 680333113 724013072 4596197 144056536 862303875 480610178 774018791 658042877 196507066 247252313 449431460 552924976 109285343 787541175 82295420 345003659 580334237 129106812 201048593 589281043 855474223 176995192 453640391 593492559 398196326 616172664 499004239 29668600 84530476 349204666 830369937 311124528 690228576 330376970 405522387 750675893 314866191 25697854 481534716 949272892 790573944 807137316 44563608 187489562 22879360 759492878 330652206 108093821 131974974 829119553 702625768 869645593 593026023 68009856 8497526 407579471 593031164 938072876 372909775 403741181 690358448 191329431 991778210 796336428 663797579 693126398 533662290 509361124 685391510 816042110 497742271 557546842 11375847 258531345 149042736 145368574 132770402 697369501 742358853 541335149 499232056 167385751 485839856 128267802 294959082 554246228 496642793 31369988 569407375 931290435 283903167 892551625 40904540 483152431 736586504 670727439 171445325 741341211 797285473 777853970 172713925 831690390 371266897 166869770 186368257 332604271 560739215 274997315 389229463 735492591 169363329 352473549 633133559 601918640 348745967 551167568 836683654 331439558 33723984 323805521 971518286 316242104 167584625 956919632 869282431 979178727 115429628 455720982 337712153 894574426 384778923 442699764 451879583 623749328 912382441 750706286 884468165 965129646 259034580 771595398 176665045 326169285 439200491 424704728 319491951 396625519 344820900 931571932 975876204 217377601 932762103 469803579 409517498 901858484 155293779 768513327 599926635 330005558 66893100 356181489 420552290 93120024 51446622 807799292 693035512 554699858 321628396 78646849 290638842 912487175 423502874 89972967 565496833 329328410 464541529 829403832 478625918 715272980 604265374 77089040 156475844 7654427 899005066 985147971 52028906 333296231 999987552 2780303 18863228 834161679 373214111 323076852 891727859 483325125 974866990 545433106 403019988 795608637 309046185 521618875 445488579 459525697 786935177 563030716 627578452 398096939 195781703 140297509 953095192 415186973 215700278 745268002 700857977 143029931 365807377 271648644 566261346 602836782 713657758 498312604 773061770 689661312 344818135 889931713 383559513 46470915 913791222 557212165 732671394 356705333 645643590 598436781 29899138 626726814 954846120 557008499 648868598 51419995 219158033 26921784 604721519 263962577 867436683 320902466 716138265 816870198 564793134 281973337 257316431 211363058 56546422 358826597 908525267 688812269 910714176 555747030 992484360 484852914 607269299 811329461 560428876 525841144 419069402 455154511 568912702 196633636 142521646 853572884 505392641 651216891 595077456 666353014 487672079 564652800 162271877 489709828 712803188 72735638 2417619 681601571 851567832 395403647 492943275 539734756 500837399 425333502 506414043 21310297 460704872 347571417 242045000 404688389 170704570 689931681 570114039 606777818 228435375 998876563 986210346 21091314 114078747 140771526 666351188 183688667 431370642 598936092 537444624 144034628 905583130 674501235 773501696 529776238 48816960 596169067 387939786 580086286 760786015 44525958 803084806 198809841 54309723 876012344 714139287 403697174 876995808 135168279 942817833 193254443 404411713 955172848 962398011 147346398 259260479 794852806 14306043 688842857 369113454 761703846 90376144 549350600 131882081 688459968 866746977 236090405 962186269 521611431 857020044 401152266 822060403 776419639 383992262 760159101 787213221 549792308 334409227 135331308 106807203 60997233 287400067 954964354 140580950 652818888 391667451 467076235 758185493 619401295 932597761 101569737 972452740 208518307 459408606 496490353 197209569 848594607 896022064 719986599 481086051 243750571 528210234 974464376 248205815 189070249 233145518 561156256 335532603 171426757 808340916 98007760 608836893 191076196 627196983 821752037 824736524 3025646 758798331 902455948 256640477 392519161 877812462 824012363 831336220 764271147 635633632 798192559 922600895 269321780 946882474 589721242 818189021 514706028 613235093 331910924 514624208 351715370 608707812 332219360 492208821 188426305 813249122 854719229 411707483 7931192 657527053 287502130 482019883 396019950 565900777 912760376 796401304 372989504 231781357 372159789 52786670 954263781 355841480 481604848 988617097 387260522 644030095 21735040 777180835 746569100 580783035 440858888 946696911 90895863 932802566 52996255 715465414 401998387 959202917 863210064 178235213 781087303 931996281 516383592 425041590 929379684 985896918 361338581 304592709 520278713 406225659 315827968 225301424 448612798 647734654 851372268 329508580 784996769 190070197 860858359 979015040 407746834 822477937 586149768 297872070 379941933 429930794 305902930 883619052 456657475 442227315 356548464 622589916 622171568 643357055 747769259 829370462 338231438 759265756 161619620 326952109 356898488 155721763 507694642 493422508 250101189 929509393 812249921 954784723 140670912 139293996 110059471 577113925 209659193 802577380 581000564 718527503 645433599 900182916 192463275 502215766 657947673 891954431 731942219 805542320 845012695 881490444 119383392 310294890 323891481 12957400 458863694 16762990 103284787 337099211 130674405 157169788 93626151 771506308 753756897 426592220 848331390 282078402 724086132 708718679 927575989 314979217 715862386 839732563 923598004 985593232 316864865 953303395 190551854 574353939 85822223 403259116 705374886 934487533 879626685 739369086 654857894 386620406 662323916 258452396 768159314 251608831 192707845 137851551 396583859 529341075 206767943 389043290 340355618 716040543 202581683 434280337 550480242 666340777 120490993 913909553 166767380 511601958 814731864 339332924 488694270 130240033 28201907 400412588 379085160 217643101 748129896 322310027 343731818 456173391 970638606 250996401 872553139 294680024 822512724 275410456 921762312 594344065 670774987 354642184 268897026 30141924 153285680 490760937 502133549 116460168 209239594 581786882 979947689 385059003 880875806 218807844 819617705 733894964 863701718 691345726 797785841 776845836 921093466 165399471 182678355 879109719 215027142 33844409 258451066 253920736 175276193 204381541 980589204 695128230 137844611 364386447 805633595 602140086 706589619 739447345 755230415 917218660 869073667 377016877 147312378 950521798 178025529 565336621 566196679 769953675 873434983 532925355 396626181 7911455 329114623 576331796 884467447 769861512 636186252 119276704 974958140 258767062 563803149 869106660 496283628 732687703 652606391 640845565 606884661 230492943 559854630 991073506 581084176 984953323 271453116 999690990 445657669 699388762 381293989 177900686 764767747 375817310 6737239 116521323 571959547 547336393 937495058 639946953 31238116 976968546 264571723 522445281 109671562 205743359 816022410 505764404 555979491 551958768 796388146 768683065 899506373 619028138 740850313 436540467 180334815 914945873 210504486 959660200 411996445 672608508 920811393 54765897 537066414 381702888 550708700 48019939 107659001 344066370 463820305 689625733 476672557 21907096 133111756 656555517 910400622 242749812 816206298 252483286 215208593 576906428 555049874 77481542 87390100 342919423 398114320 6491437 700986889 598193243 16712691 404878896 575378995 139031397 754908778 792708662 618697389 707027372 887451142 221119595 853438980 845913052 364810937 870094200 997593772 274823990 721220749 183402008 803664908 755664248 381467572 752569782 767446096 829296377 345161542 365543670 346832818 602694004 679212592 922127547 62236950 772482406 749883265 591457675 237253568 274829416 158936715 27240171 784914281 92678439 271384162 404473862 555238203 43218416 803146952 733729621 381669921 490908923 378565093 644875023 822088650 325215041 589640265 644761667 586518384 49864520 727437890 671522213 945750393 840243529 566606834 293557953 269705288 93262106 983517217 186991222 550585288 641924014 17833403 247531093 928827073 137664465 113107339 969532239 33715154 429104111 507786945 991712595 920919551 747003398 789859333 541265745 52210427 193098849 597902666 952288623 960596757 796067886 718833417 859381329 657678999 56041279 51437506 652312689 86934401 871897796 21483786 274680987 158983714 590134282 561095298 423515309 775895550 258232354 108772172 686225586 732032618 984689057 850031650 830799732 877126431 216566691 482000921 45346800 470753367 29454629 841896563 964043920 302273799 348634465 837518175 8220245 89927190 733047096 60238523 445873388 801755572 142531613 514992128 675927741 880256899 370512120 443233630 382791473 131357806 816763080 227557025 859417633 613955905 313976658 749764223 852336279 746353952 472084339 727320107 40873021 826672394 568775451 501440378 396198909 662155344 631759799 24198563 622074325 896848345 566989618 740178706 597807454 137747580 204886987 541541336 570335758 522245092 689705750 38344518 715724589 187720805 703798162 274716901 368808880 493070674 996940878 724326267 533044224 940925702 671557204 13446979 362725123 600166164 257573857 745099975 402830734 908281115 494613855 701644266 321683613 197601143 227804381 838585687 845939336 782846669 326716394 115209845 625514381 500289558 499459760 517745524 266459868 321462331 156408761 91810786 536070811 644082695 688655235 386806846 565698096 615358423 717210288 577394705 939626300 193473821 708074866 744303623 571146608 907650293 952662690 479564524 126509189 960765431 664569848 294337669 63357140 744034162 27370636 667866091 844624552 236088177 894267457 809815902 456356905 554626261 188326478 54902990 217924553 169320590 159744297 100799629 834159685 530298444 820784485 960078259 226746146 490038269 679260341 533006056 577241043 513508236 958389662 429362172 808688007 230411041 2719127 614024637 942371648 481106691 665926759 408214976 503609491 331113141 887870463 465851322 202376372 117236192 894458977 30037286 304883188 7976787 18886750 186342287 476823836 611234454 565801392 767746977 614729678 95384563 991217129 420190606 586617150 681105451 598237595 611907003 868194435 133369609 917644084 498369540 177706996 713796341 23706626 407256902 976472002 23002573 151220683 818004232 427426981 615587018 313746338 252114763 318108366 468755967 643352967 779407379 967805695 819901656 775322414 128794743 598848328 62309302 262469454 841716675 987598069 448496315 388238811 319709153 438334239 540503932 258607240 808446600 89007744 988604772 367963186 462885110 750450983 421740071 73620602 20362337 156422956 652640198 252615374 301618844 770868337 954180294 123259278 876533561 667306245 265784469 979592362 288167015 351311701 767647153 420066453 719557170 341790829 464656168 322212072 987667512 634074517 301705440 271816535 550176847 885815151 22071104 501632791 671345058 194598197 115127667 966027045 199829357 638690841 169776081 306897716 698977133 481240988 983258079 519473036 109263901 567619939 3907448 323715117 862354139 111493236 380865143 603533003 345603397 31904520 732268683 158788465 247600850 499359119 765472792 75016360 349413226 192588837 251172687 660879691 502495375 251696894 888784624 193016404 966683255 863200306 65991540 147665723 85227856 341158914 864967457 462922118 710282707 235313315 374497484 976386848 225806466 8450394 220610303 65869872 568568845 968540238 627695498 353723803 765084395 380148043 130613801 106066364 338779458 640726014 634781530 157249147 217225940 507751220 957440761 269922160 908851404 576014064 733742122 640207001 54305546 239417066 488254747 482477648 94421927 819269155 395722689 491363541 909598135 563774784 81772298 474050793 635749138 143749845 947612117 120127710 830044959 571117667 728811357 386364400 957820266 977495212 174658094 149716757 668712634 507593966 627033425 274473175 963133461 738004229 808203531 579590131 603702997 828871969 80745830 802153038 21670179 54856488 13786850 98943843 466320854 577912670 866487570 776936161 947121663 749111438 54133060 13459834 862165327 839967817 442092314 932290112 420622840 879591365 372219306 682304594 280038438 55642863 852456441 127691795 560970121 935487691 742339172 653706912 246823376 341570623 208897800 818300793 123299838 575853122 715155364 800748351 176175482 276658506 949860896 289157369 554094597 598826797 358516679 999337686 95513285 109190502 894365283 54509302 958795098 86119501 419469789 559004274 68278989 306974720 66209577 93371844 39588167 185944736 506203723 206709519 787751191 105511820 472599917 95002444 700165621 327803761 468330603 468468067 828602870 196337446 332054353 562988746 241675391 177476467 234735708 309718161 619104194 986251850 590310984 362238947 211190659 400713896 533922092 840233461 127873110 786523699 309816368 621372176 690315034 657986087 695448868 412565430 570544740 743070600 290141835 243384528 190466677 104233569 173158473 487256769 605188275 244305293 297112600 148203001 950272956 177359901 419068669 430243303 696907433 947321102 448945062 610483852 951057521 489578599 353155470 39813760 437502258 840757467 936679954 970494143 448107590 973159700 547595734 887220799 779471935 402403316 906501196 681616056 614281735 369945562 376208863 17840704 564726385 637026177 287236916 332542914 549794467 582852842 929650351 545342968 800445822 819567414 29484244 26888280 441248014 663712794 302207489 716764846 54333734 363214509 723027545 629699768 838011970 211295948 32583908 395867206 26305732 355443140 316600029 217360797 302113834 292796092 907624021 427362835 427280398 358676215 144545081 638092371 942194163 740561052 505409656 827605588 498415039 376910808 932786998 868670105 801072461 767548824 696402634 215091066 622352583 134524228 435528237 730968721 359938313 96608286 706630558 913607389 925082688 493057097 975120264 82405666 936182293 136916397 387630864 13757371 858846498 970320793 362945344 779362575 295322657 883237320 474950618 163129794 646149318 329718 68613616 930860873 972349169 775084151 96698565 87151902 222026130 271348402 60576762 678449342 388021306 152166658 132501690 284728150 415344532 973107225 492346321 241342880 187977303 648534032 301422130 148305233 514304857 532617227 446427298 117603516 565315778 973164799 300422386 543887119 188733155 476117 713385251 100309051 715522617 792033798 202827608 800651411 300445170 572965265 379235002 385144303 686559537 903851071 523297807 922021808 145464377 131190957 103519835 298130663 202794410 950042100 145184064 682854619 885706434 303239612 785072803 976991103 956890696 27410730 240966065 107760639 583918502 677382428 437376755 482342382 261564108 763680385 323883274 721781064 725876939 851202093 525790382 247176157 741763944 776792897 465903181 436698490 132294661 138977451 506234503 441227181 208965820 571067664 860552268 8759995 228628505 114271516 644471080 441029681 333083204 570444886 501724115 429014153 40569184 982824587 487432147 451499529 85189892 131152901 306869215 492235360 647534564 204703726 968356153 106068865 415148984 427110304 498853753 56980746 207197473 712704862 401303574 639679918 725684289 448795656 540868279 809675284 56963528 544202483 664121662 843056057 681249525 393381299 741100541 609346150 250499706 238407600 645501736 666481473 71099943 651246134 395116771 190989010 773740729 797488031 879852584 806965634 843993991 61426995 56455394 208415488 587260503 707903957 596369371 278983625 770578641 871978951 747444399 374176901 696775118 637671623 222416565 928399154 967922097 789989741 758672101 435942408 246807185 110827761 759632009 682943659 891138744 506181351 712643770 34949408 854552913 867588719 318265584 398258427 216545035 36606606 791968358 625049903 804664702 550906830 314104144 803009060 409159289 536089066 596323492 676824455 326656389 967291357 110366820 154929128 256538040 695979725 215502342 204769009 387130623 94288132 370195707 963922400 12427851 524156148 964860785 986226253 665176840 249155618 698816047 25274798 278199682 299898301 985454690 1776148 576112865 902446742 241751041 861557342 357835566 593264743 153662098 461946185 963511800 305909604 605295748 763048016 981603554 381823599 386639051 329222084 517965811 780771915 391757307 949229969 968613581 202880706 599401604 361926196 862041848 836244248 716786072 802506462 775181721 773665359 77956736 734392482 973065959 49555158 350476412 146835209 930021143 371168183 844705272 992487361 6821327 995179250 58843249 456945349 298538306 882964588 877954345 182225656 921220882 181371574 658223223 271229524 38914102 743563885 612838645 145559593 189611298 651930955 199628753 899286943 81117620 387451595 939112262 549130785 460643447 633452030 906927262 186737926 321819379 92744463 99943689 123281751 296294211 683139959 130332597 132821936 413524428 213550248 670369394 736390815 929944217 752652536 877451425 727604457 213171677 36706155 545401299 695988024 716025649 411814052 756741097 660462963 685033852 90874034 902694411 371048644 917064349 697791362 653100482 997275376 996950046 410480992 518833383 501482928 480983896 124929573 234853170 921473366 177007513 146155952 150835965 420192053 547289613 570420948 229790828 99963471 747749362 1820252 535979192 950866150 84504146 154657332 443668186 910890947 651779 200293029 795133981 182435850 94081449 114031443 894115657 594724159 736055334 304508585 480932952 976881392 577173471 132142280 445614676 495314521 514855479 606393796 568861580 601853 50820053 197995199 250813570 625524251 624316766 884070972 48556351 614994392 384688419 81438296 479788037 789182182 111011464 366402216 647750093 330369160 4022604 524782002 246724338 805463907 937352560 91263333 654825461 356739326 27544444 262215449 732668299 234615071 898725072 421640176 970699680 925148470 89658339 879160894 133527882 463274125 807767205 148437306 965028080 196357510 376998166 601188911 354884248 15520293 911564738 402131134 642307913 454802645 217334899 293025957 709092870 878460943 442247695 450485965 680769399 891126263 376790840 983705380 516673906 297281130 930319719 729720804 466040661 842314039 630335876 60305130 765333101 807900540 394442629 679713659 249662806 55292944 609815428 614173097 536075151 142735258 31182775 598245450 667316224 581212857 341712259 479501251 197477990 472409428 909313440 37927085 252304219 633995479 639170577 76072580 503811698 687675945 598726709 532520271 248275105 327984383 640417824 359959673 497943638 284461887 712343072 817743735 338325885 674986645 392077526 874323802 760588661 156765671 506123049 590246596 766824632 851089685 296355810 495360676 107611244 391508141 300434446 759249102 45146100 930356209 484347883 780739515 749596501 167690643 654386947 929859374 74473633 406287664 347627662 883901672 781094139 740157810 445309397 819201395 220107501 90164916 850454387 246195821 745604991 892468076 525477326 101161631 315173527 899977908 670844992 107907089 558637875 149771830 574552976 551177855 770194982 741739690 364572715 178094735 825526711 249304123 960154089 494159822 712745093 668229696 724984706 845572765 752104330 392514530 123195591 310329961 243273896 241241903 329610030 693915731 793598078 275960988 125774890 529598121 635270670 845399223 643537856 69217510 573171226 981775200 679499600 688335206 707946881 471071688 430605354 301550273 240772262 845289396 814391629 850538259 864288273 35957297 898160521 516957304 899207807 183553041 130708591 427319483 695336171 887161778 938839083 688552277 545646209 737571123 544225634 275262738 138317250 45474322 448623080 206565660 112329180 931244965 468273499 817483062 819447784 498222817 301352831 513351230 486611893 967513888 922291694 481401546 728662632 222190422 134250608 713765254 215080317 153204777 393563727 498297266 973901432 502350356 59698678 421589496 630777775 810014701 82384431 724269727 77476349 124109078 38929256 677479176 880615071 720971099 470986610 812207294 890550144 292515736 708168967 626738429 964358636 855892008 498579691 925570406 181838660 807406317 644779588 699262380 692396004 396025879 415176475 603920316 842298381 731620664 631518681 200339869 745040732 333940367 386082653 882551898 393161543 675587112 945427010 95595666 79896618 734980300 719468645 707527149 906282907 136763414 965646931 344658329 536827010 511798729 175707143 285243671 528589421 9955381 520468474 611518171 276213775 53837566 414556843 206546703 825894409 774253777 297936252 451844880 578268868 491433753 782174438 613000864 415304121 998604944 200013153 241300634 23279983 606238383 2615984 448429379 262442821 363481895 215788081 615433144 929182444 890773991 666500474 303028684 434524853 276840795 91810422 499003603 787783447 284181919 382185247 100956966 934534579 925399271 572861327 801977496 477158650 157679215 483144772 668157369 227196382 907191528 567150457 678971125 910070092 104977689 232498200 21568255 207461622 97889235 33122907 14135497 279911863 145795158 593418663 908004919 19601218 699115122 90811921 42229829 731604313 147155644 705970284 856563790 671787165 925754076 456752089 926738701 114558292 557613282 498165269 621985914 363146150 308943994 771155297 976966329 187555556 24760003 528663422 71485699 806008675 235437471 38993529 657991978 598596802 51762354 800182813 746857493 952539759 906151736 502157136 599080308 80675135 319090233 742422776 610508093 851662627 380578083 874143402 294876309 527437171 24278993 923388059 878188838 277909051 548798131 215547902 987957667 783212641 175409142 114619717 158119524 463906167 667067516 90922168 36678199 229793638 593851091 257033783 984288546 346666997 22343745 243225492 597792270 360808858 861681131 479216814 137681779 621554838 184901455 426225867 20881268 360364654 807818951 933767436 100556200 744674557 330168081 715688003 12218689 868380121 752608684 30254164 909644832 588319022 743893206 209653193 209347785 17497475 509067791 473674436 307846722 69347980 778462591 14779252 878401307 474876525 781615838 783530920 365312152 728982441 678608077 313053503 125465508 354484493 481508389 434139011 243107787 24086183 956547694 837634468 878980987 898300624 803512524 306167384 728387543 483390325 809716332 254515805 199855788 295578569 757711884 642607893 652936531 706766621 94448515 645958811 59566687 930696704 582535937 930846956 814534697 566859303 490956724 219251296 227425097 409951502 573300922 593923806 53771159 6057949 334599567 822505511 329769692 121543075 192592481 138748824 912789944 528137515 133037617 265677230 999805127 197396627 238200441 510767090 189712576 426761514 970981687 845001962 972635815 184136376 607988068 747454146 451642984 590522634 383901906 125756314 387508132 392325046 370862324 659590955 940755254 589055673 412640733 149313874 860072318 36402642 944701733 434700362 309290701 431965820 662622453 874825262 30116685 515552516 403988780 956033633 724654883 286526943 225533471 387601549 329070004 395476518 321070801 577839326 575106935 436018865 635828437 207889547 660227804 145125332 788927721 326571171 308824336 549697719 956233563 114762198 28856998 984012211 191500764 455889234 467909968 284686517 514045783 400623724 644540100 198190113 955800633 542977499 475989384 938414827 266426527 848547412 967664665 829215999 830827142 116004242 291105747 652473247 513718653 375702821 828754830 49472442 353331556 854794500 380515575 136237784 381681684 905748394 884864880 567477651 245975619 765895952 647646543 560208353 131104866 839665761 185478036 597669562 375794452 706773351 307656815 860363109 448493072 720243475 573415934 358941557 405941958 441142545 819476784 775048476 2488278 330203548 167896239 504931923 570246296 301437125 353393290 42653938 832228416 956349694 70805982 946098423 663438004 593010412 409500462 623165900 26140020 952762461 855419103 774185045 462196403 658270507 699469475 838781937 996039604 108801999 619536045 703317679 441756207 424087572 415228006 230695618 143485818 181172239 972387163 296977908 639726726 351295421 240276320 718737247 386709036 274333383 462314904 184360635 965223652 339022731 696388611 478108978 962945033 985141429 576945233 582479598 954508166 299400143 595869497 443009541 91958726 710538212 102890885 548179162 257064952 456524777 559331682 156375473 93751310 411285011 110263052 774954969 942563745 627613660 230371045 163021185 962527929 674644618 134254479 392645880 170301155 221422195 156591534 13828129 581021674 979764574 394298925 638701920 269479730 530136156 623683393 359389311 879469769 902190898 876548914 38477100 413795262 623223057 589589787 570709017 816395063 711836014 482714141 195191220 155282747 135164469 59661734 838378982 696448881 113026406 303802962 607950841 415424890 63004 208624022 393170007 369406313 307269833 102481135 441999350 126721863 244398659 741571378 453220551 968117749 39006154 725174548 112047220 344831888 823991235 132393156 851072333 692595675 293002644 449646279 857488758 53514541 67683645 174819134 642184109 938741016 543627626 566342636 572415666 196166249 741827153 194604232 951221981 185076008 677142438 815944844 934422495 90993689 811395524 582449212 865442245 835986665 72435337 207996665 191481032 352230529 357765325 518120638 186213582 463461051 857864183 834988460 697652153 281067258 749598868 28850986 464250114 209620459 690875891 838800182 3933763 349658795 666588018 36416754 412491402 451720762 964859350 296415381 857731348 582148735 670142049 463791601 992055005 407442057 635795567 328946318 62757883 852463627 584236953 260263359 889991313 920513304 139580130 268343621 512903241 712209906 418496775 538659245 740539 753760745 68838816 597299027 802541493 499354906 92200912 831056505 402545068 553007178 681352087 172953945 272156599 783114671 417108616 284096181 643786719 42401627 300299177 771583059 64283719 629276312 378757016 959273898 39991201 585835888 222681017 349511425 176243907 797547142 219170436 309263381 262116483 892279150 29015654 134774108 234996253 331951073 928082182 622325466 863356849 1648912 534953494 39159231 630115894 990226139 50667702 418006617 574196458 886909078 220714810 924729065 410667915 686879902 714459666 845233095 485445597 762326586 549690885 562583107 115049471 180585463 594512019 161578798 110130117 550453505 596586457 264174234 417225295 553291657 659109999 521889752 555590243 876631761 961003464 297835513 224348870 659522084 775792424 834948053 477571012 163551424 775224634 151080485 430103601 576882838 38731139 208718762 850209592 20235012 414790534 831376747 670928566 827073758 647438552 178730565 996330006 519245560 56508072 571645027 509675864 454705573 144370169 727701075 33313447 387980257 100519103 402934819 642002012 491003542 231388345 408841324 725777600 227640058 140130590 174130892 599093172 331996134 167582480 173303121 471784811 840592122 88024927 454470911 489373295 986222731 953894011 242741945 780596824 896011878 832868236 331353572 860886396 284173396 506833547 729295356 795168804 389458718 580775693 882112928 334952504 577194365 421277274 793264881 526162730 619027554 801208900 385636295 384061253 734374682 786797284 555336937 655812909 748158508 170960577 952010467 203996647 507575488 181362304 33528707 529287382 40897952 899447935 244526812 184814802 13747180 430161783 955782829 934576450 827761294 432239311 919324955 136579065 692613139 807068458 716552881 873098264 799198261 900155850 157893137 320728376 604178803 919872305 531852397 764328189 833066439 713981897 902014728 712934611 724543378 995613133 12573019 32167702 299302062 491817620 715053734 72916685 956221961 216532661 103308165 819367116 175918332 212735543 867618575 514124708 631556485 935209971 982049722 431004567 482247938 578870487 927606127 633847436 712380730 553191292 162752653 64541657 871723345 844553859 814251227 828355736 815378988 352485296 231830438 217400753 224369578 832521547 20072024 95523897 6912094 672464600 701028428 26007590 633383371 740353733 34059866 894615134 249179929 384592826 560552923 720581486 59564878 375078874 853584570 885381788 83558611 960193068 970353716 241498254 575283146 671195818 167653532 991502540 95187720 321004389 941297610 193215420 884543821 877414085 5127063 732971783 760755474 937375571 911432133 585393985 188735184 294122310 555113832 571342070 673605149 831169251 422557111 521466597 177006450 52538534 98163239 667045561 240780585 582537860 449030192 710328183 233400028 721836839 953779591 515777138 336939935 650480213 147800932 105481246 741344603 65470311 804221425 552623817 85741921 260469679 246944891 887920966 37826447 668531690 137589098 779606424 558220238 97430175 243763104 528294969 510443789 472183981 591057107 640747658 395009288 515850171 958047643 85644483 972113305 90815160 493737258 765612877 201943915 351234535 411628153 670045021 232487399 57709866 261972925 131150 433556387 198475286 950807056 515612778 899153187 967832986 380369566 676390219 185786364 991295204 188373295 297814998 91045441 671693329 547349619 578470201 343743652 607466238 120723441 491064642 708724148 765923673 326675751 80819273 120105698 535131421 742246590 654869627 479970660 436520103 853853231 171276134 622282294 574521941 348099635 165896288 645718263 53233081 194668880 506290262 9161268 517493435 116468486 203271308 59441490 945436077 64817193 69314741 529291884 416136234 973922217 823139977 712436797 734631267 835237150 28098935 468173678 667359604 458389868 1457677 776442367 646998597 782323506 253366749 952060953 29090552 535147924 347626794 264206581 401982484 282799438 749483179 722674383 561877644 631731289 126900778 12552251 522536455 287287172 648642469 337683087 873791585 655817436 289738710 781352140 738719915 586349593 23968091 995722408 564549051 145356565 466508921 825424796 110194712 74034333 152169124 833003924 59536408 992822526 30847381 978082267 633706404 806885662 408422063 536962675 631700565 456980218 893733955 883185352 330729485 851945437 959666141 89284649 536626621 231713553 972041558 481260263 708129485 401139471 962783600 747296981 208994162 183171756 911383183 306467852 719006641 380242592 718740242 141292016 957304859 568127560 738364661 430408450 38378536 442828776 546738849 52240144 553957982 478130282 698720325 43261623 329367640 733416625 660981238 782437414 995583316 128280781 931936739 675004731 661554803 700983950 222785441 413051891 829945483 707930245 578482191 607467648 781454234 315218619 652688624 460284330 297930656 714544766 924041211 988695118 841675145 11516508 857518201 308343448 877409188 488978378 656634818 658033752 515210795 399587175 417592158 436100653 328040006 180118423 435674068 967829472 916328299 225811906 454133591 805204016 850317355 592253216 283664015 635505486 210135794 624030375 262145692 541952316 764204684 592577216 678419557 128368228 802977260 251427933 956509432 913653817 280348658 435600916 823610514 155343465 143143458 991517422 284386802 488528079 892378052 818866492 499592392 390606925 29147760 325045583 696480864 320146159 788671234 670567466 664683064 592537858 350714912 511489063 643542835 570084130 528174791 907430394 955819467 495729585 12508464 695760939 142910020 93539839 378015078 440106443 792910733 30302955 216037229 202818489 343360113 912651328 837499224 753284139 220486201 845024043 955948841 664012898 101878163 247095329 502180811 463691657 357834406 796624508 675362653 953172403 353819854 713165416 567002630 902751915 95352803 817299687 842468329 387079125 791305340 665933526 756906561 171711599 198443705 265371166 95952638 961849739 391522146 580304059 530194077 952924687 850894253 31339949 448613986 373917770 960051139 706151668 221162835 838185550 468863966 893720125 710369844 981650444 104129975 894886957 6597331 831347137 74556610 443696507 798265065 108096674 467144019 367835890 103096291 613494326 294886896 459484179 160802231 327832236 433329563 11109200 500934792 467280500 308672305 564792553 973254425 119380328 588577421 431286514 297399953 584110830 777169248 994813600 518652304 95784976 110786162 43386820 884431980 597373261 304530982 729604288 897484597 914256001 776687676 158885151 723191126 669947845 374691697 371678382 561272519 736400885 634869452 118115405 62380383 101290214 109763054 886913976 618985525 217193899 387035223 876185997 830157421 224778290 330991470 889186400 371051444 166557520 313877857 963962810 75958284 486552332 838566440 588742379 390829160 530861365 79879964 704132861 53996735 263281115 813543331 703917251 410877384 898019852 258591770 185187853 104292012 169672024 802241978 819192235 633163486 543576372 797581480 646554132 776414798 264581108 681503058 529025919 274759951 182088812 702408525 502205729 335458046 278065384 667703125 499157635 327793225 318289396 638882480 556763566 743040104 773223941 184514400 815028598 131792255 622686096 243497805 399941521 446021179 887443149 392314537 176136375 132410689 100632436 329919569 89695646 139316485 236442889 882843605 223495325 622702036 879667109 872550391 601606517 9486038 251106959 357198950 897006739 353166869 348662628 213688856 562518867 842232808 80427263 763425869 869482643 764978504 785759364 208670720 869490457 960338719 63352534 657558777 72148554 775105265 592294831 397273611 735086634 834643679 264126037 780726549 105613930 22969961 616092717 593479148 354287932 33693590 66918662 261345152 323505738 378706429 276435745 788127323 134946112 429865944 325947710 570172813 609722174 555654281 840913147 358699194 387896848 506659882 96839698 722454698 990198453 339117955 451344294 609832098 225374573 488651331 436076734 145640347 812859018 576912709 210057907 244517901 665164523 231192972 539604989 721882183 715426887 97291030 476914163 442289407 659899527 545549723 277245926 76562139 205073550 310837365 189658365 380334135 444471545 771441774 958926564 473271781 821341671 736586846 592318798 860632349 683420643 225360208 804699445 34924028 714357447 123955480 140424024 481787670 269283031 647599099 407666381 854564133 195709192 822480281 75883370 173489515 668099727 856134265 743674892 94047674 836807502 872720637 227634508 383034837 222093050 402285918 690897672 971679376 235764413 342517871 354564746 471681438 74770777 736625867 29454652 957554938 378106658 948945857 888482833 948155726 997565693 892031666 761039864 587178311 281767357 442538716 75834648 812156390 77623151 499990253 115787778 369828800 841150438 475734810 741687045 323502404 556810143 324436117 209245014 311701276 311862363 768711386 936672675 425205541 208805180 190367907 870740310 97939656 879212087 158000244 3050135 765124820 407570705 356814859 406784910 244779902 110255306 390858396 329680 929033849 946882286 113709451 187014604 580719291 558313952 878875138 58305418 548965122 942224306 607505267 840999980 74233180 137387005 378158804 329849552 84218944 293952511 326729427 395864856 85566763 608443301 51048705 216097686 668888684 948878277 218860546 421573618 144457750 824813874 836750023 690882483 823321573 769455667 782499666 59260994 985123763 778160305 596811486 718957488 167001489 204752421 197832406 961323997 35520304 455493785 798831627 72016348 413833880 301481893 7735782 612876135 16162678 503913970 127028842 607577875 123216069 483881203 289019959 890609940 267297756 328491598 231198707 102988184 922135668 131354382 865629878 910641601 651150442 31317205 634565688 392264861 126777604 4104988 291875565 851311067 574891321 609503948 966436950 552997984 918080068 316206799 985770445 667414213 625526699 838385610 24699458 145799962 239953130 93894935 546656348 42866485 420236014 71300367 203300457 641478712 435139524 610806739 437852082 311856374 940310440 639738504 957257107 831722923 133165242 436149539 847963570 471916307 690838829 86696835 389307392 878700931 291969201 515652356 416388199 643792785 994310501 42958172 851605331 681316500 973916438 875220879 670774689 568432830 551133356 620852005 226907944 907352390 520513794 752382396 627985387 742239538 140024190 447343091 46796514 832044475 475236679 378493874 669269248 499189707 144963141 555180780 820476679 658080759 697452884 671766734 391600957 818634724 1240296 96652487 57884882 750337837 345339635 915347740 393767401 373777855 230561193 90174970 419031521 474844343 534986315 706599970 63704729 689757440 37912902 348903580 767471572 765518825 515401195 334067171 288177394 552960841 908696516 130062385 892202388 587945848 261391176 210567744 624018847 335133886 980141663 708971351 187378586 147109598 514543856 25777861 722612292 455680942 647703199 240866013 591198355 431461955 913930826 213528598 722262189 524380433 850650386 507631409 492074751 168170536 754347602 866588712 226506286 361014138 880061784 709690179 745316145 917693719 3882333 188046381 408640202 981731315 889884610 96066544 31824505 767824172 766258432 455895934 556174571 551807596 135802680 328575150 375962240 463155900 482336340 456379057 310721380 780071668 963006629 86283129 266825166 774501588 410092053 648155833 740914932 421356984 785472444 782449629 813638520 105090618 458825973 922908505 190784321 581051963 399674071 923378382 923793595 999254696 295170760 246017909 67773608 886587611 960135278 363741341 72245566 645745649 683679471 277418443 672734279 843931086 768210370 380033062 640645607 405718759 799493895 401585113 221858817 464971484 878977899 4201681 31234261 883878093 431990890 572097839 430415027 491894345 129776790 975185392 792497784 91990414 741302218 342461319 858286545 375709430 142860272 745298977 415170101 264730282 45205763 73047445 89564066 534202861 609491953 258774548 828516837 708204755 444660204 567202783 45449569 896074853 186625454 408233412 416062069 92347374 936539038 406209573 632131659 658176544 78978787 907569853 838542255 832309719 13741127 51626685 173568488 357773492 965056522 65475100 310605779 568240830 837731559 800124750 721355793 456132351 723298051 420509134 562700331 881538845 946547731 401434882 225602941 948779433 87573747 91056665 958447030 421463364 793432577 295457204 27692275 992052149 991985616 686886751 103091655 21655319 659247224 602874256 865542377 631359817 156379066 803718217 443983838 672553565 215767201 585209751 731654127 740898977 213491171 173726401 492062761 532182865 260959089 123714345 407830198 101644820 383098953 141300955 88161374 292953856 910007782 250565556 474080800 306187102 246300832 818107912 159193317 18559581 800413142 101729669 236290682 554597053 583644553 784595998 204602911 853902646 619277492 45687224 905432441 972514134 927595242 657405529 925368255 924760586 27475762 650330977 828480697 669681482 353314841 946181247 148403496 729552827 620878724 717126984 660856871 265689707 636021691 368441936 350143751 285829227 737947398 496599400 283918732 114227830 949159857 982110949 651631428 630637971 166247182 939307407 885484947 181572475 141395996 316965226 711628152 361899468 423525686 802519467 372032383 824916508 695128788 77221633 330038333 163818165 723573471 123738921 782736197 541100274 552113869 535820895 125046473 771582760 9973566 159992626 661458139 27142776 553172378 522866761 377692342 304258306 713583373 135267346 585881073 16654069 491141993 823016945 561995323 355811867 338287618 871628772 949289955 708331263 844042913 998292507 456646157 769170986 228793782 839765604 942915337 254835189 829419575 836409408 618358146 158559856 380554462 610205175 117914158 822330836 404274450 246768369 158298121 266878159 719406085 564370271 665810312 434494493 136778926 787491239 868015588 480956533 289891691 662330251 56908614 193942930 567717496 53770452 382415681 784366809 856128633 379074521 836934090 413639114 117432425 14944934 395737928 36593265 459232016 964301690 381480951 639886841 87516895 274549799 608706675 8617787 86284918 512191971 265626015 231758256 577389462 838324551 302929793 73967585 666686137 617198571 220743720 560931505 173615568 849701736 84633635 855066439 416101160 575702779 148728417 467078066 466666801 583684222 19649266 296571930 396340850 427247252 427670471 335010421 543724006 113689898 837270619 461504694 318458388 47072458 96051245 352056771 92342109 435774615 818420352 742086811 84669042 741478583 440070397 806995384 376866156 971761816 950764916 614352496 819526228 317225271 967273693 664175044 580517515 473295456 409495066 674150725 393220557 58018516 794472727 972166919 153941828 488714814 64530412 219897341 322428061 252503280 868736889 728306767 235781051 810666673 416700003 710133306 169254278 397503513 867710983 250501038 684092378 8667203 877692424 925759590 172503678 591650791 733210492 706124809 264029045 724309382 210145073 885348870 586061710 962965210 95020479 2874460 875583103 661428198 469919979 142523785 72774238 713599700 318458519 415536392 85032850 502789456 772555534 112745326 843936181 505414161 424972454 194316909 608360737 274021839 354033136 55141255 327344258 130074825 186324214 238266444 565501944 288785036 691596506 641850395 905111129 266129112 962447587 720806158 804330590 630784446 488764244 686569419 563508556 783640134 488736455 662858171 674391518 630058948 395778821 288555468 431909463 823822966 435747110 518118776 615149307 917266046 939139051 743259781 464712293 917124897 950978748 278796521 729431603 849680557 329891680 689245567 911457031 616002409 244777217 231960616 904067093 475448813 853980462 730629048 938972751 304386445 554292045 781138744 273993353 607983152 303696634 411993986 498452256 396620875 49807294 261845660 487315862 328452823 647434819 811811294 975547244 780885905 938283782 140991878 175262796 34370035 431777662 567493947 346457667 167281487 613966192 762734200 226246883 326415821 102327437 453059801 374360337 970462260 749029336 583305293 889225977 180310897 403851949 705767927 209467107 216677333 62193925 491311144 750103862 705642682 140849422 854568139 866373612 761159225 675387657 810304627 921990415 896078188 547022731 519426098 187853317 609323241 210631220 495169800 901782295 224381960 135148194 685535561 851043776 956123816 922466341 454484203 602503732 62199581 578554787 245257195 66542618 430838177 43170829 552833614 406120069 189290940 621549534 833663346 767694148 440892269 572322668 167426269 219433999 771534895 548656656 972641516 492195427 71333284 679270720 126293486 853270177 286093699 850732748 646486499 847257341 72010090 651168634 707966615 217941340 98011432 580524013 70289688 205249377 907186556 638917521 432515308 458504305 362861642 594181889 76389006 369786723 977794900 857411756 14819677 813128270 336201400 612006087 73238364 229070485 402863560 431277811 930018241 295409381 298417578 72802404 85348975 270793515 793075519 602678695 155326845 275207752 316649725 139514426 396363520 539566333 211409769 18581693 871313671 30686332 303776 587204577 127524014 339957370 826924928 412700166 482541063 655145423 603872274 825423704 479030251 443540327 168382741 897230041 235387535 721409321 391598443 785471726 533151948 24784724 719810076 454623712 246700060 953469111 624459502 12665659 740721048 812905630 429672053 295448509 841977706 847619741 31032501 102899522 79788697 15921221 640891562 995101594 458334351 418409986 443806181 157178741 441154178 310113272 87011174 973087428 260680415 315929373 533445915 583995639 175008485 122698800 665152622 455710572 644858321 850231995 391731897 648370973 684524175 369924945 351682465 8153303 931061254 317392269 846744975 682411736 620023212 917872350 91649879 477981122 508558541 95685079 445977630 276983884 676366801 575670925 725319604 982234582 159485785 181121811 371778844 414631441 762585004 410962976 834889980 284205734 169344366 638372419 169551120 167614810 367322891 949868057 241066666 291609422 896168330 585030647 343840368 711360564 507913083 827332292 451789285 375038715 846015718 914050732 766093693 321053492 779504115 102375080 311604155 100066507 735485801 514313203 248222912 747623560 487418374 468463899 245121569 467036966 279268705 464280011 949750667 795542647 220467828 780851501 952854790 354311474 681602744 233664477 841255098 807196029 6210590 460972375 82445185 423118330 506258481 639859625 91691491 759637537 922894637 210593200 103668850 451155397 656543265 531303725 417916709 35901373 36280009 702306770 580095977 369495449 789049751 320849756 500748348 390831532 674649840 249641061 124292053 155361686 96532724 247662594 214528650 388330454 137199962 350258751 356500497 760051978 324975452 985540701 284370669 164091757 371173011 441570278 542857242 716829937 884310984 422102239 616133286 369985703 239726827 983309454 824165184 439887059 641423814 373827855 185428027 833037065 591255601 796920483 216920031 700460844 750897650 948233698 675550370 647528507 157909649 429212338 653964622 349613712 497167067 379151267 848695454 121783278 49190449 66735781 63814353 534059441 986584234 310832846 157510448 707990199 734548244 430341552 450941957 527313230 694022746 988669262 738466477 851298941 647235806 956817130 201098210 379538371 874226388 580930454 281084950 493055594 224867733 783509229 619483661 666497374 55935982 819160360 776296712 661035048 584840399 599132311 407749544 880212686 956046162 817876338 346540639 301121482 534497434 803335209 614389892 46335402 365067543 157883489 180904468 162417505 785880725 822956973 19244888 537757079 301079900 309250796 278860215 246311165 819668816 769533711 473666250 213780633 566208747 614018678 266253812 476319820 326171564 568723560 172908758 923194511 169881674 427097418 637968375 505414312 759086692 987098649 729119282 144501362 385675282 645830661 354119837 585849166 5776880 58541502 8041681 48126374 138349076 751414402 994057427 116471880 963380307 44234441 462353973 237468955 7256137 153503102 426504287 146196141 899412871 97434845 263227596 304398528 429105504 215011822 36514374 780589746 760211028 238811007 320188354 342199262 938722111 336093781 461185412 808511224 390850051 333027457 404741267 279077724 60977518 309898202 965542227 534223958 515138917 227114157 550444390 616343881 505394462 660551855 500098534 412147021 513799607 42059433 402523785 157148252 316812136 206508477 152704846 345264713 894522264 410052149 743731470 22879526 473152169 433747690 48949537 722216563 373149990 491651419 360195148 694096272 419363886 33814718 221935999 635489309 10392454 289046912 557229749 879197561 340302629 8607862 571428450 402481765 220636266 214989369 826729330 734378282 631804546 753008670 591505894 863221195 264292433 771372313 279807892 811547330 290989300 431009482 802158600 853160654 255828668 756889392 203158712 600463318 482034163 685865050 607557712 809690296 172721310 945640907 625859844 205228822 874311639 632114524 870501689 153838419 806241373 440413024 577897271 647012936 503511731 125019911 469327667 792116901 250029849 753688740 169211356 192775030 581733937 536328342 501374875 288452755 144209248 93138000 148382369 797814109 208142470 756607782 259019243 644568808 695887367 128742573 317100781 268604839 863374319 42891079 4687560 377944498 229114937 851312268 921960386 261225927 212503601 353415903 541262638 179658173 985965243 868936687 491202819 422315757 148872807 509742773 147666093 115009754 833301233 552757926 254202578 499347098 949093090 236278432 851864660 526703746 322727258 175016260 256982910 853153909 120764034 267065551 802849273 772750260 820239781 549983134 634795695 438492626 933032100 614884558 16250335 778561402 809694554 254586132 441300373 534206348 256376354 425994433 561933088 71110175 154336327 791429952 76565800 473425397 624961359 364146293 949403874 752218522 583115671 647831026 207426590 445241616 790551330 128572149 698139459 535670458 67446527 211853949 237622067 86050641 496119895 152479775 655283411 850357533 795255535 881993576 204359217 931423246 110949927 923726040 48719629 314842417 312484659 522681728 545273187 321957362 814192958 739281597 886180033 349694556 55110577 717126499 553827137 305716470 766502958 339820911 15189079 259924983 998129399 513080675 25456824 863544170 959051259 996915633 431182742 20003545 40508985 110870175 951775037 551225579 450643160 708066392 892467675 701346328 176313262 583115287 318985880 661816264 941542833 809698804 651964763 908717036 347255751 710298642 826105603 996500664 120464408 63292867 120516775 551079907 519562362 121438114 306504053 749111310 886253540 602767948 385620613 644000536 790760757 90783666 87749477 875890813 819854465 411559385 570464785 421052785 234555220 270783888 257747968 758646918 424472109 194950202 911862627 415008353 231673888 334782818 365487939 763710612 447560964 185784445 498608439 59720954 450055907 269020178 863300898 716685621 837676416 504428828 619025017 352178078 582500371 730302274 902347126 369114826 971641563 905593416 763837559 366136270 364416107 233517879 936559910 370027708 477095407 79122627 372601411 238719508 722547837 21198773 943361673 568875463 221586080 12669072 121185817 111761904 881599913 156255969 389576243 455991907 387976317 44882538 11353015 724424474 725785665 292527655 240926153 943069660 835303855 876128691 340976833 137678954 744600519 577815062 377120346 909099393 695642974 781540533 500647948 111264724 689620179 113467631 695870462 101008199 897425615 302682084 952212210 194724255 893896787 730636663 30588529 903950986 447173986 934145448 342532878 837448452 406814994 875962876 765177738 315050904 374437435 144681207 495887754 859379495 742047132 50354759 97549521 315731517 689101327 442431023 152562355 936757543 798546253 802759796 368296720 784097481 933207701 377593963 573320823 356669307 719412895 134439688 159054064 464583183 705983174 476620647 429302724 931142499 696219610 636413732 539992686 920702462 256179389 469706568 155505081 179370593 927598782 473477712 653954342 346973730 217570139 580952507 734794351 118869179 497937631 306689791 261526786 176230611 201550230 575540190 873911869 664570403 477880118 27688436 813210945 275840679 294418003 750110691 601193950 302673068 345592066 113680490 996358546 917801215 662691920 953235397 655331171 85002742 751636373 491435294 744461015 565065715 574250921 941577198 678136124 566505505 84837099 161667347 671590972 709706817 887030349 259031316 214153768 957556842 684652097 311375751 888926060 272230912 220364487 338322798 308974008 809161819 746815485 181923035 16383714 258814833 247877109 616762611 580654479 488725384 359388814 23718323 630622316 469273537 168731258 830425306 224504114 270031302 349278020 256923854 85238464 160285615 484245877 475801570 577457982 912715025 316399966 44184495 593440285 310192339 573498892 484342902 73447509 318609744 493390755 878707289 984034070 729859314 233105585 213205272 566224494 192151398 405494106 424629844 918547086 7178097 648615164 244216596 231561639 461111372 16191878 688635867 539067520 180442740 320236554 669846449 904829111 748239908 147896623 631437103 157407522 444879741 302545031 938410117 368467217 651215166 303531970 445646808 304140453 127880019 844436882 191893293 213446755 943819797 570879947 381888685 605822826 516831391 429494759 999861869 934685345 604649224 512019617 24852767 155109915 692628030 391994240 595685972 653586498 47397774 413129319 68757162 618975235 756209120 933092262 819002278 279637295 486672279 896363024 30526147 786718725 820537008 462491851 224057148 475247324 758592703 869967445 656960328 84827753 733909881 110913487 854006699 621696880 531488452 932990077 971295484 793873229 2406268 20774784 552514692 641938514 113537338 938993912 571154101 917672619 978566711 716305063 444454139 266747957 654389405 186733713 16369238 272484572 533269501 18118810 181938507 645549119 764869955 523516927 964218705 243780659 234143792 591843282 486508966 857993279 507132890 114148948 153275169 852899875 394136046 500312973 886672392 217203604 207134046 355004619 655602629 903166399 36258221 816057106 110381357 265208495 344152655 786044134 353654587 404304128 788353395 853135484 307790965 540111329 726025684 40035098 555739857 626465880 544693810 454900843 752691216 871204878 799254869 79917611 91630234 997195323 556979559 933501662 954196792 359539442 427227544 83959747 915509929 166351876 584791802 563127410 735867828 360655120 634006213 57854414 969211818 873391010 546542451 274373719 601787217 639463893 394590162 745113201 93769242 138434202 237827437 552833045 947681611 405569659 29546732 840540321 827230559 129463172 265819745 664436376 867821870 781990678 292473691 216369880 717077817 196361671 7267676 338645791 552691230 503021973 335380297 175071018 229537777 494706896 355804300 651323099 50458969 860913048 455907868 217995554 918369420 474460854 55487260 582493917 385465250 870531057 730010303 897638219 685547986 68792337 390685583 100564761 287095603 250694470 552364405 176887900 452169115 945374908 180370043 360426721 313779970 262297814 289480560 116686549 352663405 104085244 779240759 582246792 469650041 818541444 908176076 76908142 760494141 735111855 428642111 122202768 764103827 397559894 717444402 655804070 313715932 158572657 507549531 271354971 987662732 924976302 665457042 264855873 269844505 842592540 695578249 512132968 356071392 44846501 724926465 776225248 608993625 843578537 431368735 195008100 515702828 974904875 408338878 520843987 202294602 595622785 112860278 711644760 231967714 979854554 465035780 482492315 605880537 231781648 140198146 739672569 154468170 604296811 917678729 997777794 849254320 969662709 384156750 768381509 614359846 723979124 879480081 679402838 696252860 507254847 114934133 36320053 424347312 672092850 300010751 156886435 374060458 738848632 533258271 782955070 930108654 650353968 673692164 230916133 682773969 207867273 153104542 406218810 560569571 287076217 331008252 108766944 380665872 700396496 159440039 188670595 784716224 723890810 18246220 270713782 365086197 708411228 781229116 276364576 186524010 973029725 198668311 434632107 560855589 835551725 929057492 591402977 553195548 618852255 51593680 64398486 723517762 693500034 595831748 271399350 892348564 100763221 584823152 441159462 883430556 169415939 488967329 490760890 955912317 386810919 109656854 881979374 732372262 76964039 313035733 225581228 198760903 626407141 527776728 901609037 638668223 756907679 557092591 12951347 135003267 22706230 590898383 902197469 136515851 911507619 490970985 655625576 54574299 99331560 425367705 67914697 398566044 306645863 153866469 473400660 2515219 894632888 349328121 669882404 993993993 38758363 969315518 537164203 258842115 588912238 259156270 844431670 695615343 622300688 571716152 874011608 42235165 859719842 644126997 961424066 756580254 251624859 471342499 144231706 187821142 43408701 933698783 302646574 492972492 689564702 9343075 876864451 636663990 473019541 857312551 737610528 317245758 604512453 922794049 533562488 169487977 712537243 249059231 424023857 65095324 490251689 603099302 481471237 503230970 223987059 899859569 679191937 943272672 495912186 204758067 815551946 238697160 128927550 859804178 167330765 417070212 204555287 730403424 140832688 675977258 862109628 624636452 709498789 766216630 154330631 14142918 197366046 997205985 758182138 737177173 344196990 580599401 834514439 288767996 985929891 556250157 747869364 168821370 7779697 985292928 644532719 606360156 713748033 859644619 266692982 930213957 951268702 690656415 594129990 805337651 271015732 143669655 140502674 308455352 523799242 613266255 13302141 151312927 407790419 223367498 935580183 21517239 70586143 178446639 855983120 373418940 78059261 102334851 711096310 492678989 976543125 963754094 737233263 645032385 851818367 170058425 680979684 746687973 275889500 564167711 325396548 809306879 252054712 909690371 917256937 573075602 434052305 998595653 373405500 286755846 440976732 790428356 393607727 425561991 808813531 233556697 193921873 652571184 31444950 325936987 18636443 299632413 134574002 868467031 601223442 619296120 571372521 699012117 304501495 652988168 217667139 593422075 795781088 18506293 742877213 780355407 920659485 830463776 85324457 252591045 37076044 574558847 998404757 525661227 196329866 384776592 265900773 248892927 578163621 39938596 316982513 629640007 936871819 448786287 520973624 39854107 312141180 847941489 136074994 865193237 143671309 374012470 767342691 180700895 66707591 656710838 926841342 555284612 204302925 398986386 489122372 58970223 11175476 742089679 337382744 51465757 441559364 405870697 861438570 118163319 766487500 838174150 559565060 608540728 746203425 738083069 330552554 214497648 424767252 741901792 506564680 495360686 937848027 898361438 721257620 867935713 760095596 20710972 639134245 448176487 919222874 564397700 392961570 580655193 459399441 135159131 28756231 25018925 125768584 596103350 5269804 190705669 875207922 74108205 385189451 645011699 91444127 996996203 198165697 898934164 383011996 358802230 716464889 283104292 43706406 847709474 344316276 859322932 770242009 458737641 198905930 801611781 134937671 439427123 885271343 15346458 52198234 254684189 283484404 621271051 11572346 66478704 904711124 845185773 707277206 402640393 632478792 376119873 817302666 802312545 23307702 276697403 915682198 224069002 774168629 945284266 891006270 511414970 786398956 212861537 577272739 860004247 381513205 298016826 33976662 999986888 440810543 671335541 705827669 132089618 384440500 577135257 352667190 672519903 132154435 914721829 155626024 643317044 63427975 425929825 849047630 70787276 353384505 587679563 403516317 753875998 522499132 366264816 48992473 241960685 188298084 590474038 621795686 766688685 778149103 669969337 66610840 2128261 859150440 630933853 860647679 168296432 616927975 84354362 63917003 616406587 592776814 214738459 462665618 191615988 180685749 829718544 161284336 618576933 10121620 319770116 307611906 211839455 315003655 110812851 980701204 828078976 978694591 455990344 889997878 392585372 876564208 685196112 362243680 378911571 312822127 859913959 64492175 691075659 396915054 922979189 314800996 539415573 917330351 612316906 27988982 565225211 939425920 92853252 168646257 559989954 505469971 612640820 553562688 816791377 101030947 792539821 103088251 901527049 790682649 61881902 129703318 28398453 315081445 150025485 762790877 132813019 286704688 704735480 619654101 953404002 880749027 252086220 57911509 532864834 592410372 770786409 17943787 411763329 784283453 451703315 173969910 258083253 291215715 337803973 675468958 763878939 267968475 301979987 965466320 357674359 887846642 979121342 30142473 828349332 275851568 915328971 696378069 985203635 445445378 809952300 440145752 859473603 276905361 371906144 233765350 203527379 750200761 152153819 543198627 891216992 718579422 716619221 892195223 306983161 765856338 806314094 856194535 199386462 435489214 495756 102829152 752007327 223197954 442761787 6348361 286341217 935583278 16376448 195352007 538253908 246751985 891738241 943295033 496407506 349211879 231045409 252103061 932163428 22730777 729011410 668744771 918815817 769613 249999302 909182286 438871048 318430409 707106275 695910574 432237841 687968667 501277173 907723834 781815706 210094418 38349361 158051029 945885567 590588341 862518647 516372946 362185467 845300963 239279835 666426288 299524841 79143298 10319775 164557263 63951267 217298596 416292744 142820327 346905814 546775701 501487971 942311431 770491938 15712153 83121028 997199648 104516692 943607163 693246458 62139966 566362241 702380060 32454221 947904612 948944703 719280705 333991805 521680109 978203025 296061222 723685952 110888259 650853899 351007837 934402671 276636583 590027323 103749548 815798532 568852755 806687419 613491638 518836806 498590436 78870375 872145014 382016486 11184583 310929105 177021844 922671496 889941748 758004199 756767585 906069771 15568313 551777489 168726549 886302839 153722835 928665924 702655 834890398 360378092 792157735 541534373 37913664 475117138 103289725 86959705 433644304 140242974 951124082 387478299 495698435 229155822 591151905 190009763 922448865 87983483 524671047 638614891 155816549 596055476 510887084 751303236 396722439 470261524 613830006 714661208 294968777 18933995 781398596 882260583 621751925 894104441 136821763 371592433 800649590 94301909 927915126 218596165 52583013 31786210 135186522 287796024 480465947 231091338 346877809 285774526 7668497 908814468 916723190 735503610 227374561 792286925 614541811 608233287 446036469 806307294 656241947 580423501 982069716 12468935 434707585 823270257 856312500 364844053 544228579 874864774 656878653 705458126 435235845 64854170 948644933 43630046 228904315 101674704 530397158 423666742 839088725 30558776 537651240 846382821 452795149 934315640 572805738 386548184 359528640 41337309 242921038 781213458 573209117 440911516 295358896 243867318 383541457 416718586 155748225 996571411 928457710 354474723 254568959 617816186 132852332 816960156 687655685 627639056 367652291 271865931 36999195 357430565 901363626 204276978 88229646 498539409 405099037 367119657 257584111 379131974 921205111 883145630 189111552 142214745 174425395 26395850 787168039 621873253 793829313 794188959 379246071 299565323 764445641 20560508 39838723 852559462 332456081 492171013 208586357 129651172 94181240 819119777 7187436 706234801 781884851 602306917 919329600 20697505 276505067 298461600 603290312 27366625 58282537 322304512 749996954 404361962 26023331 519789615 547995800 454512746 541291859 306811452 150492765 668848291 311070444 297134406 90116545 332122650 794947827 836563324 794960709 681099632 399342027 996167276 87231148 621234371 985319253 288722049 488968883 741158507 540620014 196568846 827185645 653942551 764127251 722857219 280168357 467066038 849917040 970513424 179172078 390346286 117184356 915867335 386732979 767129923 792948114 239203307 281611408 42038685 19351371 791157050 41745901 33566798 45280093 408534838 127899388 873196929 149867395 918368372 579370906 377719806 944882572 293287473 759747348 180753253 696229911 335826637 431817650 177631367 72587190 23224010 817230980 634686725 786864372 713546207 936649046 24270110 390653211 766089872 188239340 323916181 958302862 892073451 662316899 775009785 412596249 914247570 182643255 551298317 750831102 761052436 291380224 207461394 898375566 675964179 771083608 329769649 735254638 87171345 965193243 891039510 452600501 973179873 205702730 857949083 899795954 241520751 548743048 761923061 113260662 954048706 173725004 542056931 471032302 941430320 748635169 265826685 512188446 617789924 467290895 586688967 464996291 942529406 776450212 64572964 633569744 49029014 345942886 372357876 746206078 448785929 493218756 484894284 864563079 452676659 736551611 215848513 501044625 24591715 308993649 74553199 45674155 817836662 167974055 17019042 330071693 225067992 712283689 380930526 941425631 109183492 274533258 42767542 882165741 266192383 12321363 757442806 24352791 695083838 785611674 88496249 904825626 436819779 22726465 121971844 316955778 983241878 205515531 387187277 985191979 815243483 371137250 899990012 904280018 177713044 737533330 746009023 818278458 285706946 9137740 427335319 520749041 605626730 74024242 150992091 236511372 893581642 827093526 724766624 147574145 224193893 676526944 515280586 797640302 86652283 595369784 605653633 624345050 674653895 581035732 799425011 626678382 160342711 989285682 954393709 3087678 824088162 304203305 953581017 970434916 220966314 859213989 192981871 773649304 750167323 11912439 575720102 508010937 61399828 67082473 490602844 44677202 374438077 552084665 241384184 791951594 252790068 60799677 89586500 571634430 593535786 631622127 324143449 343397327 740761349 666082001 769070480 267194963 82605869 505377183 753490133 564933659 896866428 913347177 169483950 133756660 876033447 79836138 460491328 868873033 100788388 845682997 790876730 977938562 482582691 687716294 126795113 290133212 669586590 309495395 190411884 820135857 232844138 355867792 810726988 800357584 341842 766366521 258392842 982846839 535008954 385790147 203012253 162049933 778432015 196055227 280111592 936500280 586780106 84262296 442760286 895422313 742547862 111657295 245030851 326787982 965481883 40944548 494660419 276937434 287997985 348474013 645711207 369390673 637083058 669380791 128911364 790015300 389602475 826162806 882311705 968004525 210087651 716279629 174483080 363832972 299082411 259164459 813966453 45071048 905926150 8616146 799428296 369137103 473680858 908521168 209149816 75188928 303688359 605830794 941762505 900403745 631899081 682601691 260490383 61722421 385853679 493345632 171265339 114833652 865249963 232456044 29083028 198142445 596399659 440163629 700914155 309722817 712675349 188283317 750559861 20817806 691269206 626727370 555634938 149751327 685121031 327474985 279578352 630485949 711276232 969389449 385398782 136257563 23500535 150411312 594859503 343773606 863368265 567607071 302335436 52638793 239181927 971008928 99992475 836285728 642708509 94192746 13592387 889775972 567934422 144273733 873553217 682879512 601921975 910965882 960812972 660964638 585765236 248309622 874377473 521285687 393591900 92534341 948106432 283164953 878826758 26180087 165856563 548269186 87710350 130453141 677540476 457482004 660446180 847455851 185713410 237257448 898523863 540661415 222668337 237860958 665545744 319942338 283125153 56772716 108567628 116605112 979342178 833038228 384364926 838560018 578702661 486881831 626123979 98470785 282989305 116863467 264361048 669196249 699250791 5988599 735238222 632443401 340886910 569088577 449050060 940984057 140052574 259025675 184691262 801501434 447802531 99436660 840768573 399712702 854022599 88482169 181630563 116873874 196210486 337411822 326817686 218659811 385598943 10795947 583603472 875968497 288055268 258817254 703684380 884960739 863799386 634138719 349966836 763479290 649574582 157535411 387888133 277946985 645838942 813792371 849045929 72510761 745953646 833210787 365172663 614800519 255086761 952637586 136381 814710069 566318952 681803233 270268224 808350329 219381875 583386320 92429803 288668102 446755460 130946142 520374918 898853990 394346943 581309673 398542443 608218730 695151692 571123180 79612442 773397575 391632792 508702087 873920783 773368006 177538276 44221173 422482952 390476220 650828928 447621291 616605300 44058204 392561408 376309165 602886066 882883415 875094142 831609828 936615598 381502483 804242629 616283275 728841 855484916 923051345 990758203 362493601 31484718 367793616 154478187 558580335 623847756 608791102 443016557 851308975 185921630 145770586 92587244 719604390 701183812 19056122 700958811 976309616 829467344 704174046 988549233 325209089 1562368 901264916 356797079 56053878 125663219 836476202 8537123 816456923 324077326 639813141 310104991 18796529 193065723 967632289 635210103 846226339 196935820 960477750 464954054 549075396 652619761 704828994 951979999 74010522 822314767 260190375 596514672 807944496 741816440 564770230 76549715 396055569 155273662 577682528 863872765 477401927 518556932 865249192 281442400 267170357 917801749 910264167 699137232 53848071 615899586 151484137 742387784 633591900 982958743 645256649 659040589 451393766 909972866 154470024 924352804 993008683 159156409 910769943 692295888 724865081 242174027 378505050 958024561 20049799 900382057 652337400 287906532 459173060 860574172 844464304 988791083 916463102 353969544 256437990 831013779 87463799 555386040 886118280 664844240 775618750 825568510 991718161 23797359 741572716 920861940 853381074 986583962 886109450 365074590 34958381 151656709 39287152 909927053 614054790 239056285 924600869 964442019 935164832 385076077 791466341 942492442 742870074 104926295 100578831 857917980 430332378 964223500 82969624 598304455 979030115 964773620 275816018 713343136 637308878 81635502 576272446 678987629 676220197 400592591 659755276 116945832 194924196 151324670 931397709 90082129 912674554 342500894 237870150 709294852 887127682 358311011 56542294 489453690 122924850 413723170 299389001 85635506 271581788 768000615 457910359 400407548 722446144 108586517 381254228 840962194 708434467 985964852 989480866 381812639 939005365 499810489 837355985 295899108 366106890 963339786 483135864 363446323 902883416 100316017 196535150 918112638 257007452 286942872 862230458 972230344 627605297 749255840 141274305 479547542 168401711 944787881 918613080 855926670 632478667 620931178 38793406 73863389 102794827 94113343 249233759 934612426 749141326 175008835 288956904 349096439 685440365 247111858 441931828 648284985 595523071 365565563 667412525 543587568 749531309 202780962 740869762 109550495 74955206 501617093 131769004 996999667 514589300 460074377 3190509 884125422 175194645 863990795 476810493 591070960 257710733 365052750 701495126 538120782 485723897 352369107 560276046 443595810 85628624 305896786 761061083 455783580 410096906 171331014 173291912 920641387 469485145 456271746 799077942 565760814 283437777 71216660 752262742 730549566 760957199 225225479 653067370 203304172 996045673 614324162 21844736 170193218 295736325 564949049 354102433 897303530 506386750 509027511 460078866 921374035 94850362 346686485 680997363 17092501 898316779 885578041 523533769 676593903 981446008 939872861 166116699 866604596 791030645 730260993 487921748 65004460 129555621 88786116 264313337 914294287 434881444 557104772 488710785 733317533 635792861 94773097 110673651 327120967 546127029 978186956 579842343 942438353 320375970 692956805 265658224 649795545 657414699 723769583 763295470 563647220 908089409 143138752 544577438 939827602 804947679 231797382 222197479 118743773 67818509 414805987 182401123 788503531 908306264 213749188 104551096 24207842 851480837 569093153 659808799 873399115 876313892 296567011 488343536 571722253 472244901 391743768 425968490 383174977 469971448 578807320 362064127 816017088 572473598 482301584 371472796 482193239 485955998 825663795 321726606 616124206 348175750 182042105 940904869 840588882 912752962 905998736 822550782 576684979 714826334 136791755 190460105 356030361 30123624 707901833 6906073 422550134 956807379 688472225 148032562 607887613 760369266 532916532 315859259 25147079 573332581 911968084 929198888 101507955 96560806 318667899 935083496 305966006 446233265 691290264 463047453 565625451 438123115 100762968 804267788 685328776 792854266 440043819 825887835 535552940 260718541 960649312 240634151 964971179 836175984 774439108 732941692 482060362 162796195 300686502 47945942 155604685 601188051 554928704 666087227 576361109 768436432 773466024 98999938 387576924 770635151 651792079 922838523 725870378 498719123 474857825 463171296 710920894 36689740 851023943 308758005 544095259 375128240 955175634 915945225 972855136 343620044 709589257 756897191 564816561 875763499 797143316 561936148 571684 522473820 428391479 359691364 926986602 392400892 895610718 792791550 919688342 138764264 349982676 708826665 734128468 873681714 832305201 843399452 708095984 663496021 721587824 602418716 184787748 841374672 690876116 164117409 700438753 112097529 790010543 116998528 856028241 598944472 586415062 32285193 802935200 582399650 915324423 233309851 904885569 377572081 146417183 184330329 733417266 809444300 903819937 406006414 174867876 4162597 668221792 251496715 881133621 310283253 219220970 551363585 659445504 382054972 307319273 908303091 813226350 789320811 369734730 723670804 79796581 798731044 659927733 295906996 958069553 700088366 827928368 88273683 437475208 673913631 109003324 105070412 202340850 376096263 234326207 888473956 859757949 70805513 625332835 982780254 102614051 621688203 895504621 732242174 421204109 501563353 554306396 228630173 894281430 62024718 651379675 882229140 113375182 962934583 454314931 381563729 525021867 382015582 701990568 518357565 648006308 648488444 354277097 622361316 691803327 161550023 823072785 464394802 609131754 101794530 365966743 988583661 175185660 231887900 865187635 201881189 408455206 744511115 407034143 798530631 164436749 879761463 66784596 218015727 130211495 170539021 792733100 955056220 599701705 756909 76603846 400328455 516658390 679254379 17703610 481609027 278783250 738235291 753341430 93517484 675492287 429457820 708830604 491624475 95479934 136661258 698534392 805705069 43863497 891474518 107201762 832994008 248176630 132647604 49421241 890109237 189267532 934396433 56746084 368880332 262022883 947189875 401176300 255422854 804066537 659040545 813210426 886463672 844606418 30325492 543916040 749982466 382669188 32205666 25684942 773379611 786595801 571756860 670840284 864431443 715960189 651107261 25164350 490293839 358697914 408989775 952671873 186723769 996752692 666096941 158518470 962653835 893873983 96311011 33318065 651077903 445570057 481060322 358356812 250099656 919643372 402880951 204609409 569621715 729211544 215739250 473459626 353267917 823771611 774295665 653590018 356667574 51633221 989601283 609534171 406485604 149638292 532662503 995406264 814670540 321271465 151112837 474869435 720779654 499078382 874582212 187031056 758108891 594374813 301706840 55612794 337736726 422804168 184796960 875433701 615682352 106777042 661488287 656938396 958740932 265657511 370962541 212092736 439357301 219254007 950301233 442417610 599443675 515818014 836667262 141456767 414528196 219511899 827879704 898346474 128329832 689690991 257024059 937596991 700408459 245512346 348579142 937488808 893524134 50887507 4288993 604040071 491873290 597312875 195502643 145978206 634303664 891227982 623815179 114487686 147886590 49962409 241684397 71721169 506111755 213970942 908460432 667466599 159086962 976796637 215991244 728459277 6006929 63023577 764125338 313194257 520795110 121904339 900032118 978434695 797688875 189175021 42100794 559876122 760417708 690770877 492021858 393809100 567782350 379161245 523322991 546294935 513761473 643379666 922975962 840771230 149060232 735591955 406656163 799953921 143618148 765314444 330817998 562780757 822662242 711730553 945416064 606814149 648882493 490347539 335391454 887929452 607140499 568102471 105675266 21578303 957215704 170265843 9428524 596797484 371362532 130410011 213509455 865955181 215529659 687502401 918135199 500475725 407498701 777578223 385999968 884111189 246215195 58969326 99718771 969883809 56876615 791963540 288076052 699687289 625522005 951690615 44779994 669693142 93145663 911395991 146837775 248287420 590058282 521517051 661996031 429587205 517924165 21041586 341169756 482088347 369175989 819095855 196768334 455195111 267333237 573876727 346109131 732835084 888563412 33774129 910630024 295074165 624097691 767315449 94860610 782271378 496444232 842136316 769916616 244806292 838516618 369558099 586842841 240165667 895738917 84550093 217133139 887582537 453240038 256779597 123578692 364191911 47063883 1461545 463753201 620751932 576315638 360787072 368660090 726888429 500371811 511616534 465199372 659594771 681330043 613113500 212392500 451399772 439988659 496174051 234889600 735589666 213232657 598470925 710790956 379620646 92991045 33862638 527987192 495284125 460285800 748016457 316714013 754078782 628301194 897021818 887516150 58775704 96177351 404563237 76043304 73586892 270612108 271825854 40162715 245705157 156753180 269534640 419240799 55001043 697415909 690866480 705930356 146620686 67084790 814942836 463866077 454902580 287760185 50496584 175182595 493239648 898438820 3708778 526908125 945609627 875654595 632534162 374541700 313578615 384806834 460010396 115737383 53718010 612628115 323933592 437054282 413538026 574203834 775767946 17096479 800542244 205755782 70019615 510815767 262190142 165324265 621150768 916105143 812676277 290336894 360121555 507869099 772803645 213205754 879690165 585322548 699159313 15749069 228271983 164111736 948349613 382951592 660420023 735265875 744405275 191093327 331329273 852214509 985901021 986794159 430681 315214943 886531002 237625837 479412817 70996099 509884129 217714293 443326173 897528811 736238432 712514604 809329354 461167291 720892041 491422056 699217331 256195038 955179236 182941034 801674920 497500212 509694424 412457332 344062919 942381067 393343551 202451857 370877228 851908537 370752242 674309470 753290454 37765577 721418046 945325566 886355992 894124694 625441456 320231162 331610878 708289732 599337330 540733987 810277695 726581064 15225828 824308948 81759547 191899199 813863369 351118884 570406602 803821115 669809321 126533624 480498758 893307254 812537898 992030402 328204135 570430113 705453760 915939424 420219693 457875561 853928923 416612616 322012323 86295514 241364641 366012815 929210047 676294775 579106832 210707626 191833470 81910023 146587338 400636797 123371466 224514737 301586687 734369820 25497922 498371119 21191498 59642956 233103661 342727703 324673387 763438079 338094684 878409424 258930318 976828739 348090660 847665890 983653971 931085375 275820803 828731662 485204826 124987841 534327847 406174957 691177426 412424420 624540771 561295904 822467623 84785558 236140101 725881857 585444348 172377692 698503840 772244684 794671956 208861554 989134738 325892945 878182703 448059083 781650129 518492168 83654804 654067287 480447484 960961 246967072 471816350 260864826 285030571 466590822 350167843 154978102 796123948 374139323 371664629 990853873 748846146 674786667 985436163 248058637 689332182 600620612 772211013 752016400 82186269 418009746 36640531 207919431 957792663 354301371 486587875 926673486 825961483 622859453 699468750 388269247 69864306 30428358 37998379 222150403 294291380 474866428 818658755 200427887 705009901 593190619 396713851 732609872 821247566 977756841 876364975 398454333 790253416 524661612 56723001 401663005 434293115 118284631 758645800 282129207 448474564 334937270 953816796 752835311 612911219 374102638 183051187 675055793 958978702 636080316 723320731 686378859 630351709 216733037 554311693 591335865 69692984 182102936 583737428 43181526 717794675 380966841 304872200 876217314 493344397 606889015 122748509 620506122 373912731 994683968 746607496 924013958 710160823 338327363 516833971 929902051 457833835 256911709 421522093 847641753 387321974 720318193 633590548 599413295 661684436 36493816 867097467 321034282 862974012 541193236 554581683 522099061 764732377 402244707 707780296 273381941 392817750 74679558 173842226 612933315 751362662 820703046 726290911 191510256 614619424 846930610 448418512 16411748 833661867 525458640 112612079 150739481 97843998 315999211 729403216 78357699 931895616 265482255 332951616 228186648 659860984 455687856 849869503 484203823 234318315 526225128 337272369 829895755 44957021 286188575 848027641 613455480 245124475 672072576 134102335 911930566 210454539 94245013 338798111 28204205 636504945 691183919 847476904 419249098 922218600 556760561 773588387 520095979 425832311 264595067 528019943 402802316 146252174 745145281 614259259 873470235 887227735 779837471 684529684 613760373 339318913 701780724 998678503 490778316 701246580 26670944 269432394 127889814 210802870 783620867 186841805 44702691 671730244 673728416 785526266 105812265 437170477 289401490 90662505 372845216 522871355 36991622 385287091 488122787 148653364 11988359 999378943 117708583 384479716 865048006 43147531 182233566 609136350 96519933 322338807 932808777 788922516 623333744 820108782 686229641 32480097 758340143 223073572 817555199 584148524 704478482 55188387 10028818 891966985 500176920 844045412 616755255 955145858 633697102 94070874 172371029 64902534 719315793 138356639 827952926 677625651 539123094 270802992 645713418 68618531 997881740 10280548 421663986 340545210 682513183 191699472 423561679 905131459 412542368 526002814 110491591 159264151 418111430 523674788 727121946 3057458 819048374 370738606 672776761 44924527 646623685 8061419 7165445 245053959 33367405 79571642 641951172 64171016 119814723 522981796 255336827 255243359 542225221 879808958 847545992 877789516 459144713 803644900 15733485 816448056 588589133 959303974 301419347 729925305 939438119 355085719 734731673 309201388 316668121 100942471 302282161 274509559 681434495 866496291 534187477 731543603 918026718 687544301 793141683 361915958 317818682 518826985 613032913 508996739 676517518 485942226 744191488 538010355 590343936 967959417 199922312 105475902 471220748 801706670 608328232 70133173 9329228 486159561 570763644 480889762 329575810 227784719 191856470 139584034 585842762 363362900 107854957 126778612 176554372 780373640 740859118 780569576 237428818 891243525 653732651 104449642 380361601 237540185 452293418 527568982 724854997 928675825 499351522 173176207 555001107 609604085 348721718 825896608 662330409 165822369 987310540 820141242 909851926 974060005 111615475 618913589 175551924 345253149 322945273 334697975 603903653 789602168 124381040 638890975 840738640 22093204 948949010 31982902 446893701 369457250 932649040 877844271 909415666 485199682 602700723 186467295 111746572 524909951 451914484 515214475 483363680 688376079 695027085 104214786 984551339 775678685 607780344 261026710 996196585 209683880 387401787 756543485 766492454 894131963 90730626 689597840 580121466 931754146 974914821 382442340 198537224 377740118 685546105 667084269 222009626 225493362 808372242 835889274 74469410 666598074 17032666 506897080 238000320 175492601 133973906 349799121 374253139 186628750 173797886 627178559 227838053 911394756 379091786 884622582 469775228 231714972 917688234 863989599 211073822 649777862 794427812 905675374 528770791 29764998 320752484 730197003 570718128 437821832 674393058 450041618 268252734 824863960 629409950 391266071 27817603 371764606 710919335 582796813 163155669 754833500 935362022 201534522 169624531 935124996 570996642 166457933 886834789 110274971 599368244 209042017 89108146 91807433 328532880 187067909 945636797 872582224 914466592 369609650 288873549 565073881 155859387 120901762 619712337 853372993 105997464 380214270 157024466 648381990 867730378 88353173 556783535 599075282 808623795 683531844 226774535 422291093 149878602 276005311 283133000 572625324 734687901 962776656 467947746 393447667 418466602 616231986 191283513 512949845 124532460 855014515 960785565 959841698 633792443 422976843 425875360 992379257 497158193 22281043 716056244 579611203 637300023 421600218 652899449 621948037 395711942 26438853 236808420 646683044 289033922 734054999 940600082 602049058 55324062 758361109 296995770 881495430 348959091 75292864 274250394 968756058 283171542 583334318 549158549 475765839 917989173 282984968 994258380 318847497 500235233 924083075 313584675 466465858 944192248 749121516 357612765 549673815 832789778 794215629 202730893 593781481 216806538 49950148 961136230 676665910 556034049 449706706 690072176 782063548 534839781 787299945 379592007 820701363 204110248 219642069 219244542 68428798 953141961 454120918 886532656 400099996 231578159 16361940 163816795 252868587 682637026 991471523 98304825 736487284 831294730 648397504 32326244 581562288 848451906 433895135 234502748 818805159 380470512 28003615 252905921 893355277 235431616 615478479 703004039 217903348 282745733 797303724 303835489 878193850 869044035 307231539 218002551 126751749 941410740 505893944 505524968 387199842 45595243 827807906 555584145 199164143 232435186 798684929 839457647 62249797 438579573 541925577 318410723 154465373 768915273 756923210 370021202 854257911 35682397 922090788 893055666 517734119 840825732 19271174 172233198 547068854 483881113 264048643 588225626 529692790 38048831 887443980 347516721 607490483 644114673 745827826 37960567 898933922 984209099 893013938 87678067 477960984 823484588 212728051 601515052 449512675 177894952 898067851 525698311 730740017 943023209 929763410 703239298 633721798 916676750 803518368 656548022 133026094 295156789 247823938 848341046 405085979 594814799 107499989 767694568 118688535 900179456 141082910 110828968 8730458 992498882 884739450 536057509 908219096 933129227 748329825 180783643 40478205 444329462 113629043 769667283 228081090 477666320 670519761 356634495 553019723 59475263 219432867 608566603 661550051 689860546 407982456 971991810 847374740 781271408 740738340 908171603 930956549 34956272 706916255 508925630 903152896 927298519 327289708 574176726 950509463 11106891 327550273 345202708 986642352 961381736 422735973 113854290 332256660 773720240 345751021 149291933 56418950 287137591 60139868 887570207 714286973 667550380 704825258 522618609 106003388 741410625 816753616 981834915 788301332 3562712 614756577 281758151 477679507 156561713 388787412 371153228 974988096 331679592 13682235 337754137 835653895 536324122 313183964 151920440 318474628 138463706 964630352 35155517 627734461 850228076 326386461 341156936 9204117 673118629 727071678 879500847 153212170 693681595 184354855 465577283 699400199 964656265 491410469 310934992 190980503 58760443 568777136 670516494 44482757 150537689 335531104 798245578 771879959 800483143 470316160 122578961 335059877 275796115 61840544 185418456 786805091 569795842 992346722 483906164 126398509 85341838 106315910 830992689 893453941 642784068 749680424 11063302 577154944 700906911 131105998 982460508 96108683 676026609 169578811 694122430 616695884 162322479 675244745 373821411 743567371 758373899 230722281 984595303 865999274 13581089 373340333 771710026 872537170 792288775 374650098 299953759 374624689 504390477 493672641 116810628 395358729 140953591 113136111 436391639 628037748 354774262 169837392 420574144 633273550 750754740 894580129 993322141 368879034 505266943 720568952 392641064 195591053 31766591 106125162 713115728 477959434 223725929 839842058 275978376 114718469 951799762 122934084 432818210 225244576 928653097 187428212 910780958 521919307 554174266 65289531 297341327 814828775 876910063 462462934 631806307 594471804 51975201 629856792 444578424 141693190 264615499 688007075 576562104 985730109 433367100 961272894 870364815 754642684 588251130 976336221 915714129 159240463 972265525 764197412 669123712 612927995 331465347 731959204 480458935 819043438 586772284 674780385 118839221 695924668 675088637 515905 361328385 586236362 753300755 695409218 519022084 236098726 178890816 242260958 563978361 886372190 144112289 798628244 392267248 833531834 452758552 367584085 539396966 660165500 135521409 689720797 799621731 583914204 609610206 89353885 350451166 723465968 612926312 387027336 682358000 919405473 901052569 579343619 535026170 842632006 618583914 501653869 194142543 965143652 443755175 7421475 39423144 713004365 685741079 55344468 68898236 602943669 220731324 970063273 605283961 442107903 704947315 795493662 870802596 497903184 16146187 360475937 613696500 750165543 147786434 414163421 253507715 444608107 421780866 763314194 181182982 410143381 484423930 889994586 363372493 236201533 821154204 594412430 745934287 384251226 612770496 295378722 561417689 362090227 384034458 686005547 216779304 998465973 51669260 221963284 214683115 91981566 931560974 688693487 197669415 136988556 162560617 775265897 38963328 595091248 820428897 734107625 770226523 973064964 53498873 513007087 798201836 922650924 687864613 31106837 262723204 127520169 806298586 497879368 239310185 176088844 987853862 453725270 510842801 365312606 658533040 909893016 583701242 761684816 652205385 815447143 69590509 193103182 284323023 417274459 267001998 194542123 973798139 913995750 484713550 669273067 309699435 922249738 363883807 692939459 786724848 412199946 272155011 171887496 766276829 274241761 588010502 77612055 181205371 362342487 623559394 362035282 702392808 247796224 342190125 614306347 617817296 11955837 96212049 244099132 846854394 49036552 989068249 832271362 400842640 340005446 393853232 794877164 543582144 978458560 553432174 797429042 134413944 441585972 198869982 147071021 679150293 580564495 88675861 996327149 661998277 164864628 666874249 630635502 353023516 153138907 985280908 325502868 441502610 850165412 295689349 953311858 896000315 641856496 399740457 411401502 22894834 517722976 231625059 62737125 951995374 90907693 236788180 648886692 590636523 497497482 301770393 643659616 120107484 783145619 177263172 467517147 83199376 313074990 394086615 746446186 466341835 183461757 120726206 992646776 180966199 612744533 390800838 569208349 266773203 151009425 4982617 847660205 551900584 871272680 767597996 871051544 178341100 274659268 592751146 571172290 923946224 194001313 987026285 223039167 482485492 936254090 868640486 572826389 536419707 968273808 251674102 555960557 724358112 724472515 165209659 552893336 308347205 187608692 474133665 245384911 753916585 886556057 471512364 309031057 206999861 679607109 973441420 142277021 530152783 570180283 50086100 286647469 93996615 24228210 571733556 564370073 542556049 174882014 336835225 330636476 57962760 119382675 903758120 202662501 125492100 497760820 334987880 299488051 769646716 11916981 590498400 312803234 59719875 414510159 575808672 418623983 510016771 625511322 594810005 248622384 108966443 243792726 975717190 976276779 196798794 365505912 709759681 825323241 757981919 568685265 643256426 564853712 569075155 101960154 912227180 803148144 137024219 646349638 480060888 737159303 837755990 495313192 642591367 155884332 514526466 673326688 728588721 143262130 964240583 630827001 495377409 429225696 767440758 277456275 902871819 835354940 383692424 604388911 681866972 401918727 314375273 424865916 217037492 718681794 765027027 518359642 721092650 459915656 128656250 295405896 916674641 252987501 728966531 315289807 190396810 120330780 426311743 349163338 828297376 592514839 100214070 675869155 114744742 256339653 209232117 164831048 336188452 914654498 208759820 768343168 705553118 28441149 575401132 462713051 757371699 954900490 238096456 567267501 344855947 404842258 129213863 702033992 516286499 753958219 881228920 273191925 865571314 870014025 272753138 410634816 282389610 317296260 252615026 145761112 507889200 578826822 45745022 42452433 736539263 305853919 556956337 248201662 764212062 631800045 136006048 837440141 369857860 353415468 331597624 944693808 599090113 393832581 95112995 505884956 454429283 45319979 319095202 167679409 797932285 641099806 177126936 471894794 65113477 607853530 818325959 627223439 78567580 929924902 20067903 912428123 103951150 333755460 126636748 246493870 111426690 616328776 995517893 76235867 957035804 956025255 179992440 823622050 810461251 94773965 338499437 730547345 585811544 504433273 906203012 56990485 944805989 492966006 795484889 207185522 393242534 823905898 592532272 48778634 867558313 953516355 807012027 716430458 903081558 164480665 529655784 463236309 511367956 67416484 448156228 33398720 611162973 964633184 288201969 875161608 290375547 818067489 253162173 976044261 890317657 659414583 561183143 936938804 728788702 269016618 11822876 589800152 72076936 387186278 138942857 641047688 736155837 953135488 124355630 462474000 127846539 182922591 403764603 233799155 420767791 19699810 466729878 864828974 232976364 581570099 661963109 965990237 101748410 812544634 235040916 622250342 215228998 548911722 947617141 74444964 446831487 58293753 937250281 528024339 531197761 990932950 875177304 614055676 589652093 847262973 299591442 43558913 701691697 565333031 604203224 288450757 375680630 735846682 728299050 576611074 865371983 573679431 373674476 64828944 381952689 711189991 173679543 52113993 708741448 254227058 551699743 474845025 904282792 52380868 186280234 954010524 687563009 974998553 319500044 330839226 590058217 62890928 240951795 574306679 498845123 888501965 576628867 248275441 354175252 166506532 720460095 33720120 886849144 474034153 654214456 30216431 126240300 48895045 885076440 526424439 215538069 823268050 399745689 392611579 85444853 644476129 941734524 669775697 404701212 268460116 895334616 869947559 705881572 819249811 737147748 985944884 27927084 697898417 180748975 209818011 768319050 934036918 797268969 32828918 175028079 275878048 826540720 799893890 404692529 104402923 449046849 816342461 771042689 23358540 901048668 16672385 678473679 10889970 442127192 491851050 935917370 951877599 551518981 137938340 560000057 783547819 54257729 292292122 280938168 1777786 329266731 252492738 729755781 164491720 449574195 453701241 421216653 68624325 968602578 191557648 235625107 974657563 233973033 781511294 529795370 672483078 139868344 244199674 991252385 150254343 452944325 590351648 157542709 890930593 706460927 408618005 110690245 328840604 292362907 110170555 193415216 374744617 771192417 565200583 88703285 54271151 819766499 775704943 5073677 409691275 276229268 572050771 724913346 404217005 33586194 908402748 692053375 342026962 658942259 714943706 67961608 770061292 282559246 173025651 669900344 387949750 296424476 313356505 118455862 154445780 975945911 279278353 419966534 18358591 387746463 658640375 369745111 414985839 519511468 785867391 762508953 177328476 315112543 264585731 353795728 777170046 426661019 9062096 627820587 973218070 812449798 163251229 587859421 40972644 904933606 174215759 690025289 484643595 156622096 7615255 491336333 757693859 508186264 166263063 532080000 172401961 906574307 822303924 822673031 171709817 529132841 243861375 564438309 945642587 912906803 32624001 249239537 350622609 724402026 191942798 810036797 533259247 946633628 339092279 738422127 967867305 747054912 471397981 241733527 759576448 165784544 318240102 454337068 286912737 456081360 30657965 735001092 691686386 596791635 160941218 657233486 104704327 47829337 109536981 303042350 253807907 149481369 499338179 836495743 722112620 558242766 564975939 674693540 249985777 418659011 790106996 946229331 777373197 221344143 489279432 130893766 141555755 323377676 887999931 590693150 679446462 249423926 717898206 798442032 796813847 825698081 851603785 507337027 470829774 5181540 201917478 870064473 868632659 39309210 464927631 281384506 905308114 916499188 82605011 98962054 557612931 767073477 481132996 889055296 854826547 922044307 758322334 869892175 22273723 491217848 418533091 410876335 187646207 422936409 658212360 853685645 735019581 99665301 506122052 674023596 945066500 735683832 541700603 25279488 179967517 694932061 500809891 696901918 437074295 428778503 204525441 22642691 365201841 560932357 160419177 681173952 471120387 656082910 359161603 403446572 474797421 836882144 608522137 822785620 598238210 322778540 219349343 437115867 489304353 495900084 239659529 834707940 191346139 379623612 88518294 201396218 352820136 293154887 177441064 376635543 54561640 706688628 283651391 100629516 198699618 656367820 414434710 355229748 532655900 55349053 152407384 463238471 455456095 995378692 87831852 869244271 481326309 168265192 437220273 257669190 835517258 745247986 243970024 833440652 521146090 524800854 652934220 465816257 225813552 765807813 62254495 186265240 106849091 782308293 556946800 833696143 441897570 236652789 228253207 339756115 832328893 426947107 166755257 424349191 673305984 993958716 518524258 862389238 864606855 674013296 393422437 584737240 357321224 426876808 732972200 449393586 52575984 708692541 848551560 667422921 414196458 684337627 874813927 346648634 241915933 206224884 677305475 95293492 357434875 451319860 614373061 852314048 343435395 695069151 678438551 920214433 172631756 408611602 416778514 926725796 156650172 43416710 428684916 528123766 281699173 310196445 816947921 749454027 787086572 892570405 716359755 764441322 988754045 781550811 54712192 836612642 824291089 405132582 341385784 943903402 487556965 916741214 651096835 892198210 342855561 794703300 849365387 413348778 86207822 583681614 750388156 970462867 128430069 882156873 417932774 133212023 665984501 475891663 723196679 517405910 698911662 933271606 144116065 187980929 540997882 659010634 841345746 681597666 770467595 295118688 619732713 683709062 493806292 1825794 423955052 355121351 99835275 821846294 980231912 624687973 481654981 611219189 851724673 160591673 742175283 408002394 496784272 511468028 673210981 601680088 956737396 801494486 216574070 997209924 572010274 895064339 462167792 399607841 624421350 16498882 174297223 843949687 109462449 736411925 388969032 413211399 828517636 64046801 671512781 473926904 955193244 136832852 527075876 167803204 477759366 680602473 942521824 368982423 618796326 129504313 584728522 922570691 869392865 446943727 316893646 442873898 712376644 14148631 82294267 479790283 155455639 338047151 851622791 722771605 494223223 820065908 268515521 271974879 550766004 302786964 449933835 443213118 742855812 268704610 148523829 882787012 602012898 578223623 829368588 885258709 684817270 398816966 680338469 578986941 535541514 689856358 877452643 890617749 122316864 350158681 392823250 329893288 867497620 740345678 982766182 213025229 598744163 61157062 463245896 468544362 846220114 427933633 631738822 201736411 881728754 499279431 52920438 547895251 357413807 461188087 89651937 320603865 226697973 608609415 76990384 248593362 892901781 45236732 181747181 519888204 496101489 243622499 590103550 591635735 936408345 765588346 676488975 732737791 817634345 4140498 856994189 378305950 388123147 378371887 325980802 112970139 792192480 829963441 56278513 299291459 437577645 126100424 950276256 81440294 92187403 404190314 722370287 552435415 734442143 480739514 730694561 731866751 29262299 835917246 568355574 533490489 334811328 752943104 998024901 988977869 697772099 774912684 176966284 228169460 469294609 862857374 403460892 577372621 885996513 709857552 141365096 444128923 668046905 967282432 726865770 982012385 702617660 522674013 901547211 492493365 844835411 397915173 197188875 980132716 471471832 877409545 792595936 98474820 66280970 642971726 757477645 472686349 87521396 705751917 414131743 575235044 713399570 4989557 690207559 628746251 736538597 948184884 838998851 949325675 109628180 829755089 761710864 696189916 873995157 394614210 798935520 672224988 347328787 167701622 918261076 848712490 651328138 700369652 894553651 976636525 597662160 633173921 826951962 126095446 141099700 187921334 164135077 747090136 480184185 850241778 130626927 708708572 262273671 850202348 227411759 577735598 628501363 624230626 594445276 588417671 231940341 814564322 161075509 172171822 743409832 286859173 161526738 856078508 414482381 588415741 463909214 72591706 416773381 398275637 685704415 612404420 477392748 875442696 628643804 243634325 64862724 478207912 261754617 387246109 561144127 862057574 846097765 113850307 374932082 562925179 607022992 477941772 982945637 139159383 592656421 543865282 950119804 1578045 374057515 924044063 327177133 781450427 261086565 430964248 610534625 554677715 519728127 641274069 445320058 910437306 966836690 969169897 917068314 57157840 816058148 126935711 194547412 407832934 977716274 308186604 722282574 866096657 77355288 21425289 138482834 550357722 668843338 951500521 393788737 760935435 222888503 237984832 655911816 321540551 53260943 389937510 905627655 342012847 434965606 396965490 174422788 353022458 105178753 858190174 93774524 504261468 957154587 292295821 588155343 155182446 53137947 715627377 300805186 691060618 463720708 524652767 276323110 240729872 474798433 494442804 24342252 739177723 556730335 950713157 656802011 621380801 420032024 659095426 209922497 964060045 752499160 429709427 80994950 701033749 948154826 918755070 129536387 622203347 257149602 961903064 815359268 212957419 215802143 844531399 943462899 352003172 894605316 385222166 251334176 607794426 14177603 661187179 680872120 111315405 148899316 981988193 462771531 827063058 602273102 548198204 284900553 923916808 360844957 925606152 986280970 947659401 332337994 313097678 698220168 152448943 98257335 10141731 603280679 296514345 140177911 372906466 941646033 703178973 446188530 109353505 45385264 765303088 415071566 688242575 594388555 228426054 565268959 276961129 332172278 375357264 715824792 197777698 267494458 395778464 276296504 942187090 666257325 26174199 830803421 54098888 383730949 491548581 28287197 637774005 86677981 696669389 919956090 395947094 923398039 619074419 983688010 177595782 800624607 867362704 585982208 280950140 268033446 722418263 182984785 665698454 362360844 377984434 595900812 42867968 147080836 937542755 881052501 639836701 624440571 995115810 407801475 204727970 908572325 384221793 395315776 980954830 174376352 875103452 217907187 594917050 139398330 866617864 293825382 448763234 436663037 324072786 323076636 880907340 627196853 18480913 817064906 774545290 860471545 431868529 537458849 597414024 329692623 954857336 472497088 768904810 789927729 281167818 216721847 396762805 963949494 669800539 62621204 812760868 171644682 201542341 399557394 620678254 986200509 727001045 423054140 931175617 166934473 712525942 370986536 971163895 322096994 646578373 497946072 321486194 248459753 407453148 214610436 512640431 42879331 136582979 866863948 84126256 920549788 764091336 958928886 356872653 965609907 536602946 117165057 467615752 610204712 997629114 623851082 106225178 222853331 669093165 26276131 475289367 908016947 163444741 987088406 826641759 591469377 190172254 938629023 709990135 248328443 355119391 304643242 597461022 726581350 647872348 981725170 52985846 878996345 529471730 884951671 158927399 615026339 33999510 190186002 810458691 815936926 946619864 379507034 714285128 14315175 419666233 175131794 772286746 990983718 278238135 911368692 816416554 952825252 370917524 452281952 443043471 572821533 224405818 343049726 743387568 141218297 825928513 12201367 205006274 546783807 361081706 651623073 833059062 75761026 315806963 164788522 865630206 620808587 494825364 537383557 448880592 32834688 126791048 389945175 403884542 195494103 41111793 704205267 197135178 968495212 152489469 834023501 541222562 910757551 541943357 54368275 940928806 351767075 924019749 287050822 82175209 799753346 89562250 194393416 488126473 291672844 969006018 946441073 787898305 493807384 399115093 424147153 749095311 395716526 131414378 514950636 963205762 19081881 170920830 586440147 9455435 977147591 96060156 1863799 234730293 723361219 31052666 2069058 490928300 150636976 569345371 663262236 163996064 751157512 291893848 804685639 8573449 999846831 723884070 628390118 937681490 129395815 557902672 619592619 18077584 681083028 715960331 477630590 564743600 220738303 634324771 386230422 995198416 867875010 223957171 149950546 422719402 152119002 40572967 914914830 611162433 381292348 836889481 374745964 116474557 683275302 126561359 323215767 593989639 168073919 989161828 213293942 921520316 899695320 11929097 569765432 241070177 63794471 146311014 168861831 942523527 582090196 101803090 463979241 593169350 194874265 830394742 522239630 481118015 294468763 922896509 494189887 739619217 695969491 924696771 38529462 60501754 541439873 699129699 207326511 433459947 22823484 534761011 908756700 346851856 469911427 61289718 198524388 514337322 192218305 713468996 258560543 254947512 254856690 682330296 229082835 666583181 602181494 303815006 748838882 153729023 940382013 451823008 720157370 1131366 382695240 990690011 302397493 308257799 750506188 890636154 72099807 740680000 226206736 970629522 713601079 282337427 98202109 42125934 573949221 987904649 834673952 570258926 93564438 583980491 472023021 274813735 344558582 205193359 671311571 653002424 796648940 538594701 91074595 664961501 373570272 514386092 527149827 735959516 647387211 263842358 230727925 771514277 894399311 31136573 220265735 684972656 113185785 337705682 178472531 352513941 442097055 896237311 657938232 841296865 908716101 727661199 252347688 802203109 473097784 337324655 365024501 327280072 632479913 368728679 644548562 982404587 390074840 421677773 739309660 795064388 547028908 433536672 112979832 10397005 447814426 951087688 289306881 162192692 673155190 892039505 675388582 767757090 882088069 157999750 684481172 758861408 198855720 214226245 739063534 399734257 206339477 193465414 774517086 912745658 471934019 144061240 400928902 44171822 640233191 902950377 395702650 329203306 509452991 417591774 274571011 700864020 413640749 496285520 596009393 902107591 479003023 421385266 412103903 707959613 458542973 829928766 870970778 219463179 323062120 802733557 241098981 714271605 566006684 293846332 923469579 809576841 757484822 510490172 62488652 617927118 668563675 615399882 954904412 558573922 951538706 618585945 735647053 610219276 51203036 982176337 626949250 485621202 182542568 871018077 311490879 987144614 458644228 689866796 797950743 95594511 902611626 98512478 272837907 250487994 950117154 366850805 923089381 845813165 25972369 710578077 596087662 937340637 435543696 780610826 233289149 312061948 190899590 611853210 941792760 553447791 616909899 945808738 400494277 993226127 877780990 384423494 573894707 582802845 504617079 319471701 241206629 579693237 4990081 399858025 80042892 694019420 864923037 386861169 871562338 207744432 854742017 386583372 453330577 675360973 111826937 983846840 317040070 598160908 266810639 144235840 271405640 242976687 15245275 501223919 7177796 443106027 405991799 342108752 799668766 167079463 778722827 397232613 251370045 150756082 416994508 761415773 552433134 592882471 165489281 700728602 47642269 382213589 783779307 461901607 992698364 927377250 569798087 714195790 133344779 583027106 922194902 437642924 918070198 724010323 436488296 456148740 113038907 96470710 54412041 576413787 167098658 730909589 261336560 272033482 758362871 806851599 776483706 51944454 913394458 175094612 409386644 332971012 285935819 211524409 645883351 317128331 37878482 55528061 624576904 825436863 462118658 334806052 567280184 788199145 123024131 891053094 267360204 30175944 503469592 112025073 372465831 413800119 818944011 218654116 400806078 464508042 761961849 858950958 345296291 17503699 889349085 712678584 833869724 631539337 608895269 339121062 802232378 610874207 602241874 824512027 633212810 427032674 670296205 479100744 177353857 77453834 245785536 87809408 618547199 970001963 515880689 339593672 912233207 590300820 239084972 487021151 182387640 467677075 454941787 288646118 661799263 898790466 792984209 343379884 687310377 172004217 475149274 740222929 887117277 997470841 741533512 519670134 162128074 198169590 429258451 715354707 168806933 322905176 531921869 869837763 356920328 858893068 282449472 731768553 81712380 384697114 758137553 418532441 810398619 478502502 161273736 368803691 302380670 24028285 883448302 597220245 636382652 472056209 430933856 254490731 911389481 284830500 970281304 782679905 225786600 238946623 448971160 782017503 254711939 588574712 501401979 503516682 172779356 252188715 112512329 316934475 423042973 633418693 281852498 541124491 561255280 700196359 882178112 818363905 266021297 302519506 28460006 919278020 481820082 177999945 216776340 165318489 166261368 271917070 371861736 593988745 674674850 57797875 240067402 427348847 707837516 417775898 620461547 121414299 77448939 102626561 8019881 91743099 199943637 745269144 777539670 136819055 146594091 529564933 338313776 880941161 36991428 964768529 813535060 598757430 980856593 113445483 513591893 588175823 892473119 99838451 307445618 646544683 65471191 819398573 756546563 60980404 279288722 692385340 97420176 291555498 762233570 572001730 704439215 93912248 759008420 284736353 493013788 558089767 956595755 588498889 427568696 531723552 738162064 551477413 285102326 839696231 875033907 986903562 746956623 88568335 62443190 270637055 639061032 818194859 260289403 7837448 416137089 894681038 788528968 671484099 42806037 699993777 88519597 348931590 880145501 187388663 119674571 349216959 839289876 846736906 972146107 336435511 443852946 20821625 491427566 721973048 800770993 365001469 497439341 294057458 408699179 590753944 906827011 296318242 169766762 21063934 538244078 735938147 907470772 100877600 349520048 199455227 457284270 167375197 136785018 815318582 88570607 876464405 969496460 385008537 305388122 541804010 46095934 626883992 162101594 599969624 144631684 959701887 11421892 198353908 766443447 720092799 439590227 718991975 481198931 816226717 72967048 793743132 864534413 308424373 395871819 2504347 762370418 732430610 269507274 370845729 77310282 998546393 428490514 100203096 287873510 452759226 578010099 836860114 526607919 853413332 728927555 396659231 683912651 590703760 624129907 651963651 767399001 861419735 365770228 522588114 853000610 856758272 378336949 105569925 198447352 783206944 380755968 843853548 858176063 206528279 375178986 561397602 561832074 640539942 908053000 928729974 393159878 424649900 304453016 837641962 202119492 452654350 647254824 275318949 767129428 531407844 933596753 289249314 650419922 255251012 358041086 385820096 572601262 522118594 894489470 526234645 232700648 503922522 501346826 122785469 140477502 163338686 34212102 858287420 543946964 457068067 993388673 500277824 24794680 603126484 499708832 494896680 399865248 501896630 693523041 378641615 856515742 907697258 275215697 181390692 826243028 657082845 289887281 306429273 392463372 778150805 172615878 494440136 768336403 282506884 994783314 160693345 850427827 190148076 322967701 160651012 553717843 338545188 16501270 174759179 338853333 720180382 654304250 668863164 5166197 775928784 854753347 343474325 198523633 265513962 64303184 647653168 245367963 801377320 752259985 925572080 731346281 22421384 844614942 650449303 196266900 876678332 991018124 544176841 582700681 481763157 979890724 590595785 56477278 432754659 500911857 727750528 405820201 265740438 523874906 925686949 768186640 384581273 994387951 553309095 141385595 300594903 243719725 717569226 412580191 528266648 877150753 117514989 431984597 624039884 302967549 96785978 573548528 923054871 140952499 100132772 52032684 445177667 519684384 508682781 518055844 714009199 810254241 672394824 442444696 444066018 446224611 726986998 242522980 225168126 937261209 581163488 270494439 169891818 413533755 389658145 755174527 358880243 762992839 517622468 991914155 597919130 711340227 589550303 565939655 922772200 103939073 683618492 721724579 800684384 929241324 537659745 492298130 168937819 428329108 583916492 440333079 706159118 307097775 709875391 679778056 850985147 357596132 603594612 110673602 636277445 772846990 156510590 177070320 904591814 79879789 78772577 232601042 574624885 771527958 190938515 622983835 682191955 244360550 31589409 482858956 87630539 969519582 629105247 26971943 645188283 584510288 983867024 907038490 679296919 345789505 954367302 328777519 125331045 529100559 463347515 657140479 225966016 743496950 764039088 261537510 212902978 869549986 353985423 953372544 348633107 514665555 255331332 494391583 265625174 257975696 403641887 686664492 651885661 591810973 453936239 704313404 69218967 894398467 86532193 232041335 155914838 958406273 520147244 963612816 954332472 198201140 146401673 341879727 313772581 223921347 184885057 980052569 770160091 443820405 106367110 648384859 819110329 758638816 601048664 575209517 258854020 510538796 479195206 697627867 977708847 679298486 527472334 913474692 743909057 289509689 386166489 833526662 874585073 149979210 577737025 164146515 215112123 481657404 715465780 351334480 374571039 165720217 544993083 358292693 462677861 589003076 109940984 264842386 379855018 299642634 576572387 799122641 201503430 625718714 405036837 551968444 126746772 273988407 926422013 745972793 202115779 637444297 86514525 3705129 647326425 552646434 608958014 655810127 103395245 537189854 923855258 879207698 62532024 472730914 194488058 934073040 934064561 426096704 58994648 520258229 770642509 717027491 485116086 125194891 967216680 239524351 119937189 858764224 317108699 742187913 806635359 670554737 617799952 750033821 979375243 274690077 479471615 135083385 615373318 747995559 675760220 950119183 268729715 872404851 122733246 982287846 228104014 566563554 413612078 641217317 26842817 604013159 997430066 323454051 330074898 851545597 181832116 732203418 249836194 403416989 473107295 400859211 580123359 748314780 723584681 691097235 850470476 280099792 423925791 965870518 882078772 880304816 742904231 121456787 651107669 198227585 578266675 543028356 635837170 881138828 878028927 771459289 407931747 88953506 73424448 146455991 299088296 946796298 976848568 46281992 148842560 83830780 909756400 596235024 100592680 928820686 475801080 985337715 760965941 558951937 505984333 677469997 301615337 347777251 186158331 576247959 948376034 116529645 151941467 650359102 108889148 866058434 162543997 370771728 653046428 508575232 826304426 482448262 952213951 67776526 721274006 885651242 991407954 188658104 925652583 779518841 447704962 268448823 62892011 246264874 898082731 13183517 230100367 538220717 347863418 637929842 651391159 493822440 859081384 971987317 98940367 343027477 716078886 89515944 26954668 63502936 23760744 660880147 297053930 486524193 677296048 276001627 407987411 439665381 538450258 800328965 966259965 856324297 944595295 614660381 50412525 964993335 866966235 879060244 566879985 503873049 505414245 256693092 14472630 638408661 609435069 400373997 911381646 451850685 511919107 601604611 221883869 254768167 497765797 642868330 570152102 218857458 737244432 447006089 361284735 941429372 793796998 544250073 563120674 594890853 308442440 758012188 628484325 224635234 76793436 330835537 143258139 502820654 818246148 880955409 20309663 265957406 140594775 750410800 320430622 661222166 293535290 318495814 963546630 173238321 143883232 631830832 750276675 762896115 404973891 849331551 788060438 474591803 145390117 379740373 175015866 480243726 36978443 738603225 656731923 519827613 721070285 525723473 842556902 380066354 289166369 739655394 339352566 305640715 710668856 310470102 961627529 367709058 808580252 209240411 369289051 29115375 207118384 670793347 380977062 849375367 852133126 189569793 510205882 734257895 409086000 912267083 860270687 322364819 280921954 702515992 783906267 811543971 535984465 832278633 919551397 963087570 59362618 881117515 459696243 185981287 63784965 787771609 889773588 766276144 72124493 646951755 287358136 990759499 184232638 675410368 6974644 454726001 165075886 816612566 261967347 754125281 710996619 304171328 794635308 298005264 290811040 565140442 362913805 842645996 116879503 28563375 910073983 811303365 203328401 199799676 507981687 601094650 978841470 574938926 351456761 623247226 341836874 629218279 899303325 829529712 467682319 626456663 516061736 890352032 521839531 654959034 126860361 231261326 566176476 340551149 995072892 487001339 832334523 860140827 356811800 786765123 998336273 569281546 281059520 863913437 14757517 335392054 336747073 819765895 172744882 663938919 629526548 931952469 998641872 349270545 154533102 336181620 359785787 689281556 134894464 517526140 222661827 951379510 489231437 509064318 382613327 239668542 980952832 561956932 214452477 279044440 982698464 181164601 417938360 316735035 317620137 6985513 319535110 637414278 951042684 179616106 49081501 854504400 530716735 420399372 71032887 456774333 15116160 372961169 568584231 40900981 163690433 505958681 390560119 659934620 687996699 767652932 943792135 655735474 967225493 56939207 832884971 299392159 559171754 518635705 151475151 137849318 191139727 471365346 173043413 578105341 330802207 181625448 905496319 50916469 21839045 123071328 449236390 57268902 746003112 207712438 447841449 763690257 530218940 769750419 928131351 141661680 33188300 72034215 397670518 21585585 454123301 656413153 56748010 355851716 174505518 967569027 91167705 662156399 863889617 931826552 958462858 296429569 822311129 181092196 263364196 410295248 434799773 21335877 535836438 33867340 877445390 300271860 747531404 661703499 650456814 419934829 82669931 419812626 972299233 353080110 250152826 126829817 576904280 801901114 898372857 938379171 556063373 312103790 378263973 242321252 391467020 385743740 614526230 667055507 361783798 847471860 185511134 134981071 189519523 490685076 900427850 879650384 313472494 426702936 668940390 379116677 486900117 95398900 676638776 68819582 493076206 37658791 596986159 928606496 555846 869322654 608339524 921333996 361327935 356793509 26109145 585620487 158578424 490281425 835364172 870180870 269526057 761202120 892240056 495635815 463417218 983278954 691125679 552864751 8981127 892245365 389625723 623312052 635299798 757752635 448644853 458186141 930408585 717355271 982022581 827036754 629392342 112362222 53053864 735378838 475872082 582317825 784867613 326362255 926412036 616950421 614756617 276291299 326649932 207598191 206675708 574781064 902038380 270090700 353811965 891405103 301104228 725676911 427169156 211679944 948253309 614191029 618102130 962938316 210861808 390172669 17951564 543721482 759532420 817060563 235238852 961516447 949042702 622716550 594103749 991223623 896251905 158841669 438582628 979038878 46812661 987790377 567816968 979287387 501618452 693727965 223443177 223557346 826672698 676787545 131931509 919142216 140900158 212725142 956371187 834119898 13845659 762342294 739093251 443076591 447422535 933344522 59632009 857188015 361380393 683330815 581290447 165004146 202882163 764777682 429981614 851798423 902489123 174250070 556542250 619829245 640255787 960414609 451771116 785359300 403785868 597122607 983839958 476695429 442857403 837318962 951436367 751450816 643538813 216454942 331743473 251234507 933534223 284131779 807779475 312120643 218182806 87492584 302266033 850463171 510625566 19898644 164208274 616948875 143259731 465499537 888691994 856765589 191211430 372853044 978060440 264080661 153669058 983928817 385862346 159284132 410289869 612195896 394436230 320908643 357306705 996634082 554435172 65557856 990272186 989287971 259973402 341405750 834005842 719862568 265576762 329100990 867395654 620785373 143305975 567227897 521903376 247363176 890475207 780760647 333928822 932066013 528602620 458340699 934338475 652035460 545676508 245549998 743782946 661599942 865611090 617758990 392527271 17749310 853828000 382215394 548920889 357300984 780971334 740772172 960972742 37037275 957131624 878886074 300364432 20966784 73727209 43469404 785280487 853305395 67263275 302107980 224670403 639374762 131073073 39538672 807255442 370836827 4976731 223659537 66380518 801580871 300174482 989203592 659983516 595817795 711069184 513017533 467965768 406359931 48687665 708028094 318476749 367167045 689546198 656178138 489327305 647110499 917850727 846884188 217932062 180145027 23279833 94884087 961041251 16900582 933118978 786335970 133414957 458067847 495800935 367143198 910442769 916297552 327650897 381977979 439181276 324609090 773537008 247143233 979018074 346175071 740943220 525895831 279760950 103314326 424329468 44984799 520531848 751573604 608562482 354532950 513580038 952507930 850082136 107791682 452456220 93434299 118716291 794580083 563175127 760211592 748515248 652120386 583818522 957769660 765237714 963733305 554360678 653847797 123726393 294365044 880110770 769093853 545705347 143387379 103172203 388744072 535544093 524276969 714210817 907956985 523528911 872249431 964487066 221487227 715873355 729490637 801749251 783352972 97957766 365399959 613818437 75132345 655952206 731634729 355463077 286298008 411777583 243717345 914707522 825110840 432405544 967701837 26226067 114735354 618026698 557225683 431024127 383995151 565873995 474317810 405001311 642804809 544109015 873178515 39166052 40141446 315669130 535008557 839415962 985070325 338968122 663302457 167670467 900275216 461822693 240690668 212949740 412305747 250431294 689712969 602200260 739452559 18404940 176545311 118888488 188092334 627531447 830129797 461099411 537225280 903290453 230268944 857305496 62044044 179772191 721452103 863655511 279506793 419762847 688492227 699082104 385900071 130916562 801097787 547357497 177299791 23812021 387870177 750095712 490973816 852551830 978873578 924981899 681140006 55853164 749857230 943734698 559134904 411213590 972936273 811034024 503956215 245252665 847306095 537525846 280760491 620105686 344836967 41516193 206466023 599436345 723733511 594205201 864386307 941204335 672784717 882353733 624681549 949872881 290670686 712111183 352202215 798982825 621607128 378921244 77718454 205875279 678850005 242274163 24476985 376257224 366112226 826433208 442625243 167149097 237347681 915041783 780463520 891777799 747488681 67209934 116836322 708376153 802840055 318767219 260157561 364625308 504552204 78859009 25744843 152200541 776325843 436867527 148538215 10352860 93651313 566515023 504592947 959262554 706364884 752271732 19041862 314697443 881588336 119847598 209628687 598387384 447006606 784536143 921544228 415416969 405998181 579459988 770077658 353452901 514328775 654868257 801287619 115336544 36154946 865947862 195155844 834630532 289335547 511564650 194696433 298325071 108182534 866441808 694086450 474115384 315042182 339269347 366134321 365003408 317178482 567180294 791022559 213219857 811481867 339983415 409484739 21361690 372914245 189543284 889055536 501253146 719662143 577568276 844751461 50742193 384168684 136746534 276738301 901435766 963439233 757874714 600263431 548315314 956094927 319757787 435040031 130703073 442984142 321426800 388773313 426398252 187771023 87263784 784113467 522266843 673831056 474751136 275703078 157630234 953003994 317594028 381103464 257626649 935760774 26836243 599271244 563147871 348081232 856208408 75020326 134728699 504538883 890991417 704751558 128448846 54710019 746639600 309399829 492165187 522599162 109368199 961922352 923831515 179249206 912014803 634379401 151006863 798480305 223905000 404128289 866859145 686538703 320371934 812816700 446441124 824596070 633214619 988115763 99483596 271728655 738623736 602608490 865574700 983321889 659473825 868350242 796214284 944236906 583882376 296811927 708595556 442061631 414773687 872213153 91769989 9691782 991573359 822925652 735003087 782062280 228754292 780071735 713559698 191722226 509059985 775630507 880828838 250820197 997065497 613340883 212952849 908747194 746524850 453808351 323284584 377632220 18522552 367545854 162554145 12019370 464992035 979985558 641397915 536149047 585095628 486108666 877279270 10934252 687150892 422337462 901257622 441185715 114632501 829018941 216085842 146724941 861119298 366709806 786179215 391272761 798885544 515156470 135164453 303974739 383257998 705203555 46890710 867402359 93790643 554748088 35781826 636521227 913007687 701243485 715025170 882564333 377184394 157921701 144487966 332727487 45035757 726265976 887995894 534495791 289439047 80567732 761737401 551738448 615973753 229911078 592047065 784895526 556841356 733518825 145196912 944477902 656705045 415094769 358648415 771507627 11797453 63972543 194692997 215181041 171669580 593468293 871184090 914513750 214853744 792147274 417973645 278369077 370735798 527373175 398498836 563898915 474253657 801289205 361993018 664545337 585463111 184618233 240781477 48109445 282341117 364440123 775105043 121481792 713689567 43789575 132382938 90549546 372980957 642207632 786144645 946278303 859038451 126754491 501546971 150677200 751833552 599593890 420409878 368256799 234304483 375543642 775748097 75967086 456927029 719254074 161192700 966999988 327050283 645399465 863598685 461651902 861487984 145422142 146497575 248978255 406339561 121570290 114033800 493625162 576729677 847466856 47799210 964542131 881098401 455953307 255314721 97746024 683065357 858313438 887610493 379950441 440155047 165687761 114127729 836747166 628769536 691315353 144147979 393002605 43449514 939116024 202101981 500373644 592969881 25239489 369426383 984600313 14458805 29427513 598817373 726751770 190506879 683918481 898204454 619733626 775989601 594435484 611715356 678876056 324744675 571671439 251604750 581873985 627093653 389302770 300290667 126229622 235820240 237117941 689894456 551281763 766548801 563827538 785443705 890756812 893777284 836781200 542596556 875975836 642124621 520222902 521754362 593713079 204605093 994361769 14405703 541245413 350443749 399533402 574157368 586250581 43102282 9301020 728999030 586895890 899707994 134416726 451408739 275746986 123312789 747778825 185925081 225838176 744377714 338505043 809922221 306663360 365220475 69769939 240165180 644314215 814656328 993655305 361009669 361680337 196679024 175861084 976572160 873650726 116360736 684419029 56225472 655869451 630742319 638472439 597555092 953287591 907365149 638723370 713299614 894037684 303132617 540233110 118525189 343032623 909003687 737781296 129321565 13150339 748306086 579983645 354614065 654941747 861094625 613694465 365741782 260762880 460310924 579778113 731922529 647739424 427515423 868181025 103832406 559937847 980274974 907401420 3054478 896304203 461940391 189303329 797506081 223024637 392332306 309797121 591950001 669523598 84689739 219811419 387922217 757512959 5308084 912824892 469626038 512577752 728734961 214586003 939487749 153906139 237024896 856425030 732074073 248463911 553696481 759014520 863542713 876033581 819813677 339035981 912617569 512639751 720579433 694547865 578026675 415357821 142000087 888004764 158216224 245230167 859465402 173088160 342660633 698773251 445534830 927766870 606342930 211317754 807824489 124713735 3743875 378193972 851978874 877425250 589020903 121913257 153938484 482322748 470039233 412981656 269462128 702188411 460068969 49921247 741356108 332634482 835330336 776672162 969693428 575887946 620322699 749734413 30809962 431557365 834884334 778476325 682375710 336561296 549759557 224224874 382002658 916572165 904669324 690119618 33036566 92997840 880434482 238223865 689276095 556838678 247759491 285997661 335883007 594895435 25969890 65764963 840951623 40509711 76107685 260919508 358098444 137232092 360220429 511564177 116304160 231116359 26223045 382968236 300144753 772193093 316196826 516387981 308976414 845815185 302657979 247377279 205575716 472462898 286100011 191441614 882691543 611479087 166954751 137902375 132930826 624469176 455791776 135523080 466483408 614847259 912149594 520917702 596174073 460074499 949296933 707336351 263007286 844098078 145320107 730211807 593050256 768102072 840101219 885679004 528403696 419392211 281016024 14916254 331999545 407178465 308605733 748199857 826656179 682854799 736630814 509485862 529698979 601381807 436005436 431280649 152375406 926861437 137053525 525655212 205221121 142227300 251490921 750517743 957567568 476155138 772657893 608613986 551716127 164878466 974310921 403273778 744593577 675114243 202689690 887124764 159993535 149709891 859574224 851267057 262676428 317310097 182061794 858845963 586150183 965829530 833227075 491210300 895005710 70448575 233435854 220423775 279719582 717792561 17670270 435110128 683275065 592107704 266222391 575775686 308453631 85686580 232092413 804071689 111300905 280437 828688863 31928273 856074198 748310868 683203479 967100697 322342631 493083743 64681011 431163001 872376402 206282888 868224440 196812772 665459523 964344540 205877360 396368548 967142294 524570954 871047055 930069341 211890265 605155976 265014168 986202220 447941218 211231123 504990471 155189326 574359520 273028532 643507649 797479124 610154368 881449579 84715532 732742479 875628123 703846183 595376149 466997834 252217811 836631568 990273773 402249232 711019746 195835116 614950387 235157993 249842079 156210476 286378118 665294475 733574511 518304248 547969641 610125850 713347469 142026183 237330112 390932433 719142378 873342130 853197343 462942459 812854888 393842111 987893181 652133850 833876997 270930747 522663155 850872472 86823932 479998952 347234810 116522003 2782800 264269380 985726218 691780529 108336936 890486986 596373458 699291401 251099073 560550396 333244778 730866261 529036534 209694499 829454735 537878253 116389137 717401412 872961160 279537812 636401566 959425472 585424549 95615787 36799530 210594250 487378874 480507205 391216625 903757902 545023477 305829225 812008470 183004356 269973565 963653811 70729352 110772509 284969237 464518424 31204006 435102149 488908556 777617668 172176748 883376569 860990097 523650033 789939688 198658788 275501329 874604330 632903887 796449239 88193719 436843728 574659197 800479627 561506597 48097693 158935588 5762645 752151915 762478491 878380249 566563475 801948177 498069462 705246459 379229516 252981071 522968087 88644879 424978220 204311292 926574525 207624401 631179732 271621542 789673537 629110213 747709199 309433726 963306540 890694397 822360282 421995193 767271143 268865685 472388850 372156823 703174219 337839759 726962949 820885394 452147298 31569248 554812816 29868574 850325308 267409181 507997966 115357361 583585023 111010435 244265487 952124455 968301585 325147141 532211346 357382403 211165998 903193676 285215002 973758161 580237717 791980026 142243292 737529044 491577763 346435077 112008186 151536873 308687100 599857872 834589561 902395490 176984260 491733778 337142649 819118735 250010559 678689593 465639032 338065725 921038925 502169342 613790162 436527493 737092446 810498300 188826254 657321427 185282477 4760820 450800254 519029008 357722231 395198311 428153407 718187822 654366483 366602818 424369487 623215255 456427896 627628152 529607626 281247114 540870971 158731399 831939087 907778405 614983949 87619491 570195823 265161350 975535177 7138584 465039605 344773501 171055596 740849334 558352945 223867831 21792238 674090725 914141969 850060545 351220832 454062072 569988433 492422520 376415872 920808996 138024224 83109141 604700020 83538284 726281025 434728476 127941265 751379122 842993523 127661030 141432983 784797385 794660621 160506995 429760945 197627572 969186028 836734637 322226614 778334139 865247925 476507679 451353865 496255122 298451121 428926061 334350631 832292749 627209980 859070761 801822870 216137 21644393 80387481 217506003 388754640 445909281 122528251 399650428 814227866 495152034 285502250 92784093 390465114 262939749 266691046 671069612 500660836 800406272 776359609 842829285 779547670 945992498 231368379 516967777 910785523 638857916 628702623 263098292 492005367 112106208 511655244 350679252 916250768 923193425 116736120 818466816 925907433 964247299 212152017 705469136 797199894 224523285 779695962 308337918 463439411 227302341 603458166 225702715 628981258 557060259 943437044 373908305 349125411 848838896 921171658 226837085 54191587 740702659 142799958 345415280 474502435 488063385 401791878 455897470 759178939 411123320 961949932 637880235 554348228 747802734 187261961 721243229 364779412 63942455 465314824 860787142 655960508 518758213 637386886 928260573 219539569 733878005 292199935 786484371 316617408 340066470 362119207 75367991 979622775 12551935 872186037 465182158 42875999 895322078 753147083 175655022 400795482 671823427 381251943 145180924 583583179 884077172 157130418 397147374 381803445 859220587 730462300 413138503 638788794 161115032 928517791 519136031 901487238 530708060 508957237 982266784 656509632 854273303 713869687 108116967 379368676 576233481 309733998 387712790 455670206 717123240 233761895 538602265 825220556 336001907 762733809 737776418 399546904 234821801 417263413 336289736 530754646 793353927 429363620 445498487 586286693 432280829 843778434 629645918 66805226 506827221 759283228 419711202 856063635 476054515 216428877 496560171 961406221 471015437 620327516 355263280 752530491 653493690 114754020 203288579 775929038 878330039 363837867 254562255 680834706 280501231 332073913 812203885 648522715 382566338 345037769 848546035 150770832 405435914 744423346 658036032 935826790 55202921 422460157 568998758 961849504 233364110 6829519 150936111 24817983 148085317 938848130 921932486 573085919 913206898 535629605 56023182 664976916 405797839 94252373 538168238 859620080 748784785 469566148 15879953 751562789 850193855 899587368 991689710 853728945 206511612 976920367 526163908 463501347 308915560 910308185 577584326 360076718 368886336 532674160 694198922 85179309 239438501 438130309 192723079 551972165 346596367 410102774 223868712 253996707 216453030 149041494 6550375 595973801 609939168 340535350 144514753 318765190 821176819 487633906 374774309 155892806 475762100 170633665 547193210 596105894 188610703 186600127 245123686 883078016 194317474 702323615 989042082 933443690 629550220 91647457 682224917 981149842 858764447 163810182 685977919 182887092 676458598 770100120 383046255 404072665 892094143 677411333 416720441 42238254 682800155 171662264 637358425 546128813 145672975 386136577 298399480 538385136 260028133 995454801 568767671 652223739 858275387 175511900 528231174 938425395 832699959 533647563 764791520 952834201 262139306 146258779 138240315 689342982 644407027 602812729 814827532 592076156 196766686 40434710 969150223 87129966 914093969 790907278 767436980 630374284 83331331 249775973 335293063 212070518 796647224 135194592 929182664 44782911 442198674 805675977 2529706 57519027 642928214 157868121 23468273 817748333 694610402 147156440 322180516 5791354 506454090 752868537 679271036 168386097 141501348 153232956 334311316 545223058 26625034 333867684 629800614 276367946 648608072 992433152 575777590 284051289 473897423 691086639 835042621 726854886 324841222 441100689 61504409 846632562 796640163 84711511 882720134 405807860 739716232 482428162 919700309 483879035 672800206 411477249 326085633 832831249 586994918 598501339 763437692 606113625 458639825 987343913 653130870 828109990 477691480 490636413 595473034 564707658 957547774 836422213 620803756 396758791 75778960 674805536 488808636 313524947 233782625 10973868 789573384 580106886 824821725 631726598 269217704 522607044 132299180 74188889 30144362 482976261 619337727 9127368 832547769 877394018 365540855 550148295 778833590 562479488 812063363 915020321 630514727 722064223 867940426 328447752 919135596 148567332 826030811 52869131 249227944 657907891 916284188 263979880 891744090 906073798 220196961 49020755 407680769 540985194 797506696 796325066 410918038 78022066 209637035 133579303 620576861 514420549 456930817 145353346 839165162 896222438 850348773 920209866 752809340 788001370 155157790 450808036 532963902 190608122 843518581 557956465 152501627 848371980 343406991 242411949 345757106 519532992 149041942 292540169 45887631 295934512 714808263 238356294 328746243 945577749 922397327 733694366 106397766 223055128 436107895 333811572 468343046 539627169 802021317 833180451 483663029 253111594 975924208 284281607 810707175 815057620 581140722 124067202 692522686 60947214 198635713 880203614 764105615 657634214 665170458 730859009 875145842 539279473 953789881 897949232 164368672 275369319 422315272 21977968 98322776 512414137 389426204 864503991 336358463 631536375 332651502 387417276 312532812 986865207 243652802 589516675 286781906 507306852 280097612 248899212 663419543 921682280 525228798 130678360 741693869 334398699 216263368 320898109 615248582 647340581 98230009 687391828 238291847 475189475 288943079 296192516 951240049 42054923 726162266 641258437 664052690 898792693 119908086 973224649 718809289 450550740 151058749 412678065 605172014 178423818 757698293 392795959 604281410 793708597 545111123 125685122 917431818 487949711 994861368 257356782 668398712 516889325 390421641 967519352 196667107 923234400 528617557 930481671 547812558 739733705 612861070 565325106 820329423 251842699 319421741 451023799 995764562 510106012 445051717 921469439 39963909 117085212 858844136 126373837 879669862 736522164 806872841 547457900 806122334 285014670 217991172 419128352 78479896 712460659 413432620 818663591 716540643 766571108 699991427 842670303 172919714 12531937 732313558 280655087 179907367 623455350 364593679 743096122 726518122 574161652 842387568 632910884 622095212 712415225 36413851 685863323 617628895 145928692 754690886 561657835 674338945 409394513 563882393 8997458 346397827 692134630 70904638 737073897 521708332 810047509 600632899 87979420 592985688 582897670 767443090 990810982 399473230 6328668 66635100 378141875 806614289 766280561 319904929 256352779 669305964 701241438 365129840 591763733 334148015 870742994 746011863 563613625 133459226 551868491 725374202 845480308 367164323 584732327 292714235 530423058 150150284 208061572 190809383 400516253 658743819 487291543 880129052 364958971 101715298 389647774 468513407 794311604 390592386 487384909 608570238 722330590 391611973 979348910 126557033 949909907 609276926 593290057 978236822 449263818 675578982 499616697 11215442 222433991 755223136 431163595 39771738 969583701 893498025 648124759 764988051 900881693 910315534 122276118 415241264 126050011 567631956 220070848 710944165 266757452 160651422 583408601 792758110 227744520 793395152 359756530 477226430 569583033 247252518 658246408 828229816 867116826 756490308 404692144 371730178 917590262 745548028 661290636 263056651 978911485 715664375 201507450 154071552 638183108 718237453 499562121 991486952 869368359 583805951 865027752 678295194 924266018 115844849 686317926 955635509 789297650 741093231 905009373 978151314 673211384 120558670 404493250 262432389 204748375 506263015 402138218 363133710 708286978 771965792 274303152 983246136 579578122 806529256 895401282 122074655 879083214 579404548 391087093 240958491 822039472 588590340 908285186 174554729 769402060 99983621 489184975 200283805 342670131 279748962 15450848 787298401 591054619 477632933 330438880 945623767 324126627 426400336 148592503 66158011 711503197 267887681 578459243 498376595 952400248 441806823 424382106 893583808 812634491 320238759 39100710 223279871 218586236 835775701 394798994 293664589 217348850 24072932 625256182 793967981 425285327 795376393 594250361 677913345 352845017 415692007 256980946 552189056 894890159 72348002 175831812 744454963 116289146 113310714 552055605 104333020 121409125 137469679 386278904 407285524 873903599 499955584 787332301 329847069 522243511 452560873 127184825 379666399 497949401 998206327 515660106 22512156 139463911 310390794 687553452 471940723 855077292 236874589 303964794 804394007 142530788 645050574 667969399 78925809 292395725 57461095 280847668 844459218 411202149 568855153 809218084 892121126 509680508 120350086 331517437 940273078 929406541 35561762 790354747 892137074 161192254 805012511 597020746 474660838 563929259 20629058 321339944 819337245 674359390 578047559 903760027 840904024 450467400 750216020 840739262 783827337 459060957 221931415 106055280 838654035 531693340 433606889 135485294 286285552 554968644 552691705 236742841 64232168 306714499 853273545 244188512 265154786 568159858 367466528 974509812 443548857 917830489 999888806 102457614 569722364 282462983 382775841 118427696 86156802 73395687 483882469 968474856 242932114 305179070 974971178 747213504 767408446 719874852 617556917 898606239 748361661 232075366 921139265 368811722 607207366 727368676 402342140 117109862 491448688 399083998 907354510 18852197 81712169 143988641 974666491 900804273 78685124 916991698 376877623 870671116 128175354 352417695 726831896 199683919 748589845 438302756 913514797 531289395 367391415 406177829 1433741 71220180 474254080 896621426 717440156 470722910 155055245 349220662 199732053 56543758 439177578 550208935 360043852 209603088 58450698 751021233 243864798 563381823 3747246 455350581 94556921 238580440 211645861 271069398 232314540 962820290 53835084 809253757 993171514 527625151 373042870 612783551 638845436 502939604 272926275 92120649 760218802 702903001 941346907 879029687 957584103 470974270 713855927 601080313 9980842 229260997 156764235 288582612 520263393 523759986 137938978 105941269 235672973 703551363 342073990 964823891 327495389 874161974 598601360 278828385 74398035 387048411 614790300 525639385 314083173 681116205 890312633 278460192 165416329 85887556 388183205 158547299 786821321 340240967 818404202 489648386 642489026 299643319 95144694 566771201 742894101 491681062 244068691 283580826 109792985 354943056 555466242 383734702 134874135 166402 814908670 450693454 108113511 502213887 838670176 23062798 820292195 57936910 551097564 592264476 763042199 445049502 576954335 186566879 582704887 285482806 650443074 674005200 603468485 634330208 476312920 794173944 32744980 821898011 427912013 816589015 576591131 129095872 543916915 346335640 215743905 993629103 159814484 791641974 991532255 292146622 918315138 349396534 990637181 671338238 850099571 372340171 892343177 476641036 21862023 461330669 696046809 632436890 553394598 373603371 162024319 191525103 681120747 115835068 223944464 510229189 442354401 697837914 951092439 330619169 738717851 501323218 681486704 874375980 167175238 154731165 830817528 74352783 731185287 913896799 168797512 753393205 968401659 671602803 640496316 573173191 428181432 171309447 577709952 786930161 587112096 648703444 24787810 571117416 286297773 159584469 722721781 772146476 492067061 220032620 741101961 349927392 140020694 629350183 357047583 227203286 347803789 291738335 297094452 453908425 156444091 448042453 187575479 498311388 520424255 280539932 81548670 992678785 942547180 72724580 394555318 804599501 272006554 47586762 852661002 771788244 91071284 702732097 279715762 578997819 617588477 515346851 242717396 688975734 926587971 643307986 214365509 420757585 151611250 850791124 394485831 236660906 7183530 769882828 722078881 361987249 131006406 603253729 653527729 552567317 766879425 611234101 955474464 478179831 758142342 988321367 729313918 84701228 905978385 585312688 242950069 118244128 303361734 60396884 325658245 55898438 505064540 200671314 952288263 313344643 36869181 745641393 180947770 347687448 758996726 985859122 900953932 38535071 205762360 625253421 382543915 850314122 949873570 19953839 342288253 741752524 294020429 750326850 919322777 416111781 293267177 901113798 643536263 961752301 681123630 244305490 116166411 637001964 973041356 686220739 469315524 676987211 145161675 407561299 778406037 953341430 554048448 305359047 730842029 721432053 540083574 538119116 792759139 560409063 842492162 328653455 8380811 341654110 68774944 114759231 664769092 114231786 264636122 200371331 689975158 649516527 637350035 443671531 107451607 600445418 981198922 889963144 466200071 726705472 695782643 459544760 473178275 919001675 34270618 904877928 521563973 836657404 680264381 956229618 621569036 841292606 420997052 632183351 922044799 166450148 886926569 453591889 225872134 164567699 218039186 28115690 192688901 767228675 310433605 148068350 70833711 713874124 981066484 480683763 372296956 784507279 225158796 688772252 279298383 361076248 180925092 846298844 489164265 759535064 197114000 398875602 530509935 704758241 682878114 647531869 223178403 920386266 52085457 421392084 81271050 316621203 726931362 919972669 841720581 353414921 521120238 606521195 822193752 46925330 462339802 579414382 163563891 511305326 803366967 123004709 742227749 996089736 976694514 587751085 659545410 948741711 530397498 800518496 456845898 449645701 199053700 501669155 704613403 4383491 353256979 371540201 664553088 170979536 992339491 839616993 151111319 121659615 442505046 770944652 386142683 15230351 733894592 845918958 731542777 444406963 523672217 354050179 68606950 759167051 163428028 788532820 50473097 860938066 809567942 666087880 855724977 335012292 158996886 377730807 196602661 436205544 779955199 314185755 525626196 711600785 321847850 870954927 392067854 920734397 714433095 941436286 619181462 695888562 832975672 704260348 790996109 186189687 205870255 446329037 350869529 101020835 726554587 526980105 965683520 134756433 674992145 73067606 347667508 528404309 797301102 10534828 980003256 623348267 711341434 350253590 203706312 353583353 270148191 450556188 915647668 774795385 873522755 481649992 346975967 466968624 851875447 859698760 793902521 793497264 421774726 732078682 424054379 351572784 155352885 890901899 351634532 903275617 744325943 698303420 391784169 261351234 426670191 238782495 151257000 48681881 945397396 936632953 194748985 43833383 621135139 132625775 461430435 449666505 558707202 722305483 592705098 338878614 300838346 566580264 335942900 287142198 259131412 298244742 30312726 69384693 926737791 802058166 461851754 129240740 685587066 494833158 835610891 74958536 169197673 111611687 96971494 343266501 97449507 296987565 976848936 982422735 854943273 456593781 388302491 215101685 408278209 116425607 820873004 553222009 330713193 128656010 234747324 274430466 58901018 310559397 905247816 247310423 893196487 95322421 276226465 171678254 375572228 45916492 311777322 786057548 180651309 214554220 268488451 209621316 560951768 362281545 834383031 709378205 188722548 644544552 783762512 909584616 572986974 404168563 923042964 633179193 881729447 622660392 768481392 800883862 33591795 470979301 671977819 970763024 907512546 969007750 86035984 541049638 281161734 706749341 990758209 337428310 771490484 584493310 727712614 815603 53031963 216053521 194598714 699600342 343435913 206469238 206817262 702134797 621107802 661901779 232263687 382875677 111437869 3489506 660900729 356034225 410198828 740603989 84594077 928016986 788017629 729092263 75566026 975508501 620941888 263142516 641564563 805318997 81773468 802985432 794633059 755249599 459485571 821482301 516297952 823792336 508555085 501005817 553709095 512089371 337480616 695433535 296668403 182037552 548510675 58396773 775278888 569662764 822613240 459831162 861181049 191701331 151257422 460247537 112147390 957546972 135555192 703355359 399315781 939322137 879499789 646106789 189847788 76808103 594475487 260012915 964142328 108827841 625306956 251895736 174468157 336086267 997772325 40801580 46501748 890798077 652070006 636093689 507391414 70897852 757244413 91000124 368106371 217285843 39220596 849931146 89489068 403010511 981766119 287268611 846876993 584478613 587879432 813089924 385000309 648623446 838991729 296077867 377090451 441461483 620675043 43906545 83707849 671892367 83027812 811782040 532133183 686718813 405100623 241563172 522532468 186773194 17335930 312768396 641855475 639167386 756337261 35164754 202711147 601249954 166714039 396115883 12206426 502947753 751927469 976161477 19365422 358225220 666045733 808696735 918409663 355516321 643803789 123214143 206362687 462366840 267706861 308907488 878041956 63062851 951834321 685428370 878881350 534079331 728656346 743155499 21277906 175998117 129816965 634283708 871440679 880073589 266619256 232074324 386362647 626077141 240309672 615975860 679530528 557527610 99665740 771986081 211431262 520095134 24189987 879530006 671938256 644900112 566903320 166778438 718617571 371537046 383521517 129802313 962212398 144568783 380421720 965193269 742798703 850754633 885003034 366399674 656399895 746197976 403558552 211332750 312377973 547032534 427338754 648151808 965312117 1672392 39721090 892123489 484427369 751345490 463777339 104811210 148149353 659743680 289896616 922678141 9649610 266707893 90719288 119525176 125268399 54475191 968229545 807070455 405111287 543132004 734678129 277037221 641798473 144252654 154451291 741102325 114122334 888156042 45500351 38816048 8349602 300191675 526008579 255054826 268149781 888384824 603973792 929315706 688098737 658337140 654830105 295289618 781749418 560484896 37568987 7493017 879963729 94900211 44319254 326375716 317163579 727495952 479462655 29294819 709880242 947658899 53660534 215462538 736360307 504557641 531567628 855824702 734168200 690581532 255008175 166405003 144666893 605275027 961972474 493376849 594010586 127317360 40255908 208449442 108646491 502591154 619214127 191266749 858567131 826232840 290066956 145025190 625377041 212598241 989352742 313396317 357818692 649417209 936100490 538550784 764322511 47220956 811952070 414316146 125030595 904336723 940344623 253347424 245811198 652157750 64120200 892363629 6128081 534055782 293158454 527372885 208407251 974717436 284911569 145820657 413061694 40059741 407416086 48279115 690105366 172190472 286552766 275126417 706542218 246472115 192430852 998551714 450371897 823753146 448896221 74826226 209165913 252767783 58595330 681070855 35882923 843605317 131587343 132578385 764324681 815163368 961736102 677060559 480633644 664393687 753930790 783419176 170992373 683133030 143420691 264284237 186942458 759487487 68347805 603225965 102895293 265651698 195626353 164483120 317425876 225435461 646628777 249807220 962121332 508468541 217520076 55476207 389876542 430915340 593680331 834638174 61566011 994150585 279191532 665795165 316992009 306233637 214751100 513366563 328853652 482879274 844936195 203528356 753157583 662875660 705586429 883132400 799916194 518865322 698612495 820979798 296052309 720470503 277699447 848958246 308823984 825554878 977690072 262247126 288016727 975196248 840723400 830197807 708655729 387368910 579650616 861960911 398346550 899560565 894398793 913112799 242844478 79361854 403521330 740286632 218908160 536658489 558008790 591475786 558796307 996583775 289470996 832821046 394292681 723276091 322391629 218779160 534871789 487425094 468216189 448596213 480823139 492110026 276149455 107100633 307738490 695423832 817618738 34195679 891256514 731641690 855963746 586594580 389668638 359693587 300267612 753213218 866345556 134898466 311367391 392795660 361978909 201921936 418973621 343963759 708421670 131182923 280855913 980230737 550844379 635327271 472849951 66673333 826226192 235908439 28654644 236535254 190247233 448639895 972542476 546659889 95374125 633978062 781297287 299390769 356525872 66455882 264523475 677764351 436399044 167404347 871310669 490875279 46335613 334973924 226717271 471629244 178089673 626151223 65541093 870783759 76703458 757077043 945254046 835571009 500121260 846603956 883402241 203513615 953186515 517426942 174761914 179195631 724474939 152458839 257027767 411070114 631798314 252156909 660198939 830819398 220801391 340624306 446190522 720892675 251549378 603441303 291229384 159389670 395068032 607860313 883796852 845628203 197570926 321543397 347063501 587307930 744570784 947468738 911442412 356381510 153652888 277985195 870618266 181277182 690355901 78831950 576142787 199690268 810340002 204411494 674858860 194232301 764571989 767008231 297963450 195939001 41890306 972149696 951202542 217014357 873275848 465629641 618141885 697466229 628881705 417819727 813957079 401748052 637624210 553788578 267301210 817625722 456533258 805432674 354119598 174619112 422468036 287654901 505181408 394811474 326183576 77668017 810030830 656428926 540784323 161062235 600911194 381171297 948016192 430019298 505588015 24508627 318387190 964638856 560327176 661308062 168824555 868773939 514371290 459596024 528968570 162304575 969561907 707399255 989287337 317036037 257666483 683459755 191162894 600386976 89659509 278395942 187220098 2157300 837796426 315881097 574189525 789453938 283552478 502817362 703224890 256536388 886361086 861611813 70983986 70136492 638687779 461498340 622660731 826293152 75092351 316363050 458916291 567760252 221091833 55830054 922855203 32435495 692584863 711731244 764236644 217313274 618450380 923011776 953990280 819395346 128643383 218126191 716014028 568696844 913700960 313680198 638533401 591106033 964629044 726764947 902572485 85713619 974460429 731598030 456493153 733398219 409168572 381583016 521250007 738438343 163388156 15335927 232586796 365937426 962697782 93260999 728348172 311814865 275963975 876200233 635566046 884684723 178185902 390044510 364146902 857844540 672220951 80305515 576372504 738481102 851270123 817538201 3631864 290741024 377909593 103305478 504307573 201094396 701928917 457417078 474713231 700951106 108205884 661963874 345701401 517398655 517271592 259959187 351931246 794967369 900144918 130155392 270746300 65767148 953927971 686376088 308851960 446899689 459727325 493845934 553097717 705068910 44874858 288211003 473415959 701256961 799498119 318843811 595739581 651873444 922965550 515431117 291254560 475434332 451416208 212825609 839051217 141872782 921120583 900288572 13293155 355423730 387989582 320042929 75803487 525750890 742672576 407721066 921026023 729873725 401784918 342969574 518714243 737582529 969267193 470902552 443209451 860430571 946761415 980092763 241664936 374611698 690297237 250385019 590334147 818111912 493819061 666228963 973697892 768106800 725766751 957392312 277532063 931945678 590299791 887885640 393828851 23578502 177460017 478766781 943921089 577952829 420678696 776185815 524162510 571198146 526077334 728582554 348647820 354752126 989150894 84645004 89136607 732928447 239113235 158489915 940708081 986124584 292910535 921827150 946511221 430796080 792936494 290345618 432698926 54156757 534251891 392559093 577086166 992723739 526218503 253220509 363948497 864596588 233395399 559026792 189195005 949729590 612381997 710973819 403832646 315521563 986893508 9558011 706276524 419545388 273059934 483156761 155754027 1046656 623306336 219221745 512425476 70130289 299089077 880733565 131010836 313761738 135300907 570675405 242686882 546429192 896444418 172529349 689577476 751971278 850513815 12592981 624787346 545957951 247637445 217682480 943979113 975357895 843024050 740984581 625876757 931809304 829925985 119645138 456227477 445231334 764538756 544255294 241971803 29413542 277008392 119005986 732558732 196663610 642105950 122408780 328795529 895089408 319493334 925716427 656688592 210835895 231306051 942357724 28484412 136164523 628682709 711047759 158436817 345657660 168324711 582337239 765307784 66906724 24329290 866076012 35734941 862434233 287951160 497625926 658299533 63490883 256400375 950062137 62974652 439971628 537158403 895530482 397726949 911903860 487504144 450003118 239846146 124029003 371811822 86486008 711777376 543792795 73702123 929079695 770036717 791188344 767454164 249803531 138052999 201741773 422127277 16864362 436786016 317493756 358886675 628678345 590852348 38782856 172900473 731177214 311164913 358969417 117627752 177055110 103161872 385214861 913739737 722131550 38552764 465120302 164599745 915530626 301879140 335335018 219664281 713812876 72669187 165587861 257621609 885927064 72233633 24473406 849255906 958787677 665694333 154443500 845609176 945081434 309868938 953446608 228782119 994643875 288848368 833791274 888583981 503229581 819272730 596449654 524552907 573997352 945805436 222431459 317676800 107409354 236939695 984220641 773043296 880158537 652447401 549737501 427926133 946612385 202130525 926050999 635489756 493643557 202993167 217610084 762583747 460213956 161121540 378941649 40419398 839986129 132484176 559764556 646720260 607980629 866631773 517502068 178041589 449910442 336698323 303783953 236682537 24719344 806243988 568402847 71638242 472362619 320719026 943251751 385424420 207404598 798163449 350407604 514347396 790012695 64279683 549196305 123197733 165299329 423572275 849433594 250813195 856180700 229857024 508627273 378731984 694954170 58592888 154898405 597267046 348668193 578772443 757090788 553151887 990490027 581073703 598051106 997489601 931438358 268187156 687352090 827753492 940770586 780738219 2263737 600168421 213776365 423373191 281080333 217304813 988719652 314390065 720999635 510654668 68363070 592565152 817969173 454244801 440962311 117856626 97494381 728145003 928279224 926052920 818342681 819386818 843705843 914629011 860697471 183293807 283701869 310009735 120655452 79661323 452162992 599179990 332171057 898456066 464176893 950537684 560003169 479114818 30509746 247009254 968243487 938057167 832144297 82544034 408987999 951311946 800690495 890690940 613266042 616985269 47723577 37425027 43720829 182816841 775807051 853310196 262500107 124133297 238414953 512830838 658030831 471845109 88106607 127013533 866467039 510733441 304808031 535897730 457542440 396542923 895215835 668830746 977683724 124599797 581030610 12689577 545519050 455826014 60200270 439910896 63721795 546069884 853652798 715381049 284593645 570805660 604833741 987236272 448124682 290601511 584121945 408105978 568131151 918890127 296796760 37575833 496241739 584506934 427253681 774550696 145133600 902542997 679770328 686405523 631489493 824486596 103607335 842891763 261016106 881801129 533347054 508378075 79893990 396987770 681125294 874929276 309244626 885522290 833975004 303410159 673384451 93058463 273211480 418452008 381121850 607455885 109061256 725189960 40241078 596969668 254778251 695194098 631132460 699644264 157615729 914210110 642190629 724422834 52504465 154537524 840816140 574056553 783529970 195853968 682264848 20398360 701897879 135148200 873982968 969790613 906804872 904880231 978260159 303499125 759646697 691210263 807604146 26581130 522950269 591609569 368015594 532100486 888528659 415745724 871668393 791846617 300616233 857318544 15273919 91124256 925306869 66160828 749658850 186852101 247671417 150007273 267106455 650268177 986113754 341518778 755912092 84213077 876943171 978175428 72877426 130281328 579832184 975236486 507957526 761582065 776593701 81343676 426361109 133368323 400342643 989400811 873315908 410193584 924543446 318353982 207518219 662259724 327295578 275255596 506666968 358175760 10684252 959918289 369155010 787095139 195103971 724544536 923576602 534700306 260190411 606732650 517489560 239464981 85490946 712474153 291308364 715132215 946102342 843998293 419113728 498640163 555517018 426938337 746551557 762053762 228024875 79016217 119619953 68652615 499903629 729173956 197774204 951710309 838153367 834385554 622151449 38319058 754772862 761734022 638795455 731191786 67744133 84880114 566978402 447690975 65533475 564240994 559134679 768601403 704741400 224843603 450523016 493358768 862023904 650335110 215140236 246822483 898786834 393434273 848817538 438058233 363423605 935830998 31292959 780477903 741290263 467563150 82062396 651683586 167593352 602749779 622164152 313912555 181811470 318084684 204715180 266211766 333163855 218022460 819140416 591329343 721871771 908455756 639158276 158233537 87733163 501175433 50713881 876315794 650337194 701766243 905298346 662622081 90953360 400877696 500933011 166626191 210087735 144362343 723444197 437623675 65464983 729410801 300630136 165922987 619477506 446256519 571885022 852074867 621739225 111179105 866337319 245919045 607084597 73501641 711377726 283908491 361503564 8619115 454595446 418540569 416729934 662657861 786143456 834082439 358668888 78451815 110418342 696524130 593822880 920901227 492726 273471013 232024503 781953352 765705598 5179884 713266844 923795994 32586889 752169535 946174263 151973194 597184820 121063941 68272844 939695000 806619158 370220770 386503683 288177601 266888934 43955128 229595762 779985276 47870091 224514909 979129552 201532310 402451699 925206198 660483654 442570915 499387613 785758025 816492914 393269339 635596837 367274073 674810385 442184964 133647622 687368259 301448037 964530048 857848836 377474984 643665556 19987836 691436072 204178866 507253391 895053969 120409153 362455861 421330614 173669871 708084178 441176231 294587893 709913997 470898997 978166029 690030300 847920963 472571970 387653154 144709466 532067642 260715170 621433539 380194799 476128759 610194175 307540107 566183744 187502108 663311640 610320124 256642630 649879420 224535153 391563676 892629563 576247711 33255775 868252707 964935259 20052768 658578803 700246796 227649622 919174737 713768266 503405370 71488798 560157860 556033881 74434942 592556638 65427715 35523660 238997210 636967544 683708434 729325513 953532715 784152924 352868059 464682650 14619278 932971809 26315798 130235350 102677143 417212147 257144822 689257516 892520845 12636773 581384781 137342747 860410098 474658730 359773182 612666427 632354340 504353598 60196292 488947612 890013360 866054286 473302577 96562296 10941064 727723043 962321670 304169174 32218012 109845724 715434141 94959225 169239180 592174817 412077407 309532220 661958522 336713352 716729972 831736497 927289356 890344845 335324834 137504434 190191376 216166063 585533814 473064779 792326376 29268227 17385083 946491880 670925868 983764546 765514603 730647291 367455406 68415059 158861307 458342135 333488594 962792349 700126672 62840246 299820525 882953767 707796118 985681456 761929419 115948034 611136592 211569372 837966621 737920723 887525745 23278441 260104720 882222265 404334270 239163179 98177426 447148154 542611317 562461023 146631641 896703392 866320026 671449173 766694718 894468330 780505358 133367256 789803188 83039689 715093093 584329685 156769375 450146824 588698278 723555312 775282397 836920971 656066325 986471422 97655833 916294433 996327958 545149040 873658328 780667759 329291809 853857963 941722503 556814415 79851953 231609616 67388260 635449776 802523437 428277480 814803051 603865516 515209858 317757280 313647722 851358788 678797715 430883695 39499863 44677590 299900554 638403829 300020004 536710703 829155444 946985155 406422714 900148845 794711294 241161403 30263858 567425045 763543734 495353988 469032194 39169859 952520112 612742373 279882782 576584005 525866659 116008217 38832252 617147452 592881152 968350740 657626349 829549372 113156906 262065325 704999093 545180380 599536879 987317801 223850243 956420070 14545938 326811033 936103879 721316893 805477276 499230959 146643616 881698021 445787275 727156062 351129683 500382352 859213136 521646842 458655807 183020819 254607181 408177102 794882543 639187825 263140653 475952203 676643472 746829262 928359979 567958272 804682684 945685525 885063779 665999590 756242103 828507949 30634072 911413581 532964023 951175901 422533198 308011915 537449656 649854530 362232579 369586985 633119274 435994456 874648891 417219363 293962456 166554023 78598467 629548125 590988527 698411074 327536511 596056207 54197875 847625960 155422689 27066063 389419215 584472821 587292535 792691558 66233157 84009942 61719691 489131252 110618291 712980942 477459227 630094299 882414818 102011466 549982368 951708288 606358529 61369181 316257219 993411304 221822452 331554078 311611290 999399143 112015376 519145386 798010157 868493357 26223844 269787622 790315293 647998865 540565981 711542396 269026215 524820496 904519491 117970839 235198680 105109848 286163401 230359620 737198683 382762541 14295350 976540872 555471331 191877508 858041580 692295146 592558335 999658871 204037416 493257190 694611911 663892816 263688487 990769815 799921983 312188026 891632798 487784525 891446396 537473182 171653319 739567441 292508918 419102320 631909799 194955978 249265493 642709362 148511073 1287438 941589401 774872764 995486028 766824358 342679317 440105476 719566966 262976562 28667839 619363963 905840013 144664643 252245984 765282096 98693455 401970740 846220857 360347724 602854119 333159998 749406874 621670016 882165294 860048614 665790303 491693899 820980552 245753221 793778786 885992218 518873064 411106225 748755205 325466565 463515656 452956974 850219452 135798918 866512161 257973030 98377662 828533034 604401884 756887259 581080353 982195195 267657971 478002834 781214124 56492533 230892222 258547840 227709047 236367607 827335190 936469943 387180144 822989717 842375775 138092595 610368670 976157296 349831261 929655120 961800859 334042301 747732652 201087352 969568934 416082051 926391349 418705562 443271586 491241114 333945906 44861679 379187212 380182670 857285549 96910084 800262461 878513441 633239834 396061107 911274444 293782125 724314834 444215330 537867382 449145261 825392287 894910466 518874442 284400160 788474614 21182596 171561696 109058882 705768826 583584026 125249007 375098204 14003760 746827737 596946125 284055416 571669337 87391120 807583737 191461604 428499880 903033983 318469225 418709855 307193505 875328910 260087290 696566989 630850270 405394374 322957350 751906832 827201164 888727765 542335892 404753359 695637848 50888495 904175102 710044133 918684212 653641242 640224420 625192320 457824789 852275821 487904422 232522022 315523142 762487248 917894686 929361634 336140653 35839103 901872139 157518067 675216508 326645091 173141537 993116751 211048775 585957498 46847971 516011981 86672910 846791128 405513248 44473732 344365645 542978546 485885102 788282783 585607851 733874170 433391267 510334053 863606325 827526362 637671891 453320114 754768801 85400888 15698581 50402960 270057333 659153853 530225637 796002415 206645742 664991455 163339805 751581152 838368814 533945669 303196482 142359521 299922275 916063308 194440972 610597635 113644020 668352357 705911019 998899327 839624649 504599296 563410290 114543591 689659107 39134850 385151637 717415370 801697923 111467154 290260603 870191805 592353581 167913322 254913742 663897014 867098191 164653028 61191812 96261134 735743055 376693708 485259758 960415401 235479441 195040034 175090521 425203009 479005196 196332860 287141391 304091035 481632241 914397392 579335400 366873234 971081568 334947005 832566812 216204382 980769147 88208437 573910855 751529274 937833246 912579493 728136882 640473019 275309273 140381583 879885578 350273754 973724378 123144970 108396552 397307838 159124087 88062570 814990213 186195767 556738866 805433343 580989695 443818314 554944265 781591208 114849649 790962080 890006233 81947667 842445614 286236723 314343692 693733599 725941825 181723381 279088881 74696393 14129990 730610079 432257675 153986311 292005724 959007698 692265421 258809489 857042705 252016878 559253066 704767705 486281394 851014136 693939919 623032056 857641136 90713432 410572586 790694864 334039721 128828488 326029755 487524103 549563085 212194398 36726191 626248537 177574458 271547635 576817664 218897840 818247186 165264233 385221527 647934927 793279168 982151132 740613366 61450206 251300475 750967861 767657005 105705425 325261094 321143578 166783553 312937381 544399368 127284276 246248131 87595762 608495520 396681471 24719087 117548200 447734245 812788281 512138399 194818202 113837902 542456334 871030596 223536640 991883623 625326883 564552161 467408281 929748829 838001470 257879436 650507442 871365415 196196069 65262729 978041391 329298022 320312743 777058051 896545967 874801436 464896281 274198050 856723571 423690262 836653422 975748403 866770295 508924244 74556774 106291422 920633039 242009325 461489708 576261884 4172359 187230340 255179172 698917415 965282015 999270785 685861798 325422917 202324728 381143524 66977536 493556663 414497957 376175510 814544723 115816468 68214929 468545985 528239111 302099198 905009887 263480898 283103296 37374762 791019324 458590805 999238470 52555651 290850917 673014030 379067653 736493396 510108310 122405402 633878275 863432697 731109850 87896045 307082962 906539517 273838671 659950035 99978369 757820096 132703970 176117967 262005260 919237630 336238504 522724425 566013106 322435870 808408646 689785570 454598886 857246408 974281936 324559886 655880639 165910810 462420476 958929630 719239284 19546072 733392573 429047182 336585204 291800952 925580611 491817116 761099221 671784249 440207662 619460465 369248239 18574287 549601108 991157105 29278254 274774344 28623612 466005538 356250183 639117448 815626884 197848886 482798239 556303746 843614271 655172467 441881639 366413979 336017910 515753904 598966466 965543741 588347055 771470120 442421485 923955954 754881371 41388363 878987932 663831372 146942828 569242903 506918618 550449489 403768998 179917518 897950392 921579564 897615938 27205480 459068400 158851389 719209632 260343566 650187949 765384175 686221352 27691052 226297933 346590564 74924820 229221947 264046375 656496140 675502332 127969356 393899474 404037750 313014566 437811650 83728593 4367318 691509857 955714861 782882461 345507701 509057651 704343532 498791763 139392055 729743729 525987712 683780048 727104648 469837377 157984580 569980036 901504771 484830858 861339187 192212221 913999988 530109686 560093923 230484212 365483460 314600330 266448532 783055600 735489929 621437198 517222262 700395328 769799357 768900947 829197719 722146176 619854255 455076481 381069393 686512780 471457679 868391377 990699077 178619246 514796145 69575864 307403765 614557294 507448433 830827172 968342015 513789322 605737346 720692988 665239528 805885756 794662479 19164807 985060424 445193183 948471674 65839458 86688600 726541869 167399286 283721043 162311733 570399118 347967332 541512116 776258801 774701510 542891129 704737714 712008663 651950476 659700561 874746518 813723058 203655774 269457133 308108604 30511293 507480465 172062931 802734512 282898916 918916399 739120488 682301349 577934088 26873239 274706893 218281185 609312258 996853233 520512163 796144069 18582841 539864858 147094803 585849613 180488899 58238880 814601617 46928064 922423494 600652455 389346635 673867983 936892232 418765579 457027083 963562290 387996531 806272117 18849831 480596286 471134275 421167586 859416440 651861131 204011894 177072985 455728678 32247127 625008340 857268404 25967237 709861449 156109764 557966383 179161642 880268838 257370848 82919369 387794182 270439109 681146370 847034670 373909616 859762178 345329912 526683507 444066529 412426139 773546222 947829893 549260614 498960524 277959147 659972574 574619152 665107201 102419503 748349975 732673722 137092319 57099827 381580367 167265532 285492528 60014377 957741294 65795791 90525878 675446595 142754042 610371884 613775643 94579823 630578160 48298887 917033273 36000078 545471430 137130819 732560149 885150441 190468506 341015916 569349958 545818398 505408741 938896868 71241089 706486267 904827673 378501067 230386679 625383296 765151555 22647985 675926815 127967539 224758258 200994828 370473981 374627962 922401936 534700329 404096725 176571336 476201814 309837297 781430647 222684276 563694882 522785744 811268645 889703385 843132587 666979943 719797997 105869064 682626743 90326631 870070721 306179863 534373080 344765622 104330476 702473715 789425058 958709802 986619556 587709940 448099299 260804 469030285 415346916 273495568 662486 863116702 774436937 216631601 360217624 379164408 392883169 822976947 53652123 577472921 616132973 551858123 114213794 709830670 769302089 334749464 547368946 867417874 84240050 137820118 918163891 439700317 847093092 549844498 545550353 668635856 347391359 729582393 173109661 258133950 620793906 489067780 8343777 364253457 446945278 926487542 457051263 93833137 239653205 835479968 189009266 527584106 758512347 892959350 47150975 825524841 495684144 785862067 105171182 963070899 659324357 116386701 531298214 127401202 36051483 360776698 252471439 424547500 808408960 629916882 463376780 359314386 950467786 958908530 241195360 179906654 538147767 757936917 548197208 761101345 143742629 16415813 258289443 13804279 362910898 318272838 383163280 413581080 439398693 155194932 237484717 805666466 226652061 241888249 719632238 608568731 441531432 810120907 594044212 431441651 16594432 134398113 205617707 675965148 829003668 358842546 9287454 455821253 573598366 967784930 686352167 468896288 470851415 451565901 33143013 703846431 354098887 277888486 920659048 890356684 946445457 846736137 696854088 719345437 78863734 148403285 101493577 952756799 999505914 19656395 359633952 327819223 912781115 970134771 766369007 802937571 438454607 990333699 12107568 81691750 397499413 708340317 167578544 11603642 260650026 850821298 265411932 677235072 153318785 927225015 719098745 550895306 163311264 865075913 765421459 590711607 120480801 3616165 897169161 799412459 724192053 655580757 112944468 767916604 623244363 291381080 875066187 476073505 665331839 167776309 500018224 247113239 691163103 106399348 981686177 360545207 706320606 562353058 604918379 56369671 591015316 791940654 748105876 249308826 923982388 681790605 688975028 562863798 689874936 66708795 198257502 482321152 547029363 598091185 150313034 101901566 353393641 325841500 882247835 641379592 122101867 714837736 879147008 98871213 795766919 602972154 749079654 297367455 578894165 460709134 305849019 293318616 300510373 121272822 527553523 965850373 271058548 105839370 330207006 991164932 407534972 903059712 147433395 666946037 786896683 394962396 556289402 462437152 175107025 886719391 589703139 617755362 961841089 573931772 550895714 77437148 804359882 595195765 888740414 567367893 413493392 825605460 622874142 343343512 165821483 497835790 709867940 516454736 886747661 854684595 903587313 680607984 810126855 702857219 203327395 245816895 841879329 200026577 511889540 309011822 190979881 791163148 309743607 308069983 412194694 558095917 956297324 230494021 103002842 334075981 33413548 387371459 726233827 914219059 369380725 380197429 265839348 216658547 583408788 413826461 105785675 842246119 832790527 182564982 219684328 891779135 18539082 215254338 478414826 709343433 89011472 274489599 66895017 104489881 324513056 567604288 848695607 642117655 300117794 767438009 480023016 258219886 494265492 167407813 594389877 121430177 353138633 134261339 127537008 417152387 616144676 591480715 191854796 326468192 905607656 858947867 800742756 354939265 176761252 992912178 168818592 570065722 102318278 864889112 257465391 905197979 293937711 950120243 340503917 572654162 425106296 665610073 964986771 605956427 622354727 702555952 283275080 939078139 73252614 601976732 816541486 55833855 203329377 91752447 153120728 787314495 619550036 965000435 39380817 378042387 567665975 591099300 481769559 920368363 853163909 441238760 39134358 394656474 46550968 86694506 129997983 414426678 887317431 318120733 67306957 7214928 790761916 403547377 906409465 910760276 726543361 589394527 964182227 946287353 23162287 501863177 938109334 159420841 293230392 443509217 302611324 29037200 649685393 790355418 948552797 848261764 357250987 517032987 163454750 671522616 746096458 916080927 216004347 389404538 78050855 39663563 718236159 517729368 889081307 903096608 419428745 442419177 714445551 824137634 114202406 353041355 790856528 946764849 984944617 4074925 363488678 485264845 821870293 470129842 598244655 559480759 492355624 685423004 669229401 507077636 349620429 104481006 124185004 565465621 518847484 899595332 987614685 876373678 911543609 675901094 440946044 939440051 975861445 740287454 507484324 344753634 369195064 620699972 163083259 779477432 86301240 595030915 637594703 425355635 805941191 246973275 547587776 679855385 688932554 228674521 211077414 245425241 403704861 438349004 130294616 90007722 21845569 361817332 182108639 65874483 210368234 14621571 315818264 895637705 793269421 997445760 283288476 593594470 886546928 527756357 836039039 344537647 914141306 997139438 837383359 375345794 512587042 240756550 675461654 785915718 30002874 240050218 957246056 19646181 787496279 839087797 143785473 635052413 281435656 917009176 764645428 412325458 635517362 341888342 935716657 50401146 326559569 861878676 600417374 836131121 776382360 709685864 618634604 171373486 23170922 643437345 39633030 226337366 433599798 658370615 130610526 10848050 708059141 295765050 866075973 762303955 905181992 331150659 806196098 581949427 884822801 485069753 238143250 7014804 107303844 439194690 974247890 351139662 91048171 234644367 243797229 794145624 802438108 541436611 644244723 524539459 235482788 189013054 597895783 450970686 621540336 93452834 875309728 258355733 133789072 257225559 178695391 350806845 74114591 412422259 639276195 532899818 298518796 825686241 467200722 419402669 996265102 87340560 16944819 363621 810134254 89009981 740193651 240893283 586125726 522855656 528665721 436992468 590737474 344019576 621989005 570294694 839624397 529280436 271255876 928379538 719845359 675979928 921333866 39869422 715062284 112243941 724681080 665917919 934622869 207281009 460111540 336322481 446163730 561421853 592026807 538549710 971968852 403377403 883534570 972659884 4209044 201191994 527483217 950829627 764933765 285710111 388283253 655828385 381662801 707448408 760905339 241251678 996292111 869177047 869584069 552475496 52968652 20534404 50747078 745702573 426904813 779316545 82896613 144954151 221222429 840060463 647610086 567556336 984851029 660131243 921371082 431408004 944255050 527113483 697882630 606059108 677620629 532594185 769844218 516338168 840827030 452556032 848861519 812659955 466423631 135696010 402659582 812539130 771826919 199443535 889419073 963967382 292732538 348022927 586416594 117322373 493560412 627168859 652921026 885148854 712601162 644052402 182158415 569870254 368761304 359619468 147620629 341723345 174995363 968798753 721928496 476610231 149031864 452972736 115383403 270525665 336791856 786373621 370178774 835710879 531067544 967433542 503465360 405243372 349139780 624337357 105508964 974967865 90742604 73262783 220336626 56986817 553965972 16494054 763768533 910099146 301504991 578607314 425611495 289616335 82114168 278771408 198743512 48165707 992823711 700541192 696182008 630775734 462656099 916143492 124342674 579284210 235112811 730967367 134356657 959361102 676172845 694337191 88014793 910048990 509209355 543502102 304758920 314698138 724523865 201499200 623262899 466089206 843837306 362659417 949764564 520629793 146215480 157348384 203527670 594262726 108165929 110652602 696996362 555105352 964299700 631420814 551631897 268187116 17093419 549382960 487111189 742889642 998859925 455851022 242824102 130681962 578319216 903667495 338945741 19465399 672746053 732700103 921846297 523242989 292086656 937641194 466934267 47015295 68011189 257904955 719711292 193749134 141026736 961333703 755905233 729153675 115322061 238882883 137625004 984143574 294657137 636329088 326890706 763578009 57993182 574713791 335897066 665793154 701255701 435153001 258705670 495410662 737044621 979598816 229820597 431408473 489249459 614187953 699369332 605717830 454675802 286998343 664734855 536868290 743288170 382900077 213334085 860912613 521698338 651826339 929891748 614859758 435543531 333872654 55121177 52363664 711941341 824546246 949515402 55873879 436778630 31225591 473686313 414216278 512809423 46160221 262207980 576476221 828776495 774132400 823526987 733433870 960284127 184355998 903722287 978046084 355471538 59655232 9161194 93054879 599194607 742914760 924110539 190392453 107414481 769223335 57292191 268832302 183392008 500394802 54469254 949207956 755216727 748819748 905929102 753339125 113311461 220745031 397629753 734061620 789548618 995900035 527986537 698411536 75058506 27280341 751341253 289809322 700293660 963423696 968067926 802555823 106178271 967388142 919164211 8059565 81466599 953557238 2001338 212212401 29877464 143930368 73819275 318337725 856406405 182141149 169244509 80424406 619066907 601620950 636684764 245766321 156731350 430595931 232599729 726300623 890025048 989719867 649554420 333988999 31128762 220491252 638511110 555646254 894655187 511286662 677118742 193977052 969591457 375567603 229844596 34518311 11591672 221539248 272198481 355619869 592313537 523321422 625869974 204760604 749457169 259327642 46689595 725339808 688468342 273859918 569107723 909148263 221529081 479562422 623113203 886806913 514219111 46856538 393042188 72020291 994168965 460494857 480379146 79268897 549948666 515307820 731675248 174119379 634937284 835118612 682282888 376936359 590439216 312488846 762525595 781480111 498576803 803186462 395200261 855542474 395948190 518155472 249719928 318184491 232087556 614126192 872157213 407750350 855623001 63492961 204688831 708816165 316423495 91541154 666395589 840567044 459094086 966040701 825366562 781250147 753587044 72096000 670754563 168394058 500158074 52606101 185098173 238471064 972805502 813242759 599592780 316626977 302932134 147514140 342184534 681350503 842917611 858838967 532799738 710241398 946213486 159044481 457839299 141587900 42166735 7898301 9917556 715687177 516446859 442471233 155102009 727836392 229513812 406259433 818934890 494909920 582862877 292411148 291051779 990386401 34597322 982255298 408962775 718041074 65451016 506626146 142518644 84429167 152781824 442573275 223497959 620883288 529630114 344276763 877642139 233351621 285093014 862674309 591654862 34798648 270156236 763068176 865920705 199228757 237738720 496252746 35812578 746394173 544869148 710513742 925738384 914295947 2705609 124721382 500642291 57516926 466643508 492137273 139833916 35728663 143608791 282665941 691038372 524355833 765480751 799435190 403618694 902217879 209026988 451712255 843022248 190414785 669977613 763694751 635433386 900496321 909055321 759874333 236291796 966802831 250818873 710709859 667824150 40573872 966789385 91270175 790327451 414624546 946161389 849082801 74372635 274858751 291946102 647821593 537612750 396986492 131922529 781965551 903590782 464544401 680252061 555157887 872693371 917982185 526122568 657694216 331839138 320089495 595355218 418132224 304960544 939851176 178961441 950755664 931510517 958972950 265613060 2167824 680947900 236558521 256465036 408230812 531803653 662044058 984148940 44246741 358102015 802492775 451587798 259437287 110968627 446053685 208020284 815590608 927651110 221219412 561856607 149132990 843957045 106273464 357982252 77018361 404834913 688729385 493564130 982162746 421536978 441109747 779256610 906351366 973420585 581392293 228912144 783182834 91334195 373607716 765822141 535240742 650171072 449279333 906847165 943195085 255009349 675411400 310322441 509584174 949381815 440085645 15115176 967652166 428426090 352145520 259842449 689345698 396938259 519824851 184805580 783811426 103252127 956491423 506752933 442461798 854863989 446885772 987268542 671139445 776059040 214393033 546994878 808947638 59196436 649294324 95244508 218195770 465541497 943811123 999195673 368464617 990910734 406953652 933406184 39472136 503576973 233432160 496925300 360475795 257104263 938577624 659933882 965917140 787085452 384623353 253468949 934467100 428677714 427540355 162999238 708942647 342357700 938131299 791521023 708514365 946242688 388545951 634815853 273008312 555188205 172420905 999226976 476272172 889428613 280387921 563897744 609076425 190589955 394370273 660739244 816601030 797336344 295628543 492887699 74837711 863949519 853474941 823454430 792619069 475861421 277398725 777489368 879133598 254081762 656457495 87029729 583552869 907324791 134867982 548470402 883436023 423165166 670717483 222974345 101007529 766214468 140461561 680559368 792958687 641712380 14974803 565839540 92281969 840907178 931716911 459112454 503477729 661712026 188187793 478494169 217169765 661607235 594504726 248850528 369687430 595627577 308359793 696504125 584213259 699171633 928123862 265822943 578704307 986996446 507052773 689579030 795287031 399774462 177333194 408850690 71767633 272941200 880624080 632936529 323073105 7252378 137923737 682410263 183211407 607449074 760524875 964222726 353143771 845506099 415174206 554193591 113514518 749566166 111844526 646678394 355831996 681667279 910288708 538233891 776518638 289934034 559766146 504545192 216359253 376133846 541881455 342726994 24112711 139730195 977210465 557848553 200382608 737847662 583576336 95680703 909006953 250405156 370656825 328655799 478809931 909633609 485794333 456954896 481266283 175733733 396203914 396988194 502907873 11063837 303264427 223354412 504441319 416213857 900618757 821420780 711667913 333602450 78332169 649932940 127645132 650915249 710826454 588959334 941460509 357854217 354397393 281034597 481414734 157472853 884046806 244352305 526410065 424792217 389969152 131039156 843045777 613009323 725657512 650676776 743028688 615518772 223360213 718162015 847579350 676862021 722370531 407174203 425425064 937997445 754102402 715188819 935169024 724066809 632429980 835412665 175430033 132103230 240419993 103745146 148424701 34310613 439226686 66934470 121818665 406314859 394941771 353666799 386146602 775397968 321881231 585776503 307683600 284143761 975173691 470104880 598442987 969762463 284364785 466949888 614619984 387989286 55928328 112483351 922023194 140385519 245108300 89256779 412621976 172418921 593270147 859460286 635307464 13455943 999199777 428590915 661614587 809934908 790552213 372767606 334281661 967074692 801970068 724859949 41041332 260869449 906415767 916036566 327083103 747928072 587668919 300486391 602909228 595436982 291497951 171876479 682770980 255775316 261830141 303346141 144892917 784648304 545969673 954889038 859733094 676412226 976346395 663274258 867663971 192433360 74140168 366990034 568861791 647676479 343357966 872686119 649300067 4725137 937698085 378730318 767421417 58550944 125480135 981391630 946059627 319624790 314406440 186528501 682665374 537822057 534600720 349663751 998876157 863564943 259486666 278199689 400065768 754865896 998946767 103501133 366514368 316976642 14134487 526276614 740428075 907526191 746709360 48532532 722018535 460324936 792239930 102122019 379286372 273694222 465193174 932082225 427643003 757264476 976079342 2656500 194255059 635130203 265912897 951632707 717567847 109759832 628233933 496780769 718865000 249776943 227676760 721279158 547576188 853014197 993154138 488943450 512063650 55786684 136399289 46908429 846281734 904331943 406256426 507648382 305426971 393253312 804523258 376704085 213266031 595779209 792439005 40328435 801947770 632440692 41534426 697654712 594873011 903683872 259457207 984723005 410884712 487452161 241712217 416718822 84347840 808919460 66851017 38426430 936587966 300889390 824144500 514196484 206038936 760735757 178804629 96222021 704356505 766322909 18180488 297117391 612725805 941754597 118486748 507643951 3010947 879159898 868325557 90164301 518101928 538024414 798995961 847542132 69595391 223853703 213313341 933816585 960070302 173274521 821464695 676960251 262513768 568844407 146260289 683133828 967001435 479897226 21145628 883220534 44438113 682346274 248746088 905057073 16737572 595774711 532999935 289949050 556825316 448449139 282618238 941768687 777495699 549194919 77286937 897800358 770535755 789141990 130612967 495824788 183276467 228139541 696765359 818779735 578265040 506814244 349180192 311233299 583081151 56143669 757873012 916381106 351883016 132148806 712991113 415425780 760024377 250866984 894587083 975737763 916470747 306860160 48422509 30605314 496710633 858934661 20350253 75863353 242254529 861315428 984808601 189361090 872733418 962771495 116357335 666514802 745086560 411043577 417910962 243372492 528079884 805563157 496676251 239278135 536569789 969519442 204857964 518501694 778822611 998376776 345744714 681063779 912413603 729872264 333128246 647188244 80663036 279946561 248085258 336544110 37030846 765491012 443399766 542144561 426947170 307021715 588301297 175175783 522939392 302732247 85703311 369352407 147244 138243884 674663724 327787069 315078028 249554575 677005870 242154632 650797748 189823560 340721031 173271911 635299862 858902747 124421606 396526352 740622403 645420955 606019946 425279424 558731219 593354079 694736452 75059823 426966487 476675803 156269949 707152976 40010706 851546466 784744834 353213215 85319500 254572365 214384262 392416417 804998586 593131950 602561365 377753315 205161175 359607568 887596600 947629876 625743247 946837563 299652985 616275433 13760850 589994469 377779291 215315895 359556037 245240971 480628611 771691778 133693070 871764493 101907185 673311488 492890628 382752652 191103858 917706843 423109391 542801864 459065729 471067044 708938380 251355584 188162396 963754322 671726788 35229919 367905053 243185938 967958456 430971313 572298077 524591635 162378871 37617508 698318367 210218381 202204257 994897028 298185320 658173433 147400651 958521009 345596428 272356896 762378017 281286500 566335201 932490892 288612890 447182527 625594485 768651353 768396939 459156418 453738163 112070009 715430853 483118722 743088136 341120849 138568347 369883092 565174019 710577766 261787016 451857584 431770246 683117406 427716637 297217246 36408351 82366704 915751751 791613185 728502528 84627262 907593153 425278389 724399032 218940388 371463199 132476438 342918863 792642604 984905965 843989941 717838532 380665486 192156541 10991912 789494374 696574135 307405181 424693095 452518129 219571974 336274374 780706895 279093604 609436877 605917370 749219196 949758616 770948256 137096037 399748575 94094404 996210619 69575442 598462728 133534620 693979526 360926785 403557105 494719134 341647312 442244561 794771272 906161318 598155825 160604071 182619260 155679023 884689336 714415809 164077680 179981849 22262475 657757935 513822079 669057489 108866006 938228795 703805741 805220714 680031416 20017522 114475036 810219502 521170886 446198926 690319236 135488112 322400776 268039274 826224674 803802433 148141775 506196277 802025730 626306576 351227808 716010984 222507596 827280441 852788503 948668549 147262485 143764033 701876250 860114824 334918760 918319346 107742532 943814629 277063559 350749994 467185792 137833724 163925879 60984744 323872384 320864204 345115023 118712205 985486865 820602124 613390134 954458178 874043435 279660079 798359384 574248259 231810357 166986726 142522186 785003353 649435933 665413048 226724984 291552011 811370982 780005259 338271215 915656859 769400307 546254610 529523318 73816982 527836034 515458636 233883469 939987134 867369215 170290930 957838457 777661859 19361523 143971246 395030197 657307331 317010102 433619844 705382334 466338316 686660295 782399903 580539441 982552878 622910240 21124783 526549684 842818065 758498795 556879575 435366025 905588323 341630083 302788241 493699524 838389474 669443248 907212204 80432204 443532218 575157055 968918435 908465020 971765540 72995109 312044806 396305083 474468489 5095939 550982505 771624007 297241316 95982124 642890582 459785497 501425380 947788283 900688948 772501086 745843992 879606547 316695154 883108112 236406652 457594154 204849023 376047879 98241863 335329842 198096554 219896810 75941250 592773365 183057000 5961625 93334895 538174176 574317398 689999514 289064692 865810133 374313471 844198983 359771164 289657586 370415110 596143219 404070742 108253497 855649482 939818284 737827453 362997704 561993683 357592723 547294501 699291027 871735031 74280114 939982163 1522901 996728188 825888814 758807671 816746879 488689037 627716346 420247669 603120576 148545733 65815318 883715869 493293025 89296818 165559706 891153411 771161314 160768736 829607962 785258600 987287104 925004291 326932127 124375271 537373323 691156708 9821893 460377427 334406847 460075866 455233060 503314438 195316581 151925029 648303063 992369714 611220899 279684165 392995088 975948765 151770317 991674474 882744458 457227350 139324103 478871336 408911237 665764614 566965235 360083927 304620802 601339966 131763040 469693284 392097692 8126757 692813180 170277654 70376913 306753191 37623683 659395685 460467784 434524991 644667720 151890142 885423480 131214808 739684914 611954178 931465720 282673701 773854697 15606677 661306360 521695829 369633334 534110679 842572669 539290470 815565909 122953672 678218209 267175022 863697096 323194683 182624734 970338470 570557910 381204621 631286511 833029643 603216076 718619862 593699048 27708336 655341589 398213158 970942833 501524822 233092690 318917320 777423650 646986173 861966405 350739216 828054268 684609200 8747621 132577958 10119719 356531313 216048078 12286437 260853636 727319341 981308939 450578403 260969488 883116378 782983443 428198705 922596412 125339767 584909228 42421486 807766442 506542518 894683931 629415286 187714436 662188926 260814839 847414983 191515101 114780466 324590819 333531396 386359675 372771937 284958692 800390206 377112408 167993263 866269555 436509006 574052881 752103314 455370108 921930837 500711464 456624972 569239747 29242048 368511240 181103245 169672658 567060588 745794472 726194109 29319725 86890405 726675612 735654517 303676976 399530905 179673842 557568976 867192193 355757351 852301062 570759490 430406808 18966567 39894080 230637489 36604324 913198680 959425322 416314113 106143877 207365271 51696876 384460350 482020264 746545944 387901840 647675516 446861464 68934827 817963437 704758026 734942546 173915955 640332211 668863472 846660111 66753805 462781834 563656109 725248929 865955018 291735416 279258933 469781030 62475804 947452244 418293879 252395532 45421805 641447792 296971835 234490381 326902902 516960784 412688818 572335948 446786788 328463654 558377080 937124327 962047205 887750378 371323154 178280036 642518393 8004575 887471496 802806293 825266659 893050577 119583578 60493407 117783516 546885097 6685273 252668164 429681639 385986042 208681589 881630620 691841912 230339923 120553520 103594362 328771694 37725261 107071193 12786892 333419330 354531669 899052403 238065810 8192725 869385246 641535866 629894469 130491774 934413433 115349899 765172828 229289495 664529503 964524878 125348210 17100251 68581005 440549201 201277300 569839177 605638196 423644128 431691161 28406723 27615862 214066925 635085537 666814324 65132828 871581758 121291698 403987942 573295710 533675315 459667403 400677580 532543804 811917834 488480551 202211199 394321358 959853120 737501476 815147418 732784754 39068168 139849684 630981323 59716086 621372826 78638694 511488570 697659533 761036029 215129270 338009981 932204217 999767148 196964487 735098559 519568410 858931218 899283486 928852161 998865270 217272385 988322495 837290717 122696145 744216590 786743792 55091955 781195540 877330141 778258223 518288549 23907628 45144950 816808570 159962226 370702829 76887976 50499656 877304305 196037727 774777185 80302704 661859766 233925091 99271835 396764882 349384228 551887197 417941931 834643439 561113441 579164628 385482236 28824115 317357973 565472468 945079802 236684420 363111641 506961266 894840370 489703474 355946625 457247880 975022190 230376118 519341650 381116645 489765781 316327600 952135410 785643042 152745424 88607309 315181749 940857517 935500797 608292554 314924464 169499888 873219703 707304001 54183899 309847479 803408323 827793330 969749764 829383114 196526281 524634230 498455421 832304671 351005845 577034827 20824649 800048858 826032938 205983946 682976169 793525826 497065655 880159317 723283646 501259319 3699088 182705130 537193430 900473673 865253916 371349058 944296551 564451622 975258133 802843081 465251676 963408155 917086726 676110069 989378200 317068467 452477816 267938974 101835767 680722037 544759732 767557804 192738150 822277336 502959279 755323498 232502431 94549828 15998909 487889137 545867283 558117070 556659739 420014225 578208016 241670040 659382983 816715648 602652035 683811778 683297263 801483266 228699264 912138740 482525336 810312532 4428352 60091815 991959136 747275316 509186940 97150819 533233905 577585063 259168408 514454350 764004014 81394633 821084496 814074170 261791788 865405474 613460902 700515454 850163201 190936484 100693864 67193192 453862718 452357175 943857638 328618398 947308140 343809180 740333066 877566936 657022588 191288494 38424147 52404182 196369108 83823442 235992773 771700464 307939940 432941180 17674215 581582354 415167715 934572114 310436969 606054237 421948011 746657221 984070908 257064827 572123853 224463044 14601224 921607362 858844873 912611969 955843252 10328298 630007169 378850264 533959942 766935247 307522068 961970216 663506583 254840187 144485105 588239225 145449934 621107727 552198540 636018659 830345376 105978057 241821803 404252759 59845242 563960646 334913657 718389591 167312195 535031834 824048558 732006694 733865029 958326055 351881913 602670229 706453225 255699095 349834401 58955067 775995210 514054349 702838076 371231813 396843562 788030187 910071858 202816044 93643190 417483298 586453179 569464313 408597139 345475427 383651570 454935910 660919666 291724738 923992260 14307180 961516049 633333476 258698106 467619173 763218334 713598142 638213325 7583177 693461912 348232633 50927775 150973250 926404966 795905537 873284749 151181850 394480983 175910627 158091658 853390023 384953146 176738013 179849655 697780748 916153959 771910290 112387231 601315604 999203893 420272593 573717815 51091875 754519793 226798749 805935627 796662697 181904290 845470317 606078786 497158730 54379455 189157434 70526622 836035878 241669813 786490090 509476888 666624338 253473877 143310872 453746154 590624276 558455065 750824960 595790614 210919520 805364847 84492423 942709960 498882685 483076922 908426664 735405663 292291074 725442473 325431242 459687967 828892858 118194189 304409021 404539402 929329277 780101768 402019366 698152291 350670134 203739991 891204512 372245371 918740612 236808675 512578556 379498382 248774090 498332545 605793007 272265339 713329964 445297893 981172107 147698122 342004137 707211661 799438128 78358194 601218231 29224486 314262958 193763266 773640996 600456515 665298870 987859748 669945981 372930624 699240122 361264079 636341236 989343163 668211385 848124252 674967398 111546416 271241345 156723704 627690175 342230823 105891902 832025964 340412385 225472819 839233635 114317780 370501354 651879513 82557260 126640943 588135796 290530956 756098598 469953310 361262867 879747141 270079420 111117189 515743199 966945453 495233149 717261330 754405368 440860016 420604231 335070039 133283272 209916785 552373233 823300588 120525690 698682195 595318476 138206878 596624027 930243422 652283174 496908820 760464760 121554657 552873907 956686219 953642926 262151005 464703475 404080174 396673552 500579791 852853023 345643041 736457810 235298015 223747830 102242944 678954981 471364159 310006910 408738491 833144431 488296878 492068429 335201031 350598706 557214238 996274296 21704126 707252329 77176853 574907626 626215499 952396657 76365280 398599726 649566813 457086881 804101330 311830789 286265218 876703969 751041061 999576483 900037756 291067624 476966881 528815783 838561726 752246497 734771774 755862617 949998570 267417614 289477392 933033984 412462822 957856764 207301132 677045772 975489123 197505969 196017555 603689027 995300187 64569249 696800606 471432673 597935221 278626471 876354436 707646214 905239647 360210877 635473224 814340626 129243485 537052311 197692784 233173152 499221424 130859986 166058149 587830969 48386079 953861170 596942819 112928926 974799542 287370878 472290667 684018400 748848085 79073712 5077699 704531504 64924748 162959181 864446333 754572626 540765584 271745218 842045579 777141203 23933926 118683480 326253516 488842614 831105684 62171641 882035544 741922030 117118355 294769349 374458690 18689080 513523664 931348497 141606613 327517880 307977594 897676902 702859026 891579617 783484986 554409357 164557244 678725076 909343847 244948856 58419852 626002313 634845988 402951636 621608897 979143246 527068155 601832341 910678249 10058313 796328939 612022820 20291284 888917544 176913808 281099344 539082507 427045170 406016828 502165289 73219384 665960008 871076223 561264876 548859575 251286844 58272415 85979404 56958876 824610560 784086581 97848526 305541719 221483872 331046336 261901027 923838876 772139304 235388637 452662112 277118861 388622187 246685940 599694103 5300471 557323137 934511307 615332533 357189670 792093881 164787994 905919402 581040665 806864347 500257677 969541461 912428871 513953708 512680820 27818848 938737215 649860365 116013473 643479592 644118910 113154507 216928156 466599323 845460398 432801098 161971091 530166348 656345510 593258237 666364226 396510900 46960198 958417719 99793518 675571290 158444792 732571856 205914539 152570810 897350480 847803494 653500202 27663466 231554630 134301385 449033127 259597702 874963153 110340542 885156096 989429207 469700748 646407061 123707380 16617106 984864523 57661056 583466195 431419508 376930441 850307491 155505928 982162239 292421099 649033226 292947897 261646700 4054222 832486472 982350667 292832029 529823465 139113203 44935589 362610151 10877628 492237036 925942027 24185962 517534947 382036017 242420768 45367020 908949498 711559243 304117214 867231791 954018169 791589019 841835072 169046456 10335833 345573394 301582777 131637631 375627826 549007655 835601647 385916013 6944064 20747824 150053844 459224612 549225765 81835910 929456038 922488481 847661849 738918421 978963333 159014346 509311887 147268061 934813460 210921320 188665721 640761070 199196804 983518915 12431283 39261010 554289310 656416341 168336418 538299485 340181048 461120881 358837022 373984734 953081894 55263162 987758497 717575924 811530060 546476770 258084071 488180012 597484578 263120985 591003903 324853655 662174022 594329588 679406424 39995062 943781010 543475960 986420632 834179206 309466491 346558439 64756965 972307297 607603978 310381403 768159339 664669501 397553082 537387999 378027888 904556212 584214830 203021332 898014572 144499918 419910182 776721893 888833996 822767155 432747649 890507877 983196621 7109042 855091586 876479066 451325473 682663688 959839765 244888499 690189831 571769721 646805644 444699800 142676944 637031355 51946438 750035099 543096510 146346188 738004404 112561830 749549272 398214940 601338231 459105418 223435917 433017812 722134746 604269845 47876690 336973332 801330628 837456800 604463330 206206257 477356661 257533875 239130354 821502988 799337617 38928823 681054263 514692933 740086381 710180772 58219070 119819702 831287620 9717071 489377285 179851546 463009567 487759197 176823198 668149531 451713820 466048571 999567088 301208074 106539468 711658020 847326696 36196560 495873579 141742874 55976668 511960890 974207233 522401936 447978962 384580689 63087708 134617317 490142172 194755442 149805215 373978537 996476037 797676155 249069126 882097566 473862386 33331551 263038974 208137355 406693688 721290828 439003054 959484868 401499595 523918517 651392123 519971613 461967501 259714800 753999612 267716367 871354363 568497111 610793644 210548184 292767862 100257106 714699891 151196831 846005928 482857160 680011576 480610594 198080423 713159494 214459514 680162967 377107104 874003135 630332123 480451392 427306090 152451511 243713829 401549570 190210461 154325912 174079070 597351946 611489644 136124541 734741708 215371542 840637469 17580370 664637117 981895600 625553195 508764074 613555777 446060441 371872117 90340593 958324731 242943805 200949695 568316236 200358507 395476402 619308864 264455580 916926056 539259093 674233098 836535007 76256630 524516197 202581050 590060382 30197783 391637142 34967597 525149158 982872311 864579031 389976704 965294193 247633000 286655185 85099634 45983100 188518486 255865923 463746769 318689856 839617325 363405006 486788555 400564172 953357747 505863172 195852996 696782499 899662853 721143668 383743162 818809090 164031014 717606077 163808611 502210809 432413240 56352653 395546498 774413406 174258036 889555293 581196647 367161989 160699317 998554242 461509665 199325560 521484632 686532263 923299286 890365248 303068912 625084451 938796976 787550369 459346093 513240222 404498300 656696917 869173779 512144271 32844784 216792632 603379823 249461534 349831862 227585297 124446942 70297533 830860728 136629657 169555000 633210472 279801573 959481568 383305464 355382918 455674624 464777476 693780252 150855802 841138786 22945978 227025061 28608129 694500135 357959562 94673684 610230368 459688879 846823420 94420110 499587437 176467949 38310039 70145012 32290304 332125184 107033923 830798164 63722590 55957648 138620304 524318436 578106829 609586001 837274504 451693584 388981888 473078655 294144632 227522485 318961727 105190433 324128443 260890433 232357187 186993228 679670923 134748841 4360042 151881901 290272964 493736003 74286596 97741507 418287956 700066151 396188220 433418873 759837932 331250890 342689463 215711228 758490213 677370332 447873543 120519856 382174066 556818541 457258206 771927570 630588260 634513765 329180018 690892465 460010430 943205617 436914620 972657070 442428053 953926059 34045480 986797136 787272656 541515101 191280815 892960331 283105662 524408144 253886403 757500968 824601107 902303464 813218819 661064061 533165633 584655245 669589524 510036569 24818339 740382762 394050946 285420839 184862227 551849422 71859029 733124074 819283529 763877082 606704061 783692069 49597587 33416645 770671667 816999183 84208257 373612500 309494934 170228942 17691389 60095205 751261376 396320840 212886326 712001009 380972472 477783896 330734363 651440667 84863115 893692268 155497237 158798907 645112833 950630629 724035572 738876329 311237589 595406351 454119337 456057126 686480448 38679133 329882958 279989551 888793072 144961658 123761436 950185154 47878205 374099712 186264647 603838251 572448692 919113107 491110916 455378485 212844996 252492306 60857521 923110433 276099621 56749706 646578562 402460587 454857208 395729274 873250390 114295246 330254934 176271613 47688202 593105919 5497907 432358614 776527291 328629112 152615445 958641197 778010 997057904 287937231 6658124 103423583 91903058 235859226 321555147 102615922 175595667 622279528 904711215 222143151 590460724 36297442 554646962 130483645 153873833 290023644 77416179 893825626 636796424 917396868 395364518 426937627 48774396 395187831 645229824 237019533 193899019 669104107 692724126 276101076 515496288 605640053 798843539 884306648 926081498 494269975 584848021 83616406 298871538 168783653 208198243 38243131 619613781 432476196 342862315 304340074 700818948 974451060 415568910 87902775 23311103 91718587 132273616 406336408 885692370 663821756 657107818 75856949 615340076 229724635 385894336 279396122 120092648 141136681 904225388 3474500 150884546 202065208 787507437 469143154 471850991 723287332 901911427 583991519 69917607 329251458 530774445 927918257 346915226 551776024 784379093 198764306 231265485 252724579 137034186 727753529 162566152 859645388 236767256 436740904 596401473 653909190 89361714 702863131 212792676 850813873 650024441 100184075 303016123 763065797 291539191 79625585 700345553 201541993 31428916 569480161 602111375 189579507 555588961 43902476 952559137 88725767 301713756 71724399 780398392 48551549 93967875 631497236 969749800 754683137 538883067 427267840 531063941 944809204 576570205 660592666 163438138 89355222 248047552 912229110 997294908 829628617 564551662 657033844 494213703 100873127 496407174 921921675 791119708 491955919 119288044 393273281 196776092 934095721 962171814 976562065 734385138 438609624 511838789 574888525 457945168 492979752 833870479 533503090 656818037 264274601 193030511 577854266 10009329 953528392 594645532 537866124 414377550 904854688 167624453 645221641 122929346 620251535 79190849 976338036 522825402 429694734 487960994 76734720 519228500 566428385 42536016 2992620 958827369 133661043 831285596 384314782 44328195 61060689 185517314 479046592 733749105 541904041 437002351 134420310 379231290 415714648 772011475 243516513 430554834 211593638 652248866 415729647 487249587 890603834 164990750 391764262 886399410 568834821 343797095 417129289 824811133 699977482 922026956 185923714 253602634 701823201 138496564 299162612 72476933 165667431 48098842 662394409 360766529 170684051 791484993 817496876 242456149 153575916 613934489 524386476 752762755 116641914 698710975 931134290 954096529 638994561 672089476 364803524 921187806 182307364 131043987 307097429 490401210 924443364 183887684 981351973 322305130 949462897 106292521 955788055 364292066 738127268 898255022 500818355 239178219 148040032 534669851 565589119 857229663 81530237 69165484 408545204 849604671 929859189 425652382 436572097 913302810 248590341 631385983 398374234 129149854 995006052 49087716 484593465 712114828 468028632 959156655 450092993 443562816 299302991 834754814 883732762 32520417 57797505 57446355 494372547 164847668 620683166 145244246 512343240 747772360 975312627 277909243 376151916 104262337 681232761 396084005 252098602 519203315 665812551 252541089 42484767 152225504 829087461 777033057 786028813 535062324 873984310 486623438 940094553 924338836 196145708 660677631 823803148 173507136 254191611 121781672 860246700 859316291 382185553 115794112 97373314 915946274 888751318 271856400 424908197 746311549 650211232 503073349 803338584 648985000 288602066 64019522 211985995 482714648 859971972 150668641 555643030 964599283 720463328 197435542 490733152 565351079 167341768 754168136 568336094 200814809 676435591 830338348 402087906 355940436 289042053 528808654 709447883 61778559 965895100 595438253 779390193 773965029 742046003 582668750 832713355 968293823 800392468 417085167 555510243 912494736 348371339 787630774 742579658 94223079 502748892 633265980 469492863 321877884 107347138 316339921 240513031 757122436 344094579 767118384 901692889 393713618 216981113 520648771 51350765 38811943 881347946 395924925 10382619 120645846 530056845 206502693 371394528 551887567 868184003 460920390 290892449 897079082 471801486 945421570 164233500 13687762 943957086 764012072 753588201 246745538 283707198 228927198 792914911 78366569 126757483 651986960 128233391 108342659 821798410 506964341 778598161 892508075 905952497 49858780 567015846 407711622 800730193 525482759 266649804 578256829 347112322 416346331 43984727 219171714 636461512 681328727 577877144 944383916 964295281 839477743 249615752 623946450 119531913 16221651 339886594 402485924 872567599 225930617 259598818 721617356 471546357 76246899 891087251 954820754 876671827 607848237 558257121 982850285 278632000 981139784 793488519 212108963 497318390 480780816 751763826 691583721 248495684 611690349 485015663 799177796 84776811 300050034 500291963 778465330 782364244 245183811 262761270 276192755 115714005 348957828 87657731 203399236 726394634 372772316 780595511 604606744 252190167 573047879 908586003 263742070 422474964 341735035 592111741 757993426 703808180 211011134 207317501 951634841 782662687 668165897 32717728 113434172 863685735 859632991 424837290 992960413 711629108 923117938 544888860 178003894 322419009 919617765 567537414 209828757 141601200 929886556 285632680 294017517 378326713 404843118 7884303 341566201 552616397 56368615 598906521 492272682 74793376 449591696 901203818 240213387 201839876 62697978 660788892 171719576 941613561 137011091 183570984 49720562 688148677 282982817 33380363 671003357 801808882 416600407 196064001 579743893 740628942 67847763 167122841 953936181 436453738 733520118 227198104 161860550 532476373 575536896 659084959 2771900 623643995 425629905 905764951 193032861 307084834 923519200 540040723 732343730 929894565 456735832 415735412 80645847 745808222 717383757 843437503 418141121 209319116 731033882 799091482 109751173 982912542 958418932 954575980 523977800 22495465 576655616 148486448 756039362 570122324 975544536 426831874 819249824 746815587 689712261 810516082 203158275 273406818 64874012 499866054 837555294 577892840 600517307 613067094 678636643 948327724 661143072 237968434 189357872 188235581 917242563 255443333 701087947 793109698 290597687 294560106 191332965 306343065 459103938 466303103 312665825 830231670 443989766 670787233 438059975 716127333 20606615 628974776 53827362 799915294 393662594 837404854 127970223 138983377 675621320 488966182 895671454 392758199 647280516 654833859 57379965 939913402 334153420 608501817 610149393 117027086 949557850 482500581 831392209 200499368 220637334 702019227 284386351 849335395 965804292 480043633 502755024 751788748 926310848 737598630 597175279 210963666 241426093 113269255 811068082 831152511 459354464 390884948 760520616 69667134 741600910 598573154 338265668 23409705 201400980 834727989 901781273 806941841 417142941 920161573 350346829 444604360 65293482 698799534 730956970 489179488 817975177 274564565 948017164 269104765 596363962 285249000 130120271 954848983 285339874 931843171 940704542 637854083 359407719 911504204 977310637 730695851 725962545 507156800 960758362 928024711 740556789 706353372 726529170 202520248 893007246 315652292 932874684 158014368 974097785 985698879 564261940 369446353 38175733 949685915 706329556 932206523 113805104 488788358 685496640 188146041 142758153 787706419 298120387 880186906 974392343 454697307 452294021 735896806 14060175 843693136 70244512 362717452 838106790 948301703 528894528 355626230 961808404 602162260 873524677 940580666 861260508 342694046 174815884 579308828 762581626 755714727 124553017 90737199 745432376 429948838 530780018 711135116 665250428 712362156 223345308 499288901 938580624 119145464 95939278 616848412 769569894 653029645 427284323 400840864 250920309 35111820 533444848 243361370 689188028 271333244 52738875 504517237 452697689 913729762 392007587 734603182 215084699 171975658 533848599 315926316 134484530 109733919 413997858 943518840 943234342 22752744 890625785 54793244 535529328 532495356 44663847 653579476 513890181 259783346 681505365 283324387 147639980 851173972 701888332 703900930 539318698 713325992 356809715 351282623 889108512 553704077 755552831 112445483 644727011 282832058 342286222 671695243 688007679 660955805 801309459 553886833 276141093 395306075 516416666 103054667 812559407 516838138 992814702 398377268 143931075 740808142 466391867 1683424 375464598 975733328 634470278 317837267 437254499 765420853 887627266 722670399 748490923 618219886 535539665 749536516 302376085 89735534 81978914 510201601 339721917 608878201 559003494 334867968 993781050 321602688 998343436 396847874 342164607 940075676 335017254 799490448 796276992 115017762 93098338 974273936 388122160 127801389 932374612 483684688 95713610 236520001 837956476 767104517 249337823 372156447 972406456 193057251 801602556 994133296 856898862 154993821 930698642 566299476 133219064 595900558 751220980 207865547 856080498 665176947 157573794 56133740 58186547 555070584 77842959 353315350 138318579 383166252 573913272 349172003 857608215 234277122 568277149 107389881 837931997 501642474 649256029 76352066 182637580 111912514 796898433 408370010 815091158 411736514 878113412 7822473 138927077 505614025 160663202 910534531 2657385 517801557 114700253 85080622 105763918 594700480 545026557 217888577 590460141 660045976 661311149 979909129 535825877 309324716 160496631 854097749 317892753 799688871 46021065 899851323 661797091 574634151 576920961 69019309 189730194 513461461 890188788 382357180 849551876 734570441 955027491 467965875 25681620 835720908 57848155 607869286 629392293 421647080 658490299 293724163 777975426 108694516 228439859 383781372 670178584 304807841 129928110 950502771 12406094 222921862 979169544 786964415 482934820 405122911 403479152 390086224 52384051 487869265 90200127 231269183 633524277 314271193 128486820 868922597 149086152 894168351 236407534 570700475 375966460 177183685 279588674 85103319 332401241 954369095 119598265 587562195 553637417 718855370 699531623 671570159 734001419 510961636 677331924 759924964 190753332 781449003 901271612 375304079 260588391 553687101 528334228 25845555 461368262 305072243 221971677 549032482 952316664 126011329 146036447 756430857 38992318 127910729 455724669 950600120 730934356 161943657 949976956 639160992 1624014 991775783 528057302 645198474 770380064 899615589 160389719 839531446 888442659 440925334 798693870 887453958 850810946 480537548 500812634 668373735 407941700 440555881 836158132 937155708 185587808 578860294 830845065 389883909 595241776 414015204 73572737 644323556 181951752 84863650 945611841 359996265 229715651 29114562 447392947 378589947 872894128 246958527 314706495 5484581 473120973 181621607 289647986 825335327 62377930 364624136 909076626 311377424 305210937 496303571 310533724 108988594 41310818 66541859 7786177 995267199 371707173 430702583 737955305 261807786 549884409 474335895 661901949 976476286 264193873 420336005 192096307 614066033 7081673 773279833 939769471 736511488 256931809 894871479 99393270 197726211 614384538 841502043 103423970 818961409 486711335 431142416 564460923 8132559 50558532 384310049 397420010 722589045 955661278 965687176 137195006 907499078 378623913 198416248 98117876 479747824 690136761 24045008 866170136 832452362 980770112 792497025 852412743 913528829 547409888 948149524 445408278 674117531 277586593 321497280 206408598 753559924 952224907 596255624 108801891 143081830 118363881 748576054 160948736 787121653 941084343 550980265 292903914 372701998 687545924 917728799 637543540 724440222 860013871 598408100 284344850 710790711 795001389 4118509 954710186 723444240 807474079 813892575 233824677 177137861 352637032 890411983 431605870 758793603 108410013 849816037 208445906 300405630 898076297 314895464 153441769 650778904 41230661 440903520 468345182 182919543 967214395 560505708 18684684 653405744 125327473 65160344 670200288 904236869 445563654 290424880 3203422 106228485 134817921 631799917 481966132 577843571 441747547 725853030 459653314 834838573 271761820 92506231 82896483 292378977 863774798 516163741 116021893 92611558 429822969 766222762 838025844 270832374 919543512 970678673 18837416 476846431 167626012 422257989 652140428 213321342 973128766 477747241 429418095 381541545 859962751 336267535 319736960 320736293 809051247 499248730 321101113 230503202 892413237 222524604 908935235 916471262 149204979 335463153 750576598 694158593 258273475 114484089 379691308 919311348 313879151 877999059 611330509 148301932 468670651 699909356 586968740 132254547 339687272 231520189 697493646 664282200 850237921 887924905 11772510 916976162 596400315 575930888 232278138 274843498 273998422 574050704 566117984 956365253 674828780 716880376 318010013 507795564 826828461 865684540 258317526 747431019 203740542 973010431 301808174 51352002 30773721 615110090 626703745 934318664 779086582 808777656 49202361 999303406 237687203 648999115 811782207 125057933 595570387 798187770 889793116 887712106 134545718 984056093 83574824 650616393 748819082 155966080 611861614 966948954 375698412 418592342 152619543 456559034 585351035 758046493 599535071 982739419 763902351 282238721 382951489 161613273 84477314 112045234 655176219 604222576 164061302 961601076 42004452 360026213 462060156 3801976 127091752 143278701 755233556 250551070 253030475 161101949 369943399 228208254 394255094 277292716 481867774 571555200 813602114 726580941 56158530 892643207 870599244 537009443 172207586 352347279 116170706 812259502 658469899 880011782 996587003 138215406 50793655 516755462 657744028 138254385 184386889 461782100 123998986 198915000 66537476 804965444 536685239 456409078 657205160 142849499 137257372 629167944 364133333 825123577 494228863 729192726 985386564 67790461 295271735 476792013 178234583 541560923 624194361 599780143 389172331 313545929 526847880 70705084 341082744 880965981 567128728 726140856 564789444 194386549 521823225 353466618 366766326 593543344 910656085 630925357 974726864 651915755 826968671 709662674 652496802 172991746 767293769 64915291 641036929 537590973 878072586 241324829 587146901 316936223 439900535 748187786 734682296 354897979 572293642 297405341 945592101 444497361 230353479 390466010 225802055 609036273 28517558 83150736 934605697 739302765 881824191 152987218 468588216 508929334 710215558 340153125 101161992 268923613 365392931 949425448 370522261 411555664 982432066 873935066 651443474 100753927 270576963 217273633 890354666 985661003 669452515 748717906 107093137 551164591 141690627 482895213 984620161 217093445 139333226 700908190 716473204 345482865 212695052 543197161 407385975 340813265 670968159 914832556 585257804 382883089 885284760 74992964 353071666 952654297 358953224 59962372 566075968 188919686 539450279 196371269 742999238 523184062 769480287 82963538 532318244 623148854 428034667 454440195 744840610 934737777 981899663 837117856 19064746 891364372 128779799 434586991 652345046 855322737 184732317 225666091 740175347 612811309 864627319 529257055 118554709 860606524 320629096 266274897 898262946 595365702 336298158 571268410 843144636 217505660 717051855 994633530 784424308 571979456 959706276 938292901 158361085 153159209 554107961 449173986 255001075 110302246 948885042 356127652 59158715 529272694 503346901 89603494 666901779 792639706 87278711 37249259 555923114 728932209 404947493 967126353 940212549 344180733 593373969 583118804 243815359 345759154 266455121 566390293 592774827 890901199 852345829 897667819 528569113 161640122 865079859 740150254 213488938 719072660 106108563 173831678 440677106 85761662 255043109 160561968 240793034 512899371 620463119 568807285 341230163 533674482 159678548 582512547 43279914 456642016 729727289 839166789 930542408 303260211 186811358 413682240 351921644 483639210 632002821 500294016 276540138 286164268 857465871 671995854 403065519 471217736 94941952 841991674 215274448 576844437 313008791 792585206 265003135 222474087 377689678 790326512 777428281 972983238 609977021 791884784 253244319 453975408 604705459 69415263 785768593 143108527 875044843 757051632 37759743 854383010 224982898 531110823 263694262 649109510 785905396 554017582 455230447 127965683 536585377 670210951 988992204 71307423 898808307 72803703 749059220 111802960 631422001 302676295 440805815 680392711 418782029 474305271 450586373 567959622 277355413 685459446 117290130 747896876 968303744 274674293 935311280 583096020 746590925 962789504 294308570 584683542 832555237 694386949 569221257 99529031 331796885 376853818 59669488 193490316 340586080 12847836 973283406 128167399 172984014 983704 151939106 62035743 889679617 337165024 640058119 487841406 708102025 935344999 29522610 584970594 893311297 627376670 893508659 72183610 703062870 355092258 733085605 77476517 137574387 692137800 968095850 859112756 506722801 379241236 293114382 183782330 650323884 16873574 87875380 893088093 388910884 313776487 554529289 93434426 259331089 817728701 739559305 694780896 945437037 433780757 828205300 133145796 390480515 90849517 337967628 828472398 49529736 544537541 479428465 293810215 63537167 981782054 505944227 643738144 890632133 929136286 41341462 150204381 479258477 339557021 242810100 161872658 146064830 558763343 832982111 733693589 213044394 226869836 762812650 835043268 432185177 544595462 358431392 666579978 107209632 484443528 766975892 933895587 965585152 701355679 39007066 267950832 735604842 878596657 403173185 82650555 524339535 237121090 891797891 672138469 65819581 746890195 23230605 637812721 777025925 238159274 325793908 505868080 8817367 310992059 282082519 894392262 72708375 213104485 685263620 93105166 921502058 121349062 110999730 127630235 164739452 42142168 4573505 23131430 397513699 537316879 93055132 801934184 142404732 821960343 687036438 572194227 147278071 151949320 873332520 408200888 464317674 377330452 195368592 792160327 428911590 250804298 466793375 835421179 501548826 924903940 124154069 130660207 715360389 968126727 658578447 692949805 882574106 888004651 687539912 164392316 909527955 175564879 332376774 890747374 471562792 570250633 792593794 693361563 621334343 465993504 524345823 978463854 880911942 566318016 302643635 789186311 852750915 825799173 707625168 966954843 368202572 126324175 636796763 982964870 424409859 242967184 733496055 37213394 29220597 73143704 315291718 525183734 536849989 991105411 982787497 776772862 461716530 933637781 126708553 885340006 154528422 715737918 957456506 18960674 10356620 900788561 194597214 134698403 593564029 405085231 567001661 266434252 496827488 847893233 123893605 255728919 546123999 928455495 533637428 180911770 910142499 429753136 726539894 189326510 954178953 258198221 709095875 7909471 811452347 121009555 378865516 331016211 394040672 320680702 613435209 809792900 594576232 588098362 835637745 67070941 771106216 989461455 339839841 173428288 583156257 169413203 458715175 276484773 942380216 918484073 226368965 367746725 904272509 698595741 613845896 586708379 118465659 10422909 137870288 100686247 938818961 443531237 572923872 465850898 571056967 108389924 852601892 881617251 851739757 418855472 834710437 217476476 560116296 638162978 92733433 76813526 780585734 954110827 322542724 27567633 240877688 328225632 728827806 551638673 73904903 793631614 436756516 648271576 528380801 838515319 768684874 317102676 180597698 60860454 592130139 318561462 694327734 79188291 772025675 111733020 3581623 921995559 326914879 57221773 530426136 645017725 989600021 984020564 880527686 880886374 846387037 824704934 980970110 360147580 614058673 402006335 637772061 265315278 210887123 819436095 399426346 635106634 809808892 455386357 882587037 411378155 83836320 258094179 381825702 423411787 129641181 807324286 820822042 906697674 860072216 318103704 418327985 208220997 909466436 676864901 99772808 82410265 770896307 763587053 480293305 265870826 344082818 814405611 996882258 545925970 330711921 75473187 551805407 618773393 372293526 245235795 29842806 55287256 840891932 455127273 448005789 645022754 638026238 875940328 44349153 219972405 265570468 909281133 503923161 287022088 422410982 511954393 503954227 935592756 37784364 465293796 828810802 453696022 551416328 984722171 571594866 721092899 688867028 741591269 236867021 626219360 858410231 295966742 318570401 860793496 314135894 542598622 470155509 500161287 394565756 145311968 641009010 317185737 969338572 503973555 805938305 184749652 186672144 788135685 727534587 193037167 389841233 192111007 11769566 615085531 55808876 384832194 81602767 204032399 971456732 132485311 50234054 357353520 597409125 657051705 200675631 59504075 324452231 722206895 275416678 810094765 878274989 580823842 710153291 598408906 608767587 276937798 707395705 745181891 271502978 870334974 974436542 281178747 910152865 541822807 845536448 468010920 80830921 165378635 735102417 264573891 919560570 997776670 518258364 726345400 288423903 45785597 683551636 941752244 424709200 219521213 377047648 422916016 687452914 485717068 978360146 510704697 782728453 143007017 202238172 155826182 214042935 514650405 945254365 641742910 652636064 458339931 657127942 275857958 874826726 633686673 47952701 792676952 236254227 86610236 344923096 820452402 226083711 603484160 205240164 288487690 811653018 813179239 702261252 938353848 865805977 149409999 513143197 17845048 638814440 970312689 525659 478319397 49284602 932598998 891898724 492989814 604868545 166072477 639679048 985493071 175940948 355467400 977585154 142096855 83870080 859827775 854595862 924138581 937291902 841119149 817249984 790563978 802097471 907156021 144521948 620343712 767304560 584176053 722976782 187319778 339717884 293000110 19359645 422066772 932209382 871434255 953815281 924218598 614065031 540295184 394236369 899476289 139662434 923469201 660337483 674187572 549427560 258906574 317718406 536102184 414965297 70472336 799189550 75531420 378933086 706478047 337922339 911446012 346124478 407644145 347684253 879538426 911126719 923842959 13608744 466397395 502391265 833217622 362319863 281838032 721701543 972767213 870169014 84007500 433324685 379667588 836713077 613213785 857775595 513585757 513628307 454574820 747525953 903367921 857690210 577678846 668915478 200560490 256005592 350598419 322198493 452188571 707133143 641380274 271095353 150006134 407911314 604806455 364092841 671614760 270104953 803387761 515167552 785320607 548722794 204931095 440334029 448465490 765611209 717270229 15899083 849669216 200933363 509431102 525696337 974616537 445975442 971152325 312355685 457691353 50811323 495541349 953897105 439489187 218221204 667364051 206361590 361077896 163328548 332111559 213232652 916426587 419104588 401016183 5380854 504439878 372319628 351425557 685139925 775751215 624016939 211490962 70127418 860457267 667967762 365661346 549069423 129383946 507434496 408428048 981276516 435425541 207493206 195749667 210215516 217039324 400593530 404611295 415669792 927027430 153143378 277745584 181743832 216842585 294915240 247055932 827196518 32803907 471318185 220630473 533724653 85227169 28972500 404038665 669011058 621113590 516938210 718474079 320199882 835407767 878182152 737616617 745952359 838505382 361652302 107201651 290845787 355610276 801244788 176592999 413255434 273825683 574998866 935911036 891191036 40382295 431717492 329735715 507737985 838369548 206175128 453615121 854002043 209057781 400522154 298710466 877376907 309377487 411704426 83640645 946271723 904189672 580746478 227633661 689099117 196082941 320616355 310183931 477418556 776427346 43348337 58122036 979765888 994638434 412747958 602367260 99646203 938687453 859234255 98877715 399316981 554225033 627626044 32753235 377448580 788123239 591057452 591712690 853927524 480391193 151593383 181786237 275285078 311832359 351742833 695188434 834471628 556040640 979882592 455988830 97692676 637000204 368346996 804644316 3779227 654885646 810173387 442346280 212036156 499050031 741308161 929501007 232920039 585164994 317492516 942829817 259893810 908080003 946836478 540100618 708694698 96256528 342956992 254429352 364976732 572582794 508526016 441772460 963782788 121775482 906143175 464921193 106635711 393024946 32869227 243677118 515301364 129120723 376146058 472834983 796277268 268345884 274052572 614295652 531627075 838724862 786269195 66037824 310691274 543990006 50938428 991483613 490108417 662532219 693292918 393188156 182875106 264765763 729511155 231824307 271803682 482718460 229088220 589128459 406772679 159606964 920482108 562355473 744741952 471770131 331153611 698843773 995318383 12585572 255470532 29966165 863116783 164324270 755561542 212215612 133464122 709360713 163248943 211222354 19570150 312844155 349087478 954707881 908531302 936311015 997982332 615590474 765051420 191824793 126324914 626772692 325570520 143247668 188701484 515207360 769562471 546622827 992437718 75455584 63483175 469638625 502950350 350355041 349106740 419899058 444183907 937740387 319405926 337391090 770835844 74475801 57668746 761861370 325339484 834454042 777055441 861517172 719051096 703179358 442278131 847222605 748771980 556413332 190826926 413971231 427451588 3038300 186317911 386883890 717028814 737018636 784610436 615815943 845017105 806186494 951829518 788672433 255645639 64003199 637423333 46788361 927954783 774830474 427229608 936245625 321652406 324724280 717783668 400255844 868355701 521818591 593276147 216566765 190675731 579622094 667539847 961609086 648303733 630726572 171135098 748270233 193305624 994336724 913320530 37881594 150870874 483202029 791870403 808223525 381778786 809753436 322585307 26759239 702004323 111860285 345906825 95380837 316839790 763185275 577870056 175693303 371846325 545506467 301253707 897218256 954063197 168931331 692321688 855581675 849041935 772795511 291305290 754860307 814898635 905671298 561851775 10032458 650534766 158991975 965721998 645328744 718276703 510664183 687460075 577918136 443876028 613498467 478176890 288073414 944208689 73313765 612276004 654291111 36903880 645550695 436343282 870934005 421816683 163977775 401384714 30841816 79554143 774574538 363358862 449546140 932057626 354312175 91483950 133324089 258827304 363438860 857898212 738349423 192669638 137813068 254427650 560316501 265344939 336911154 645948247 753292011 215024888 700416721 621434521 833319978 994060405 30627798 569089025 189094649 573816988 62355810 813395322 148037340 231867761 881702208 525828716 47687767 449841180 888304181 326130101 104681411 199982662 723546442 688385530 387365619 959707341 500644808 86477866 256861578 165778438 197206368 730905484 58849210 775169403 136120677 85521138 428158635 625823507 879057121 108686523 882921939 522401841 908234435 993086755 12726762 367350603 850982156 279839499 360631134 806772865 271537632 157168423 533836538 12271516 491388679 251580674 368317592 966500139 702175971 218835605 335145701 496166544 787003461 882980493 52344563 752509855 933980050 68813955 417383195 928359280 390076698 879747759 138242560 114917581 33945930 396756025 901229697 171805753 412690913 410101433 715690003 363260238 457438018 938919296 962147273 337087318 720201348 456397884 181035037 155624472 382103893 959107992 414476757 951952613 436186410 886024207 163802831 474465683 600175457 717832832 705238685 757402447 372227615 346063334 318865247 527493644 42039397 27147395 191880810 328086547 395598075 510720266 902647860 29664877 511733821 288443434 600800657 632714090 280229898 724780552 126957271 474289747 488438572 65125965 675033582 405892852 32516734 335219700 680582011 751305744 196298164 25735566 889569231 859322354 228850251 768600506 499282772 467067847 199583365 887625301 199341775 576591714 183684300 3980828 239825753 415614014 345991711 14229573 310756942 283883622 359657983 327201583 688518387 883343420 54619340 353973870 304155877 673123216 792596847 716420387 28185945 628762771 950754279 869788342 924926279 619450080 69079018 679115282 788555369 178337358 759127886 725992251 323235115 320638157 584672302 434208229 776650445 409746481 441958967 679570940 10698214 986044927 514284425 617926986 488168453 313682478 238985663 59050975 709491068 230984039 264005731 61362764 758025037 161436129 466211536 896771864 763862928 273728647 635621414 161473097 188028434 933378436 211442187 105197082 420437530 559792110 107385886 669275513 525590833 890178293 65299141 458224164 660270383 333714677 336604291 285077575 689394604 572427615 474000852 215503945 705304692 412888398 528484623 705371579 357268897 108274335 349585982 124948837 68581514 982951834 732131551 894210791 626974546 734284992 806332843 686247109 754208607 396338260 899757505 550292200 203424915 507514133 821790368 705060730 148444836 377299333 235366114 131721721 316098734 453133829 351071254 962905660 233064269 538497345 44826113 640414931 785715973 337392534 191289026 796338153 96303634 820312966 579830064 247766251 138417337 52013779 684198612 337704656 689425008 116916928 1848048 259813563 782075582 887664548 821389167 195666068 131713010 138725887 965901581 563542759 612299836 249973189 427957559 208012617 632528808 202743028 531523748 209880401 613558223 649067898 999614023 256678420 71768387 481453745 25084897 513158156 705373819 630677496 740494158 435626782 292032180 752999186 671012332 703251328 898833214 794932302 73673570 920936725 167906789 355302938 619224109 169548550 607106449 87066017 377405315 26098383 797091037 658276571 683989942 489882299 586961132 491103019 270179702 336295472 173203849 749894197 100462869 118301897 258552645 843526173 731396100 557178219 111991499 162262539 362920169 124534500 631961645 692677784 815426492 112759190 149153297 999346931 877016206 250062109 645777893 546511663 711552059 401716068 238539515 53695281 652839114 217163234 758859405 483597362 380524480 202967649 411809375 171871278 693968225 398079448 317571895 370958283 637806449 239833947 850481108 900373808 446276996 140822748 305886335 254715549 436817150 545038265 439013270 340666154 509041126 650561762 333765211 826554735 454758189 402699537 214937989 51440342 921768205 3235349 799788353 674360523 863087964 471320925 976977218 694548979 894452666 38318200 968208949 951040627 682100828 131181025 246064477 708466963 610750067 153015815 949238099 760013160 98226120 180547038 511537702 515833528 592301100 957482862 251887752 349129606 699336356 505930730 821758841 613833135 696063178 16633270 118092884 137720798 178050357 546826507 361697836 930179871 728306142 449044534 36005194 644378092 992966395 990544461 28768600 469722974 855679384 185014150 129329804 349197474 534015410 843150102 224914056 405927024 685480540 303980624 524540811 627138024 430869512 51825943 238538762 434249492 130522862 977544366 445173408 23590651 667330597 502651713 475132220 309197480 724428467 654265569 472240560 706593280 825417499 37224949 881922681 719854956 516407354 208428121 18610310 229715201 89976451 162826913 455727097 819935851 727914585 306828685 345224255 944457572 645445852 656897665 834400062 423876460 610620060 250096252 464494898 69860789 431162285 492492722 933810906 158291046 400211584 832907008 191738190 824393610 24174436 785412314 5910621 643121970 459042096 228186789 197785051 72576678 790229056 460964129 314630892 402520379 724297910 799416579 3630427 262242567 277052450 605539281 119169731 306487775 164994955 731574032 459526725 783930490 704380218 856658038 696159528 400602499 627497972 366410717 561325940 990935076 778802570 307236117 559738399 122628367 467381901 22202165 583537832 622608508 292291303 258432865 145639708 279351368 4018465 729211643 355997592 231855724 784121038 117815672 918410146 403308815 895517405 457629741 394067277 187735305 304544068 238045433 393609150 42240165 859403460 168470705 742146923 50688281 673442031 200791401 24062859 925229124 619909129 553135657 737599676 763224920 283926805 919190380 195445796 482989522 606956658 237281238 800146156 762788383 73498445 33152954 841758043 542843910 723700905 790482325 666898846 159587924 823756547 356303420 341593614 639085657 703089814 330506226 909688184 260956478 773174737 138146425 115792910 162187698 749024482 997437093 315737073 826704359 576876235 873816170 184455383 792376643 775417324 460336842 278593144 512347424 184501444 697730132 583376786 178354354 587689351 353604051 89733501 789578830 769017136 202311389 135745210 138168944 718986023 822796964 690354613 724383118 53573855 370904604 151044244 939055294 972594751 894920403 588087826 374566896 860338058 611690121 672315847 874962300 622399890 359481025 846754228 956450254 429541802 867551008 799720268 772005958 562810270 661215542 962540439 574070350 879762984 300901289 598378326 622780502 707896180 201302172 11128983 534871282 132807016 13739701 124955195 293701336 467031514 507021294 430115788 887708147 237202396 495523095 846380221 722154020 88614471 955218703 285093901 503572595 706251204 1830 744804567 567749197 569300008 610397298 420767109 307712496 21344426 732081798 583326580 132892354 921012504 636399897 68503169 168669195 600314018 741590646 644157461 443030525 989725512 202274793 946851655 629713111 881882024 989748830 433654723 329916564 861873752 55123969 175147167 949159494 711782812 183677506 248523228 993310473 350123205 880578030 485942514 27661431 691384210 269918818 71800647 711542360 709297503 903456889 895541377 21006629 851709607 28133931 980632533 327005371 72407203 516510507 289847827 624642113 328875951 841580307 930624130 952358119 778212624 343945457 352114732 375477731 228963589 601850523 545002396 270924961 605988505 438847026 239402621 538376127 163669936 285298273 458226476 664227447 508316345 30824489 60724691 322892177 127879340 63781729 427286643 791463950 350473088 801360623 302183784 1215820 194860908 844909657 52085036 343701262 645418756 433285922 288398203 771121033 719704079 230505404 11215504 120770676 284988168 792631134 746180313 830218229 936030898 725101266 942007782 759172286 139720727 699757164 768573551 456330190 282766172 613328429 804106128 418855320 836831253 928333776 264872534 420462330 693169196 60621983 394367753 603505710 557346103 807242745 24390087 525336321 680135840 622445350 466468099 306756572 128493248 49809021 921596338 46463577 989147387 449630163 201260828 537614723 636909138 847782961 125601500 918282176 164034962 84540672 837438509 702720702 738522475 958028703 435803654 557548144 802270377 163375744 201210310 940278139 202031503 293393529 289051157 377075803 275768661 575592229 901364957 173259806 443286963 614130627 938165012 706164632 477685373 956322304 325895505 49589606 749491356 446562815 581591336 778279473 432015146 362052527 766531246 229708936 584185765 411027802 642051715 442739575 617275042 700707759 932520984 579977140 726665880 878194507 713344497 238287246 48548533 11695391 291432491 952451532 367952006 930455179 842895769 93242503 973507957 39788527 240995542 736726649 899973220 304773507 851505523 677610245 910230773 102683988 772112665 33874248 135454736 556972081 728989333 754557487 983202872 976899212 209415422 36558376 218494542 264011699 676267638 900022764 791833980 59451038 833440842 85302757 462033877 328325369 274661446 297343920 718885652 201463373 464956576 21721674 228138583 922384265 731651981 370394123 862031652 627216458 964570660 795606717 625487344 329580824 567110417 886578025 95571536 890975801 451918126 931227735 881899271 556657496 368269537 515370398 36187328 43623517 58265804 742540582 230753715 887271327 968686328 426134912 94159780 288822990 732446012 932835810 99995616 474134825 495141021 312172181 438412602 529029623 615323347 244734786 250835020 300862627 770079021 540601305 772137647 280951321 291682962 772573787 208604849 457490704 220689242 49950234 750095405 240652425 448644888 231058795 695411304 988747486 856653589 707304724 267567407 544279323 482173641 210262589 781882264 817085674 570314920 589970821 642985447 122890692 960797337 384822851 644263281 934065675 24355517 679972570 298033492 842109325 17695388 891179624 276613300 916772767 638833584 575519314 421990333 590615293 578344982 729321604 504135118 403502606 457306232 518939752 902934137 484721869 911216501 610787976 913268965 342792476 971634016 484988115 946268424 441375320 385583796 713705751 939752950 730944862 37897951 843214743 644576914 222305175 229069451 306568329 560643512 875477397 846363109 451023575 638476604 181616922 358963059 740436812 180102642 175690871 14137128 259642233 420369922 508836235 115238763 573863518 570975941 413614306 431678769 685538400 436406010 603337197 820346524 698808947 386966368 787314597 963406112 343265071 833014702 163510846 390406672 238519905 847429363 418446271 686686573 59451472 274872958 280073099 454636773 920916170 520866000 363241424 680712109 586517309 963599157 469901390 349419686 683213825 268812867 75985443 217999117 380525947 223216808 628408555 695713675 569104076 620461532 92931218 817556820 764005610 942081086 943343663 440343631 935559655 784513424 244830806 36663981 456013161 589252009 925461753 313368304 911434539 772141195 164996267 51524418 786727695 364909691 10898884 535873877 817442538 251930564 555880091 99682600 107620666 84141450 328907244 738455618 843394969 893582449 923735202 779011691 254647245 781387573 375424382 777478318 910711762 965523954 621729463 66811389 882956500 460176378 988564525 513118879 887149379 726100723 938601344 833945817 230246689 555028885 859325656 177018732 397180478 110938459 678526900 253820456 334905124 442612046 527887521 777715540 160629736 672238901 549632141 859079681 122321001 705769270 894164122 976721648 426858685 887296748 889833554 576387666 666488441 376006217 938270433 745467504 734696893 705453778 594269369 910832813 932405023 507657786 108389624 593534283 143308928 720237153 641343937 182150176 1987609 569967292 863617620 45514119 679792365 754662194 376032656 280164852 58772970 359052093 645930718 534228817 802855701 758160725 643188865 644931049 191812147 256839745 95207337 937113005 593928563 653232286 267560023 40880255 305969647 316842915 679140509 929912684 21411144 285072046 59796849 568930174 252611608 617633756 566432588 618273925 494043561 436197861 381043751 764319653 333399663 686406977 246025437 582932767 154593927 986735753 458047327 693307227 486538933 359690009 975662759 868285751 338739876 451251673 878304237 77820816 110480938 312464510 509927574 272378106 626216350 875828150 877033246 128944115 249109000 437533528 362708995 892273579 519647360 615607845 938286365 106531980 107184792 819758413 124274649 427281649 797353589 486511941 209269702 49902341 450704968 139012753 702875248 900242028 440758301 765917433 585218085 950405642 405016077 178872164 748562334 944390387 390560993 620630859 648262379 564013307 372847491 294075777 733102886 17742133 774985836 946351287 417039575 418027006 267856457 590705419 833986069 281887892 524072989 84568201 174436421 16111480 422669572 32172370 502616067 678460436 524225775 30436691 775535749 542446596 534265461 292702774 366819205 158033020 541349930 707391008 215596425 453889124 749826534 119617768 156021706 678768747 281300021 235187305 160881999 578812795 594483377 695184656 900636448 887868000 170974470 641988664 123707380 658757439 815385365 925566793 32621563 513588249 591921098 185394438 217710114 166089311 517870716 806747682 529150734 903348536 991055308 491747908 894704951 348327122 699477455 278688348 970039804 501151278 497316916 479724042 584058195 137962144 492952934 486411736 225279976 493553893 276400624 644540003 890867471 934467567 501469811 756565401 695365675 69548762 552529858 251675431 762688044 371770930 582587419 141998199 963665150 931521521 648545208 33270448 651865849 587325343 753832522 643959154 910598278 20962332 589671115 773695607 533716443 456042814 290919819 913465610 590171379 601684460 885659804 49496281 802468550 359343604 998698581 212383609 378572612 853925789 365993512 523198668 157391085 463284834 536634098 720286453 471626647 948881966 465825549 143288135 349868878 989248559 149921019 551491532 308977277 470992563 19124485 121848395 849490315 829115942 386915349 493597618 796543763 515177358 291617588 299129608 450516863 243468756 413981812 799514062 75785918 640994068 870877835 94212934 845124775 409156473 887694699 905589151 344207727 13046632 721566176 619107194 477380105 859419488 922417008 245666081 794429315 480015003 984981879 536649462 112063170 320469088 482884102 484857432 430653955 475058777 754457965 28496640 121749693 19134731 61549576 461485572 684330224 865103860 787037814 217854715 471875031 320366881 721392849 516493065 422888850 839528130 802945737 460451500 595847512 547756393 32085775 473831104 794208724 481397028 326658908 365694747 92872977 119747259 66989148 804833441 757014005 296333084 301099033 755564774 379513817 841535978 879864681 472728077 375025814 419995267 690919715 32676379 598548398 323153394 291004821 203499428 808790407 927142028 531618424 123149646 400857393 244855120 618618438 43086640 322385507 225022326 172516048 111623382 59389048 263755426 403463391 811222738 423977260 696709568 135774897 987600774 522154880 703426954 137900663 488662456 413101070 988364479 443291908 294823783 706034234 325700110 858552630 901661465 143397122 110234375 135634546 985869762 922760592 718247640 5250914 612884912 581173917 966861130 253531177 994332441 797898354 456159722 515699234 253776179 801543587 684714007 115107663 971559349 552383449 207661932 705040480 585072453 118429416 575840885 141909299 650074027 617137369 416044530 655376229 262503034 640595917 450154768 353542254 813644349 110216193 848536478 232904576 990921290 59406302 800982575 672182560 859356004 42292189 658474865 974270445 648843895 727253245 424935737 645358509 288298521 222535023 279900163 15284156 578933885 649133486 266177315 310629693 431509365 517289359 168513922 68366823 761119108 681344389 630968246 823051373 471798166 739247720 146363024 537240532 80125253 166998985 564536102 293872996 40703256 496609556 24941596 459368647 579644649 392427571 789877711 265085701 457557729 549360925 592812860 256607444 815321061 271801972 799832832 97618434 759924592 915302855 259451534 627687356 386109981 533838713 607334881 421593120 43139863 645792807 270764894 683324700 269476559 375910202 363756863 18030318 624979238 54039990 126092749 210728649 26365207 927357869 736327107 211637299 699585713 537218601 469927079 553478795 634697739 778157444 906000846 767538464 742258655 586705854 29063899 623772011 705106977 754993398 971138677 974257149 173763928 871986228 925727807 391841423 218429378 215563825 14862889 689482285 423103466 81128780 567584307 202942778 71434343 833005187 842532704 975020997 727301152 127383713 109387340 217642510 432235651 428096371 918147840 868995180 307312484 142789885 267294896 543822127 21015918 947566490 418213591 511466499 182069129 305196721 754092156 973882873 944647795 759759623 420045087 398726281 839679328 750028098 350718607 357501607 964936559 18069863 697278789 17098952 303540345 9063485 416589899 296856519 214435938 725956543 339255438 500167755 597178001 589868053 441219059 45712405 827457620 814341508 376751196 832437186 191638787 550768934 862160913 359533122 159893860 732801328 305418387 164899463 122854005 24525933 78137121 443036356 51581412 191720311 514813619 281688809 44246140 669033206 910824379 128977984 323155851 877990433 258406798 950228255 357292038 15000520 606896846 79424948 632460707 367008069 331242868 328224050 458077378 288995303 540163502 580714864 385468194 599824161 376474288 617322310 75771721 141412707 768583916 559463826 539161229 593469901 989005645 190434167 305766511 579492759 814328713 809272511 47185065 346638249 742743184 27071470 121926208 736679521 385971328 301519805 868594555 70980802 483654899 474354134 831266823 12847313 500301204 475669559 42316314 193797149 797619090 597716785 277484154 796226241 13842387 527594341 491236904 398106984 436502031 818128964 866257169 810085462 425848662 890801936 554010771 728087071 658153665 241625250 381957301 268951853 80337269 34660825 962935455 61763222 823942383 931246925 607114663 628190312 110240650 146986190 483913405 762885623 292502667 543847904 364808794 560236364 51635656 137908856 970633391 517137460 700953824 797536807 804335367 942848092 390953074 906438233 927863432 218110328 403331817 342923562 434843365 786727267 341052844 650590853 358324306 494344674 987580157 838911560 690768507 128767894 828471684 84497488 241413600 920346523 447501506 87202084 415189484 920844042 378105145 106960377 758636036 902637664 66662029 217919942 944457336 338561861 923287737 53328534 245501897 14008227 153300222 435184719 457155256 116676801 966830365 731106498 39371793 34405160 641155458 260138087 77752907 910266077 803397732 782212157 207157434 69135631 513090706 725307827 704050769 847307010 402965800 660091021 86052372 408072301 143646200 943724046 923672436 910600504 770502770 684195511 830933307 486555838 750764216 988067781 6104266 853659286 828091107 228010582 879687767 426789723 498512220 107788244 916236242 685484922 454325488 721145014 700600961 313272810 134797254 861911813 744045815 135264623 509078946 761458172 624349518 671800527 478973565 499109983 454852065 653919177 454963023 238789714 848836524 749911518 601743410 704016977 962285724 478991567 814598418 247727528 670906127 426601539 942665374 516849455 501588810 428972469 948111553 930803573 696838898 306926749 859939114 56278857 879636792 462072942 853309593 74140902 86797144 862729240 961927639 144069241 622150787 164077753 566023651 897906589 278092616 153810869 527525104 253096607 213732547 927457609 326990337 491052178 844039687 747936884 830072209 576687197 702352946 864751526 858919023 684716918 302236126 356234596 292440532 373133089 789609997 421061763 435012327 304274007 804477993 188641385 968656668 924320539 32218689 167522996 440175786 720105993 597477973 110416137 708884169 610775778 418063774 955218059 547139478 90657041 149582369 269588829 993127397 830869577 688635742 262190233 531840003 443596162 297588895 532306168 385186909 736340478 733244632 889628173 29741470 835250767 558696609 576507792 971844794 58240807 105421205 64492968 623612064 351430856 922597120 823561428 786097988 427238817 735649335 834631446 147398142 874515095 431276693 505347264 55530016 475111222 218518944 113306014 464739743 182816996 679616601 318983193 268111304 946586714 338371450 340875989 872608408 589094780 136979932 612244884 321592320 626855228 186264767 132375132 208411598 98101919 671530506 832625280 174091390 400143018 839243469 619304427 202610488 866726998 668874650 959844048 262927800 852046786 452603808 972261233 202680925 288991383 545913715 178695654 486585978 712271847 679180716 950738438 18420484 158637749 261019026 152750799 12971261 573890197 564539332 590663898 1005694 103891225 407903745 282858708 201961731 289782497 847345405 841462126 545663987 509317556 910840753 69738127 73097768 510039468 244588252 513330311 657609136 672440274 989530319 502791600 328086513 532367983 653339067 261526722 866236116 547324812 632915249 909855861 858031167 926284534 683108722 951421873 730262104 13629190 135063692 665551483 263330344 812511373 730978223 394132771 168291904 130859219 321448758 779998794 43159399 863470245 32870946 825986478 866592354 996604098 4392175 857662151 368238052 777871847 778517145 471643351 197073994 696736716 203095894 962228544 68578008 609486541 238582959 21372377 858683712 452160755 535947139 438430536 596301689 953959186 806635795 726740998 983629547 356997281 367728841 605119385 671108903 363066197 930278853 849587758 72128953 463648352 954407395 561685004 727747678 968579964 705534392 346587298 108786290 710703147 520401175 949912088 483095413 360778377 105005453 430359488 144174233 638722350 476968272 873317242 155043685 60001024 346588160 156384560 615847235 872390647 708538360 55129421 184983617 620517525 14463924 971872628 884765154 669932957 813844914 107324486 402240234 203674289 192557163 175502618 887416316 747588764 948533281 248900984 542517632 920980868 989413423 379541632 171690704 663886279 478677678 277583505 572418044 468984708 397435670 6615037 283109226 217113912 80401661 409082423 803429011 741653356 812139190 531493669 162056933 376915759 927313466 815117826 108663385 274327318 215512564 605740004 963730025 363024207 225851125 815830516 631635522 174475991 736992698 439039868 58318309 99058798 331302165 374799247 893570662 446480116 852343451 236823408 319158727 8026049 635895336 964996093 852790434 738230410 544546996 714121056 121954901 481833971 695902425 239157403 646181633 316524690 858284351 744632433 333526307 706960295 92169121 363843216 802632953 799143161 144769077 804506117 410053611 857942039 530182607 475825146 68589103 31030023 538534003 491347040 611870829 554035313 237800386 104010255 99742583 42899697 52336134 239487354 960962458 675841023 648592320 761402338 151938597 621820500 144414497 811948171 484234376 485647316 34201137 937403828 172413731 875078464 891066228 776412711 533568251 945002037 493922000 748071724 784614026 648373154 116705012 257744970 942693136 156940202 509162118 82435923 971732101 136150178 362964729 411144699 536827538 141262158 888801295 185919907 843524238 884102465 873097913 447218129 374032308 66855582 17025371 823943639 47211896 851495133 553739124 441827477 86797113 76158097 823477630 881806846 363459597 480086621 297019614 776770052 910307254 40317583 655028745 420402832 200847323 225612513 3728290 535925247 295204014 449393836 201080273 286012892 965866649 540424843 649923746 891902114 863329905 853717511 703274281 113437153 908202972 811546639 819997483 994772378 634646748 983217387 783142221 341146476 402089933 51534492 242836611 449688512 615604754 326386605 379984604 823838018 353884208 385732289 731241072 407345901 837220083 684405404 817603209 98726075 819517079 700761670 86477083 734129084 597181064 492188662 970661780 183430423 671890248 281121707 906530743 242197457 546373527 685069332 849887504 943767264 25926412 703770958 611886877 281961210 443241535 33731442 891599317 948450760 581828303 418272807 359644748 554962768 672721921 471027510 403830432 187844869 952973625 790294275 515875794 989310687 629749080 429596673 603894286 819668825 990985770 577343743 616425033 965732104 30765720 655992093 960394383 196676740 947916672 807311804 510967775 879341716 12388582 8446188 697171645 204833218 968925001 313082326 41305101 90646228 790814382 932113978 319171208 272309362 306891533 104364862 127915909 198498418 250426915 976614000 371131739 906355001 91107583 862332026 320238176 121053316 2181350 59882950 262861811 933709405 198267484 77352598 22529466 339597949 942402447 810176768 600585019 978617529 973342212 425734599 543380328 943093202 631117749 368663811 243253281 629391246 477804664 697353121 585955052 10444216 84776124 16736768 653945815 92274256 694562808 190919209 34696157 680488000 545180798 703319879 822496333 738236035 948251376 410534036 885479694 532721591 473558020 765107070 521676906 818325616 959650802 18324214 6819586 419043549 220828040 238282275 681776993 833359950 811820126 854588803 976814256 807483250 209573209 875373997 780516749 83195273 966132099 371174768 432807756 853663250 687805359 359773339 101746135 638861647 696302307 456211160 936171604 989789362 923034783 207532036 19624083 487572406 199427970 230099677 900373187 674794280 586468438 569638763 698064237 477748182 627957250 497897880 396216288 301614213 997790177 257985820 438795226 825768942 825444735 842510361 629237450 526357303 736725648 35515721 250249729 499214347 28881296 662850120 482135813 64777589 581915760 608944595 915285942 479026043 933349721 331546032 961815585 416953411 137772303 322113830 526924362 640840513 2937200 321658332 460929126 274852791 325278033 457523998 375774204 804045774 569861136 293461750 894174991 803037935 752706203 688204697 176027344 95290206 914090029 245767013 619874600 764227644 236534766 212414264 695457215 271014868 609939406 116448723 619190077 838660033 825555415 346979992 497720453 277779711 275757590 123907856 912294367 903685976 9801311 717065289 160514200 151807556 835860244 98396294 181743504 575191038 966870555 803291371 528468390 785213649 492552495 829386700 135392894 784245229 450712891 131480265 178173299 274534790 845490095 901281342 106438573 634312078 46144219 2064343 717682125 647610063 130553443 936679909 44359398 204066324 508264900 939403655 812371340 64566914 840473689 673412909 327580268 962262811 52404333 507236219 997831123 915493084 247158608 255852969 793378767 239475494 667536001 764564034 685730043 352743041 782077597 809388468 820673822 49264132 107848874 844244670 880937483 9392568 692464680 900756647 813730450 307974989 914118572 265899648 440524440 56577725 368676830 775546600 930632122 905323879 303082137 678463610 644793492 389149152 77758480 200770928 351970270 363162366 782120606 548545903 667253577 192150805 557367523 396813889 107912668 204960992 893544752 176638331 538588059 336106451 919641781 107119167 963716807 772233313 435851887 176774369 498696680 309589867 877556033 808801130 384863434 553341973 527896421 618337840 204936204 204340499 9504237 681249577 232848660 250288597 808968418 307666295 477295743 387996591 751952842 877041654 589214035 175244673 499139959 461023081 174700468 754215267 598391171 18820521 643136364 547170629 679342546 813688536 947939209 627630262 835242350 376977179 732085766 995966666 60272374 429440370 740082892 429430960 718299377 372808913 804284135 568508407 211051576 823634802 216026014 963873433 415748844 879859215 836052452 539459694 887897032 267790974 585880054 836056846 326345819 163695500 809248195 425502009 34851865 288668272 851991788 942585185 164448536 456581049 684148442 781684906 343208706 969566345 377152525 493449159 550129975 758349502 524738967 68634997 769658052 276684984 323735352 339155559 306052163 108179010 532045698 569919624 558484120 656338137 370877751 504661283 723119720 941310448 431285104 196101766 994309664 49420317 6272141 238195288 881454104 693758485 134985420 839138512 234551644 628394738 961321259 672169226 189523380 185402919 302735369 137663528 969920082 765417260 826177575 882288613 559950683 334768231 881696967 128077304 656630677 319077158 332943343 843936484 558657615 391941930 488893930 15578892 952715011 612038128 473152122 825268679 857905037 230992437 662288020 652751735 729647131 100615934 407090158 969519830 808770747 557989706 877612149 956675950 775088214 172129123 977478716 139987616 16839955 184696976 560936245 159381294 790844532 628264379 947826625 877650437 822869093 514437476 502695465 936146169 92535123 686897312 432932477 290445225 469431437 455355851 9541063 490753971 568913322 634441500 587013357 387589903 447964453 109152136 387163039 592274225 504653417 653567661 151144566 658056967 56294481 51358339 597486022 199206314 786217910 450969084 535583795 435388326 14258320 804533112 233525544 892897120 320767269 416781317 973936693 136471307 120725103 163668459 375353070 542843536 620410565 613739122 478355457 795713995 992494265 43537618 698675348 616119570 448835401 892754558 571075613 184707514 561184589 225052800 974036922 318177380 411840240 543822218 813850059 105183969 33946832 89946880 173998509 523477763 998352001 411631795 496962509 838278483 801126409 963215751 235629670 910750008 473744863 452196698 975471497 118047609 802463478 228315052 819785440 31397294 716553366 450615463 608914818 230403694 681429427 592836750 964466620 218689018 324437109 165401580 847184765 72988839 736417633 462524255 550472978 991052488 610930413 810034839 233118925 964223401 969453601 24096123 990042401 5114368 122613175 426017478 100317478 877988303 230451342 832205264 464420891 848184606 315081500 447343848 114413045 57038893 434150001 367883855 203988474 981462987 765664247 965909638 822329143 114121006 330039287 543475357 367476460 985528642 898336267 50161078 144646795 731057557 845521724 119925086 427833870 203099641 935207763 216784088 461084320 764096251 893750776 436693687 437558673 808382648 550662616 43565199 984825785 330411070 134723195 442589580 779637719 459523614 127101726 711940524 126031501 790469231 654479476 3031017 208980515 413358714 584510175 143604634 874773791 117060521 932129910 852369211 633047543 437570287 314545430 752428346 469706992 491509473 50913944 832599391 2772864 652527969 994783969 485502266 253860869 417983839 116268797 168098594 919790518 249310064 503740686 960837327 655886447 267757764 759463272 594848462 319824681 647047756 456632922 875186917 487850879 774201 781103776 752021664 615399258 247622603 46039987 279905698 914183948 198126711 905891661 761171728 957924369 488969321 709318049 680231147 568171406 295889193 182921570 320766225 31194865 561551394 309197020 738804097 175661713 521549286 329226505 986189336 518309891 817705872 53839632 696528609 848114990 843358287 846858227 123843889 919839804 561814777 99416877 380982262 479016637 324518061 642414873 969395086 224328309 869932483 570961502 574848181 122348964 144025668 451335053 433468236 303170860 390727967 923542576 488962205 912175081 24429392 544580345 612701717 64645487 295746716 427121471 355519053 547834668 904889537 137680481 729327246 919976125 517793581 676423310 692851250 65946296 393297104 726397041 943113656 25313598 52467505 319487550 139062490 887114237 923664314 257053697 946056654 538496292 274526384 752494057 923240984 231778705 616673008 79843874 809078400 940330857 554489177 180815687 134359360 935066749 993469913 938799661 446594720 51367826 843893434 186890849 940044461 854941307 456674666 758363773 166022959 347260723 148013977 565752045 147077545 762684757 261600330 871030355 930762933 235378464 530100344 665925317 341606330 713753514 190074495 10452492 529200631 123477707 904690710 248517619 466611554 482989289 466239850 20970520 322390874 290442781 862770048 783170138 347918869 651007789 788140129 188210016 733020414 282825178 784818428 471439634 596554438 662485029 859432012 264930650 509165614 248524290 82384786 630612054 153018897 950462993 664568098 12087645 751222679 510570433 284051578 137352528 482516546 837800328 935070302 487706215 340951126 715505334 414602674 679260761 213335081 918187520 225015707 909820054 130995235 151095058 372017877 193037283 258899383 204251469 102379786 953935088 241762409 620781757 31002896 787098095 880564294 534592964 660590937 221767241 895025569 896943220 540680497 688522691 118603064 600886171 281157702 517088740 741931628 10966569 66570153 605076987 945017301 737909529 746664874 800163122 119530872 630122987 833280614 945087556 211989665 812247933 294359269 281030128 900218285 749961590 906042232 960327705 497564958 151813948 354484676 297902900 316821017 73948992 941623501 602414498 526570203 923241723 394508978 400278206 856925374 507127425 371990361 272425805 762709243 346421512 676731686 840623633 985761255 169003481 756114092 783997990 782460582 740813627 684251050 662172047 230141543 445322407 678379995 665656464 724986042 857340151 808764182 920025440 527727044 99832435 206592407 705783028 54095710 335595655 815905938 211030908 822589900 699257336 61815377 805645151 526520355 345840705 962330591 249425809 359279897 105207135 33105142 151159250 919322542 937419211 227131299 231327250 661385251 118039544 476636330 954321042 258323095 615537578 128470552 462447529 378879454 596030069 840372476 349409857 945907394 300260728 629362389 284066086 908187474 471495546 88414203 299615201 917597111 708815507 971643988 25683922 967033859 1228266 646861663 112578 305260249 262528672 993872709 960429157 169787387 812659784 13378183 585590622 279989149 418875879 884969118 249035860 609661101 996057982 523728965 518159821 738989076 441483746 446606657 110574933 403932607 11498314 278663494 667939289 48505167 275910003 661446689 106258626 802284781 456655011 937278960 691267786 415561214 567834604 294855106 288403172 880279698 914058615 153547392 77617799 413969088 22752928 327415886 245201411 394228630 659668757 315913174 63638811 57769992 892695441 532863106 175607230 878843981 379316926 588384990 118514167 432330447 695072717 538032144 837318304 507232230 522824155 763635710 962016178 410191516 932857178 708872557 330910934 37741386 379966204 28544117 712666378 676469233 316551542 915894032 659774897 510097250 331604135 365545712 187069156 413233952 730483831 199936175 844657117 249681411 212524753 85108955 105215686 59478432 594264707 570423848 190571156 983910311 314151635 423604890 385222924 228402118 224802510 333749848 824651991 696561147 998766393 545717373 341479730 507125006 670891123 143008693 63139920 507702480 322430749 2701757 458295110 673533100 339327300 108838353 935238382 358620873 448945439 41080878 71251065 484933360 133005631 816468261 132671636 132436051 409143847 855441873 454829252 522021655 108008 819352607 963909738 789994463 483501161 664763251 19686149 47548372 380806462 25470633 870255359 577878260 122152508 494076306 987928252 590085502 153584750 365986097 783723636 828499495 441740890 104022608 982460523 207165004 905265988 685225159 955108364 857923934 263670074 6861130 19392821 478012236 649321265 24403382 638467686 391182634 660901466 550215390 756518578 702521714 50550831 41067248 558939709 845766348 331502705 176134020 235091920 147812172 329263443 137686225 569737877 431631547 120386499 190196321 117487177 897328387 698278772 971967972 911518186 878111758 884400558 248594300 999052933 763916280 489276863 976682799 760430411 356677180 793372823 724520646 344096034 295916102 905352073 499088363 822230420 23480059 414253974 278031947 297196454 330363988 632624650 865640633 925414598 468279068 446215907 119681971 566815166 489759210 357841453 106002313 579870712 354921925 508063733 563095797 989616664 852353404 189165235 839218379 519326855 35856677 815007809 427894448 857194870 579381332 398529130 83343848 901330864 291138634 711427079 529037541 637719294 647497114 737216400 676541689 810035799 439017340 34369818 962521090 969140927 832962275 760383787 950607289 932711849 904845031 18890151 281433209 993564452 82012184 155561277 322194700 739358886 377494198 562648875 186315979 554438237 880110165 465316812 166223072 716798026 639162821 550607841 418239490 248535082 567807267 99465400 131780900 607719937 806478187 623057502 593843329 895799525 883215863 3885625 102798426 428472646 978816542 437095004 748314006 710585941 569280672 850693196 816011139 852267669 628323902 162752690 108125367 93339461 680022056 277646627 266717080 854748455 990354137 846287284 980245157 202885736 942549468 335282490 495854063 852747980 234082688 673304646 884245584 545755790 269783812 718395196 461820724 17548621 816606904 751021338 468890389 715518041 508899449 399385584 111625701 918751353 789136527 207925024 225801099 335245601 566193694 929254195 343145173 315675898 990781617 466210540 665170398 14531528 433422036 158673761 291788886 352617967 923542636 234297469 758165713 788299898 969931403 76591956 343013478 892690760 153588221 34034359 384725600 235959880 73876259 818559884 999497074 585735248 347394591 487389097 911204702 715572707 804428710 655967303 640415926 934968571 331240247 376144549 560516893 665776448 949725255 572721724 127350761 386162541 516778105 554498332 615227874 830674375 250208512 480819902 691665131 552256045 807461005 498734952 420389569 828655849 880211608 287348862 633373130 94270090 602042259 664275214 460852614 603105072 454678929 98088347 845783650 282803250 827056405 966695600 702967902 667379727 331197098 319319019 840064637 835178431 833796870 241646698 883239470 945814512 121858365 388371384 241008544 576171678 6575597 212279167 126416915 630633212 352307119 538209519 954816416 864788910 616392845 337057815 119841817 242796861 249111434 499335463 570558780 478984254 744723009 532532925 837250373 23158859 701840027 251159780 318281649 566932526 599311199 492175306 578446105 529593487 739758598 741708429 24309573 935583425 116911822 619652144 651800770 511228203 125283006 192609592 88572795 154256995 308175903 399959693 367305365 691040688 717597744 475926620 391990706 546654340 114519679 846967096 264143108 824027758 775320128 437964302 294426554 193298368 115471303 800037597 585835415 232951857 122017495 424161058 225624600 828561625 401733326 387136602 50465657 349260560 335570144 664822932 57428248 436250365 768036283 507076337 703979368 597422823 29434600 148955317 145447716 12303703 595411419 503582068 501116936 589484395 837029084 641633295 112152466 521166173 100634892 686721800 839196242 318029705 337495647 693099806 56710339 286317971 515374122 520307296 40881474 46363866 433488471 49227341 718230174 389283622 336451816 854145607 128364971 998678778 767682627 318784402 462917661 307310841 254059702 953042399 341392597 368600787 58890560 541855162 37183467 125772691 807986873 584588669 60040739 225634063 814234013 483612251 484416727 768711928 592092068 28600855 698907719 964325338 808699491 695798602 527959366 314972422 305286156 123360872 79396364 452895630 59634479 487644267 641120257 694202104 151882012 509634391 522026544 403680888 998103299 962786330 981230518 56010612 90068326 560760885 682466095 216357428 850600986 453383707 900261035 474160965 727213355 887522160 515683425 538009737 648033826 626491662 977581515 341781540 438558004 253987104 3084048 835404304 638910109 539103413 677016790 572447648 29036899 291741570 376705490 99958491 252048799 511664027 426885181 117472684 919029712 44017121 76456619 159613136 465106809 171429009 23883934 321741624 540152891 82663746 497265929 992866819 679929598 65276971 742990004 995936253 874439887 487308798 740220608 61468843 934798335 198611839 240785324 706246324 584588143 860172385 396563102 499640355 465136083 401272580 947807246 806989599 411961831 764323039 589753926 886664317 654982687 541246522 683536133 712557288 210177504 112924032 92321647 740907064 652920060 23940788 169506146 674542722 783369689 364858120 880838496 181277275 28565829 901727607 82647648 284775027 23526635 410670769 989142404 827496998 680530329 478113693 592883090 833811595 413124368 339846765 576099688 159237149 32333133 801565911 528713991 890189791 728383339 422872374 284942106 347598502 967317350 537733025 235960446 845470914 875407919 78554351 690464227 84440764 22375604 306059789 798075632 757212184 14434184 225417982 874817788 566680920 165003382 82993369 37724402 341557586 91968464 755491494 197456171 408122396 984583520 219425179 921856139 641516085 546185129 196479535 403547574 449411606 287515618 967805366 922134563 859212723 37196800 815646890 534122423 656401446 224986299 296617399 238326777 761725494 137069297 431523903 445761090 862900602 66506824 763545666 775925543 77560521 553407026 641979116 899580219 538882692 630764450 705634485 409336895 742839638 925462667 319828765 773053793 214247650 229368756 684752026 511337897 87538098 759368294 22032976 914233067 921896807 287300684 899243999 503776623 81204894 643436678 298750897 82456627 147859477 859527838 536790381 454628647 396252221 548457990 302543006 182427487 750761596 577643433 634551143 988047722 875364896 382248220 338867700 422875660 489118982 977435936 813517099 512098260 97029136 450250337 375427274 695561302 164341012 723046866 712597081 414152846 72523027 147976432 255764031 477157358 339542104 591128003 981570096 294695567 374157068 653626690 747987607 341402837 699187757 404106145 125573606 886739086 9921782 851963647 443810524 250579639 939930753 552763906 103455659 727001032 179403872 519008223 641805075 230057928 476791820 840313669 530043566 69055995 395693604 350030218 663243109 525953689 148426968 436071579 417663352 161459810 475075413 464100086 579849731 389692941 690633633 829725790 461488848 300518069 416459312 713922532 20498666 56263299 893601246 853684148 234248620 682680186 661441873 957688768 593384445 786439449 499384523 964591202 324722366 667309880 410719752 2627155 552298403 595435974 24431925 916457267 919226431 991239309 468361972 132364110 670813714 891562498 371568432 100935408 843533255 502533190 553898667 971879039 183461148 837127451 234905717 189283448 843145372 516335881 19618548 19303947 327907530 372288285 806910850 431152324 748515045 787253956 498759918 341055233 793800493 457685368 176135319 633442798 190956343 108074019 191407281 345803704 954299416 115911956 879821041 806602657 109551762 334616474 507464913 125585835 240268272 650581864 756478788 63492724 572369698 801151667 450257594 98037392 434314059 289387614 667522447 422333496 159084947 766083493 108372819 985071217 589583436 976586933 357128099 52748462 287242389 856976692 54773145 751573828 462537829 592807322 768770345 68743096 86276488 749798025 662510658 879485675 628143909 343444917 333851744 586504729 299921461 332275293 993397513 10601046 467840959 282130680 996706433 64287143 973499101 933308730 602606654 588713866 148026383 953469462 663366023 513182716 241684772 158044043 435093597 484652363 525093467 454382643 990131233 948545980 801832118 698172458 57262145 288366646 651686927 262623730 947332848 89335705 436615191 651868368 20163600 614063617 595026924 558772781 907686118 509276718 789911499 784562723 318661015 330656303 706635490 605680421 209078501 133589096 349396277 173411314 67276177 794250587 368647003 705853648 906838450 720789152 23607145 786800086 482877406 531673923 191130545 428228925 868277424 343588796 664710579 299974410 984900001 502137149 633284117 6145269 267196287 764984699 798761357 215059411 529334455 215900735 324447319 952958523 146142516 828412757 698944147 608249693 357725347 982597173 645425211 463237859 671992407 649098024 374838201 946668522 833054270 333169288 193144794 403146556 984679563 545513263 743764592 10205456 498598428 802412707 76777462 186554250 188772030 492165828 3282272 17263888 624220175 317395602 390888964 986316210 656878923 828970235 93760504 499393793 725953119 173441881 855369985 9214559 490032222 455918096 507908504 675561643 871499091 561775957 619304728 577342323 709110294 658095415 617998805 930406485 391304099 312461513 958667599 617452616 710259358 265526944 391454718 182995485 193480094 97945987 291192510 339631812 332138018 247495766 445814305 63357370 37698989 931715493 857908828 851211981 940268825 223062275 662374009 39592011 344521932 722421277 813977341 785428681 993465732 978948224 69673654 227063598 182333689 33703891 476501139 189025889 594969809 797770106 351962390 75780256 989076917 685841882 946162144 442362082 111335405 50075876 726400355 286381258 549091971 767799682 757954511 475571241 745615580 576660853 774836535 405870558 115421097 766479843 940860291 271857479 999857166 374140738 9815660 411477271 792529420 177629170 375801988 142680105 190342653 967883061 915184639 122223418 865534538 931048872 182591760 823222548 373820593 216851903 149645480 483617129 108616438 500063808 899880547 64621525 288028501 183954890 21223489 108094452 177721027 255316791 471845465 320202340 69688976 252827326 661359912 119978063 975781323 340852045 211296488 219351548 962464201 142307989 162055750 478529758 42555859 713757530 879073433 229313591 264517443 253849414 707579248 515677738 586183786 680759917 689145883 369235356 674230089 616035603 564620524 721436843 526124516 931402552 318397765 135960615 628403050 957058541 425105713 584084262 417760824 405003556 876893312 431394409 461451348 549884608 344270508 279671095 752650628 637114672 557368717 652755350 361471492 342954209 647169443 863240137 395192215 429449858 308757047 134176314 186983393 987538393 824063713 502274482 95103795 990700144 677503484 421878732 345203251 928235070 452830128 216891446 10173982 178509439 530933686 55062288 149351095 694258676 574124355 317188425 616582091 417328275 516488475 958993198 896176344 961142760 666961532 831467850 64907286 617195788 969995520 54880737 885418128 628150866 832339935 352959585 740699855 858500907 986565447 558220382 399351548 700701891 852952206 921934167 1422186 831030563 776397574 563357549 36004854 140856427 540542017 468939682 68001642 186231407 360902509 468036489 453043674 786586363 308173508 92908157 314599654 286222625 753278041 951979486 212210532 774314412 496976990 857360055 564176690 381516279 611929307 883297880 255619673 420306826 878510165 597179737 971048343 858535049 90065817 465285121 885826057 15660104 709988142 957683439 949544617 515815988 689931167 36014958 347104903 777147029 18803797 760892340 537018497 167616723 654105470 914842680 846169454 165659354 73991644 480616102 14130430 500941255 780669473 395000926 681139764 21646392 117348514 771523652 791920993 828462049 606071998 432647036 470090754 962853884 643211861 557268208 632254964 791798111 572650673 634857324 56410662 273456206 615115113 766932077 126947935 755396637 424643688 913323800 151181371 689645800 32524047 789917479 944533944 167921238 891575913 863013244 304275936 104403580 649068322 303478468 24617117 484914206 563168472 816948600 298897901 558879197 497801697 315342846 910280489 389805381 578321227 591775650 962897042 929717597 26843879 980242174 67897141 607105661 379565224 733185871 317710420 176097340 904524493 330607746 351341386 154564559 810573783 90226321 534464429 221598685 637979048 902703967 343267056 79806677 225207801 208646834 491431593 21594843 710819064 171081780 64730362 4808820 858376863 541993262 996544207 999899718 299322746 371930667 557791918 413483916 391281093 957256899 264095306 867722692 639292455 271316677 959762987 144036901 475116974 775920958 318764000 681926598 82802904 179347376 559872023 497018207 858926207 897695194 361765324 909848449 445747790 679791067 125819012 509609745 768984075 3894844 715916857 658664635 581212884 889221806 180416363 299164226 122745414 151545691 822206219 447907738 606892118 470890528 711659753 478217755 296032797 429544312 664152384 563234840 844574397 405370818 829879552 462408063 895146559 74948153 949764738 263098796 659061901 8476824 190719512 151079088 91208660 845540436 276487633 985622632 966659727 446215994 605321011 297495766 266738145 379728816 411080132 579077524 242265858 793639985 927913297 779575957 780866760 822152255 107965368 281825151 863989803 623542667 775413709 507215978 995083646 609259369 137700632 58897384 584441275 866271463 971780164 968099602 743300246 756258586 241527519 684140547 276359859 462500789 556546705 896169315 200911128 467017623 350367587 252762631 521052338 592514248 963385987 227726972 282369862 245088433 785498657 827269305 878081445 585811039 179794894 359759880 697643410 687059778 968991374 806314073 816767144 820948137 605833412 506388587 694949474 573841522 11904659 922144713 750634399 156072589 175394547 728997354 76216277 79987737 86078430 862358246 435888878 565763442 850285431 325915597 62398986 2287060 206096080 767917681 480203689 418713144 469852422 36430245 308247298 913701625 464889661 273723914 11680084 275450910 768395813 329342515 537768921 654054889 820881811 881337990 109283618 189260349 708250581 876278100 408897558 631176646 301897337 654343146 268728644 242174119 689522659 484111395 210841754 134306664 391449682 583145935 731893945 364300170 962129225 809525190 952411491 653855020 559958448 304940430 942523229 219009888 37051407 375788841 389873594 648922366 604985255 460117136 929561741 100628978 58592770 629199330 53969989 437142106 665379222 982657123 451380860 846733850 858952335 214223505 63829589 111959595 566758692 207156089 359220715 889394085 338752906 779359538 414616356 217849177 981806326 994842933 671084258 351376889 566718489 340111365 190147275 540357911 694651142 8401616 332272789 286702857 323405361 982780755 175222325 474878465 215001289 134822701 148757529 490697187 532150464 232386089 649415827 145387574 600598344 193159047 92072326 519063924 999039960 954007474 243756393 955122859 203495409 443270585 33641616 351245226 303291651 628811280 404301643 889753235 774239810 384706391 560543308 603594824 430300732 828801309 31231443 743186531 326961427 369785652 682264987 374172836 528093716 28372559 474358303 205378957 895213994 934060835 50771400 568175727 576703026 652647776 324981838 476885157 309141733 102304086 597724899 214459574 314380541 429120176 993677702 971347295 402002280 338787389 584460849 533058274 203199895 99130331 736481092 457213240 57307776 408602758 782959254 237059696 477231262 916851898 13244930 806229259 913662059 578219539 108233366 399228300 159384242 604554834 746313929 131883670 220999160 440016136 222075938 186521342 729171472 927134342 351925653 775899986 795338099 696342821 199122367 843600521 57800397 241452986 930533338 26020167 882494138 638243711 41119329 620876864 923225004 842373448 688183234 432814623 928749876 159487434 465747187 678451157 236450884 894686287 560318785 681753909 411922625 691281537 820352088 709255170 823010802 942651744 902663910 708921742 283109001 476971033 418968067 322361779 983212927 930117027 809008284 884898554 919376866 125399447 290815366 561677703 727195443 484267992 289947982 675819112 150581717 41821016 739981524 158708528 616090586 663558530 425274802 932847280 735084530 819675228 877271664 550950668 532916711 290952959 197766304 279960076 704669338 430382943 916117103 670828624 221682605 600149356 143164781 670170069 420116441 400235447 548344865 497758335 909157073 798833020 737617895 660150803 706628728 198220050 200591240 662160454 8384668 767894122 542774491 263665353 699381280 553618988 998721768 651730367 277954126 543723213 356529611 440162759 870861021 948387143 332610047 592812608 920066289 655715889 14020073 968380041 706230423 899611909 899268462 678786353 165507583 702356865 144234427 147185117 905727781 935683713 534998092 208628820 692410940 837276626 770650988 797700646 759948445 981807541 77737763 480906466 394943656 19213330 806662525 873580030 799356524 334829119 582076433 948012885 247761815 85557864 224047212 471465877 587899425 83185484 535055643 239570406 361745002 555053534 159650399 124967683 164929436 432824983 846328712 338562790 833149528 830994456 18575598 64738053 951546570 156790482 485762154 329002484 121854871 471596928 451596549 520485247 973999155 207697003 511908057 212087923 138817603 281846454 495598751 116888934 644172971 159533782 587967268 119990723 78637320 677808734 98738912 72901746 714165224 592532426 192989746 952416091 940277000 539991078 264410814 748678409 318432970 600549494 43407898 386826914 587201089 759369226 225514117 276746258 109109439 180543860 612718046 587355650 471665265 590409234 259419372 123703522 601367578 164983578 316740675 349898297 231759848 525337002 799362447 694058832 897512739 552435629 762803333 425248171 278008510 389713339 405975081 326711496 196711809 370112032 936815250 6948036 806856079 676689315 352048717 581162323 703717486 527781149 37102898 772132383 596752807 593216750 503229491 244689854 440974479 945850808 311321366 87041236 521208802 148442900 6931586 10035860 571864024 620438649 921166358 733240981 874057135 566462143 248982874 525747874 685498985 417445903 804468615 695903434 355283554 254590264 984531858 370343804 545920630 936153708 517702994 782568 812652541 978897225 641485532 160709396 314358539 964218650 415279576 535388864 446897377 425853949 887905350 163589761 255299496 582790177 435363157 602572686 507806517 936182612 546652488 504003480 265852250 34124597 728247277 83167114 107626143 534301141 911674861 805169425 269080261 578114759 95159696 442634419 621281916 743455140 565142895 962415728 62723430 829126560 738933191 811858713 636551395 838810225 85194198 713343813 182802460 735810987 706474304 312378408 675887849 885732340 682474906 149880003 319280240 181574241 976035925 427416712 254068001 603637910 931951911 484425659 347911948 563402560 701408765 153320240 309921243 607687574 247612250 138158156 994466581 35959900 537191981 952064357 531235921 106083572 878644482 835894972 452188625 424714991 812741199 259654825 339350236 868418998 860276483 275063885 987518159 1167886 891181652 649294011 514963665 948317679 854010214 513271386 504295392 422625605 64050258 44217867 181667770 433043399 465844948 795284662 826429145 111677792 798718178 984089678 309817071 731275955 455450928 514845999 232675550 81207734 98781043 131162284 960128039 610731823 496521314 64620541 518836866 182331486 210497258 380883310 423091914 467731416 379998269 140057195 850227772 121047840 686223406 626287781 973563158 811263938 942152457 843293604 494185671 533653684 139309388 500703378 640957144 880039669 356331469 600152984 919326220 821637951 319435645 487125799 737112737 972588843 538530728 706587770 457161022 774412807 454400550 348091091 876577107 750823673 751453736 288544638 428184504 969832695 623530038 171997139 844695853 326197952 409480866 745463903 322257430 974855989 371618767 85876709 985628533 241452190 23695225 571805002 829128672 342657250 381284034 330755311 675965771 76845488 323858702 324875320 566664685 723748059 69338256 462335469 698509501 604050267 791690632 736838364 441163973 639260835 904026953 913782799 692288970 673333951 895813228 136650051 478738501 87121728 434624254 465967421 352919227 684932975 640451322 153189980 608327947 415155099 958618466 779538830 345524014 60186093 361689566 320882018 574058049 515005462 444689426 878640045 308328029 524705217 70382291 577021516 470195207 745733908 537181292 71293696 468193754 375604374 828612290 163455897 401144466 259733118 95977944 258731972 427437637 147492323 298913910 796687811 762967438 953522631 924612569 539358888 361325214 647013475 494097292 189322442 865620509 465446952 977841661 591375966 254213513 494028556 352243296 96845931 722555822 866094407 388076190 771037403 632474373 59549078 489964767 833337782 192120058 318322365 218810341 99130177 968589848 728767391 579764195 181383830 289681151 330398860 465588670 775078349 723789590 995441682 470045544 233252697 404355628 826023486 592593660 806507522 768399190 166560975 706347384 390672071 604816575 851456272 641555793 175358927 892535023 554369158 458506867 387517814 363539167 943054487 544494974 566415562 753695247 519869601 780799296 530625293 807371858 853558657 446562652 553074572 183739377 616928581 514726926 79597759 157309947 367652988 925318795 166484708 780611966 37561163 200188306 168506419 420914486 925031584 238560259 654769340 211883990 314451568 184927485 797973070 162539747 408021343 245132235 247588612 205562968 910336105 925057999 392649263 2771364 871548857 978562514 126973769 30101604 809896954 510734298 15477822 274660081 764539901 806569404 525219991 99299342 89564028 757742692 677445976 527159791 70738844 790567812 979716087 60440970 141966948 11465900 111836449 693358567 827039478 85896574 906883636 948598245 447183571 950428009 747164908 401567087 372083645 292181522 65245452 267879326 688821180 932410734 444629229 450270435 333640736 904929208 335535759 778048 903202598 908181691 294199574 248226732 60606694 775169180 29144027 180705144 780487447 443901018 469445680 320093506 807394383 604177067 800877683 239668814 349921262 776979198 759393415 75732235 86846610 784533511 11722578 207589073 75928968 952551834 552300290 256466385 57464107 503277842 337903685 409219425 353904887 564883658 364867129 6567660 94248496 518236754 477031192 77571429 58700860 739340262 3028101 111731115 949013503 91732697 909036386 14889358 115460996 386043073 99960230 498982252 679093813 338109915 341013729 155694249 144082855 982430923 712686993 173341192 14807024 219211537 249810458 19612975 781241447 649373291 997423176 737100386 725666095 323890943 991654887 11149609 444892510 363268016 232310348 611477349 249488009 882114861 850180585 45673316 357232 959561750 889355118 427459921 857021801 119290901 607869290 964728553 174726675 450869685 845777549 355548276 197301496 799840150 819761752 662078028 468427112 97556307 123785899 326088528 643686731 183181929 793839559 138894670 532793651 627605562 354699249 115202214 17261496 382037823 390739873 348472070 787173296 747043274 513977055 158397792 687771472 747290085 745215687 388224504 705504702 897700692 425056552 404314618 183793889 802887099 537713702 440698764 90307881 751129280 254699116 443062690 67752907 985111131 482649101 960005341 752465428 295743010 849412095 527658851 401730318 205449371 141312905 130889094 939240416 238309616 475082544 326051089 281967484 588467619 454354457 861964918 76616960 194056310 91214458 2466958 893511761 476183286 78396417 772824420 228732175 308465621 949407791 860401489 614297064 749845770 406253238 242714685 830139418 330331510 83696150 137617663 863101211 470059803 759571926 370387134 472251789 74948844 905008998 867021014 270564507 42782648 412650684 966379913 395674488 346856733 962115942 587939248 897351342 421981815 872124050 787031616 649357196 493638916 577632381 176357096 929700629 543382400 638038181 773060154 33240193 515020099 233068724 676015307 811594852 848929752 309722445 800280670 399573587 7767265 315127442 384034308 475286936 658793672 500837264 819330537 342887022 914208194 966007425 121660717 380780191 167072500 572395657 671574131 58249195 568049379 819716546 950271985 750295136 310706184 453963951 14294524 938065488 472812632 524793344 572462737 268829766 75074677 591262422 440099889 854596056 794824244 633548769 862616464 956370977 178641407 933793839 604804140 714033588 767987062 305770922 51150883 377902998 906793584 678155374 614266136 602890504 675127473 223752321 884491507 517076097 834561494 524945125 583355379 793948229 42110640 205149038 170124222 476928875 409368349 234080226 549640276 758437114 651079872 363333198 835490154 880425274 959870700 73856192 17307304 192323235 267236595 396382428 883724347 545891801 879073977 472212253 730153127 770910297 456196815 484866289 359481005 819785934 78756590 669759433 402332749 231994100 477183206 79328244 252916341 894398395 747557494 417033177 573011349 781021401 163535296 994894962 168985663 617928698 565590774 962589773 219085697 331717877 90304699 688661444 221740404 890116155 335203301 450583016 473660278 435858420 89402016 59487953 461366779 426786196 534980539 140804434 342720572 16700246 500171240 123025104 175090224 64984990 875054489 712012345 52006103 823076238 976743293 134392197 740473757 815091632 553862352 634189935 849610705 522926672 539947807 312821343 875365434 399535103 624519145 236826051 303823993 743467021 571017320 521042502 279273959 921849631 268269614 18071184 599771842 779766682 720933227 735333908 73192403 2501736 760330740 229284772 416939648 558621352 951543036 974649377 498448851 620225346 397697109 145568536 221147518 418702021 897504958 149535382 333194791 68288101 222867534 787347716 959318117 728159432 627324205 1577046 100866813 849920664 327836898 662033319 6988543 739138027 945184917 437921291 429627821 353149411 988000735 164865200 413845613 306459765 165637268 727166033 651095700 439926060 582595453 294760550 645651605 957035088 573336277 647847274 568702943 268432195 468674057 673499531 308009933 592109833 368524415 190029090 727919630 456492014 374994610 721477055 407710425 266453228 424939487 444431865 386648089 860307245 229283219 189207893 76688265 968185842 258829131 777218778 977746114 191142118 744805701 315317677 308276715 710565229 346046083 391792420 537132632 826585383 499057403 227062951 550221856 631767156 374218630 736446184 189839168 103144461 44102497 843259795 646654067 724966511 538337335 121449072 88630997 766775537 886946716 645660313 171760430 82472974 538971353 594299955 613517217 680613291 134213998 916076879 74410941 174720658 620138293 741033170 980079202 401965516 987741297 468822214 543818268 699824511 180174321 560291336 340291822 87573109 170581730 777062296 9847482 133738292 801024681 442673160 538282214 33141068 717937376 811031872 920769311 607256177 612014447 154950496 147652628 224543260 965456925 157850071 93345379 856844474 117148627 515663687 18995048 988271512 312298653 178214396 996247425 944258578 904660156 413491201 625763422 84216523 657185002 407398637 455821803 805031526 145944839 420485425 361783857 627821269 569048160 953155680 718271763 139802747 335101103 362255247 253574524 428728879 625449093 233264319 83715118 822252002 238680291 205444673 88148908 583302748 731617219 56015743 77917244 620571722 232060052 699379244 375230049 807238496 890621957 806399811 62822247 273514535 856173193 329348023 678349497 364903079 8860211 38343324 45007029 421532988 780342881 697738917 21357576 718921502 692231017 467677473 659060939 83139827 706671681 672114735 37525852 169888733 364811942 460845183 72850595 112845435 774805184 255678583 348082530 612486486 529188848 558776731 634263274 721789982 549590092 974556525 672715401 160895397 143918657 102360873 151333661 668991648 25717924 628326886 880422191 694064512 994498871 251138271 362436441 195453056 847507345 981558733 327220158 365260764 763605476 590093881 522230928 108877291 670939825 675623312 82805564 614864198 268305057 24558974 378076930 608014935 339970666 473106668 165214849 282242409 703370407 46776391 274816757 822380694 888734654 785782033 208620384 750614139 406127632 587499778 195497456 499546285 190119452 128672713 165646260 520591677 956991205 267681107 180554554 699008116 710854030 515539100 490013338 642599823 746614064 883548133 949421015 987977647 107135146 961866197 580682383 506747876 608002661 982790058 258430943 96915610 149363587 128005360 573983209 878674386 636295906 491681982 453852127 295347815 774289961 233647278 143087751 1592615 395152575 834181360 49187259 885815980 917577383 55490679 487590586 531193026 705182059 866831060 119400298 383125527 928099595 52065297 32553285 251979227 908492301 82388467 534886694 938410420 585013466 274582344 221909979 439936645 744002669 747507940 868571499 968260189 646557228 527934692 624155854 106582627 125433802 200686819 722219354 782323399 266041192 694062441 935917591 880869617 277857144 161701517 174713801 522597678 460750972 696082308 124813696 186103845 239405301 12667691 771681832 62751863 748926989 640991453 672625558 707078982 42478988 684339984 205583956 360166413 702932547 225509199 190178672 654260180 705009396 465448111 30688496 309871651 952437280 611113949 616759187 497840807 685581027 724991424 461731156 997750343 110308998 749292715 46399827 6457807 201630319 786569641 29511532 955772064 831235994 420941641 636238885 751533238 361605027 162067298 969464940 271711776 898673772 220481351 603926227 64896674 923842527 658448131 801798307 851936568 810995991 78069968 750415931 5466152 500890026 961584600 393283160 612536566 726738972 494217159 13727854 938631542 921314251 640460048 588353501 691406164 652308107 258604396 579057507 94774014 826910699 173744845 675869821 60442918 188606134 800654077 856065253 593409563 663116653 929456780 254780007 315883286 924180710 995054882 692325059 185900749 392546301 222152711 462419438 173884232 722853335 588147221 350277331 711146467 982318720 48419837 561822294 620190 412595905 595658518 852459333 717133675 499248279 631209506 503490484 101899933 866036795 715205365 294238616 122137245 124137731 326885852 80123790 859959153 728207178 95889960 746517026 252150788 147395042 870172035 842729249 55852810 313653889 957486192 290059724 796815964 630963032 343557493 232754096 339361593 325108096 257754398 660189775 706959654 77168968 421315297 855456951 273101867 713042150 962006279 780313852 764262904 162697719 83994239 893847631 200193436 64637078 980957392 989861309 670434443 961726920 502985881 254074917 922853828 626619910 864062677 329636078 485613300 591802282 400278867 188734002 102568709 591894261 5468461 436622400 773009340 241634096 22125037 4104711 734570406 171285336 673528479 827120208 399684890 404412419 174595247 617909838 110858929 342844889 270309510 693528456 949801585 397273457 755733556 373254791 162826089 879392297 445863829 645675077 897974262 3996289 112496900 631104666 340141013 552614673 941098135 355066946 912141024 421885035 817809552 956749017 5790598 598328821 464779306 346142930 74653621 788897780 438233886 776251456 668142139 783326545 621370747 517792953 755084801 569226332 88832890 330693356 514705361 979914893 100738567 49461559 716722587 262994072 235326372 323192889 451366618 965321610 611759635 620862038 75381109 283861123 964849303 847722442 985082362 673216808 150346239 889602501 530022921 163560436 620863211 961757611 690018985 306646570 492548581 515672908 690270536 852663830 716739177 198277916 595231308 452272819 156943709 110607618 362633463 320543218 299212471 556897489 56717146 259246554 378449072 854043100 836614253 22211422 632559189 444055638 814919916 779968305 914963938 500398845 12626817 633066196 357531742 266519780 186271433 595084979 568524567 306295317 914191072 979323206 197710999 315384941 534099688 423961116 737738574 428119531 643613217 564113563 102394785 449457022 853332125 349199853 124996460 990330374 711389245 784922801 432565443 88369402 229886654 524436241 119926296 90468844 344843790 501885754 817332285 547273190 692374510 477590295 569426776 312730214 354073966 317345665 236455782 665980392 36319996 893968045 243131610 394946283 470209022 816814374 656409444 534531293 641886236 672428919 398599645 398134541 772227406 701405981 886858840 987656003 433515153 838413489 526892470 592137482 702675639 886791790 486912054 276734813 713570829 75138555 229739828 693435102 311250318 343384887 172968985 735305792 671208861 521944856 508133053 687674621 722707128 165948645 288731550 321309270 921497172 331957698 372258997 827257511 797415641 485315622 578632249 344574502 618781900 220737834 999601817 296237527 636632703 848380017 932303804 295020121 294373850 983965265 491402379 510968329 864022891 570239716 225904355 25844119 360997446 158958567 531238147 742220301 900406299 526859135 727503553 300759623 870854278 960613868 712112245 631846356 375147626 838634103 593280737 654752479 508256666 170962692 601986229 648130966 860696197 785873374 706191120 521922837 217719898 495232315 20910922 823695649 148578269 164987953 623316861 274611732 899810778 314711685 851966916 20780333 621048055 869395780 684668042 672643333 726594565 634908446 451224971 384487345 16732616 975203974 685084132 484229687 225677583 695405320 582505113 595607343 772076198 666239828 532743627 18605699 371821263 192904600 717241558 629316694 658284486 243798842 753231524 662818371 625532898 160934330 713679366 530225671 221606256 326149562 542944585 967987017 710784062 200988758 566336384 654215656 467691576 314671180 4891197 134397476 768062593 674207585 832026352 926722671 62482024 906664527 6893491 947832997 579400694 970616421 183561272 198067631 366065191 774406760 840403321 941837239 44287373 713957650 313294587 989628869 166971440 744163413 112972391 854600084 964373439 41070368 709800334 995664405 708778197 751673070 770805972 566175894 181121586 518782703 996957312 689694941 197749594 675918468 179456029 152947706 299673361 457381704 170708512 831987008 997857746 170322744 113773922 549415962 642252104 607584045 683138267 763631949 382908699 98686018 726161598 974995158 131428303 877112279 722541580 912299265 876992601 554056254 811614836 776030594 350107934 30204011 724879818 870154782 111587187 207546714 195525310 603860074 166866965 659027984 223762587 284383429 959975211 651749182 988314238 692896985 258603750 982029811 228629001 853792937 101395565 102995139 501832985 326859091 673229208 279223047 582300201 655955222 106206289 505970939 652893515 279856889 278862523 659187732 507872027 683521812 161581889 969741668 447454567 698748617 499968001 998273829 128664240 74227793 29084191 457637634 858723439 848224647 800969404 894897259 822627482 420657173 95053745 6995452 909422455 960001269 737263404 727322379 143720720 782822242 942115752 531023190 166630801 353601922 978473964 814262241 739547523 295393758 905257526 997055636 910549846 899999047 822595694 269980571 932114383 681458775 213513148 73946654 973935149 4050494 631904623 232321640 920171034 124083023 468334437 621012090 427679575 240003401 909161379 44640497 484544943 817543557 816037934 138028508 102884865 591578455 351613365 202703073 652963892 44719814 409224453 438457696 730597102 786609588 389901582 331424608 407882647 461026727 883821851 681130562 69903688 865520553 346606460 534382519 880425702 503939720 301491799 400508531 198686119 830105729 259127906 501553970 195239947 476629433 143591512 257205607 423355375 833413137 220996435 693566756 865038626 807358806 576189762 189753986 772948114 304463059 759059174 958226283 905364480 865766043 161956683 843379938 772117007 435885637 657752799 608343706 882946044 300820058 428769913 279401267 6562485 826150554 105460376 908326041 513332481 440721888 925985207 544665721 200507662 34702569 367680776 400579470 893201429 39618458 772948788 743058700 382539742 44362047 731653533 402860182 538996824 422369976 429920975 320006401 247895428 245211734 159170193 883021974 672849038 904782669 287431426 36901771 172774883 94236138 902585296 584035503 743266134 112625021 308594178 126236595 95147677 819510979 945797321 939293867 343067259 924282266 63414343 313359154 72662192 338724148 484910523 154746815 986147105 612553486 19587581 2144785 93709901 506785493 631747345 186278710 628445428 236247906 187369476 745333372 585149111 322272477 211161440 468921514 125227932 113769989 214391778 999365494 314265878 898742097 565252152 613052820 829024469 376746682 254579824 71516199 317054011 527876341 835596237 508442367 694751174 300576805 125606096 842323679 66563966 648798084 346187951 765893314 20567647 714833787 117390918 232330490 513508817 4325997 240526750 413238666 826887484 820312463 306660530 14212705 190962548 122807094 789648508 104123584 204037051 226585964 317226111 823269450 150010987 790372159 429226872 810465672 494832417 119265714 342560003 524118709 559612818 443063154 799299956 249571995 533137972 807592257 39465090 179915672 933753714 541246261 989435008 549944889 96747042 12503323 719158390 796808138 205703956 723381966 525898723 728240097 457631694 800754657 737049088 7339633 106631128 851910659 810755578 135390236 61304864 215909388 301022375 659244989 864155000 840318522 82566595 681333365 532670474 402940998 830592587 976092326 259430627 441313029 980149729 61384260 708049113 483525953 826052509 575532234 61428525 604129216 735185093 731614367 153783460 571331004 138614139 73354053 265366846 113839776 632647957 962723501 712589578 431931880 804019221 753812217 812874800 472932796 565418534 443274916 789373404 73833742 269061901 858761039 252279014 221425318 26978782 205075159 305077121 637323011 533996428 540714433 146015767 7634813 570092150 939269850 407821610 218034560 343627711 427207603 168963017 164606225 522017104 48037766 264754349 514861186 375990483 740043182 340801235 805465327 305308704 401929977 717042053 178353141 195375904 236268093 687666049 334827558 675261124 216845198 131467231 736857294 723004807 726321038 11978110 813665469 900255667 654867097 932202969 489044423 125678023 946023274 817864810 788157407 781626782 614726513 60268142 860327642 376636582 563624417 976285045 287591196 867979182 366923924 483145321 730167872 393677358 591199839 142634024 651474581 683923211 860696848 330652704 434628464 757365080 393826014 540929020 839529051 634457126 734897175 577972600 558926981 509887629 163989862 113947940 352161473 321147858 196344173 258170187 144436057 135221593 480084840 340387624 71023347 81735259 621268577 376353078 932528796 20772134 72952330 795095888 697867575 385838476 469460579 532758545 362438167 431568334 908762673 79781506 553068165 219681556 357427138 880573591 390614804 26917726 857711704 993860374 77129200 246552603 990190257 403275431 497091178 682554953 462845396 544126287 420718838 76478115 313036580 38661227 346212337 395195813 85170575 552648104 804053423 484309242 739753901 477113117 189272971 627074941 329318555 820831449 914149264 546048798 965762505 611077166 462141459 647221857 476147933 880640174 357451806 301960648 193315348 654937880 63378612 612069552 17098184 101073315 522419221 691402216 532566454 737882996 595084024 158776825 881136128 755990062 723217581 524515990 117851708 62364802 590787987 632819504 430385608 784734156 621290932 664183053 153311628 77161285 656772414 695833848 507740319 715799973 340807947 59280512 65686391 333792783 772230549 554731080 265418723 549907037 816480817 76696798 299862638 702177734 819653544 9492733 951802232 950045517 252002229 355236416 228734974 309893392 723620242 678453061 767316624 849697382 373364080 331731143 724195004 877918216 312851006 911238910 50248861 822677762 851280763 461937902 701565952 509973472 651998882 920649563 210588318 774531983 485747756 743274091 740771085 744182534 711424528 695422442 947515252 987548503 86114332 693735609 265629835 313025735 305935045 436019514 104030369 119465233 181908001 829162945 588897645 125058872 892693446 694644256 804982280 398559758 825236665 723958858 505647461 866348285 57145039 133805016 191041275 499656571 970247626 559487244 675599368 649996798 714378047 864266923 761279347 204877483 935427181 352557494 475118925 805137406 909065616 62725404 833195578 518335223 163724185 796865671 492906886 133583610 172658257 962816111 648938520 275650834 368900535 229532055 899284111 566393755 159373296 414215621 601541150 228207547 670022730 824175936 762843317 156794282 248871707 765982 168946494 82717122 870144329 479163687 33999855 101687079 809826445 870590080 933227396 533499960 733199834 128681744 141270578 496993577 250054082 604667204 147185134 661415580 87532879 539910541 950463354 615653976 934207553 568906403 810951704 583993263 461059831 281297997 966518173 76639066 141804423 865523448 734093314 95252695 154270306 527959083 884445523 803001180 75939186 562916151 469556542 816115532 811490499 485168719 57465001 162897955 317162278 378986997 527601221 649355108 898824392 479317283 207377121 812501533 522113708 207908400 548198733 146410393 864886298 179594640 404056175 316755883 343251726 666329283 354607824 139821337 347771910 923186259 935777813 312254223 765634489 295524336 259843902 715719757 40505874 968399667 947520323 925693961 394583075 326732853 873624753 68205632 639502016 549005483 972266634 740533698 106989529 571527027 974432671 665392979 567997574 524460770 356184423 205704428 787448949 232034241 80411734 691523905 436458702 23029934 142514888 634302737 322113758 306767764 899885994 967467392 997695310 74780640 864155976 849721697 808166680 585485751 897452471 493494949 35198170 625916751 420526683 906697312 679798605 88323424 955075826 930191973 998658560 348515558 448742411 406190318 758940468 284192016 410706972 353928203 106537812 161646698 421211250 313269911 456034737 880856601 583155056 604032940 424692182 46218757 382622548 63357943 473038134 441268255 100696090 395509363 685966443 350042237 990205984 723975194 860771963 515199373 104775748 888070670 646435953 502285364 406386720 143149710 913221445 517666071 307371457 693539401 847669489 502420918 388321991 960827769 695287572 902367520 693545512 971552706 765547494 783052762 41203669 842126627 323270536 194094856 470838582 344311796 400881109 961791194 488644304 657103931 231427595 518632626 107202823 314530229 845662201 398254630 596668803 474445133 155373981 852345087 878297934 404285043 405936036 143379362 530595201 594018930 21810007 341915791 45123883 997428113 108272847 2994571 30305235 869565829 766968169 157816347 173467479 798613843 71826450 494968004 733831207 127826269 785864362 399964174 974998849 93164163 230176477 201805072 477551015 282497509 42426098 99392482 805303969 609650502 34359981 44992515 531208229 124834761 261272951 194181184 871254000 143227574 284554772 732701237 827767107 668864912 664735095 346822433 180323479 442803608 118077983 236044031 757941193 898411336 490760093 159856022 884759464 133628856 708012022 283330824 152638429 294804322 613957392 551626179 937260329 600405437 413271722 103467215 229221023 15578844 453848112 190877163 24031167 675073962 521673984 892952374 816094464 674437999 435083785 49233081 956852856 799568557 216213607 822580305 852889942 588537095 28496428 224262242 579825873 320072903 416106280 679427967 631992018 848135308 929757770 69020878 44835651 55681961 560366117 486305608 798056410 161010717 226843757 271311445 982094731 892170786 879349026 818004245 95447905 766339983 477256846 478608223 934390973 156905315 457981095 291586493 782746231 127775234 626384844 122450567 282794055 346707822 340748903 486376303 536779592 397138863 288022638 277489214 790212380 444079241 302780347 427407915 970509796 103646061 260758641 413553753 921609012 817374105 289995518 180521069 156602473 282103431 930409897 54178812 994435574 431366646 378159980 853177794 911015650 403599314 936673359 763875509 730521389 891646428 806631196 11717284 303857439 751606545 951018769 14979199 328788386 263851714 381979097 142183326 992923868 741268883 537064534 645644774 524698162 455136690 599307775 843118122 868754882 561428483 708016369 768692355 821965555 996877647 355989774 734342546 741564634 780168648 385652525 340498598 620547367 203771169 176647269 998172161 50206275 227932720 433964192 229687247 297651044 440361122 823705790 999543777 623861424 219143280 262687265 627890914 898307125 550240132 827486245 841963212 576390398 351506650 457266512 677752192 900403862 462261873 299152825 438037202 663824139 305051428 491921710 569755311 708009009 634080179 1558327 617741706 524086571 265849484 610990416 483962036 837014053 610952301 946811482 726624951 227821043 175166876 663182633 203174028 372012573 904507228 731471804 305693888 330374076 898870785 515426039 959852313 688311988 831902454 735792060 144508030 897879686 567408352 450484691 211587218 322289269 770020505 116109675 951338029 988474789 480132331 356256184 167317119 740942583 60645224 617877732 259564310 164703094 245638088 791564819 878797029 671975276 533406488 786614043 603523086 416071301 945750106 957124433 271662628 283898876 351633867 469391534 814864612 175095606 672670281 371671571 849526072 756350058 465893458 618539900 35442434 809731567 856555577 569813220 979498229 452601312 472467271 676816408 692575254 38051654 989648877 312057112 915209929 53582185 402324910 829045757 254931765 147302323 629465446 834308589 667568146 285054900 615514421 305674679 548885756 457354228 98559877 645837654 675140615 524681575 523233388 994161732 47662874 404109057 610130696 872680343 205340310 705130669 837057699 444135850 266724032 501988536 548773361 11123426 155441919 259094518 179540357 422919833 590708948 686232776 607593100 411938414 762174967 392271207 678575181 590945214 414719669 697042962 732492535 662255907 502386069 357378427 257363027 791689469 622060904 423744657 208879912 962125204 734032068 916757599 435036690 453489325 927269823 707782748 750098181 561381284 1386975 37253123 771867802 474852265 240195022 26888996 391001241 888338494 343547624 143655829 907693361 658336178 125942400 719903025 426130293 728784968 174082010 458024565 564163430 63446814 563615610 281002347 695977422 979959883 775726868 250582293 226987307 662475865 546532090 106950280 602207433 765721301 610328965 304695655 868944503 126643859 289173933 218490840 3611562 623441628 902336769 756015289 983868317 199249513 379390342 131111751 1839954 759998899 960672905 96532403 38785733 84628242 906500248 130199388 159388979 814436749 135799096 262705799 555622138 874436096 584531700 396412272 442409993 647335087 22454912 492208334 971380238 967908293 541829448 129392958 706724038 907924547 140877068 879324034 608202544 940404196 31694707 482438393 218730453 111126852 729641560 822972977 910666895 738012550 461511233 29759603 459593502 111418174 648489349 713385043 113084125 717345624 768712926 367568281 718361245 981956648 793748479 541559709 558486746 113146558 293384489 291077966 173258540 926925906 460293940 627664423 712114859 674642665 971229910 338391670 398585087 837643975 792551604 681534855 675449577 622372649 687027898 945471780 894077386 440890360 502830888 189480216 551628332 210544259 599167065 573417040 77310493 116623710 840170039 354212002 675776001 126379204 333049510 95015023 919195180 964845460 555445288 856502306 707347337 556403030 159731991 991962370 937924392 274077685 877865351 595480661 938584291 513652751 93622689 657815845 729203950 738274330 557007904 758295456 116418269 416068842 194767849 763810421 902993963 957380078 247819744 848263662 553990017 53883629 149170786 785730873 289380093 65661515 136764214 545537893 808793265 822102935 110011144 310873670 526078067 806076184 627442427 119231982 923814334 432638972 387685738 519152139 513193126 582268990 275872083 367278558 808502185 290795511 335570605 232846006 217018106 20935061 751040875 484753203 50742812 119213314 51008554 915402736 85282258 268632122 731373596 13172198 196599563 175982939 474918947 270504161 572549675 944973056 965806502 382730827 590403087 985286878 631677097 452610862 628355900 942747761 197331171 321782311 269865767 636404861 61188774 810880697 326171872 218894204 845538040 186399959 256645134 332814220 265330556 359205405 897160000 588143315 496399407 167774640 690460955 951393105 801848308 483323170 977167680 656731473 918504320 960710749 143495212 932281133 918494820 953886539 217230099 603790730 50528871 937095079 81340615 445916023 739038294 510582601 771119153 617021014 302937160 362710135 333834061 924264982 720521241 853607843 256365136 31777429 129129537 857057365 151528299 286036581 112702460 127501820 405866710 526869155 245204605 557953703 284770352 516436179 65196759 358933487 620382738 310007878 916284820 853436410 376935169 404692755 988346297 633757903 924003324 861737759 570411686 464714169 515245900 803328584 960197318 973082334 928438266 906057071 314242641 537218065 408102746 863907688 828242583 447662025 344384149 808510592 850454516 185700917 232596260 873045617 250769447 798810413 727555543 683377510 125563109 747960191 637870838 463423986 234563143 159613186 146519723 721883107 275645998 198380683 867663859 79008619 500637566 137152670 822664008 952662589 288294434 828088261 690965736 898053515 380219588 677775846 415264234 161880831 435795027 768543692 423895976 595362482 944927794 661188766 864526246 970077629 150983823 50959234 684474625 721842733 822060718 43327723 193118262 929739009 319883910 174198084 929410400 184081588 930855459 310922906 811924178 735649580 273910705 503801361 727916315 240212032 899871680 95676971 573272559 32123690 948705146 229746974 181620394 29394879 39526609 916107644 661353859 841110580 548500482 508941333 389508030 543940334 682997876 675077709 846659631 315919270 608768052 804721840 33800835 379599568 631975445 370700889 890765484 249531475 945573946 810654620 23649880 643307874 690257813 293736594 406055347 781699030 941059002 215612705 650280203 635932584 263021644 404712632 314836970 989530968 590438236 731168581 610199577 385608491 469994269 790773716 479359546 926924684 785034613 221276185 541025024 337563384 156327951 110394751 736497473 841892636 378339557 930257923 703631821 414545014 708659228 356936964 936278679 160646245 538845624 311196461 460381835 793993410 266898950 808702136 367814031 446134152 385717652 364329215 582752111 944900181 18498529 900219355 361328742 364310072 445717019 545815421 624945524 463699866 185185974 537819353 786797833 35401998 167126615 800482627 318659468 947198751 366270718 825066548 311097252 142737815 312820520 707591072 266979148 961975135 362248324 599941912 78937994 658308714 317082286 413759426 645800035 838090831 332164479 973651244 733508449 691572083 375857758 250963085 146386861 327365864 721415998 704643762 573154128 12442506 616365905 758323138 315854538 615357892 569095890 296701735 267913862 10272878 769598212 711189148 893224844 310114983 728273803 200531454 819266737 338921277 730666992 707422360 286654412 573780558 306915895 601974850 599023863 829916205 65295244 430992753 329783642 389174670 263162546 450757396 735314643 102391795 435490819 338373501 953982320 672380590 741248536 507633705 80497540 882843561 469204757 625099327 44670252 360941157 326871071 697338786 827376203 198953558 642121027 866956682 18538214 229532437 383076924 788683646 944461340 123072207 413439014 695670677 805211789 480014263 422194913 73667444 925414685 280203969 554473392 995047546 779747338 76844192 115552272 107330828 933082652 658404690 518225455 11740025 683231960 777384451 456317795 543131139 833644152 447583741 743208610 665033563 180960338 736624409 665019370 10472866 949297571 463618859 453580226 260933119 989851747 428839154 337764191 414754307 735126823 572415142 61803056 447089363 606357472 680905495 545341124 648573284 658810182 515167692 10751761 663899835 740537622 425458924 561392632 427063390 888543973 35476761 689341777 792883480 466386811 118462168 897167582 859812266 406575731 888584875 434135904 211586377 747880323 324414937 12245156 766067404 720708371 177815270 245284621 15247144 59799991 293356373 556297428 66633114 59594397 928560569 961519775 986222242 756714195 534250580 130328719 278628440 596833749 236368143 488803321 972528928 761120577 933961513 941214660 754253181 85096122 925530689 688287385 485052746 868457768 172410505 170923759 361350867 909268950 650258575 888713169 945009868 281759691 306856008 664723620 585946511 622095946 38642427 121339807 422157318 119462925 545764615 73080753 999428257 681722891 852055993 442636121 218673859 81927766 693114831 446185310 948467985 429867524 330425169 648565384 854842678 659554981 584041014 507626524 176433988 912236168 679056562 564077123 988256274 699887580 449888806 108667197 778671670 83743019 143324393 358591029 107125672 97571653 663085113 156519788 714155247 771775027 189387709 200000453 477644169 558623672 728637877 165322276 36957542 682155699 588995937 654132363 360263155 124879350 847346 685859747 815636702 798675949 311022237 207349021 485906781 817726922 465352461 248437928 302950480 349413269 464742542 100383846 445425329 725535714 747941943 995312674 826078998 398154312 615816040 828460322 198199226 597319558 931320660 663854141 299104903 572712203 256015573 664025334 304342569 650341500 724872448 719457113 523761283 382338564 908261680 535563957 984114450 382135255 432869807 358228655 191901902 588932372 677855302 950406377 611556856 497513608 620730837 83820654 72556325 925822670 335645889 749319233 185157426 766952233 693617134 527128918 715850886 750729903 913892066 917854374 626500057 445490669 47624095 323178951 262405514 834517511 600022278 171429444 961417875 674854627 88666577 64095824 636300448 797800376 504647181 986709883 155898169 103874217 252041537 322608277 201017658 366494815 815203617 766267991 65224577 570838881 575461095 294172441 35912041 703207014 195368743 114025835 465783015 345064293 575330235 224891231 552708164 693081962 879418762 289765428 667717751 250735151 780315588 797490615 614834527 745809200 612952657 427225879 122588037 250508355 991677834 327365729 236787831 223612974 302647645 263279176 334822897 205697979 428781335 270026681 304925373 545860308 616990181 347504356 67016451 150135091 79190699 603717176 15878324 883932243 195309212 245839217 246242504 422900797 535410291 535966926 641875914 58101472 363793328 726486482 881599127 422876603 96818613 640560324 773345327 605835807 159949541 615326012 347097216 898136104 323773932 134945421 335367199 656527607 699674400 426474656 636177908 775371186 467066945 488040046 419722730 853670513 154796527 969837086 425462516 856078418 999577516 872700761 884622654 54683222 378311228 639925471 795337109 23282125 967779260 402587036 373319073 41073336 475318049 615604127 906507356 557810048 204010748 130947788 463046036 214997288 944493639 625336130 627983376 703351049 329397282 485145780 324956693 747670700 102082507 454732300 293116343 944403024 777783653 399843169 337556900 418746201 476358770 759417974 130751731 158449108 85886452 811861833 742186394 255400502 287864759 552690634 757766093 922726564 684109147 284112889 874353681 314083242 590104058 515439341 347813398 705083111 111104213 668541683 174703278 986693004 313173023 491414773 451661584 492799349 977845796 418059530 404950303 130922232 469865595 739787069 731332039 241088794 269761824 151687254 80919897 534229176 852067531 804626527 650360397 391010420 689465053 394831657 794315469 633971601 92418999 318512579 979512095 515598368 464400381 997901790 955383506 926684792 993200694 110555076 894861703 700270744 919324646 117508509 624647539 493278152 92380185 899202956 598167297 464244859 734916821 498761643 679166393 922066556 15636956 577349453 845172294 147136009 765410046 833492688 108195818 513677406 652401383 59280374 71063800 295868511 750094968 370999404 915559644 851504701 432253463 831268535 831070443 872284439 624868072 226208224 436454439 991323403 218177273 635537740 142849372 951153879 454628206 620693227 144707864 2514886 622790067 540680848 641451782 462529193 838179661 512004389 200461571 889332949 981436651 38705974 931183484 987140046 961330681 32385767 389002028 989189708 747337884 636045153 850776316 491857094 683244447 181982908 39889696 400445451 48750824 797198182 940771399 829100993 125401030 564286255 261584408 558393618 841358596 245960599 437612377 79422144 558507846 299432590 384245050 282074175 617279293 199870324 836234612 909789495 160095854 214446980 759848266 182115283 20800259 443498535 740702150 890236107 913395824 753047380 515574159 737924584 889858599 951580213 189550376 512686915 181133817 142348905 8549050 514239332 850135000 234160195 730563656 665450259 725809521 880948117 659695603 941410413 613351561 11560673 633070126 607181255 490297230 953310744 73146273 781134296 537331688 716744684 343191324 316757600 143662598 559711920 296489680 247312297 240130053 299415421 919808170 712399906 118540 830352745 158602400 633386229 191889559 370063071 344849873 974007706 884995692 582661494 769947865 732592744 145747897 23249057 795588259 22060984 753324088 622144193 714322583 698385341 189996679 373103447 292039598 616443211 351676385 351205799 671541829 863488893 820505878 489900167 672358286 227830940 529336507 670253060 240863069 981106941 305574994 315526420 416910154 899809034 263064199 469377009 358691977 849971672 964471115 123196086 825906601 232563359 680717310 981360095 749781212 188740700 737519316 871209463 471684734 609894308 468766478 935805019 341087386 552355433 369837771 416318384 704304832 242966240 298669322 594645949 375882226 854067572 798588167 936822496 67500730 388593223 694869557 376731810 747795948 827940381 440650720 804235129 354420521 602870352 584187426 501150319 874890115 787241531 6909379 336397809 275349289 558285299 843049874 345617387 911316924 310615054 751252337 5338073 1189522 215034274 664690760 120865668 392874817 470151138 541404524 487558060 434733680 402857207 850409278 290799929 434323636 610408265 659312288 944177649 863150517 841829194 989524658 213996383 993319432 960181293 319613135 71915528 316438961 506766234 322537512 489642734 88752122 304734280 751197898 306086251 291186405 497244503 756436050 84564085 480387896 134204607 970849978 354805187 218762158 889953321 465542930 369741664 625876936 902386 69973551 677823014 958049379 949479783 654349592 22602976 354956923 623596384 468175812 862162754 877653779 311146939 107643174 125902425 964043411 904224954 873221553 640178290 530633027 633721991 647607504 922160805 368108842 132997447 683885446 507002663 439165058 255011289 790524301 659771283 248298068 522580660 839272706 730464024 281630099 966097689 482078369 673999836 973628933 857515775 209830431 80422419 709776627 961162009 271888088 629065411 617003218 160586785 961387975 360226731 619709087 47486522 922455236 397295159 706514501 940143892 514231852 296626838 202515687 864878715 196777317 842131969 585786990 259058308 739969084 144155252 349282554 224845313 265771297 209553700 754683846 33937048 374957944 418200056 583283738 247928413 512495363 787013689 399167319 885011455 890121618 409892189 468216949 403597542 451814034 797984602 465026140 995163909 965318635 807810006 816425131 150762757 871357336 250646832 851029538 808309530 833800318 19778557 415468205 811425296 12180853 474320365 682438469 43194643 982216637 939041756 183475825 512217167 680867812 688635014 906158466 760783632 528746138 45812062 43714486 791909655 590139047 654672784 235138562 850485070 450028154 823760045 411957755 596440101 449215558 205091936 404523335 682549683 883148671 800274147 77859441 138982711 774171304 24606927 369567640 280771226 632802581 946259403 611519091 172336588 652221793 483116095 993944121 201735996 999033651 285960800 962433285 631737551 669211426 934180821 974093062 12955161 502431938 396094990 83773815 407745575 736798437 166315807 233215595 911040602 397925999 640125674 16568932 784364582 896763362 421311270 944178141 423811371 353732549 948697193 387819772 125548090 281042317 903532282 347886473 299597281 791925046 442331432 218223397 530572377 275345060 112391392 111050918 938564949 344699836 514141249 79317368 83390797 79438625 588945780 680822009 858992344 548291304 602510905 576216070 538450364 743250930 139920760 622421345 419670210 171906159 205966442 128491094 22300158 987192050 936891985 744313165 150359386 43653554 944274558 526068269 720796241 76253270 904950830 606461686 451296060 688540987 325550801 566253350 354979135 616991204 264001549 889474850 513192151 795602234 301446854 131815940 144547527 608372128 765633115 47250713 742276526 971978980 469470892 551252152 385716897 386188834 64399836 97791769 184700463 142825376 324578342 471740239 258876141 91939827 112843683 783824829 548109277 603958494 39232848 296914247 108053330 372916242 881742821 959980550 450968752 229311843 248139458 53452597 367154766 801443470 559293735 556694538 650001076 886734641 551167348 611674691 19046162 129031836 164816937 442248543 575753744 755327021 747067360 87355104 64768537 576015894 485081571 632566013 251323494 771782508 349428715 601225335 46438353 257726799 354396941 11833534 38239814 271809584 99302316 380305948 265866715 484249069 7882655 701860915 179684851 254835355 855758670 58414703 837235403 773931100 603706469 591244443 27411808 93817813 94335105 354467831 141160463 225636638 226841990 417979724 719081404 629283453 72532120 640217308 762551738 192868320 992570924 85500870 581115543 259492678 370092930 366318588 560628946 39237393 204029698 603644923 256184819 436259719 782769185 275016386 770676362 163555481 300011737 343446760 70561952 434756616 837676137 762243343 896130248 43720200 826493157 481402052 769209792 854754257 786781028 713801075 928694375 129415904 67423372 590633029 508849111 22757133 962883252 865042502 514741357 778533481 515354261 422363937 184752416 680287195 257405584 85546447 456648982 38914672 973066760 703924785 51034388 71617934 418968345 489311293 104372408 42959371 86395697 824761855 129316268 332857737 426621579 796663503 240058634 159632230 704920996 911870803 40118488 564710221 541074128 825029367 235148114 596756772 174340516 122211997 456345591 209554855 885553863 756455822 861352233 973843749 41582859 309723750 736702100 266863384 931756986 146026328 434856756 950208595 785665947 788585416 693121050 321693632 908801882 313705377 666373172 297617693 6514969 317230755 244192204 567047967 318719869 448139220 249985158 116198524 158050565 804029868 342207064 338401677 867191989 412457870 302274395 330827761 942830137 328687877 342451499 740032396 562357835 459509837 306208215 934240091 358652839 895979529 167279748 161120801 210840576 189679724 171504376 247009925 130512076 700323074 82912870 701692523 990094380 266054651 280262174 870161855 503850597 993691983 141763122 487420789 590247953 132042081 629373876 466144597 469799161 700438998 373249562 621938209 646532960 346283252 45924587 189490719 464144743 398497294 725870453 319195089 35670530 180568145 469750712 641329838 451923933 360026011 950128478 310442731 646325744 698258144 865982320 748877385 371550405 55595641 977348546 350051628 703278665 688719906 209242477 233240738 398951231 741962187 283811886 85272934 653157968 642835981 50267397 409210038 738171387 68434345 320866080 748976685 388850434 459113511 786825135 22914900 776740272 334798431 16755777 773533529 777133797 484713246 60750448 549990937 836600010 56090596 776618352 787065353 575774754 959319683 501531186 241668016 550644335 254691466 968778628 55381504 301953458 725285097 609931463 644586520 965665735 117319077 410779623 254429037 771159805 762997503 845071492 845398996 123387564 241677722 726728543 10846151 211987926 907296045 523737016 524243757 978807904 364978427 314768210 510912828 457855378 483224715 792507453 964091691 803790195 676707559 988927518 174166164 144445123 153643720 705702039 399715245 186372200 937089042 207285947 776639097 303771970 44437809 262584036 767497076 854504331 436650041 271008157 313829136 373924753 151073102 884116523 268680072 909752859 885986226 483925596 145377580 566141803 791239891 136500320 373024218 198577025 488446764 69332574 299775478 65121814 834801835 320480911 829451268 652655975 993771208 857259248 421418188 331629946 236820280 485438473 647767960 868913509 235552278 958726845 686404047 426436057 802043434 333433525 611884948 386137875 837344677 541351085 724607395 41487871 50125577 16076745 414872303 9170649 41819213 921854499 932139526 324153278 569777347 796567702 225864214 566045500 80806457 468932182 892203565 355706464 3211732 32146727 861649065 815383057 808434367 186374370 897077092 374474396 173676734 827892070 566731595 121293519 161104048 990112588 285404628 548064422 153896507 654661387 203087342 412408068 509993450 623530290 163760398 569341491 799213042 601856630 937697930 51273580 731531662 896421509 7773752 943388050 613652572 564422369 748381512 317797735 14933992 150498189 294024203 706238415 635608520 518853367 285214034 532810952 85753935 819714816 109255850 964121438 187656177 185382182 113617198 927721489 592523066 263987436 407810504 181469187 912295561 180112099 56214257 737494667 866627438 516253395 641022629 705579500 988673106 669745401 25712571 508873437 571837274 7822730 328666407 158134729 860971802 283186371 475470892 507628775 276155397 596947691 186501052 650442711 710031424 815576982 260088048 165047853 825602251 968828349 2739163 384478960 602376370 165156139 684758029 616434388 278146052 210089790 399823929 400320178 405299517 590812591 973217739 411264112 266509363 57324077 915546619 202433968 274781695 366302858 309043985 634408446 158516307 873221359 176538294 146947415 111198465 218282134 474083692 115357543 359727732 768687317 731950336 592643667 527175130 625746127 705555888 44622998 567848466 123324349 561837790 278374273 931689421 17586081 929311830 772777734 91884901 51818533 671339609 930568475 651134318 196583189 646331518 455798127 429768047 562476095 852322214 299039932 746262491 438869810 678607340 7148175 339657094 276554681 447069812 345967541 452268653 978894607 183491020 992422757 523789199 150553241 602997253 12889072 602178021 1059053 495964195 841073001 109301359 943000339 128716261 87694603 706699770 158866912 991365248 329734343 637096224 299690813 469320550 147826451 18099787 485628226 42665359 185786489 472459895 86839265 345030885 895640766 310645466 395191326 2706228 972528497 597377710 766040385 386040036 544018359 923306581 544207691 379143263 515569488 693519780 7180021 285118989 461133344 863999955 570751822 823638331 145085863 813046061 41085636 173814247 917972301 336783490 434118016 912346327 915586496 998796887 203618403 220825813 894895855 152913499 34686790 207065095 170006788 817456840 409076785 701308253 140285914 48185813 75769612 155826064 251056237 42657000 590621585 159850497 992769699 468021080 558822268 955626680 315060151 481176080 942082220 397961007 990919016 254246634 968630614 159027085 59216657 345832608 183157578 991034499 385712825 951262311 267701629 609298465 546958664 695323280 753938117 666498334 27195202 142836159 970084298 969972132 132011650 780419159 50302168 585931960 388504082 239856895 165201069 324954035 186870297 375189724 465369624 40098012 652337266 978768382 332969887 805405714 788233092 738199517 37448268 267175108 237586979 264480512 406176090 409729045 661167768 708626611 750726957 27765740 44971253 145496903 305048351 786109057 741978741 628558977 363052930 988513638 887438354 761891464 477291731 946420961 970502715 468309586 435644337 59058874 44790811 993235601 707511591 146162372 600532277 733672247 391731530 808456725 521644100 626857523 580672020 647076722 723151641 455219982 717633068 396096965 605033286 665767013 830902271 728317065 411008394 437938735 164177126 574816605 131570531 496630415 529311411 108150791 121443119 531497447 232863337 696298012 899744735 171615077 792608218 138059942 350647363 261865758 530169561 292709535 832289595 610689893 654063777 801124472 803123145 987736581 851447919 849073242 273102794 886242790 627577987 826292760 432417484 837722072 992797718 731139719 943113719 183102670 508549973 782130888 694470482 390632555 70247089 138560538 288373535 783304096 480789612 865730610 108867276 570160740 383170432 15890596 787616551 883620458 617699338 95329428 502140021 773437203 951624128 987428592 472651385 56126460 751562708 306414164 88704326 262189231 473864223 379123709 828747786 90126811 326831613 113745093 684993149 53357882 91022591 151980388 204541136 827858939 236037867 663533384 101953915 666460555 42440829 23002033 955521342 754889656 108156196 645241270 56194842 500361758 96434741 472833382 643108431 166568486 95553869 38744477 200853812 267844219 850079789 672960245 56826050 395724566 590346839 453851749 660955565 131748796 422648348 591962252 876425151 790381077 800148195 440035783 20102558 358516151 859044255 447300910 995563207 444764612 328340123 599883317 790332334 704151048 558857868 450311202 600652885 420930361 190920640 222294376 132021639 390286973 462549107 858231663 819688284 593086828 475224485 863486215 603456529 496066201 847062456 920803994 849471519 490778459 819622283 319244531 679858920 68805735 520205466 940166136 419474335 876370664 428679424 356265811 530581192 138215715 542286456 861403830 340765878 826741570 872277385 485380572 954241484 635895495 344537587 961719721 499350932 233399643 882421963 931210730 157130954 583339060 522401378 873694528 300049183 590459497 937219448 295982891 810685441 408684981 740631790 777989370 602819994 960890145 9837770 454099834 363368900 211352334 836281743 632313485 152787674 557660850 21106732 633107974 843162937 726502860 684691368 306705411 520120819 914714744 6970889 477154606 340393272 276644939 711138351 59046628 805403934 416210334 607649564 747936555 530374180 898003711 301500245 762306189 46229462 451798173 318903790 214876776 399404848 164081363 498181084 621553620 342321363 675302859 479598414 616652452 673525610 689312107 821064982 972327026 894862064 212639324 416125377 508581414 770527164 893456323 855183811 351731014 119203349 944739714 382824714 493460802 400227992 438771963 302005242 512525608 501291021 789235812 826249761 617834553 932983650 808796106 400663916 707389578 415940842 693207028 261107193 145171120 169373555 785196545 124540755 605323438 32239616 904812665 198648192 416602496 792358291 651784658 58390074 809224780 120607296 979827461 468821398 593658228 475690786 669362617 443068569 512996405 319521008 985001800 129344753 785646417 564751471 216649705 495057441 235055215 506986458 149640250 126634329 107529624 154100454 180185752 187494946 196431535 516203698 764352113 181763240 935382452 490812993 398270271 442888790 949714275 701403623 758433729 868005929 122235925 73991610 589600071 89778372 133461548 822390336 131372508 423363180 25029913 445712363 980529135 767737947 82289061 735053514 619440285 746322882 362680692 638537378 358041818 206373588 316477574 933014030 313561362 425026001 985543780 343510272 49611755 206233806 899698709 45709583 420373726 441502030 513692173 178076737 438782500 496081831 154201820 476942144 290785050 84391987 800365824 482433978 274328642 892798801 185967835 277918939 194662681 777807033 455220415 102083704 762105801 285009347 714789648 75761012 373511008 713904820 563949375 617113656 834945325 809275447 789415750 333095425 351365976 671884150 638867340 375364637 721790091 336500503 380344376 732314841 373592973 868354680 113168236 4938752 670527116 284454420 336250023 537502547 371698570 358683275 532205661 150541655 668513247 977728284 642989808 213504111 887757375 780740442 951643837 85505974 497065960 257320047 57960384 100435968 712815260 729843457 572710346 950327080 433700782 538641209 113240611 820128862 224373404 733659552 689323968 324397430 669641604 571621623 802965211 923048650 690904998 102076503 335329409 52520989 298957355 594179447 329454899 263042274 389519756 947222304 401510164 2821990 261766689 400793114 260565621 739598211 629660090 642991440 651781746 550237122 781988027 355312435 473646097 799656711 62911499 994245438 298320472 943617717 665992448 937550069 607251022 197536136 631874068 174284683 377925969 87302093 832685128 564311965 861127096 979675644 112050003 363118918 435207824 615607412 404409576 429848341 24936082 923331263 296707225 611258217 997049302 810393313 923901723 662659490 745635328 987440355 646520674 852283593 136829290 927564555 705058777 138552714 105974446 712152152 668970770 856593382 320587086 667767578 629929241 960321261 925605217 666750442 91915645 497452892 605898563 485991211 975535025 537696924 111540427 479834137 22526128 643148650 136828026 974271330 88874182 116959300 871827726 471452196 98494854 221874809 231904825 562120609 217681075 89392894 505401632 796261930 647777374 46674465 896187190 952529605 325773550 635742570 287649690 128365719 61571710 801154498 803311572 566772627 622654350 889300383 519070946 250718382 169236562 770148115 287227220 67584004 271717592 920271184 334229398 458986752 873806324 747233841 553104467 261412604 855383453 59701761 448251340 637270236 751069526 9413846 126485905 728995395 76278901 274988936 466417393 594906537 566094308 861835837 231756866 416163110 46857981 15249179 776250929 508593709 849843709 111742384 414854685 632497829 121303549 372310951 180449309 335354667 30520798 649994604 614848655 315358228 285620567 160990838 658407221 945778619 459668581 538113181 527188436 747332005 375626940 923811595 769118622 647251743 376181457 70851068 206314070 659278391 195678473 291875649 780777907 699870328 894289000 737699617 125066383 603997406 834130664 147527374 192857653 862869327 592804761 830329534 524456894 11718024 769689272 81010590 21436463 174632032 646284748 329503701 536939271 522950126 403682595 179003066 974916352 205829260 308176462 225046443 978529533 257864088 867243890 251556503 942420202 126271521 281375111 937863684 5895414 103081157 735580867 915256624 682867231 117711604 758368851 339735860 248784070 206814647 11438088 527233102 75621977 481463221 826979339 302964876 568324850 147224102 209487848 553793664 662643530 851227146 154436980 279172857 718708604 496098123 675079129 591780706 358415700 17757039 586225672 521946672 21542755 215921762 454779760 546732684 952739679 157134062 330245716 580788459 384629027 237751313 882901359 274715786 956971648 443122056 334427785 713845926 305367531 428879355 35017591 103853332 351536700 591681572 118685655 311580549 15978663 37551499 216008877 121734687 596099088 870797039 633480793 101411098 467711373 889092208 793677103 873637603 147333891 500284259 672997336 591771047 298721372 556683907 919094082 805398140 83221257 656841165 285746682 114426370 108376527 648186001 581554691 3646393 268947313 597606363 129552976 640314350 826839136 302995723 607696033 981074868 266878869 785604619 921667114 672545976 237042169 178083604 760828219 898557782 398378045 983168774 45974782 94456614 572328141 335668782 2617689 86616792 280011039 121588643 727737800 960617175 576759543 377608445 85268506 14793814 997471121 524335210 645758937 702437824 700433021 33456589 240829761 731853784 800794143 327013995 55860434 279562104 853988856 564429639 312931804 998014505 974305767 474434315 483591553 687514918 762369360 557657529 118638091 846944900 273603503 199105362 806291148 224292317 336333787 233080884 187327277 598153878 195173251 615258624 118763746 136566434 531836211 139372617 408936618 531333277 526791003 418369149 241489479 181123779 509181649 335663570 526485837 434544443 10694734 843938539 183983399 544976993 886755827 719389209 261082343 541736817 80746730 459932391 567149486 505197897 84248643 261034304 484136298 448997383 336298795 167664797 366844599 676460609 324233861 437156302 303266185 231594105 135734800 448194453 878338025 113264080 683676630 645992965 478267505 653996036 843317391 10022621 140429120 699721529 335877081 442196699 141817550 497984281 486215039 365376364 177412356 19349203 61846169 529222308 295637931 862842773 286740263 117483688 624684769 926302018 355490195 272362357 353009159 557878090 313160797 392152730 169161793 426161706 589047750 371870003 392680371 811206899 566479262 851979381 998645469 624673771 842088779 408145510 792496796 308289478 447839192 139038116 484515860 208236373 841562414 977018998 583755973 914359492 234227231 185523576 458487939 5517585 701670025 711699939 981942142 516114233 548797292 842462365 943502376 342757296 738951117 612294762 283366033 31843480 145834279 454566770 721103856 678340287 902223061 342378909 807854274 534693441 614246950 16274141 711455763 414165227 424555650 442447399 694043403 575892598 158340400 752443112 618131988 286834910 918609199 835016165 935375597 714489900 291450178 225343097 450055263 652505175 299968071 676792490 305442943 8844508 628916945 860532668 633744187 903580359 285434139 615094005 151197197 70090794 558049347 955343406 732844269 859567597 131722140 558328230 817380421 889015429 849302374 908252472 383776203 957237949 550517259 123208325 424425332 768069723 455421811 99507933 229435667 570310664 522357585 724555180 731178778 598774024 262255823 125116894 375901665 386633647 886236645 529929835 214260352 958405306 684098139 371579919 787309885 667519882 973964755 660523668 352585431 586884671 738343047 7925892 18910002 513571255 339037144 577957643 346215080 84787720 290740203 112245844 865621177 12072299 336317745 573299117 508265198 125269745 487200082 417063662 269107485 522149215 690976639 870516870 513823168 80138989 291845693 79192428 669151109 297846751 637288957 968033567 590918767 63157865 531687675 852088540 405194953 265972887 189866311 520855351 709128289 217907190 841873339 942042526 932586374 911909706 167400177 829577374 330589727 442613315 322065744 845649711 708286446 447271945 218247311 127811204 816281451 14956976 55695704 171677450 40252380 857908704 597738964 732820113 763026235 337034483 909534171 754274788 582543032 177307914 160294813 729000754 103015236 500516575 575846949 371228412 926178553 290654269 470160207 269362178 272726752 807584801 778316196 569373193 120688448 446328357 618701789 609668538 493500375 301802288 283908078 496810446 494275340 723028470 553338468 707100508 863540896 296663210 292348440 189281216 368657302 289286701 742865398 195463365 346883989 51407749 9231777 190161811 776675917 568593464 456727455 729529777 86013007 92387945 433755877 19746783 521472710 918809966 851203823 330336271 578126635 94042535 256296726 919402131 221545999 587303435 104523155 436629066 765150589 526458221 493275576 807263492 534265964 607338961 359599716 698033846 848081977 926202730 631845932 192512485 167342745 735159065 635479120 855652607 965434981 211617748 399719027 389024708 554487219 532879865 682950793 515183553 896156823 126188816 857921286 311106306 141479639 150260502 42255631 566242188 710796227 28128959 464620562 785456869 391790277 31325434 171376392 310657481 623337726 274947694 190207361 218367064 502744997 738519283 424644446 194397014 961473763 992722876 964610778 463466479 292344073 851636089 588460667 58183769 323345785 633468049 701343953 634337034 704924039 178525784 845688555 335626471 444381348 889638028 81929954 20469503 638312832 192385831 187147304 827571650 936421559 823731883 893198881 823928187 293170270 817643841 924413334 987003963 793918205 811276947 801525626 495973871 908246920 272715714 120872307 428754771 223930854 774340238 703761180 23793172 141085355 17009031 253873873 905044357 98337207 210080308 432350743 72439991 671251046 645770124 482878796 200804548 306214859 121462120 689444428 394880825 594456489 210834841 465009321 745731816 5612387 136302458 772628330 985300349 850171807 436055508 741470228 564595266 164115389 806631205 845342889 512450644 821717413 76513121 840258614 441099614 181948675 101873727 10366704 478214366 226741769 170963823 356601393 829359616 697800347 178434783 972144225 621015830 575951627 984791944 291470580 642918330 715450933 135719509 159778313 74403287 943605932 990928222 158963934 344428628 501227496 216850257 706465053 8914442 331767558 958968057 42383044 721122174 266157318 434183390 300129196 946360662 688604430 548871556 418835187 929095125 276852690 332026927 150479923 426401062 558740490 11448064 711812215 694734275 181068148 864735732 968242288 728940365 138210669 22954028 208214272 304301327 135877087 603535140 632871255 362541818 479383112 418342598 809755615 888826342 41513960 813649700 658146322 224433850 205347558 578720217 337019851 643001240 741812393 750959064 523539116 746723573 600277286 901273974 304079777 911886901 329137982 303328028 333132652 930690082 622986413 518491421 586191085 865457989 963503639 337630423 342867848 362179286 884136304 517754337 56059545 701462710 264045961 35293218 653716119 233160790 121487753 272878532 477616888 890481808 171429863 985555818 600163470 652677101 423911026 813674178 54208536 149096217 164996417 749484801 147083169 259940191 955599600 480407214 988338967 729632878 944560485 364488040 249734616 356396823 889324756 705589583 420467873 253451138 352847490 272790213 625631774 650785139 4561846 929678916 140536310 352448308 724326166 17795011 624877085 500449149 157075782 825950479 815867926 608359628 613438421 537700842 503577898 838766620 407089910 808156740 545234186 27100867 888826973 74007877 61542679 723857450 641557277 289058425 80169564 116296929 94579171 661788524 53803829 77304819 107670650 241238130 173266764 494317109 371842669 3131523 490764351 798046122 130405539 258552781 913704478 597587683 472876772 173723596 127342480 575752421 750008596 102583010 743626780 494756616 631548785 537645637 100159513 856675907 641210751 492505357 634380994 546323763 977712410 339578582 844142008 12364251 776346872 939689030 211424947 181934349 450689221 212183136 359584652 312371475 649945213 762863550 228080633 128986711 996804221 977831150 270625756 679610734 780626491 221637158 205344127 549763945 142939299 921438608 388876237 625479356 225600993 268156199 307025853 940502370 411994585 394605510 299633707 3756476 687867363 654189846 266540011 761817010 447825060 193359421 788829032 63913629 595972478 912121629 348443580 596716052 951313 15831259 192342196 807942040 37797894 658753595 942777336 116679361 979547412 885315464 945555463 84855807 631436802 172738935 644424707 231495001 431365588 27424227 699870387 695681843 593303351 541818838 839910466 638047001 622753169 336771233 941876210 801367588 773607931 433153020 326021798 846060784 395116791 413204694 475834341 927769492 155160849 656598745 942790219 797208133 775736518 483678240 937574879 610232128 707962121 394196468 758143131 283630045 490527037 109718606 899180867 999405050 512582190 192638820 7990641 170703351 791348643 891206888 506940554 367709210 969785372 868718579 939571028 757324275 47718530 382046475 85970182 765732923 421862631 752756807 617145407 861909834 923504068 944701789 732779395 853012556 835969546 88354477 721389579 830488164 897484730 836482883 83400467 553578423 558744566 975229349 294316602 996870086 120886855 70570612 916973595 606109307 356033817 709010674 799138220 123657355 749184352 837654326 248208939 877565573 151400432 781277960 928982852 469318590 921738018 991022209 423316143 499133031 9763590 108434718 242409149 683929359 708877381 419319990 334995804 228803937 233024603 431357542 730915352 208491841 693890811 824216373 176314816 574590110 377976683 74314987 135236100 420617113 723683105 162270901 805780706 796964282 186432838 138165056 401712522 31574025 681531209 160051276 992901519 799907635 658209263 893822071 220914428 399789032 954954671 272986952 775339508 855766344 688704482 207040473 261019188 624437678 435104892 477323954 718140065 443486214 29050127 653439651 160860226 13530121 55759769 304280555 672218257 751337882 990544593 526793985 386662251 806665278 354880249 634561464 531061045 892503517 963071898 85614507 643942087 961132499 257880685 610757261 665176906 807647491 778830432 731799327 716816216 113752249 757754593 301875318 542608463 87456677 730427459 779778889 32851103 598924863 786940280 865431752 134771531 284943079 13330803 636742113 953551387 87412437 900801914 134187327 928002420 826877961 992917771 873364190 261323922 310309636 740029122 18323296 51544474 179928000 268602917 95015355 753492757 681378925 435252077 963461917 780559359 593276672 356234820 836000558 809136931 173984719 483140812 945958731 577740285 328852565 942251577 912310277 819450827 199547553 772374725 402132340 415922787 134017963 933257076 364837667 279386392 533258878 482431759 677321941 97731469 44469261 516487579 350216910 523497657 864510314 931389519 843755378 110973130 246729553 29549074 916085556 915910632 519142258 66369754 979217853 230063328 3051145 328073698 169506831 39174871 593966771 305083244 991161483 351937007 273628248 805716484 335515577 378733836 314036525 364232385 256710667 739315005 930987842 826200170 399637185 430918462 934283690 460271071 534740794 878780154 35374646 254371518 399107737 356990367 344566109 528447639 367800876 886950420 766960997 635868581 85745709 22200608 733324331 353941082 303794067 313111512 67256162 958450151 386784335 35405398 174649557 996485101 37224422 584481568 731560490 736634361 77409466 544448025 40778102 257063388 883655438 175276558 86971618 46224238 673824123 315279666 864471254 922285085 456390226 912126010 735215825 168729178 571352521 839936091 943386231 495025212 249719017 485209374 453458788 426697229 847111457 764958079 841074514 434842077 236148576 194041947 831738374 981834866 716992002 838508156 156610805 536996920 134804990 231031043 857978133 431030277 502438580 533493376 934032014 348120373 274067670 968174017 481230271 856103270 446304130 123737352 966783794 364534373 196383613 4706708 337747106 580599408 438733188 282369584 846072765 3928148 107309825 488581434 900841753 682343660 974252760 382537401 484798596 407419481 680117670 652178954 814665567 362460643 353211069 798199993 802312415 202582948 504531230 884982944 49005442 243865503 839259624 670497920 689001621 509809824 786357616 116279826 812034544 486794245 921550109 70361898 819786818 851141883 702680469 783224995 390325106 218326616 240237715 556189323 328658862 597317979 213705106 498262078 162965370 929020705 343026540 407631603 587083508 328439878 659378873 194021372 909907914 813977736 507541346 775656047 140441230 638743477 901064976 627830979 504924045 958976910 425429294 850485123 893735424 168797809 827459175 386957813 498379126 452410832 501795780 619812959 450030647 510912968 311033179 950245962 424103028 18180137 895190351 341753544 669909126 723130661 984042930 821411289 367094295 120658643 604699725 273799504 650453233 587734161 606510984 117481321 617884686 718399769 813494574 232657979 33405232 947943397 894916654 166627845 722662506 101146863 599368436 855176519 982385468 832306225 741521694 410358727 466945817 594599139 514623977 166616931 798341695 209629878 939503960 816122364 904365268 339930830 215517756 751801133 507474970 587691830 946423183 478730627 715162344 295281152 305580968 537984117 881220737 817013325 933142012 326288731 69501332 153701451 871454370 931285335 6491407 746402610 588455760 158370042 960156432 403780416 369731696 197215536 539896119 388299823 172815648 189211418 225116808 698100995 161122428 697442459 840707719 795852239 412748008 922045531 870819003 538088105 168126684 65070713 221231292 311362343 580820723 188679519 318605437 166624315 771602188 632626833 417307332 926263627 70299084 672122113 152418490 95188504 429415627 467388690 736060608 120574802 487693497 49498318 292437271 860776493 113864364 366114578 984965791 484185342 280185872 401170658 204114142 609901507 623136864 213482863 691212148 63757694 168617601 429367767 810883105 116666141 95623503 317110510 996400673 233915871 209118582 220005879 145251339 772635504 719692344 77393655 602711250 45041314 910296242 308451189 435848076 550130272 121116478 14409986 169456359 512171085 109124271 992390646 354295729 832995570 794201544 225420027 533153529 337329479 623695176 97009390 147887225 350748390 667095283 179609058 719642462 86478995 144056099 433081502 978040927 697349655 209506231 380646234 819930338 373254395 391628235 736329030 121260344 47455004 829811328 915349620 705550882 76906484 775269088 813142103 798782080 96079698 236764756 576667665 24635928 436687183 818030018 494661327 140533252 407523105 650091269 104196280 811664952 965896027 396196980 77653135 749044607 458430757 904635212 641630074 774859369 809739548 326059630 159671276 736705814 156576633 459372089 873051492 487854477 189427765 152300007 682195761 908838546 567390879 467460718 959430491 480832206 630633658 326064872 302811370 773661733 500652281 290256465 561563437 380337850 885951936 387423467 198097825 209550892 106918590 563289739 21222575 846937827 825665736 795322056 350682962 939102560 889862896 952302357 529891698 920300279 419246327 937520245 79068550 299875121 370149485 717649863 711997161 475036897 304010481 812329680 911896611 586576948 4080312 817735507 489213540 968497891 20762876 91153620 799972664 837213532 199079170 724933980 22605063 544887047 964087601 684280883 317311428 551884410 879488968 484862316 96642555 856878617 644594210 462771005 257244033 932574453 90278252 371575000 383051954 614173738 223157014 781573714 291538934 557174917 755043459 395800973 227506010 402930761 512854870 285849123 719562196 537084112 379049641 288503198 718642556 356215537 990692783 224739495 968576500 900532951 488441669 271258119 790557156 509511657 501852736 390973331 817200349 62423365 619365489 625986962 582661547 683785122 626445641 582650127 648981152 837058174 302917275 259168581 394627118 732213029 221441037 156675283 483369222 119076113 654088926 943248505 93198932 633118679 71046802 804394302 466978845 703331351 725021637 258926051 394304038 651939972 110908227 954167527 872627631 334115800 503602686 6375450 308824269 201794043 479129314 706985915 571490680 990537107 971016442 396165921 77009047 655600353 488426293 739562530 1518439 69818000 297538108 537374053 152051250 528832047 346850619 69886005 368455457 840665652 748071681 399392327 186687796 599375329 185208483 562571140 853332361 221881972 804952231 191735319 783727609 53581927 294925443 129543152 347649832 486908321 537014174 475957692 378373361 33159114 990770681 611602918 554628585 104295742 248943714 807746665 948159877 756947462 823240363 787607813 334236815 155025019 12707041 91237868 875711444 51909056 296125328 452705294 709099861 889214572 491970709 274673652 142045756 624208237 630949143 486326928 665148204 874821397 440462820 723910669 549423986 387345647 593572392 440570798 759273693 77488977 271387097 387016781 941306556 720383255 230210879 27027424 429155526 418351310 156415364 899219717 734036211 24053629 1010524 754145977 857157354 887072310 77505178 945912283 407000542 172267643 41334428 957959168 929694364 134656890 372035251 615956318 391029207 5865161 171312998 147625118 252981480 730593218 626767823 135869225 126355537 749395108 707656441 821096671 725894133 499420327 307236599 388967125 336320000 58134773 633157352 369490766 671494258 98059 783321755 993565691 601359662 921757264 669038989 949138581 406550562 265204237 700700240 390722105 355692105 777663 99145700 693378511 762320262 673564273 945820630 325864596 233486567 302430434 779167494 391023677 564389423 202604215 253002878 826809207 857240982 344046234 106182255 330667607 87888116 330843719 133762550 601059962 909053918 22387191 83762996 791851392 24565176 166812413 363102445 36783998 18433628 639934613 234558563 961510618 822662598 716454378 642883018 131008941 464749755 504290266 497834238 600170795 665690775 990042235 415688354 488072483 487110849 536250994 691797867 403255321 562840740 344886875 829194298 364214224 880174210 383804876 235276864 488752453 891538121 127869550 370831816 518643688 626364323 791563419 663541573 401264941 858078199 21245501 944621152 167247815 656877141 417726722 56047812 555287326 468545298 384552643 651290728 670933963 563099673 628179718 877445315 920326383 351358603 690219092 475485349 399252027 220605765 772417404 959251859 761638815 646820890 95903744 266876438 550517381 269838635 276383307 934058166 784059550 777663075 815894439 716778474 927844140 821840839 462019377 74915223 832878920 701973772 581494063 321305010 718677258 144461868 958691139 383175213 145037038 835565831 907831197 277882781 784021991 892629027 260086644 471764942 164476333 142553002 50815909 514322238 368936187 297773476 843066898 33528484 2710226 497776089 358373552 900739728 96466333 522825476 626491865 927644220 290467341 200001292 104295483 954834858 699066961 365209460 778259906 302052101 256968065 690147086 229210952 75257677 414928351 826082084 259957886 179718115 333559726 145188740 737466888 123629898 964912424 728908564 514927262 228629439 200447770 67465365 105160748 863593782 418946675 809931070 38812705 693022558 15785910 186990415 422852452 551395833 357573903 411264608 675927396 705358359 593722967 190841673 11236693 718146122 54020551 313650089 447018416 346789457 117797215 184670685 213954263 804540366 507721216 445258885 217701216 209982440 239226625 209482741 621735433 147772853 341177431 816118023 554254359 176178227 110355739 733909396 8227874 865844295 68493790 333415477 526080418 587386592 291451941 964459861 137759310 2806999 200331073 674237200 866318087 816400614 39909905 543284945 793868019 167264797 514608664 26970512 92664026 448181843 689812196 7727973 559965085 270897788 804352438 859309729 321661133 738446833 182315207 436462281 770636920 997472425 273814481 556923541 885178946 555122839 476515736 291476546 596675230 560311564 518621391 332772041 970562584 29427176 536442771 831059522 623995186 354466148 919888983 84282585 220940359 414560283 586036390 559973391 765426595 802550620 850387604 613758140 870789503 826220925 221252944 602730315 833402753 659097804 126567583 19791448 441178024 641900962 610470362 630826697 869311126 380358496 812425616 101119773 386256719 116799813 888882076 457721365 816274139 257119279 67113710 822365152 215875622 697432100 378090642 341054730 142624581 814723513 993293569 201771855 316769219 522847023 198270380 452587730 624545660 47366404 809731421 794555193 431837432 769855650 644763924 486688410 990377338 170611556 289682081 443791663 241238806 965303837 368033374 483869949 324602936 510235224 318464059 88719130 180247747 486116317 568905358 723345945 19870184 91765823 245263492 335025359 850004417 839240040 898960922 373378054 558377045 364450585 85825866 145779067 255751757 704926924 936991585 855496903 17652059 744953220 167520363 224952305 862613678 438139420 123025603 738240527 704457602 167366660 555155026 449141502 143225701 53642960 589202008 719677989 379398672 206190012 355897253 49539434 356725214 839696774 698718762 995167602 659884734 733472176 859362017 236686417 435144363 388808482 373891795 790221906 446706488 890360046 88647149 111270884 934526665 516788954 616120550 10039248 308981248 673890507 814920674 256181992 994103412 927746595 561192526 533221934 273732636 61191449 921179316 570250823 386727585 161086817 962999519 146107593 250142817 271482627 118239116 948911806 615719960 700499858 965848169 552224888 659363034 242432153 894335047 291482736 833371813 8073596 74309078 841779635 121934906 678894852 43337759 312114888 835153144 583269473 753832230 949001940 32507867 484984344 258938374 589824000 668723702 107826197 807625648 267344538 942577279 346576470 825659384 534303605 67121144 845293077 74783307 815468010 906091617 183963475 917824315 787724704 210693809 241108072 482540022 553148706 637709042 642939909 157766242 360610546 83755859 427607812 134195456 537535347 767531814 707149827 120058731 831644335 320523338 61874631 869351361 353586125 361358008 974386098 632362514 159765510 666948212 210608881 467131834 300453355 638973222 295331031 352194131 402273346 290130501 540329292 384121047 931615641 147806134 485602533 772965382 687911676 740433765 384063041 274102676 202151598 870304760 358022738 620113801 271972741 708791775 998137549 645046292 18781449 224732635 251715635 321890621 70898136 246838838 825423778 52692065 300569371 158255132 578469754 340486508 933528481 772778770 80563120 913493244 408531835 589420501 11364676 895813287 594481835 36990828 33331432 87902425 227882718 496798552 315658063 951365547 515254714 944565069 132697020 298105151 596271876 777227263 934998798 200330053 68488810 894675978 248133932 313303067 479117317 815315703 176952853 539081971 342005035 24373868 307576332 234497853 979720212 835190177 857911953 221406862 203608342 485729495 192662720 583891334 892971597 959858966 124085637 827526956 261873053 872710512 721411333 321657771 799112293 452679818 264203215 790534075 855335329 897454539 635736015 611057893 589414957 522508722 940057062 963137811 262096897 34531464 765187176 139382277 165449827 586680238 312852527 620929039 127271484 811283350 620148987 740952695 679830399 820356789 816270032 868796782 115786228 403450041 346901977 192365275 576256224 256172188 733285192 590985952 679442187 274783451 274893665 459459781 283418660 450794998 413365411 458991528 546407347 401227950 644846418 133642202 636434522 76143412 502781753 891869528 961654067 338131176 494369550 470702339 423648050 736599381 918578575 490309960 57201398 654132455 75216577 642065648 2721428 458653477 587613362 26129835 273253562 453723119 492254091 607699384 794510166 415766094 515591394 385750104 3489569 10186340 946527896 709541394 271641357 780422767 451643689 268159022 133067696 231048623 638159690 17672035 263296729 361297991 77152225 206751338 708015638 917001077 823768037 296946786 436285920 216299945 87311515 263762145 198262867 102968879 629453073 848544690 369555447 92003145 203097991 521160561 822706398 647444452 546898125 130308124 918028661 655337184 525682739 254280334 724158941 404782232 847982867 699521038 179404374 897426807 559443598 927330314 232202074 888080898 829668296 516897944 645493625 407768079 96700882 652602728 157733801 810923709 163932785 986856070 662917845 193942159 645368343 926026020 342811314 318768149 602452291 531843433 236799620 394402382 877116904 832806626 254541325 394334635 794885590 479307599 553238457 741197393 959064316 804496776 450996849 484414932 155982612 232916929 380752017 646010936 64947920 44337136 564467587 443437530 830999829 793925437 673491232 843686472 336243635 423188197 812578380 837235444 997839695 444017114 980720811 687503541 552828945 604095942 921938657 275081593 760022559 229619197 88297864 614139522 220337754 320424348 418800154 261280996 274650935 692135912 315832886 615407345 167236136 596227195 875039839 387704997 683491478 119488381 269268847 373664014 885758116 602143932 171665717 170398829 692057162 120509231 413181546 663383635 569873569 522287932 983007827 242335633 273804764 528513085 999370199 845544530 46131523 80691033 54819974 250321279 897426960 896572192 928502030 598478214 951855041 658718412 254816876 396986447 838394847 77807947 853846494 378592272 137244656 93851071 443048296 781090853 84125219 965834209 224685757 71871739 635914460 734294297 583105115 446657403 562273466 787745079 220612243 170963567 129625849 791382224 108361240 230859746 80679841 580000610 668278953 633213591 63029794 357539636 80957978 457945886 879947132 497768935 262872541 497476167 790251496 835811362 71298267 963313907 590893949 389706978 28072946 960052473 902092092 132582021 666628493 864500497 965959203 956858157 12246199 167051073 817472299 188236342 416688546 858657984 494477169 966409054 726346884 334842506 180555954 814674925 506471064 938054820 257717045 370006772 923008831 106612988 881506492 64224455 623149869 735208399 501896980 563698594 600712296 679195045 916139020 905206585 174588840 222668580 192062031 810629345 328811732 803343132 599273628 173546320 442885156 300771834 951267155 686581573 156302602 174908471 105686942 723919875 834018667 353499461 61568640 518221562 190686921 89582207 290041349 834631994 355997599 292504268 974780987 740769149 807674779 651446313 855718924 136437704 535364376 244709110 582379935 440347864 627489436 225877622 987128037 390886645 989621268 769798942 336898835 289919430 640931269 407938893 435948553 739047106 117631423 354545132 187549843 413315627 859776116 23059805 170632132 669797619 208544774 405426534 468384081 643484137 502620040 504929968 740079852 137869912 39922981 335489490 286363234 758478942 317862984 254921989 893398676 721426338 505391448 626028844 131893300 275024675 492025924 606384409 364682815 284092467 523562217 520567037 31774004 169294880 615457961 742255772 270449430 473891233 871719833 821886864 88918171 593478240 738472886 823245202 368162598 536694606 839530721 69681721 865217454 643409063 441156328 384303087 292858881 841818092 109826056 631808274 849413415 264054434 621607105 208471441 665301336 808146296 995034716 365735911 329979738 406341830 531236533 552297291 387213194 340833312 437997735 518524277 939088202 626225997 236160600 181168953 132026149 441438964 979999639 165599469 964801156 218673445 592117471 889476779 889031134 897172260 787984780 662593527 457279186 303193047 931606241 524463754 695294805 796716562 421654537 613506793 24436889 716778320 426288713 554425909 174499916 810357470 419726223 135593113 492018285 22395518 4914417 201714817 111684233 743653948 223447612 137997702 837757873 35287579 786525160 636722292 785701377 140846168 660378994 517549082 849593647 427246814 236060554 971349350 417315678 642739986 771817560 747644027 713659892 470520511 279054050 134639233 870148147 114727108 863797044 618933215 760839153 882208706 331729411 252933656 608558827 74657280 39764647 827467248 128280898 525482618 129329622 368359631 992866183 49483069 612072208 138844341 4557454 159026515 522588327 568799874 870386279 257736974 190557850 643518921 223235367 902379971 471625857 221544468 569409486 61246545 631017530 894252259 529166679 724980514 136572544 744608920 177798831 547599610 213434782 729611353 604959769 900911837 39528559 79961638 295386556 403319428 827929006 672388190 502919826 630820823 787777788 969135545 649778690 494268417 104354219 607178402 788202897 711494599 529292981 276294492 594449570 852167899 677433387 463261578 874500665 702776547 35744754 508574649 5381064 130449454 325335861 456193333 865417306 383724793 294572338 774489409 153114315 305338203 848822733 188022389 70958252 834679795 393941777 820174351 743835059 507888876 965975467 60684736 108429436 272379295 756786741 146312965 949882346 520038395 98493379 716941405 162864623 825309326 310679698 125153284 721569828 175053924 965202522 858618065 269622524 926875590 436148222 579788851 717602876 246841753 757297412 763687854 439196323 676945114 183392839 411203057 27939118 925763928 465001061 374276140 73341566 540026246 214277540 528707616 634201321 270323365 279036543 454740484 14173261 743624688 808664500 191488141 437927380 884463017 197736888 23728580 831254192 750483422 957866449 345644057 39082803 172448814 159359511 958131552 682542666 813191408 642095113 902967885 207089237 108007670 486633974 818506044 989284335 705164826 641111342 380064480 1063768 58901561 841045717 752792209 194137537 38772570 668553763 409696051 204543501 572067221 142055133 297901261 896554988 731014051 461886848 999774649 563149215 358006273 974825602 128673020 372298438 885957507 515994209 434051624 230485027 459555360 276110819 729095685 715315527 668016093 845021422 990601504 829453653 925479049 859630121 34688678 776773123 814263467 959420389 946018730 255443881 152675925 202674155 42956363 670663583 425730427 886739729 348121523 725569440 955831008 961624794 181606155 227303314 362687656 399234449 147945255 7470448 817493655 551464593 994928169 287051091 880310466 853252010 383134942 135896151 181204864 272251751 136019021 974226345 344259653 915358855 61020133 310439406 896499820 701585383 835741780 66552849 611868000 144316570 676353647 871146862 989711011 119466042 384366124 557161972 804114277 891711701 748299535 988306852 989992268 408432929 452790630 672996956 899267554 624662910 358002962 91404471 697084107 971406265 631226148 751145075 609984049 612173198 762457635 282887151 498759356 715427078 35926663 274365754 263298132 968357233 952596435 9369004 890011637 364190180 482972448 980452359 790290959 639876661 504900840 393974399 107690587 384504713 989506207 14110243 147771487 672377766 600448804 491981855 223656724 887462344 48824762 339524270 953127723 243784953 581252881 24621295 441025618 871949737 115081149 681677914 387001691 891790848 815011260 955046451 990081079 380716809 247232243 359886330 420138870 531242747 251428162 353865264 590908465 23736557 8175121 263869876 391444152 484042509 3215062 616520501 703006737 593356759 478121589 228815914 540025083 417608229 142972841 371077065 860713965 612793940 907197762 940354916 34946872 291218487 171492746 315271805 545563257 401175083 578426831 390315355 705390046 784319028 909454423 110780361 19351341 994675211 26101352 896123277 225383062 11589748 303337063 879695357 297292995 26973628 378958612 204003752 79148136 217518851 322499331 671156373 718096515 471648916 268895358 304870260 306726970 974316884 930772857 890766223 599530546 180107843 198252015 378886680 14973113 708118787 169160807 744185680 64763480 976437432 607220242 508817692 830366444 584699928 981019968 218977351 178357061 476114312 420378031 525263606 844946492 508050297 550047273 420634608 557951206 119506560 344436796 976952552 712158401 24188667 620760364 315210545 850207275 360381656 359426662 640636041 14909080 53219556 809278903 741116022 665052364 444365344 922466689 418277347 67859364 797424561 355184629 587212288 997455040 608264338 315836721 918095592 452304602 42644071 488602517 702604479 196294790 319184836 321228602 229544228 334013912 575902347 453717619 276263129 87650407 743165508 51834223 367355949 929625578 12062734 638441571 206161673 907213372 48945557 723202891 592658327 420249110 994235709 389998902 670714529 15360099 952408552 175913095 508157579 81596387 940829285 185306633 993294561 874319465 366675930 734060274 357911118 730141822 837329705 11060816 694435598 590331767 321319720 816262486 693619041 443910156 949176078 698734225 159230145 112481821 566844045 360527026 830017003 615516050 298942724 70555164 527633460 209181041 268176038 937573423 27583043 829097200 156543747 729615584 26357489 482674220 24065275 213512123 952904701 645539589 933908920 818313418 723990552 95925435 178157352 902855321 700729860 210496400 942640509 591181473 313129081 882121611 451722368 102086722 114157081 687813427 772984549 471529411 779789583 62208186 477845121 576419379 384963251 528702016 966761295 928632232 538683986 627716894 576442641 648083889 510606529 666180038 678657941 275218698 332156125 872965375 368632041 480995120 158432549 915624690 471421249 260415193 196520454 798908158 475215050 456508988 837720570 866150618 921151527 322902050 70591624 160321879 478357040 793425379 479676079 278359596 821485728 105439317 558719491 710786706 516473935 862487030 94058994 235625130 457708303 378333826 239683515 10080683 819230937 424131263 581015697 542701590 717874111 237334329 3191387 775680052 156782648 24667082 511619224 396349067 757691011 245461508 769416195 779148769 570219809 425887039 796588649 720087331 862703843 429034304 468985965 823159173 296620290 190006567 508575082 102486739 244121254 489859448 690360615 710557652 638530103 109467040 922505724 654142567 629732901 887323115 267733315 152226859 383126156 589903094 283862206 245847106 442693723 481222627 205238071 535171321 405645216 130478614 532607196 144770961 983432719 728320447 62326142 809758459 77217738 912454411 182193095 556301613 611028727 289279847 44880447 668290168 733175796 620910243 462161908 797727230 302658690 321040273 303483901 398910614 790303581 281293467 10575950 159706030 763611047 412437668 119596725 344460125 4800983 662165413 464372950 40127958 495693033 608359434 965266638 300927062 831114148 813271539 750464657 523113743 807031722 722749732 588850916 20100057 348204971 196800894 64906169 555316721 211312202 656476530 662934033 897020917 315575105 449880204 417212444 568611342 391112369 779246077 200904281 285801784 405201355 976054761 303769446 400538233 180241540 202103559 684408172 174683232 803338889 1693335 513726183 510322808 570750755 112420174 484175778 896016051 793886222 55425137 81520239 379051289 937881309 132394646 256711971 898691487 727475877 690408026 480915813 268778654 119115309 788480349 26552703 458129851 19673605 368794390 589258732 701081710 396929062 521890378 676642529 171916459 941254571 381418890 584506725 233886676 656399089 320670297 297843198 812104209 350523370 946798013 511488283 72703768 427729749 168387691 36494502 935696452 48801340 650505569 676218583 663392682 482069564 727960730 110136153 716520999 120402361 795593606 128929780 427536138 211215264 58863048 209283154 932379414 849104724 103134686 585080814 111503115 823848392 598229813 280610213 914749730 205351427 725800945 438240703 440966412 180751585 762821927 862455705 739796424 937689750 454049929 751412947 331566659 703130059 758249430 792738790 671174664 3944282 485164068 846037038 751189097 958983664 16061054 128463524 553965435 702327332 531681011 924932223 838347771 855496867 981112965 709865324 662138129 635995615 884276831 373456777 602407098 796186939 777668312 339980489 706585469 984865176 585606577 51399852 816948763 866782488 678884937 554281576 825994208 656591418 680624647 898481992 560884465 528831135 887644762 615976266 295951894 733977664 213234080 22421080 74336555 148927717 442571010 347959360 765645877 370070308 800491607 980513819 300683368 823398867 787521029 867446388 479990039 595112590 478601631 626014666 901098862 11394107 712935265 822540867 143986266 535167993 432641954 534902208 802450764 659885687 799834786 743894199 949202492 705073256 530911503 910303825 472546431 136202991 211013138 4596524 697849014 412780147 633776096 391089216 941563457 233576934 625966442 721064542 309045231 289138806 527180298 361120768 541686589 538339370 118576217 586330146 538809519 2367871 708746377 873745415 457417349 239887501 775296368 571287597 466196968 504517849 672727860 176590999 175596660 274794034 577565193 6645547 609502220 727091622 438765374 821864769 847053817 417905283 219995371 969445541 990156533 898120135 43679536 30580384 489509194 439424896 602637152 331150538 478193805 980985528 80357103 277085657 359741880 112111429 341428756 851249856 460527935 775515610 884084434 810096538 863812444 23795565 803210806 875093439 482640799 136050780 80866842 14590301 456221478 593933984 602300623 700630945 564163004 171258212 815899255 340695417 424973004 842995389 893973619 544938526 613789923 419414302 605131374 949996051 935612995 960782516 739779574 89697879 666020578 533348844 47064651 719973228 561468351 436890615 347061638 688031327 5059500 361484347 369444047 602660706 678087993 218079652 820669838 47303410 416648068 131717637 615984452 360748725 109139825 996874844 848261114 665012161 78850230 30112014 950059835 994810407 456756098 885026141 911905921 797745132 925999747 645462279 963364224 803543128 114892955 10038015 434521460 995517495 717761016 208163955 135784459 155116973 506428242 156241313 203167054 993647850 258396512 570303126 452703338 797589388 214011862 5471568 442899994 776423904 855227289 783414206 914104078 198613619 952624572 495456861 480830975 178012165 643760766 848879705 186261030 316631565 797469619 306730598 377231338 355328963 8562431 213087713 740639443 669932586 181746389 506353368 387518111 140406805 551226570 517852115 521572258 159903362 625864339 74492208 271806190 833858630 223225057 958773025 200370151 435492391 536645082 226820261 627616473 430707324 829678141 74852459 336358862 976244109 666707056 299971686 652877292 231550528 40667112 183537535 619520705 396782051 605321702 989574999 438525481 10902267 919758436 435003016 540613273 967194715 587364805 857752679 817488088 939206124 559689003 122271517 735953520 781654059 547923199 221989466 532481278 554500428 854837380 761913353 54631464 468662566 36319452 6010814 16357863 298349066 73450849 918026198 457541979 396604618 814900144 266742312 453435217 961865944 523952223 747134948 798697403 497651773 50315163 865410350 293784625 8694416 947876392 659556543 209132805 929134119 378231596 945816542 460419381 382840312 380823733 80048245 473402929 278099272 284121720 194340302 464287332 836045491 226346330 701588025 116387400 186299979 956232684 646127844 366447188 332218496 850474892 942441698 815871560 383119388 775842412 455352141 320655285 827712682 679617565 171763253 129453401 105391813 851885622 541140869 498384919 110721918 857485557 461373644 849177475 929105711 176065859 592920805 850458149 590654529 351683800 759985515 897542802 864809925 970754075 118594340 544429820 515154225 609146402 817830119 487125812 936008195 948081691 124198270 762172100 345823755 936708654 419945338 262470669 346002323 40350245 762392852 271863842 92984504 792712016 967809578 590627470 26540320 426374413 171547843 298548681 881772901 54061308 10634902 114957999 660506154 399799650 514591134 721619315 87468645 739520246 156513211 920282558 993715675 655765124 751513040 8248099 850974945 519992781 182666027 255429579 709635003 11251734 27733998 472308251 703487314 964695890 807364772 857638222 926148105 450886592 345030865 380101795 52217554 306743520 7189096 983699812 6724694 898304555 985931128 309814206 469494706 989641892 135635049 708364559 732936637 461817806 754311668 549571070 644687169 876218723 582948338 400139559 381520568 201761311 708475829 433317534 575084049 163231369 709716706 614676658 449465485 499436139 498954617 172275483 162361425 722568756 71487496 352650799 398326185 847386222 370615056 732612198 908373240 948636624 153180129 772502362 512403071 401670244 161006083 817590761 411774739 437187457 461562286 241254129 147306728 76247041 535215677 298251233 241289522 753689716 109820940 471112181 623940502 547903015 81737992 756345700 588846049 213287278 83828827 998545144 419231495 201706734 746553862 312061676 244843847 224970370 16807684 904507839 691462859 88806765 34961274 127770456 685243181 870542398 454971609 631097136 98653128 448218777 214926525 136946017 408527123 109253148 739457403 533810658 914200558 745626715 734343561 607286644 408902331 239972829 999690593 876502544 948053190 114862531 121566194 431782514 613837854 88091269 115442573 557797719 152894625 35619268 732672069 43492613 140728534 732292311 768505518 33282500 830242181 628501109 955651105 506435183 493372838 374193058 791091078 682143789 249165179 818897272 255469245 952993598 70191482 521409193 686647348 13978460 604076448 204082060 975955728 966554419 974778475 63484219 493793592 513687568 929474350 26298401 788617451 35436753 993293028 789169783 107412964 625965652 96144167 653084994 23970036 717215625 620781693 527628818 125511616 975547018 744525160 229775015 206198938 590330127 810091100 30935915 833801020 962364641 840127536 209372375 711586396 923489015 51038710 718293659 122021081 224402357 782142233 364998653 737160495 694182792 578934831 620104 442754673 237259863 141360544 838939752 565376170 629806082 982603695 33506049 936440660 667924320 375940501 587072718 317206215 255322441 318666344 466893271 627777930 378563395 787482515 723967421 806098820 285029698 556176613 190718332 387820336 404960596 161475020 725777360 97094086 289572689 163934693 550298126 660695184 6411506 886294563 527018498 204326468 27858920 961083288 510255582 938559873 361922332 601118207 668572008 63954634 185561763 761274860 722681555 500792816 352793825 672426034 655976784 761579481 984202977 713691772 620263691 922777347 898569885 227995914 849731962 175619250 706100173 574414185 864867560 327387260 913078826 823834583 974976814 323977431 230014710 432325809 492414379 496732717 509318660 60954932 308588145 855504990 779940931 663166170 27661398 464427842 278406883 324634946 983606002 702112601 302517578 277926585 306726730 94539968 328018981 260531237 145818350 920185240 118748619 884175259 483541280 171946288 997947476 13558330 344733804 299478072 108227042 209541759 92267181 61783046 268798419 217785466 100225601 936112456 179066974 662506062 341642695 670003462 877386275 798160175 769410172 827551727 393639745 293775908 296086662 121983977 910705163 473484335 827396318 150112680 667327104 975397214 645927224 356420668 363398723 300767535 838643746 131710171 405526998 472761820 810298537 452799487 898898016 70136407 697742769 817444572 565078411 736457412 292082598 288096075 546577954 775304351 195839780 499871106 539892025 803540512 954247080 433576066 77748376 408670320 463327182 609647718 226259148 323366624 429812311 122567284 740946418 702882524 427257943 61039420 474331229 275935323 230440437 710941732 215198526 604263137 141443768 458561015 308725947 252825510 543050948 843240702 653917736 932942350 846320711 623172316 631529032 748317005 495394278 466747775 754817619 461399802 75359641 831717467 299173860 958806362 383774352 11210530 630939573 619088023 158512163 253113934 497651157 485958033 955517578 754271064 503141759 242846953 321761484 733475508 656158080 201705217 141139649 710146903 444924970 74486786 761059238 306768242 574661846 951375593 533880380 604429217 225248210 424074888 202075629 835209841 507037751 240378526 754898820 953012795 286042824 285799662 629323008 841114190 212429103 692890848 336284805 291045435 704339742 175116448 837835303 400524761 896181864 267356625 667854208 892205515 153526656 351334195 199139143 952535866 148233229 136905587 454832112 781026221 641452089 178021920 627148499 566850405 127627061 469080411 750219616 777365842 978871031 856044688 216178232 842215392 132587976 737028744 772921528 326667764 981707632 37581159 755831640 40331454 443965181 85164344 864759781 418153973 966413766 278839812 992556310 973078552 784473915 286236173 216374202 622268531 27015858 927923336 931052999 849435274 503029083 486426404 696070586 194281879 356372008 337581527 277335126 541599174 152955480 641299729 974137583 843663074 832598268 890046651 658484062 394309534 689198795 935346157 597303051 411550150 866890766 750197211 393885483 724497263 33871415 50988213 853586956 607478311 763726654 936129964 532881162 145359589 689700265 424186032 96425728 767277896 233700417 221303116 366826135 60134603 881091521 91247382 767327101 244973531 476911275 424603102 238633872 14112875 410602376 833254366 143399136 155159304 90588293 338102893 824192549 304092782 808743987 549145292 772613582 760810306 565807538 927822556 277352336 796027635 773605868 982126973 961920628 413824765 304780791 599685355 257896039 759657568 630451403 472381436 208113443 395176720 502101822 331775429 25032594 382057572 724215355 765134256 952296418 720200622 882869305 962992752 805477336 824427070 788002286 906582382 131706311 54475025 603200641 152020740 876259059 650416391 523963109 809473264 811996266 251156226 167814252 783934931 920657666 761674852 405272560 688651922 157218775 387515351 703592475 978688170 330572032 358945321 261960774 449109184 971545234 111858967 519714921 541151492 840641346 35592595 823717709 755027401 178741194 390112790 369162550 834622942 342319629 186999944 581946794 151551899 786450918 42063431 493292407 508302048 525238868 977547951 130032014 137897315 614201891 434790245 770944398 858440484 170421045 910538179 878454470 883920814 890649505 772584185 738137534 21165598 907987510 417620001 926354855 97881253 951668654 422246278 965284335 941527630 231428858 647917616 623818644 496250151 562472189 306250310 447583146 385422989 548633357 589849894 9668705 882918631 507324361 988346114 572409343 384150363 930448781 984785282 767016691 600018498 99112202 956011689 643587557 946595786 173484981 328773385 539342280 369388794 234772853 414591571 887230272 796347414 156047412 964701011 454735543 335001143 102875999 515460097 915356988 895511173 439966075 524567973 475189199 302339392 115330549 508158987 299352161 262208959 422712031 339065156 625637213 448578484 733893827 257650151 793925939 539669501 123813793 977890014 860980339 31155505 935142566 735035101 13633942 943846239 328908185 260571126 443264118 95158417 967316317 384464459 321098595 53716693 811264557 248712893 524315969 371077951 171679386 191834829 162556937 404473169 927451244 727162441 131784255 68587104 157555407 202230145 300289950 404467313 277797189 30485530 550658967 618839442 523270257 636300254 265567811 585368622 516648814 602910286 390321589 392475933 423749491 830035846 470157136 423107962 522265058 409971175 518865433 624224392 843593774 359369698 467148735 219845892 847472689 672090454 711644009 183483056 453935682 173764182 932535926 336953993 844685677 823644686 240015256 135127799 519258770 479431469 88278318 913959918 728427529 628521373 739499069 837717155 423079835 170135006 875182102 809712076 515141924 889347434 776388796 192177823 380809738 917176217 828177142 716352969 62371849 212461819 972792911 621697986 210287541 463401771 48403452 974040489 103487720 206704088 297520939 873744849 501293405 994441097 617873577 771271364 597366155 142164269 415230116 591977254 325291939 922012207 557350322 727723618 341080386 622651837 295390594 167588313 810141126 861304693 104136773 119731061 695121048 625693966 316858597 358207631 187891218 541472892 465204799 970293145 14973982 477215840 952148792 488369964 219623168 409552377 741621467 914721699 864609173 901022773 652449626 151336497 499658905 366949491 910280658 290179385 562427889 858310486 36746012 32123941 589298969 34912080 132220074 424956371 670428319 369132228 687051926 919447925 987729434 402990237 574568129 49323158 352603398 131628673 883200000 850589601 25844702 293457060 222772793 464199598 355076185 189758061 711144118 640468258 121965160 374005941 926114912 95651780 974502170 890822099 83717641 145889638 364959363 87747314 899628267 899343356 15288749 547486228 23357465 471944404 788053696 510281066 311264220 661661513 766365946 494749562 911146851 506608075 96416950 731218194 529371588 835859859 179777317 477602248 42504260 462325538 167702334 761840685 164578470 513859343 356520287 25148118 997136969 917551376 814645835 464280656 957184828 101790484 771147829 854066686 829319302 898758527 153508987 981547690 686153037 820896867 557877009 214050775 213632053 654837105 167163521 85765648 126927189 718492248 475316835 964935366 95427071 362962622 409043088 332913168 596369227 63407228 782659387 808665905 387118858 840645746 259367541 480743548 774460989 599268324 910126322 856109335 997662889 671991038 86794765 23733577 398763270 413183777 368147086 96776255 296788619 622379879 872337917 156231033 997439049 58204070 81550890 494610023 864458829 862380521 46538715 308724667 14016698 527825305 17658002 865143867 9530390 318483911 156645091 816208876 971155546 431663981 420526925 608693368 499746030 35210169 373408551 309029758 341527188 822099476 533508805 868306110 438040780 50096676 752313433 801372913 495448694 152264251 683940891 437056359 746201280 162879117 101939040 274388321 771306590 156354193 862848138 183792730 175995107 530361397 563508677 754237559 31945432 760285610 360664656 189860129 740535728 819423118 791374743 682494944 999235023 856602171 146759608 848588523 550938369 877641672 457347025 358023697 728439543 185058972 392713589 880637770 576189500 507209249 868353817 985522481 214505643 151216495 675267774 543381243 536785147 758699421 12618851 827566429 532208532 628226599 552801068 140897592 981477730 469715689 998799366 716512563 196116153 456672937 778222851 939128285 738010848 782982610 733343553 381810588 115845734 735359298 249227449 40836031 151335594 163859636 783045437 858447465 250782896 81774471 70332365 103284354 458421141 20738320 346471510 6818271 932570048 109023292 697637515 300871501 657180712 725073935 912147721 325525692 466811114 936300118 656681320 492901583 79750688 671937146 505108387 574439729 924796990 225778294 836288708 575482780 62700394 446599837 74342053 104428114 901280747 906569101 761175751 646585160 425794145 881299067 676073055 71595836 731655727 392221782 648295541 108361666 776998511 159302683 92887304 771790035 412493732 157646699 557052964 810056582 478834353 713584373 275094572 251911352 909611238 835633944 923032333 461984382 921326904 533308690 768186067 528951819 399406380 305169296 751164934 135581488 236768701 296224666 69475428 884662963 830966136 280183890 847883994 836589619 866910754 587041603 948920052 39030430 792178020 186866107 858721641 18759052 571280139 136826571 678686156 562316820 747317284 522901972 589863304 924749266 678547050 334634100 42002050 164794842 857773966 287767638 854821929 203763477 9216583 86496606 152473388 17449266 59304839 614270310 574619728 154532754 399665399 912179551 607575244 153129378 134399876 505977853 670831955 757844062 628596886 292514762 284452279 344126588 181612058 759037085 22845679 453328368 932638542 58617976 236831590 360941838 518734890 958579207 79474796 847232678 773622575 650654296 92142953 828122226 114880770 214074760 1256164 813625833 708094769 866569065 418377849 730569745 960329904 316122376 779923114 928846826 191237213 844525346 236113079 576822258 472712765 58723579 591938471 513150279 302688848 951690776 17034001 84415289 20727284 395483517 178021932 254594402 897526308 615952029 918341041 369954416 247907809 490349904 733098756 175725183 579505650 490983230 961272030 821954047 20246947 792081981 29618756 992250304 740716925 420080076 963818287 916664742 889429025 88293929 933540164 604506518 237826769 168392019 434965530 516401798 9622334 126173316 119902960 89417293 733374457 425550481 73540028 918850185 723797234 984615102 125112926 548778351 381373657 942070976 568048340 402064143 653705990 713528940 14205145 85500371 900702737 608235360 781291888 545740433 709303913 300008079 820333505 292971525 754840393 984199178 323196588 609902577 483221265 975559078 381584518 132885724 973876051 368382098 618215234 365873883 932301371 357320188 681564842 293368388 406119764 762670995 810818919 299205842 734876446 130373530 834521526 680442175 183605480 370370008 289854100 186708949 543426249 725821980 6828173 40245151 832681249 143618016 695029052 206121747 483278305 363752839 12154000 274087881 550226791 324955065 460684761 657825232 42721137 31705707 819769171 965380093 360917067 413676969 520748761 785299490 467495058 623158571 363971499 898567536 701395312 252909261 573718770 860610847 463397663 125214441 469927618 565922063 44456860 825649301 800244837 372156465 772678019 983845562 177234570 53251967 229374976 212416890 290168855 976666262 893324971 839452981 635995638 989723450 994780513 883658487 591539449 835876335 875123194 758040572 226498678 819360125 911384697 810225073 402372585 757397809 253904924 419767755 671370312 69789851 610856070 992112276 516983281 424305079 952416733 136530642 900344255 556204837 508795810 738276114 140518553 911065817 356205537 655354265 214469416 94207664 987913875 938809796 290747143 20025388 989676035 621788953 744442619 895676307 726037900 728576092 201407097 41004159 963765069 660406529 30823744 67441556 292793606 533922305 742078538 807820701 355077959 953499390 340641500 416189229 964011258 466867234 720499179 39413606 880679871 830681880 649059310 154054882 875155199 391216862 611797124 439567183 505499967 377298551 512650022 71800614 281211729 504165004 524818862 373031937 668196878 198472151 373344221 23749797 901253120 421497094 729320873 474373315 694065122 271809513 501072049 134569527 192905485 673976838 161657982 323466363 30482699 418173205 940293024 594144555 148068387 96318384 750232789 712272529 169172277 442904904 268688854 895403966 740050472 811746278 546301198 388745743 543595350 349419413 345404941 175213296 752591283 64362927 72641508 841070523 353304866 511618285 589442398 298730926 521279440 66207735 34577082 848812485 583959985 635956110 711844713 161435483 228354115 891427285 55391325 857658479 139941216 970324165 116348891 508431779 242118161 155646282 40456112 105253696 701937725 285242173 9546120 510429968 161291543 571607554 860199202 786169670 700499217 677782723 446731523 220289676 132441455 782635099 572160361 509753199 701478617 549871602 8927764 383227625 918960728 371634276 86691000 541173635 528777609 395719749 211010779 683719433 792173641 402803360 978165244 211119099 167548280 210974818 871932273 639183742 483501958 487250 189908737 376047826 138526209 469455251 51506291 527847168 412287377 392042778 293519594 415116121 530620665 795430300 207296055 566882675 888117850 741646779 874815311 733970370 680556884 443778744 714567820 1104729 687802177 332357677 972237952 696170792 614377569 510992980 626084444 768274620 198509001 316566134 425463215 102978784 972047161 210004507 596281090 103326902 636689157 809381714 362857481 170088076 560802045 110250263 224570461 161041769 371540570 433298664 598759358 956191370 19663311 200312188 743582007 856941503 726735768 305372326 730330785 441851057 965090247 478367864 852106706 592758374 557535998 485817459 320683167 319580590 185625507 844164051 868974632 201757462 824928837 956804918 85909616 203490880 114863019 869666459 868595338 334695278 160004985 292055624 746856567 743884076 848793120 252984931 721928950 239800801 659627592 796283773 275060912 510304996 666778674 44582642 311726387 334026452 291069788 101756936 430695851 905285344 475892798 920520365 458259459 429603739 214921862 606654520 468186589 61779884 366488057 203152856 907260512 927288128 8753160 848215724 716382469 851390417 140540629 574906908 372288083 764310494 818679845 688621804 769154311 763764471 249255692 119470081 445379534 904457592 121249642 175513461 429941644 945825454 185098318 405602984 108072246 83644252 304517350 890621805 34026824 901553419 53626264 803833134 813767826 650155458 128839590 620354697 20962521 963163454 351743918 517816662 824698213 324348259 610531829 405421141 389237617 911778727 132206696 74137329 957521103 588684465 891921445 49978875 449934671 786641548 45423157 791705318 992458994 84837819 403534789 172328167 151221137 202887107 941516355 886510429 648448789 955306843 162384916 765007589 451743173 909548509 118175126 133288081 111914580 110131884 598523494 26443099 432774042 931249693 912523923 363207892 937209442 958778783 156967845 509423482 80756063 730012054 531352394 702836548 448481561 746791683 199576917 309647956 613402811 596914177 91394187 945064018 332250701 794469669 912589643 489442389 444778339 733536292 658963306 26316449 200216292 653808998 365651731 299583355 268678730 477285458 61572681 994441428 993332524 169002615 112304579 378398870 450391663 158997386 439233255 680567479 256973143 251587992 529900299 924263988 720069314 866291143 212721605 456025382 501182004 736285314 225581724 744833617 170453918 7341469 61601170 43959802 203138880 388390162 839930298 513706823 429950889 45406046 614450000 532820079 175692640 132919648 322152827 111670134 262477607 966305215 533592239 643149542 847056564 768764186 13363921 808678755 572152789 661400736 328564984 11222132 440302536 245990197 423610592 513333313 488526141 325089645 590852712 983101884 464209270 802060305 732033426 71408777 40981979 298471055 794608028 445572479 133546808 897580432 562772776 855464734 573454601 543877850 421219567 926679738 667163399 457759173 173654220 723108113 96590592 220163183 639266308 671149469 356138471 186044922 717790512 663029185 445757789 528696516 718807215 481215882 243433105 977595132 241103519 6114556 127489284 406504906 3208821 193047369 241748953 315069926 877443830 338827369 97079273 544646062 120092446 415563454 513026310 258926062 73478071 780304452 669324955 731744766 523306400 622124822 635631166 150015946 303115919 614168521 755813809 745743269 390806992 766073820 538120215 750505054 765288590 95258686 117458714 251469537 977219397 886288276 524907207 486367673 303074328 882725634 300403867 85667894 389298687 720947888 527033350 638649204 739226579 970899174 621169808 187438515 448734636 375887337 984828251 891792475 318880237 347368640 560950259 153180180 397274478 104619160 725389860 352967587 49537542 628046492 55396836 509449510 30131207 735694990 808992983 535495471 349811990 603913073 373060389 784330437 130708763 653069290 849500105 128027762 717832213 620556642 577652540 925532578 198511893 72921665 143391549 420373238 229861022 366147070 86597868 415722125 6510050 789600282 293994044 278057679 43529716 539329159 307328106 355886102 50771399 455340398 900482052 318977126 956209028 14902383 299709948 73011905 723833568 784815626 355633535 89483064 773122125 816464505 94795675 31679390 487381247 798233797 314539603 401016677 996879888 956992903 985893713 490949071 472928596 543627041 771252755 805290224 909626532 372332371 72305680 68680627 509844472 961098104 693423151 965656748 98022239 281277521 302784851 74315602 659198659 628583185 833088954 779382300 523172449 506591412 255061587 456908428 697830031 399915894 572442338 346620624 284987491 196088620 659051536 523527133 408976274 471177924 958056867 719812242 934686445 757584326 82049507 205647433 256079354 205642272 509895135 257683418 321249585 512055793 154659511 193932022 600586154 604245155 509468017 80076999 661040767 492798586 643154192 957935821 385864435 812410011 668022302 607964128 540169826 49243049 104635820 893765020 603120577 607034490 513452075 402784868 59540368 888400382 796971983 600997596 129376425 16335578 920978276 227748208 545012232 291166774 867143673 431905752 165821990 24699512 824086344 834988014 48908881 309893420 687490648 782226920 974236705 809364550 872188338 416480454 561325791 355894078 510474218 245268863 225839841 851035921 343909028 730060848 457926370 660165349 219333950 906642847 460447904 418826706 114106659 77924570 635487673 562296556 251681691 449787152 491094179 262481728 978291011 61333769 812003005 651173428 594936620 453104805 162681725 901267145 244678653 97767642 512240027 396750221 936303731 651885847 414055227 540887069 413623803 495035686 568466324 827616428 940235968 426150814 591218772 946434897 442421347 298463047 298349406 642659525 149712698 958403878 419489173 73950259 485248469 281863564 382158621 326175125 531073122 314311210 684531267 300928958 208800015 943222662 778567354 533142105 1454585 712684806 783664522 87975907 236371376 98196601 82510382 405392289 89550166 566599596 490081827 771711404 584176805 547875972 522277015 365483882 775799525 498225056 685319857 254631863 28835477 992463956 765682798 461222788 546658736 256904097 816761849 583741186 620718145 822328484 708525800 924342867 729063229 679389395 189696164 179945255 652733647 27113502 999546012 273959696 189861787 569164820 738387286 514591166 688879388 23081591 761823631 791507232 913855965 435206210 75568197 977719872 759222031 6757468 903891787 216479421 124598815 451742467 642723477 131991041 460726167 560515123 722836980 141281422 32277402 978675085 984429294 55206029 302533143 854317045 552587470 677906942 67914535 488614171 547313451 905524275 226015535 420357287 155614295 490744986 904786174 177617283 460296815 662277621 176828370 989796670 737203971 124960342 511724440 496719757 381588033 96159473 578585944 270816107 200865500 630615090 662098401 448206878 341088821 720292490 604111721 211396866 396999391 934407483 131331320 571821666 310040356 891127571 321153523 659774999 669497926 828263294 954142209 609263825 209938365 575480150 989839796 886451953 759146592 341071698 741469119 73696207 760046434 301064618 568977109 262177623 743451620 729399515 347399663 178157505 321078661 824782416 573453618 747592055 713013523 686410880 315267434 769136263 159180136 858019677 848314372 43435752 301199193 764757983 672274633 585731894 624764127 891446018 322855574 949622384 437596745 684490200 835141319 559307641 452695836 607909675 888736927 680205029 193310043 438615212 198346442 262586275 916343160 272849607 680492046 370999464 756586078 769326193 686530676 503615928 334249681 796399277 519521029 948549354 62269544 576170914 525647349 838931027 335675599 844559160 367611930 675987484 160691127 994633927 435639284 655164720 337048892 31223248 580940584 674926353 500546099 116022022 391852770 169230097 70052689 337100567 245148387 630195843 870885859 411702128 835805772 382712637 138793468 486945809 175897376 210482765 690844679 835190278 665816344 177978020 990487817 108656917 559496576 109211051 649564580 521832998 614131427 363115215 644984646 233734262 566540219 962844391 676407927 911458379 439379842 212620924 66906122 415436972 312133091 999538807 316478101 457697098 507899079 431737920 586688212 608873157 224287273 396362760 165393755 63928272 666960160 100121004 946883323 474391894 397986676 170250044 196964022 740524366 619329100 181668264 458274486 692698519 337578513 600637291 434940056 565602001 803807216 651691699 300044938 499663698 333722571 591946598 878435029 846760527 196703487 504357730 987261703 700709183 195907149 927463807 27530157 911614478 828266072 969034667 531866721 694758240 26942547 610151775 75934871 661900051 265981284 977477283 819741040 143519628 987896922 598998166 963404987 35619941 45439275 422080992 379324127 452646165 963717947 511035259 271514312 454757104 21351787 370952911 261382402 213047728 780046967 283774495 140327544 157230336 310655710 365075865 820754522 530144694 877940894 252722577 332404759 59367512 809786523 272541427 873832080 846520445 823293822 709895767 308434128 548144210 701465815 11354669 582079843 34534169 733359727 766685974 877639087 28217229 586933932 857627656 968303103 115881328 806226544 688645815 229927258 65582687 4282793 531035747 516179933 315993218 950557336 860969363 447899944 527022059 450973641 941519730 110261319 673486635 363890320 352881487 44992597 669078391 943467506 821099773 734226387 515667276 882875188 242919813 604605060 51160928 902821934 956573281 273682664 532468610 491411918 973605030 662937666 199080122 786834682 653974283 597923538 92792349 49929101 716208391 659969940 663467084 708955415 543152259 972702590 413899333 480850165 899912750 840190707 559114322 171158833 934979 561689694 806386490 213741604 422555177 545195947 477730898 682368834 721666438 274853929 128793631 133772861 550450830 837797008 16702176 50054419 205481398 161645928 768479611 673031495 582188472 976323408 127812624 563379441 559075017 310105904 618562123 693212501 21721184 956192325 998545766 666115998 611309862 793189654 157484557 587444130 289670226 770166150 864313673 470009631 546217568 437753129 65491826 569991672 160936234 845970107 388367924 804161601 660962488 349163044 241305309 47586593 312243158 25644093 617912443 519813662 894724718 153449797 895584646 745021072 303543751 673092111 542160446 529730436 460986318 437940744 610975043 212809502 823075330 599065578 605071940 431577428 888413149 458440130 41626132 847971009 573118077 950774013 713050100 800807111 937374169 241245789 207649969 581655176 662757993 11261523 824256217 515529479 725817939 842601358 813987536 326746696 887780246 908193245 586010516 100745411 63027995 263236623 637344605 186360826 397544051 823844967 786680072 430804728 175491253 886947866 807675063 365320646 819812450 297385465 829084087 380940851 450736156 218756188 611758011 481869919 82506581 223301153 13577339 31051249 312575470 744833234 488792106 219570294 803731920 992378310 36532814 424703644 707103383 3531617 254749925 660554891 937885646 575453780 399489645 957189086 56695400 277139888 735346154 69366786 17426583 198193424 427962911 685760782 238174071 441271727 898050787 425325688 268849807 257142070 278539946 940568255 511720079 567910140 752597241 207883121 104363204 658012583 139859049 838977363 909835166 616100149 391736386 703402653 498782117 160927056 632786424 954838315 906866034 938122509 368764282 506543242 275726144 438044961 694375508 164341702 197951948 361846047 823206352 100234347 491193086 176480650 773480095 775469146 617894841 266577455 594756123 940855169 766915270 430715622 179170274 393467542 118133292 724694644 843218142 180685713 803053493 448246544 185215864 156546501 83225307 684029319 524749323 939869406 746345540 456928736 997769027 409004384 58302048 957573559 770281272 478233943 717873507 851631358 793549261 179156548 724172092 562961075 906558618 302838990 633042104 519520297 609678931 910985203 818356749 250308233 215017473 916126313 140787869 729589380 525237123 723239694 15898728 751474884 555505772 964787952 254451013 32698841 468925629 342711344 638586527 740105216 908188865 852181786 856308785 466162085 213245415 153363484 13546858 334143259 14336571 68751648 5777400 351907305 751891249 605834297 324313685 83902629 685631759 465345698 703416079 182404598 269505822 412095513 69677584 400370715 532465649 760215293 923682398 696302266 270202098 51077240 780988816 448880904 188143653 481155296 835440472 927558101 754745435 152173981 347865253 541281204 866310698 389737898 586250122 142613399 740550905 155496726 231871140 45329898 967301775 924501903 61684761 796699021 124016437 802652381 466432526 988246400 735326910 360450479 644392394 789059638 661978221 554762078 357198161 577844888 877797518 379667556 699572466 667704973 946126172 193961466 423581571 755698865 340054512 896330254 262081462 44705031 376582354 874027425 317749554 321626359 662462355 108650596 924826998 492695391 433231037 187669892 770215503 576438627 246476510 500044461 698028596 89888311 654829476 642137163 998890266 739615924 792832973 297155500 758755878 591584721 39371934 22911725 652826264 733650951 851681813 309329202 297140746 362232269 246603317 39208972 77715359 409671433 201523853 562903641 363647525 211981559 801589432 717216892 898925541 615918299 169468381 683965880 283943686 557331377 236111957 654481053 492708036 876489816 469556967 460746078 717296905 851825864 205047009 474451518 604946900 915072177 73915479 639767747 439633640 434390183 416403564 36419965 969309592 382073482 154254840 449837761 188892332 32337372 10110466 625442990 438642887 290124693 42985535 384983465 227875236 914266343 815118471 331567233 929351066 917180471 396244407 338672938 33507232 146547360 984957984 928384770 287564195 889031992 251007371 553283227 531329184 46098158 423709492 322218408 857162866 27540738 313957891 965964582 704089811 802068035 345857388 370104265 21515931 395019774 927632149 350498003 174846429 761229098 606473067 754226256 799702813 476476164 990278199 812433168 663528405 899607271 675942113 885280295 172563195 968334923 545552317 110797423 883359674 947873649 953968302 168040558 610461400 917470317 801080495 820285501 164625256 681688920 458625778 710113512 136369133 728338824 637835627 115039134 1659625 21829722 267039399 960313628 219230613 579307532 282896613 818111687 69101814 679232216 857946496 850263317 373027884 323516350 342772302 152174039 114827660 959191843 998961586 821451298 207189647 907385880 964141565 366208412 110679649 282247517 320360224 636879883 308639220 933356722 391004074 516241893 508557966 247561969 695593891 443177201 676303927 409013887 627022863 775338380 571025153 578387086 939893848 56651201 157993112 906563051 466026089 768515261 521024954 13797141 122954126 570963824 907237592 8272254 662750078 372264103 129441459 709585936 227364820 18734871 167115583 957248437 781299423 736816662 375225082 849283669 228617132 622825468 495852257 542008237 515652500 569892607 672965089 640438226 57247859 176260262 27854958 19010041 44342986 137132654 813885834 825247549 892706977 540592917 584324090 497759507 813355231 209285997 966585768 427535644 724648167 71966048 250639695 661931784 505680076 920895118 712146504 531513379 855387610 884063023 327262560 550778333 10400125 455435869 800876523 731070015 725920340 141891742 741099268 358256361 352248804 684790411 309985379 880025372 113268567 454833208 423643448 549076958 665417860 379625655 553297633 987685529 771340979 723955773 514813213 979472959 970106822 660826290 939710817 866678667 784389295 177305308 390179560 733359813 354532005 225254659 170553716 484426323 228668331 475427780 228592191 890788936 109456203 9105296 14220485 146665784 355684724 468629148 784247275 386906152 612854907 347973389 167702417 541675752 115636772 455825948 861806632 819872694 426336562 780541554 225283205 349542642 85114208 970042366 224640864 288629439 759876248 477961798 453716581 770844045 988209997 423659531 945534820 425243881 848388810 449676781 533673155 360013516 506742605 970650033 321989125 838115624 603793850 96681923 491566657 972421528 49717795 196270445 709441691 487237297 83438629 907173480 125381195 443740993 250962595 969038185 554639844 786740613 504008134 33581395 92893351 268994204 219104989 866012254 18186168 574019199 601690385 218761809 750865396 719011744 80622009 601746542 333956755 785645386 157117756 354461029 5241122 261499313 754439 518887870 23782631 411573284 388270279 449752564 202350257 788962488 216790749 672581067 115645763 799865006 223336032 8409669 624609113 481395757 698679875 964938212 291549477 519195342 844213181 675566635 843586488 112131493 813784675 393821048 582981811 775185157 278206096 331056710 333786987 745283340 303731963 535074408 174036864 545242931 649494977 992101325 45705225 133108252 353575236 725925218 925147197 632517722 331706117 151291085 832246936 348415659 116946352 584970693 307818722 527796204 184011119 220036160 309843505 365379558 782681590 220646429 51934631 521821427 489301707 338457717 999815169 901495591 815813223 982598664 919298703 257800838 563888150 190440689 514968799 988012673 302905059 166000473 969250478 173383285 773562558 486398087 665407832 202197755 517559283 193476295 195045205 796112778 680365451 15105106 57635563 516074272 463214712 6090077 39816117 761428249 105434488 316155991 957585100 715930762 139774581 194801082 371729352 323734662 583064866 632320687 16829852 357196815 847587087 301956738 907495823 224063073 258659635 882575373 475276631 7580236 183551287 750736254 532314590 669828060 132787505 915699222 425584164 451478817 658246057 256187089 164823625 268433394 960902161 906778375 285905097 120306761 719903775 704374701 538993895 847375684 805131009 652808983 326226439 770178040 493421144 874461956 486155746 235657872 848768443 160295579 569335873 718534040 493883753 95065969 294951794 992617867 472990724 290715375 363572117 627590384 343787591 955191365 397517325 995537562 984522441 293331145 848491144 381041465 260689266 558092806 16187656 469638001 245652264 80411724 943552238 187635159 398493859 194659088 450341733 682607056 810320271 80816190 30653598 898768547 796201154 11324774 490509065 962611446 839799118 720303500 157754186 593332862 889116649 525260029 171422274 931999163 397605603 802531313 493520976 920216608 193958252 882688285 879781553 744079127 505050388 759958453 831480932 482706222 476108569 382651430 340232920 203609329 686096253 215515953 272499981 606756232 390355632 756083166 225602776 208314228 441983513 86027030 356060642 640629675 884287024 941198003 475244932 979223443 118535986 165831294 586839836 418012570 742141735 900901139 155607224 44059205 221572847 6142145 815712671 695915605 809759063 279279457 85871902 245346173 27908695 197585418 185826419 614265498 685396129 380668246 304195076 546033777 938028592 867277672 95355642 350827917 434156958 267567214 60275058 250455435 94794667 619531418 170847934 14282329 593771100 184271849 387387755 620935494 211140201 837739765 858673109 719396424 331204429 591010835 855831434 772939240 343368455 313366537 441575522 667885891 56190760 724038180 800261299 739145653 50063115 411613172 254157209 655439375 709099381 605080894 659546582 51926134 443461066 952011624 38799006 892030532 7768102 559213379 394596838 126672329 347110187 735839476 613489079 839476176 540025676 687287488 446830611 892502689 770280414 953393917 347011748 643313718 561532702 323241288 476214527 4776085 649598073 148113228 70259776 317825817 290688139 874145945 18845232 388370192 940312219 157520317 529884114 596808860 102625733 504276465 382782478 707976704 817493276 314255411 905742973 239797964 566351271 219023999 105814175 685350847 469216980 830592712 738150525 990936745 737071836 60209951 970313249 36643153 980627051 997648125 603321507 168996144 192448208 464941330 499329287 317923373 973679772 547176229 669419371 889035082 233661898 658059166 926735300 249311223 818881444 853489239 349912326 569045373 543306007 656487703 591418531 842534605 900470624 650775782 992338976 541968952 9250682 715715188 940284086 65977886 351077123 6150098 554740679 135062903 341941074 628156959 840339874 714145312 572363993 520008405 851191521 640062866 599879448 531141731 269910043 959730731 450952030 299442909 16223156 892761597 275078126 835437441 259163624 99776128 41065560 754388336 544911622 803473461 340151302 98065228 499185814 728265493 800345437 323153171 524950335 296069272 66701949 483378878 996896903 308855893 279444914 990334327 474142218 20886775 536687405 568231611 212572894 199218524 945215050 528497095 698975286 261113770 613340611 855790877 832290325 757164309 876236146 420854609 873553608 150378382 231024996 301989631 626451263 130331304 256515200 650446362 11585382 591784409 287338856 371222525 630633310 329793970 818544429 760048045 293101760 745676712 696278943 978497022 344985201 294127145 509305066 324590208 751036743 396014292 191134356 847248672 847332981 790402405 758185646 805012108 993803208 195933419 624686660 875906237 528252569 117329600 326443612 619221506 919443700 730008562 553093658 514429363 675670672 450945812 284992933 267528243 700624355 584728858 949572464 799103824 157666591 813633146 442177471 623808295 742786576 175526790 827330610 747567468 307210546 432305526 210624636 317763135 541431242 894774018 799255489 86448550 79350386 641740489 509477079 747312535 686392823 476745124 193563852 322554892 610371136 110632205 973977349 957449113 82218492 994120160 783450618 262349606 483800855 300491958 513211807 585416666 705254358 858435209 670326990 128434491 233245153 817583586 957942833 188165098 941486826 447077035 506283981 598198699 994603406 421593041 824803506 578470962 862093846 728212014 378648074 280541834 500826879 272600531 606843459 845547344 215402942 439838123 117539657 957270597 306627053 691459939 56152011 627139796 562409953 401896231 932297259 430420379 857423311 696324353 582671378 797597422 143299888 258588456 703020124 106795580 418626187 478403151 773232455 23123827 675377989 147906125 767163581 502995751 559822861 379551561 399879807 136222834 791697297 287756818 890560754 517469514 188976504 725420446 217607462 861818367 946770684 147484851 258733430 56116528 881401301 238980720 234567250 194130000 691539909 756820998 810778081 220216224 39406625 614485964 805429951 920712551 131476125 771998463 771069629 196383361 902459782 392182061 965535821 838101107 396210659 34039159 852041638 939854683 732671440 882689106 966989328 422574588 104377886 473316335 898649152 528223045 306897138 849991012 876028293 844876052 148355692 890240364 808320921 680630118 32818400 884335009 614832430 729679058 214945230 743001415 357789244 633901610 912640115 449303973 344750392 665447678 131058330 842015448 406923579 975072085 681665518 997203942 198790416 970750842 259806744 257428225 575070282 705647057 448353169 566215261 311838720 531879908 409371530 335845508 874249252 164348168 264924428 859689840 378587104 54881348 295327043 700836935 440157684 652946261 226964868 387480135 747904662 502530997 142599588 760819346 327992077 922930408 179595019 723672463 901112679 410116470 445572763 530532473 563783401 700234826 967937663 584529624 810731210 746968315 735896161 81192645 408939220 574160396 989135636 694572004 960230063 650611018 345891603 336487880 857228756 628181065 135255560 495615774 327216609 155215336 632344410 166850701 217020449 332868603 83262756 263231204 65860733 89677743 685048102 572674153 920081711 621761890 654327437 472752112 995781042 908446382 72159394 632086183 442866646 760840664 477368253 867891074 958418990 217978666 648115843 417174869 643312806 686303783 328411016 922030002 659547825 891022089 45458314 476116065 12954555 248129681 583719975 456116582 976936732 677092059 235293550 18990516 117018985 672346884 781168865 726924773 340014931 797130114 165311917 500538416 882294529 467319532 762650213 99114886 627524374 672084085 219067564 210076092 688442688 847966 474489081 170238418 860243392 969992148 382926257 107063408 729837754 921529573 324628806 386195829 698005191 653371958 525075089 318244133 579481572 210855372 445760030 269004558 621854182 613876454 415654608 177772033 368482604 478625770 672314365 402098403 138847156 115331170 325584288 952467837 246096930 950374082 415537321 359552196 223819920 407422496 112480853 365123580 63159824 402673485 592713089 472052361 448734709 724450059 318079621 708317686 621013259 456758115 459675887 516661120 565928911 143324758 958601304 856299115 859626351 234973757 72639901 295811120 850800008 346536664 127615405 861283515 76231263 870659122 200294415 880694769 912150650 130216531 730518656 875855683 952618550 399641640 796891788 638435672 75528343 795157238 103744161 676507496 831015058 490704799 467241534 783151341 3079131 664895964 537395489 470345223 722635700 69157185 465840141 198539541 13524509 775197793 383306694 662106468 384393833 899943087 655914725 396334960 250613944 913204293 5075446 627026775 158248534 76921099 784854424 433909697 870486620 163891568 429064487 280214537 601665418 928610014 809458885 264846131 735587714 951697761 713399545 699082847 248833428 300589673 381970389 509542591 679714389 920087811 513576661 499826645 817592603 982542611 759891011 375674240 307065120 606649667 713582401 672319629 191702868 283341943 744982156 524550602 407121892 700893267 452137928 425221065 144940079 931662678 516832080 915556347 401742580 487469665 384275800 983062180 298329730 519078332 953853941 226053918 817751319 604824024 144457731 300855317 635640761 344554105 961095424 213876853 698197626 763602527 730765608 699062958 899507221 848797690 725755815 86964713 218458133 697603188 223355660 249366229 40943613 723314818 515755386 11865173 858727857 599021329 59994278 314186897 432508504 867183315 896540169 781014415 542717758 218744506 238360513 43229953 989021552 301316311 892176828 164118327 35062427 637792116 453267029 151373287 560190076 752163688 992877687 626170546 464372605 962517726 429230611 376749128 168268815 998681070 119699045 780260705 217245171 662141611 588475464 530643023 525572957 313915158 911990638 877645062 489744075 762369948 952249939 494839106 753019901 198636872 600237074 534552462 767716894 788216579 273673103 634108967 803945048 841474181 768246228 899001194 731254332 135580036 113558718 834600291 447568525 529435233 895090096 710777204 994440197 363155464 801682310 347923381 37827773 628887148 287995447 69538352 797009167 704067418 46101523 747624345 571793615 599677235 412037522 572395226 391502650 63625830 473770647 532672159 658138460 603386541 237528471 144917802 447630287 834475599 558704070 608377635 285204863 388777185 156484564 551597195 633626308 479369850 118124471 983986855 675158880 620703924 583716324 967976155 492649884 900845018 937151919 741311384 203192305 88520533 123631235 914368043 667630356 714302287 535349545 16568246 822207050 227228321 737309794 313703832 791973333 346431847 279161989 196215953 799770184 268979322 714540741 139324304 290954067 137297652 744219262 773657262 74367536 785965683 836477777 339716917 984307211 884844100 970721546 62801478 863125737 498460402 678678188 819884767 766345233 530559262 433503710 431294988 481488372 889260583 654232947 960722388 641472316 606572618 761606328 718701709 861071538 725172503 704523861 257094652 477061508 763657633 885472986 289269367 925986839 436574447 987902510 909638455 127563215 336953944 220860708 954299930 360544725 3219232 923184368 792990738 485033425 50906164 825441946 93343281 896667417 752592624 772002834 862289071 347918319 753182931 665163103 407729725 441374476 971504027 911238426 84262605 940541117 535456113 954600118 72758326 116344500 182261194 893276982 653641872 478290386 769941728 427413709 46347588 152976803 364891357 932133085 524457752 358271422 856472069 129435344 823654718 451014320 302157955 559269955 345584413 322833631 416196048 195097678 610281692 931410713 736774974 82658949 415250318 847204089 649073824 168724611 681107160 661420938 92726759 727371721 241361123 615386574 636280237 374011931 508819474 271454201 40761283 639584761 846723236 467904381 865428556 93396924 171985137 950319511 493275784 526434776 585171707 803909837 125606999 812656931 910997053 363075505 445151095 402977300 20905871 678459837 118266655 530973617 222372958 317690905 273348418 831866910 64701875 52452575 63474659 657584227 803293498 877281977 307245566 239377099 219942365 994256112 72958281 958393247 269982315 882601761 509819619 604182544 260704315 557682038 189672827 913584253 519778800 757386673 599504883 15379798 822492862 39478797 400611768 720730444 519830740 661264154 290242417 589317207 207698872 846079882 847833712 810788586 856875689 917873344 576275972 833177096 727168155 22642338 589982929 142222628 356687926 515743965 818761691 106986467 766333646 320431870 432205246 594648702 196010275 77736783 261954841 693061341 404971417 224830080 130096084 306663424 532325139 221728621 843303013 372735574 282410670 390925308 540555535 191456079 171020294 242089150 728978361 871253217 834708382 580845619 553636654 65842778 131304 752887371 468730620 206375925 711385330 489701029 606049103 284559995 943528725 800756474 658812206 58302171 809720190 458675698 776341462 191935517 341283786 13066275 650309019 581866255 484256288 105264599 382741349 237638967 793967466 367178371 781052260 456874501 800595961 526170792 676283976 139665425 126091754 575194815 59688166 637519136 2127549 58496547 400870482 86223838 561441514 321864391 636857813 243211490 248546677 73274040 853403102 828050089 961416455 14949481 209055122 171223088 176047445 55049546 1171803 426068677 363526921 63298072 817784230 281129594 787050 487881559 563979674 296049484 967019842 791533560 600802423 188000940 403735701 966424630 504388184 147159929 289877458 824588303 280960571 719619134 135978103 533655131 320404568 194384417 9221855 853019392 220428750 883649167 899114784 728718379 396899271 765168086 38482462 733410658 630603901 694928632 286646460 50158893 467630363 690056074 476536942 796759042 946956919 700868375 735242059 973115316 707368026 524158753 515981800 465983245 480059531 229748223 421235691 25418878 311414428 334988949 569470726 654666508 103250453 992285206 463762306 803639644 829396417 167703103 593588944 145903623 185773947 797843541 839655184 73812093 756859265 487378548 170348084 119900601 657300520 439740839 896923021 644363420 842221462 436295826 485869352 355522478 275809566 851024911 601501088 763267074 625980780 319961396 752575702 198748214 231130590 591097654 936549899 456509821 877830754 957425436 238076250 338830202 996122615 355769347 717607370 905102260 650244256 591224012 517857083 182693500 622773337 5068017 151736924 101192554 962682206 167273620 285735159 549758905 965881572 427228209 311015694 908905206 676773993 926451018 709363369 658654822 36970334 466949384 545326392 476970035 955646967 766242408 883491327 51224093 820595077 501026495 600987207 489785584 230489552 381796036 912827008 180873392 729251509 658923147 293644537 403886535 775203539 641806122 296525268 56811344 634704691 136618172 812601302 411817455 470834029 863122568 786588307 38657489 779430726 82347695 114881297 886025700 606164905 802331442 718879150 69290235 516994535 903691603 68019658 650260116 543140662 186357891 729088723 879192667 529967056 821631560 391892779 676497923 828114460 86556616 515263113 842529213 159468631 171062388 168055690 176594398 969490515 935189285 932028422 809521467 296090190 355181585 6835944 204852566 708656194 886274690 483844962 141856862 455836618 731918755 703238431 588321477 312836532 243329215 85445045 832518432 432570326 527310822 857059394 580990431 143139949 909285373 335247943 764786066 260912087 824781698 473981323 304182275 737375104 187727964 821980473 774053851 165960334 836942329 396290517 735423852 627380401 69521138 581785726 272233095 437100185 582099777 595455773 584488813 761360528 312736121 50445078 555627309 746661156 401436706 985763710 245386587 506656660 998857165 31328990 878610524 123395859 888883385 506856157 922595030 289740325 755600270 550513058 410155186 187326240 610826685 421297555 610852576 770245531 791057623 625172999 221899297 800003859 492368345 897806881 69102370 777532791 166792868 399239811 249222613 619785199 373577215 840580515 670405519 341148208 287851419 608677787 116321590 974910525 252595099 129637851 561056651 313935539 971344681 919751677 784852115 785141368 656923679 330782174 85673132 736074589 997209668 366822416 980680725 706509830 866821216 561659560 517663341 430646927 490171551 441813612 882698998 272387529 571897388 854138047 957914550 615429514 255955377 915249075 8234558 35020036 566372721 112036714 850126984 504498319 458383162 944841578 314742386 619847390 905330601 51542363 521133746 587042563 342588427 457439884 836438503 926094066 644294111 718975965 752650200 676258109 305643204 676405580 549262995 203312609 799299429 613399476 256685777 112354593 287964998 937240268 97568121 800143141 912601251 988898916 563354392 800017830 754158630 372687236 762867633 838704480 729600755 541456842 879404742 355206981 735154841 355669693 777112035 443032576 639777297 320654009 866612734 658953359 885578966 38024354 595305880 613622778 139898269 786994420 847385240 37780434 228840130 669553909 2167169 599202174 486642280 120201384 971264827 267806754 956454485 448787020 344234082 365759176 627099720 925324659 162081117 626464927 233472316 807424750 969199423 756991491 248047334 279108297 567024110 330867222 796868762 985203789 870579181 548833886 831942509 253490360 706502689 901107076 681867262 924070254 282901805 343908196 608827617 754085113 493506419 512163458 752168074 773788362 270128076 163335144 263528006 287244338 664906331 672547373 180829412 447419130 824401678 75632682 5333762 35366247 259695779 558168923 242803515 88008259 963563586 240869083 719273600 737034606 11229923 623327516 582350334 844646929 883841937 214502355 480089468 947958845 404280551 822732642 361241012 405570199 341716223 324808209 671788453 633711613 589262076 684356066 659480849 945792357 753334850 277604898 947627073 803275946 814755877 368424643 623713162 159262044 576628812 39281451 921321966 35531815 682228959 208462190 932148424 280445103 939660521 230186824 372381553 428806812 899942042 197302301 978985269 871958882 301400298 437600300 995868354 474996360 845378597 39407772 473103452 481188310 745758422 93185414 336874958 199387625 244441026 822525651 505245683 464058327 24105887 321720441 902453403 362120760 589742848 918335806 504722787 227769401 505705552 399856132 428030425 800888899 889979022 119415515 502403433 108255241 326848559 124557941 512763245 234335940 57352881 112237555 854412366 779447751 4388820 98916520 315528755 108755152 876846150 996891587 393651924 78215736 443813581 106646044 984397401 744458646 787584573 750504295 908495836 984015476 728102773 766490253 844856783 538562640 616044658 955934397 195665798 325690012 871410502 543420007 327278222 147614316 519679347 210538462 973242300 251890153 693114374 143126650 591553712 423509759 50777157 374696141 104912495 419316822 248080061 53165743 880230190 748310213 38029897 656504061 853494119 306936378 940648732 568445179 18513365 685834984 920756419 54215564 879090122 55578290 953462567 615070906 56321317 610044526 815031322 774542636 896640116 224325098 36717718 57921951 443282534 148588556 239457579 682118280 520236147 313368019 205563770 907162540 963103374 261712429 18045443 532631053 377428125 747048112 53956558 534751078 588486419 261189042 713396281 866339693 326566056 413943996 299064645 197102194 487954149 467230855 786187292 435953246 149012878 928597058 685821058 625699682 710695814 462199465 27422262 93058530 636558691 618452280 935349686 658998565 713968456 945622029 181277991 561087351 801897469 480046393 408102929 753052223 930945525 885765924 731479053 790589659 919166074 481134247 720291107 981435589 760929372 410747138 16061554 416678612 356067166 832807712 271684811 246390011 136120304 445124530 915838891 726089735 210773679 648347987 425276556 933386717 445998880 342028699 701707567 15509438 458958867 183832777 926994990 329159205 617511102 483831487 562814713 632217417 464848037 826333952 876538240 951719697 525236736 795789512 484507332 20036880 129812263 336994476 109218844 999870817 433575339 472870996 132619092 98685288 748163549 2232637 94955752 115178540 885188081 195072905 961786811 439823805 419819463 506911151 968356821 184572622 269748232 873860382 285309483 998751769 140703161 269773898 252395841 160654905 582523322 24703649 125845037 304361021 490436422 945695850 103325218 98252862 616261301 594684485 215835783 236908170 52476944 129138331 483732662 696171082 201783680 993863050 548113609 20412045 69100845 92332902 101531317 572204685 32604119 715175550 398480869 62352179 304653500 147386986 171995038 189276462 165961713 442859603 253824291 850257431 455399691 600300323 671189037 867384876 57805760 975867399 262841120 364568440 762680966 268582230 373089542 100014987 243451131 56834924 318469468 183060405 525692675 210507077 169800430 943013943 612077242 245294069 490629907 471509072 669019172 792393585 772621056 743513260 579817179 593329357 556953618 270076387 268072909 525852700 636808389 622392178 260369024 192890735 169125870 507374921 384779235 982574310 472986792 944707853 280583119 976588732 599309598 735732971 484580848 545085022 402426634 599278880 669319456 170492121 414453429 825299293 985128918 922090162 278665919 257894385 87411953 102528320 839027859 641757389 917193736 24771138 39679493 323135767 198855177 402111224 618885614 619049161 26235141 456908193 102247599 719817555 388213375 654605555 321842576 785359851 17853277 658016303 347402458 266201814 601781391 569499238 937371582 70131641 453771813 824658336 417942801 222357266 329676563 708098491 40089971 957354054 515604732 407749052 651068194 794980212 360174483 241389310 584388246 393861206 516841264 113550828 959038707 231622937 374093428 724441968 86183721 555676153 61165112 956749991 631314536 407244121 691088556 73196293 581284748 701156265 680976802 757617104 149918363 899173247 989262171 507872902 262990128 434286116 703867388 890520073 507230699 432794578 836113676 600638082 833738010 267607490 915875679 902927495 118398751 949073715 700352881 625959708 176319020 494539435 251276978 188639015 24852621 655954654 876810924 506069677 702702982 962454107 22661656 972674301 436759894 6420952 750554167 616533203 387229738 893516068 305226631 110566732 244488471 124360832 576565577 157740464 655898441 566288283 356285178 790122637 365002855 885505965 807718205 982317070 177834564 865475137 394549530 659947823 341067591 980815265 845969283 131378945 833788223 748593991 431982766 580107814 393457536 598475050 18674844 956435863 123534530 154102764 77486932 977218245 810031638 342182976 304564552 579738930 643235569 454033825 791410105 573203097 899542174 278557742 176056529 139649529 848910841 300204268 985345508 288686454 145183098 589205826 375351956 437251709 241098654 219050381 773893358 844240419 104196933 408317310 930233387 705665366 68424427 249968167 997728624 147435811 134267651 367311522 308709721 431941436 223784561 107735049 372330483 211700116 652547617 307354255 986658469 419756773 217467436 7794167 194507876 584067936 940600044 713340104 439588610 357264279 161337836 871992421 288515462 185361477 900198267 929693869 674373751 661151038 554545693 197379502 43231284 603845523 702228386 99229516 309209012 728435414 493760627 463384053 131783994 618835831 882428449 158121530 60992353 421624433 488316634 849635107 629859949 840722287 290962030 689651284 914938779 594833595 735501875 348858940 50469544 459258061 923388976 67215764 808334708 702733637 183053547 451796923 916440661 540401559 429007462 804414725 477094013 203791774 476571690 711804178 129886792 564709233 706730661 662953053 445810332 577224991 70967225 995125329 522424780 356500982 319757389 621506005 855229897 661575874 889124868 201218358 649833287 74698525 677568633 348746185 657805377 192547233 970089257 363978424 651103664 470168640 96451606 962980071 324419894 878952917 322662624 906768505 443525337 827853720 470830778 744932003 394514353 583149113 129227465 861103545 351248959 614275736 805541898 769177961 38123186 10789679 399121894 422016835 422977684 176904469 694715586 896594439 107085953 36289638 932324052 115713144 782906081 493655499 893323654 859678872 206966520 714408044 610207111 737838886 897980249 301917796 506211187 516857038 228216246 11136162 42530893 87015510 598053382 422373397 431882244 568746480 613723325 443035496 585770370 743424567 796213363 996220151 125965645 844553846 837228894 361985413 594690478 739289700 828335316 2497119 489692411 578669689 771697441 900485650 313764659 442063302 601996082 32993923 994522642 471941674 236617238 119642687 599813682 890466521 223087410 142278214 554750924 663977832 536035228 77089780 201485238 50027632 587465420 546718125 335132504 400987616 827352055 915113488 73480063 562712360 587062949 120606542 347998530 617618529 306659013 747796917 336035059 148324665 372619197 239485749 148039634 842031843 95973309 198514682 85833402 172196895 794557365 583483857 404982209 415447014 739518914 390843012 122733721 631875188 510566896 237085844 159435728 723748672 842860657 341057187 923698954 550073202 300123750 319919341 538768257 574519715 508179021 683068815 591070514 2037322 617984766 13604496 385740160 584821766 987195001 965639383 999307628 218395684 990997699 946230133 565726000 784963738 935136629 458620687 923815080 329297065 802213797 251025669 606340659 772690367 122690064 107039847 529003062 338223316 69909987 889165267 81085783 29277220 601689170 491461234 710020630 123845395 418903372 874409905 292871391 336348750 910385686 277727845 17427157 196503446 167616993 602657768 153839072 249033141 134664033 732283117 528402135 6633594 806644728 62585340 679362720 711000001 732420358 617854937 489731199 946044303 887518136 879563934 37736223 296498900 523454246 849226283 898742588 264771235 712095561 10759420 98981335 141944462 727996849 245124719 67516709 726938456 460853519 950558720 428400877 870758522 791518107 378592187 642969943 407876576 776964838 118859792 592393131 201320921 540330551 722745485 893536261 247718799 926815406 664006423 828297268 9706634 40636252 212400269 553265412 293343168 774385576 305515549 820822573 200166372 635972306 377467345 637314035 561448450 49039817 884382748 815427431 841314489 112266276 449031317 444487588 933040553 667492863 933743899 939547288 324621066 127896139 969438299 445999428 299556012 797817719 832921574 410130168 733305677 693658736 943662855 150692188 60828126 338997359 824604712 968769490 282827019 272162195 503171654 52758271 863999566 215132563 203431920 836791348 17276648 126202318 745266481 685299603 845732970 442852572 576932715 336619699 454205399 396828634 858768082 389166667 94569243 348980338 725088902 25876730 115569896 626952812 258322537 27523190 385395277 155094905 948917842 349466776 542191654 322178289 615863072 820286452 672787330 732379174 557788012 39704832 182515526 192226297 983121582 902479163 350694013 71806021 719713078 712150973 835346680 821789803 621476894 963408916 522423446 558712453 92204062 650880975 27988137 561943438 476805393 455149655 570282073 191477427 4687074 56380489 239297164 554331430 140484494 270885193 542015871 411426354 343277259 239557533 246243920 834121946 483807120 633025055 923805603 362262520 430611901 319466425 819342332 347702211 41320399 485355325 124860740 874397086 509929202 109074067 848223694 993016826 799240077 867005932 573525360 287301720 154453145 508015576 248652394 166662016 581122824 326171234 911889865 303959624 41950937 402820120 84764539 258667787 270767535 688155543 611329175 944547054 953440062 66026046 35604813 547117182 884535151 565006678 855474099 883354575 361139629 5119390 88289969 727106198 845623635 897982086 832763368 934415182 113949714 626120604 127246892 111547313 870539525 219509911 190056257 791385005 820030470 528943513 481588076 945890649 71290982 506073287 797202653 809580511 315758440 243035683 890951691 977722572 278444018 235580708 945751954 800509611 471711233 197437573 116645552 274362938 732552009 923170867 730169388 338957441 815373263 954551272 937191905 721103457 499493402 390963921 391168532 474501395 319447136 957062078 122675209 981335342 341097379 14328474 276464240 299726087 23431980 927021217 194312859 967986850 266578820 276055081 313841554 441201010 124822707 19386714 944019438 911823948 944696084 643344814 358726394 720547016 800675824 818727223 923049290 507951794 830945815 558049747 87903042 964260284 95553926 453593570 158901761 673849511 325954404 673273575 137973692 316734042 420140208 357874748 188119335 383255068 295843607 830213320 959257152 663296956 414708493 535166290 797603302 386522184 25575120 633564017 571148420 615667809 409350812 147645200 646829213 943973740 7404294 627033746 567275483 326787780 30786867 159487643 569939168 879619715 938541348 541238143 250923035 470367467 426982111 926114433 50761335 75895782 112178148 36297436 663406052 732026179 627079997 273903113 10688509 542619890 191713430 121604968 694422760 22826555 604951996 763557293 227269440 27881906 196008043 24748022 502656478 164499267 389086333 369046004 503580866 152155555 998685137 389972789 139476121 26493109 341323450 754425960 770858720 607119246 789388912 610165120 160420885 113229873 50806711 579288082 919766923 490287759 48624268 137405610 67086678 35894128 300107809 250348307 338999179 144630177 380535599 853414066 868667131 319367204 86274427 95020615 336347961 141800899 449278077 461271775 88486804 883856295 490023300 787267819 68796257 399060199 333768436 864733008 952279354 479175655 446220604 264834272 224361781 202319619 759858766 744709413 976079078 912221026 395460934 459888916 29837131 82771778 118953270 339775419 740327105 782392626 905444052 532804303 53543034 785943290 517779641 34777915 190115097 62443493 229516968 828333837 807077696 956696501 118668238 545371980 490851476 205729080 6857008 798942955 975872460 881088742 99570655 591822716 840943990 707329424 167675519 637347298 687368861 380934561 948445797 145131418 723318243 35216060 460329492 581352635 903313118 3358046 27459122 862046600 80547339 932903400 350236080 205610932 9728468 723031997 623518524 694522620 578929779 49889712 765200281 436119823 409663033 149920284 138956724 678662846 794580902 790643511 293035746 815367497 570579862 726116574 72473834 432703879 994053885 914340137 67476872 688597574 322059585 478762590 86450619 842970709 598896798 391735616 729266444 396225699 752096783 976184421 295711481 458358287 369576205 527018829 268571111 196052412 301256737 871178679 614307856 514885147 13938097 799268498 168240564 522406098 861841602 823061894 107082993 346719685 631713544 118755629 713243669 454188196 88143670 83114613 349329552 153444256 272501733 211514438 67878693 340502051 781782209 961137070 507212735 264172382 948722286 357037774 620529697 932816241 835299180 293822574 975430877 73946575 548081926 751161302 546494741 784201396 523473610 139129115 393265631 756298653 478903740 194727601 833760652 67784424 649166797 409753254 980067471 10940841 627990655 44970330 314187148 701727417 227004992 62764104 859005145 621422761 566852156 959651708 184376515 82666260 320875877 282581606 619727633 661350164 158547881 859356143 61079663 341637774 871206200 409779085 651082134 98675306 787315743 709766674 951722550 352948452 6477525 876927887 285375790 964349284 440871492 125768510 801852942 138169337 887117241 65543443 279053775 393266890 608876152 224995112 914709622 72260804 47592106 383469140 243368109 549356214 623281599 890046761 669624344 914164260 330419883 699366656 364676937 513938429 153553501 35993507 939136636 160030613 827298094 665255501 408063263 679265130 71984436 708823656 644579935 720127243 569775246 780383735 499771778 194336986 93215504 364728996 60474647 13703778 10686190 701084305 495045502 97290464 935833197 787753124 345724902 105292499 941694341 439633697 500611540 849958119 283097778 154096589 623856190 171909869 710782542 187467880 762360040 969155669 992241547 987094537 728303334 811451788 81379814 356548786 411990149 671736735 934296442 948489412 90843121 562295297 939074903 939872315 683007783 975645895 780677903 619835876 841357419 214512632 79912884 866922098 912447843 683436323 269452919 787884965 386444015 881342597 492101242 516909948 436327910 420621835 471985880 941064819 887227725 79429420 512191346 362004748 329810539 490353625 885538815 218995742 555274738 126427559 332515928 845358537 38441445 151700370 340390180 537321804 2814755 299257579 28371324 36044566 331955644 279622070 339963901 370650694 940582822 348528201 362456014 745866682 105390968 150485535 301066345 233149631 862881553 304360139 268293033 811270153 2406588 778745117 598201831 975461786 255922629 572179239 756827735 235828446 557442824 588153169 909727413 968733272 960229100 855784863 130345227 86092272 91522197 113535665 336870256 243253634 770682157 428420375 830512398 740484523 74465249 867885053 585113899 614422552 996202560 542963083 839831382 24628085 111360772 58624387 123968875 487394556 829975013 191951583 792353451 641263785 126244185 439725587 700119341 775456381 754239385 328998374 727640441 722489912 381403301 82927935 600361608 561912651 593688067 109596651 659345225 924624736 600532070 792072523 776244562 662939055 538353715 372436967 891803225 950534356 194161787 617964278 71086791 706057921 891101663 379243617 914338144 771812428 244782692 11948610 954837052 67243825 541018034 172845816 880803695 100539277 611323376 542751671 525380070 6255431 213208221 42486317 377506241 854618968 789022938 73749740 72319095 344070485 688372511 916066436 415106340 272044007 752486458 72789773 987075661 211852896 450914543 487637775 236668514 760385162 438251665 701200752 442875960 527190922 625992148 534247294 652500073 973043942 712618195 189698864 338635016 348111051 24918812 741565515 191088975 432531868 284079212 477235984 64759410 359260568 348197458 511265237 260246951 564114313 145020946 884766119 63152624 34717172 888548561 111085617 330933167 77848553 852060280 478441576 527995934 723015371 462533338 199914021 876675328 975246749 827157412 294364155 839195130 741532344 24731883 592677315 505679898 742427924 957742422 633918092 137416953 284005298 13607255 884858083 231008209 979033414 379549310 580470408 938278198 102573919 811214364 383181162 85888504 638814486 251607481 912054537 135665719 80705548 657489633 610259641 53935431 564537757 203613513 881144689 889722402 85309958 351189852 428545669 816139936 945770093 739242435 921848573 209087186 408307558 754652496 760399405 118311736 551348902 163190703 103642486 697566656 541818928 797328629 921683387 924744843 430515845 355268451 71516302 310758276 204398802 374741575 610894563 416045361 390843474 647396881 487964071 771126149 659393272 778127948 582452336 952264472 677277739 425348375 660811352 229973491 473535747 151674242 260489042 651448326 387287370 860765284 647423787 69305194 625170933 529550720 413249425 403594717 207687059 529225212 109698250 571494242 741413115 769414399 785795127 498653625 914338151 949156574 260425217 579526765 31922097 223533083 848103954 566698033 569332927 332916625 865431373 538873962 233261578 408722867 365999089 324674046 328082137 638254147 686670751 171491257 281807163 243716263 33015730 907675371 408697141 997698073 928337385 588125278 946393069 451429164 249263637 337545951 30732134 588337280 758009737 41099604 320873568 780582437 102887481 79814597 993410610 993263103 738744397 180803296 521036150 765186497 714917777 93534194 430678391 645365770 437317267 522226719 568846726 133606059 718608573 688719011 606315 653812580 905922880 637163327 778261339 161414931 868851774 254736192 110085370 152789347 522593431 78929827 431366701 244083542 188294793 932924638 384959854 100548224 646431868 707954476 554047663 180772532 500255928 595101648 542384702 613719713 109621253 847604124 557492280 742906033 731931531 41487201 864409483 123037187 957533779 169951695 957775413 98107817 268249719 44594848 684296470 66100433 75817513 809106364 111750887 915911614 546153742 402110699 455092726 224526442 177130478 603212870 282011992 821875777 793498105 535513350 640849648 750036269 322298097 626689105 532839192 375987646 638528904 818443761 160337522 129974321 796932744 267238468 653569391 559584274 2009934 187333768 728622661 607189038 361463104 504169492 147257748 884121649 222636839 397806576 283296641 678602300 198142392 257023905 413769158 413723102 987669892 419654486 759434615 118532721 47368966 256676624 985357304 873988121 823386444 710161937 71306664 943489076 481761156 179144741 641836323 747807236 797186949 356285451 458305885 171611399 991168764 47037461 960920535 677732821 547057915 110448152 593442569 961870249 440203003 198129325 868358843 734898420 84286650 753035462 922076950 310435328 872411389 602328743 266122613 923346998 343418980 146488634 168524499 236322198 253406508 43248916 29180509 259732200 122915984 816415011 299923439 116293266 604845618 430405351 666860982 150045041 661696590 164652086 130877679 928417793 559326490 812694969 270776981 229197929 635435928 747088714 930752577 318702135 415829308 5378190 211149657 227059259 741332738 78434579 433297301 371645967 602728611 862983517 153725210 156999516 593413494 932185516 651553093 646599399 498529349 450030237 20495043 959027364 536493027 815665338 961457654 867143149 678651357 349123969 292431738 611683769 457823246 469336952 475767664 835727213 849251061 17264768 203803744 929282147 821777523 103820204 701497333 862142099 763153825 28323520 898753383 968359383 728107364 56926798 431351865 580880167 448340661 438138638 873703255 848133012 136410777 630459386 190167358 881164059 686669493 349313725 18756870 911400676 42958280 680830713 31925486 392803082 507736629 991387937 352557629 668828970 728949249 310013458 166332838 466672320 578611426 593203676 560540638 655878757 760142713 22903458 183808055 21282312 841850980 926021093 364120340 955678453 713461995 808263419 192908645 628392800 296447521 657945670 272087374 762195531 534262818 458373587 62120187 100273807 979489946 374932721 363559758 957540378 404454020 72254503 945298303 498248073 758182502 62970908 289401395 104031960 902232502 414998399 518676025 660394976 977276447 271385665 190463973 455683978 159102273 351066622 318652463 793580928 76580111 691343000 58788077 347683566 121505419 96539902 320311031 467474169 226016653 392662656 702993146 881190153 67497744 123212420 64233097 993008329 883698062 146547016 137770476 448408844 536211976 170059855 951254069 898049129 225591661 948954468 629999771 829507475 934483617 29144768 996248909 234282477 37535181 210848459 755487647 860314957 380443499 767276920 88702415 431990410 22165243 221167888 848239570 468235060 469973327 917121912 230216999 598528747 462214502 422871574 269607667 465611570 128818903 727045478 17582775 745988544 789304130 637061465 790977980 992331218 875069976 97031367 818091833 507679171 157478532 225558260 290003284 599736672 192211710 376958319 220510145 268370349 388934093 651935044 814394740 355567517 47847010 905598491 798238900 162419279 4628438 49691071 425124895 425730845 89178404 370971800 532941242 156291405 78745221 559536019 279865952 409472062 539013946 636453414 12902979 813065352 370973507 734728153 628714280 21727771 584277426 219631274 71782887 667924379 734504042 825789345 115588536 153961127 489769657 508345856 871058944 284201534 604357330 397273599 976816998 55225042 478887098 461461235 598049786 646430057 709123705 756312871 210668218 809118565 820114568 651487708 835966345 486482447 681032277 110083294 565094023 862944972 357378463 829523978 844127254 835355481 935423441 49403854 993762187 486482210 631376688 782080017 2023504 499043467 491870247 385834565 757843334 774002508 204416996 821376790 399620040 473998022 88497831 486570306 580996927 640426607 78383939 142074569 289609691 822732584 933417860 954564439 829031733 932600854 132167230 527511200 121208894 617740290 537511938 873440506 271126973 989928835 47180172 221410320 547679475 745269478 253020429 490855577 599533589 305907187 214731766 463952568 209524271 791892911 235267857 215386275 564949685 904274439 353427561 41163247 641684106 761509845 878774008 658226531 299702466 863909171 373010302 762195754 378466839 559603871 355015304 371806028 542002381 878467756 89958942 513058691 755570899 592821934 522565078 903978728 820010910 633463060 763689203 130742932 604989531 807215667 918924561 395874187 490283672 961539990 867985291 691461646 222330403 419572771 818068476 390326313 321594605 625509385 272585342 573418156 43073144 683922291 389393535 539951355 698915578 307854215 61634238 680554877 109449479 763545584 330527905 469525514 361403554 984975730 394480438 803688515 980370120 66942453 327544044 834747806 573802913 829188852 766326582 913627702 582162165 959115273 636194328 444694844 612972552 919800335 594322108 257893583 240278578 550529137 584084625 575736004 609109519 314371351 928831155 244268691 645986979 167946932 498392696 516474057 108461018 630831702 317977086 186109935 627368512 13390872 84990422 776778891 609707927 389992497 229287477 814218769 747581596 267616018 599642193 466858886 789589399 301352129 884053905 969695175 992611205 56151231 964522898 538872269 157057347 13890928 657765276 309794660 951619526 232281031 73902040 654940712 300190930 814098959 677501887 291974982 217579096 344301239 672759465 52294053 901247786 966873566 515692405 782915116 840565714 605368948 134663435 283883449 230240346 544937270 876406764 849617378 842205899 254547004 517756327 758418190 886032706 321431299 370175171 407830225 258819730 51533212 603701180 621267650 823530614 198483950 636865593 193486450 534183755 477077682 903851988 509169078 754200802 998829675 711078136 37062512 38923666 3241610 996465571 678764801 92280335 831245854 350115322 159019151 707270697 686273188 979802786 877392028 550569245 594847853 632571991 913615223 578346689 360185213 241164183 799211567 272314732 68555919 975720353 354849180 538266988 850377882 744918483 133416410 946487636 586939642 745188729 536384222 263214151 267628361 331124865 142599532 869931614 870932483 302574854 129217439 405660375 15731399 67912875 869756380 740393294 932792324 781941383 104496921 242621430 660243829 741291423 632550913 688295495 888719953 451701955 639309026 700908575 882123481 312615366 822553527 288194135 713929462 434483207 983635500 105032075 984392870 708224276 471910767 652378242 436406329 242124075 165069865 528638283 353679119 313861857 520846331 928154824 803258126 641362687 838884359 573276482 230344497 892701076 981912836 700930529 833293847 579459994 741942195 159384319 318032596 989412141 794375897 864619713 316845292 701365827 895626142 366537174 470956129 90114328 637962813 150502479 969085312 980341368 534746638 923474895 499756100 981171168 798737235 415258952 851495540 150020213 743170215 136243194 132498414 324602197 274542270 81566721 19708812 605013684 134879707 636379293 135412905 319963187 8892246 841858281 177916165 331645150 511768207 869456324 275641534 479162241 631327984 600162718 949853186 727760713 639287185 430031471 376404708 5876087 395384693 367248781 386451305 357572116 245709517 533162633 894536777 364094975 795550160 221296471 211501296 561665260 907704166 291901107 90900300 951495303 922926316 298567094 67373517 502616521 622964397 359902941 124119890 176250851 285454664 485319212 778862188 103019002 501280296 199275715 448136048 461111998 567922372 453867749 361889097 191325404 160338990 111944808 297877554 426940467 434511469 187395679 131655159 577044681 830187344 543663932 565731708 547100167 55322992 528161606 672466604 879709120 698317318 65139180 610194756 909737685 520309717 324008098 505970369 243381765 6284876 457066620 779785006 553486652 314805520 883329779 72701547 764101536 385973415 439259759 468705866 465678870 336592385 319913121 134733945 441850835 559488524 468300621 988419033 381366161 44228630 597248259 596605887 552061126 984925342 677203008 793525042 164703031 318582459 314493266 974714568 330257605 948787451 411112640 885012357 595292214 736260425 488302863 979209390 972154504 751260486 528273617 949629515 438059512 930640090 514983214 512136821 427130807 660830331 118964814 769717645 701240962 251265191 893355710 276066764 572410696 794568826 586965368 649281470 139625532 48366889 639767129 397523102 459003144 367234032 337106536 124007034 926904730 170824723 715601845 958564652 761434203 121987821 56319445 839561125 875554222 626750896 763420028 914299516 943824699 395403454 379707168 475269789 453056003 714169044 836428114 57552189 249283897 641931221 652394013 213113864 532938802 586788886 151726526 903412704 429265201 119987062 24635518 235237047 204084893 787504391 609891737 344446983 105982133 315737905 729737854 509941801 625542903 907578467 945685567 58978834 492020991 100853398 360975957 369543541 731376236 640405054 379171950 446587810 61845828 683379476 120397349 145154195 142150589 910669469 174144824 188198595 884848858 608189060 189460993 69428463 40993039 545133886 538280968 18545908 466520325 72379064 120831974 292268623 255764370 918757432 736619229 863293460 247610225 295916718 998204246 631423627 671242688 231060426 215261014 497119441 413547339 224408737 864626473 544390245 430573719 417577821 541672717 515567504 763340827 577271098 539013079 310395099 981541249 105262327 957220543 512615039 526695610 883481349 598975942 180696374 402325463 387288125 91318442 243388390 795304319 701218588 392038074 340326385 919984761 644270975 462775630 807496074 433705531 524358197 675197113 421155331 463965401 794273085 470365888 764406167 313410219 898357114 570362886 448350741 671380558 270558194 19047286 102282358 152061113 229442763 709870075 110885672 150268793 502260782 611523545 440740347 649613728 163074487 549975400 808007304 115340372 161564526 917833652 332480534 593239821 380201806 553746181 33868972 654767827 257299318 8952360 330023554 530411869 557676254 209658856 711956951 864579292 718224756 19160636 728707272 142036759 731314290 654480194 21475962 191754996 446163913 459010103 821622113 996597110 172899673 791172172 951084291 14564222 217971067 840521501 463171955 406716041 206828622 875382315 796154764 2209747 882252893 109329757 939245556 641147801 165649110 904565657 491387997 330219966 203987743 432337407 340862977 406361753 364440780 612447467 822397280 483189470 720961729 39188365 225384320 6592190 892447369 155023618 536250359 363137312 518758991 141953191 918857429 760890996 552627364 619925927 367408047 279806631 19357599 347181493 129971913 884985664 368754995 64674295 572525948 880366599 664399749 338925245 963548619 650473556 413042716 638942702 772969020 902667168 155996348 800357105 823953695 427968369 497096909 238811288 321025924 773640412 92891157 73197758 307400578 976938955 553651939 896035865 754910832 566702392 92728083 991178145 122013171 259435459 242517345 976971868 288946898 35464428 870857076 208448928 104530312 576269004 429388809 624354436 802485271 928948596 88803628 303368126 41857793 11464271 795751466 38393125 486895625 937626218 959911846 489706001 462187061 656864975 21850898 112795938 751035418 57240030 441076696 900635035 544117851 803980794 94669734 442279586 831452485 663487299 963621017 915029120 867276062 503022580 197852469 156320772 411590857 95605636 966286318 685449277 822746600 969717893 906275529 22038494 867382925 560135868 36594693 603562137 391404302 844396485 784563045 926533512 782483583 318424507 893001874 239718787 571113957 709450157 984570988 813051700 285016453 883451885 999792690 669926514 239500185 59794781 270956922 689272562 144980173 364380329 804020756 97593598 746050060 620958444 934120049 972672059 886841232 266419016 929297534 791155033 332377771 978548030 946881138 527033906 67533297 140794323 136601795 535554921 852264462 834463921 49636008 918269035 397803149 28754777 211616233 809184252 777357741 881842093 851538419 170899334 5828417 897738733 88094318 772186033 844618401 273052365 76222176 752148925 981355628 116805734 752565805 202598340 398236505 951594373 764100354 967463773 71024174 391594570 869711162 230752060 955135354 493663083 823159882 449024837 981042529 461849826 769233112 65306844 689234365 660099267 887439164 111674075 20943089 786071077 644745585 55557175 682233409 934000723 754374085 792463948 588719827 891243900 849529877 753550505 236041690 458548700 447470000 343259829 581742729 88045450 384566643 268401334 896527356 700942973 884767013 213113141 322618304 918194270 862995469 686660635 652622743 524235636 911421548 894618645 143220624 299795261 12221680 644147273 327569857 168620125 875831198 620617993 5509941 739819587 264572364 277783035 990648769 540492900 18962259 70953718 988437429 474276274 399139992 399467103 133310499 470123326 348076902 740676137 354144652 676050244 88357662 188800064 559848937 339447618 232892088 923536479 973537847 875646283 341674356 890089830 626608848 610516474 585563497 599327180 390922008 996151827 132985293 281769337 91396908 762172486 153186320 254308051 469047373 231364999 332992145 176031329 437654232 714708818 12065210 57485962 320335463 936477821 999084533 358148950 803392588 859540529 793733407 932049887 904228939 910181800 803141848 361725498 665114381 88139618 687778091 129877074 790543112 835907264 448359723 425508307 282595172 90240448 740172904 905941739 553202210 292696142 259797397 629057161 534683243 718593157 284780713 241346652 783854638 884770206 574762201 252879402 317984470 443533340 427916790 828533059 22680537 96242513 719931804 997983132 487396543 526334705 367871717 951375367 452681174 182886691 831270350 301177994 705770172 957190969 118945282 158176729 207527887 124101782 608261126 255218789 384689785 768793420 227017135 628643999 896325354 461266008 621280512 429190081 301718033 615171141 303682571 455507963 344983774 531083011 378271804 160094818 920794964 668035635 24371371 35927336 699548430 99204940 336055023 956562150 928288378 5208619 436904062 957648764 240483093 216323505 802768571 971652831 449579811 203654832 552974481 862549475 40164829 309822342 886746542 841325686 822706835 744571682 872964270 283567168 820863684 170724365 705201668 417244943 453212481 853026007 482222545 463350666 871953475 265376053 864094559 853426536 402601817 710567287 843573329 372386100 635864533 551002294 358739836 35211949 996532693 28209691 717346591 21763975 459047153 463133839 219329310 640084198 104233608 881587552 700088148 41894829 633231192 24318098 470551820 385263741 885547201 885128896 74509023 761862957 40002748 394451448 746958728 829870826 107971183 806827677 280181445 476006173 747236235 229333022 245974886 391791104 697650612 692416735 124019319 400950892 828058134 404533938 675442895 563609603 284274241 597674986 683429418 770443743 603113195 959791762 361718470 610696618 171772780 697841652 967303872 332866139 504701171 756823871 917625376 597701217 535311487 94734344 486977004 749019947 127131962 547814239 546474760 637373052 948867168 342775072 715914363 34103773 540137552 532346257 156513821 966458582 897021984 882338110 494679641 459779766 65893206 395096353 905759092 795633357 777302700 79483606 697341879 85529836 246104079 269778727 870339628 670544487 668154391 297021506 215608705 312021668 6610558 614814310 680162309 136735117 16531448 545261112 130535900 328354702 212556024 970548039 180388557 575784855 447716651 642410305 555665193 1938376 552197065 357615358 230465653 825263038 406643032 551260239 869776413 993201754 32889248 827934733 67544547 889581235 821233322 51997101 879231359 787716263 65995731 648075799 987927384 515535661 422739140 796464158 580040894 550853503 754519287 133379893 34961698 640415743 429420145 409365745 410319668 637350377 708698876 40700229 623187148 404907286 690643142 176057310 605275561 239318334 574388800 49553077 309179451 802871396 684015505 325323356 522279664 8590415 533813648 212003991 874881353 545640134 71794839 662847840 451458399 52287611 383979815 104586374 572380181 955381279 594033444 865518085 451851841 257985879 232102608 475551940 25133034 850674282 684724082 715323236 833520241 237544040 710169648 296679811 213535305 511512245 45977862 634219417 416970250 178366047 239979630 365461193 575948405 417909556 878213578 581115869 193589788 927429659 793425325 154215211 829956261 669325312 550633355 289271041 658719882 625170543 890752090 673715456 69255363 591365020 478680407 690005323 325249149 945590556 347200886 122880095 358897102 451832418 222631020 561509728 782545813 268902897 967171559 343981127 305571977 495864908 576411414 945298650 910010991 131098200 68274162 167987795 827155091 10523950 43872424 82261140 797866964 192258538 68675246 540631919 175370442 824456018 977471174 801146896 402989304 329243354 620117318 578678587 593806537 222271093 683410628 824355053 918280528 204915500 367441976 670374168 18815197 260782893 70740302 239504373 230170844 727394359 699602760 52907805 659842721 367218745 430978854 652270527 310461622 880125940 395929204 47677006 731452257 407978551 847719843 597712773 680214713 43288851 426092671 110605225 424148618 483012537 939277545 342744550 292965684 394104779 611999491 661118940 781107451 660286989 650952917 881528252 848405139 118942964 868754825 463415537 629828904 387384921 623920259 94006469 435256098 188469236 193653152 635092311 626012571 305744642 728042160 163849995 999917046 37145256 923324946 813971973 739761729 202071227 440650324 403933976 403969201 343995807 968402567 132567142 996210162 913349433 482424818 989831262 965360847 864771636 243492397 791672708 619211349 846619051 45731729 443099414 693250128 421286086 50162305 147445332 759572123 479629351 984519903 718843358 113961341 995062477 815794377 53515359 167052456 385180317 116989842 326023632 999047375 911010589 751738770 295409361 436625655 666566911 26107935 721439593 52446143 322130837 835010748 444455365 782488019 604333030 194639729 45140194 942145189 447886580 119331439 619675830 277984059 4570451 262703197 472055732 908136834 746963466 514957414 999838176 14158917 655017048 796695914 116301991 772241724 785370831 493014401 765710485 555055178 708594353 500693848 264002767 535657672 264151358 874040314 609648365 219252474 414019397 837874646 25212610 766798462 633593444 383122035 717135205 601548552 843864683 511466257 853429438 169532039 944489864 203853111 729329241 473423532 280952121 105269973 883985182 419347621 977262039 395980981 16438478 322798098 546951684 270980650 132856074 971698635 895855566 727575978 255612644 804907558 504075481 583929229 381790620 426845318 827624607 774989251 555507366 341045527 704362392 17974908 87351604 994191113 843361432 153320414 768447074 482806333 367082942 18459362 79268781 225424829 402755428 469056443 592940414 123095671 544616458 818454691 372276233 342744204 340820618 564470657 921057601 384897337 383006799 620279266 468346314 162726399 229904073 124269849 344943902 326145797 144436859 100969761 903889142 405397757 403870105 570350797 904281088 86015505 581734475 529000457 682353678 454792036 200268883 309175618 490628742 819045989 716750487 696692759 688774923 826038640 307116714 892002043 120877833 318318363 40401263 298248221 497319093 179256634 623160187 156173154 996973101 137992181 738864978 77144196 355597722 948838431 166962291 544171170 634559753 995137143 662354673 164966362 741963290 559082584 644498209 417204514 170115449 909402686 412851578 404202037 307860300 6753180 889429286 954776206 450555436 182423233 468131012 314958300 950862818 925759697 453478900 663671971 572496884 849827741 452790194 225107233 696664224 888220672 310321128 924818589 141148079 88556467 547531185 969195084 715823481 740075055 150183943 656322403 516001561 324668844 620879619 708002952 118303862 423189750 126366959 737941843 796854308 815217656 557863069 409006963 740566299 82443842 725961260 930880241 218285693 933572491 376749864 911775887 650246190 577555449 691000557 51533995 603163797 94457422 216373999 55529317 488602905 913936116 234070489 304595186 50166236 538456326 552814116 129727887 677179805 232663068 845782804 555175743 336743441 624611127 262926499 712742808 622760827 209891596 641469335 539406905 536708698 247039071 440879169 907542468 396449689 441674049 8911384 501429925 885388611 883160048 501264766 164720833 720119830 296574433 557398881 16285636 776533825 309593289 360227673 991153275 662270451 119379584 153355275 598816692 279169529 880754326 148787580 239210337 942220869 554143091 99261472 246624940 26290762 465276780 215317220 440664855 174149464 587311192 359291602 732719718 283824730 240829341 80988833 665029364 127205968 602823081 221230101 912022121 354204602 50806658 596942770 571661313 225880602 794169143 877730601 192634452 367335132 79099505 134993236 514742402 997348198 459333494 796672111 747340364 236968735 2327708 110143223 231162179 780937414 286930850 357829077 203180656 306134427 351630123 243241656 987585833 353241872 751684184 117700352 404637015 375442452 636315221 528074096 287647613 274203305 463170468 517236347 956406626 557058773 876018536 27276238 794992951 733161919 724624210 810585816 327418058 681242159 655852341 79995557 331590222 489256423 840776234 289965792 387805341 992079440 701699815 911541369 157113733 335021874 189260418 572037420 373592332 52526054 915833813 774363300 282654548 954697402 2033034 31056796 722936284 685338647 878307364 292098672 803097857 170833699 314374770 551948253 294055915 876843797 459410844 133324688 588288538 960050769 796709318 522002687 625163193 482190148 650476878 970698377 25011506 68521595 245314752 18947647 877949731 332199 645771334 767718081 439324475 881996406 402303622 453968841 632262025 573468259 342329765 199865705 949691292 996828529 523004886 586605470 508126624 791101040 95345598 505942879 701205752 174771737 940188249 794834324 915131822 293763626 431960555 71469934 321368582 989960047 384469301 424426024 921632664 500605500 597529377 534882668 670392486 584838794 49776865 484552728 606360248 314899909 825441417 895027789 461028582 728990855 726168503 428814834 166106046 258798531 260226924 397325167 208088048 879662937 237247867 266438323 704086384 506781435 903238734 207759721 977790598 134259739 233595726 391875861 437808155 306441191 618157549 353839261 610085217 870462463 209728567 841364530 461636777 345733127 6690080 826771816 66644717 12090063 762110284 95965160 221743898 465197480 729066711 855588914 239494725 966295599 890793890 90423370 100852741 690384419 473235882 266804013 692923096 587944884 726864039 445580434 431555153 506068391 587442175 226960210 389580672 567601500 257672805 423920741 382237563 254480866 973449627 23616839 583939343 992705953 533905659 938741475 656388280 344985986 976605054 446151759 233620218 883554860 701655844 544261453 596604523 804784638 148041263 430659131 147726413 736778613 902698593 564789260 815769746 637866422 424433436 111725941 77765133 303242118 195312082 919236517 58991946 492259622 618494758 141421267 968696452 338650062 386104277 747627240 730931313 974446792 480376133 943024644 4158825 137245701 165261192 727490746 811882506 398942962 380153306 600183193 151207927 323812482 805640960 979799001 454176608 450271307 420367129 248897724 884593778 148009878 199648638 993103303 295211361 981653739 671851221 992546790 691242717 186507307 296945206 225890300 535675510 161422259 477584694 294536107 565795963 422482219 68198502 730825817 452220218 187814534 826791436 377512772 524439252 341294004 63193627 740096465 594583843 915285232 801294164 894038483 710857845 824402832 5630289 476688755 219642709 613579743 544201354 336547722 707854102 730455080 806101399 908983078 800284932 439543888 242551659 628415306 379747103 136381395 740075798 935913949 586145913 436871378 341836291 873485329 632802673 668065456 705339822 656382010 915243525 256836239 368866241 669588135 538315414 805495012 495133198 693745502 152550501 277320963 53381820 990046862 998741654 327163908 347760681 177291376 312656353 348759158 856355309 722058910 890380020 597811104 336706976 13405231 319437202 681088561 284888235 450705675 382223483 248219259 157196142 949546681 306104097 284204877 34765215 540750386 204859027 793023330 987771803 738670221 114371874 158712366 886132992 681717864 780855046 272367005 129815593 153749247 596178436 838102695 997729213 61829973 817282174 397836803 569833503 491484998 620627280 471706366 337209478 253627633 871153263 902304431 173565323 763944180 978648182 796296095 269512228 668759728 747519211 820638552 780735384 491839234 118799066 771642914 321640177 477304395 443814626 952341389 563717415 714843883 93419230 541588347 961937557 659787396 396125743 587454219 22934168 443599954 980021751 315092972 449090137 307215524 578837075 918758479 583348678 366008929 195751797 845652837 472265593 925789530 344977251 959080780 905494265 123207518 332990163 372535208 766816854 875392178 321084215 877497845 998227691 891454986 138874973 930489272 200756982 442106824 974320461 787021279 15072910 257537 270770711 859470864 141013372 710869848 402475805 825511920 875187522 243149203 798800598 805700958 973085794 376603947 461217105 986997517 710663270 596963590 997670234 279666484 611545420 305115825 537342806 773401788 426980590 654665485 28844723 571308390 492289362 51007629 910901946 200986049 984196153 215495248 144780094 114954009 156712917 542721317 109859314 623973421 527624859 246095931 80462303 642049149 70840498 17008224 213862492 437370213 64646238 533871413 237199479 599900000 488365478 67172138 953538737 601505251 52795963 93093065 465513588 136639877 579221672 80398053 420320419 678385904 387746274 851465284 218791700 600134234 995410348 35273122 744956378 480212701 417853738 428544944 625395795 863123594 228799937 233250320 720684479 456464886 682289391 497235775 378265029 940393311 248036832 697561434 261614892 425543569 574267915 193550694 779300839 559716035 440319535 831651939 615510623 939355696 932779678 578787409 570493594 906567247 862918014 860801406 167158275 621937520 574748473 251028622 516661991 515135957 488484783 228241827 540731350 919214213 48755666 277550028 157332545 362938033 943339478 684420981 116905284 34762974 256547809 463234399 437157175 751730301 579356095 796251954 440906473 580641642 331238251 302638185 116232257 493974606 662856156 687147909 311353706 850556769 686911126 810766132 468074750 102037329 240121783 871423786 970210649 411196125 854786219 493556460 624449927 93364142 912590425 904099590 483882411 56440265 100086681 510285079 937668558 417007559 834141652 961869263 541766684 243971481 218808321 692035006 387719402 814750099 439006039 937549178 983300197 102170239 809451702 503958845 277302006 472229776 79747429 980239210 971375178 575686540 652904448 533886385 752660101 523250407 552492641 575573030 257309495 493985491 653766422 509503174 726145214 149264061 316739577 860671695 868593273 173640258 719563541 542583124 734821372 863197138 331492384 261114515 133977809 831826098 517715968 828079583 138838746 428685064 653914805 313786566 375803419 368727709 810834572 230651804 463145359 661027760 709247716 212571735 978975858 412721140 924738450 422872877 303079481 464997542 584806243 640347918 512488776 495446107 557135194 779119309 459255151 259302651 200849594 711971609 34865245 896632556 485706400 254665525 290083367 507842440 362847918 669801243 302899492 207862072 179175406 401883215 739584516 613479373 594446727 370249466 492635187 906782385 844176520 759861765 997588446 373390966 656944775 662291311 515286685 839365223 873290463 724598368 189213981 255279563 664000625 774611267 656049464 750204748 831933822 806924424 352179783 911621108 121791156 771163908 423003255 527807347 540298123 933106018 666827745 94135442 763155130 331670786 198959807 711587226 659753828 50848322 595095104 891027920 174745299 625366988 639896037 417991934 766185566 815624815 997874752 458701294 844103183 573650381 965556429 808090159 509526767 689216856 443545107 20725149 768419002 454451736 467384882 842878052 200572261 679607416 466080550 946689824 50624277 446061793 63706235 946847281 799287317 380410587 531473762 250052611 63990593 944147726 216994962 641606144 84163772 252978793 354636296 887204556 372342474 429313002 215753264 949534472 267122790 56379993 360369814 550610838 831614854 368217700 323479827 995408852 171421467 436171556 668277748 519201240 375581407 307006549 428043535 265535189 28420832 627462676 964551940 93819839 930640161 535312664 55609522 843656474 508613960 672591982 429971411 945040915 585034977 425882038 111515659 717230847 576835349 175636848 136938103 638578496 199850795 590232342 989334678 1102203 430668531 241898567 4180674 47240840 522403563 599752647 602433265 359517102 560926464 645339420 916724711 669862222 329578346 710884498 804307235 525229639 707411852 606268545 329686196 563239697 727389814 292812246 585882496 535663886 470418094 974820627 506416568 46806700 578378882 444266145 261990057 323667748 854007046 939797488 517967357 623031728 574103582 938796879 601441076 902824453 443165553 805290251 84327350 549138873 134082341 758029732 698975912 340333590 787574627 226994454 852652650 603277098 2844241 619326161 903582487 192501372 388436029 501595563 465798398 379959115 144697966 656342930 144395589 5901715 966180459 553992095 116616558 984962566 576130948 10913441 366277054 934094715 438664165 643252351 157675295 216221224 348230144 656643304 900516325 480485003 612118212 680544449 296694296 272549650 266455012 567052982 236331839 744049975 749125266 311112730 870110685 571703634 260958550 384200799 885682273 815682509 96919763 804258517 907603475 174784006 523938749 648947851 125871133 551204601 970451631 13217217 130752899 738981138 183006429 683132298 561766551 989220825 169061602 710109525 156779310 522779177 191135269 443643708 950554810 196363544 984332444 327398645 51148083 100223945 61830965 778375154 720074610 883426585 226220647 122954331 58524273 637696461 126875982 493773144 494009984 902576091 423138523 953773822 511252421 66843067 389061576 264828826 64873168 289548972 150111059 289373732 578476131 123261086 663191338 362895848 107939848 853336482 835077033 742922211 355988531 305073869 803956652 808748476 349701307 524979799 792884616 79708365 761482163 798038717 636395399 337782389 464067120 504231335 15298590 644066987 518724922 630129782 140639557 123523791 933365052 599017492 139599582 511322183 867278194 561309753 51073525 667223447 826386277 473015859 268428568 779782857 34829446 404838797 44992345 464402635 819169114 403078142 12604850 656702755 171705033 241800250 25205906 242682698 815833784 15323021 958052173 504752220 264258747 543763907 98553550 296479730 924579797 825771183 539475348 905850434 392635736 159684549 624378139 143662515 419565289 917427040 778710652 415157356 207953253 532508693 132336902 451543628 732883742 896675801 149126930 162704227 58106001 283532847 955022851 700162979 441483287 385688968 370417618 295407328 610009226 934234568 844505826 672692484 447429664 509855708 48889053 504687464 365078412 637853620 80184377 217869214 784045484 177809618 720873801 482827661 525854368 251802185 65672857 161555811 185939185 304628467 669332004 324540115 918277287 927349700 388446765 661225594 342747992 960163593 492111938 502374417 246979351 637952277 6731420 110029295 562968654 71975907 542462555 421230048 930000401 382646313 199856674 523359653 816380051 562790660 665091441 606848139 754256550 666693364 119061895 989814301 127739556 165528776 6056436 112766932 404636279 341891614 315569627 393189330 493740737 766874475 947424907 882705131 9313674 38272354 755470954 113523177 71510172 427553877 572042643 28829300 738427842 51826812 604429227 881325314 387028693 56047824 970731389 797308087 116687483 779060254 156290180 912677496 404257788 314639827 746143123 434533033 8264054 727511715 726808931 617020911 378836425 268571995 984983628 5973343 90462005 525316826 14838087 333755534 521904465 474151464 41381480 974167504 652533714 515375240 788647578 518639225 596117511 41770913 516514429 820002880 715041412 914248300 661416478 436702049 85307450 98516882 595931436 505714158 922586326 804678699 179753580 219989345 764577467 278126344 861745542 121853809 436681303 179311424 822944794 21580817 236289824 363239687 937946493 610494473 540717035 686450443 916774015 567656053 488453512 455827107 437065325 199240458 667096090 325250708 368713064 317795746 910215687 526509872 107910687 432300192 58767669 600137063 237759492 605284152 291536986 356192215 691989917 652802653 467851606 266283776 142022119 713127706 586807589 281737115 592006261 421978905 678585646 258760473 817631032 81956502 966303911 667452250 276387887 637368452 186488393 269492629 987281652 947500099 243663928 43777022 934924160 679717244 836077761 919441454 881312455 308651674 436505680 411451843 816294257 298656569 335990251 896459709 291006131 405079651 647302965 897196300 712074792 517093016 475341455 749617752 771766076 632782405 19740561 812118823 377288275 253785447 598027457 851826607 951879214 526661677 914776319 709759419 360814738 836491092 171493820 279085502 161930286 968062280 543948162 725679367 929018200 611549658 250157968 180136214 290430407 306005294 103544582 176159351 689235393 209515533 190732093 806303300 780489255 548035493 227080708 947297678 245475911 274389517 404698731 492814054 315574466 120851154 91672595 604240763 57209234 1140878 126478728 97405431 523497418 178464614 983685743 22662846 435735738 71200558 247189799 775515684 354743191 381738944 129901540 161545702 702032568 381820339 883108156 203538770 863359953 535753954 725932011 384736944 1408360 383723359 515290187 898323486 757733757 471136685 384155936 521992956 423240357 157914607 989561210 367078010 419207425 931441483 471909659 153130542 384926805 326456935 904894225 973328271 853369865 773185432 16748431 59137860 195582039 888504290 247981700 663512583 836036421 541581778 996902163 839812066 267640039 211016422 923731278 606363289 809703753 255850311 264927241 39653679 702492863 564841187 146014973 412028127 553464075 338381533 409801692 847253509 33806090 526194127 709628905 775086256 131218267 939001340 342504510 670432456 726036532 124222191 182611304 584291454 351821260 367127820 498785076 968427070 274257915 639766957 304147491 449081119 815809885 945712851 144467205 781423991 344375577 490257904 915486097 409612581 373316633 397535172 159700250 761827943 129961942 642011814 555955600 407113050 163686252 227944881 790790821 355129488 184714713 795085703 504995625 317757769 884498409 57492439 398296575 540639583 379800432 833429263 161155494 43451095 497614630 456361635 741457196 634462277 874484343 787079739 615229284 538205344 453296663 931757488 537783530 43819066 860744699 503492304 292962013 305745781 45319695 517303909 963399978 318384487 80340438 179349254 178152798 938464971 233778754 155732382 534230228 901938397 957007602 932007372 952025425 181714579 546377517 545501344 111052852 678997711 309995306 571909819 786801507 191715656 768157812 746573583 495023553 417158163 962946042 679911518 128996212 790259592 646351649 633104523 115522171 996929317 488618376 416194475 702240295 741820982 293633212 980718697 724967656 376290777 262132856 648065402 899657656 34131200 106242275 625651293 507378599 731733017 418964559 810020075 712490023 700385899 307652406 254482565 379245285 784668979 597726470 327623798 16587562 7342023 313792468 999232520 670400434 727658372 56397688 233298821 406978096 225133009 738089199 271804238 647907988 712171378 461389164 412369888 463342493 712053809 770740286 898752110 143324527 712115015 7074622 941639493 389265446 701508745 269746169 590628591 306727650 745964327 387807601 810154551 258619651 391728091 666812001 812506393 565969327 92171760 141685179 67276463 696431324 896480398 134067152 413143792 661312122 550733046 848991421 471495903 704670232 313002105 863527790 343445415 838376448 897349758 747959099 959292395 916619753 46816081 702277304 233398018 90548078 790923013 366935692 716622415 450176837 716848267 572424875 515506201 38672435 707654190 839382062 362480480 457376678 503878434 883300188 850747384 942430470 894469964 858640175 99104361 256812026 543127551 804962905 400971012 602848503 850160934 795864444 757323288 204381631 257067476 854508277 637534723 105783094 214633489 433383301 139341364 925022376 433796831 843011330 95414075 600853324 206153670 889479473 99236313 480255349 470607882 544536191 872293468 499018610 413084207 899386734 63866986 595292705 644731487 161016663 9027807 903258546 717752138 591711791 333702675 229518768 288474304 905551063 653015139 506791068 700604026 876387228 772889731 246563826 602609035 738210087 386598920 190924250 260081074 548584042 721366368 617742592 818760087 849490907 846402877 549927234 598103625 525955514 168519834 280237394 189683457 978009751 736185219 454241027 345098228 895216226 475420140 700873653 316782638 495224909 252682131 981707676 871597735 483579329 127091388 477739203 71702949 473592742 753397242 254098780 321420312 559851027 882547707 582446045 284365197 762917288 165602665 537181350 867001027 110737798 192531290 927005773 883560567 754389258 164410456 332776670 834851779 196616427 507798815 254357992 806825175 454854192 728533170 972609675 849366727 488409942 521985434 44215308 334979748 750567514 192129583 853563132 461642962 58308651 961464119 6344988 329091399 734202868 332065347 310513275 383980318 174053313 616926565 171017754 692129264 28179170 948133950 987749736 311749664 556490981 622386812 179614896 140654267 723456815 897089241 977395749 239798245 616162801 51048797 405988948 870175222 909927226 650635061 187003618 974562563 712500640 259467290 288013540 563971202 438519338 768933724 187467894 172043424 366586611 427918686 433952284 798847386 992088191 330817573 982739723 901038174 208679897 250617144 923112562 134018948 783459202 971616709 345768777 64543488 206809220 659977131 656150719 839131089 72048957 636442317 718369496 983826428 280060736 460444600 414183989 953571165 569375738 851256708 601711792 212665427 867492061 643729021 796300803 438251565 601576689 120206158 800440753 30993575 917349543 263128141 754528585 892017373 643300219 570908542 885069861 396128188 199693229 672326471 273061026 687368553 75706246 27552123 621516293 85953903 997521897 529135633 354036285 896791962 713732474 956769116 925431311 815743692 530779548 232916369 156630573 608509352 345047166 301354561 38460759 114979625 871395997 231356853 688481073 40726565 812072326 850912999 175747987 957246189 339800936 179411124 849584090 28595646 663146814 422739411 775592087 581001235 491786988 61332581 259776758 710380656 752889364 617721461 400386743 37690435 957688517 582394016 931251367 700875965 69223046 53438031 624046893 598813229 925950383 452181601 328786405 596849500 222171185 703400893 236550635 143785746 432076982 768405052 248392598 663017275 415455322 464880109 400267926 908294762 546358439 14939495 332055607 123202723 834158162 264224132 138479914 62452264 981085201 43620118 696245821 904114849 133178557 367390916 680828811 552712042 786019557 535872291 792047269 214938314 575996489 112883669 616249521 95533937 706008918 375893597 246293018 943246418 922859798 408811638 509363765 625937548 994449838 445527952 23589829 921577967 853025309 493876763 915944659 319001905 848698232 127597746 602256010 708837180 913380418 860542144 298269690 527193433 254300210 789445724 932315048 212642814 626199134 829957776 926088492 532924462 470777223 620783155 319868239 596623941 554128033 706627330 432621968 465360236 83076475 969166759 333001428 462984913 831259220 631538680 607105054 170132350 725642691 810559088 577832159 959616491 424681082 83872452 447112144 344037855 31780151 789472228 355163831 416245698 125191245 829120553 199144207 588686555 91439097 517088995 240059860 157773579 497671156 28799471 745463185 879202659 78602964 667984290 372809255 397009274 969154700 246908534 815513938 588902589 455192742 489351865 393255307 60623699 640432545 397695422 204016499 430965359 240420460 625647684 898050250 585636550 456419631 18458118 972468988 241127697 488196297 805750225 825431429 649141894 446941199 82058413 496294731 616050148 267141601 484910856 928815955 586985993 494336216 602662233 103950145 440233145 899418304 230915307 828770340 105413301 343019224 107127024 144476867 570997064 228145899 269565068 844019600 339436685 603672814 772317711 922621539 818266992 85556853 908461034 997549227 596082887 131400686 661763517 777912407 873926565 855428986 491245657 209557714 664097466 601993919 811248740 824671842 374934366 727068443 591714740 426933463 825494170 655047083 354602793 458092454 530251291 244019332 186344069 662571244 852422448 556693432 332359655 580803400 588922544 77736475 420342798 439206655 905040460 203480366 930730268 441951735 468536648 663223024 374076387 736715560 484981327 254786597 661732931 198092323 468781088 437031475 744283471 129292803 168047532 734457557 858717854 416629682 707279009 603951536 460778140 422528851 845766930 733363772 458804496 604699187 385934209 811967378 503462792 588322374 924339057 539724447 916064702 191093674 801809288 843861014 109111371 638750306 635638518 381786697 203144068 671957625 448612348 356525219 436919351 160736953 219640930 796512134 265899327 305912812 554262877 223274415 142858878 275413216 653830070 271746983 478127172 634221239 397912611 967963447 649966288 506939955 308298452 974324648 614485984 795222133 906292173 306148232 290086680 212787543 961143022 345783950 502616465 931722996 999714342 373585582 770628194 136993463 285104980 551587028 723907577 583166203 254092418 14871475 485835759 230416454 737726985 349673924 828620222 283437241 99147365 122746831 868257456 632860288 736149997 518505290 568287715 90640608 133390305 961893409 38658461 972938074 540938647 666987010 452798918 812701517 913805693 850719650 358659282 22693409 984545317 846980607 410893259 931791245 778631284 370636619 489351318 402480147 625760918 195674186 969133524 433104287 707710266 19974503 843352127 305181478 308159331 8341453 729030984 881011170 770890944 257896604 504997907 190725372 155624864 612105225 422907098 261139564 884641229 897649267 572968278 635357157 286063301 301342648 611879289 679955734 974950777 719036460 120795027 568571421 130283414 380020562 564307146 40009097 523789547 79281759 410707892 477271354 452901721 929836588 209211656 197950354 416730842 323705573 299866086 351270037 93749280 272152119 291963625 256600454 112993153 612497354 422650701 180148616 778853073 345299708 741750783 565743631 87358528 923910359 664190792 737695262 44800297 13275117 799828679 6942685 648628821 766042026 802490103 132105215 399851030 527460599 342097823 470956169 426894915 255174296 389270263 219535229 305006398 49577776 989156582 55400509 121939735 14467790 365376833 488716565 410267579 919408751 349405118 878680510 271633273 849997132 16625109 703451434 444016762 898620517 906609495 554705632 757582223 382814240 256077111 148317047 761025368 575569554 42421925 468610208 220811767 630164354 786438862 769086246 82280824 774170395 109821363 829313885 562677953 755077569 46225151 512855664 169591199 279603413 303319371 396626433 314316683 314873044 460817813 237494279 735775595 296165313 756417128 389563887 532252908 856791804 872984261 619412112 788435180 769925148 771048909 55434596 37909182 78001060 655433010 328501873 305585108 440970923 532638552 12130279 368256242 919482874 65349150 449733707 385453977 923512197 66214848 954140356 887385858 298374550 769466242 227733534 789009625 136011768 949183002 318071464 27162856 798200376 938624600 277954477 897250241 128372096 410574638 335202171 3807665 13185141 928686586 600747748 799910063 33459614 143787315 272224035 489992205 130228183 103420587 775641997 604674899 251985970 855847681 524192748 368488378 348196451 574216958 479929510 413139628 809472730 335580231 8031692 591828383 63677107 153029618 773106945 491197418 824275941 128032271 188568453 545988029 853792080 604742149 117162469 453310151 545708882 148784074 493066081 683861020 839882487 619061909 910241657 185537244 462185073 235436315 69965553 346156494 326099439 627326508 853376465 476929557 223347282 793955654 785400064 541377534 121262948 423540009 878380521 151771885 628455447 731323983 231245801 149440480 818129287 294968487 790869581 312989039 575259261 954611915 630483746 279755608 934025293 158390660 808276813 372046157 145879784 687528758 401491531 218878017 100154532 481953148 172789039 48452818 541905364 297508711 245819856 216645232 306283347 123602019 929271745 449475716 484444872 353733597 85761830 832254322 953896516 579451937 78428109 658164217 101004822 956175305 552618623 746547309 935378300 913084004 801274552 32531646 449657961 343042991 915221286 50219175 138733559 4272932 785660569 105864092 137366784 849557631 533399019 32399018 806936665 638847218 779731917 751458341 199019159 371768353 324526617 891455685 85315574 821676743 55742472 735553002 750714983 122921096 988593158 869585411 153218365 916508719 415962039 270341211 456940825 935230543 806209773 694313228 40744079 718851528 94027202 143765167 285487083 147617072 518841332 947030663 362619816 557878883 210108086 747856306 855665109 191778040 672745746 106037784 80856375 245673880 924117532 640686763 297504177 442127114 831831726 252236925 401948847 595988364 941208439 991232985 412637960 931344592 830857892 771320984 895435649 262882113 49308407 869492680 893138404 709894714 315338968 904599966 124369900 106391540 413494030 806361607 190328270 935715265 682929709 616107748 678546993 813732644 986638154 173245512 690891583 91217513 916203807 20503022 35679054 363076128 283582214 517651773 745667059 867016130 657548576 262343402 111408381 20986674 416665587 631892947 232576560 622280449 897757008 77302800 79252235 205182361 750952585 120436244 6995549 973252187 439537665 305830827 711052900 640435197 668227325 320342742 555336399 900656499 778716023 278821014 205214977 440049211 554917056 516492613 364325331 183901794 495712450 575938795 532030482 54721561 751044906 254863946 960603812 463265454 960588044 617400151 286669082 383253432 921746612 615776732 394438529 32979402 155819725 606533056 770054625 963190006 429183078 522055643 851929320 341286916 537633570 425453812 604243682 749965070 202464308 529420586 434397701 262051026 188947211 446416766 611581361 888815843 520205216 483700304 259607805 451383653 948447454 721332208 243898688 453640613 853507705 188053887 767760716 308073783 146247135 10835910 877367059 105201378 920194172 399283854 666690713 349908690 907531346 833014459 763411914 386432921 904472291 603299481 529820780 645160393 489794958 610584143 2174166 92270033 847953823 515989801 317066074 543823781 669423548 491930931 563855540 922604807 442813666 643405279 779723063 213528993 344427974 171178169 914588543 784111666 821624622 709708640 146309014 785537992 661255321 800884074 422365269 812695922 712404980 73761625 141224059 341411624 687982371 619490507 672656909 799291344 376071312 176697065 474161730 308749513 31561198 17263219 441938891 527144771 702977462 665226651 980072990 527577993 695666968 403515076 62822967 996843199 246622564 282175544 846105397 473598085 398951387 935248033 694382144 564248599 940443350 170079046 891488388 203772573 772263552 15670962 695683550 174625582 228765993 124495060 732481421 621178643 862639711 254667870 677069185 346053877 135708040 649144649 964589509 96877028 924636870 990976759 359191985 108488959 984585664 944006920 28579419 122151132 497290835 160350626 774939654 956237490 136353019 424477188 416053442 520268637 973975625 198346753 425738485 539775532 95263023 156487466 699206269 373494573 716044401 348496840 833501445 499197779 3207341 600624777 195873466 575058151 133569714 750695072 93353369 403094936 126736840 184817195 13759667 24498696 101633384 339366103 755148278 729350324 931317828 958488289 490721923 873282649 749860278 126735126 108265637 852926000 614188594 996490842 230724731 831931814 177863158 731631429 10987873 765143339 950393309 608212885 727485825 46485356 366084781 474064804 816287064 575239923 53962111 859093060 147339861 544905676 369042649 320278846 233125012 555502360 536819501 552265219 111171450 553777059 906752064 369028081 75332815 747683948 444169660 878409984 99837990 679264965 833798738 491608002 478515479 669543964 907523411 184991406 283156192 340781685 817395872 146392105 137325098 874048707 509739694 767043475 133801241 449128440 600860087 501052911 730768419 816666402 810294071 488041481 533367249 406403955 562491085 175307839 207570835 975745337 608844202 204927117 44881029 753242543 681934948 363858131 889400255 574078040 687686630 180039276 674158307 286625789 234122571 36117335 728267286 296711175 710836029 731167318 486615899 145084802 37809835 227207329 239252201 980547230 465321599 756085066 59187919 729946832 526418549 500822863 105245881 212697546 160431989 648494347 116124654 126574221 394974650 449244361 152751593 384400018 357143080 570770542 684948934 616390681 980695990 622000090 711743403 913973468 791101323 926951747 959249200 323470722 234044762 429057006 437203262 544606705 122083578 602241479 413677321 17491633 719512160 429674955 911985839 772611521 995196908 337392134 270222425 830720888 799987761 962199372 3545560 216021315 488021983 342101692 142015616 674645163 927793327 314499378 794899062 157968288 969386506 897859763 522609563 677298810 865125261 499037057 675821909 186483709 328846240 891718353 617082889 251545600 215095049 513132805 813088092 1323221 762941328 963013671 666682289 233788831 442208619 836634258 364750685 459967393 408300540 443081099 118322896 82778532 619187257 970989747 605406732 840565786 684871566 148737969 743530317 228600693 654048802 92549571 993259871 944766375 405702555 674717522 626826728 684968918 97864160 148637043 168762214 982369481 825680339 64681421 178060497 322855117 824490550 238127644 618782528 11716031 687688345 574001878 169370149 177950225 922501078 693839449 995361176 878807481 914342507 850548912 227798906 788582167 428486767 998616953 99428315 965339394 265594082 590344505 810545901 498085159 992802821 904440458 60572281 578852279 973560984 951091081 939573454 191658743 577033511 590896938 521019946 386217615 26585288 671668967 957252232 335573304 863397182 821157508 217142535 341375043 916880474 292416186 94773549 452437029 18326453 701974910 432197111 745038651 164977839 695024445 776261764 681943772 59345324 503870449 992269271 76175816 341120240 225956049 58804874 824038306 766213008 748915416 970513260 51014627 504647649 72680479 833568655 454909000 496881192 776132080 191964899 907730294 702151550 388248820 410962579 300312678 87508567 82938406 613535870 260831343 643244066 799324004 945580500 695862 318625016 916485281 296166574 365064450 127762914 789982331 868999307 357232397 191512984 983303131 41606952 737433987 305514158 424425587 397261568 387838046 422082284 539936084 935117879 103414691 346334755 631633449 961358110 549044409 585082794 684180923 140389183 599227402 806987141 629415448 146014879 313911083 697459516 216339233 104875700 814160023 330956524 158131074 225324602 497522069 882346768 117037001 421664700 672385562 516858080 129459358 828165161 149604535 420721537 771197035 408841508 236385427 648911029 431954104 984003015 381767976 385000701 641182277 982682831 427412835 745901517 398267827 867620535 585987256 168553770 596021183 881388654 845052216 247523004 454230134 116873108 851682025 682859206 810457505 233067792 152443008 710779500 148077267 219630160 387822214 632585002 698964852 555535642 145235515 801079318 367992136 740964707 697950448 979059198 859606613 301090124 451992124 526084015 870827660 753891896 404654268 968855896 121504673 106316049 545614111 443122700 810454589 834487018 321303202 217941504 370653795 863413329 397030204 928365889 50402008 470733838 893649111 659371262 23161185 244237704 221669365 206782387 758570418 632251587 429071720 9792199 566624862 653417611 952996111 472819802 593764273 216102290 627283567 893476122 965494120 143441792 725410026 678013183 223357942 373850063 261390437 997973534 988227751 74200444 486299379 913704377 148854155 205001947 590687212 776872520 332261939 569705935 686738715 278801807 991247564 112355465 76233170 574765804 468969486 914114264 234204473 232159415 485219722 777393388 464761126 357436192 618497008 286162700 489374824 42347555 719594170 258735770 44112583 597845591 476579213 897225275 738672259 511030517 347813616 871270054 153969216 390230697 182311737 734578371 29790177 424863579 522603472 933311883 776333308 391848691 928913486 10608147 471597301 83442715 809845933 845333513 953576923 754995312 823857113 956274530 950430468 828087944 450662543 668057853 719645511 570685065 558620010 247414622 387582676 770039978 199147587 661994332 221187453 481546033 481281683 832295791 881289916 477766542 838880646 855926449 113969859 105324875 761149976 423634168 476462268 629230889 141647231 747498577 23956565 277924970 444505986 374220189 391998056 250245684 105028120 206205186 841793057 40281732 573903293 962631334 268017199 394823896 733985264 517223423 47410275 154675418 646155211 538061505 29236833 409845613 951661173 612839359 634488996 446202799 943586038 540954707 729327820 481966303 50142844 20399863 615230043 135131209 116987563 603970600 381395301 530301317 460259488 147513456 230336147 982270655 731386060 217135449 971980535 583845428 867475600 419844460 516008184 854592243 523847958 278115004 289972295 168594734 417894604 374378274 626974967 828183366 304537411 440508879 696183242 649522327 969841760 201284466 335028937 310396364 913208508 681620885 507481790 949864863 780679404 595244001 935112495 666089969 777418030 387143196 388865069 188042293 726299790 782823027 933541013 873853713 322589654 436920521 431838587 437302383 147105438 528392556 280359568 305896658 175636897 394693033 617035779 441798557 80864810 645782373 183391001 131531719 478038258 63179065 802401941 416223181 248257942 982108136 87439310 656685126 419406436 439589418 726322663 559507719 918977054 932648608 734730750 161467114 29201191 140617710 984470250 861364215 719160828 441170425 9333104 315943227 925034035 932949591 853718017 815980921 118222446 266090784 753826283 55942761 430074264 833804610 585696427 361923857 223026383 720034615 588230147 736863009 744169438 362140770 961998121 40681867 603673477 46852528 170200911 868807528 690219027 389478677 467721110 715417315 178861126 478038656 764792523 723623918 220690831 186194480 410204211 568534389 968411862 134555809 409835442 35111190 218258738 823968158 962290558 282301781 744062441 217093036 67988161 127526432 62925770 306751913 690858232 983866600 971849472 450373061 792210403 580254320 517215609 580712832 671545736 834551668 806703640 391055103 491238532 863410691 74966144 488061494 869129966 728992382 879300485 881292991 949097573 12150849 2091393 864761014 406551317 392652035 275146851 722704221 441291957 367801377 558769168 956894320 725305813 158533008 791607143 948012716 843762528 291010372 327482393 902428196 976183352 762005892 714785764 986367963 669995067 67937664 207241629 356559921 909157623 30806956 507159211 818893886 645572496 825620468 686418768 129235034 550805102 154434774 939106166 979495859 561601425 808391413 752634715 151156611 724334900 888584806 882776114 580551896 583335850 754263041 720479625 805171901 240396895 827246708 200059501 890442886 473070401 318884317 214575508 729884529 510765919 478696322 65189086 748768643 817135936 273339092 569533162 682742969 23391225 324602372 176048472 65516530 700889660 52501959 112347864 979043927 699963953 658514492 189739826 959540800 99392467 191615610 523705760 577995498 413824012 190305873 935867535 203254873 304917903 356903789 267472880 553566666 484868327 876954675 849691929 825127591 688342379 66365495 439882562 14323270 41455811 992413909 198958429 789121314 457943946 983998312 72422840 178890549 136645793 659064977 398762603 11980896 304656915 628659322 810576725 901295076 611566010 749650683 386622288 266891442 429714679 884037414 808850098 479616830 880919786 18536712 452043372 19673323 675542173 188293350 385523473 511798307 577518377 87136873 473270334 511686039 707801089 498755991 109183509 309930855 293851449 636221924 172715747 562920685 273159790 458948915 465632437 310483694 433650403 267031617 822151715 867127745 956196346 542103112 937754292 114625262 31573205 887187647 818870457 812601768 948190604 489068486 367651032 577508512 645715132 140161759 640461313 998024118 973870662 994429500 53613276 802013611 555283661 126035464 151105769 625118926 607141279 333484247 919633553 967374225 219298432 619111383 318508359 3103948 421138617 924731106 759408951 287713149 483636363 377896533 461257555 565528872 156077635 679369367 860027519 137113215 752808050 368123991 29450738 994224135 364754455 235502387 826914044 406709156 623338687 678744523 86563985 802212756 295211179 804127233 862591914 154056857 944392374 682701724 242998268 745695279 349847513 566470436 507891644 204278660 652178716 686928758 620665748 733306349 250225227 393338052 213553578 607521142 56913225 786424584 923032140 338743353 493104926 740996010 91151919 224853958 580030194 599600160 424949794 527361398 569667962 312718071 603527837 197912696 484841196 571945329 162446444 908711242 630652898 347169736 528144980 56282547 889707977 925679461 542857073 724360128 545681233 699086953 816653972 643180461 936246906 719408151 415438343 229448818 465589097 996034747 3734118 51727457 732079660 621925690 141957246 307696295 150979311 928295072 375051372 614939659 803286988 285553191 371980692 680913079 945519619 937400267 176661409 604442470 738280284 513744766 273461067 710924103 220655483 471907198 688202105 697710600 987790949 583048051 411619466 622626266 946196098 605967731 11137607 121459455 771227146 682196388 885564781 416679142 418559588 244366558 293896261 952252436 323842371 29162840 899624163 287374149 98595039 481587281 25215295 767340457 706075151 781643630 531862910 507732423 723330946 547726391 977216013 403292384 189860725 656406203 577668763 866536628 546903155 531093624 208704813 22348869 782895063 173218134 824547401 480557508 667818949 423715459 25570638 942181435 970883587 763488216 901012880 879999480 544135775 736558101 784934447 717896783 588096758 697241138 638412036 711075385 722556122 220312186 832285094 469419082 394706907 618000434 921732955 32834328 854370898 280601310 491366281 752248737 106491983 666403013 74631916 534829506 431612216 179336777 694349094 419188703 528870563 483422569 560291420 334788561 35836255 841812534 42264015 692538395 690188430 166159974 293023104 394374030 268516757 937319525 83036104 81246007 85018378 881768114 158919534 134355167 189804220 889314618 700353584 921826177 995525285 372427721 501914243 735140002 236520014 551446442 509368106 516311 343787011 35675242 160966838 105493723 283866943 280403361 578064809 803478500 928760860 526062172 403698611 595132020 882007422 476814895 118647595 303258942 230814715 537410545 816184218 236483782 915654551 201624923 364921277 827725530 432929628 572569471 606687414 777948368 225842112 479495025 120947715 382699902 714624015 89783863 784769022 791418766 765514986 337173724 810548571 886288093 159549156 723490405 401672730 927344771 455595970 696651429 122142237 480211080 8677404 703496513 454165298 966666046 344204524 67749961 707349711 66776120 448162806 114952400 80476178 617468220 97276751 785203305 111560141 3947415 342376809 136498607 185440114 810887087 864008832 898906391 709769567 647246222 123785809 520818239 961876287 334718367 573227454 644263921 625717151 719120625 652331387 633220720 793293511 193526922 722884266 556101178 837639441 737534018 684740509 300989701 798580554 651593265 625917669 994410914 571925590 882211914 110450905 969836629 857873886 961629818 331084551 416735728 299479080 748608664 337156112 249190783 39060929 817161677 310844528 383061147 581656640 51953007 878511925 638948827 66766667 7075275 510482096 409402990 334286781 53706221 228792149 326101839 337428353 868920435 236676177 151801533 28788330 608904342 896077586 162213288 716738587 769293251 624221883 954075287 932664079 906807285 602790189 535403193 156566727 397353465 330966048 723196050 132537780 465042780 161163075 715541044 297921134 304558567 851947795 485390871 181720242 872957147 396420041 43568480 894130109 736007533 542127310 425296053 999892022 597504477 657421416 219179615 887851637 482627753 700234467 721160768 735027513 168837405 543517705 384798803 95888326 660813756 808802374 546886083 929289075 327325694 966031167 92578649 921968466 617037628 118098529 213521688 679316220 954177953 390394679 4817553 300765943 882303939 654488640 250517597 987077345 960902929 146646627 244263208 429080271 955220979 118291408 891620122 362545631 499615960 489457108 68154819 865217560 952594135 389623099 38433325 829716334 478461991 134778682 681880399 978023209 913281992 409131825 762280066 197731479 433470714 942178421 98690378 409728279 770798807 293758194 528845265 393824619 257377176 897837892 835276514 188639341 442388283 952105916 354046915 913680002 207755860 705736524 430358313 226318887 60875169 963501793 867240885 694417542 289699783 124134166 724606690 375054728 648831848 13136888 298468696 507186415 135388183 6914826 746218703 258140600 484402651 810629640 277368715 680841415 770456240 68436882 749678697 953586928 494217695 939353818 204206553 503857099 833535691 706181663 640513516 131951818 140929481 217883052 294290829 533716381 961614542 408954339 175794503 458905844 78997740 621270731 798388824 165008754 860743030 85215067 885189147 846966083 313450759 792319361 256435716 780856189 23567512 309567750 370247431 325968328 488790410 909125198 52651038 820006346 16174292 848558556 92511573 626351773 100330968 214589762 996670502 718830345 367832838 450557091 702141787 241205257 216460323 445000906 567316270 52086420 943864897 121429091 947720125 345919010 496902093 950949949 912563715 779392731 19714015 325191425 978625204 477355494 947482128 848912121 121845981 808342784 965227805 524272645 65104322 879778251 195386659 368936301 465905438 25252533 382016171 888951334 401323263 755048174 736054225 354110380 35626357 331425184 676046906 149069020 703929824 865732463 935390771 422245500 488028153 646582027 37717824 753751345 541722567 111222842 132022948 395907648 897794616 905187666 162014510 405052091 732759632 467916628 687980433 228138898 907723909 672594418 891108 22036728 124874835 924894321 24638072 846693734 807665552 762533877 278121671 998678897 748460462 398900635 348982578 959203451 825535922 505086554 726709139 820186019 118238865 714624032 309807840 525211681 191511446 104797551 45132775 861924305 541061125 99725324 853128752 757098731 669887697 261589889 294545720 485452889 430449734 254707777 299698231 570094191 146174849 649880785 94249452 5128963 809325783 145725474 565855114 64377953 921685294 36563516 472260763 873091108 24502920 390888095 797403364 261222825 163643036 966791019 335744288 313645223 565853398 389282953 975744402 94892637 208658211 497089346 507621541 283198301 667752348 256512718 964735611 573758256 522587968 623965851 982611713 444183281 680525719 16705180 412959292 532132307 467212606 915752442 920291727 231075121 853811291 764411554 672035746 708207314 507911791 940888987 354052167 75010121 657318400 260717094 465594904 805791611 427720573 547079546 712488816 823906552 739488371 939330941 640759216 172033151 392898659 240014370 173769797 343418955 382247119 200093500 999955239 105245096 24777922 404387315 633643071 294530914 587901631 799414042 328854137 504798785 38654608 943802747 873714219 946678202 348965491 251944399 171874663 231801092 282287514 837428287 772875133 864189490 735957709 463059866 114151614 266336184 331599607 200520205 289379890 767623978 429836553 540329655 690599385 701476453 318805337 373599942 811295910 60234732 484479118 215941615 646095665 245017225 348706609 604111053 361747561 425795939 186050651 165087608 64704016 669572624 438454252 17609643 57681206 858371935 342079893 233958143 158348823 191084529 394267687 118040957 56280714 715073498 711358126 630370753 246721711 843547544 461854686 506230385 573979891 825199873 907970810 14241852 817504438 513810652 320136572 131264450 625210899 169988418 302981211 44776056 561115751 935562160 219985083 541305655 901937059 146414481 990349584 639911839 137790515 532335980 851787715 101984981 111779447 272866532 893183149 589634146 577322842 956534248 535964465 696793308 88977299 446206893 677719435 927658791 384937000 868836635 951826836 637961779 321638567 24963097 672127248 119666380 273085157 100910949 777344162 982774301 887783202 156688664 675589289 312564765 293533834 858575600 14767070 479153061 178183140 291675260 796498730 565756878 102542339 119399496 649331538 601345632 843460380 929166425 35756248 551559626 250664491 716305387 487690957 814531453 172832907 755222511 198528459 182754068 885523892 561093273 436153675 600237295 438466237 922467992 861820854 712811488 708766831 197297107 381341597 826666987 616582124 239821149 420381758 975343039 876134757 203302709 228060610 324917517 955342193 843013994 811396428 115136839 237231316 938596201 963598028 54221718 57240210 907561188 841351750 114857626 248526875 170779328 322586096 633967267 355376375 142324276 275735650 131838307 834563078 690097879 818722301 660832613 104526355 199865099 899026676 249311018 55883418 727470685 319715595 873094132 329553447 379657971 978720912 756739710 650865399 370448391 359219205 733751825 255991880 739408543 443386366 701356717 696562581 913050251 686644305 182777 708038263 452880311 809579441 189937953 557271559 555481876 712739765 982871885 988984078 946694464 185136738 737960829 104967789 111211826 611095691 572110359 744979048 353961184 411090349 576461454 474661572 83084453 909869983 942458344 108676070 121423482 6854346 443441251 275942852 259220883 161670121 972702266 883856831 20852643 2945419 113494169 527532535 183981834 40295621 462188268 387483070 914393771 271134431 299525147 340436443 488103557 164025915 350242580 514299095 174075428 754116267 40327720 664372004 308441171 306804627 399795170 706199719 101409219 472775436 996509634 339630343 796570356 853873692 854917918 892186300 979264013 676176003 264711096 727804449 802903047 739330307 747414641 200340475 447876508 910491181 334874214 102131127 596433769 527018978 685924361 551103952 57790326 613560316 513290433 788438628 436550063 153404099 519476692 485626327 619116505 801827685 766140555 441994244 760664455 891602462 77314071 447009550 778408138 508139161 514594629 696160047 727975084 542701022 677403565 41962642 952057879 374547046 413378718 741001287 439925570 324260969 713577345 189167896 547990056 57682620 776673355 42037941 245408979 864383097 993400858 869154149 400864475 990574578 955489279 77977299 161631546 823383243 241632947 539753739 593467701 843940799 935926058 101890322 682282697 303985381 222383810 775202570 121593098 833759519 341365922 480980320 183364722 785622470 198019464 985254 904538200 745980962 995878777 741271324 993041182 708593295 749743091 225590759 368785243 245176548 432325407 492965531 659194974 993490254 383725432 90986553 932300595 908748920 251092538 350512267 994754203 340702763 215949233 859127585 865252260 187115968 671450872 62667120 684800273 107741262 994538178 716106817 62457606 676425942 288726814 975047542 447300587 583143200 577179258 15521555 493408108 715574699 965959663 375740651 190818052 890664338 809993220 629962145 914197562 353801493 667081607 146552640 565818370 884677360 586653310 211414174 420720780 118134283 153321261 271105120 861972401 17601850 223049504 448234950 975658506 94991838 556606112 210914214 838890348 417798526 445389702 715170522 368215497 855018538 790313024 878700198 171738001 161058479 641552401 989360966 903636328 333102981 931896792 309530859 155772978 740445980 405591412 440023435 754761584 222263098 794569524 190109751 32604735 346136669 1507216 974412922 431561132 641316998 7361769 120713981 267616487 847752752 92382614 610389998 407033069 14741465 310431694 709916060 318219148 134286542 638480581 117148715 430574637 229711415 926261680 327867776 289651699 774301139 658117934 393262697 450573126 291999313 371484742 887086242 655150340 636961940 135519773 875259042 888973217 133929262 931707992 801960979 466617853 821770264 432866934 366725555 437194942 889967953 643106704 54762393 405005614 28945391 327538721 951526765 704275533 519029040 129321038 900512149 467166491 421077802 150065477 188089896 844200984 469495442 614024969 648714682 599576046 182161380 81935236 90318803 3788029 861121148 975951398 203529083 843575913 273378291 234242012 877785845 539033149 225980374 308777079 767022890 580579277 279469072 932873167 677858894 140327061 523842898 337106870 3790265 887059647 447238151 854093630 660555035 804349880 710889127 398032651 814667597 731149525 902452710 104276260 568924213 753070060 799827319 351020377 112451426 998071351 404320997 624430769 974284581 361860353 445759714 381482267 880118751 800285242 901936936 841690405 296856844 264123800 964576061 979033181 876023335 695561892 219643504 229695933 415367244 44180418 120707368 130341282 848295355 539388092 922638834 634991620 832115821 560086833 924734516 626063197 448068725 856833252 604014772 92805413 104635681 486338455 210069944 977693186 206478715 976189644 950191553 475682636 340393127 579129047 347992526 119943548 81307056 512660467 165380574 451208022 929692815 481927255 491926737 238736021 436028493 288984599 897295873 110883210 127338789 332676365 364038925 123785581 463147594 819015223 262207107 365312374 499777325 883653306 602146439 657091660 995702101 706512046 639479385 531979892 356496105 719680649 136932537 929677439 754028635 116049945 345483750 411570185 524582259 112746498 537326591 700277416 811079027 813242169 878863337 49963000 796215467 900756875 450380142 483026050 828578827 216201171 369602742 422140847 532020022 297454969 98502359 157951107 79673345 125108152 409941312 508579256 828444609 381548312 410431506 731229869 701713728 71941024 396469415 186729878 671495456 253741102 752570859 884591697 284843421 297550165 922237390 808196065 251771829 277813645 281655190 551094806 17627687 325588960 234290516 775865763 369231221 680198924 252987602 679763152 398451652 418379802 854911869 360175603 544859680 859558672 888540663 208947531 231039239 432612717 477457061 661425097 592437854 500778065 706102454 714411075 992544763 437755568 206898968 805550427 370219449 980155321 645502986 944476244 598865785 417450251 348496935 324706845 179345174 91797454 907447977 571893891 811162761 751249657 405066456 269373283 495598320 874778129 255336813 878375478 880191267 37639130 978330660 754860045 568357197 86452426 139152652 329098187 805581570 561684523 713710325 142994402 87619068 907459401 519938648 952870040 282247530 842179647 143826947 38375552 659224540 318131157 111332035 248218068 660380095 651041707 918290772 849954156 388897104 903962867 846454096 522970579 321613833 777356621 511815482 72676893 412276736 626387270 893717163 69881568 681906330 686879013 799738710 739681968 724195603 933228812 667583473 920536401 927204128 43700721 478002533 310749807 277144555 737514759 176889637 489272736 214466207 586150789 313945360 297342778 89570819 744764951 100768594 323858575 921754524 491779700 704604194 392212856 980123589 348652021 372022427 836104132 828199852 346586067 306007657 879356618 710546761 29546380 471703812 160666860 619255747 586537707 596844873 676788232 597850063 870648841 45191524 278589720 550380768 621578278 804818751 90481893 964333624 15946584 687022466 286298735 969584608 266082746 354983857 283090644 303824284 704276279 559120966 681908456 635081099 264894828 673519791 265236796 120632398 3110793 653759308 155832202 687484817 384601103 848006617 406585260 47612921 57281448 189502741 944139692 381837012 852125722 324842352 304418138 902464262 504379586 18527815 998942797 717930235 314878664 705834340 71418356 536792543 335843284 473518001 479131261 740849098 931457123 510304259 303290255 516781686 826688103 128677058 718037123 904347194 391059059 446335857 662133392 677560256 437363393 592176988 460015157 271052893 391662759 160491031 658782634 320579543 162409158 838977487 999926971 888830105 196082039 506490516 955330082 668959579 888824831 195358444 986001256 567716226 530360784 256184178 293792261 927773060 5533591 958336563 358584008 354456340 363688043 590314619 810276392 292946987 64974980 109150893 82577123 145196919 189974892 651295774 566208926 160598992 14540704 21157004 3736737 487619159 933909712 776128161 275163230 420196244 24285380 990072231 721705784 959436040 435016977 320702718 491539041 793909346 447162446 462020648 377603024 430772390 346624798 694136942 468741527 153080333 196400302 61212165 732999086 668795754 478468273 775124413 46920484 18151859 564231159 632594026 421538848 726609697 990991575 511019326 605365712 705728170 650317505 548483722 266758266 745276936 451523311 530358987 622562659 289216231 573806535 436152767 148561608 63595130 457729616 180442490 792162453 470691478 206700282 545769067 96862512 334508095 201618787 592535362 359575888 591152684 33879038 915984931 704179624 404469055 352957398 871748490 128955222 335398840 430563096 129047997 533423554 344509934 111038183 204819150 473686293 822738754 616453060 738947172 310264043 808727304 153543819 533097516 401288616 191755918 563424829 860090572 546082783 771591799 957493380 282288549 192988493 816435047 291364273 284291852 197559866 333001821 774571015 71365062 908212999 64976918 145189012 781291132 195639238 208233126 331484076 237530604 426212385 234149245 490533148 410503277 155954369 778568995 835359782 703828983 974012639 250225860 706585120 382215559 928777205 681701106 575418348 194285550 232580634 94388642 651757598 796247407 437276324 570787331 169634976 447602359 121544722 480929528 744718628 444327893 493713653 110148814 567335492 69654698 340952974 109161102 431872558 430983900 920561674 290716831 533628075 366447700 242266599 195294905 976556318 636163450 391434100 156112682 723568574 848710032 666577708 747733747 251154049 651359969 329863967 374344839 820517806 135122636 70583324 713194330 353162811 218900327 586142958 695828699 836251851 839742750 485732441 942568283 358264227 215216125 786239653 254453108 688753435 694593052 731593477 937725478 395174156 373943511 184129071 715335795 860541625 538741244 551966170 862722620 605295211 743814284 309954464 113334250 156074153 298382259 500926658 833926379 161952928 763703855 762260737 645140751 670841027 803510153 797188861 563126819 902015096 137650879 784217775 946592819 284684694 696375286 145928412 250790744 670495948 822446364 43392390 647176861 219039306 207135067 6293453 605539588 588846591 766145449 437973760 726865166 173490407 68980678 709468705 820388219 880216043 365637848 555596706 886101617 112714067 182442733 623044418 855712714 168985613 760982301 450642833 178794728 292053270 964160546 828752514 554726415 70859606 4693355 536361795 826797655 470435625 37679799 225094129 128492027 613694593 516442941 210256087 588356326 645398334 609380167 561760435 569579949 94321724 131632734 813201137 756599428 289200747 904103543 669781059 688878143 527456580 130216922 602263582 631886956 489814176 89966210 537649680 360413407 759240420 343120925 604584917 563435321 418198602 734783543 422965178 3044403 451970009 288596566 340136642 652260618 414048607 141528632 680962009 754771293 685367061 779779781 141819733 614231714 116613481 454055050 405010413 333484361 43690510 637167903 137809294 127154176 380889537 412625226 212809634 527815173 440130972 937557726 168909240 41118870 669105778 38970740 66970899 691955563 808670013 257439673 606982615 68758731 211309127 407646463 406586310 34094976 74794414 363385168 824860917 324240664 888184740 577543749 679369311 939126681 487695325 358257006 25950087 878234066 167272936 573542443 177346140 390908963 828263077 89495336 531873142 804991835 628173422 80450423 780531120 413577207 426671865 955055864 979653270 672895406 849011942 396125545 962309392 896107930 156963877 758162492 412797436 523072077 255129722 872062858 180606233 910660593 747416536 175944528 162498124 92000327 737084206 164137610 831577913 244798707 779479479 441512795 313949574 7172995 761961969 82857868 539482727 735678506 979618881 589189860 40303400 917001705 138106851 361301563 660294008 78083093 81998083 658603892 694116840 78228785 193493027 334792632 579113776 278931409 476642964 275273444 198580666 56805104 11626615 427444399 168722435 552567161 101597179 853064220 89127915 493654641 452168920 482552833 104278006 454523423 72567338 315651156 536787589 647393182 617656243 19463555 752677669 194776820 143976208 354310935 416541658 719857855 883189818 684619628 634551235 355630501 191169994 235959823 522063443 836598492 832492410 52085246 161868622 44200072 763693170 140075401 102633470 127875103 804578182 947605843 257753244 619109286 703316448 286458988 520448796 290208455 178119611 739112476 478794247 129265656 405690676 250680841 177697858 375501296 899552059 792671087 975982198 683021567 708637818 997264012 351966045 431860569 811903646 125577114 394875096 829535322 993919135 716279497 667668200 538409787 453065026 902302937 633999679 504498278 849308940 178572384 645306691 178495655 384782626 530268530 904691382 393949772 31055338 482978378 763663438 230494243 890811034 661236344 528932757 164642300 520149690 308373215 340060422 374769967 783744891 665350669 506598271 879421993 202655206 431401409 456168391 855997907 471537039 19874234 479650295 649324879 420814662 402223061 601567636 175041629 837785137 425682743 11765088 912394498 811651336 493928487 195752023 414227954 811206907 854475712 456854869 256432012 42137546 252783737 714843938 393174145 205055830 869870949 830589261 127648120 384610412 473579538 954488698 31498945 395425093 682414852 326501952 740455255 476183926 787730326 365965044 340251166 306402592 378334678 592033093 777882210 662745555 393701390 728793108 663984294 962652625 916060283 997363049 592844843 573436859 959960659 366352865 250187605 840998890 587853663 951629963 283132533 266514194 87175072 470837809 128200900 525211386 754897135 348547411 22568102 650429636 996061039 20857176 260625308 479303609 505084635 281625744 984786520 628718285 870890845 94362909 866687644 963367088 706685963 891444186 887762716 59898339 569160404 858319032 511402883 764348039 956404735 275708523 968108194 219894621 60218335 869956241 490169706 604106999 701794623 855315279 765534159 100597074 476350112 309173426 710773665 62663745 532002880 754368949 866440199 976123887 77756361 979712800 330371029 470982382 399660245 523547240 825569284 387674186 141094043 457848986 532592885 716374569 946112640 721717989 412533392 203431144 285965882 296574845 963595321 533033097 905402616 625318484 934127037 495782442 957295494 302247342 427147382 675170553 486690428 644687888 265761236 507173076 7395967 672477423 430815814 315932114 588753095 185145936 457235200 913822018 978578604 107392112 352201627 517851844 89562293 976603436 795046203 356584199 431281224 888857891 678489645 355724787 961288725 449692491 969797386 326703309 697202052 960197802 830155849 964500508 668172966 154593637 326370977 287124404 572107373 701886670 604214414 420858977 85717390 730455896 74531565 243256340 533269316 430036109 118959897 400600174 135624451 822662071 443724363 508185488 536989419 646507221 814493547 331878492 695517603 659224225 160820834 668335330 476976066 818473700 251911061 449079035 11711291 163267111 258440680 618926397 882767903 643216530 44631499 954424361 445898064 141136575 726937439 689009850 685035631 716927133 331266018 421119069 71281618 941014483 338667189 535919147 234356880 16955051 538828708 319404961 703437945 260379520 49475519 613599629 97245699 818327480 114711174 751519294 692015949 315449479 523904106 806096155 302103572 345090686 441953346 966578104 471018312 731587589 215158271 573430952 167639559 664491539 577782372 704560376 768942740 782186545 391593303 684025460 6051237 501551039 547121928 121869750 237259166 256288908 621459531 272840853 50036413 948092543 163040810 119541301 747418949 203452427 988391919 149454822 843748894 261019830 642256368 536637123 475318330 8995792 95914134 485716126 594422991 956790670 795556170 11527027 566456169 865149691 492260191 843260373 158106968 273982272 101733000 79768967 510698635 884244691 18106405 882926455 877346103 3040915 733893051 358272681 311372770 70886285 310627859 982016898 860230408 169550412 115914645 124535365 505327627 777835805 4734887 43695786 282718513 179738161 988777296 831063032 140735288 700841694 296799712 66069527 486708299 809512929 20692884 693249772 159041285 360054879 563087762 659953631 988644531 312361353 542341614 199580389 841650024 31798869 272067419 163788827 300838555 834570424 355919678 963305127 174788264 230431792 673623461 841546411 143281787 880101043 496270219 142291656 908595401 177862893 311409241 695098349 336872174 471916333 60135914 29783655 744249529 334221691 301890950 50130621 51162011 246176676 959403306 184927229 214906557 588639620 829110273 681898372 975597496 706761202 709149853 881948714 109676293 728721579 402545148 187895017 755308408 680220229 967816836 628025322 884645875 320158020 336432310 841027651 636245325 754873605 559787402 66426878 321194836 15303493 664292460 847171365 417374073 791237505 896820258 165310920 961631031 297704538 296697347 569941626 716302592 175610943 64060961 397507725 464504667 636899264 663925287 681788339 870892127 174094875 721636723 751757227 862635593 855231512 761650591 760232371 970542687 653777908 168688564 387144039 335505321 156876487 706643618 946347783 30203848 136605364 887190527 682598855 137154008 978098608 651215691 906427747 108724196 624397201 370076153 665052525 577318915 274777981 209622366 572769744 766459714 229564647 833260098 921071203 494606431 197033360 937361908 343887390 90725359 219289969 290880591 497604600 636231361 373167163 114005486 507819339 376567077 992062396 97436966 892360826 727667143 241249882 5928143 611791103 820999031 307576918 195315321 665538732 749034515 470757913 390540313 568484160 484941366 248855889 573547619 667316128 765012955 495274654 548718700 174472794 565063797 975604345 19893720 889273786 711792798 116546311 960631509 999955364 269226569 213765859 176014273 605083622 909675808 796903999 711497847 216809390 705212585 842218770 576246724 346498626 593163381 528019684 805247921 102274617 127775301 807360907 693286519 691940288 520054921 298865253 703323737 55432816 785566097 545563431 210962793 704369309 311632765 4100190 361612739 320498518 4256999 968994881 927276378 14012372 242150797 385842515 10054986 193698133 596852470 811176242 918805547 597076610 918559696 14987105 639681710 51026234 923371416 928189872 23208797 642787762 842916717 470935341 718860151 45944922 59780509 14590031 280646126 678699591 278187559 682052060 87570666 562793551 154519644 100059635 494117302 173738941 950712856 777377119 550507136 185383166 99882426 846445119 924212032 627898164 892892887 959801234 868140103 558649142 673701200 220384335 442547617 792651640 730808434 725689824 918238471 275831474 373088751 58826879 147937923 146976524 40546008 301144930 460796373 679613409 80100380 170632002 712084718 725625195 954669342 342818710 316080775 411469661 759206532 717692157 321661563 757803176 686375683 912487802 874477392 325596877 913649491 620867811 629559505 958001080 958843212 797846605 377102554 641380412 540645893 15462581 213891466 162365388 662244996 88161861 391002775 381391908 62420484 473997132 114310088 101308425 902032434 448349537 160270572 883765133 870949729 839520657 674991458 785191003 2596855 718326701 535331207 267277779 319931720 60922789 639778249 714302268 697028662 447076103 19305520 235887707 144694838 182467902 471605241 770035964 235776956 30971351 314948272 587310446 813201629 206868958 118549149 254474457 195667780 742663733 293741014 529396864 664138116 301541763 939779424 268834798 233989344 139944876 333390968 430979759 543386841 399475177 64427382 689136334 383903837 162180426 771081472 394248159 757559090 247228716 222694781 687098449 765817551 277502893 323925528 970830606 583355848 754092927 654921245 680970370 152762241 116496386 837652932 643016525 168198885 313383357 767219305 520496633 966391281 179813351 439117832 366220353 54350086 377686478 947949367 3213052 494872611 912880032 571771817 164537543 937994651 177201200 351178762 542790426 478020147 414320092 479215572 624502410 728106055 147821397 987014467 587952036 608280350 424915122 887885297 987396905 977733655 130598712 956233301 789787309 794875624 838539374 622412038 717012772 319689115 758805091 33062631 485631861 897049648 326249916 682918519 66959417 994923967 770310951 947834867 323620376 159135513 307952195 267260250 700060470 909312239 981602782 338574529 783272445 815053156 917902904 318376921 658573807 964052412 588953926 327347175 763336909 137535825 565601952 743501449 769742779 493039443 101322085 123409184 380333616 979958461 905420134 572973158 122413737 862801087 657638984 773686289 440765960 702381427 278708994 182183434 896768052 216103908 343023435 761727413 534251887 250154671 887073141 166274720 524184981 164057742 889037076 939570415 290817461 632393288 347256716 48786715 444849690 421430874 771213128 223241016 145302389 593691618 823246001 832621379 579141684 484031329 447306047 203121054 68648502 217384175 309097917 373949022 485618716 675316982 844422291 512693841 663991806 238957120 589042931 949470685 7191260 576791295 841709473 607464031 483427566 118242988 335347491 762063204 528181383 3051189 503790614 462658860 631095192 875776787 834613794 91867126 327287763 534750786 464422976 830485166 78500937 933395053 977254442 675387049 246511588 548259560 376233159 114167854 935969696 948672107 785571610 336472228 6678038 572450972 865861695 544300294 404890260 379416202 575957884 552175668 948833632 626236923 124069097 217757786 857900147 112221946 327645009 666542841 442386257 107331965 880017003 72598576 307939503 321127450 598508661 302949529 17737884 882629926 620058199 988016232 69215030 271808057 213487534 384257340 130015513 138931362 225730399 438388992 737110948 730004554 713609151 651484879 806799231 39760050 866528368 252768685 816123800 348722588 617192920 614125088 744698160 626703021 19624754 710437861 216997350 512828029 86296184 310082958 851618139 326604743 756977496 384310252 188916594 307044623 759520300 544723256 590861614 913648601 343314077 955142579 302460152 426947073 880574172 312351736 505557509 423781041 625690853 145754616 684363304 155833588 331943110 832732345 949258762 827425547 848519752 870546280 352613357 92114291 315210618 192338969 327741386 384241360 549073579 163352455 989883375 79700922 633765338 64819279 644445487 368473868 631238555 313360474 197135188 998034436 538408748 20007757 872228527 200721524 661436872 435483974 683635446 639315251 924807440 817981110 27499235 264939674 29292136 63989189 288747438 269257075 359216496 899695781 895605526 82142721 713055227 60440720 979330135 430830936 36319089 792532080 263097018 116892969 582934145 800022643 595623711 280466299 373742727 861933633 599089503 47432103 279562969 570558150 939885564 620220295 333046679 807628396 742954499 851280100 258176940 253411511 16992447 174378167 466410792 891539174 358838079 555305869 119880698 883701391 702950968 397704183 18412846 924894618 569944168 463439593 955536473 313375516 690056211 920212902 953603199 889132046 22949884 717816644 880495340 574322517 763734065 525030183 269516946 468331800 599358019 714216190 338226954 902540285 510098651 632231528 630874158 523520557 412918614 362670618 412804717 790003261 505992553 640235046 918755147 567620844 617621583 246720667 403416129 609508019 592661981 602616216 798975070 518474455 198887822 606476500 891626938 733094657 498501406 842166920 576223026 358819196 837165501 798700649 596517978 751448314 709075869 647101198 405366405 415936222 304734089 77097000 153561847 800748304 617846849 925549167 778192063 148493295 362383638 520416800 99061892 901545488 416693813 137753411 476558896 46901796 62822751 26466828 752201011 756200785 154160446 633801679 903216740 65404913 918408334 861505004 876445916 408798148 807797024 850462016 529433786 456369877 856766719 276063390 97102376 988863221 542702219 722181004 164962278 639117732 53743855 548940144 11851371 641682126 865133839 372265402 91222767 825481236 411185076 138033216 253461513 511572660 113893264 753192149 858010351 973111771 592556950 79875571 856728012 454006193 876870277 203801492 682286223 987447075 691710889 920455835 276357353 553970638 981931343 686955786 153226446 788892229 998748966 212202902 787618104 709682948 290354850 641206132 540513123 500437100 766148327 154163580 113760466 700903201 33929142 690692568 708890604 557107251 131275672 319837265 367452924 988908200 439585002 830229127 886106209 637505804 791749917 368688708 560050991 621959113 676992848 229588625 216923692 930078176 282870580 92595932 49392237 367544277 207386129 269759215 54083247 2154262 77686398 523275756 744696207 913773504 331602220 750502285 996693220 434307147 170357835 13496801 7718665 697714432 464444053 191935514 977208158 27888970 910503042 178701848 465486394 40857221 809186847 733319178 49489054 422695202 32684433 176169625 689560328 19115468 465817238 622904454 516053061 674719816 773410872 394993690 71158818 439258981 380582796 807204112 265505245 416536151 870003931 757154958 874994201 626612183 598719394 450667019 985778107 693651987 133918933 525039463 662916313 365066758 80193761 417588161 809103938 895086144 997809895 440182247 206573299 492686357 312995247 885197095 856410785 754970105 653903307 584837128 415064591 55256734 986863663 480507069 87932442 362709732 739208970 488588988 832286989 681993982 550359731 141839557 464791328 439450292 193382189 673278057 814340746 640769795 248072293 78890456 691695181 49892532 967213304 758297817 85257430 202341074 945828156 160998886 89398543 347283199 567224260 870856399 342959699 429041835 441538352 61872204 798321604 760866549 55056727 127448754 739699106 870370692 908676165 723744183 716935016 160792172 136081120 931693885 583091629 181196604 101682435 627953884 836738172 527676319 289304085 413516198 125891663 998409425 647295674 897392141 542435130 820141601 445353395 298470604 605644680 481081732 796225328 170326855 165665454 122115123 884611198 840390175 380849009 472621468 790919676 223158718 24542257 245464251 776990916 964983268 3629862 704750157 661244934 195473646 748232910 594678161 713373901 571565650 248500089 163168896 775583686 658628468 993952985 97962846 980511827 835593431 970134726 994379127 77391650 31627293 991942293 651438360 746693481 837518465 256268304 374642575 661238565 713752292 674473328 51186884 574555408 209242660 703315115 367243395 352415953 818051830 307858393 626772271 932732389 865461851 476381583 432337244 960335982 8909721 463085164 330898575 487591701 252272776 119776799 350468425 662088942 926261752 418884362 10202295 434907748 84437632 414934078 932439922 623986162 548206189 598722879 621485790 23641980 971554363 874699202 970189033 426771614 612301471 945714684 364398282 219118741 772014920 582249348 396177692 549117086 681571685 460570927 176850053 671051317 687128624 605885274 515484051 489015941 582075344 677251549 271674472 715504771 792559099 370718725 930751501 556350125 439892434 393756713 75996229 965095762 874766181 327738185 785173971 348078097 764186994 846387872 757586211 813465162 300262575 698155877 845186982 212834794 564667487 617812110 417555037 907283414 993415166 822508640 566268380 988453692 205597860 137604442 6363611 273505426 967887633 464084323 870177826 436925399 105245497 775620314 795406291 17413333 429531945 959741484 599678299 700441736 135889110 765892032 128517790 588461397 244354557 237467454 126143352 100049818 468786216 553299829 169940978 595681352 535115422 233920996 663591608 121947626 111700838 676768271 484188904 418377640 954693278 232835667 35370181 46169973 219873501 351905895 943233648 172624569 36940578 564561498 388340440 792589715 648083260 123785569 685434672 412438573 953239933 934758506 710236701 421483221 346279259 599797567 984334495 537234280 96970838 42913994 125996689 587015436 811772304 30571831 24048208 896311793 161872089 813789920 576692043 672070778 568041313 645525209 733743213 264137902 815499662 55913391 751809702 580798908 883542897 885303339 791502775 901366777 646931670 87285130 616742119 666222417 668475277 340806803 749637607 482332433 124877357 633564019 180520043 60196790 379803059 206829542 24443435 797702303 78670031 927862445 124290613 854061899 990511269 18949524 519460787 446698433 798739219 539074511 294833948 711110598 101253586 962599724 822111636 849923326 290854016 421627066 475832304 291104085 290155952 676258475 25383764 737020228 72515856 98552895 907925432 653508074 276735767 125026417 480605592 472588924 846278337 465539590 407671996 677200085 803120766 806025052 305493650 125244823 445501477 757284682 80356288 93585513 421281316 336948090 276638610 335873925 90414055 858791241 462925653 35209954 426491172 207859601 237351949 120013258 375354638 209640907 279298180 905717626 423185004 226175351 507562172 461173020 503058266 685928888 600396211 165358330 474186053 688663979 950382864 658396823 176561018 285810927 960293562 358452213 241661703 327266340 600917234 893314143 457081312 148444426 302661627 722824403 127088941 846453893 171602716 578889762 675245385 240505885 471584368 226169556 704545003 161883048 236895106 185436427 276991446 506176399 910829985 85551544 871905868 15608017 995089763 95482262 815956734 973729592 437511968 498587743 145006999 932531281 212256655 796605964 780768428 330636372 571065054 99059534 315596219 436302798 550712695 652358645 852023906 625493707 6147607 201232428 687752622 636336565 254698916 267173086 354862721 690072769 561634161 291507806 406310198 822623465 346661378 45731084 280769628 976397985 22363470 782594659 834896388 911696126 109637548 189695307 950756550 635315202 957112857 540754951 222061004 260324879 864950275 156600335 993837189 589770792 359521496 904040568 370154565 588435503 904490668 26924768 221185289 591442712 485258208 54729561 795051986 396550553 993716497 947819855 209514659 514625704 502723848 373539382 357792729 691892497 479236280 270048672 531126672 53078968 414228228 740099237 192690569 324149308 307966159 247715759 798590016 570978230 294531217 880204500 410287417 30096377 157754907 11706529 334010281 415222254 167195940 667601556 929966308 352683300 24896148 875599466 39557122 543412257 802489739 462758731 230029017 432032646 493907894 232792471 914555902 66793970 640445585 989595301 784633290 33793151 145897099 813617110 296674509 937802885 736680851 116968153 655103570 87814201 103789038 846186566 973381098 461772250 202687632 241964286 525477109 121305203 430505046 592267831 727555663 169326422 218448158 661073498 951192054 544617548 474713932 266821936 70764527 325066966 788191989 701740856 421869562 523543379 78747341 782858222 820118510 548003700 745477975 803630060 791659102 382650456 306828547 103872383 422003351 158565181 631597848 758978630 801411291 953124353 455720899 51113214 957623129 877394093 276753164 989660947 214689715 809553436 583483967 842836064 355456841 669325285 748000870 703508762 259516543 486297635 143125420 699948892 489716424 42503809 362440206 118244020 308235864 928002299 735367778 730788520 410195499 742135922 620886273 699960980 370298845 186595190 117798584 209248609 28419612 477006518 234629143 348172669 633752922 274484370 675145904 401812782 362956213 988476020 274809393 130776588 795317755 272819734 903606333 291990338 460294632 862588688 331593453 307367493 744076828 309337098 439951852 303949002 236319473 890701673 37341777 386062223 661931937 980635180 401764460 253753904 602515047 641843367 431575856 367766317 298640340 70822111 16653682 423632680 77292995 175709846 428076319 78996289 921021100 302494792 125577775 107919106 495463836 587123798 102664933 75630684 179936556 489954606 664367321 732322395 278981751 713502515 241275948 692154514 398958551 192286800 846098190 946738115 855035089 171381907 789364121 83987849 701750342 70691659 390519934 409704669 98881854 983564367 870654201 882492349 248380037 773034503 288064756 537990584 491213325 445152707 162479710 46034006 535394553 634516040 758038590 214250140 743608394 101489476 58049133 856741114 921072838 282290348 75743663 452610421 835880417 743708777 999377149 633996539 726874398 462463202 982218348 606179568 285985189 919793159 410318143 286570955 92289122 90738600 165087406 599148507 819317977 832176776 688453573 696427942 322949731 550492852 693368998 778995033 834163363 110140706 854241439 194524129 178887714 547973186 919650058 671932716 310888890 223931246 248976945 129544146 350337106 355022829 607516953 238834202 541878184 623875206 837494334 634410459 827290775 120776742 141659312 746088479 498514752 689838578 145745752 908707621 948423701 264781460 311025418 879978045 273954609 77769450 678737393 722213565 202728355 823028629 333740267 227742862 136361989 166630710 638541827 959505689 346875483 627161948 769866246 759729249 38023709 530159031 8550180 236824847 886228744 553257064 979234496 422740480 868275262 420393384 159432691 76366175 375363664 633948875 809735950 508089655 8319165 316737698 716038750 688964138 766244727 433447175 546648860 656426346 579482753 120991194 243135382 633292209 520892637 53335015 911162247 386024437 2651519 611423100 382967157 261511802 864126130 794706612 728444041 957455235 986457715 316077818 875680777 427923691 873199712 764082847 80813157 938939165 190428039 589103909 162496694 795849500 651596960 19173694 870021473 595604196 111228316 238136259 160286277 331477179 325767678 340389854 881260813 832410553 234366540 719096893 885694286 490542629 620556246 538693087 163696210 437486147 184406108 851980621 380045168 190199642 261473177 646886435 450599041 995063119 500018558 384747609 529230514 16265555 537709539 689047565 800999567 959121241 860817886 4893705 837630311 2014963 56358757 410356485 994015857 940226306 620005650 119095414 409953221 835500524 962882099 402266328 431015157 457128728 570316090 447734762 834533229 370923153 103987324 684702436 169821449 424942525 200067202 160834805 61595426 682492507 604182273 236488365 760495600 389111228 702523469 430367785 669007333 844746383 654515469 479019002 314678827 840618583 509217113 444147430 890437905 578367804 930975785 645594756 115813613 854626510 115908187 102299270 915934609 36508413 110134782 351489001 644415012 713505430 344170710 491179975 872854408 576438282 869944287 712736528 439953970 492087733 181067139 629048476 572613914 520369942 272926751 785141830 413213307 178107428 212200836 12515078 470258677 520307864 154646911 943611493 490015278 769094750 772630824 33224037 916516368 974324126 433483613 304438619 708269224 86047451 632190819 89048425 944561836 485582314 633558109 159046730 889355228 234329003 107323693 531335285 922552350 17516922 636108047 506535771 267813844 104206695 511003649 112711658 355879789 83505118 828745622 104619279 145741893 726936006 382325436 824752516 262209262 395583154 556571785 730977436 766158893 541437767 601056862 918758954 230204064 207567437 901393527 544685564 893664330 147093849 164912226 131584660 510059223 851038412 357997403 479783584 726927667 43204268 735965371 661233985 879817669 306395980 455231386 750975181 822162955 962171330 629603053 967356209 651699583 330685254 643699589 889132385 13607430 512303340 592066906 394514424 42736720 220580175 760831470 488752909 370293171 745847923 440285158 836786765 528400799 343405962 79837255 37555927 862984197 98716903 241417472 384117035 839449991 717232147 686640111 332666231 553114093 482429682 495146581 83935100 596605667 553266250 551977439 380200238 298883598 924260442 131418935 876151217 91082689 548928510 905482906 561952690 412483841 377369420 911554613 454353792 736972019 962555423 980295149 860594711 817423932 79376987 973112254 944340819 365898792 260711939 824741205 838741721 130139238 48190713 816615465 990410403 820006281 864992392 608650436 907233609 425066681 317148902 918029633 679206001 3457086 144916382 83332400 905896368 865934762 986459238 594103493 294678657 943439912 447185528 112904591 606468695 499325185 797876108 973838832 387450330 302177591 681359300 661554342 575787623 375823742 507250695 404517796 156603259 180061919 723854852 197114815 554435586 536144718 272144622 890915581 532581818 576124849 201966161 780282317 334948985 497813665 394906791 79166675 425467160 750344491 629515754 86948306 466868446 265138815 417831437 844661410 636876622 925648422 348156721 971777388 48262640 459651247 184457289 904014122 233750360 733532353 3210666 752846369 644378301 630881023 701507774 900978065 844342451 479389266 125168814 306213434 936213946 199883199 907183310 922874647 2571831 101987649 506717670 896723497 432980310 587774332 16907372 929460754 654886861 140011199 962600898 125578700 931987272 310921399 333667135 972624287 997070036 79303147 927789914 986894617 66977892 577669428 446913040 607108157 844020003 560530454 393397189 564058128 517871987 21041882 116862941 604734568 508300955 836852158 824658720 316133444 963818592 659917332 108300704 644972378 249503001 698071385 357728159 369765433 560866960 254855328 426103638 889030867 688539262 858573675 240582094 916218033 761328078 110093718 393599550 2569553 735117194 591793425 810548598 908256420 698224292 321008011 123495122 981161938 189354212 167604425 429604798 960432890 896210578 659280097 777486726 220351660 282265286 173493170 150446439 500031814 449905821 938061978 396874425 525731157 315469208 246759100 872351106 115769199 446701258 952403888 904994986 498872485 445897175 306918180 330031036 903415926 581762058 69290332 262986606 596096399 500495225 555983534 445597518 893229415 233843012 537400587 845746575 145400907 986482022 275144258 895141594 949061164 105420607 335081930 834946682 809158128 798681246 791278827 796977428 747593131 216404113 332237194 529669410 718242482 277334526 420389157 412151378 974774714 165199232 859803986 745264192 721553411 893271420 815967390 147390622 527689619 9766192 510245908 34038293 348778168 174719524 794932894 828842935 635855359 864866454 341749505 46345776 362134087 333255469 842656282 184506622 859262516 459846074 415800743 926313367 125223645 728764088 967424779 68418846 748185760 57269364 749865424 533036838 629846664 313280662 32494901 301863439 469958787 272636370 142764926 291030194 168837958 567894444 814034432 988217547 194801967 11334461 663310564 982495202 931086663 465850737 923106249 726585140 318640501 623715308 651099487 374307437 256956279 968958619 623107856 787423021 530911615 470299840 616078690 30437202 240729415 150633219 15303433 664517602 986439429 174419030 114492807 482093811 771456163 217956004 248213866 376745901 307962728 660113332 489425458 677469004 475519897 335440858 443555232 455270299 113092174 957461119 586142592 94871508 626848939 885095739 328606408 965019399 51122324 986350114 942946292 589075534 296572215 507073551 48156407 251271285 845498748 868715541 264615322 480584323 684952536 437887012 956007433 618680635 610921725 579064907 491793712 751243623 707666664 999272830 743475808 776438085 166366765 698747202 964362213 816269944 156220038 252368686 675194571 792861596 361597186 744704339 449155763 883251160 500802376 361363950 375337552 977326402 75733143 807622130 202756982 452865370 539526943 564145412 968917534 645105545 927127528 181104324 647398342 850417419 247436154 839567367 388071227 63988659 69630640 757158893 769229481 85361729 734513326 501911823 133023616 645763609 125769803 398820745 465405623 61464876 777532528 568063174 504585989 521399112 856219055 686687963 604103675 380815082 792548914 149893723 705609279 333110911 522959797 298607032 102066895 965007941 596349836 630683612 717361695 592370807 423055537 60350448 162338857 415248775 943511588 390766354 508814446 644643841 178807298 615564688 698487187 775286801 825915122 693839980 634980531 917023467 982154606 166390263 232138358 961567896 77725167 913967684 379770303 206509478 558287761 303850791 105745039 16676584 691042605 835295098 272080323 715325094 90042548 748755493 633324785 95018772 492525507 945718410 752093410 402191115 913933939 435663338 987848176 469627550 959802976 708190186 455479044 29668434 563497261 736413117 504427539 564493231 968938214 93859117 657739037 314438847 344195624 212345082 909665836 773845900 517085393 425627424 789295966 426031765 920227979 881443335 768430086 529550598 547122492 847461720 859677364 50012723 548925554 876008726 811164901 537266963 10814528 754905541 680289529 267040956 262261531 824171322 120960301 265767102 985134699 951022002 46572499 173879981 677303661 299928659 527914074 817275365 503587102 80820315 587424140 898382107 933626984 193060777 572843751 589261174 828828058 391514879 39409228 918495870 268656946 359262580 614258175 528452864 448591132 766821223 345258342 894276102 427178622 576335969 212496812 346163840 272374291 539214978 285257403 993234249 324159870 927238186 901232625 578012197 843185674 782613831 173020886 500005122 953602886 361452500 559431123 170307177 399220632 838703555 369206364 995918215 166441692 29714927 913809876 429926883 615968071 61883541 205722370 120113125 688174683 452901794 508249026 708810878 75680884 775696226 309674093 968445873 851516241 370001623 355578875 951685787 750457667 486538013 143927098 532751380 117258659 837695905 532768622 793824043 927560381 206250323 886170127 507168629 120457042 651467835 181437083 806977995 118953295 62367948 274379486 822031746 660820175 487932953 274872034 353024062 174667711 594656701 178387673 475026968 858227420 153854593 82128425 575316756 534945727 875218714 630465387 624303584 681969215 550325549 61947734 251361611 82218462 824846597 430263246 280171148 372406306 583090231 408748210 289464387 838612495 961665590 659397606 592348200 772603921 201139531 617669033 490126418 649786142 461483254 396533278 12093137 230207945 440494882 185251518 676215841 364598374 275020840 122912529 933053670 719679549 209172316 296563460 120458238 195800512 333298208 397854614 700955873 313952955 756959280 640208337 365015994 191812748 158436477 956275592 212096252 281942790 724446833 22051785 157327335 980511996 997929227 124210189 850834874 292066418 972065964 286271592 981198381 742906231 80446751 357915854 50513042 390871139 180704202 828032171 838046 801392151 472665642 451566560 664020351 844974142 809936399 326423931 266226879 67460616 934580652 157910558 752635400 873062117 257344608 899632745 825846646 120959684 221561398 640707590 693328166 566728192 200631249 582621109 528565636 460989606 409838430 123393395 778515754 999003592 818871719 547280812 170779171 178686855 986768145 175116099 920081285 394939437 550045090 125383017 570604967 456586539 709987579 468256558 365027997 46091030 857555581 656058659 667980194 687606510 625091313 175690076 235969335 334217182 560574327 644047745 576112271 722196454 640143940 868445709 119710780 186687882 451615546 267515395 271093210 124577419 291114895 16677861 412543833 958759355 444737700 991609662 233705263 17314641 169616516 143665464 49863334 807727837 462635960 43364514 357527763 269552082 654663404 482232090 938043293 102016427 705869604 330207463 628532104 218107847 187990219 223436630 824517045 136531661 623416573 729384749 984593315 66935535 494877546 616342575 570333446 967180808 708271717 911366699 5899521 908053154 700385652 33191884 249489118 266948590 570079830 635805521 909667021 490320596 531637723 634537473 777919737 997826422 500744381 845299580 365341516 148222137 352507092 254012981 572278573 766223743 340728238 527432310 515338106 818206043 956348647 154797267 646337277 581281221 709098777 633262158 601504784 437574410 83412925 142028278 121996128 328470734 780499929 306484046 152625629 530074103 456220799 695539322 452690019 454368058 522880830 890991102 665287518 979349651 713948329 685858798 869695649 379002185 549983460 999761246 97289774 1200214 753741360 936883474 561686991 314890526 802182754 722171820 806801302 95805681 896911497 194291668 137999829 681043865 905864840 753023421 968889550 241071195 550092442 27849807 966552212 469001002 850382666 938834438 530580298 171292417 607645311 640364782 11556816 14874836 604561148 779516940 464378548 115241759 858236130 402059301 399708133 28552490 779553751 478691655 900911021 585311651 968649965 573399858 295267186 63622598 40692882 922338084 912834174 401598230 987035347 917864090 243920617 924939404 96270554 155704180 965722501 577321423 104221033 783743619 896505698 485296282 297328046 91020580 579723915 459142261 155841060 934132404 772753218 765639873 503232839 160964589 812934009 324364034 276864362 554263703 863250847 85571426 468282985 864216898 63776513 410026116 883087763 561665843 895839286 115858729 851920569 897495228 385076986 979018159 433983420 541518223 412231275 801435969 78844764 415808981 264118635 980448452 11243803 384222432 284352902 549108669 210580165 645189386 748702398 824812489 828034991 686536880 961379100 511500577 527431820 191331211 311099757 281472936 895658445 705290581 120135706 830529648 668768621 23492347 813990571 642758400 355767077 598877032 594965251 885348236 950497826 927815454 436564372 98351482 159713458 764876456 955494362 591579942 890347432 480137654 218842196 945708300 750378405 122905633 163625470 255011745 135870864 513966244 163634921 25070034 641159396 401348892 617538497 545449697 60696346 923881548 353450262 568205278 245507360 53036503 547779365 493335902 282847668 750595174 226253818 305141961 518602217 134494940 713386867 696497911 460726215 1153744 462023041 723247634 892043353 845335170 534802451 111916935 287811744 157181732 835325083 246913655 395765791 143153337 47740952 913143936 263927617 630550087 360492071 60174 356919242 636738684 991036760 92216591 201016829 794813207 444925458 457840422 163337264 258839206 888198524 107589623 317381569 939200460 462239089 141111732 679362748 210280483 349548238 616692 534593013 402016997 605006947 728878591 452368557 999265834 839489811 596970571 861513059 187171312 486159507 392322806 815308323 853046121 750538893 208326885 161966878 614593237 968421646 31218346 160491164 355504708 537956083 679226781 508425740 205852885 608876330 57722574 681987053 99829515 685518159 977166200 319598693 363868478 944555923 670547201 181607787 920816009 923751633 797474078 256478635 295512274 676233285 426763992 626298589 587761826 445583558 242291174 852490115 85622479 707698846 979481673 815091265 465534106 736265034 234291188 414020441 871183683 108850458 648389438 126933260 463332695 987950760 654194455 612991381 858850702 925264744 327668867 949703267 817172573 365472978 894191960 610143334 334669648 158987580 846275027 421027260 132348998 101566791 324393043 500316542 402355306 134717404 997665197 11243609 906668842 50650135 236718484 179246233 670394456 278831484 856347257 383974439 754286365 650817161 192390435 666665943 997926402 235372995 559088698 286349885 974640387 122375272 409121252 713679683 321781035 854484220 457141913 256329938 142722346 266405098 825144418 460333969 670497825 28139459 940979555 20093861 854665185 586387172 987356793 34576902 820669843 285261251 615659334 699384402 422366259 783200305 375865140 252469241 574971714 705341824 907550527 783401293 309950350 994145047 79610637 141274147 608356481 842174477 600511972 207354792 173378342 794141134 895843044 249042187 601976358 908262594 220974106 482066642 501396456 527519947 704487842 975317803 13557921 876113871 682503524 65144603 761359862 151404581 778378396 867238760 625224141 689165558 901974031 849003611 348590968 816674908 624369430 434439138 57246736 899538359 386315382 698295941 110908422 91438132 264436056 614228131 26583572 7883366 532531789 670445221 509151941 664753002 420449681 932679919 256993962 468752850 764078970 154227813 172878218 95095878 53953047 377472807 400351432 91825752 205594962 482291417 88659441 239453017 644600615 641678797 220282980 654538371 97134348 468443934 410422137 360619791 279003420 156991502 978921534 55173862 236225715 167305702 145038447 213210229 59020651 973942327 987953044 258882581 539730594 340550321 365737701 173536791 978844531 749244862 503821934 199673953 522322045 577948713 176231857 79604568 534154305 558290311 349338125 451931336 798388283 783729391 781312485 208044816 669975995 782320932 330838992 232210360 8509224 638708321 281022214 212869360 829149867 452381548 388160217 749327645 870079229 87596526 517445383 943971673 190815199 939374509 107463797 328690656 609969088 944860477 18182914 508174937 378447122 483045328 289683818 707502507 903325659 48591233 148740475 767961526 854682537 528562196 969310228 721693610 522788409 968517015 69693179 857931189 611851773 62330694 395177006 444796641 755471805 856652405 663014441 331350450 694931860 727844720 583206743 273269576 315142898 392273728 315459190 687444208 268173244 911404190 146454625 56387518 530349478 68696500 62255974 274296553 931367223 646301664 116614788 837742838 925094877 497476336 452515444 525897157 724499279 668015209 257609799 125792603 557516994 341204550 46291912 979491796 528716330 997701046 321467092 199004912 458981576 141944558 305763640 389805288 862451341 339623778 266536712 744348697 59878251 493295999 798916974 258666019 761005844 988812945 671444172 534107542 81032065 746533033 354670334 304339797 786747001 912758775 101889956 261129977 879344651 281797312 609592447 872944710 99368699 60007701 660996381 947141305 743904629 38624449 16131147 312339399 863089797 772410157 286087583 527466868 139590787 467562090 447363657 680549470 142981641 692008955 306579711 814329161 600498777 955498160 493351146 976246620 596524355 416699243 798742922 333007547 96295352 721500677 736889229 393383123 272967864 315480575 296426390 268148488 699722517 424764734 338178108 844579765 322565193 199791751 833667062 888375949 812898231 81417921 568104831 623591949 136094517 424682048 603866840 462010458 208279581 566541189 474758569 786537799 695538608 441846202 488701685 578889273 545541589 659825975 125496791 941140422 406885488 197191099 962963832 255280444 368628360 506221713 265956394 981070852 631364760 646359716 195611470 953807304 741486449 247687022 60228001 386431218 807190702 728644502 515221003 543701791 215224258 451063515 26791547 589358602 244541703 638983128 132285067 44982746 138224595 576336381 300291017 391031698 99861585 971176970 467397460 241248342 832703594 946082309 935788825 94820617 721372226 236094246 805711332 347919096 425158591 93638404 227024633 560767569 856366524 712883961 64248124 544727924 85000838 247789877 440632688 403917877 579961363 345440275 620513910 31160387 846276675 837828537 841155242 358556828 126429500 731664731 315138321 391343631 681977773 361159138 675690041 859114295 199242037 17661292 488003753 929886521 953320647 644384576 162320115 920934696 240769511 621217736 871873316 526727781 517368408 212449119 29496287 7915569 500089164 351181523 977075851 576967487 643001565 718305431 926719149 775757403 393436248 992935787 251361631 246834221 125235192 679026260 810133785 992161864 395278036 174932979 611530621 550175768 677223970 155132361 624891597 521643679 574989700 428239289 491201607 441830807 91784400 659678175 493822401 764878787 361736971 852178086 779277523 365043903 553858916 509829894 356155034 124811630 971697006 865059673 968446127 30733568 696937994 17572105 971565541 710774571 300535286 74389054 584327296 489183787 177414271 350362993 212448609 301712131 429885393 904213931 52213037 986966207 929085713 880884609 446427557 609953951 763496546 227213269 424729378 171973732 725892738 238638503 786961592 958780303 93876806 193896787 768060841 840010141 415252161 657292336 282091778 397866931 299569741 192774220 628245857 601788566 894103219 352503240 172691202 837004693 850875158 548262476 257689556 258894788 157803989 944676149 696043457 862896699 390234989 441920365 309790596 850113173 745259446 8357123 497694486 771834721 736487848 306898693 703989029 573992111 630921162 311868651 827156269 394660728 367175606 567690098 448338506 991548947 104261322 959769124 707872823 654021915 319284682 831408271 762041252 421144367 376518484 116010609 455915 387439064 793255540 747847717 755740552 361204243 349919628 54345358 569677392 159973490 823432075 317259263 993897788 396910695 780437553 394590879 357624050 191701416 755709410 388957729 52450791 584459963 266593511 565164864 674597903 258461458 609793487 738100846 388200084 172783529 35049455 704648921 336038936 386850654 332272438 941552734 172615484 561383528 589991157 247692335 139853528 611379489 7313523 942401427 413298838 994424460 231651995 959224603 713302875 821649040 497333063 443378106 105424537 218317950 137044976 216520574 758655418 107341903 427023636 290051420 146126433 365321985 906300442 828362426 688887305 770558075 269911154 201070789 390182864 508847290 916415651 702235641 845661700 332002875 474593565 178484047 410857088 843662448 84368486 800810735 552073180 924844758 356811043 419271989 218500275 866407460 422212309 751700605 4541624 65806094 876192513 294391808 162660663 952541261 463637902 223410315 663573679 389390293 116622255 661902978 820605974 697815982 56297917 432005357 506968841 737438462 968668934 700973415 80827632 134904605 35552150 870859298 153447932 160839341 996902771 72124612 818335711 235327452 572038857 731401157 68854412 425518438 171623677 307011172 592167978 805391810 737354471 71709 358769856 882470128 862796129 78866989 617310634 260369376 374392849 94744005 1210259 330248147 16977554 248405529 821502180 418076363 66284272 848578834 468093830 310333294 369341096 906811517 132352351 598587874 22323134 716366721 637444008 19220923 956748756 697322524 693352045 264998456 960901317 862302461 152956732 287503851 734445469 195703594 579405752 554471482 265376480 403739918 76285022 312031672 614859831 694192000 963091605 318579738 198243608 539015632 787146568 93987389 854461701 484809708 623523921 967915927 592163509 336877619 339275504 860880827 615975193 905501002 854861565 771563407 980895170 397302005 464205042 689383878 505465007 849383122 451228085 106169379 522205670 474213255 876007119 21417063 514042636 131355126 225345196 663688835 271361021 869798010 412495828 787163495 248043006 467152408 602858868 829408055 857601138 991142187 238442918 40159214 790644225 266438408 843643270 187228910 845607 560229256 354548278 231994630 53755560 657823002 983012071 961991550 717477438 890987688 91785588 629949216 203573393 979155413 233632872 756193528 600358913 683683835 585380918 77959393 741687712 379182359 580142257 259490166 83807954 669147798 988207238 561175653 452369683 778090019 898827815 53340816 219543186 536068398 769921067 268571126 235945339 881449107 31858618 895850366 279284077 794054301 866130161 361605177 800451215 704582649 641346239 303179993 554519510 472001225 256768482 454630839 516804000 548745342 320425115 297396083 372791150 274333250 152212191 667178921 191738248 860323971 9099941 435516373 357996320 410306710 158525549 733062772 966462077 641601662 737876736 323160297 252387309 499348154 673157433 302004992 730135635 674615056 980146792 493530891 360427434 8822151 708686266 139166222 931073960 555168186 613576349 269619741 552449333 967419094 343400930 93068100 52979883 605940916 411084352 747031880 846565882 321401255 502848503 390447723 437749779 269225481 312259263 115676702 68872668 630215355 483519044 589021976 54561643 254232212 218625814 347931848 852066333 50563390 589360003 748515186 205893924 403795400 982834992 670006361 831174850 317517331 705871672 766077560 582168040 542395661 196414665 341783505 2586215 912646421 790489102 392825933 423759658 546011693 201838931 96493895 880862877 222842766 842866699 148526813 734308088 88832178 967126712 596344088 351708014 447185339 141918421 467048625 925242523 372734043 397286828 25213504 540686539 163938147 150678693 467262215 145482737 470667377 504922036 998151439 911604540 962359399 68566929 647666762 168815289 659361458 787703367 151760291 350933824 823918155 360034887 72671227 340784542 550889980 406165391 796477594 824963346 381486321 892525864 391734649 457029171 553697857 941451371 464123426 201841127 405339177 377312302 481714652 618753627 623820950 362476357 160612617 994383402 783065455 931676310 125835407 196092641 998849348 490644719 786755462 125155236 253190166 476802378 750912073 700497169 626055850 632573399 917974942 97238876 247311830 387909118 330508365 300121537 983462920 882253541 705814936 694311380 889469629 60750244 344453585 575400520 95931043 443626612 59851429 207782006 107764434 574185193 487800426 629768301 134133304 490797709 387669052 435479439 804390714 567487729 478799579 42140032 488671311 70822479 329122335 694595182 654721146 173760913 111677518 989533874 218218893 548572361 856817474 25095368 167144467 211724679 65679982 112150232 820114752 321851054 345973386 492394575 414268227 957907619 576980559 532434949 721196134 864157047 939465628 509979906 781836628 717364736 526910324 284077954 102031396 583123635 951140557 275221335 221615922 386182127 783612366 995648519 634250737 401331754 734823935 997257855 664342545 441166435 258463539 77948765 795504190 423716223 50877170 788221414 83870072 886916890 289927664 534048118 362084043 976162991 530384573 117852798 839405713 170605056 927358598 21047024 118699171 608559960 307571821 319821511 642371489 378349235 827493314 342931334 357933881 26300055 112466717 300583361 368916287 885311310 920933757 894379826 146253685 195486207 109512838 321282429 1443893 249164520 414880757 574450994 893529374 639792581 659100205 937869576 171441582 3794376 992267384 960836828 375429062 415206978 323088767 90889070 794332430 634750237 679752978 505209597 529324947 173928016 294716593 942659563 875708154 731755611 724479375 786632961 233674768 832530388 464830464 523731291 570246625 74551301 156421655 544850772 410442580 528134606 849606252 11818957 469725403 814824172 603832955 459088648 842013928 842016458 620279305 726740730 210211602 692020324 810603743 339764923 574304096 589694964 788233691 932352069 881165157 980749077 272702616 384168477 294338492 248769984 143519571 128672402 331864202 738090731 385016593 400715105 426832358 505353822 401372801 718666088 60982190 480943128 364970690 673183327 16333810 214738695 185712923 261154411 994731281 834545918 233925501 341905766 850990706 561266790 453612144 717386473 86374099 416581331 310989361 377944773 813373921 816326814 317968683 988866421 309405901 656710262 119769022 835334382 51694123 542511668 331054936 131492693 571410482 555193121 572220610 404880369 886153102 698249665 900714439 344179702 919326223 862301831 404171158 491926394 223947850 652500341 774627423 282734541 331242172 218196689 636966655 263580369 294353861 985844230 911866597 549586788 704710839 931947685 141207633 253442566 269928959 340360396 330096115 537784424 773768792 328236709 296106581 656147884 488349642 618309468 320787418 291028780 995369055 403774154 163760335 224607396 181421258 595020143 665195770 849061160 565936133 151471999 997623020 374850489 361095513 707063743 502395457 123580136 810754391 746265818 800875673 455012000 600445828 845529681 979918078 579916758 972140437 206233543 154344203 102079288 98393396 119277642 513491908 316264185 593018074 553203714 353851693 170471408 607233482 877543854 389776056 238213385 969592284 688806898 412281052 988081194 192094275 53284685 206383889 614098919 109861843 220124094 25717116 917447443 455759883 628261842 78321156 978879134 198407214 270201342 544327652 356198280 940604557 622862470 98921930 276899086 275962703 60766616 651277805 100612770 770497384 226362211 105913618 181997378 309556789 992279299 262551185 554979875 106965460 832926068 322097919 468172121 106356967 81876675 872877263 726879421 638286844 471909556 377637159 262884018 24909599 994986513 479085375 580905285 48564721 28354855 535203948 2029048 237176081 794929134 782336505 601678876 578070167 620387523 490828956 308620537 159868273 788442713 942056095 861217050 882478091 212764066 510854404 883244631 767139487 328400106 443648245 84604145 765039715 868678433 323976803 733231500 350827234 61745099 848192860 947570093 593230512 403314987 391893383 732708760 696316950 485213765 199301860 820725642 829905838 941876967 250235271 649441308 939013683 621728868 516424062 304720979 757767562 339305110 981391387 90952740 545021888 236467673 587013571 368268985 922723779 443129485 231190597 467183995 783520799 879521809 834994537 654312866 599754467 990282451 725267664 968932789 479303667 339026413 953648460 290436133 480206357 277723168 46890226 708885288 942808960 327940052 944628496 624340200 815784155 929794998 298780662 514069407 431061182 484871392 835763234 64826583 171625989 563596009 202982939 801164050 148419132 207390105 446911766 511917890 499454995 601432764 751037719 361526030 989690144 466782250 693508140 213234400 1928858 200272515 940242874 332480192 598716250 88257706 652544621 833334330 54880653 638401040 555913498 329495360 245749436 626439194 249795725 94712799 235233415 618070927 648905122 803725566 723116063 154437505 131827890 486766748 544077617 649420120 524651083 746057387 553586538 821430553 493296729 980439493 135112070 220422506 763387600 131057192 227554204 583013641 10591920 486258333 88557582 363188746 358299353 497027669 472531860 659377046 120383305 251613298 285851508 777152839 422050702 745517205 842628218 425876895 814274522 510238939 653993565 334292209 855121028 383255713 13200820 489926056 699370980 337422314 416269105 347842018 659584174 812610305 838953739 142213488 781253409 71148794 577527041 166466152 49507487 297368555 716352821 579181887 77322044 270824458 291793298 843148800 841992011 537067174 968296342 325074368 92837573 739393722 88122732 781307121 791415421 388905048 884441826 582408347 2706002 745830297 808537489 962897349 359547601 668460328 707901475 638581437 334078193 451072127 497151638 860734529 925217474 268673048 731807432 248282722 332888123 1422285 588595307 870020750 670263610 168029212 802174908 417990965 87861805 674470976 772408753 473009399 675942620 272879237 394970770 457903080 338416700 805884071 665420523 246390563 769731991 198585612 361996112 87345851 353915016 458203504 491188144 625868027 407115695 624194278 969627087 198088054 147028152 506631928 594401934 503942561 499333639 526951951 636195061 91656663 83014171 448349984 488000981 506300032 935908074 640960443 501965603 737560570 953272944 429249067 141177110 71824472 215471755 920525683 503368758 125617788 37909802 415077592 930509148 131558265 79301162 187595649 288664762 719893277 854699485 304368041 1370390 405965438 143710015 611823435 514345556 284659672 749882315 71249956 54798810 550146412 434675620 584407076 185211006 327889584 645128843 597869207 352626819 133745978 392577411 493920608 211136307 361481115 284906147 494085058 577147310 726102446 250541510 957267047 628661819 28438391 554432359 589180047 586180810 804854281 917162952 765275263 187056650 544410261 303986963 907823714 685689857 86061014 981778998 248340518 864960571 542949085 234465772 589428148 673143734 958437267 171014906 718128090 277896763 59188057 861756160 529765176 750407515 149627517 165570930 754878208 105250594 611748208 961051917 323681337 831982409 640787095 793777678 700732689 144906984 64616147 729597596 960179030 285233264 477019776 940613828 699987146 701357548 56751616 822579219 366528289 300188228 729588585 214059146 876873962 890789967 165871581 538987592 823175826 623305052 982846963 776302880 989592573 899824598 237153057 166677826 440809203 459545302 475592124 175551202 984621678 665010610 835762399 545790152 832293429 447163662 747444427 966953946 625854343 468964492 199889920 264079741 517202971 361303347 848180612 745106371 64068654 314881769 35110169 995397486 442703177 627464306 607086266 492339940 446609336 877743697 786069053 521344178 313351442 367851442 886335201 450706836 191049287 197810704 560738565 679934261 194821319 151991991 57235642 94715722 191760441 801252022 104917247 783962663 965535538 922883054 658706758 562494737 954561202 359772362 333608688 791713598 442809271 592582512 21060518 509589818 836403457 349222320 281491819 156733557 880131121 653658318 20103190 73326720 704116997 534227545 144300678 478142362 981387491 359891744 612215978 726227970 222995202 665352232 399014890 797259344 475816667 678848567 763188958 757319594 132271332 88549546 212725786 106617214 615002659 274398996 226120210 744641255 28282433 104592370 788628312 911314320 346452522 456168090 746160675 558337873 530699578 33537190 792216324 424602075 534761721 582491713 3231480 732394942 358274460 47078008 876110456 536196246 541549693 276948596 605176271 600286105 173239863 776466691 745167947 641775500 642292002 931076293 104630050 873958417 263789291 701396311 624420470 764406372 929221876 528447033 491324360 779464448 650811879 461407564 982321177 898959819 732741099 915840680 97237161 734579517 423379072 353821642 262415292 929701497 509917838 802542905 129786293 502163314 913107347 187780893 176356089 432439448 350162336 263079172 464247397 246852333 376624170 239513219 801612143 294177680 297207182 434543809 666030357 760830652 937891443 339030831 120823472 960656309 121992149 308527491 898273594 680486287 584683342 663684257 437898877 507455403 448359405 86346385 798292509 378989325 155699911 176653777 871501867 264385123 661383947 827038959 686833689 701843368 491216877 41616646 243816198 78972519 644378988 764452319 758367364 953745149 39012892 232254413 390978849 335964292 742121515 124079856 670772060 905288138 651377101 310177592 441849794 618656417 828146017 316406737 125181942 257937039 994716029 654494721 649657048 818135146 145650810 565292599 477205028 841029594 648974741 833682824 468898323 763197023 361756870 433320095 879377346 930560536 199394777 183807807 709390602 952781584 289833325 642778228 434569707 956619982 89224607 187632276 30946100 788779560 998356644 359785894 680912316 590849721 936972145 601283573 18718345 725580393 114747360 634964288 832296436 983043467 412311392 842471795 874652171 955679509 325749032 997177678 860081487 429120916 446100371 423866583 546952805 435412262 303541257 640991452 109055567 879093868 139202721 194606215 717235300 426628997 660981363 700226068 526252313 235767247 838326030 31109777 358402216 391232467 97534904 717288182 524959362 735411174 462622780 620235308 349495142 508937220 292231631 758765942 724513708 371689177 421664227 262117273 224839038 924198201 387291774 113117620 589711168 876899651 318896781 455086931 446717636 9589056 610977261 928842540 779811704 334407961 828702686 694265462 601897794 213765951 301046431 861945186 604508818 894940755 484883940 868411565 206830324 848389616 713946827 477709332 789875561 277195778 857938668 946495494 58744762 395593014 224124301 164783544 996358382 862039623 995253841 506519010 449636469 880413716 722032563 65243711 432389356 36160760 316978629 132831835 995089348 817354789 837434970 377909250 103732469 718183578 922221217 337044149 345938437 877376837 426566498 618217057 66562079 303238848 550082289 666576018 428065539 303700062 363124568 396188213 778018208 391830209 802183733 58752907 46839474 743364073 119511412 815332384 791992321 605097325 42466805 952873427 722385881 834337437 769284958 987700611 846821669 722099381 623724640 936756797 190685459 917178407 584076931 278816144 360279765 622745654 624430882 646385219 722854379 898002211 695780686 862391388 577236264 71200633 478542384 26022798 810029535 464737801 671150746 406119482 262050705 138919486 952860670 735739958 41836647 648410259 477197282 439034662 822056295 504250298 608273393 375054106 44968138 175093304 350336100 462260880 733277337 705526077 306100528 619250458 537982411 573442996 14394133 727777093 369204835 627239162 71367869 480581415 438943968 651489812 409900887 186633271 854309203 589946452 949325992 927147056 630459217 125426878 804027895 928212789 778913577 255473813 26374516 881230143 849878115 826463552 965433598 865698246 799827964 391185401 577033192 590262964 886026882 91136426 966132648 285613634 984430652 496702696 558487142 666495794 34003157 899457615 777694473 765314318 102869629 67597833 282253138 98777931 68625147 38076326 741178628 264161343 663809839 387923059 462944340 341445954 318935411 288705961 499829570 600688820 845866502 59418279 888751248 787323435 689693453 104899193 786000137 392064414 812410367 769061404 490016951 211322794 783461818 821207382 995885981 80718607 636763311 340087089 371109806 887429783 704370219 192282521 984130255 812740325 446037013 129093228 939797832 240740832 957522814 345932826 599583969 523111618 127989629 37271744 597063169 492497020 633730131 542886886 120027393 245159680 860479247 918907102 129907402 200462139 823473272 492564434 538792663 241342873 136055583 968863375 261520084 763601569 356992471 343882599 300839827 792221453 347906976 262389422 224476177 565418442 567690150 841796984 917254154 302643308 503007682 45639670 677182040 654112684 146705698 826537807 183290942 766182248 715029508 714606117 736560334 493627528 565261813 550708093 635944978 221757359 371831086 816934870 549855589 736412285 384455739 29007049 454743854 176919040 283210968 285094608 796822476 909359975 975656777 627885672 967701772 399908970 862350935 35454672 368534716 144381530 975038870 242649909 716203 29693972 360584202 123415428 103518932 850858249 387444665 84316079 451076218 250478814 173400372 973773032 118925134 716721593 173694330 882596562 612000825 356749388 642231366 527194870 591337551 595349016 609024844 589350282 456547094 711547222 607505391 550687994 419012630 613021792 185352148 778955237 46071968 970533099 240183623 813011972 129253671 760966586 793057078 367654323 227389316 436793682 358793540 72390126 393183905 705240772 221561265 205996763 219087955 705651398 436071058 245726310 783565344 256467892 606645166 293938237 562117924 687475452 150748779 136075960 484145043 997218092 754108389 325808774 115652660 453149774 727488724 10157934 210645297 204339038 708446978 518934104 210018650 353703080 437488149 447265058 334861017 644586943 729861936 350833270 801133495 129567088 76516681 719242836 895154519 998188565 26316213 657355869 553390730 86335321 22727647 676914760 537032037 526930105 737759971 603255211 287325318 155257987 944367714 305943710 362122624 496707531 255750339 452688395 399958905 396013413 805078062 201950316 672038675 532995630 145665832 681576508 187696588 27718083 612651646 495108739 22439138 414474018 889501883 949691620 232659143 690618975 866092299 986366063 144631234 668927020 809338091 82828277 315843817 631755962 962660365 608742709 656404139 119385665 208003999 513481803 156512052 601012562 719028000 750630027 535372649 428325657 17824973 684451134 803550377 226102780 575114601 427087262 168582235 371613714 414411287 979282084 644420924 47520762 509969865 269024062 937755928 237320867 53347558 927257006 619445855 369588689 792289370 422176515 355016406 469121344 971282350 645399430 946712748 672126969 601249964 382163877 846392441 580334452 167431486 206412345 749107732 253716648 993348876 26127728 625203026 439721193 829106610 168001978 71785222 339024545 938082775 484034915 805450340 361583195 143371379 284777516 442940219 573746965 255237060 592589039 602079443 184642861 649970215 817599526 564355471 491256264 834997275 913613009 274000779 713516591 757400847 348120947 697678643 609940742 310335477 554137830 585219428 421157229 694311982 563388633 890874541 253714553 595311707 181037763 160353016 424406631 865560947 376642853 364046932 214855876 182884444 21494483 175063745 237617253 70071055 973854699 369161337 532609773 362498978 973827266 471828463 274621848 374847359 810638419 462457504 49104047 314468795 154164999 909051809 581268052 983796868 99757920 408260365 502671461 593160357 813061222 778885437 398655333 176427729 574688965 932114526 953824337 223880818 355685873 177459132 72688754 103362620 942724992 35215298 588300911 133882860 302950866 308187558 866685182 104557965 781730492 486981008 643297160 617461782 39029665 201559119 709201170 266508057 882252447 804178246 186281062 7111739 204602575 536084143 484557770 420421761 490252750 16489828 161325039 398370615 18448714 25308328 525977393 60852704 34065318 925832339 837570499 980148067 622039008 850400349 743665710 905496901 846390820 483572303 233784391 926095157 433406465 181626618 509054888 475818754 135039796 270310191 805655345 265442156 687355132 670467102 23281416 221303382 400738420 717801981 934781379 938741250 66114308 177829934 889992574 337727221 801296225 581376396 181603627 151754653 749873805 737963315 102188884 351435362 968999366 330155086 5674832 508418357 779587966 472110264 194143150 944971635 177478919 191612789 787265443 398034231 409571616 46821787 683024355 122681838 663224356 557505561 479312743 225012636 243239014 135685908 675650691 471350452 6336381 797260840 118610360 997237968 827101420 902929002 775523962 675483854 9102671 686559221 604790639 970889332 896194811 973213097 20580035 154765955 3513826 505873445 247501450 49381347 108368780 999780697 493908191 196621982 890938468 949210747 929805693 895024480 466597575 710502268 55144197 653108182 868680954 436210072 935064959 413894589 492384966 919107068 623937030 616245588 194816288 301834251 879534955 27529830 991815139 246708969 627564542 473848562 19622047 332476613 443953378 26916785 585275309 6088814 494435223 678069746 453769609 990860776 556996979 674480603 169393781 624749537 801619850 398153787 955527873 935166961 453066431 712612942 149252553 610326497 439384434 14084060 165082674 814552346 935158672 442327208 480712537 822374567 99491623 682622268 989139058 867237276 675347068 789753131 110334441 171699528 339853425 94158186 803791448 924714799 427319210 711894436 13156755 886300791 600454478 450478301 927632956 731164388 351359616 622232089 990098687 559713586 956068002 64663734 853790859 131073782 381971243 645016744 750980617 980141081 746320738 341480266 439474181 892399402 944681820 795402069 684300961 132925837 708707617 981515708 831030904 399205996 453813345 163826985 991505044 617845308 939256595 954785360 925015299 239286776 653454589 335893198 848211412 26571819 433890777 296742335 697772112 865506384 877680011 382990910 682400155 785598288 674257209 324327319 105675689 251562864 872859893 141949529 458862748 874838904 474983984 818504394 617427900 648681383 644131613 123129129 322179316 954481608 3205460 792754490 164973728 777630522 841234719 104878646 886527868 394238695 381591189 504484460 410137154 493797258 478787048 213573152 637877730 445243028 694459203 110408923 423770745 824917332 458789114 795586689 426102733 861893507 699624767 326723 444912690 952025886 507836453 717610453 442893891 786937175 386261779 725224133 186487090 195095790 564514956 754966477 850290722 497724825 912273697 904353055 112358118 391610300 182694479 463500907 371026040 502312338 102683363 473221562 640898153 15261409 584931555 940348648 626312864 850861864 161324663 695533708 945826000 307479715 917347757 77410016 233523392 45703782 871581597 903122222 197590451 501110629 397085429 840823622 864801593 462257288 702262779 231497088 237546787 441573394 686151810 551149744 66192139 153237598 949760927 217500096 643828148 772485881 634175672 24728392 785616719 870483156 832356102 658197791 325186723 963563541 610286753 440792765 119355118 235248580 611496575 554517102 376372867 618141862 59932031 747027671 634099559 579058140 40259734 886245997 191545870 529125940 43134899 319316138 384608478 833704692 913250960 702339456 756095649 229999956 244897867 429294169 616889792 445849885 897300992 817194784 424263537 660878012 572600715 370274313 679093991 247802338 229126739 427869701 870350081 164123512 423468894 178754539 145162369 141582386 473779144 36370988 643592216 116664367 970259706 592169408 472664178 495868321 886475967 639116954 999136586 642664467 750489680 191563746 326912003 959783961 931020185 286362419 167729504 522444529 723243961 607903953 902767249 40756423 276100734 548348536 280320525 642273643 392534525 181204159 998962719 39868536 820134477 239852057 78382265 592522824 242657734 640186716 499010488 103329841 196893784 874748317 35334420 975464989 51187981 941396640 79140007 207794360 41198774 925337072 674229760 490459554 135562324 233687743 446738344 607157959 985001147 533158723 897523997 443472344 647900443 774857454 528566367 92476586 693643822 695888881 393320003 411397169 23618793 309585003 84915868 387878605 919822701 235961860 894210213 193475116 311713607 359119900 181990681 399039566 298962681 152791319 592840267 250816883 231520042 508259350 604566920 55007048 954398607 516197396 107937383 558405145 104797233 866763382 957594052 570354904 107719037 888963034 121029848 731065385 5602030 217706323 4530955 193526115 801665545 191559596 285443638 599380167 959341659 338094761 999615100 297824293 428495476 526569870 74135280 876920844 688461634 442415861 227055886 426279139 109826327 407516460 818811899 239908921 658259022 64622414 699592624 684340976 574818525 298512593 869533617 136239487 187682648 581725501 561104358 31925560 528651795 6900211 473527405 816717019 125858084 89290764 626736122 964447946 925911466 601926727 24501763 802375536 697122556 998952251 356414601 151032418 515517716 701233161 894751704 673537729 85869481 944224304 735310970 113930518 739672392 835547625 325514931 940395791 604345200 4759191 244549736 562192393 98289052 655973306 445213635 761681380 353056662 333954211 547122243 328573441 623043805 877162616 803734595 377185785 637873107 39774141 457280348 567656875 882215442 111068887 598565186 601594381 14027916 993904452 213711446 127552556 772492708 673059983 834766163 205251415 150531879 471616301 687525585 864407160 182500415 494523862 757551706 230598692 406626712 496169839 532681353 376023320 625577108 778277195 913839382 974527524 327555962 709147189 47332123 973211827 781670899 203606289 435503701 130334536 199258597 752595754 281205464 10201505 581272255 676423756 110603373 956911070 872443183 267694885 116876101 872874778 227685139 482151464 208673199 643049130 138434077 118133931 549023989 507311713 414388598 553485641 903088417 866346190 427322259 67175317 978224192 985937564 225204218 800378639 489913465 362550917 460000662 770930110 727823744 61746135 216422633 389919277 772926909 533022993 763130173 593292403 211228307 518175491 732922275 873331802 890624933 163972094 497883739 691647544 906742738 739578055 34196643 813591569 759825382 917436612 320228667 245615466 232330437 833324988 146250410 665382883 886600252 180737007 141521739 935208705 509397851 898817647 163872004 599193335 675229122 522277773 326249646 799929114 446234485 926495502 262658389 387005812 11048341 784680717 798807839 378095059 598882070 335608095 104824036 154650119 858523812 669677808 393584754 59881357 934399514 14622946 932173547 148225068 427193765 542813383 183608925 698609678 928585849 810100495 852336870 382967530 262468119 29749004 319980183 63570721 328286321 276869340 86060560 37587639 670739591 808822022 828195276 629231784 724326050 814013973 290795687 332631667 743354393 687569470 808108938 583904551 372843893 582474203 504109860 13999740 465851372 604594277 766550624 146317443 328760735 655279210 950393641 779947806 133570080 301438081 369749347 837450443 927654098 993846337 765722431 965796527 746072221 852292616 376399870 156833634 781714249 205903877 340842547 449480057 331553376 155390908 370658015 839117756 925419365 175370987 248271278 192788308 140162278 728665745 182376273 565404090 21449721 519418630 481554795 687574874 935281222 820738371 713528168 245156372 292278814 338577104 140503126 410225803 559535241 134622121 21432749 365650367 855129075 103886351 399837201 638730051 418897222 454913790 900591704 831996133 68029762 433320852 541756485 239839479 481745599 459794679 760276091 646804147 580582903 961909069 546983131 131711376 211484693 790770013 7038262 117583475 347076488 183501988 732079609 175015975 796721374 945475529 337763141 494299257 496184345 700775811 792666608 802275269 634762222 761905879 806471241 549993689 685510620 128872693 475112601 772904817 545412892 350400849 647742168 133297743 139327424 771218330 169510132 163207500 969933175 311391789 377407704 248517696 624645465 151277175 936774238 102564980 410105229 332801651 986370823 989719973 429433609 191649011 506710815 894706780 406734770 794282457 27479561 692391657 232724737 111439484 967467164 332902098 51946010 821441662 681267620 172898539 966991458 237732391 228240901 586742851 995594480 383090720 637047879 156297882 536200081 425606806 497332350 970906683 401726503 170996102 933804968 19942902 441523481 77569205 999371821 321903564 974302580 860339045 94467727 241559196 702710681 320613049 786736965 592338057 660980915 742567120 245307460 2181546 439265570 850461721 194747550 658270307 403394740 542328035 927271449 536861894 994341930 425535605 797676964 516428109 499818645 403819501 344474487 384623937 10780887 77986600 535499869 616533075 313518220 267323773 312810672 309638661 331051602 628876102 886364367 112117462 173843173 188689947 208017366 638664492 963070800 638264493 581160998 554520523 306077392 603716302 639891706 676094304 141806261 506648624 277212567 283853229 143508976 898833102 105704960 978082274 776938372 25517376 938363894 965130978 145571610 300599142 722873263 67329215 365081700 383081646 527348633 845886701 608532020 744096272 802191940 438904496 656433369 225616975 540148402 282252849 731143447 861760135 772058902 636944762 988726623 997750284 945589931 628929533 381172319 491580054 125528535 707672639 924912052 232971216 283526255 629023217 861365264 912373178 788835761 681154190 101985805 556403070 982135878 468418864 194011670 643001323 341415055 491022942 522043184 749684874 87815871 54007046 83620536 460009936 500157365 269500361 230985208 734728542 59923963 886207553 340780685 267868180 642348987 48468195 793884873 225037978 130145105 949756124 355649233 158506075 765053599 471945254 254740568 334804115 624220797 449451957 686788545 441947469 524521465 777403231 679032659 814147356 81229670 583323260 930679397 140445371 83144183 371113753 658142991 900616077 571437045 490092345 477032073 298456263 479182255 557387114 127571572 650439532 824980960 434342115 327771645 12189840 22582349 402434069 755578453 73936124 612396784 498627624 79435293 903415000 956065819 959654509 761492590 259812946 365358336 226486184 937186657 759431273 740155499 853388041 931034306 545129409 623050759 276278460 827511004 34287048 360758863 562086337 635690678 246437499 703501467 907762351 94089046 828119300 414441501 192774085 146305985 280657491 151575158 443045145 921127286 8691339 442362081 785212149 937993092 900780781 759828203 325793965 114579874 836063905 589319593 108093954 851455260 756416311 585157117 423331458 397307026 880777220 999713949 141416604 309095569 502325126 52246680 566787010 469989944 595008105 711505692 454397278 42747751 610108655 335989065 628471294 514518688 512029005 141662348 61427491 564150300 348215478 286426720 937372629 728584961 298430661 808730849 937980653 817203155 871352714 176547575 870987211 270822767 100297579 704410759 289302669 418834033 826572165 529296093 740359244 542693782 325126568 123442371 872813171 129426385 312852865 363461214 888953863 14998893 496882446 73992323 235275611 569993419 669048412 264737905 984435112 615944964 92600903 435865221 26567314 188165151 909937636 924409528 885429671 453967783 715056775 424653098 991639613 962898662 830681052 199941457 492441428 297478023 997666040 199646664 794412951 4166152 184848816 493997183 183792824 209226347 155364217 750481136 865251231 375023206 435744688 878085653 224106408 730873123 631080019 399255009 254667025 892811431 213911556 110989847 456935750 856097020 647948940 799354560 291908329 244640755 146600386 921937883 15571806 993462137 584683375 841908845 831062008 908285328 99391809 818341082 55270747 399023042 72320833 653107462 834966936 721219126 190619208 648925500 995963457 717727706 578680247 575831100 802239585 675347895 189005175 453083329 334097175 927195449 495610334 390602213 749861834 40712171 58236595 376045850 111709211 141888694 976115507 227583242 417135829 414741845 907992716 598999824 91668504 202849437 186823174 26529675 955824974 846522334 659430477 242091168 225280533 508029439 767510125 942846265 745142613 592164401 942623625 451712777 419959236 557671566 500672887 372437993 276975720 224547669 678483767 615878751 279980902 509108440 223362498 209832774 668865689 525164914 911448076 237520894 449108163 862990527 503969820 227015967 478993431 507037604 605266130 69735352 963466650 836196270 231495115 497765939 889621179 698980629 709731189 741213267 857826267 197016073 164398237 921014179 225559958 995189142 636405912 75861922 386884505 669003392 222066008 686467018 5575991 48412574 580407646 326430495 577888443 84233479 652846105 212916027 971044192 262770092 214197243 122260552 869220500 372997597 910423996 951890985 134131628 814617285 126854429 198310624 656507708 253406609 367304854 961089780 5998484 589975360 533744944 650530800 740348369 619102058 340145055 136474737 491835362 602344807 734819270 703345467 53047020 879090272 632981571 577299936 622247353 704802570 15755864 630143004 349145432 785106401 900264253 40829049 186498139 137049444 929911498 245737218 553038588 224299064 805356639 774182195 306991253 501664675 396906247 678338764 182833451 91944826 93397758 698575574 887206757 694800807 415127496 416026580 697953540 133756033 720683689 176337824 589019596 990569166 923690320 925864515 715175354 558557515 444650123 201411990 640867232 442648200 137333596 882940454 790794051 476479414 903618316 290942519 374699581 929097688 286367817 311812424 724350124 915694253 180427022 871793545 77480025 484955655 155847178 826062125 985045053 694526573 617883236 70231314 554586184 613122495 4724063 607925108 269439599 550661301 760642928 462213434 219029322 300367746 434112424 937297347 925023367 757198270 480899483 294506504 557894352 500449321 77148823 885025432 68986653 477659199 943747540 433389707 484739497 868749584 263251719 840636569 314999995 836437828 810473060 148260801 996523236 190721529 913934197 262770986 587447714 325838131 766864486 394681459 845638841 461355116 562211768 365602855 633370058 932859653 296629538 904894635 892416418 904345523 899868407 99676052 187159139 650775261 994626476 128874878 687402059 665766987 979895058 638459179 606565627 910728623 711993546 711450566 433641681 849577081 345199980 464019438 765566910 158996630 104547619 114205141 299180299 483127077 797617635 14338597 851399955 447835657 779439952 186582192 801396595 703261280 133044541 498311503 623971369 294337504 367783580 287395459 441713414 519632686 875070158 512678824 718143326 621244609 42862803 450299262 653643511 211627175 204413713 144428745 763265465 107099715 920103067 522721605 726644798 523890650 925050474 343630810 723656702 689116911 934702807 104141518 170377047 538055736 393362393 187103467 170170969 504664579 234958409 336018879 258206843 435955245 957577986 781779896 320770964 763197601 646939991 997765641 31568100 510756294 741410376 579647849 484382816 45306000 604654027 378165178 100010806 35923939 416326467 755567527 116821655 756262767 76331747 975172019 264813452 751264772 83691271 299931002 651961626 861142181 835951186 405265218 967818023 289914048 273865836 17296479 860179250 457502496 788198655 736029213 239478819 217471511 860331675 145145613 384872775 435183772 176929687 227930636 633634637 175283590 468265932 954571574 923284447 961639832 229395412 320309567 435834915 982445862 680075405 711001007 825249151 75468153 44958359 369294928 279430527 467029099 444762995 231870830 803604681 654690769 770979465 293376050 902252311 103263379 980691569 353082624 493047586 661374264 976589651 655159718 979353286 123555922 19904508 408112 871081453 994359830 353784873 832126082 302684536 763725376 617115896 272723952 802066816 414779258 844292009 974952414 504847552 932714696 448562379 585732709 136401492 184292991 791979481 421380138 56787287 751672456 226227658 373910805 738437431 880472405 845068149 806492399 259387665 554012927 226027383 833834227 582379942 947185453 553705537 860674172 811022614 739375332 604689836 927777371 578160345 975752770 314068830 405025645 833226748 608597883 744601545 860560841 557959571 406931091 299410456 91492237 649799162 973967399 445149596 99401618 129488330 320783301 307842692 83678792 214699681 940902603 196692252 765265019 370190904 247890285 18503074 325198561 650253096 394931839 724020229 756745735 807478911 952610024 960363974 683894499 133246750 126677907 305767036 162582206 38614005 269085511 575027765 841470320 455750960 448608340 232092157 712844742 944957461 527260180 291445498 394052518 525860040 870016990 480794750 51297382 612666719 407605804 294873337 167920885 782154472 83410506 951244000 205841945 582274364 467933194 866763937 201243805 133903399 200968613 488415386 491303537 681323078 458067161 720254754 832359840 96740091 279125410 638830524 940916032 810061680 720502136 926893725 513805958 635397881 615218010 154102333 95293422 818987888 56084247 992430950 388084444 59227972 532594635 217443448 142649315 222958027 97795735 180368390 52126505 429581075 867137252 799884352 828626052 663832403 207032330 912526290 956202040 763011072 352532734 846279269 507292937 135182343 427242552 110541324 977578945 556561938 499968252 674554255 538438027 877505141 554779963 127852412 980719775 407843652 13690497 119719763 181295125 406984372 209135929 573106192 949172069 244354756 687286390 106359517 94800638 134109178 257675878 185517425 768932793 849322170 463166474 658898531 279369926 378541442 778436826 46302976 436180755 57071444 975569373 454993964 137715407 460894229 337680584 493889646 658744391 817937964 387207529 632920156 89056295 239470513 540720845 744566752 801535954 874875612 250137180 117240157 915129189 30865568 812095376 641869324 404941398 593002760 787423820 38069477 284931063 649017610 453554965 962317229 77327668 687630710 903766398 37871513 395366073 190071533 158829843 688989714 494604207 9344422 487341051 404369342 308812891 884260854 762200579 964112918 602061587 787417918 675445232 770773508 654602813 14300492 846313185 292361037 55659731 56252126 111482394 138111147 641379394 80781710 777815256 316760306 500479719 8884726 739557057 904610718 919464582 637013949 683590422 869221673 717209655 495324641 392215857 285182568 995456444 719590636 763210358 839551726 299168047 139315177 326947105 459837125 51743181 479751022 554983396 441560706 488642220 41722691 615957892 708190730 545473011 561197803 542957032 420321630 795903537 22116493 785038277 997497337 481832890 390067622 244787160 577251850 307552636 548454363 977705 979296023 817981587 647700050 693946182 304616001 367278305 587810006 314738704 68944346 235070454 492094444 379266630 183958369 456984823 378888429 318911038 572009990 533289431 703587096 604678803 216250830 819579817 945435645 478068968 464949504 793969631 744931437 198323671 944950982 229798493 558123023 115357745 579761552 653330873 657159173 803811784 836828197 871686427 820257329 61665949 720544348 718738022 146525581 336438808 595959432 488408210 864360004 672866988 526050648 430957308 157178222 99678738 563419622 740703979 44583336 539935479 35594264 69134626 496022858 297491706 856503135 928975327 840900347 724023871 528686670 487821394 549370345 125704168 575747164 912884629 313591458 536613911 447400561 319972812 607296365 562294076 248622969 887589953 849944186 227332377 547859749 929360978 162126379 448817600 4644861 942861139 313028536 714824645 276777756 908374019 947723359 476648801 332661017 733664747 720118071 748054827 11049874 141239834 904353732 962501562 532038193 527463454 873700517 928631410 349414379 172823957 57754433 492843502 791599481 476343883 308666951 379825379 509855843 406682302 459923005 33897345 662311111 345565842 900153358 983377473 517720749 813861856 888389833 300503411 67285231 576922333 383983661 589757971 912542251 133260958 150823098 212633605 939657570 995618510 654524838 654281109 787672494 785325280 450474664 178046588 456003324 691000898 459446842 686693070 980368206 420715716 664814995 766430913 479262138 668039440 606444505 700674357 791886450 667286357 904763445 293651925 269270016 234821374 933466831 125204217 30010412 598877371 644927210 107070092 712613991 371399406 207239252 884910216 629722110 487481626 860148986 531184615 275438020 179252255 797382926 351976599 366347206 859368989 891819249 900369541 985705242 988548064 82733331 528498469 490818762 674962899 595624591 330534831 523937352 632857281 732213124 782775078 737811677 423576371 314911626 628150837 315793919 357863653 867593247 752415772 436341448 532259238 577013602 344029601 326323448 737422786 463327193 956260525 673476952 886824018 614514657 130796024 852415840 434453138 703618651 621150420 655325445 194182575 773502697 935338723 658866739 453906903 662963209 523369739 855711988 418302236 978298879 513960941 885481625 401211811 66624409 421331690 268986801 484395325 429059571 712333525 349137935 787085436 326652279 46285273 305348242 330317384 542283619 81235327 499571222 252402397 993999139 206341604 1607850 83189033 587598776 19869304 190266030 95969549 656883173 781449590 204318283 703970959 520057015 930835882 712002386 227507774 325516596 494158297 802997366 381778682 188892055 323379407 395960796 276842416 714655548 187321482 482700807 532650758 425017076 125469209 312830796 338646079 998840298 910646671 465508369 614099683 486237946 659326192 811626282 367775979 409004194 102068699 10399349 211536821 635392430 806399225 246471413 196053882 242114466 162499721 479408913 927122613 175437892 367501915 147620836 517904043 599877280 590593848 317622199 414386830 500695338 315226085 35718826 935167745 22759479 49353969 788574953 679113675 483826602 879445967 150962638 723116554 681822641 258614458 842222774 426521968 898456825 634098979 748817647 685079113 358256857 983601510 933763901 77529715 943126571 507277196 119064955 395764737 109110684 101886455 141392874 976769918 931809405 626643929 694595354 944006926 120716468 552810281 764550827 302858592 293647267 953611117 100487 695980368 936311713 780031645 531323236 575617465 55417369 673324284 876736528 947966283 776608174 67492337 75868744 637486506 911677649 783669775 895922989 905035698 249756577 338423306 755722454 155443016 938012669 191500224 335799007 623923373 185440238 971105639 973391822 976057302 553405456 329166509 195677756 412201844 444452392 595982154 140181324 186872859 348890477 349266353 401115831 788059781 465344831 301096637 358579058 238760633 537458163 697386704 447892076 407118451 147522357 773889498 271859487 576227750 2364656 170460451 341680364 905151137 114039929 534548729 126877171 211057545 402209134 808228354 186685076 841740621 511377915 580745576 951149384 899489423 662593461 970201110 442722261 618249207 32632518 485037694 561629127 958839594 964414294 524365437 29651546 892656214 263061404 743777378 715487438 96912452 215338233 279035232 27923565 986930929 716412589 102654458 728042352 237089013 487622284 427521607 331518166 333276163 919920606 252259950 214386642 314769306 98259360 833182775 129610490 428266442 768281941 114208749 975370256 455394568 745797935 53032592 677072253 836756377 96036605 975318060 601343246 981692236 656090047 92653288 768310257 308576135 166299037 903066051 767103966 208290434 83732310 781050559 190577660 915509070 501157331 827902108 223656320 595270286 511527535 83324558 422002595 576550455 981351445 766985170 78706973 669258888 616052293 913155763 879762768 840779806 613385219 527293034 725826916 143924955 724046368 475662614 273119673 745843567 125734676 917849024 676234587 865780673 672151361 253820794 987443718 528134822 21408658 515723826 881829539 796536896 289501576 598144331 742477814 706480742 413504851 365121268 882509884 473658230 824497045 370169695 459046555 876794666 485391157 517691291 4977633 404939553 658440789 500192293 56266358 271451215 43832331 736335315 911282706 113325606 522297694 171874373 186509939 371139005 191966632 840768009 371828681 709511015 44132985 938452666 866922513 427709257 162898043 474554430 440635417 387165972 283676244 417205287 176506400 74524975 692088139 583002012 37313857 683730783 612072295 912625740 480323860 226228137 374798573 616485198 503562756 254571229 451916725 880351309 468940950 164900653 363123805 761448771 868073090 308662658 534383062 629771626 527569478 488004397 417446333 104280854 291048270 340081043 358421777 613447291 349560313 191654799 840018672 673252023 890311802 650567188 882288578 368742468 476231070 443443527 382269058 644128304 452303901 728704767 659522466 112738125 407200664 16525286 818675136 324079111 414195291 236773864 279528642 655253976 653065388 768645565 667708720 513761152 459982194 95639453 872113246 349408007 822961141 571803590 842158018 798213092 17601864 810492314 187140165 330428694 246413185 692851599 263381951 327340700 883579748 787121249 601159467 385992480 489465944 869994124 769376098 489053284 238803609 343002898 279851016 161548241 530962887 745644276 644864444 690956579 826844210 743075677 526984618 561759328 104467335 91593811 157084883 633592548 754103844 95453464 375390212 54577521 416000937 958061596 473820501 304273707 963252446 66003065 704737555 837790231 994693382 217175197 53829972 25316024 461401753 926616331 267183420 263323772 666626995 231503557 432356647 790245442 965372326 988051107 261126717 816460780 209405598 210114278 473894409 229015343 128591368 154747571 345318864 918811304 122186132 88785303 757183278 459378500 315416344 836273852 794759828 278009563 974502602 480109436 644859927 815341069 469923850 6799009 936206179 405975135 699816591 831034123 369246188 683452799 524885076 733183171 686496632 24618110 641556477 708958051 682813066 955728730 793459159 897013534 928894062 163232863 484186615 575498841 192783124 122645908 244753218 641545586 993981984 679454362 180032512 930137932 840185277 784114718 193777087 120293353 444168694 242210703 891500983 534945462 902980973 801973388 755663099 220369289 136461758 605496856 228533966 471159798 367307974 532727533 262588869 380673130 73663068 68113914 282669297 695985632 169858295 719956241 938117719 318798982 732425077 580901180 695710257 37975435 967799572 558078187 705577081 550197833 299829883 308231971 94091928 435130610 373184672 437214983 383531406 576633084 619910472 497460162 626083730 392348058 30708583 633178722 739925641 888306105 373397026 972539059 800063358 830141756 588945610 479482811 895176 294168106 442927182 862088723 908121695 967235956 762849393 41640795 207804164 467997691 600066208 319015316 206973804 416567169 146084866 442514145 766830956 497127425 766911396 985318614 508434686 338061022 746513597 723845384 188124135 872651696 249609615 415582762 898562356 843917258 852280208 806403192 726592220 891432746 96576501 272232359 569748262 933545678 824306542 849765847 548472474 540041446 358623774 563516808 133517101 144103927 253969414 663998436 365970204 361294881 773993879 757996982 282225601 418186843 969251449 758657168 311042984 420432322 513437642 789669125 574281184 55029532 663328549 859538014 223705517 797514898 403189380 462626506 117794345 858980176 515357121 7381102 536209576 176252921 964094787 327733630 194351621 64457103 341444101 287190880 87837738 838266773 444837949 653338208 145232534 224614216 454039214 432296280 161013168 2832162 16788669 365374230 57059429 664751433 178946848 685238219 649470083 56930933 550895517 865321365 160752698 161959160 221331692 729404773 93641013 680683654 193741979 142786208 666194178 380047995 747378968 695321800 275129272 535433124 763899717 281970488 15021367 782230932 641985660 976217746 625790275 11140340 580542422 834689409 812697150 309613888 620481900 198841843 502084974 668085105 663315720 919565242 979916434 70259375 598680165 953661659 21339444 156677145 954134437 358889663 554684817 741300076 168507792 624264296 136542905 10713648 292204840 783626703 159082966 457544966 882990861 379813924 838230415 202256859 787627376 237480512 962876087 199793002 960213820 593062887 953023970 955783074 780848209 106115710 961911833 401468336 948262284 373642396 220618835 235613009 252158106 786868280 159642222 219049024 586770432 342499923 946423221 18924794 103153995 473400441 353863021 545913188 491611351 801996458 992276662 810502483 153496104 936937543 895002624 263453514 257721512 267304745 666689937 325163407 502727648 100241847 617562196 131247765 960037547 376269985 350531906 948778166 469713700 974454132 331691791 569151572 921074830 382643891 947184461 179617905 467028367 524031521 512649906 914594569 152655262 95728272 911602260 663642311 533220062 330234205 707108190 767608883 619351182 428218876 382488919 401824246 687656948 610855573 884676129 285964347 634722824 430036964 739517955 950402676 135975384 22636744 739104432 953375650 720169946 754563438 35307065 967127915 189875517 849596804 884011811 470074381 585097663 324008585 197660840 954278804 249548074 498799794 407875824 760049444 724639178 538059748 796038641 554701070 951772976 198447139 956976457 950228436 420142988 592897880 751447486 184928945 457748563 167218329 606632675 349725312 545051739 942480753 28043517 884105641 658559898 482707517 369181242 355365301 852094544 982152814 26998782 393478416 855668966 944178813 499305641 394513724 671368491 202489126 352271388 295094139 794224361 685924918 200096241 439924742 644409197 399943851 196396487 123967074 143870292 842763813 510667939 35064330 794506203 528497582 992947032 45684286 454556913 35467995 237224641 228413833 196641067 258916948 283116723 66238475 343055027 129173276 402595579 69528453 294545848 129684974 879816443 188691449 924221419 184215032 474421773 640992492 665091039 734278841 562778179 793851129 738884932 409692929 812319657 75379262 549632717 526448857 5982076 145568915 195176697 703237981 628726990 726956361 859024000 466274078 176161950 210917546 146979685 694185065 509197639 674391801 789309273 367509142 738356521 500971736 35924600 985437273 588945107 38252925 479293129 353197392 365094425 127628770 129075501 657152116 737537967 575094641 766991757 305472202 116365795 358692827 604891590 910991281 806301897 297948610 498277864 99381897 306880768 464216371 279176450 814717768 364782720 238673508 201116956 75676134 999765843 2978340 438772473 732407245 484834083 699039022 754434442 958800944 178832839 940157633 653469390 980130252 117038587 156760259 691576924 973410311 217834394 400120802 104891578 537179327 861987529 41612913 845145849 337956562 156205458 533945018 359946819 813804549 90528312 864267093 947938974 60458936 865422710 663714391 660447646 181734806 946529301 513131485 163384557 536575515 921837899 537205768 746461113 517268189 110273800 618325889 731514260 878097960 903797693 727985431 936220866 611748325 550544723 833215098 255699159 130864896 837451790 160468714 635681127 526198567 208550732 475551425 811645473 573719576 531249184 352912804 485249887 387102566 684824235 270910413 211981628 176713549 123578121 990386527 727924888 97110223 163324168 693730486 305564421 291978435 879296852 580815594 636327463 711327316 492444139 616840799 774056201 308394878 373835991 503629698 909117101 221366175 290075717 364955048 439861827 4703320 87962137 663756546 969564116 887906448 804652515 372850437 996893313 583072416 40742545 139850022 730798576 102609180 239479160 227288848 406781989 330924059 106524315 504795256 601083665 714230991 499902980 962758277 862863045 323938476 795940563 816685080 849640019 549315086 37378803 686492050 271699271 351650278 839424124 164284490 1475117 81367195 22802868 507880927 516173707 684849724 265668897 548469713 858888391 480168029 531587403 646460271 385891467 273256568 526126698 813596511 623824988 640194875 866403266 641097774 183322887 650411187 935868499 590586593 919011023 565105317 751639473 684393394 721321889 286571115 188142045 726843337 678639798 204380047 556794706 799353045 49155017 673461458 462646946 420655277 983203058 463672024 764771389 293508878 692422493 594232258 138537545 992315869 20733145 607637907 608695221 660403659 766452144 389514723 551391257 688015378 322377239 690310560 206984924 390491021 347700331 565359595 921303244 867584429 290221500 657352771 797397356 771235406 4528580 388409955 150945231 705905568 751689660 345249571 440449103 11902252 238498556 267467774 516499954 308802282 365371108 129354232 315969500 650594008 970841382 672151196 480157443 817667082 535098323 700001668 144441897 62362538 702620391 654717540 616518299 214293000 153856531 526961227 536411799 164966320 903201480 218816027 288814601 496621023 865508804 538252710 997820515 59338936 700024113 305873329 430767829 658645764 45805693 549270345 31790874 125778756 206266912 297720120 275417397 31568311 841158300 844915521 489798582 571187873 659701278 670844242 319299703 796622585 895574771 799679470 364614596 209967624 135683445 561626263 711958836 811518657 551416790 647930380 983349922 299670985 696231999 843316471 979229458 311245882 346072819 237430490 500409495 588437242 515134528 406083673 980627055 336694419 369180088 402340900 357151347 523063987 389916240 356897627 115215844 202837025 311636436 721851956 252549623 985485376 257526409 537899213 935374417 933848260 223554464 89255452 75049078 397376848 851492605 170890366 395520906 632770831 90197630 990140979 495231114 891539764 686391802 267410655 645279430 372396416 178531751 536645461 902902948 569529223 353263211 980192721 170961048 433167697 498964944 424731964 270910287 645970575 130541444 983411084 629662309 304401551 151142816 541137445 162503471 311015758 136899359 898358835 483334347 447380817 52092163 841627017 642830041 333039256 481838217 1412175 834724680 943978901 384824121 773502581 683938614 748954129 763975568 123123071 565725151 252395409 70101232 313245140 937807004 302350833 697168641 51865136 432117341 27660970 620201388 391603101 443589275 701311983 6164445 782216504 853945649 205520026 742379285 851010323 528357485 898594802 497591624 315246962 203392451 97906912 182199508 505210054 343188312 672541098 880777248 196065162 930716999 831192967 563999285 450869503 228723646 314651344 35898717 249258472 237577182 178053 976046970 389380420 582310748 580931775 847238857 141126140 153559966 770033560 86648367 746220300 869164278 468444712 876567530 880182040 288827871 874892992 724399551 955831911 442047441 75027632 227400854 32437926 301269784 420148721 88578873 442892689 917892540 688946339 684689940 1432278 215813003 276079863 554527487 489679833 20091527 630036250 59463959 963900827 174314219 311807721 534267613 593595499 542188413 307846702 560609713 392579334 349597696 943761434 178316591 589421406 225586058 438936865 158508935 777095412 935447004 629481117 511215190 568463335 68105022 619444387 3644807 722343728 82050209 644770924 523349575 50935730 764795280 197028980 411959591 423392105 107446527 357454678 65477617 999573021 2881677 170459793 236372291 748072605 453163366 147867322 803385116 26803010 700351909 697775820 651916508 201819537 453878628 657714462 808503987 343962513 848881452 751937327 462746681 319377187 598411086 486704293 636715810 709277945 427761142 917511415 225872367 405466333 824406965 809331800 379516580 925016912 610923771 179829972 616136192 411057502 735369638 440228798 848478921 381571605 419714626 656052984 636180098 77812370 541437026 305332686 572575776 157514199 746333341 929104991 621447055 928476282 621083488 908669313 60431658 234175906 328009389 417831592 388339337 53161104 639383467 265541528 910415363 383594952 334857749 214495549 236049132 238604825 469324966 87695184 138366881 127607115 242696626 153450251 117427419 476131483 465941239 351268372 220734577 541162738 841366077 750333246 522787872 272560699 845363223 415449532 350160281 398531132 598604648 719024835 857569138 130921368 796376199 191854090 100237836 456029500 877363532 121903390 603426403 76417078 850581799 7903179 288829849 626700350 76900490 450736965 610573904 426442085 568007016 741663196 635919512 596405307 693818135 133585874 611654445 974104652 464634215 325556812 374837899 944382841 749382276 16083913 158982532 526655538 89033469 774852338 464189262 690624032 74155082 295551540 952526943 201989248 434316718 456146074 245778888 167449276 921928199 634057686 204614677 990492244 3459632 311865368 755015972 481011383 111767308 287677744 47499633 806249092 246464827 136542749 408173534 643211915 557716901 208395164 403793167 734284617 909375791 453600838 619450479 715000277 258404468 688033519 922452835 739940800 937567551 158449124 749611477 13697282 108123185 373369893 91837873 823760222 108576361 725165019 139219096 806265503 100862825 944479116 264112775 131473487 632411571 161920088 244617822 8152842 972319732 376428567 875558054 750729107 277954568 335438959 318137348 784531622 464431084 167393010 33478050 564365316 491115658 378584810 783682902 274363797 502436427 177806303 402399898 23900349 508246253 817440821 245825339 646203340 55787279 941319425 126759987 993708655 120650285 900142624 879661541 724875052 280050183 447296784 553115289 673614591 139818401 271282362 678875840 736257194 458981301 29950961 688090443 987697878 19099149 602352581 905278221 277206700 83174376 453898753 502111554 692326340 277615726 19349941 276460369 702668123 50803644 994916028 351233644 612713722 179549671 857307319 560571830 541841024 177964945 584449067 19363625 397349177 980205866 250953463 123582557 716682034 314394293 594132150 706158001 756348993 412650016 401271307 307233296 564268261 168849706 427138721 368387940 492564907 210859931 270107434 655860015 934220961 617908074 964236770 471593348 937535057 194679915 720292379 313872377 729619302 558512971 851267434 79927669 793771014 51964364 450234597 203034282 204824854 277762419 15979891 209069817 441732390 771219366 373268430 320583454 381132759 999361733 667367020 36364940 952036540 711956199 388966998 599712566 885597977 487856783 995884057 491736403 425605195 303829117 249345791 776661534 440808316 650909706 771934501 731411083 432989106 169154526 460476206 24908611 990140182 797937990 811929173 863629091 418856326 574624610 897083079 652268166 622112776 84851128 162215170 422840684 215263746 271279067 626467655 832132314 743745781 770637051 522384976 390152054 664238199 315755825 105215846 194139725 414204612 119587598 665504275 466240661 125856806 490364107 630455048 625622233 813834704 743115887 820091418 769572645 37057666 979212438 668928332 912153812 601712661 743032181 719511880 448724157 134028526 287443006 884819768 977867707 804571544 792659206 561740141 617483326 950537037 152840826 13316510 97478844 390432007 378867610 36749018 958907201 972291298 525817055 974894455 579791115 889650478 62378523 112212383 678142491 30718948 189871640 438532545 454500382 984776904 968733398 364207067 137312277 395888498 516062250 422274836 785705545 89821599 438288642 165872881 510282743 745946358 331046511 900804292 390892956 624590754 686366043 999619780 644098811 42793238 720673617 306957559 485382135 405324208 838249759 222142899 976717069 921366069 275058379 893225864 916225494 993101975 669062270 684337686 552357712 627481072 894943998 507101561 632241227 692318261 882316548 452670180 884990605 236577412 964998162 486482699 330546757 920592754 881742476 645930852 839410478 634402884 785981137 348564754 496488664 700546498 109183669 283595297 90517478 71236994 467906724 119669200 651317521 285320221 88221012 7163487 895739105 979976194 262474651 789926839 304603346 538302958 742904977 681297341 267161808 757480825 626254115 254220321 385123019 232254652 392883953 302231782 701267602 60403475 922382506 763229114 609921609 610309938 867351206 903165616 629526940 298757747 564273539 564244736 385499329 520537717 573808393 375104196 450884884 306646518 891524669 974959546 386633400 374433768 251238189 692890423 285626852 418597555 591081528 3480172 981302757 709793066 254272645 602442898 373728242 996533029 310948671 718729624 226158719 198679366 132646783 882448655 254397097 1382482 882391645 322923189 505005151 477238368 386831487 740928073 418650371 164853379 569380484 837661407 205897527 142233866 878908361 718886328 484536500 802286209 582601308 735214671 435158429 347982417 477360485 751807624 480307189 433239999 229491053 553978396 85531970 29836789 825252865 245178376 757577101 556308683 367833688 80653750 714439845 370387705 474831985 271127700 565959508 605889089 539282707 607843736 824509373 941890719 604179980 682684288 2086221 272905683 678797306 584933099 176433385 355352092 817130242 810431219 71941068 499823795 982026131 826149696 767270163 458499670 880736375 792833342 433966517 594114934 715232394 538662477 645843514 988883186 845326751 394287386 841792502 565818320 333260384 407248309 224370080 117476241 175271356 362108253 270140712 804503069 35999340 922010500 665283033 926573344 819566652 83628725 450056934 303262708 794126733 275584514 335253062 245629200 763016759 968304 300779485 485905063 428424038 494425560 265408466 85294292 580397324 279756082 636678007 166854501 922644573 471125445 797357237 430965870 381016147 680768124 951876856 7846728 624435610 52832187 804743263 706699569 821904 670868821 3050940 949517670 400556385 425381212 75140662 60273971 756768123 394772837 146060524 269763012 21951121 669523328 771947622 689859391 637715129 296967780 817820450 258734115 701090362 103385106 24662836 763203141 210861514 3430535 742432020 94350426 817827887 973450665 419786696 354768967 575031779 390752569 5708952 27633299 949817914 828484041 386730495 682473059 879409209 767697837 256712098 494522073 691853699 248935659 341036511 822778230 866761611 573694818 685660038 472145489 57855177 540951863 826580819 936948619 316466069 680906946 639701573 592930299 303427114 564302015 720458151 505849083 709585070 50464655 366575460 485134829 858851778 914173682 642182172 425172509 335204595 925522045 188687187 683291509 10743355 256212313 965558326 162382126 490265642 395135964 34611562 506865566 829830209 329746534 874178887 46204260 985744336 14077278 969322481 571010390 315196287 772482328 95576533 846272712 283148021 963534390 266394242 948149823 277113362 672070483 482327086 278379133 904541834 321936864 586860371 284967396 443107863 395576199 190716963 844368891 631336015 867919512 656448667 61529275 919481074 452806551 768086466 93413796 39599532 763931515 619763136 576530668 852446153 753044466 286241479 684434698 330647209 478840146 821430333 322302441 978878334 824482946 845995145 472187237 537136766 666087406 28278360 472660903 136493051 755562719 891224859 282927623 668511838 27453868 474472692 926343854 328973287 17007174 413224824 217575670 865566368 2686018 58791866 10244390 387665203 574375488 281106799 205731625 677096298 695791999 36940199 521908795 100080816 716097215 286301425 575231387 509641812 4474327 481866034 151868899 71844419 761227099 955526127 77335897 25450740 890097993 148440291 917439679 241570214 916760766 714982148 762815619 965682205 618744845 136999269 785452354 391918389 909319896 517153919 191864513 585380728 906306612 796100544 881560605 100680311 990150505 865922311 360501901 513985214 949914769 471854605 279225776 961644555 453423995 948592392 343634315 378170390 838585754 705429195 544235324 182389581 752106856 307163293 466646665 389517376 688050716 52782129 68877596 236908068 769437711 237582280 95220624 269120980 19465192 834849149 276275687 408252370 938206317 867649708 307786416 120513338 932727531 413702695 486405289 395077915 481645282 431223319 346246543 612151406 514162746 599133216 223677373 193097748 997969042 631150623 120181157 69583083 263757897 893799026 44787618 966562812 930519100 664405262 583577452 840471724 276704907 980663028 264402854 988048168 988000791 773766619 385224894 2002838 984015824 99774180 917919522 292839663 127372761 130477910 683961277 441574907 534695708 52629725 378804842 711647653 300606206 193708700 661383348 199267220 14376790 777091313 721636380 85228988 594663049 521432633 544815120 787201261 656238942 675641652 441008247 643171052 558314605 258085050 765181908 66663796 344576615 113668070 170677901 752619669 58228392 816512816 913584169 867959212 680190302 224669970 826545307 334862547 880219032 897197943 508626816 686901929 351155142 676679476 478586893 673505589 334892619 683989402 781858890 612690120 356935731 98879554 466992835 295524392 541338303 245483087 944181242 117627450 375292132 309941477 11888183 982366558 193506603 369564599 440202196 926630629 92298798 769872750 110677615 979199464 38291478 6842702 212595125 527537602 523236922 767917762 587049079 714383441 573380061 178643779 678828134 46027335 693982512 334471811 133992922 861723805 505405697 703196298 48325599 734148655 709398778 725296601 750674322 853764341 580124346 262940330 5737685 286479870 989411898 116162094 339858976 94525135 615796177 828448230 920867422 595233965 124300168 437959494 785652158 456866600 725526775 60537575 751530565 150942172 880230455 501300912 657959638 22827428 4052477 85247323 801272023 138952339 316718279 635300779 575305389 317323693 656189207 416693826 821524523 906249188 49835890 395556124 250341631 858725125 59404497 189113842 342768701 123507890 887940493 98626296 619931261 264232416 914505461 411210303 985484925 157211171 888507061 245487539 826335383 256522702 575127153 608527767 349143694 372382772 465329078 715479784 664986888 917762513 484372479 913415937 76010996 175573008 933081733 969711868 631946437 711597924 418231020 788307249 913976614 502536653 183545961 523122389 417954809 353425242 106503419 417493754 369133333 981104571 639187700 457167737 112081356 450712942 628359679 986315814 565209775 722160609 375205535 505080186 660763817 362588665 576439167 544331839 28925854 896632357 105927690 494108722 917647385 688669446 676600496 155260750 349137298 781164610 221039652 94342211 322206949 779434619 912904231 431948871 259670684 673260685 783582833 771806281 920987308 883823146 565652353 536440373 327898739 464446246 143849413 480171646 896375174 563137251 684195507 655523243 943674606 958032461 945543088 843558212 678038345 69174305 204687468 874742049 564759403 477992429 157094249 823621648 716682730 974086968 303346548 323636621 544805967 569482109 865716598 144788289 856469872 777607989 138144085 616310951 64626801 806360308 367822395 556502188 486580380 549018313 547293156 546701621 543969429 284615862 329619649 502180610 348034484 8738272 80398359 588905610 155005340 652534767 804059071 959582693 905065208 968266443 530301433 66428858 370907658 436597575 931392218 605933230 28666548 671149416 269636584 455099402 90475921 263213476 909890975 932885223 172799612 777326372 402633430 337727038 353260660 811740364 279913987 476449528 499080413 113955180 735538880 664903515 679341665 583435438 12537403 582226068 944912817 228481029 565893242 219750496 520434225 639653756 435215086 10466378 885301201 302261081 30847747 339764918 56111753 437433328 614374949 119454597 712098346 579700003 693646019 955090933 370952803 327362917 431652175 337090242 346517037 555450201 966229023 821711178 865719439 488670684 640187022 458110057 403895118 932565407 941020301 526071637 492812093 713123086 865903160 270077020 42827648 386436493 419034600 292178631 139704704 542976489 524820164 257193305 948659701 182230823 168367093 188118711 952542878 195295165 950200451 353521898 229952465 831661969 568413873 313689601 744335141 998309817 250719351 794489311 342511422 345121410 957212363 305824032 539599209 580984835 375877599 241213317 469707750 663743664 767481814 257007040 545573125 962320741 701407250 375486324 301292261 219849926 775344301 875609625 19355912 834042489 999765396 221430380 302670250 544254924 488706615 683853205 747504772 147159589 573745763 633192258 599726352 705070633 208276385 482781725 515337886 478606623 670802811 972204349 33124377 329177807 609441945 222618217 367526891 937699336 905915001 78927298 2199420 879554845 653110523 765518860 704223635 24559487 587141099 669536242 908699634 883417556 207567870 219473621 733983756 386538228 686191465 577777209 841515094 9030935 157392265 883345566 904917642 24453814 980436439 913832990 303044449 952944025 981824156 730394194 584243768 615880131 429825575 844515708 118265178 289812942 877687434 389520440 878220041 900426389 412334715 704436300 242064692 12761984 363033803 768506770 856819783 546316382 167608646 891665831 906271283 20049987 830613754 658273173 245658440 703943790 340691864 777374696 39629927 323076779 247045081 364687795 404408693 571848995 333346984 130191079 320340834 741415695 773606133 730078129 258024771 324013114 625624963 209111739 37429739 328542693 962868595 225663385 536101117 892976456 957698866 692556018 428400491 371573042 96206282 457729801 552024519 125210150 625176238 181127780 568956153 500175104 860624827 541903968 75437671 881785988 134911546 678326444 302231958 925712424 677119106 364436454 248296590 791054156 425599353 770630901 780650371 897583677 744948495 76760907 864782723 413068768 285033657 993803279 47703391 211326261 248152437 107734693 232159972 8061700 128383786 798976301 245737356 208124014 636680285 171292017 397441944 818424799 339696959 536654465 615432562 765065994 858245380 410023052 448465249 305916730 197122202 996892653 119069590 744409455 156634861 868088584 531923187 796533345 213069828 381879943 967191829 134107578 297545137 699391550 760606652 561769137 504004293 205291433 550557084 442616213 884094409 38878157 142288001 42829636 861713091 265598247 590380873 104348816 153234898 979623693 416290835 646192559 253130680 104263477 474567049 897153560 894605265 692714844 474328608 101035444 360778172 371153419 614739906 713858810 708279162 135031424 846064599 242442618 673093925 280805171 34501822 420055487 253893513 230343558 963653984 111744080 346964150 329881317 470869551 63531801 424612500 331000073 608332100 418652117 719460069 616353284 937181337 496337226 829822445 272587802 429153117 964315047 888006747 115893761 369616286 573917029 302456974 521794931 739418392 101300343 783728037 238676026 830114026 104830366 966013228 142891906 250610481 132383338 108688416 289721869 619114079 72168888 122926850 322929038 490483966 486149756 696350017 242953520 801464957 330626135 571143117 248360140 548028762 18076954 441938069 805322612 629905057 934921303 317609500 192934361 354004887 893639455 948181538 231314464 6351022 700497818 606973430 155781094 586707174 599026687 83716168 724375493 722238443 742509293 194736981 307130885 961419108 717245874 468258930 697827109 463656735 887670376 569312919 930620783 647591435 107758508 125367162 285968095 60856074 580780962 864242342 974737287 117769103 408024332 732768542 379256678 331948965 64904413 454829127 103371291 635406672 681890544 302492416 165004762 914375219 316123305 69785207 13321415 621606742 424712088 738085114 144755598 418398579 892252152 243043960 52938091 956815 199468357 410535896 483434984 395972217 861779149 462092073 218033947 137132163 271038708 226805532 380745119 731815664 531826753 91721720 722899378 90873838 796818299 995580039 269473396 134206862 193643763 923184167 571914719 730646461 200214729 384245268 696225210 177898489 73213082 287992068 822609389 313400298 944634565 196702168 411543642 124493571 59877410 316970190 695622685 539604601 35421409 618409527 713725587 555132365 87424436 955907327 904235853 496717671 220507339 889650852 273040842 737443828 507677919 614946028 964497611 984860470 506546917 453592564 422540803 390256317 197704974 167915249 803189211 731570196 500273748 322474351 969908332 211630256 785040715 49496174 718368897 27425987 956493384 879487675 594253582 224247511 454008549 340792778 411145576 309603817 492874267 194437890 389493635 551856145 349621611 192548605 80609108 843997172 599829453 413106439 364591817 401641949 563937658 518720848 941479550 899369650 670938542 102535081 9132783 33252657 322529013 381464899 541698906 100697774 121640667 482612899 934949743 627793165 520743664 280383394 572433275 270161782 115016935 271498559 647438174 950454044 881496869 748232707 309752246 842515078 512181974 436631503 949886317 94065152 479791369 167747806 357398319 732502070 572584858 606899563 479091150 894900820 684199237 997024793 866202810 650576752 200902867 176996095 227995307 586734204 60581939 871516140 746744310 530732403 282010390 496798413 685122892 54727729 498610815 388179938 583217129 43028018 783272870 537448483 413555420 179953996 601040428 658394484 559789451 934113162 59995124 851982132 196174594 234850756 857852567 10745876 319146187 604666683 48327918 161829187 689039689 747458584 470311283 473298752 902914283 28985052 513731293 586363472 203750812 85104770 918649426 340576458 489885979 229956380 315972597 860423586 410957695 952368869 969256859 945828891 836017716 374687215 924709167 899155952 132357603 289442025 451249488 448522050 892252201 635488332 570398463 245523065 93432869 423027352 711823297 421160256 991625998 112025140 864740031 992643327 46347908 507204404 645204681 91523860 650494774 524813008 177821380 311815156 189268405 302849301 593191354 800028057 724457422 747781300 358701063 37752315 172073420 647626774 66573449 421983077 75627421 59294582 583472659 795743891 541480844 439355288 512185851 972746776 602514146 69404854 313483403 138138493 465862104 526960101 248560968 31584686 233275273 280137404 79250775 982616868 260025710 989457970 339354508 792581302 6022262 318804137 986657172 353811419 639983909 822734864 567150865 346640325 419349955 842833058 538203381 699395752 840866947 569163211 962217501 38443450 962634679 980502121 969817619 552361779 287844760 714643160 98655040 417933425 138953708 767409325 222587504 269076113 6142114 689281116 549712574 475382391 321155285 901105961 683490077 475111828 286444384 723117446 585573984 129785180 522820052 604493126 419241745 22147346 284782506 232513935 650390847 831093917 196666102 612795558 295269938 763673216 638991629 173401181 768542101 795124465 178672217 974940033 274849318 719888027 862375439 62452111 957006290 478742595 224494990 967220868 237050624 500482177 995849787 894179520 561305264 543298711 306308233 777454841 125353766 214028254 10234951 112625293 243370474 914984362 550102031 390601648 68665177 438947070 15848265 298662700 502156330 250931611 475296871 968493995 768435759 390003452 321274072 307286686 134556057 571216732 808502929 535158174 579273754 322918913 265998969 633185030 715264408 496693538 593701151 271325919 992543411 88803846 868126716 20895589 137443337 213578877 143966278 274546864 395726865 965939583 753539722 96305637 996210148 88265343 19953339 901746656 161564891 91322102 798333488 306401664 925842709 550384133 195896197 255596618 695376970 621398767 863563366 771012199 331236098 436565959 291562690 121335207 483835518 160582794 887823194 508292223 765954005 42027965 574469614 82701731 510560153 692090453 23632456 143478522 500766512 828137788 90659726 159572482 966871677 828164559 585992916 236176345 345062277 699907846 764593356 867240176 793082010 721791468 281587001 466675791 599689386 848075419 799157379 24602127 458444372 131490054 274629530 472898831 765163872 283477391 233141940 331707060 615825499 609055825 215893677 719794649 220981473 250896386 140133850 999414181 683055994 435947567 555797923 42635569 292990504 167710600 89265873 115767695 331196990 844523676 762606500 512067751 599183938 282091552 997000435 361478173 226470354 781057483 883077016 622124256 134191284 881301451 288089708 449012394 345093223 660372936 435788732 872624924 371885715 807104368 348976310 204758405 461532219 810956784 251555144 898210990 197447358 94718220 855000729 528107313 266063701 798641021 863913205 269790516 446218034 56765161 501591340 839859228 960818710 76145782 311576989 280544125 796124415 337341332 123486143 452048537 111457232 996145432 520863183 816738525 74511576 606736791 409564170 653920375 126644222 259443589 998045262 13104877 341965972 744294616 423887822 655593298 93683350 651403721 971791496 562307883 2877645 385500627 171017575 251819107 980698093 676398639 156130123 186033223 907691197 510013386 320573866 397537157 639212764 129348208 775729675 887965605 29717912 186932033 902495265 801456514 508249563 202744088 321597086 802988291 247048796 336747707 20923009 247582892 102895683 190153006 534408328 864037266 732129041 473958475 575426189 911278305 502457275 99882521 918681133 754612860 883197595 3408998 429160198 685087164 162105411 39569903 587451935 380789374 907490847 280449321 968105383 679525445 404918857 878950979 313106708 586835353 774828649 411685057 163039251 473481444 182845127 625162297 94733717 144562240 382519925 226286273 987186386 312149022 100246122 539691195 327235528 200754918 357615460 975052551 673623747 872719627 600490033 940454847 272818601 993554064 887379164 961793627 165452509 254549580 769315926 588033735 20324495 794331070 988973882 668643753 238632445 715084823 129498651 883241544 96607785 649307351 295803478 647667750 618425792 657703155 374303191 662651965 354900921 995194218 762188352 899770254 347997540 184484040 370884101 766553616 431445424 256494169 19076245 594044750 944823882 490325853 498972016 351564775 686113993 22814880 256646660 618767333 619966873 918928019 581608844 860257364 183750439 970817701 354374920 865021544 478012861 91045091 888969807 545427587 771772945 16251373 514593778 232752597 786109681 17460767 373893308 420573278 209995693 791931003 83451411 961461094 64403803 313799440 595100927 359559646 199622063 477907640 935711644 392016015 907937900 687965975 39054453 581961272 694197890 838994100 67066939 409649633 90328841 409546786 761421156 731502285 208087866 569366865 909300060 501684334 341055960 570894289 436331128 215428813 55478056 749303450 452292622 390875605 929871514 906596889 301098860 401162811 786318369 41188327 631480049 511675984 993880026 574169437 917325968 468216329 447659370 34018879 195513428 716923564 938363497 176414440 171975480 435664894 47312830 311794423 305230288 949533543 632543082 284553303 720825427 249475547 371513501 538959275 584308533 515170578 931247647 918741364 984180637 700043631 592368395 219436106 363942789 459271800 404528171 810967628 559577115 140964709 234281947 691336956 822287515 555956700 754523958 149333919 506941140 54447360 957689158 581929512 335163952 518293050 139045867 484217498 974475606 19388747 301616092 526231449 14197964 985642338 175210557 169979525 220970187 630937494 25476781 861762318 423490484 798083228 67052508 177069068 170151995 627201823 39070101 682357547 570290464 860683145 915961516 488243754 417781558 371193284 617939059 434420465 855907535 920289627 67229679 158978996 372495602 304476847 18703601 663386091 963571247 705209207 757446339 433593629 635985991 910108254 448633834 609288830 709985407 532733824 39903454 956029060 167082491 145853141 634609309 901745407 935906810 672800465 557777790 398780103 612303637 440108257 255552946 322600252 619871136 350173580 824677847 639085862 19209817 527836480 15527834 397582250 318338211 667089772 323412969 171211154 346393399 132015877 290790026 554394526 336499542 316258245 564248475 112940866 839847414 575782963 883118850 129155408 619444605 946401527 224889323 692548030 664736187 149817186 818843872 903369479 356866961 701030763 701801470 398602831 630972711 623319103 734906320 974449825 892084243 652486563 830759022 27073024 612809666 806107547 527027324 282893949 934610275 864933423 641183203 135351819 284774584 579532247 501014647 179849550 683253710 121804742 894931476 112933865 347199938 116856337 644163012 117249916 857787411 575826073 430634640 980643762 490354081 28186961 440878702 271528612 799730011 335709111 532906170 724164891 446054516 452600050 718389390 44286672 467086536 553488273 285082234 843190449 632190019 469384174 946787945 388292648 19598658 247426988 852546454 428987342 479309126 151636517 741973789 579767461 891877696 831258578 447991219 13294757 233726832 351642980 720426504 600096440 107500427 570037835 914532944 446291722 295642187 546249844 361454706 344266819 615706852 784614346 117971659 202952127 436037737 146861251 713979179 16626430 368756714 743045531 994223936 898695085 315985525 410370451 654841454 48009963 162187106 251510564 486053664 37388025 537989766 430486186 58292959 28357501 69233774 473789574 678610277 758895818 764314868 519495856 414509425 999966424 888672557 150837582 834126227 85992023 339038773 312349291 948490852 857991026 195555488 46994570 925633210 415636723 443664724 860367294 921996340 954500289 713316631 849222293 356944404 337640907 415249054 576800606 116059311 436044305 939347043 844964285 847184138 647293702 727790260 194828880 4905310 952978001 753102919 679199007 356479787 147184509 3718480 22155157 391018729 54891732 108485215 197366890 576625764 721713481 508188185 162917613 772989452 323216494 416021648 831959925 461633979 477816090 26040891 501029095 222275291 99973227 836378509 641513442 579627516 805957329 559345079 512078397 209697452 991119856 523623779 914757189 361509116 775978864 940230403 228231 481759381 918270709 57553097 508486405 7997740 880501567 587411451 990916433 317222413 304677298 801912157 816136 686223498 964395976 831557325 34556773 851294536 169092899 814279844 350803591 860308715 529576688 256025414 334466048 414766732 496531709 897919589 313440155 755621321 580000674 402762547 361055353 871795195 963259750 174891824 306276943 49910760 301382458 710322571 581896080 293534288 533344560 599967847 619366917 64600687 825695160 456322089 972256156 259154830 610493469 122977939 582102092 127039337 614174317 381630282 43408659 647645775 870319230 744890900 226823230 987269324 727652455 501895483 174793793 332094741 132970122 367463013 823934926 323711890 885412416 200987850 336741815 944118201 257821429 727635452 789370544 687344904 487043617 536282522 570482804 980744161 67965202 637882285 134558420 97803065 46459196 982570891 130284223 725593943 455982549 885508053 731247019 67786112 469951374 646440171 364771901 622455586 262145280 705690772 799023014 748680657 655910554 605179500 52564294 396082488 136659953 951815200 539144758 572454292 206123517 137268554 897808322 341455618 248682044 113585667 895392699 131396176 202172020 658998383 119534776 236780844 398175692 783697042 738744921 110694563 184007171 161413865 413428938 660543760 49692311 915816675 260982502 852798441 534093911 745538884 336500719 231567895 915043378 260348158 792211694 278111807 686150771 704395391 55857063 295890710 274229143 7506559 137682358 648536622 67099944 888087893 378052512 751604430 542927630 347954956 969317658 420435625 410034329 833469199 769183712 357826505 923333647 666619795 157290911 103745511 583993607 965905196 1990617 512910136 61323077 595491404 406883921 331097552 299528614 128337141 261823751 484122334 502967157 341756775 407046585 184344206 421470241 336785273 251844301 547128450 133146851 425433313 184110681 610987479 32641569 671170015 821739134 445910093 411308889 558237455 722273034 349745223 830722262 86692033 549734531 354568306 346341921 524653667 202406891 331797699 374251210 146688282 204714282 832965143 348941536 125225758 282207595 765912425 752016579 276470275 931400024 372278778 629763222 715700176 219233173 470446432 315903950 781909388 777499515 109888193 249776491 827804680 109298413 84617475 848486564 920720684 956679342 509707025 28514946 795804478 897008401 276214167 370616672 995916320 43537950 72273074 27072579 506635135 675824735 37308094 555527916 938846377 317256738 683690483 503061532 419239913 615333916 875182013 70296463 54478654 571379004 865559950 551525967 507133039 592522714 695526482 964809086 364747874 821556004 533678710 803266693 353271418 578700353 451031398 202952135 573982719 303968292 286286097 460741237 473518936 666425160 1764612 499400467 814757768 431253414 446960031 242206369 295215367 966550931 655625523 518964646 705582150 233638086 70730758 115027214 788537654 961804871 915442565 738745569 17119003 552532294 545312824 278417433 172111730 733667833 809904499 323149670 743095424 169191976 122007439 492512045 776320794 197069262 100232029 466021995 115505541 948870456 227956206 661013236 604666571 284718580 624079474 458527714 596874087 490468267 370495122 607197730 921083664 866184940 921203689 66302471 281957071 261090693 991410712 694856268 798407480 912588035 194529835 549375887 679534725 455826965 88864258 763447267 562085935 828108223 606442353 613369595 122750758 535749278 896115406 471939495 979827721 722581935 24971777 151247063 957850295 402433953 544359008 792440204 2446122 147136526 395825752 308215880 279317132 886805861 707036742 639257367 613452563 942549155 278487392 874735892 803782396 820772995 944600570 367039173 476872131 257414457 936821189 897995053 225448835 793762705 609203991 679236436 171682350 445289536 233851244 432567148 317179079 978553026 548873682 783049801 634289290 996149728 133767055 470511149 748809680 879055585 112037996 237501880 987068148 518751926 642326785 453057507 696913664 821416932 445626018 457241542 277886449 444169964 541017209 875690883 638004994 104637462 853505760 683748281 753514054 436023066 246395364 21286784 138413740 817104613 886531175 552482122 418548566 22240754 887696014 954570946 884869343 452410933 677892876 511585346 562242379 573722337 983927295 488180509 150130618 191790175 959415390 891330627 328628036 479937136 670158848 575278618 882443340 75637708 3676961 537312736 915900176 48040453 151370872 357757945 331818380 914142459 535023382 741783975 444657705 250611530 633963572 981612964 874506164 671840491 249321279 80207795 14125025 236882649 103825756 573242440 532548526 254210717 277618937 327876656 484768419 659679269 964147914 84536522 459255038 592680389 953332336 394584314 993061359 878475162 775067296 824817803 937974672 585802866 867892023 320430735 206122915 348957222 873064280 562261630 441316329 521005934 969820264 525961792 913425010 983135813 154674764 56923435 471856128 292931467 165256030 122388946 725937056 551209781 337142756 915141364 994166787 318758506 200510351 446160942 786990744 243748703 848081232 436817210 693709232 803304382 854024393 672741196 73112431 442506312 201710634 751133276 655592645 927939563 245116686 47529599 971736004 741030989 959600717 958886818 726268521 482055603 533837086 967331827 882156944 350661735 799798537 717738527 983596233 545617799 642564997 97221039 516108523 368887114 641305213 990952205 832245660 814360730 541072346 468254758 130728763 598368437 813618855 547209036 962168937 164282933 266968810 74215513 592096326 589980578 273538060 337867962 561671821 191453697 761454338 403414251 288716371 102426826 234149034 236483217 984129512 11123964 793342538 307553837 277153009 443309376 133275534 763352481 328816071 992354691 461415037 29968573 8647092 423116797 268263931 770195411 552131840 280294965 864447474 248475814 406637770 616255255 573417385 588963464 188043215 625509514 387956378 102816847 793523972 340714511 819503639 35778705 641104106 844710203 160935070 776316354 521145548 524098308 239496323 538463443 909506701 863357041 72978504 475193958 243828321 521613884 366992482 727041444 197343858 490839501 925984727 661076536 637282037 350740787 384322310 765850203 543007951 585866636 929631425 94459422 42887845 707761895 111272794 74018348 167596535 432878739 965418762 933857792 239454067 603946122 772369003 656995356 989584017 27159570 878704723 462872138 933409668 789437299 572283939 515251974 669812597 999978883 879235150 248475859 94233577 755489315 79241536 797432921 152710704 305852811 929180002 191629722 135133506 721688893 77148192 705908784 831094662 929966861 87498470 656645675 558404184 46064351 516956205 772225548 495412303 266795692 595350718 852403315 516756988 432501635 823881376 935603110 947244610 253268479 667653194 577539420 69893796 772734732 284542079 486816478 51580196 852681320 401988835 807877930 405742690 277570268 959223738 742833763 862864471 333119533 894964886 865976474 47229466 926249002 36622549 152065611 772314928 148065901 199059686 22149223 446009050 712931895 492435472 419515447 7337804 687867424 443946157 206964112 829637078 725362492 938369765 44556270 300079771 583543022 106418184 972527507 148600112 825773280 515183712 929058896 169044242 893452493 681860437 142078576 562217898 37346313 317249971 922049396 644665546 742293195 627543429 231002711 894678414 872474133 441410530 64106490 515827773 481770609 820858120 83708840 298471322 338869702 742213564 676401342 183818910 538250812 885923116 926043035 148773873 568945331 308406907 843768684 518960222 252510647 134026486 546024039 150820012 670599355 477787462 532888358 592431245 414539256 835896658 427490134 480193864 153050171 378115096 732647520 638295608 643695523 762390632 814379562 604585755 404558573 174045203 735333817 429156820 437531610 649014578 461668565 309628441 503734724 357535974 656918915 851594564 582424673 927817816 95921461 334943224 147701983 956131736 985333444 978376460 109574874 83267572 358489717 783811398 563833831 635929699 844046970 139376577 997775230 694619323 723784292 281947753 184479930 901216738 960570329 300032833 486355456 535006191 965891488 417765326 489569071 353856606 882332489 287210316 697967305 908649545 671136459 296801120 973455588 652536657 233638115 738546658 387757352 658186935 622145710 268951398 635169997 67401507 914174054 382540367 914273340 585941715 89632219 490045770 701181025 551435040 519950937 607032353 712088002 690523587 231777952 624980057 889438518 141744457 223233470 920225544 513157969 193923941 429922485 440922233 832568408 563970145 712345903 611684458 711122276 87657342 740692779 184543425 876706454 252249075 720812898 305660645 639803634 553966254 860239354 391931962 20341220 387751159 824405693 636001016 123242922 804697209 56769460 2479321 564247700 950971785 543605220 702809519 432710745 164954823 859480004 452446513 964383236 945674702 416551822 194359511 649487535 472153225 51493864 969034096 934022625 146290820 428541662 957763446 335387381 31081959 514003316 866358682 319756164 908574626 878486217 835293932 318908113 76356656 641399599 110335385 596384430 477992914 417860938 521467161 64872723 352652902 544015427 440176693 546767190 937770043 757536993 9731786 758996365 612695323 300022013 459899587 252409769 25924169 185636784 525677571 763257292 533113416 765572347 769843783 405641143 582327576 561906964 174194668 694915713 78858276 494836446 280651226 741826112 304339012 518175324 302372062 558533722 984098368 225513952 615688326 686215092 699539173 100650899 809903009 809865901 149648271 990625301 525654677 975872963 975202370 282697233 220449759 323209009 921248660 439608095 244959387 664957842 964451992 288325772 459614496 126815256 31427511 984607949 323679386 766399158 540384738 937435278 938357621 1050400 118722937 832926256 340040533 806485660 554931080 792456587 672845621 725763339 30169897 639103773 858810 138342200 319730279 124482667 658560045 944071592 901559418 382735384 449207445 29897068 848760622 807811220 699167540 724210102 884441117 734187079 231878442 331158217 657236698 51624760 969544153 540119223 727665181 42126789 75038300 341663587 33301657 437222898 329460910 171179125 301144688 392615170 932002038 559650288 441687039 418191515 276279142 637570356 341809995 380272771 127218360 990823509 541903665 831008315 620499576 699619935 295225082 149843698 844438151 724901356 409752977 795702190 314995170 91437256 448361049 706442975 805561465 770463272 78207296 419603083 656309730 912879875 852978354 475882523 995219516 759170777 19710020 639658098 771010892 782933839 751835984 48085564 687947737 246477308 320882470 291366007 722749720 715587068 53870699 461666501 918972087 67169855 253812094 370922170 248598778 879055275 694687940 613707253 533032176 290385590 989446250 614990204 679959213 932237941 444192036 608735289 363621958 447057203 555140462 665694501 805721252 573562826 240696121 278622982 705662133 555640477 325015016 775086328 815832330 273413331 618164758 439587241 352387137 714718954 703682750 642486902 502585743 532062464 623783654 7033612 693930063 321424340 201828601 242523372 580472755 360291156 791069559 727188393 872433503 361824238 351210280 670966278 876581197 901377362 495641321 697380864 543864650 518858345 313306091 219500147 333756613 353108715 557774274 470896631 300409527 233340972 599728362 349789662 128353526 13085514 813117706 42503647 698946818 22480911 510365184 540649119 491166947 528024650 90679076 738727636 797948810 552236363 933618088 307119344 415641050 376289527 880308378 765215279 11903977 765119568 148660836 967936448 522235990 420887082 249591656 665250509 979467862 665539343 954640946 75574606 705579224 685727414 554145795 360284446 623546207 403939576 113573808 251873504 55821853 704998047 162136210 977814395 127647476 488552938 402379955 463065234 123229655 345515975 402085171 922909249 568466875 889891511 753687501 892728182 978850897 412702903 535046902 441791601 584572295 270151644 606499956 607371406 405407473 465763154 315459389 271645048 479587003 569128377 147953565 665716067 280570507 447925915 166129071 768461882 112581578 937559697 750658653 316031948 682061797 550064556 532786782 428024696 899931015 608053951 265543603 536152825 410629862 107607160 692397967 185058935 382603316 634670177 630850291 438864313 6521609 643149299 987030512 49137719 745286647 581695595 291867261 708300284 231656856 997033294 446627500 55084489 238660798 688017206 260701825 269525360 906425585 393118512 879365059 135313041 407305707 844699728 678467091 132540555 55442839 846863113 845910125 666857749 98089627 619801026 888394152 444992200 868777750 756436473 355376677 564491582 844257484 26504361 765122892 810713419 433641901 933603232 582726415 351501891 417398831 816791316 313783541 730737386 672163614 778939734 684063734 980989618 797104762 607331570 890779681 717260033 582309299 262179041 543665558 411475260 721067900 555146449 706857343 841057693 372867178 225395457 771283522 571544585 385846682 79979864 34971192 395451933 350056608 109174247 3352631 19059668 563562487 680210349 331683442 387165662 804173344 122531349 615671208 504034723 914432155 158379583 618739518 382088844 5554363 203148115 995876936 185309863 250849057 331825811 644359613 899665648 197649183 333175007 771171236 284025559 113253536 495642320 523354435 188813931 295218281 865545893 890969402 386638063 953826186 130100509 884507472 184763464 707823379 671949312 861036812 958278631 472804348 803824125 810121587 405087082 700286290 166112003 702664198 203513393 875834914 288018843 80137375 84909598 896862107 946130104 457935270 243148630 520045152 264456729 385763685 630254286 605225884 54791235 554741166 49103669 982245736 840119995 616966954 84212051 978636926 846449668 324267450 213991049 476983332 479398521 639052667 85403973 785477244 247125042 717248545 143098947 277533342 810665087 981240310 44597373 839646266 635289187 225344781 102712047 300124674 989330504 538422115 302265252 81424266 501777111 559969317 575609907 222714577 929111778 960444097 405809208 660805302 869625737 222032182 529219404 478591058 150563794 733559928 51191853 718744320 501472165 67543255 916007400 391162545 469392557 862292788 232428100 452276991 280058540 38057205 902943806 983773552 117918033 341458396 521069680 536539093 853647294 745124562 310141997 773590815 719321959 313851214 634996359 611123070 906026063 83345140 362733495 989347426 416954160 309376644 869821602 983330590 934363673 393996469 269289728 197786067 649362562 581145654 457450558 166304014 408277626 875659491 206478981 54736422 767806791 572586144 199795721 912140256 798613339 5978050 267932938 136171555 426743945 734269452 61331877 541856449 983875268 18628907 982576826 871736157 452114489 448845398 674319649 682777421 523004124 633119786 789061360 267251152 395918105 410300180 538927204 218891402 742039437 258592189 1672430 479400024 816016867 803963865 122095794 584035756 415226932 602438141 64703629 559010294 163109683 876485793 235224912 306737429 43944647 591079378 951964167 428727188 781654851 839739720 962561253 268806515 910828775 744424568 150635148 839623958 429962366 70089763 599374990 91419755 842797752 247769999 630785565 363276745 306122121 144038930 351145679 521200902 757892352 142784232 517843320 62959120 42637359 224078560 946652043 142997982 500531045 884817849 868659574 410328774 274084091 735597187 297089939 910905149 164597574 816227527 609529168 785871639 482898098 193497071 420136671 359244113 652734162 977324698 792854897 309637280 187592922 149295245 698598715 444511160 104356374 843688414 882408358 975300877 372613947 788934068 364406109 460395924 727684672 819708444 537279020 19832517 544854108 497105830 566749596 919185046 719652294 624904841 528205756 74357508 576054936 882155317 239376982 798888048 243413916 104643148 406369490 714796186 141606395 878289743 304680657 727527179 456143803 822990988 791920502 218882985 698616219 205568895 738394742 958837922 744598244 976450519 491944236 949175476 398977771 275510526 290251349 589259997 110857059 307586902 271507760 796281306 397038435 164014057 166869056 291403248 459410249 276339422 845491822 266379701 858339880 774421175 686361515 89936826 366846447 816336186 840951565 427240734 821817259 359454902 205369690 159706508 479083945 756469588 682995547 391234459 131866561 880825850 549947916 651563574 729999623 692797326 65539872 454089445 907693187 380482519 464314385 391830507 978436726 319652391 105920546 961084122 386156781 565930008 206038829 122107759 250605709 376128650 270316746 673713971 662550819 712027684 911253017 906756445 645077123 907508868 984554534 964178152 803785283 852762878 582561331 616516804 563280853 846502762 680405278 186251218 771645951 884074057 274845240 964751316 465478343 138362121 576938252 591433360 47919000 869928277 47281806 810469082 408279365 398773243 492352761 323743172 559821999 890461161 311437342 187733043 461151733 545603886 142599171 777452455 867452790 322668868 7695026 26971300 84857896 313670721 503283683 954651328 154448711 667826596 908333416 653052488 321817444 278781316 538773460 541789504 800126010 659046829 974147004 115348566 487572561 259291847 585212229 339545889 180935738 199994607 113340358 34642541 877318095 961358088 218042635 925081767 129808315 711331568 414128475 904132950 133594061 515576155 348606134 720231327 961767587 788166961 811492450 651117408 863417157 602607443 315757881 842101675 57804950 926531899 5518380 982510687 294766327 265836228 794865726 210841862 203465099 14047056 426443930 429569318 440971117 699510892 583900416 945213299 368578679 833215159 84317331 28296852 87202525 765826888 322154095 407402461 348064572 285792023 586911252 135760213 786594814 327589094 528567052 675274358 452018214 417807978 5116541 650846722 178260403 281144502 486413156 689994380 53750390 161549343 223501234 612380673 283096994 457094562 714335484 787170921 503354050 367248079 546517576 622937118 712411410 491087085 405651553 590799326 738710617 796546266 330384953 626955587 724776774 9738705 442430741 284740159 784573316 472669433 998935741 63023108 522294225 497172866 1312004 579639952 501953216 466580309 213202685 163931976 123799085 328530734 929187277 143338111 296147813 756846843 936914126 560318027 536255419 356858594 511042800 287808519 538610714 727910935 939817674 866902831 585481816 228781941 706517965 112662486 356511868 874460855 381292921 536303822 591808673 399483284 395477723 477554974 670795583 338029541 512192543 788360489 219878925 317671856 3426836 674836952 533805951 969476431 516029069 350577627 710569689 56912375 747927182 703544188 100279031 512278296 689512518 163144640 821161857 964584133 225961742 47768960 984379932 486448619 63698660 635029781 530029701 349054757 276246457 371850410 286325213 193387504 801514116 539332155 114307309 725835211 895504208 766909208 637690550 615351717 473558102 552799800 928573954 827886080 461040767 872963434 318616735 721157210 691371305 870797564 983914234 127066152 268943148 940209218 158271090 169341847 424748979 377185882 288359015 199596997 423433762 167400374 665330158 277453835 335369147 902179088 525932048 721769075 820898088 977403146 893257939 389265559 318722601 233555059 337577471 97378508 781861872 663401564 583030476 197297858 542830135 498592612 232495426 217134949 827846193 288626942 964481584 166875192 698904103 205239024 411841444 770404323 344578111 516345401 858341188 954819131 968719270 324363439 952714153 88760892 786141330 976424810 377980956 397684604 911796530 873014479 668638140 833817326 491580468 630578725 640036480 659772731 515306240 307602542 490633961 838074877 625893947 716693405 154903937 459831250 806807016 925847322 91168457 562750045 65626548 582026202 551144957 251894746 122038604 967029297 807069865 397863923 373170441 410085393 564325962 13665769 565378253 398722823 26181083 5429155 997950215 363467941 686884593 405221972 667197819 577579404 331541516 589596552 506773487 608454338 108245710 798769249 411227065 694743960 201357823 879713745 220181326 120413710 914635477 5423739 447559243 392407336 446432947 903115783 447701788 913664225 889126083 491821061 737558127 476096171 83081894 329000733 9522683 580988756 944264052 488374307 806111389 984903403 387521866 72093422 735263704 764063268 520593315 905786572 312693133 168242291 581104740 579524882 398866368 225991032 864555909 847826786 209333452 432436777 187929412 788753416 311291044 547749602 294079260 965648057 656283044 495290396 341201836 20843681 298295224 463735041 848215830 22492524 143251170 996194480 896617627 165654102 917409082 777941979 973874097 824879005 358741786 275737698 806556593 3326374 788540998 867414939 957429744 360361686 669183318 648782292 345924255 387537826 239925465 593030353 829177692 706587499 323184665 491391725 526317965 714791479 929355329 689249344 532461118 329042251 92293726 637785839 993562443 522710886 730422671 981902069 618955231 39174048 564067972 138863713 263506873 683726189 183019465 959880254 716786032 359275622 391879177 719228811 206047418 94876608 417634662 809634350 939022612 341653363 396257249 128449923 656373973 948354649 297354924 204874540 157238941 852480235 24840487 675710732 533907139 454675017 962991631 521177779 832614004 607762761 845701421 317468292 322259474 537873341 96435140 75033125 718425254 825300784 331707792 713343436 756012024 744901468 440669313 38509758 30095808 538992867 911952495 567071087 510056322 791239617 715557693 826877046 186756826 519977166 156613438 989531676 276193648 341009410 649650698 9966548 650006607 582122842 52921558 182180515 338584900 874014573 387417517 733797156 262523158 609978131 556501135 186282676 64842065 198474805 593913056 800351936 637955243 197621727 914065088 667416064 20772390 185846308 835258138 776382742 49277234 199715020 885560169 117418251 126392520 107488877 388955852 937839788 686940773 674755325 220177027 883229524 527291033 958056030 878695696 418002769 975686620 170046666 768487573 855290118 141396542 508851176 652325122 963581507 831413522 939064015 917300550 352267499 488472306 966545633 280330844 408935306 654503996 738784583 24978271 828304429 418894407 153865570 817910724 856167724 883114908 40646430 881144933 905409355 130851553 817083110 446241760 953701484 823478453 280132661 940846662 740321713 348417411 758870219 901332802 190384808 630503932 877627533 440918303 77562091 531740 607005729 702795584 286075303 875557267 683495094 500942312 452857209 298795858 968989245 335641631 546087347 337136148 561490034 43394168 237664202 977948722 269820270 643678115 295910260 167394075 537095566 198843383 514791550 913804241 817238125 207355662 235474685 477713567 853848988 164267456 784954672 726405637 53337193 583791225 914741776 646253029 860068098 29059738 667155349 512645317 433872899 547953819 735335497 161775229 470414754 63954075 636286538 577342289 94478539 483294707 773737185 81661568 324259616 467416028 978590943 571264408 226905372 929964459 55942656 443283987 923768307 781036213 834329207 348710276 761167576 492932167 570758900 70951554 598366619 384530219 591503063 393851355 11306420 689389754 397315253 504876189 356882245 430395986 698522761 481984831 775565998 834677993 510206240 340268315 851752270 780650777 502241012 69167802 325969825 440868988 811860424 69163150 253327152 810076997 262324148 997480546 980804307 885413889 500968289 994380166 76934713 885903544 739779484 212387620 931265017 517983656 330584232 920017746 935558339 194127509 610501721 125434023 505644206 590074629 102425011 980811375 346826480 379505480 482057186 11561610 786782000 407849374 650580305 347625493 478828890 380076950 963105742 722479417 911389010 801726265 249901078 217112607 922968691 88187693 77087665 776116247 314056043 300471745 508467156 184231516 560379242 924527728 362141665 381989365 272432767 725332232 990990143 130855208 766156015 841356749 511535342 401892966 383006742 85525591 59442656 893719690 743531267 366818462 780948586 655652839 311318050 970719592 331098228 116061885 253789934 667877265 699683587 676323796 982709482 769166458 790029512 99144722 297372205 181662106 935940546 954417467 526878121 602696001 103161870 599368281 996019951 562946468 64580805 39537695 364066093 489672549 819135107 672163823 708179161 194323222 80419343 196678116 54287757 348104383 41160286 995031314 639923064 951557633 86591073 82686723 902754900 199969901 561320035 186004295 958522175 523240402 102479299 870457774 580439588 557762754 208835640 495747508 1337449 651892074 495719125 966058933 720201397 5046870 806049315 343037696 196734683 531643289 588761441 533370439 380381461 443943528 168933635 874250224 804096640 178525291 116877669 487322169 127920411 695148862 810914290 632191932 604831744 297201005 683258180 413406098 918930808 690825206 442001712 952797179 689921667 178228135 649143182 231946134 409170583 662627532 236111229 99943918 987625460 714356058 314359105 737664804 625238779 43685098 311911907 212708374 441114054 59654903 539705524 141670604 638710216 198456681 706759453 979794233 935169420 147138885 757551922 511178427 446227171 787164493 965045996 269526665 708141225 84126008 104495774 26437404 63929740 673319339 370411572 545211521 125314202 925548464 669171985 563061142 319567182 961592782 81662218 394226120 638766836 410453742 868295708 890313448 694642991 177769610 508049048 264224950 412972640 714729851 863834294 47850225 605957526 375230426 917519823 387226743 120827195 926868421 644993693 116262789 754167654 841822923 885452640 96221941 705404042 687724948 767963011 715283692 395706980 476442339 276670762 623197534 815277095 505935087 56263565 800233868 442866705 472527484 74240126 284150398 464751499 164952202 312075224 618412153 170979841 677663028 473131988 770949816 666591759 875312062 620443622 377362918 401393622 546295168 225912672 642806024 340522268 871204525 202380430 412427834 16796911 575686834 605039228 910266567 642812400 192126182 708565219 702609664 160778721 845756453 407928773 530804522 430462639 920675393 179884756 449269259 262061315 620609830 79420686 726312894 451758666 42217512 928413300 391521860 461163480 182769102 225059562 358567327 106278314 782603387 64343041 443877765 747254972 304551742 794202403 815957188 557956403 337033987 633442649 253641074 459057224 424270910 408550776 846325812 898703612 818339356 834037807 516651450 511661169 262744306 954021787 96218442 592597852 220206388 384120184 868359300 603277695 613960185 424839849 405122391 8602570 771402980 959041294 988225957 212640798 611710169 332079107 875399874 877724195 135777082 522924949 973980209 859983627 607492197 158749921 890090992 249722236 792204142 363533653 707697256 816765519 747219595 69483413 243376687 365404683 304602843 700325429 760347981 485984397 917422422 352280907 463962215 214591126 866576166 637571073 544927308 938252318 902378212 763031160 548492725 275713087 740831216 788096613 531066723 534483068 825843579 203380237 386638137 54229689 221720228 3510811 326290099 94717667 142767416 665725687 532239906 407253650 709147684 118745773 806084233 253522844 958624277 907629884 56493297 816471627 231183961 44529316 535903763 915360327 936252793 924270740 53596281 680456509 794395677 917243185 892762823 415439925 893448790 513441941 864241053 741406441 48305169 202372342 75713640 778129030 137017991 472859667 992342768 773293451 207491543 923827902 408055844 825864254 362614208 869807642 963242220 76826025 285199080 2491981 166801795 829198897 356338488 309589103 40012251 722328397 698182885 599949006 591355000 368664859 131242356 290174769 244549887 467506704 950766892 621199620 260446617 995975009 411955970 677575841 987796610 220615281 988701390 938923460 109945265 92732481 176127003 899471298 469703757 315066220 421636935 906771956 531497059 769537193 639363854 961598493 174345152 769913169 258974013 81544224 156057417 872330347 292488556 958137931 801337408 772579003 747571980 333603197 290009389 177492951 843988269 256789114 164246902 153161955 864047502 652095949 202944187 277712869 252394796 525662196 233589458 465028531 53669002 903637545 663091431 917993056 939083203 916155985 50393917 702041231 229982727 109654479 528850833 500119188 920697146 746570714 610049674 837530822 403726272 924692800 172011959 657192221 3882101 799858758 174692053 584874551 138165144 513460034 486233901 518817647 515644129 111703167 635440703 350742275 277178335 326872287 434080173 344477165 301011956 718222029 745730045 580864115 252698214 421869935 871271716 711575100 315054096 673713094 611358327 474376100 472995521 502864563 412032673 298946692 403599113 188225240 489237613 778832475 778985936 861695465 582063930 386634991 249230136 434833475 868368321 858402837 846806085 953839402 359566305 680333483 473304376 239522324 896855635 431691989 258478479 901251501 155373665 79932149 375986975 357212433 453204918 861159810 402659180 510034756 988174888 677606053 169239497 865691097 729493974 24748386 6245537 835029112 981257595 398167833 513351383 219700707 700923028 141161450 538487331 969281176 484801538 336007171 417175451 276856069 801601170 978814157 253427999 386421210 455474645 383190228 900556299 291888061 793501316 483199976 785582852 577388710 443740851 28981069 449634417 417714125 557509319 527480388 180817653 434130524 700050983 149071998 151311249 198786504 55281202 602258521 962343944 261840462 580447765 889246172 963586663 428811089 913989416 554911491 510505561 265096480 672996768 20128129 549008061 64970062 172650892 34996058 931449310 572691437 631102700 621993626 218568570 173648714 71995736 649991628 160393444 671836278 768545575 761162957 342453973 326055178 679845080 477230131 712672087 906849813 466539091 731568593 538499816 627375097 594390295 462511882 272837158 534532315 243997556 454033132 771471823 143933186 747611213 248856765 983565083 715459565 579829465 483499320 242011827 73125802 397428398 297862860 759924170 901160118 314682415 544078450 500324249 286816461 911509979 797756316 167603980 235362891 151176282 210959875 749731963 231882741 214882891 822847837 170487608 581071412 266458828 878432960 692569124 629527679 58683833 117606301 265034480 387374531 374881 59070523 342851417 566394586 482956326 345551424 990928428 394714011 895782447 205534436 576469562 902245855 284095473 62129936 285672079 890612434 357697899 270390353 631850143 36664581 128327458 911892003 853473016 492364083 858877701 14792431 491229082 492404883 70816121 313470328 394316441 763462640 385794307 349150290 24075378 36295442 530427190 288786441 493832014 181566060 482013521 546643146 760530048 479576573 455758738 723393757 766225469 656290115 585708865 432736954 853289544 234794629 737199096 820762926 895715482 4066764 692693531 835426979 822112707 298492156 713831138 687238190 566594106 912113935 76825867 745329882 111578563 522202481 563730495 870935218 70424567 808156961 20449862 98004135 25499535 433921821 917706610 396015306 189895032 347622327 111337838 11784151 466493268 990123397 15378207 470222644 168203103 218333577 249730985 863941919 371030772 450678303 465542220 747559425 9881145 444381323 487644257 362829637 935339475 41759337 992779466 969749313 900188104 981891585 77356408 93989624 581797333 333012713 961031140 813009233 261985521 549827831 207199725 868482710 874083776 233810665 515742926 256543912 652614258 899420874 299924459 246128033 511096574 468144968 403063049 684313510 372752006 64422760 442466997 848546157 280136223 93437339 177439639 340309110 230301392 911343285 712309098 620480419 197784181 190850802 707959967 921251643 437652614 481847148 881623187 303979164 373346036 312685841 98219511 418041384 266736528 913589908 478828123 904810631 348681251 20321662 139694467 522267232 419422665 43863017 530407311 425948891 50315551 368511725 515160179 610705355 526557916 905229005 123733111 815295263 575609447 531854817 541798911 946085635 475585857 495124508 872712085 826080222 87460094 803151136 290984018 947376770 492242857 23229865 198588997 692155213 557370182 960793230 683677314 681940290 516629475 746081404 921198948 989000257 610996963 871067372 134064808 598111137 760741100 953223930 457132337 44971511 565542730 201281239 538168324 950126771 827309897 643258885 621419649 555420749 679784895 652716873 718941211 262870858 927328898 241839941 291159955 198594250 949926846 440498574 739337252 203703674 265167575 482620597 705099619 690893540 783508375 390893923 595344591 518437721 442325658 196369189 940227458 972510078 638490615 676531193 29970216 396027775 546684309 950311938 541025828 471085832 419318852 903315848 306173420 956571973 779361873 203996280 128186062 983759779 763123442 271747245 692010684 522864082 211993424 859744747 587469581 721471721 857420506 262479017 272492419 187602236 34656053 7594166 255467691 174033767 159529541 797157348 920275687 316298015 316685123 780519592 289109178 243522237 10730249 376005566 578239943 323857953 115446814 330844357 643379771 285525581 399684574 419734795 48054576 621350042 642954628 653197868 427515901 946693376 998667108 252229419 446111400 131612345 39279736 715785733 462557676 363042270 472037138 822138956 548663673 485510697 217520432 426915066 732974692 113515219 547196622 489190000 712432861 620529646 180582369 530925691 460079380 824980676 191458695 399618910 188883559 764206039 638976095 704457687 889132723 462036479 266160040 269633137 784202357 809771448 639387498 375557664 562037644 726084566 132566558 267301163 258437800 600439007 156340174 188227172 194567126 439024531 70075891 517192166 879418398 845918999 749565468 52286501 927583736 785507909 794918758 149404542 612986065 391371745 646166967 256388202 514955140 934232191 768806484 20679649 398284840 504739630 475907103 563867925 201750225 552629129 657871879 117312449 633373286 971563458 640478348 282846923 57850649 719515218 594906151 960788492 989381165 519372338 767297997 666468591 388580607 728092829 698814997 485983956 751011598 579030056 322235004 783136792 968712650 571737530 296137560 771277430 515741083 999793127 114378297 794057751 983759160 431416224 426263990 22159746 24479875 316590512 296197137 698581208 98029054 844246682 473366170 224882338 300030252 612308976 783374096 269148122 213117390 208455515 910703140 228462666 876597046 809994713 905368409 935595745 567668536 643843818 133285892 877798923 969629320 889236057 947862479 44893640 314402030 288018201 538336378 383155320 259397350 296996318 988139123 898228493 264500367 665856250 25738698 433426742 639429981 766682769 663819806 718781812 486138262 586280211 224270620 97213222 233803754 90394598 797134655 697195808 674203366 944225042 297349140 229022751 652641144 349649552 353282310 309339704 500302515 9409259 415359574 410209351 211635968 298653872 969304198 506055469 202814622 399162445 418111228 558891035 482993511 759063336 780736914 967810775 864696254 543117074 791171019 444135058 968147880 86922004 249669958 13109600 416812488 726355367 971130241 103671078 826382357 780444360 98806220 143822351 827098659 496089260 684802950 328253537 353831986 712688744 61642368 50000252 268526296 445512418 143668546 916071501 276785708 516392370 112932383 259013713 893412176 660421077 343199609 753895686 606516559 587192172 821814860 431647210 230998452 371805489 166452208 968763052 991938205 991064429 849628321 735482688 60540223 464126808 731881524 932766166 618698711 898100487 856377433 568152825 529565614 439689398 581065518 616114310 655587546 789371986 712445813 661481657 992909492 957026293 789202203 631100499 563283988 558176705 427807096 168938813 942330988 215733820 680282592 157634462 745791974 785684028 314763469 890457288 824642898 648841807 742088440 898776971 845243022 481910946 481413704 246326970 77916051 708021379 448939908 509507960 642118687 23641717 210737133 517589303 940223163 580833309 587602796 985699190 992768361 180668556 634336777 642673555 77594654 517515306 973778070 645117766 421009632 206607102 849298089 784862014 348016858 224411148 504080712 607546128 228142351 483675385 636285155 680605578 608751972 796816069 64115699 962190340 806996725 62180415 42131553 554082051 949237286 238053536 471642149 658398873 491625655 62720681 886935064 152200473 707224003 891027893 362720382 232343062 911732606 130734548 829754159 675354348 136701833 753182652 852392111 790095529 909361199 259318346 253916699 983974251 862093683 73438504 484153528 299631065 541307563 547749245 957727399 550606990 573956966 793928130 479975686 141231541 633122085 896742571 82542147 83363284 176310390 450619791 502340028 430218365 99476486 990149895 644876242 291035386 650321199 602844742 40412128 592777149 984876377 674215036 68715923 457582011 241985063 177332958 977470893 237276657 23330110 719424106 583742375 902586275 453697052 512662575 109428943 884462078 87666630 173909449 45295840 634507431 468343189 6776397 900439590 569248165 223549297 23715810 179677828 10734109 722721143 153335740 801025851 503788966 605448810 4914979 834935776 972432183 365778617 262613587 868119267 634415402 974274613 788111293 157134042 582443603 696278105 648489689 709379946 16218849 373398752 442205254 287015586 168315841 42784748 375609369 860805773 91911602 438520998 190559889 932068275 579762707 267102552 289369772 844138489 141922432 138480626 10605758 393227082 752446012 755339507 538702417 824578502 398368314 340396491 28003823 270910887 801259320 274814464 166856354 476485796 954405164 730546033 331585036 924363463 927755327 633867024 110620723 684623570 870694406 982501036 67627884 117950155 965926070 609556815 696543467 577416040 352900012 537007483 875624082 425310915 905450560 426993788 372877519 31653959 746398390 636590431 41425097 146363255 942002635 393395136 587227282 250261996 228182929 715532402 692961531 791107470 750356482 855076285 930012793 642532591 262869595 178940946 250447079 30510542 370137363 173534982 909485400 31247933 932253417 327279094 66685444 548886598 896958289 16272770 50107345 320965848 339072100 448235857 267971821 769228987 113389739 790899225 152199438 138643708 904951664 213877270 308992944 831522598 752733312 463372534 785856719 270518000 420295413 192288343 480721647 548042813 98814100 100349905 999858255 210992956 550340201 323388679 297071801 218596118 401612994 110666877 427203768 168177586 841895003 927432500 347837432 832546986 238939601 928911405 133723628 873527611 611611069 763518513 305739449 868521081 833692313 335657520 593670211 525566965 716475436 119470294 163979213 990508389 277215077 367116644 630371587 818500146 255076963 119700352 275577014 85449658 347167507 422224331 765439885 111733795 535904199 394072501 446990459 614280679 816621343 892472323 57565462 685452785 819311610 459436876 260631330 551323833 932938348 80492652 719154556 387354925 172727447 13265215 945809694 57073832 77867196 463564566 210605560 426534861 116774774 926571411 578107550 691388205 543585562 139033712 251215663 399732761 135221333 449707348 645890742 827828389 326933670 803118963 831106381 350569620 362918044 342426300 521097077 903694563 887159541 65437962 919019223 194869316 789897540 280339526 621829158 569090876 977544393 381595306 813096711 781477587 353782889 850995429 671828535 388367173 456123865 708909462 220479571 391422739 734660051 571650761 489531804 559118978 389524096 850656970 183910331 700714028 418178605 839353204 529674203 2403716 622045572 485495082 784702880 888002282 443820849 637573711 847338742 873894774 617874853 569670513 27485232 646913126 243292516 408811343 980748645 256068820 276168437 293551198 305797696 28473896 320681236 644534292 903474290 55991941 302037591 782283110 746780663 65305126 501299005 968356537 499376160 92719692 778856764 980991395 403221068 674822931 811557085 306491156 261503603 63502033 949726315 609073214 505248871 708181033 440460570 232380823 207038319 134978474 15816249 184392862 500409877 820663089 50165841 106992752 789203556 339133085 318839330 385219329 748095346 263225182 206777321 746252912 364242628 411492588 153279749 616934219 335283662 467598816 444798813 498557881 116611519 320585895 608245205 465347199 872359998 394057594 354338765 26560096 837658906 652182686 839119059 668220180 81777767 425978699 32254799 158920755 160392634 296951378 791907368 577859013 501349420 121478470 345015000 663790395 322066101 459510581 981829995 763260536 737229623 640843027 276995559 389242375 842307808 657052298 611407371 283821825 768898804 89283943 34196308 436235730 767972337 987358430 538809167 874780800 939706909 299944055 218312723 980951592 666452394 706613556 711027125 174923123 380850471 374105118 398002820 306178417 168315811 763136347 81348599 666953254 585157134 542685108 178495772 641627121 199787695 284744777 931799499 52195995 861104864 155547852 913601576 652743815 612871159 164063244 656425955 879089925 902601255 186698031 156467467 778274490 866892614 880552660 928852746 708139709 334317034 58382218 106009135 431272477 747104903 845626763 390167757 94683228 789666829 929866581 710389932 323056754 918639883 151314432 699725756 147505020 431579327 686205672 519366404 815655232 433821229 207079451 957499352 147528999 316433245 170485578 173125322 703447013 541601791 167253192 131352160 513118791 146737505 717566733 88848598 160953162 627476742 391254840 142493105 229996935 362062258 427702889 213606833 900273254 908047734 508072644 131415607 24133514 319482165 210247241 501118343 367528175 364198441 478179314 706389934 907295026 110153429 370783415 776651855 837861071 419015173 8654740 168831750 98281400 717322273 324721086 855907503 448033221 429315685 203437240 881199976 469004886 179267711 42321674 426017337 141211953 482727221 2141273 137844593 531222515 748224117 167297660 33199132 947626139 196261868 62661899 510494278 237360112 923484660 110576386 920350010 698945335 160280297 220452022 407360624 391903873 992004347 596845208 844712501 437295132 474834602 443881383 27103962 48980171 504103164 411300491 865160552 966915141 422139371 78858533 322354287 178027225 966532114 108796208 559560542 449607384 881988446 124753301 762183371 535469730 199890721 709166919 152630883 297130035 588606658 671493269 410799363 334658081 5872014 374299980 510853932 424404955 277998699 855818501 597489429 842076677 81257817 849701102 598800130 485405495 961597880 694038759 861442867 74015896 92935270 539359546 47599618 767484772 894716890 556244308 107184748 150994398 199622236 348694243 362465034 719860062 461846272 576055987 588508925 188785716 276596816 932093006 669016982 909153005 327659211 536538746 555104021 489647391 978375927 265516497 409857813 11156742 429831158 551601737 962398345 70049024 692348393 603511169 722348726 30405607 767868961 778673592 536473622 8794701 919961529 844465487 197352772 695720256 567181894 54739845 602665765 559584895 7500764 393977983 740702211 965947361 990252272 450327226 924784336 673187103 439490876 241938163 838696012 72947957 618418640 719175447 632263939 57470032 623680883 840788790 368643663 705687070 855867946 243336612 16592808 311265432 4044361 503482903 483439813 84884452 604145242 337281812 619528262 694262059 796890455 784058973 375942130 314290815 745008543 550156144 987516376 253927795 283004288 23169392 189730532 872307598 941005714 758973118 226210125 859296981 805253005 391324738 495399750 436032754 854991877 867452994 750052306 906693201 931592815 297034730 995642725 309918564 908036234 65449307 688947582 549106398 675274207 616657696 176151736 33956250 948166627 761118939 960192357 180357195 718581989 343491198 682654016 801550584 930526347 773880785 168380314 777783715 846597151 24548345 999914644 673275740 68935940 351709095 387503421 527860644 65727831 293262202 411342207 973499023 586863240 510459860 928361551 465391403 559691208 447539257 120026098 742217220 939146288 516666087 41069243 668207137 496819642 833689693 959175113 288331573 519144841 439660950 184248450 919694559 654361422 809876047 229370466 428321937 5176538 879673096 607064736 940445309 964368892 950389947 779648845 765052187 526374908 996809368 869336912 190134433 480230280 756216964 19810417 366283612 956620161 740322250 749287275 467096797 944279334 561233737 124586878 669965038 628673271 803129572 338242648 744259695 990629083 529854228 590459168 650501297 406311680 451624104 185049683 929704273 588407167 985934618 114671649 523710138 174021612 997270580 777350040 882559217 527198715 283419411 935690711 875345775 803937960 327526181 901012692 718721991 369541352 994473525 722567907 391124133 880441317 795635875 136407110 888496753 174192035 30545648 42884785 519005464 253070982 957199069 20534738 535567129 851475689 96066322 944768550 98826097 622574275 832857323 412029464 895784002 238135792 207465948 134654292 389286368 536971266 172900275 879852789 885531327 22360111 966021937 4146875 106259852 807857468 51599099 878818883 717835936 385588875 728728470 784337497 640330577 117672640 280304280 827324766 562264851 483323981 463861632 171502811 453301066 820150383 865046421 210766037 833455802 645549606 292246901 895982835 275924545 634513291 905026874 480313835 942043861 208186619 371555825 629020664 452347053 540808157 293422141 625489986 951836227 686722548 493293102 772183338 461394456 227037665 525566283 189510376 422029534 61622193 772987984 961591730 845051724 790374223 528523659 153350391 602016717 819429211 337930573 756631736 101053300 293753932 247197622 489534471 654995057 100619907 906774199 720959092 277834474 20852802 539448306 704161132 35560920 752376158 228569742 384402161 833042957 665408082 295027959 184734631 580956890 398481354 735975498 703377882 557593057 792121878 607512099 363534413 241507357 191647828 471639684 878319576 979881645 532560373 699978135 232611816 358988853 424330707 527553658 510259284 770207607 532755809 438776682 506090220 937821523 946475491 615726874 839070439 540850002 169901072 282006447 620756656 82659211 680041308 675009989 929804512 876998511 231497812 560464468 806708273 186872609 836792765 27410470 758878783 263038110 775329830 383528820 665111807 640543988 672327942 554156402 998119611 49991338 628796482 212285323 939403683 939492828 130761127 987458355 530465096 748733208 129401382 322526677 981258345 458259629 461445665 883044193 801816342 961976857 162700523 366157816 165370734 442537162 183211154 285503471 940824278 722147163 315230302 713433134 398275271 434256831 355455673 996809685 353717335 835339803 252065395 187386322 638684599 408776076 832879460 802841558 926315361 898941766 959264433 88496507 811587843 382666093 964034741 936727804 624967080 297450146 968017778 304221955 561142624 20722939 552415903 73479638 627160354 673832134 504736878 282210134 422794607 80154175 164012777 344495438 208521312 951410451 216685063 809733211 757956828 30605282 142577355 771367200 622240140 688052867 767559684 103533731 37849172 910552797 476447726 748851417 375320816 862867367 881223344 755962293 178370272 676008342 935456540 130682055 681063064 486032619 339044175 389702490 842132767 413390098 196864754 517236818 220385360 303517115 36966499 89610655 688908289 416682050 686448035 866898630 798878345 248972463 297661917 705084901 231823150 948538130 248368864 464292141 651049406 810148615 545740822 461858119 715860992 20766053 539095282 495439089 649166481 453312781 266503459 741856018 273153947 452971011 148584700 504331244 397415057 189746444 14758571 981540839 645897651 93127232 424338324 340519196 634340809 966350631 863194077 230990376 46180421 975173520 254799686 840963357 466811146 683741336 244994816 688312057 677298346 638518435 100477051 684871130 577089833 437227850 621507033 181092821 139788870 460736600 11278627 862588592 975521926 756372831 954891709 948460024 879959371 266144815 849917153 540543316 91469160 929706337 667712084 113908324 104564420 685377371 229661269 539946806 955263789 282904517 933686793 231235900 502381171 561328547 764649046 350564793 234596583 660078141 658565492 323945460 363458191 477890246 127813013 122024241 329342130 410946159 994281733 280172967 191313242 891161690 582059884 361999150 574659682 619388121 104063691 589232712 979999817 36365908 111479419 417132483 641520124 291632127 542481339 244762371 517086378 335355585 572280063 461057510 117174285 905654941 162647896 390310011 761996873 359991103 275749543 937468423 809218170 978638523 899836426 477255815 968674369 7291183 149793244 946230422 889639801 360538250 656047914 519142058 724341795 280522304 298502348 841791931 178315962 514003918 179310865 846492688 603040756 570795005 537267510 50471789 422923435 268406659 866079273 864336066 381328493 635507808 763365654 121180208 804000443 656115792 329606085 460299174 821064165 340167655 459523059 928625652 449077780 695842050 663440064 194888304 675635930 457005138 288915511 434893116 183330205 198098067 770253096 453081269 249171965 984440196 717563155 272830410 386026807 933069496 979570464 581239255 672412866 321414293 770529297 8763471 700595349 875427652 363871299 182038198 141224459 186001808 24736353 254466752 653707235 545927734 840059082 609635981 628750259 469477055 638549092 294695104 81375030 186743601 978380540 335938130 116855560 145419020 713708250 713359906 329365196 961961902 94188376 404653385 48769800 266450896 203415575 658779544 429552552 836011398 380848652 135139523 580576780 959208503 582986121 465751348 205035500 698755134 123969711 480965841 831059294 708910419 469448825 553772812 951020507 106057999 66806026 547989888 232601431 228047610 930398875 867826785 68338285 375941823 713092627 840309275 782216421 481306054 417412361 612432922 537137731 173699714 75133623 334842273 645578384 413661611 297397602 905743014 690129073 612360889 538265789 446362080 301289192 126244145 955441208 34535259 604104364 212776315 550799621 666426040 24818729 934033224 142963791 503956822 675221553 510189987 817054104 777469732 553718706 882771059 760566640 260683433 491958173 13974059 516493697 394924150 60316654 24084925 108727777 458385042 811911149 990470857 21419555 371252398 391264078 615720467 635557897 89724749 393605992 371708296 976701260 300327202 289330079 485793113 910903558 203503276 354780438 826353160 836808045 239609992 917657692 869084735 256153226 968077162 618613434 391217064 401385105 984462880 145968089 901890036 130594766 338012764 890209735 906309447 263972297 289538555 931080726 422348865 532970626 961744441 533426498 562909006 352560981 750304620 368108914 799383817 250999015 585060641 863474555 666738445 888218763 977545578 15568528 222039009 502837690 967780691 553125025 336572083 223871472 430650328 77108390 136230002 247888817 927292754 221617659 382889196 617097538 801367871 199419635 751656247 214048981 66270937 769169747 302298661 443440495 941975512 322217067 218818317 921931279 525938767 966250998 387629883 192242178 57173000 917552896 192367282 909661832 393143061 739695927 853061304 308695336 992062142 446701821 583715271 466653690 731402822 302613064 293751156 181425813 756300993 980916494 189458626 648475144 74247089 793673166 343486508 478492478 359737288 894669926 886930738 843731845 481390902 952306325 714867753 469385555 642318485 374561526 699970348 372632863 593030191 523429816 543590362 323394065 76852380 426376681 404568704 614612569 352538205 580546612 705825822 339024001 103315892 621829441 824021037 704524496 742768596 112034090 825919065 916824866 946004665 384854699 279309114 394358993 880232720 627499806 504162269 118202342 693663595 810864918 314174710 908738691 164608996 903456183 659369141 691155510 77220209 138864496 339025962 649633465 351764464 712118171 781113148 883999874 730975582 375627697 828653116 650878163 760948601 23705222 754008219 388029329 635889940 554968700 618036301 580613603 10737726 634928299 95829728 296675106 145388594 21283610 985786100 927370111 486323169 754246782 559794034 810950955 707001239 384886651 656760536 450006648 404902514 893702655 301944136 156145553 396017826 681590558 27865825 513046331 796841070 709193895 8615324 102650764 981831026 57785 725685642 14711647 210009406 303228719 468488369 387342519 273146497 697700019 578772032 460727566 80689854 640878884 1515227 558679059 791484964 906275887 93861073 432317067 674985504 813444077 428493675 347858038 687779186 173684429 458143515 853665255 18663996 566608 810463324 258283153 675791604 200302475 537757459 345426309 703935904 901692103 645823024 245650337 913277552 796727836 217673665 214635799 563981226 120891163 426195234 572067126 744411926 491807954 404056687 928589448 250076159 213721946 741920252 77123593 683989936 83898672 897076965 436724006 970883759 187731675 282832598 705735939 325428766 38873032 242288503 394311617 3256134 58987036 791939865 918461693 248242065 950679008 704361664 36280276 26363965 388984467 776251045 633965252 967559980 765667219 341720237 838226156 831312839 559927057 72640282 363288294 394015227 19711855 466510721 764844910 709917322 154010491 589654053 924558467 199690808 891352096 97293146 114210252 305404459 38525074 203747474 306099810 315561699 895433869 273919629 769605531 336828641 983964790 726658844 459185549 612150302 428559311 975549242 327792113 1034633 240733890 802317977 602323571 2533699 510546283 447881548 443410629 529130001 498576256 187417965 544350740 451526286 2097581 95085020 393892510 429511765 149890501 241009549 905656517 468023158 790199130 258458459 734935943 905157643 108111081 840710457 219269405 975636937 709502215 290412655 219789304 640833046 775175848 592738943 826376778 84806490 953859651 671800876 93783395 406814399 565095914 507544372 281931774 721558088 480458429 423705424 413591859 679113092 550301559 633317347 675733031 159314354 701805616 84026288 109706365 91387074 39177166 279076424 59576133 778361243 993824882 98295991 444636590 837054368 229027838 434363106 342328183 75059555 279459567 914708110 483264970 67384 688389632 421975213 992433524 790763151 334546800 44411017 13158295 208068774 114089798 910435922 626950430 457342460 771131330 488209873 180299516 221649428 683870024 118921104 966736773 273276582 504707724 459266326 783388291 371578239 747266514 250020373 572955658 719653406 49276241 663663238 493675094 716597127 723641361 986535294 859475485 721328247 940927971 779734097 406585428 491137503 477833364 415188547 706670674 309436943 749369041 598406544 713006891 942333456 297252238 652885337 429617783 348281354 380898597 704485839 271320400 437517485 23473695 950919290 155171707 301027788 107393183 547437558 990615207 765255716 19894060 363686473 235957786 22886728 743311910 664117886 125636851 541972812 380455964 924341260 865238268 365540868 380906028 985443243 327053105 803444719 68276298 166251280 525837072 12107292 575184196 578626165 135294916 549589052 615372533 991554352 312571346 387655539 407321421 787880386 254456140 652395133 861331251 125284244 880402571 80485174 502037259 97127060 165591436 183724490 53273724 26898140 749911345 461050934 255393521 361266621 41661051 941576740 655686570 3993642 408785185 664594250 129774313 73359084 491691930 436224778 404563848 543113362 235349596 244289596 435392820 446451703 264832300 99681679 866502410 338893706 513630565 22917488 276053605 39283172 867023509 360628262 792969799 462220678 471664087 642920097 94895127 147758215 842023019 684633444 181582179 371579891 925299173 223696077 41917700 251351843 116562536 584446368 990754281 30622223 594442423 686296441 294083913 735672403 201415584 643748351 895542700 452663708 453294843 663890773 877292111 319726699 370739898 414339476 705592872 47503638 992083022 753864114 102467647 817015337 147980410 787775766 116723565 522223295 195793013 591090767 144925797 322196940 283194606 457513703 316142816 539599807 29778840 869424386 417457208 554199825 98561428 472370190 966679758 889393886 187783173 26451498 561064276 430541111 521619186 825993571 436161995 220357203 22213442 333197146 970419968 757288897 883341159 396442681 356568935 921942795 43024554 8665560 81226035 988922430 434960460 507589851 46236350 434010518 737943071 620194472 707810092 829560409 641104456 165675239 125010767 850703075 9075084 723993117 677876653 631418071 969945947 551976885 860495652 996039432 49398567 534820020 144878057 181393489 576808633 55537578 762499356 460628057 112443551 436833560 979691169 298097486 562974226 662946348 469643437 25237671 565858632 342080753 398239019 304605793 638296527 434747108 13531616 549563695 566710466 230623527 34478123 980949085 994725681 812165241 549251055 334425307 247604108 578258485 196164182 929627554 726052958 471371881 19731633 355426937 84231809 866479065 456752007 475944013 70058525 491586597 368064369 685347911 93529485 311030189 409922459 300516184 846339796 498979769 955854358 536304609 762194023 886084404 244825383 794547086 183869452 968460454 574250900 318286995 375989056 364284534 482615824 44491063 645240174 773167737 673124403 58982239 823936664 762899591 961236428 745552580 671217115 244036393 92020936 510559962 777320319 202910346 303165299 75051765 646569223 303065003 591307781 18050182 860019697 338851651 590579136 885488958 806421214 498008685 93278481 368223852 840349671 660848897 106960940 729434124 610715035 245555689 46523668 810836884 903355606 476342062 500082777 660162766 354903310 812593334 657934261 551401078 99989422 951083905 67586739 799386744 459449934 836155893 213280508 852832546 778726714 378102468 327523438 195552269 312231736 828667546 765690411 315983313 402713436 769198208 535192646 209069511 886325800 965995673 18315482 177782532 929161349 240407388 304856137 31403153 213225649 946647750 349258081 453266288 778173443 790370484 270172883 56439614 700128426 68152945 517526766 382261285 811920542 988468996 384814 892643381 198396856 907861940 780222726 808749723 612658828 129162725 521470530 269222953 402660912 17871512 52395912 206398217 883395651 716021163 668410890 892521294 354684997 291046299 131784012 714611722 203038468 609356501 288301019 768882549 878907570 628842359 388112608 320600009 889001118 513117497 806190559 521683284 673064443 164247422 943014927 316669064 570553268 109479309 936716806 659176828 530993793 756508977 893438209 991724621 327017071 194361195 210845766 322675665 784713285 715434517 795557467 770068779 562481261 63719271 519889696 730580185 973763581 174443786 130438416 536308685 876049137 472882963 9579037 585153817 947731383 196425638 211310865 693580210 765646367 538667776 578858878 708805658 632896245 387235067 174920361 491189430 293104963 404753256 699339560 930744015 861232826 869333569 348918107 661445390 644539057 557571712 86332023 696503355 110774056 692257954 78356240 312235544 892535435 225832770 733994021 220259520 121659572 84961596 956158136 428054712 661983289 105376595 68724815 583649294 926125486 626984814 182828791 253391287 623614526 393313013 797569882 541985228 239015870 29149109 770987873 722846059 1902662 654166874 169764776 165265630 264812967 632167383 684211805 776878391 428981335 113977185 535938104 685723699 624559369 359643824 499492514 116148572 357159004 712299807 756959799 501598705 866904803 81505527 630337461 899875075 796631648 53790574 710354548 371728633 221961190 701588803 200540869 357458105 922293802 654476611 488583206 155248613 589892189 265033942 942064929 814237632 17463784 737024183 106830897 173821868 962797400 810056661 645309153 850312524 311926904 958916593 354594417 369442542 800341156 844833227 254922915 222039669 595892278 343062923 789399206 281685058 299950657 104251616 177282560 349958830 965688613 505558469 593995177 432811576 515116128 425496357 805476656 448008167 951236258 398114959 58290591 979254118 561795063 47280695 520583761 835418810 575437828 462704344 421560558 961375677 896979742 572976765 405558302 676538767 346309034 831271977 676367303 104081338 160887619 549088736 268380725 506961697 504950019 539850938 765279923 918773074 699391445 52254954 290935211 17499628 86922587 196647192 118502120 970557018 229024336 141583251 167010865 769485810 586323402 973318315 482126182 646855337 608478479 739632952 143966660 788887286 229971273 633317833 520449673 352383617 625592980 295875727 31405186 696247425 619113896 466029310 982187859 916182018 305238077 367739180 515788602 549823944 856181480 771334814 45096826 568947178 479608555 481126299 873824592 707038265 181551796 442257544 775064093 497670458 849413569 347114285 944318494 169073472 824479464 738307391 16985928 5830673 632212973 669323722 285537872 751419877 969017221 235184583 464248644 659371957 707376176 239988177 315294030 582562828 364659153 904208970 538961564 177780705 106486988 490168540 930757966 758790225 803743854 936322334 213186190 168813510 406566565 138504527 94428661 664239132 286564447 81868762 920448082 197860803 229988728 681093806 439236998 52491741 244734232 831854769 47728334 27466418 376548543 165554807 686819237 655142601 666072178 456474604 820363310 863127687 2160728 613330616 457896726 525356317 403212553 503817873 674615044 842010470 943909152 478748411 149540821 911282287 175733030 79472030 576381779 900729496 109125191 78174721 470777674 457155181 289098097 629791725 687049252 751421951 131756171 147994380 660317406 24757664 117610586 476346443 325863429 567881624 302117941 921839460 619056675 39698230 790334311 707615180 976992108 853699598 923817457 71807475 915667662 196467722 696659238 109746959 35807354 177920450 403083285 84812809 644418380 578550664 392070617 20789011 610502002 823367081 825347835 774455568 267107445 467303034 856242761 257509520 480921098 273386517 338899867 815524520 193288847 153929676 438590295 128088811 792623408 426838849 373635393 170695753 361645709 496014695 162699791 89150503 362279284 271742196 581348173 366435675 611942821 179257629 267606870 306317254 457589370 608277658 269467000 296654268 384580623 666975948 458847054 121292906 887568868 896768264 792657913 810044503 864069299 135765780 191035120 570712560 12838936 500036444 502158288 477958418 48572799 888656656 631073881 129262062 110454389 342737154 165195822 713698687 92634817 584884191 246844339 872468771 630370038 724927139 627538434 160812819 733338686 720168304 198890750 14629950 188327679 903405001 7322648 991002585 87176576 376616379 678837848 974288372 48290330 997017022 179299310 149072215 768267032 280025296 295763346 408687008 282865243 720735181 485237180 747993172 195834525 20648827 797199444 549674843 258535294 475625471 16455554 530360382 773780464 961956414 567702405 85616865 955542392 388209015 767816672 174615874 623678386 792382408 326025983 588175388 755724283 810762217 620656218 269331054 229332739 810470118 629279013 627319499 469839 718792043 309836304 964826346 868433199 627323240 547784856 738619159 353903128 507186474 847683160 159121171 31813040 634660268 833256521 207955207 421272764 910858122 556483240 142129636 870589595 421679088 319335191 131071968 344180728 55513443 195103042 321243395 743682676 156153207 543073320 122541759 161435651 211040840 419919129 568651288 620846100 478737282 707163282 796703532 454904830 366855341 190227235 771836843 116166240 155528040 801631759 122334340 612102671 140000139 759761651 339299020 509023591 168294893 231764830 993358422 209763758 406894105 14790733 309743253 714195853 384394876 156866251 21059481 304892225 822995470 646830644 31672385 488265337 137805639 164568207 509304707 924592596 604209594 922368746 757978941 486323907 498585885 427095284 706886716 199889679 870000370 556332614 907604962 260579935 547245512 666937056 873549181 851819677 71097503 945041725 940074861 400623970 670850872 164512179 50635024 126527839 566222110 346981704 213522847 636597147 707606996 103254842 572817353 406665360 461254207 786743922 478311594 853729303 948388012 889745831 241412519 708160098 473194986 841759020 479505815 298382930 517711598 262250996 548750867 214173519 747381233 320467154 914452461 281362069 289342090 767149160 402724914 369501619 321579925 663080710 673861206 389210758 998146249 945239913 858562619 582408369 558530175 163344217 498733141 35664049 392543615 533847645 496638660 669363896 834646094 164888859 924715338 558833942 114688688 981940937 56558739 390095799 7058282 542202925 395318766 247123146 35583050 124727121 188255058 987864150 470410413 893845714 398837259 537963340 611880003 519110782 562489667 281131545 453191760 610964267 826631621 135331784 828948600 781017413 80880057 312879331 770084955 853067886 575977495 318525887 943086630 631067626 853219180 627582734 757441571 566731211 188284484 852403242 369486825 236875966 873652047 775407860 943004442 228978027 309656841 720870478 542496246 401528365 700635772 162678534 247642224 463458582 654129801 532766697 538719093 676282363 585203873 445378645 241796938 261207632 705339830 628792764 560267985 786727265 903796867 318672597 460082895 675312189 13628000 167635277 728203253 541552925 502872324 587905307 296832806 561327058 100198580 319386698 471951511 174001256 397480599 50968600 177560427 652634818 326433833 200479409 134827754 777192475 235925200 851831630 443358015 92267074 119144763 57187382 403677393 946968815 185571639 812878006 95364135 578473223 294545211 338208643 153472860 833522718 648199021 781494412 953051809 515557379 582814709 462098430 78622368 724891206 762968754 110529765 144784404 571870039 603226882 870464479 356437264 743161035 73263431 886140389 355643077 977881994 268274845 657697220 109315248 981656418 679930100 889934847 953072378 572233473 21576179 909034377 303463529 595232814 231263151 644506882 738842879 474697389 966560174 460777130 282841325 663177444 561825688 442083075 454034235 796993944 980176336 157281044 638708762 876795167 29238591 557747417 626188773 174697293 311012171 776272514 776317281 930678687 852234101 234542935 143710441 202044724 420913743 541912679 34754464 534051914 207840894 741015526 38811181 510848835 640277430 691487813 437461807 459928456 32859381 990609360 123668508 755933209 870877911 994843435 733916417 141471096 598603228 387866066 956388523 813055216 486076477 250753286 796328532 659903165 233678445 40784388 176896784 621394559 676705681 263937307 154528567 640999014 939471576 247723484 776262642 585044158 394112084 796843726 268201285 486882336 706810763 85385372 8790484 614170193 96588805 250865454 976658651 771499534 488531541 651907494 556531509 491085652 701689069 625110795 497512182 115101191 412050577 16471562 132003022 494645116 836194382 983083801 34610999 876363513 327179736 357230483 181340831 490093991 599979619 759184662 576604013 544781257 194228424 829608314 855711037 385855148 341607372 6429037 455575579 630881606 403569146 891904136 485669354 117479250 927722789 753078761 790329727 63869624 322757473 737521173 377306957 93628120 842603362 566118417 116832681 938461058 431497574 645972287 71467895 970740678 976573550 652943108 966553244 617828784 723765203 19032034 24824891 721287243 442169852 936357002 28954657 707054715 14986560 461315955 769352021 995997926 288174444 186807142 121609501 196434455 676017365 441188549 588898325 806493892 483782168 642726227 989913619 621508450 260634235 990177076 466407162 422222709 148132869 315908185 248850139 783560384 82063509 575745812 752392125 346963142 33350274 754634201 109338794 793594904 92411482 451160856 970851693 287166695 250810912 915585403 894220130 759922660 654847266 239777457 634329057 961045690 480296536 990755151 617261345 112163056 80866554 248634524 571293122 870151238 252325555 729399538 605554833 407299687 41185845 45563413 298779920 699604036 166112103 185035323 358046257 940730843 715048105 915855410 916382329 288294743 674255752 211418243 210111554 617256041 388748541 638284164 334455770 576246201 169236137 820763681 556072845 964453666 1227000 73232595 451585562 818596383 861973817 240917712 139484877 728349424 773154483 717687748 420790930 169875136 985539669 203892912 144898550 130562557 500615213 213442775 629148201 554125322 794524895 448435129 406872991 533913118 774501491 283052864 288899332 701284370 881724235 300820841 663096181 476212267 255103131 523930344 543162164 845345576 521378298 398758297 136575302 329786718 278231637 663143557 367265405 275023966 837083771 247278935 817547244 206394956 100409130 363278083 481347012 433245842 65421658 239461925 438545837 35709878 486443565 897601588 111531409 833245131 249457768 811566632 140343231 827075229 415472469 195291314 783555379 565038127 995257611 565610429 561667128 25424409 195028216 587382555 117243453 416849020 8376834 60390994 345581829 564327134 103700920 301165450 414474355 127519536 549045770 290717555 982168560 70599558 160177549 585308305 851082506 774081838 767070157 131127507 177877399 161996450 225594268 268788232 694028397 646345300 447548823 307449988 92188798 162662054 139433270 946387427 983030584 407127608 9155006 102898410 161432309 447524105 737614088 242288091 351583166 932906315 698090616 361971051 35887682 471983216 161767746 380221386 890624859 854828740 624184480 897820365 840587545 721824834 762647345 855367151 576371506 451844655 374474265 163853102 69538646 654167610 594086200 632860116 742084101 833571743 538792255 348080076 541461982 242151457 545636213 336828991 446727043 24530808 88107759 59798505 266864831 641598005 741374946 950591314 880687890 177379812 458447075 829797900 181090401 642436363 301423904 45735392 173821247 716692133 949292215 958860398 742546466 276382946 659485693 485901183 114741444 442480382 677700423 918161648 26637646 669003729 707369749 88614398 666517946 532407002 875408145 725260601 462617805 524942925 169812862 143415523 761293398 248741150 443417803 122985237 251147610 903115326 790266996 365183526 224600565 442531410 359526231 205392009 43345121 291375117 145873323 200984544 672278463 334435768 473412260 658826915 779059875 585882861 453518915 778550404 599483779 174423579 106870852 281501209 824555443 29031208 926195263 406812300 795682611 211216669 698526197 711563060 533473485 104958832 808054804 587219787 148678986 628259964 660265669 610959301 720974514 410963945 141718609 483951064 925243488 123279327 756450354 411141381 313232516 216469319 770177710 326263800 267257478 283525472 534226829 529719095 175064120 973514452 398891204 867946552 677473594 825199695 808830042 350402946 32182305 487216290 813102234 725924972 507387943 348287218 903455997 784117398 527188071 718193731 522494475 464476739 991466946 465978739 421075176 317384611 559436003 920855816 348058712 982065322 123399072 416355864 479845284 806583345 60439936 813011180 167171943 431637694 285964652 883820342 350652533 764029965 849732352 577092391 797119192 957800938 713443406 434006316 918505742 915489945 999178980 528756618 161725860 807005749 232440566 214172239 67466603 29332433 189806509 267090997 837624007 713562663 742321346 690237281 917246141 984942153 238496760 411558820 226394728 758545580 217899826 138609079 977663928 714139534 859402041 543791689 123328111 838885924 873507349 846502326 829593529 187451011 94046280 856480242 360891117 646205710 671178672 843627391 601127213 258410710 916118658 992755939 615941070 193659232 624066999 594776532 940762545 844180625 970361774 925406113 550413074 55410301 860549747 673699422 545259584 52887730 482644391 692525037 741887489 832689435 961325250 988093233 405889360 72327620 902206838 401396244 622666884 813879213 924903942 473747330 602552246 778139665 676898570 699258776 582398109 544025699 310769936 699064922 716928245 851286582 400356657 850668894 483753772 972644649 291159910 1159535 643440560 861331324 757962733 26948186 979911536 12883273 584858590 105899883 185071400 429513067 745920373 666123231 311106388 125557881 964046810 642688396 490751136 309094172 334777224 801489783 227580418 508420929 573019568 371568763 474339476 824418143 938337706 159188391 500170051 893864766 681541327 763537463 267538222 876609053 292866037 640710606 540532486 787962545 802334851 930607050 852726687 908846799 77964768 356170744 444703953 630740825 246250010 530376434 993815864 30216196 379205884 741002580 328620227 911712163 833309301 952120190 567724889 439387100 384590621 872413264 118894261 676200861 367398351 910293860 389135472 877023985 417601331 244941489 725073033 637416311 661788745 162705270 437459457 893829815 336152473 741262868 956422030 712074448 495875211 191811198 738655776 419547630 526808637 874214087 199095067 609944568 665702007 391361199 638016378 371146588 520959631 775704513 127058838 676460309 133772930 331120979 567003236 68052929 106712118 662611892 135422236 105834658 445756443 2741581 933859393 986830578 743775263 327193707 731578504 205634138 510254459 163801647 167459299 614010742 255249091 811698258 846442910 250606951 478087185 305562879 410787987 755259012 53692716 907006870 976334996 290958183 79882369 548229536 599183580 405715334 499370475 142234595 918594610 970071414 433845119 76075040 675651602 937634529 48285050 30896127 671255888 364872889 342300673 581731818 317936891 304115475 23448434 641999825 30893234 763319798 198458394 944395562 735668781 229479472 386615588 373865199 261052921 758245970 490174644 332005349 756914315 587783566 560844547 701066459 568081384 672102149 852413061 765976362 328558654 74149154 96926207 466410032 125747708 76989631 872341688 137951786 407377492 395638338 726514103 396352443 986081581 790678102 118083586 49669709 55459504 587450333 663925484 722338937 942634206 33633697 923180574 51445346 214254861 99195319 827549228 467760625 878935751 723933764 129262584 107126395 118281434 709352858 488545370 436898396 834191691 791943636 375125407 801777925 318615580 377139593 120768867 373811502 287202091 571416466 18804389 880799612 273902822 117705245 325493267 592487844 263504048 632841784 629988946 246135907 279750286 403173564 27278283 934271339 563270952 693942297 298240231 820911074 201473600 236243811 981295769 654450079 288426807 91096708 787257246 850102837 993025791 140915608 18125814 3617903 384466735 263487058 899640727 941646990 755867796 167440647 248149257 213208321 508449357 33399588 324379851 710220092 268756276 663884501 763395082 523723589 668538849 722152533 790815516 541301319 570900649 749503545 944393123 268843244 502947083 986168123 965033446 927632324 116842166 640641364 415772495 188998145 211059138 908145738 639916495 785486578 799195254 875005549 197909795 902036796 707668684 100604756 311488338 536088746 914526963 105476232 625002255 287155453 768008720 422537307 53987062 148810860 800831147 850892411 14814820 750680351 696739939 679261176 568942831 809317895 609525655 879616422 981199640 323643777 826804570 66274575 165632554 341774562 480093652 396288593 762246920 372789264 174334129 791776978 896205195 898456816 986680718 522995568 881059668 407834362 191038789 112542297 403400586 914896093 863906639 436966946 493215433 597184809 567922785 239840007 923023493 950641560 775596179 904339918 868884705 57613220 664214706 642327304 230179025 35998073 41358227 272148323 243599202 92979264 126413870 798106773 228749964 970734999 252469731 716124067 524882346 163970086 853162634 376351316 759989462 876286483 507759656 481313426 646407892 375041498 89120761 200250123 624270451 527460430 551653858 437274381 188387436 713353262 302077433 844219164 136937828 503474449 437413947 329399207 271935611 175278797 897362926 309648720 888567919 928431695 147485044 459071763 211529722 328791526 569859804 915021892 319362654 78470747 448149646 458305907 86608198 270436036 680388382 186794997 389725091 371057695 393351712 225126598 622390373 79774731 767656218 303266681 327068543 29394985 514496259 156225339 822444645 804159776 130424857 304319146 62392350 962712608 978054313 471955674 154512532 371074875 490237912 326757531 776226365 360603357 187517098 822006288 806878880 814875208 908817534 539988883 740658077 281141131 932260285 221215433 869518893 442448076 4719688 515963337 334594852 640807181 700717686 821669741 860963739 496230586 689445489 405266262 709704237 335799377 869220266 5443073 867148271 605397841 462282609 414264281 391793432 63977883 918138347 895598674 102375173 874058852 611292474 574962173 117990723 178761540 540230902 818140911 883962982 935996896 244739196 813824141 823530411 616475268 755403784 304341898 616084799 428016963 9815737 369323586 749567789 871255243 850428973 37300805 924669367 768100122 666272608 357313551 962155293 875073482 864000992 590102155 703743669 616594022 722917351 992207599 612003272 254523216 266595252 933658418 622331997 351451726 10670484 216086238 502181299 43764784 844743200 219424920 400531463 926593696 485053590 855329794 919572250 501969850 456098938 523688617 518619990 41609865 159610644 194908026 651708745 265478022 840524580 18003968 773574489 415835107 640823444 947886972 703931780 228392559 633911583 418328013 96374056 21793406 144896888 457705630 182815071 327524668 596810328 49183534 894563007 323637629 825888718 917863634 846904633 195705751 851370223 77471362 799049191 675303104 446882715 995102839 853543844 614279521 310089735 630213161 206895203 549535975 596408727 128028111 431627936 556113388 51782391 559821894 443352744 111724828 372323633 970050136 952797617 561008084 134084494 512085999 526497183 287656957 84213335 139714603 628634909 455644153 505701911 909310401 744366902 704726071 355338304 652161680 335515580 705703068 824677671 305378787 401180711 399352555 955018712 37509727 406986335 918224633 202241576 588608705 742119679 652580166 32226671 828681292 175942188 269086587 220269235 373879373 54523758 25896266 534905509 200670099 59462462 291471149 883998011 897997200 142462314 821138899 805289079 295150370 823537277 204618686 629235950 639109153 488668271 376974929 362806340 781224037 561337142 770615959 756768559 550243739 276941653 530272959 706973170 800207001 686965379 9924853 284880166 394915593 574872376 17109058 228437713 653866843 234039795 58984516 364617759 466753941 931845554 328984707 81811174 807518114 700777455 685704638 410619398 573919851 215870054 316724467 473671018 916240495 653203446 41055154 364451832 437140161 397373867 488764298 160693492 848745470 610670996 933806639 844095277 250481535 717849164 118111555 776017964 686222585 705227082 768722711 1742564 760124774 877742373 417615793 912935706 924656095 434099603 851869057 813979435 127036365 534772772 350878844 368237188 801285991 183112267 63111098 893685660 516585797 20978716 194134402 806515025 575820099 536810543 223372398 306048741 167279893 674025382 399384847 685203641 859848601 984362442 124066533 141262895 613544232 77445160 139137950 702071745 492757244 129129903 994523166 512480853 718877115 186032746 530634941 897125247 219984915 973297591 262548968 660927489 802942441 403786474 123479576 736540620 936363493 231526909 686441167 716292369 595970309 355003839 259520945 992650690 411718682 16348556 196057655 390413126 73191479 531946422 380835790 771081486 264133527 131678622 858868250 879511992 483550004 187629090 515260855 12374606 964609225 615257787 256927863 957324866 984811820 388601948 773853789 654600250 25316629 384167623 391942002 923248952 958253325 557585559 856313546 506010681 284979153 806697680 920391956 339893786 398613533 917096116 3169798 175260817 126821508 816111603 388053824 614679239 81219449 309084058 606997433 651849817 473987294 121725864 296277332 312189138 890411603 384245873 70711226 334992163 715354547 943965578 123223226 402401671 265315551 276006198 722025566 232124209 301978412 832564891 559550395 48606250 563620451 591459702 310568763 318864363 17678503 925415147 132394106 602603284 635383932 920067471 893782125 780068151 79337379 97499876 351550273 504922204 981777338 120133399 544971000 352548216 42609343 658924303 833071076 97815275 364280352 227319648 840785699 524934501 271024376 529242643 472271291 529937747 905285244 368769736 141480370 251952389 435951290 963427195 856904129 563912921 545592163 458981768 87374481 735444771 6696413 564644468 602581422 230705949 95566835 162779027 68606783 638128086 732507489 352206450 248782288 211551432 370604803 195957357 262296209 990151295 828219797 773404958 199285029 972055910 807873501 961583403 646225455 191449466 796376593 561464528 681300148 120966214 175174502 459942747 489517337 848958653 741254561 271338824 83533743 806702063 997935434 580688317 357336904 749146086 384981831 857925324 505048145 628470140 588062649 506720308 750695162 699715296 966248592 359052973 161128511 134820363 58247332 988881202 628612563 718708488 662493949 285428649 616366685 884010212 958195650 927865685 550667235 236504727 436920880 115721415 580973883 606157813 986448250 190039135 943206593 542399585 607357761 959156673 538038519 989835696 491351989 537608435 160039438 618688117 755249314 630359338 538647039 364462227 987881119 286099590 763431064 162577844 979276296 602801490 139304502 338597683 633444091 445777016 692686051 705457069 212404106 462632266 799442275 666198302 564130311 966407975 250447569 268237338 808226696 569207484 726527126 436886913 401647746 225145441 719867545 307967137 982491371 208821735 508502544 107166863 534167744 543566760 280008668 403843923 328871517 767463733 890078296 48314511 563488915 753258578 123774749 948352997 725873906 316412275 756137991 756040194 369797897 272776293 707965735 373527172 158779903 859390330 590811690 209013853 889412941 796864566 353242169 631252662 939018848 679704319 127935918 188758400 450435932 142974418 253018259 2606508 211815896 248651077 247161405 887446284 533448539 576844906 690270016 607663922 691975309 958505227 48437647 762516462 154130661 176846497 573607896 536330479 236619215 515563170 413954562 716457949 180645460 924452318 503038182 609661281 691925356 834097530 275975116 727544668 951779494 228962197 429073114 987690914 71892810 357325226 358096296 657166517 942677500 519390046 714575423 899908962 160346187 921464330 648090046 485755209 844356594 675855991 369202393 771210522 808732296 556683402 824710 405923771 397080527 459675270 32664958 497991868 656032706 520057935 493409394 655048490 228702888 166640596 333362460 149912730 56490467 327698583 150534028 192288959 332201392 156623527 753878530 306193117 156004360 282451631 992065763 476043254 955229066 780332945 426353560 630186544 60750986 704233254 528096866 3063539 63890974 202451436 118995932 912183401 528390677 54546805 179056252 464469393 278220855 179765365 861140607 337662618 243385679 609819132 21972240 588653226 417589082 562796044 156083457 444031699 902600291 343858622 305765584 732711312 54689130 740805562 151460604 571035307 915121582 150533615 673936230 614427785 700700363 781071153 299198922 194888353 479077677 225106653 711396816 566838384 64447579 947796391 395111833 325270092 815607396 651002256 577916018 105398929 366873752 975176714 12811126 877001183 996702309 6180750 805298742 836990769 574626074 127374240 742926766 114670367 83182772 937082055 102083317 242209318 793599669 237252771 977077885 314917544 476175722 559441048 162393698 451571840 765531244 818857022 793699648 866792187 443310237 529346114 108903933 223267456 407787868 773949824 234931049 860375460 931305888 761324503 568957671 219967992 830828708 895009812 684420937 619397503 580083805 605890981 276950061 626635019 832648292 771138220 772431472 861672059 167878161 437639634 641484232 706363736 961347664 715545589 270489680 536885136 674596300 998661370 523923911 663766712 254166137 24443440 330669807 470338628 149391381 625898591 377208742 572906987 556559822 19812363 641769904 590568396 229855398 737290614 189356630 776986136 41913803 1545127 451628360 241931155 755807504 490066994 689001217 803775800 459598413 40472625 58638480 880745146 725211621 201710226 29340491 84854325 763464870 310302336 630002043 61817296 412050663 728917828 970694913 309033363 154573184 216740279 397101202 125553629 636827777 221303924 954025052 567610028 812847676 723810534 426832609 35499920 398671675 143675759 812892428 235441771 944976070 690377263 35697296 400843414 141563589 794262610 358649399 273483269 767834578 699288325 55308676 235861288 48234113 565888038 205839409 990664749 773758537 666527079 324913913 360349303 605754838 473029910 8702005 270078479 644222431 94561678 694201320 692575845 19128870 540854058 204415021 593391964 239786531 620071550 300296661 350738823 522120132 938281443 960753446 430598472 24187238 735468787 693614289 825825938 184811594 60624101 106649977 283304026 384940552 994065093 893563528 213365305 476422065 865624100 725290097 80957132 785519909 545526013 224142831 663450306 539638382 315051346 892405289 570263355 149159732 591013691 323992015 86275729 730730319 218394727 903178734 83270350 961741209 573942308 191074296 667172510 596624642 163293796 586626428 978359821 101898589 972168569 505885294 709778847 714091937 511698235 298548953 920899070 171604941 449611876 277394462 943438736 430980076 688244133 854714445 586262794 827931142 313317674 972245498 532364648 184945624 81713491 488056360 224143449 953245586 178837451 189639981 400081834 998085001 343351392 205105905 607606858 536047353 409554565 673429 651499250 632658114 837105962 237846592 796151119 571051468 807717612 388339345 962975293 510292333 256106077 29995023 303645733 494838264 85813749 68545575 571182950 442349866 534317706 89866092 271271423 363237744 582756472 331037366 863515113 370656461 96366567 215006469 5024876 610555085 495946601 145974980 556162938 111313319 929632995 814410220 587935068 500925809 988126052 799056030 518328055 278219687 754326786 513547171 222566839 583394450 893958457 21338486 92384125 895745708 362804574 737738636 586465489 686486876 621099800 785847522 477077470 745025909 266190761 504990998 381074460 776206001 64953400 431104682 154154199 977747326 512261714 55245914 477281284 916792906 822964609 205199930 38164464 717760206 733931254 298960609 797901544 959884760 64052959 200985929 855815175 274683671 810189245 460332141 93588493 74434167 717773244 353009885 438886215 647964481 454093710 147921128 880269269 309871270 33112336 310189223 194518077 839221488 536145903 679686812 387151372 797736126 753538245 941533428 41047151 877100265 293139279 219359494 131660692 589819505 829800085 811198400 166647954 921737186 465998118 241425468 967168670 968202386 64219225 484799561 966746004 164669809 493450655 659184829 807697775 200597957 501531140 427100967 96271604 681388579 970866037 654047918 601842240 601904281 192263550 651275601 477531733 427297183 358672158 38227402 492840587 905712318 178658626 737326552 517726851 244321294 734427631 111005396 908901902 638365396 668966473 874769580 230195385 312647842 342113755 645812898 272639464 434903449 428954433 636415681 725826822 530297848 481933647 79509207 962155622 760338890 487084421 955396649 989787207 379581799 12231517 683855290 615382159 929221109 862465529 263578481 739159976 454607818 921998318 935486275 722303341 155575962 778819742 942548367 763792817 197940513 120432861 659621555 131319639 46109827 457068374 532143822 315333556 534912483 894507624 480851882 205388393 72027221 764056414 762732233 231500202 341132037 282665196 730025844 237870420 918620362 102020805 607064409 160767059 722671401 155554034 263012535 635821450 426036447 878947713 979577719 600793397 863202239 198761341 513539417 532836589 898832534 387178234 240715467 507658449 250168742 286129806 851924921 899060915 457056336 284627994 126771670 959347482 683054543 731687723 847146259 363228758 354762569 200717064 405272588 763456448 619462618 920851536 907213043 689733767 335322806 967130176 729901844 384462327 79983775 431123854 961130843 436272137 797944765 195695932 339702900 435308733 130400831 797129121 771602697 701536768 131194192 136127609 102195850 154775548 534945920 642494197 183829386 75157074 822928485 830593086 955448240 632721226 355438323 933018151 14398677 998813370 77274247 889243127 651442247 189998779 980706548 425701263 577573093 624014617 451926346 338166167 989534557 943300368 800161178 266226404 542380378 331363750 971989281 525328119 114209971 242585253 556648338 898397385 98326688 257107907 698411625 571593467 145311338 923354310 787713177 540328560 329796647 509579371 910575193 166008401 769985535 611337246 502125690 764546779 55631489 587232877 528346236 68624861 55922186 793527979 548632622 736980955 502806924 541784278 438923559 524636787 322633625 939559046 603082496 940908383 198176377 215122465 281989940 583186889 551580098 820581705 340599458 678058975 248433460 358585927 274483605 842949919 70251019 368504422 111717757 98668095 34044084 284290160 784290219 514358497 438064744 844851806 879832053 935713934 145234308 913783209 646266435 230830039 486549299 795941319 405610331 844463862 594891870 830689144 164197077 163487667 243566259 127517417 827252789 139993070 930070030 878640274 310964978 596117830 923009838 948223762 990790703 53149038 282908484 247678848 899439293 919284327 170173889 748789187 446387932 896332467 654481985 425132867 53652667 278961475 334941532 134260015 763091581 426669322 879607238 481675953 3126358 6203208 649672959 810567174 821116125 757216538 174805229 24732053 93397924 921013963 443190050 471866912 554397557 710991081 855622208 719411717 662046499 449735241 528067375 423371168 115567443 325653760 776631809 732834794 87819448 166384009 989569364 68750890 750737753 328210356 976888081 118101993 118848842 979392712 133247443 502026354 668079604 960266327 93905934 96133711 350820310 667314274 105048647 290921514 946929126 878828600 776648846 640502039 884059191 808613902 492490168 360366589 57863011 44711297 494640981 374724841 360434866 937330331 391710647 185223791 33112546 547332763 624470011 391651945 829262937 235052144 517732319 822727592 368704351 923488272 215335643 35181566 390592948 620900174 581777033 119471892 545695863 826503705 561036584 793332344 900470994 138835529 38527161 231099427 971995629 952409382 556488355 891505167 752355281 450723933 380615093 959577981 951215131 141506625 268024050 845832358 586600162 417572668 215438952 72536910 882422337 989359025 173848978 965861806 105928668 663599173 139507194 493850015 965176953 501361623 305030339 821375086 854991059 436176777 404028528 114245455 331028673 237059988 747932482 71833054 186269096 967482054 528911486 624050466 245768641 58071707 593906366 990691421 10389592 70093956 200903713 217141321 780096845 801229436 349321902 137773088 164732021 503292412 933405934 133483606 726002344 337153405 696455534 621575176 118016810 542354485 608635790 504774072 861877786 179289915 141847932 554664146 731840591 183294814 756986516 866312794 683435812 166659278 37896475 910597975 54586839 377376859 192822769 151708577 765129416 45279985 533843506 890316011 462193969 965779400 417029146 693016020 232532799 341931358 619638833 575329003 290494920 76652367 826403425 671084778 390367786 636945105 458486914 563304868 632483108 261384662 804234181 977551392 124471130 840581467 562942524 853647862 369738944 247818615 169710709 448603073 349482963 58656071 799870952 487166267 62711324 470026043 809940383 853573546 424400451 651168947 989712391 264536911 426509831 203378183 58284302 468750031 413752376 578217109 147703759 661122673 141870235 910062110 82830424 679550559 580574600 133895711 912893165 194835263 861693553 107734890 309121658 573830284 185450896 249760460 892863466 27791445 684159048 197808983 189716083 344845602 421897706 595817724 878615206 527206532 137492253 697038960 160119368 861583689 282822838 302942919 208834461 865259516 738329190 380178646 439210540 397180895 22716700 352854445 262073940 865901020 322910369 542366765 723923329 808191447 993708508 627359697 52024260 823740658 819597388 382899220 984752154 347745001 772653850 444397446 121138193 816882131 931981432 564825658 270055565 178786454 343033997 736147018 950412883 911325845 819415792 221284954 357638536 225954002 618205613 725547506 584951920 871095210 818691090 974229061 780678731 543436491 627172254 754361463 717303230 977640727 466681279 444904869 229169835 70663619 602074764 634649282 101694259 551960156 939924605 62446864 854337165 594148977 950007487 378884817 844732788 555027083 145437248 388529013 93417024 925259058 849462241 521485246 226667987 481183348 94769816 985957199 322380803 790750167 129980893 113578495 587770031 96835226 474605680 851925356 19625780 342265401 896225411 256396647 770900329 849222049 128912465 434583657 138191736 508631350 454938356 14113841 222098341 802693398 393599543 745025948 533485745 975216942 558527047 632383844 736237055 117283265 235637848 113307570 481453521 601878760 226644356 213686994 642870169 268392562 29952539 458864668 956092525 934271264 720412447 41268196 612308029 848779750 503206987 618267437 692638649 876809713 22132755 70952743 575961771 151385544 119540503 825283306 634548052 725593151 50993972 960523046 753536539 630173512 219785731 323859634 636908304 277861853 931321480 857756328 769469205 257165751 877909849 159172495 856284056 873358670 206559216 255714304 161440200 93176550 462675896 260216990 467422616 361968825 763527610 829869879 765271594 45591352 544872164 153373135 783384203 35471186 928065736 694314233 665265162 339968716 208409487 800316169 349740917 420247277 712430251 283421493 501427486 14573600 481897180 859259691 120432565 990048593 758217247 868798923 613777844 29975204 477736819 337797455 498746805 223981585 630067490 232318313 234091919 324794140 756943831 458063188 128454489 754477783 448134807 717286827 382724017 376672974 552079607 127187785 344346361 620125646 515855368 899625217 550690816 922288650 366007974 455739696 418783943 405649714 884242009 220418479 429184134 116852878 671528575 863296636 375892312 270600570 979647552 610421941 639046912 328467985 109956088 268808840 139467828 930946824 749546782 351656927 759594247 326773243 930903848 907572955 388642011 299308670 747740153 679014479 613439155 466394024 45927471 257293977 479001785 183885553 893285037 305213815 541847819 787423211 56913560 984308578 79412721 773119305 250723758 66632971 714005953 814441538 475130805 607313059 417718495 206156449 45849103 445575186 685893293 133027542 494932291 962699862 832451127 49699851 486682687 620782676 849868044 826883907 155510504 410292468 103014647 391917973 20812230 568019824 133742320 66370723 447880115 782951453 117461982 347654749 446775549 132092541 474298971 205347020 133514896 331931894 833213676 299666805 311937488 200597888 436049420 456765784 1006568 372135460 753892825 239607621 282804000 930546563 343053768 445649270 354734857 845811559 234870866 572855551 112405642 639290970 344507138 76242570 906484581 58148531 955969801 803594009 572200269 72363778 663756674 27038835 871412982 616415274 952025561 90036744 315703338 991528862 681540188 681560850 868384965 137936563 896499405 787475402 694922162 343637321 263399132 221775147 982970075 390329133 999256254 397651384 737776305 154742018 544189401 74716784 9358085 766280291 85277468 525877374 212385217 295846349 519626293 639730792 942057106 347969465 21003559 719302853 339520450 768138007 976832874 855673797 9155330 136445338 998384267 868474324 203922225 23849613 449563677 177121629 16996751 259606367 272854595 574286739 624054870 380852557 155440389 145194297 881261949 289793729 194135257 260091405 332880812 253929671 841767483 303656827 424446251 885128898 501417046 117375144 208927055 454067400 494593972 728876010 842868657 273805735 889187653 90023804 868535379 260562521 677925181 196274760 717882172 364377647 81730488 320182158 256278009 29760721 434659001 412466908 745936334 136530721 264683773 280346501 319467381 601045944 40248750 572225939 568605240 536421913 843634820 682518878 442974890 680647871 280282085 722281264 799446370 936274815 730840609 444147986 35398277 965900993 456419196 662020995 29294980 604327271 832828310 612754426 360196067 929185067 65804757 410658985 891771782 327647630 202013099 107823827 82290950 842171703 678042827 94901934 740949383 369346555 915111212 427983345 771806724 911872658 838426859 979988692 895580076 429339503 336863962 161194167 230873938 185497986 904639576 754833979 918698657 101389917 804943456 657392815 411729680 685108827 553181513 2722884 675167345 275281013 378109496 773878481 999834744 761074962 530532764 642153119 706313303 672947246 116727065 180080021 858775959 867238352 109829129 871816762 583019910 240465468 901301239 41816591 338610635 98487793 62471477 989951990 270094455 446284345 652963752 992782831 237024524 220533602 507657920 178589257 419699828 705315912 870925632 718956593 754875537 15308793 5388057 202834616 312058756 636504650 185666834 823720198 352188268 505793997 61559890 464515944 398854551 911251355 197608142 21083839 71684725 716471366 651206120 975837597 284794532 964404585 695440108 581412808 453723249 192162048 921028699 477992736 80977954 296095333 198620643 441831214 116984739 914620314 841294304 445635741 581986724 752617476 748293295 602222900 861119082 901658593 961872180 357156615 999637512 163231201 315157318 254447088 502846156 600176712 852606721 823846964 44753282 508744719 327812635 761840640 648859781 566546206 407092277 200711273 621216623 627079490 842155354 906361817 73716379 738877352 799561091 723816997 854821729 566607778 803767845 633406124 186136848 987678714 342391148 128246560 342110396 745686789 962407228 70665197 666885239 983894222 905650629 145133149 270903111 624530205 102804988 234614550 486621345 409594655 967583778 572057606 251699148 609411313 484545982 398911241 875625204 856572913 189045925 789602221 461234975 696484555 448662149 329863665 228579066 394159811 100142043 480686164 164836102 635111395 203183417 792093310 453171119 904260957 662963047 905431375 69888141 22622628 225405624 561111623 164207981 554949844 555917362 206967563 147187089 130937860 608756483 118374729 83524011 955068041 703130544 312827807 385840745 170140402 984285022 79557355 130695065 477378645 119483201 406733545 465946459 549982235 483701398 494838463 849275175 289199051 100411021 128656583 408071533 457957757 475208796 617906797 668348131 978845879 189519857 895696316 433407401 266273963 384420614 907207193 941583827 651943809 524776579 816638408 462965710 778284256 136721547 371295762 191417898 151069502 30838128 467282616 253513732 701259498 938964668 318569373 11295267 800274416 575221074 150666613 585178500 207466630 190048892 178082183 440775619 287821634 999914118 690204367 207840367 88326648 982470485 174928264 684976410 353306500 916538775 262032087 650739574 352385645 391655451 714680357 912618047 62359356 44034378 855146340 376845573 725078877 868110332 149996584 844392892 310170537 945683768 584055757 459058130 82888679 15344099 351642782 407368197 387966873 568219676 741024798 528966768 845795688 527891314 827135144 451893670 523715325 668254733 118799861 189182315 300916256 923263559 935334998 934159222 264969997 354284019 248656235 251078151 823850410 191002075 418722775 735703820 29420822 508390844 117935536 722838085 762633718 388496352 459168773 969925262 516106887 981877608 531306968 344910176 824502238 740199216 154295864 352011164 939242130 832135130 57397888 878384931 59917362 190750315 818512773 45215228 88057415 728841854 327328046 794173670 916092724 745092460 324577531 992227897 565894182 913688155 279103109 487037370 807950523 35317362 645881855 242655293 170722234 72256179 216114455 113564070 632983491 357399238 423299066 957102874 439796820 356366026 150527150 355694508 141523589 237259477 886845728 115915083 681276421 362584103 345036064 142535182 911867337 230207868 159726273 472220656 891122484 542835320 303678530 836241902 891796411 393025672 222145010 994381339 117799427 83666571 367269263 851170982 840251760 669050415 901662458 755009324 19887763 860570569 838114148 396752260 812755347 146001855 964664386 310756658 646015349 777432684 494575259 796691765 113583674 858703366 109272558 7332388 562595965 57042573 762695590 771540757 946875109 490273350 441854936 625766213 80292278 727572174 424813630 880116543 154803680 343243594 364286806 467466410 826303989 608810788 562295656 455728464 783702186 536892161 906341008 308915251 775827126 339349474 225094113 197381936 865494279 68334155 960751635 363368098 792480958 754603799 526114457 53045279 773913790 272927400 618565206 285138773 416383324 55133064 388661614 426122813 322654593 279118088 359518411 528376266 901052853 826173681 294533291 502399518 630356667 965779571 573393450 437632724 122863551 167123998 249927444 438035433 5181860 511011010 772997881 513318649 978264647 942779684 663817772 273040215 231261041 976509579 614474690 153003745 330208505 678028939 368360130 452430863 336677839 48464736 436171043 555519052 617613410 979852411 305494399 408037457 86734672 825647603 678657262 420091513 589350526 603920501 27434903 825711224 194653129 743803371 915402039 432214641 810147249 221401125 208124915 929038819 52521147 676108890 854529078 653596293 599159176 811242632 502059975 962295243 639731689 73380668 470688460 618210067 18121192 540603435 883473116 678350260 405530314 948453892 558142014 615366263 507645713 400379930 436718552 910741934 592395009 628135361 850760825 520388969 879047895 333011888 244471405 729216481 957400293 51344983 170093139 245349152 519848534 313278134 63020205 982970935 675415728 369256990 500828578 571172814 974156421 126561990 613828189 772375095 440067207 890190227 723192898 86412353 871116105 359592623 667615948 860159265 881412107 690031349 22248249 568924767 27528670 500845663 252451967 909985954 348718730 273038992 616016033 838202213 562290303 797627396 789666564 196021395 918435614 922066516 617174341 658702144 646507068 277040959 315424763 518645225 680348439 832720063 892069825 663827181 661578119 201011972 885743289 876593505 639564768 44644259 44710117 955793122 708056702 932576663 44935257 840980127 236610291 672119436 273568042 37645271 750624975 27861670 197569573 57870587 198129183 272517811 890776903 889931533 211881740 199011021 52564352 904392505 549159129 87289918 498530076 491261206 163666356 279937725 505436544 490822480 318033948 710626586 849422302 550479418 861336080 882467466 666349142 929186705 633065274 567534553 234875561 228149045 878112621 214665232 706652029 732706463 929524487 185736318 454862196 349670675 604060917 707430337 683283900 361408197 934131244 47935637 325419986 578415042 304578315 325032993 335132237 593586354 438019171 714728208 812636370 54060831 289435485 424836256 227182086 918693465 487281484 858234554 994344903 320373531 275726215 696086230 900119633 348055880 742993363 480744103 353694187 668574028 413173081 942727933 320797169 651608929 534868716 415159606 967807957 145060169 343915673 291219092 550930644 632707450 121308358 352039424 333053927 870507222 364037077 953899506 851237013 645494693 452574920 335734269 517809931 531514104 852881621 159737867 80354088 707782626 144455507 5803104 177871469 507471508 197472293 505438698 1849749 114659437 843553309 500029720 448013435 140406611 379091445 753639295 999324164 672617800 607402469 366613080 488317285 638748052 660366277 962344087 561508102 403307086 993666167 347889642 370530863 752223311 744204276 228419676 966203440 708790525 343546942 397958725 957607036 920285154 776262743 662499058 575265478 624933841 728498328 652816012 269934984 40555060 221410524 109746250 525304516 857087963 940903592 495349200 690896930 650939974 114491649 392395753 936729597 511565405 775555816 112126637 816236463 627180628 222733170 631148952 317032422 810072829 55323905 193627143 11343982 498695775 881209779 246749939 716357614 256896107 576709464 261683072 200546942 676907433 866737595 766342640 415463579 595822306 894874177 422153043 178069556 869109101 792070316 522728319 26660578 49180321 988196007 682440562 419625876 366278503 707418316 849521907 876720555 405014663 333191593 485487586 320989483 999874048 809020147 382380918 369947199 670295970 701669317 880724867 441694952 38326201 830135717 900228173 902723073 502707422 956925699 818609960 323217304 326672264 304709531 612605972 808081094 233094054 361794244 949935270 222995796 326588777 536182839 768822552 432112624 242250804 813458388 396493790 905188739 154683257 960089788 708635468 650499030 175771038 48905332 125411257 179225541 602304248 203904391 518966575 991621693 63900276 965639989 11055366 912129195 485792103 248065021 735485749 353501630 588721876 371043721 338801322 679601361 106390574 253843385 693778296 933425357 395621662 968160586 940385265 623976935 961822020 778539504 370445392 661222533 89305383 961086164 612187599 559008253 786789377 607182025 962404212 486043882 865721594 230855140 441127381 725315553 808312313 959676377 201231286 616836047 115564627 13195550 645719583 134554313 701962046 837393895 988598462 959107839 27062188 955350841 95399270 846820246 459198286 920345297 892627674 748188267 75342209 911707605 735483106 543889182 179253100 673022316 659630999 905869022 971356063 705652612 336437280 647103403 510605265 691070302 795377311 403322525 452830778 797584487 103279090 312987994 310603125 139485605 165402229 842459208 93792834 355564886 799796288 318356889 722927917 838079476 852184402 811845482 30098187 566485387 406893352 822385538 176271872 383804783 328019969 90888706 55634459 597446738 470007660 275729985 125003709 409335392 855150484 275572851 409747026 85327560 301498131 920132572 200595757 221536839 619517412 498306194 64519098 912905003 159210913 169410292 741841861 828130103 932342789 850159469 33821970 294175565 499045349 921192058 149386175 186535654 638597820 392452800 788302719 404424526 328740128 14894587 663715322 765629925 757079985 395613188 436267863 304658723 683802948 588864121 456011289 758118466 26785535 175079515 774448846 177287171 91556706 565693369 620693552 210425345 490832319 644090658 400966041 128838444 481802255 522911449 109260499 481071644 965901136 662940105 231810694 91570073 749642289 953543035 562698548 866745074 85691901 596285247 27293366 574063233 333307318 63167549 399717502 170368402 882618318 300741266 974463108 199940312 702999106 7869934 732251887 223075255 889928871 64904639 728199663 739671201 777011185 103405404 745062206 898647025 22190201 696977249 186270429 493386236 395100969 282605592 454741993 661057049 698755783 760872123 908366980 416339653 686814357 988231143 975779957 924153332 384605010 10956358 784492857 97416690 77733868 844925642 838709849 476107147 415872331 942525979 33954342 612601054 878143809 820886167 594932172 989716591 817746333 403476524 325464365 25975184 523984047 668141187 786265198 21878621 847887154 508289260 234345512 375356135 836751697 672358923 832996110 426801304 544919109 650271129 772549367 693466211 129191207 149804674 683921885 541440143 574936280 127366420 607403398 291718216 776150728 133499338 63013880 644979177 124770670 978947145 602479990 664055541 549583275 740489642 426358785 331890330 97647612 386113371 361471447 421062009 850604039 774295178 599101278 937703484 416513355 249081205 145224835 114597768 161280659 705195035 2770764 93491738 134688905 583592872 287126591 190551084 698942273 664740863 633013537 896763369 185499547 359816335 647647049 822890294 873175851 444174861 879859433 955978977 921538858 166236925 583840762 862064359 62726487 128259387 556824133 607742976 769486985 242132415 103696935 185116749 935030246 956546871 502674195 557862104 48477196 223840231 232468625 183221481 685487187 453330561 431580050 507666548 986158925 880200716 182689659 394628935 917550262 942521031 239683118 699166049 921746000 449477112 232837239 372005724 43054060 345159185 619930600 436092915 239218760 150433952 510841446 755575830 297057565 150155161 771746647 417993973 443314243 784162496 205632712 871774089 883524900 392788926 923014446 151989770 575870220 596141691 741162389 153356376 6804640 383057022 633880500 361412652 245885307 820092633 504109425 608833700 287406260 473278470 684943328 405742868 303369218 272327383 177296223 814383558 690292833 325172172 39096236 997911113 433948665 511406481 382223031 317428155 144602142 785274081 960087391 523133586 867570206 603763733 360491082 289581471 767891918 944975492 680385533 583007681 602119702 75084074 293878331 555878992 181483741 191217061 357830791 257734186 412640999 176133330 422815186 730454462 376054204 459668776 482048223 559842827 143586242 355801744 439147459 641130548 796032194 812387571 421499120 89065186 281318246 472467805 348038725 920978301 234453736 604016659 895238603 622807900 413400500 446113133 45650301 70810257 84348808 484828560 94563891 102715113 18638171 694146928 68558244 321853906 825392091 824968826 479610313 440011562 996089969 880631982 445419413 915566282 203729050 613577031 380597468 52894766 496462678 82192561 593067745 407338727 154950644 465683712 804080930 862737574 683630180 90366069 757325025 950532320 410934390 23875539 750149571 961161666 766019739 188283359 704097804 30863391 355535620 153270224 439864956 395596822 594600306 339817127 2702553 299119745 707236809 436652320 84369960 108563436 917608863 436234153 716471277 705327843 911475408 286853544 146199732 759592629 186332902 444891727 889189809 306721898 605273191 416705408 330271735 160036975 546464138 574188096 731299399 188628696 560008951 507621006 293382493 930721760 785860881 242186561 142701814 114100339 173637050 410850959 620973474 619277429 489487249 741994244 782898829 281547974 152577497 8257407 984314895 711078605 9703320 757008231 873130671 176484086 649121262 507608271 705074307 521780816 833816626 656211439 974756983 89841689 763227452 692115121 295615900 47010179 626697133 539152383 708462747 591078447 140557481 658236051 426532202 42967067 866855789 341937620 119090754 732662479 330655653 377379868 841008266 437808439 792338186 615677647 644974193 173516689 798640759 37298132 501144379 603974400 369492277 227187315 287755564 534486473 661512750 773431798 222213629 909493919 960961832 96031531 666921844 578842621 303094703 857915537 322418328 874240500 757183860 33090515 803701640 465589910 884348661 61381753 646681346 223381372 648170877 442139454 744077669 825516149 878051489 560200305 264539822 975934650 234585637 434327644 984737814 614493423 419654674 311178312 783566717 457458470 358677247 138638447 457955492 502239306 109359807 845817687 133546341 274253056 901814891 793796636 970935868 685078126 2967373 615527327 612422717 979603304 552926902 925807179 866504346 842149570 791727352 917905486 2480262 636940354 438791383 462419176 455053156 558811259 74235286 444553919 646871735 969544965 897869930 86978972 201827245 380439913 207501153 120092357 453664815 409216086 311049255 549272994 574514810 716918077 823512987 618712081 91028647 394922337 778010474 217807635 192800220 990813286 408196612 308985133 532508160 865088918 542684722 708250781 680390832 277843942 346548017 987914111 701967788 189916646 735651980 389434366 153106439 67793885 61506257 172706366 427859638 606436215 689059996 22979929 512766190 760683523 940916020 541489147 683486432 849781516 630499043 754986345 521344885 103626067 180383247 447890968 240414045 246061406 706913796 248731122 442888741 526864495 486056570 682239303 462506786 587359013 20354605 321129869 988996240 196042373 994778783 34024418 777805247 912778011 599881790 809108354 40345747 341620184 820167173 390435121 776891721 566288892 300599348 186245102 505557903 687417354 914792149 870941511 823062130 807056520 736630465 235101716 181615640 71954432 798312834 152923754 930020152 574003772 791520217 156590682 632963160 988837331 549128091 861905984 647063473 917484447 64713454 60963805 843272451 63058126 780794240 542485420 629603311 50181331 580863216 106046176 386403926 917660545 773831838 725100157 834000763 158781055 126273654 327165932 227395605 761282533 668392546 247248511 563205509 261985401 375745426 272388934 197645310 534881696 764648822 687874010 683418665 885568324 151135585 376125925 391508296 396907950 88771651 83666032 458448572 123448038 668893958 861124924 644792322 53665746 395272818 422370687 259099128 116170305 32274391 618602485 850789642 680385748 191724999 518702125 935992872 70638162 17747770 57104182 151390934 565338427 932228773 562143476 486932063 437958867 902997620 19439807 749534685 381558109 92576187 346533929 783628989 777515480 777168632 640882303 505198918 497171139 963980446 9955392 259855789 296607628 848228459 599523591 699912167 165874204 733617393 682117318 661998337 181278951 908882030 591879540 774687638 798004809 319948721 859354972 468883618 507754239 55578880 973291849 401013501 156588372 920874838 181319231 810313494 840045419 272598602 956699755 940773721 987413575 66495340 739740397 602114657 641882088 46840316 619172253 180653300 269572966 625679844 125848144 289298814 496499431 297357084 747265042 502295557 386326589 66185479 170768625 959048336 307255004 736550373 52535001 568559474 347946927 341144189 897223646 559896804 150494876 325387779 968149622 127061994 177665966 747915073 408014948 459799812 937458882 180669741 409790400 983100993 917483311 895752504 725558961 279265683 115368252 454366071 178694507 749279916 111088923 937902958 293894126 685841602 873652083 748444048 890983778 246761233 967287710 844792410 719947490 561349089 854572375 380371998 907135422 511616507 208163538 25929881 758292420 699711413 780123306 6298753 175610327 455647699 352681665 414534492 763594166 986617065 622318181 394146753 109702999 286005786 157776397 367629001 948667035 66475777 576626968 794839948 257392447 614623373 809129444 94706894 280235707 126246111 280272317 937485190 190723516 123888416 310282046 950089027 77501857 442375085 741447876 129784034 37096359 666851243 594921118 184412393 695388148 78449498 315375545 661266368 483958672 460994213 144468553 785585136 823585147 543017945 531057552 566245607 805177699 50818969 846576057 546412982 25996448 962896085 309320202 863796128 869311577 971100827 255906931 190552926 51052623 348507326 591813164 735063884 443820072 267894543 476655337 245615040 238579864 863129481 323705930 345855248 746720665 564732318 431900812 713633329 441024118 971384484 787659140 918737982 198536763 654159379 395941216 30208281 30170206 314421324 137920196 126601141 901835906 720647457 970628574 23569488 457079319 96917119 191370989 933826202 557986912 956344299 707130233 345172864 803718985 784184851 421159998 688630794 171722303 942545195 626621101 569293441 386430329 304914691 158086830 715682056 33402423 917434115 666423668 231497686 435510963 665345097 491360613 191478408 335769720 813420846 152255430 325963819 855428740 208679749 940588070 20995038 713174154 279174908 510641646 543721113 288007109 349939454 587273915 40048335 934296565 674051989 977282164 550300193 870764292 599801335 950051755 815854986 109981531 442158396 100926711 876998452 987331188 704216669 654733161 68524085 284412701 489466766 919489748 10069016 852223258 89743954 704883685 701662840 985126272 564430084 99383668 912638195 707604724 621223212 436547448 588522792 630077379 976256354 768552809 383638644 166990762 186645082 912112291 715960483 970612375 716944531 945229277 58211879 674093309 617136420 620922375 123349506 492329565 464316987 717700185 696308338 909917014 984293947 784496841 185412620 952144252 150671820 635894279 755848258 904561611 300508071 151678167 155480898 393271406 736624715 186644447 939569454 358425863 631596349 639186452 258837449 19963546 969154197 862966304 905381638 335174582 229249390 132538239 745944535 795153528 368818567 205284329 75723003 859258409 940252908 935366557 239773133 512531256 776910824 742781598 150631245 214478185 244211590 662405418 183798106 889239869 521412359 448739587 249456776 798817351 610145671 996976053 259007755 693421384 325039930 79088494 817589969 35009666 145411393 453197354 954480433 614685516 536117825 493713952 526349353 988107585 259900732 917285843 258209553 230401896 506995869 226267254 486544213 527797614 450090161 670636828 193654995 728789572 391453726 385883211 830803093 904982048 377601340 705605403 395615125 930143214 948761720 149505017 873153793 121369127 322256354 605783857 553239873 324573117 898796000 85295316 768184297 793500067 448692796 390664054 432474192 52764065 573650824 91872835 88971274 256273120 953213849 22839502 451986935 679829126 323870217 758416610 798869388 72507319 579174382 996730467 579413461 869668183 843161519 809946953 121807584 29879799 780123484 423139383 967696959 453980115 791466704 275203951 874726316 667668593 683145668 289886129 793273026 408334696 485897041 591548466 760700791 229467125 126150722 329180884 973131867 700656413 500766553 884085232 877113966 798137813 625209173 614454938 205733572 8483734 288489814 609134335 161639302 759057994 546075585 721581537 385517548 25160972 886668378 638415679 903948889 254515665 906054326 393811226 589465416 579440788 944063527 585698342 697988405 351448691 577448577 902653977 826805006 711609693 338884345 388803113 469395295 961025484 522383085 185407458 375727028 546682760 364257229 901350220 713393594 839336896 572117239 208913526 982181098 406154349 679449814 677012028 522428992 645583754 694606741 117538489 511915819 394214896 971440952 960234531 4779341 761271284 142546920 588052326 262528052 43439032 342507565 56193767 214858691 249560493 475752142 226223551 646240166 901517837 930427625 253112886 378385015 303908175 681982745 842825238 865708528 130977869 961987544 161182326 241173402 620413696 442438374 852948664 881816347 159897962 590926671 242464932 996143450 125271433 638201047 852950271 966031301 578524940 177131192 252194893 258721738 704557388 905032337 995125492 567946824 463716739 101613448 24473062 932738671 504105499 628172729 357698372 807404552 337387285 513764327 508264551 943578740 969166073 742460019 133487999 673724238 787256369 745360047 658588904 785042614 439083145 458353509 66149310 409866013 710083429 53576765 63104677 809119653 176973564 20959663 873141347 357377263 395108839 110475217 310174668 854036907 437986144 235139577 947035128 418551907 846484398 83285554 714931742 755886379 893792132 130629627 34770327 44094328 704554133 164028772 5232617 730974257 674455677 294345384 142967795 779315539 651481868 359949215 188832397 993242250 228146612 924665690 979298132 284771503 180514177 309078353 431230458 25586804 103850303 624308398 139204730 491695819 432083701 997976195 103494395 424366590 464035015 594452654 341377867 941134315 555107131 359797483 426256563 881127366 180145536 804115698 959293173 845688128 518640834 945238903 654433255 31900819 873983053 726058528 445216076 425534708 269160914 359195060 35368398 595178643 552161646 765658005 910654862 923532537 299182565 643846658 255990375 904753285 503921351 562407290 810890243 667290192 120348654 731729385 236518630 244257193 554961539 856096863 824847342 745183835 655315240 610035425 167109192 756275076 138086738 655610425 204808830 812254925 659768283 143741316 362735424 85139029 471506427 665791926 388456118 27155595 877051138 703264386 218988808 281938790 622503922 298502376 129303456 755242121 561014684 519676313 79665340 217474942 526473059 230687212 484611195 329043700 333142772 74257404 825133976 379397902 55025120 359580012 469762240 258800735 104547230 72648835 798259451 560651823 784266490 682375487 505746783 196919499 936425916 898865416 761447964 578705161 754978447 717188547 82161708 322459016 457120757 719956910 606770270 474683597 685338310 292073277 881605970 963256348 207058332 511880153 893063971 768735034 646181577 744571784 36617110 626004255 645368030 673877432 968884911 178006464 448036197 794769025 323146433 440183145 343073968 928712447 131834912 30228923 839307543 616900008 674721852 542502389 591294966 169256867 103316817 835271975 792958021 333463626 204131867 740055798 509626433 159056886 166572549 753631043 561364950 624449791 771997193 999152009 1536485 803425118 220521222 954513628 944959806 926771868 74440261 18616838 305230585 464967179 990098538 418609634 614445666 996389287 896795652 75327747 139382278 744441484 928041094 323858207 429231570 954089051 397083089 709838098 900330837 124543618 46081836 4219336 127906301 581766333 82906976 608008025 972952285 244340064 556296182 899822825 973932207 5047963 986956318 208210772 723244580 771532212 70715550 913722723 356078095 170906386 916842304 594913783 963441091 699957481 622216334 143193910 562236964 708990724 865049490 492212919 544834572 204383890 917179485 747483424 688749838 664984673 861715120 109256456 271301934 353688779 712659988 689952487 47987658 202586805 410254958 294269689 591548652 298340476 592695351 909601182 394476561 330146309 925509694 33596219 113317903 735946050 484136267 480682371 563237278 560466673 910975318 268581963 185770135 931707634 956761599 290065696 33661258 578826460 812875498 277896265 150089388 306763704 224981631 145792945 240010980 223832641 608251643 858962164 978097812 436424638 531955318 513803600 626554164 917065255 63721073 296103647 373152034 588510020 809635792 556767397 454138890 941411171 134665467 686070217 895106270 291594435 980462326 141522345 387769179 568341812 823674471 403178257 433625588 448084908 830648053 495760129 378589788 144444805 182740570 547803247 921695536 363101786 18359100 537048496 983098906 400998288 452950795 544084805 127982657 168126177 339988257 925555816 76721277 572656122 774835228 943630324 231739326 775363601 681829183 649392854 631290117 31690877 521863824 13005015 273439090 688430861 460023795 410932620 711007803 115987516 97019257 337807527 600538540 812702027 43635875 977949203 526721965 107961466 494980736 238863026 296683386 881769380 217492107 845886959 116486879 478742639 336416255 289721926 430529143 408504952 195779993 637551535 935645783 230539931 382107237 329748700 600467189 561855079 634380669 712040064 387403583 44220684 646841493 745048521 564308610 841659729 828413026 119498955 896093471 88071501 587085902 277623232 709901762 73677430 916442907 700128742 58053055 298100181 969895527 272849641 505559429 605276847 144223806 257184651 150825873 853060548 622397080 214127083 386158245 605500395 700023128 830539480 398755175 395268513 751796172 776249143 698427427 947397038 823284646 522391065 67226713 541290220 75512006 485409933 683804138 892726715 83717018 221787009 786331707 270321096 93409223 88113573 122614960 379506334 937442598 246197695 456228181 880441266 770214359 835933735 606394171 865688627 875314789 92570959 280466275 604727429 472422398 531038926 878472598 161038989 911614513 831153895 451934579 297832680 736670279 927666512 353527418 242799259 871619665 14049148 664991101 289965365 253647174 280086286 964054200 323139513 200792126 575198128 947548114 884918007 231624898 395811072 737234422 384366967 773745010 83538026 18209838 889477572 179249657 451984373 447644929 431146928 377898178 486091325 654253546 355195267 156770438 366228121 173873956 192905741 644495283 474314881 467889707 459179145 553992642 358708343 435179211 930008291 328678991 718016088 685827377 90855680 82019221 753531903 514387808 601362174 80299132 580741229 493468667 327968952 816736594 335825593 412350631 603683359 947274411 493886936 100026426 380672388 294068033 803296229 513932730 31666208 952006596 442256934 833190607 921013562 580358163 752871468 142804075 559531155 796011409 940449100 313656089 619276326 413409771 434765373 739063346 249668586 973125392 505650015 407170826 366254905 869835221 87526098 736648184 473159948 175478643 315465771 644240320 515654854 556745764 546225745 613098271 865309724 364736118 895960533 581418326 719088827 359212676 408127728 449970551 726135765 908692648 430382936 387976366 395184996 266206586 799420573 692422061 785257791 811804200 324274173 677181766 970743800 48343886 132285283 668257143 105380167 361645317 816512570 814092708 59128146 241276291 176892357 649320799 733544047 951361840 675675171 73188412 167538244 220729386 623075381 941051798 757967073 357508308 844128863 775335901 646491249 687271225 890720537 426155754 469819557 564302341 865680785 483522425 873196496 808345211 784988710 299425478 200974018 173012294 39870321 582124778 975147382 50815209 772459071 194837552 634200953 180846151 441038457 445778723 491376891 897450222 32161420 608456646 978434277 72184409 832061564 686082558 796079067 525619194 530246958 250855975 802310017 956396622 234764133 197426069 319562722 803535030 363104019 727543453 518874051 309906360 282066301 13677872 187587061 764452456 810447081 40449992 748966996 533319157 555540107 563557995 707208967 486344970 577996753 151815524 601395206 952567020 98569658 297997388 515028293 841658550 941239477 291905751 123342903 833415224 520667137 554152223 950260997 227913002 951765408 550069300 980300533 118809824 648785586 400443878 356813456 285950436 464584448 89525345 462145182 363308463 991346291 279320588 219528693 8125181 710976258 671968579 47834510 848041269 4917418 423400899 33578989 831625283 946663327 129255870 412823725 300012438 909027694 578593849 150318485 289737795 368720420 623010236 284680571 664577324 478007874 697436077 714125491 871506143 926988627 118360358 727262755 199786220 810112498 635601219 215990815 7233693 954986205 249531131 684542142 358656361 311171625 875746522 961161047 920697713 345535936 780649775 807465805 429669014 635355067 822817357 415071271 120469704 94508898 504279643 586248077 6155404 634697548 381006537 831926178 565185859 615384813 647890988 7284726 622412015 411525103 542164498 776054026 977598084 179402759 166672002 410773575 187841178 103936094 858751628 681524906 288878719 698184537 355257142 705904979 259961673 57021916 314985386 752472210 230046371 339686486 274665254 3375626 789712088 315120168 810169870 848481213 748271750 339206967 194216656 741179017 284806542 855577240 565850729 632210172 274646858 400189711 606646370 871882215 585044379 326117294 250175428 101520409 560766836 454947462 512335941 935824572 228537534 282503284 915657731 197977925 611346441 291031630 557506928 622211070 903175031 363774554 525208277 548996765 503270979 669670518 842610067 73671997 624848003 475087226 969063689 519960514 214972106 795524964 401261292 507930567 462758618 568641464 754706286 54564851 161151233 695821786 494903105 198828939 41261469 578064338 942838922 913340345 33594698 347739634 723636804 795304803 341776292 953248768 620704550 842810286 625016701 726694532 499204491 167041761 212212036 133604025 572289599 751592375 202262871 781211351 261953051 467549869 629926970 469904655 175892525 938130135 38982432 697087384 300069549 876239591 648708924 85400188 397812329 232411314 418142947 494561037 656506784 109315693 785262467 716344880 108580652 844119322 866082070 523437677 402279215 953555590 44659561 473468464 878971323 976568469 177815892 853118460 853239140 205502764 14688406 981008054 305808880 258120355 90630383 302124563 323132751 866165407 220330542 210912894 48057405 605517848 613086450 44655904 297974964 634584843 290269941 847602881 74750630 316742209 865626920 732730736 913628560 766144511 312561527 475895840 689754791 253046888 179594517 429274144 287801624 760696324 651198933 984350733 953775492 170680952 437072133 200900259 87403184 742805541 609511639 288232919 244233594 406414980 371058603 307821143 545018058 71507967 920420438 418057635 900650372 143364160 927072414 727927189 530362025 947859209 803606740 221659101 376171447 668368576 731041855 655570983 485722458 528465297 622936943 901923471 644917118 47247235 543817695 137424007 855468394 65906079 968552079 676308701 408669174 471442295 686924975 570698750 646491223 555972006 904196737 123025716 878031803 297780733 848425423 440125910 768143596 687870096 336263854 312679710 483362858 500216946 803834301 405984432 561595702 917422934 320632649 599588135 854925604 899041621 541528263 780473720 40332823 314487071 210753269 786443456 586889373 78897249 59178324 215995585 168377213 544756374 392006532 135935759 90154873 419260538 326708916 742553222 490901368 92734226 631638235 655252833 586676979 953000684 283377690 763954608 975181746 836051666 665007856 457018320 633183897 662943590 382203181 104768275 635815950 906182308 380741113 110892161 142914148 567443833 319023466 534821854 979248366 446923728 895119829 427913037 955782426 328889436 819954778 25218955 465186662 10595518 171707587 429784636 693652413 278100683 137524067 431423297 546457036 266751407 560935763 435821829 701001398 985354121 869169908 321491919 344130569 75408831 658466270 608284458 702677048 158419902 745750411 101952317 736647983 958031259 632829400 618813135 423891264 841539666 485924674 189680723 401183580 624843918 117685030 887159238 953485436 771304192 56557130 616024050 213131616 423473442 417335722 660761060 590629246 12929839 900833189 595724681 602623473 908980123 297521342 525637954 608994633 123664130 314711553 315329318 924319522 947702724 162835610 416557903 632608688 67953829 983617959 214101421 501378578 933156532 874190696 52237822 125397209 835829681 135896617 515293142 700088147 496775539 550642219 646376902 687468469 78805139 617990279 215512261 329328523 970415098 589086206 3954974 434805947 114627475 239671372 624734706 609490428 949524481 649267293 894176763 798732275 434938009 506166669 399158147 413201593 741150744 301444204 368550046 449883748 628842649 172741687 156036820 496547216 945528790 187194189 363539794 905356212 103252631 14327983 996604117 172322161 946783220 108825114 343164050 244191684 448078246 755452457 242529646 960561233 909626990 834814837 849424134 852546925 402316368 653718523 397878322 336071508 486258621 444616897 233934786 878811487 146205366 982987322 670630107 420073215 655090016 83893226 124784819 960690661 111597188 743356141 194719192 267329927 958144437 670720017 148362570 254999577 329140273 406017494 74549388 317962330 342876078 454881597 589802784 452087179 722247967 42746467 417860208 282910987 481562078 394488712 906960152 52529677 811650442 143359335 605016032 282373833 306589968 157183393 173748089 848721471 518843149 297379952 82782216 582787858 940385389 567888654 877317029 95355294 695747013 280604304 475828189 569059159 708955496 700717259 685547962 796278524 855469316 511008532 654970738 451141536 37564031 955356136 599722501 256289283 651455743 255626587 871472297 52810486 491522108 544401681 79071589 266505499 502216075 560228752 556486002 377257071 89520093 572395658 867400633 459656214 698559881 403187908 917481965 782571217 752509705 349061481 292248050 618964562 625045153 452949247 367300569 407850363 749559790 708026381 996112968 831587395 145268592 943183967 802054597 172700319 217552090 392650336 72439496 256928313 27258256 365671529 770820741 155109597 140876395 618881794 993624329 606160743 107812462 111854320 404541208 713519833 517450603 230720916 690396595 513520585 492150598 810009615 837196655 784764809 506465008 372569464 599870230 608978344 82559484 989894811 715470694 594094400 521193938 792528391 835509854 164273606 964854329 849211534 276663183 615695467 847669097 655098480 260578131 127103543 10651048 464940930 524792519 441721925 578690717 685577374 704003448 370080721 253525391 407166290 380054504 514482996 68760661 681328959 661338966 880000608 176002588 948206669 963479203 261811778 780923634 511550062 752526620 449687032 137452608 244544384 15554743 767767186 755355729 964598227 335118274 811187164 197193266 110769857 70915954 487255314 211890131 763933342 906824181 737886107 146484705 454071187 528532790 631302642 197029965 429012411 456369247 660921074 145745670 645361399 470019377 809241316 660887538 938692030 716459790 571644866 518156783 336357908 92385490 794083095 762104857 756908005 31508496 897180176 686885455 593739601 370659051 189293939 878348327 6088421 140688673 636841945 414754891 771195154 97241617 757386504 982578327 442561191 901231463 446589131 406950502 17847343 91120715 802518675 54565442 47212742 985796078 743418648 347252938 356472891 323895732 939871311 478162497 529612679 396538027 654520618 931782747 149853383 912971518 331740033 405161777 982935448 329018027 433281187 649517088 244412536 306735478 34440979 329972344 51912373 380607699 797225047 241962536 868860284 580451208 823591390 888452759 802657564 635606165 775512498 909624137 890466982 38166738 819671621 466825704 465601479 475692170 493145474 24463763 717764074 178578338 95913373 656843997 615818268 413778770 472479198 576053958 43818739 340867151 255005554 555780740 892877151 61843130 12490570 592448228 317335909 464355284 289835143 363676443 952800777 400842396 138726230 833692893 152088782 271575208 293749929 947199352 863046824 640072886 646993953 729755601 62153589 386497266 358909701 94204318 521736299 907490948 876099519 473892674 949622808 60627545 489504683 568133265 494595847 903133795 938961713 203439005 179573832 540058813 561983802 147427866 866824613 398056050 148708101 938851865 449251203 451106744 142366530 162392425 421632181 93750649 152623275 39881618 359629805 945333232 961599056 846249462 592591921 868780803 20964402 320902422 632455587 247518006 307118791 794106781 718682450 141728706 286818299 835636340 529684248 397191381 237823746 850231698 78620885 896930602 27627996 388202393 814880624 786368177 123030892 212902580 192310427 522664784 574599091 829559071 652554124 142079446 495040398 824503248 419718916 645418937 733913882 39631352 781425916 638779048 149507565 167499439 803463098 548355668 192198103 515611062 651220639 865698628 817864228 617741701 363653111 571647718 881548725 199668628 295077813 721313849 76177789 469512158 372699613 920024194 439211849 148095595 257007879 697790254 618949954 536259101 990764291 170670055 442367983 632905553 515233442 731703264 970141077 813471836 46116945 36099288 926751846 250419452 946195890 936727288 297167372 183025098 366999516 823020581 839740556 202470713 852557112 770552674 492367388 399008122 412252332 372560766 238515428 583402079 492351550 576820288 123756907 495258633 536981116 584932383 732423786 401630986 265318762 762536040 143904246 181527157 904070644 36148869 224995408 686194981 760263872 279764303 919125747 14840596 864480683 749726907 34779277 3845088 459650057 795952882 43994162 364882411 883041077 545962266 536005898 635204799 653175348 238709379 373030020 798093793 820040378 294151698 885358658 883971112 156798916 565942906 895066290 102346510 423096863 223555236 433792102 994460178 842104803 143877438 215815652 739516057 372487659 459694044 356404466 59020017 344826100 240729470 678106531 523271268 739787407 925707188 602557056 232816502 648612636 136592674 578935224 719900114 86942101 890991569 35043458 679791661 770873421 623071404 974116845 584660014 445421116 258458288 466505383 664727824 55444746 376950079 531186453 586589061 267873254 301801920 334589894 974981506 149716856 927140087 580419841 223745881 624553438 600023614 702194941 178558666 931533260 225973422 786630685 438141404 983442126 874219097 131739792 202210454 994497662 557522007 250166130 393890108 341206559 178362617 652766225 568432393 1173731 784087691 190618051 281471489 957611777 128784663 905066731 140340269 631179905 487764412 978569051 54272852 28380583 562522906 604852555 396354969 801237637 708617942 885387790 782344216 780105298 270468542 620060464 184985871 496616751 515639459 272285248 114489462 293578614 345302497 700906758 176799771 988226905 499436474 518953645 425915326 176800703 336990029 960771144 359405243 420274259 965417906 175584382 710928570 784723786 257957901 489495946 562645419 976211587 694832333 354087604 195289610 336747813 294511781 886393455 415542795 266489335 415433313 683145278 549641140 149664326 682527994 104318575 215645621 792794641 856623497 489419537 59987175 429909194 743778842 158856912 455884680 157262191 172775876 679511625 337051134 628079164 843914371 440576992 507143328 900921266 126567784 158984605 35341913 181395535 975757091 95952468 844037195 994804981 761535236 889561535 116137259 129032573 81399060 510959061 135522481 92503710 965212434 74276548 480051020 420585258 321696654 752839080 791652411 12350214 271542139 871927005 223835720 545268247 892128459 923656300 916823719 280734072 322944480 520230346 273978667 621875696 731220838 400058976 549664002 304002184 596300830 849572788 78301788 238838030 554440311 858246162 531178727 828279251 960294146 45190656 98644140 645882231 424300738 360685825 28990635 912225753 664770070 17433990 615484570 779937136 203384557 82174781 969095167 965885261 168759991 398060951 810416586 804131574 907717284 827194889 296498635 633266209 342834040 329992974 718573295 33260329 168140481 288050277 670248316 29605601 405060205 790418502 134440901 669412234 343891675 407592710 69584398 375838848 384543469 221758845 264679617 261869646 982252581 499055869 833678010 672914352 168024841 49906207 376599099 880892419 348572017 11501729 665723069 740564915 106625816 417594412 791812316 992379597 875413518 308796252 79129523 790974339 104550639 473767923 997550203 52580946 253358335 659926505 98467201 281009152 610470495 7599249 372058592 856863546 147892356 309275779 783557554 577966355 702062072 883699786 693630341 702064035 801382504 738766557 21078386 834034472 630610066 406275353 625042491 835124661 16844984 654191697 192826071 136127444 182998698 132956950 110730232 435806476 172056786 462869922 427139584 926211957 536757197 382687609 797381047 75783497 448282191 710045918 716981300 736522369 92903869 420897960 371726899 634760645 197247903 109360295 345717806 704353263 312393288 447479611 369372222 351850936 877542393 368343442 674548644 20711836 634639268 744012727 123729341 852415929 285646020 467818546 213607265 510977292 498389750 912497935 615344002 158745864 21464690 256474771 151442161 534548931 134856674 395601371 595841218 767622722 304857995 631244515 364674929 595988748 109131635 329788437 992452060 260497740 629395878 333973193 170380072 766311721 133094038 674797479 74987212 927142458 922865941 167993796 777450145 545787673 569433648 655631136 244329657 766337322 669344977 711534825 11393687 512699349 231485793 310416769 174052278 548601451 741022486 364920066 20099392 342956150 404945492 153405671 799347268 276857125 850437810 798007765 28397429 800762532 342796812 219223276 876497872 65501539 508710636 699265381 953464898 258978125 485658654 248065633 930288581 896934647 865229930 483012685 572869748 871897219 992979439 815537204 269078658 835674211 720440466 816810662 479781626 407435408 534451594 452088765 812503871 593391103 438010244 570904346 317573393 297483037 300099030 392518462 356280239 121606952 798267587 58076945 77784383 601540201 266876583 762534605 652855989 917811383 16960138 982976611 76068262 331822933 107076560 85063877 134690038 16521430 429713096 961437485 432551952 470657913 988978211 30294228 179187363 53875962 435275544 33523149 803058740 582023111 448831343 940234187 581289014 773438368 383300713 332688723 416163942 459438547 131605201 366894039 925912341 605549291 335214778 970599278 998418266 791918082 370131360 44852083 579737789 177252969 910397234 248584482 582615694 913362252 962280542 388223301 493822085 235114937 9649196 363248772 390522101 663580152 610587050 474857274 893385299 84005342 60117601 502048972 588211564 754814 767634725 639758161 729975996 680465791 130766583 338486390 648643531 295483661 551116574 304604420 871690913 299365491 128647395 294732504 621805956 158227436 966911437 913895279 523118516 951787448 789862387 259078545 332276908 228715568 276992708 397847905 885467662 283307903 617079933 384089424 508633993 432568046 662121561 71394954 362219166 25304311 759503308 103586393 932441687 70456905 364910481 237238531 323515928 923422023 211250648 765268510 255846747 481165546 223962936 989975566 23934805 280159965 509718099 226739423 400906537 925860584 186130545 136171367 293675048 769877383 114776681 529740943 18953508 446781932 642990578 923332482 404682458 385874855 687375701 313589570 842442742 143239958 919689875 991334308 69739872 951742162 142495993 807326686 254793657 859959937 190431731 739979741 286704185 18811559 915517095 304386424 887027503 175434159 300620146 953255938 818852895 375066425 753216417 874458149 352523651 456815700 675070016 479347372 106330334 302997217 459171605 799682171 157967617 900446616 572486953 521829097 327328684 195309121 940036788 731426204 870058691 354159586 676719097 99926238 692212103 880019869 476823269 74103163 801056052 510680935 432320561 171782048 188393588 873662030 567529416 488908621 621183996 614314589 63866098 17606760 458597378 637398261 818986109 818306707 405302518 231150466 401659312 490663758 563708120 115609714 709963134 564257163 6078478 681756975 881971922 494606318 929692191 999523906 208585011 448291876 326337121 305650015 732567343 269714223 555695708 948599390 194121815 255527284 216684959 660077585 293360241 820968940 836358351 111280353 943688994 381228775 482983053 793544233 386693080 549691087 344175039 927464548 245395751 798996089 207233124 789448615 852156922 277666776 437913981 62817910 14519208 54687623 871948868 649596662 995404698 31967337 937879094 166500517 151897673 883885839 391397723 706837172 611938386 996408716 517375389 883196507 725689411 405292961 573875102 779918937 199093426 769373629 890632679 486326858 343785096 711362583 267398342 525013093 890048839 115459932 882346123 981577376 546915733 982413429 77753021 614518588 872510155 89037614 302306098 553185364 30936412 238789349 412777319 366719628 855957248 499607061 195461390 46857914 418881057 138934251 115078432 186044978 582618724 58584426 642619696 885530836 269575757 988449850 778861640 565236450 528507055 633644693 383513242 596917237 339486900 480446221 364702648 509045264 69494651 243534685 556388880 672223952 36025824 586275602 123735161 648824665 698005904 837860790 483575549 968304414 346935136 379380906 56326056 129279458 448657972 763303556 610232628 248896593 722566593 863873995 11444880 864691716 698357911 577364163 881243339 796208583 972429078 96601314 48377943 752009287 945531881 569148574 681607619 162316969 64315794 91309106 276026470 355114929 90994817 913103057 399907409 897324278 247957182 305634061 44457022 906721187 539410232 919509241 626612652 34696856 157868217 880431153 345503167 955056337 771492833 743642911 375478944 9020874 834801591 477165708 614831192 90903836 412470730 931232065 739249659 432784961 609878522 81588916 894783017 336995351 850346606 267455510 370884212 642289996 568344952 352013320 812952888 613222733 439951223 624410595 989842367 889920823 146697695 837254222 620579014 272479050 295208454 133194098 548467314 621418837 192377257 484419396 300574112 215677179 974237043 98624307 189452650 814164131 939284484 954786304 61660394 303951747 953284272 201876003 342058480 644201178 873218699 652147649 908099210 351655769 523011077 69286380 755115195 238699118 87138632 591156076 289102938 835602789 604457551 168821042 322002074 743339758 472667886 837905420 434157914 126335685 217792248 678000999 116852376 316461504 35836224 154368931 76061362 410018923 602694116 583013193 37288319 822627400 887935674 78823226 601777667 207775518 891640578 349605844 485683670 827803151 793312631 766078905 22062168 101405565 490213421 302554569 739932772 523254987 152696262 878654709 922636986 777264885 866743482 707765487 587160842 963831714 833160096 572020048 791678893 332661035 197134631 919183328 374416138 27385438 51479473 798321483 824965036 502020209 250939741 633308812 922106681 693487596 912429787 994682902 493826535 935051172 387429272 267582561 506882842 114023760 371453536 670525599 689674341 375961115 334983514 265994580 953225721 88615400 910849398 617700580 472364446 53892799 396137001 641551434 678974214 535342395 84578752 76618969 602459699 562457072 416496211 42393275 143726528 78494522 575437095 181434316 958401377 576820017 672622602 958377503 444872150 745515339 61220249 770817110 318772690 961934917 597473591 168259913 122739231 838121291 461869065 114580138 639355844 940392922 912911953 664323303 671226060 551921850 30453745 672607073 660778194 366293801 611764842 646616211 300803558 791395181 982159989 560125677 147622996 222441376 497000081 673511353 689344593 611463671 294197868 504699250 134372090 68897828 681931375 850080161 258096731 193871337 13259004 665158864 583334639 378229542 393830897 224384694 40898054 735158232 617470412 179146197 171359047 247416254 456025732 470118828 656454577 855400948 522354889 220528421 968643056 215798696 800130672 623187251 212018996 379976707 693360676 572742406 848237200 930399479 173501013 477958081 18307515 85196003 798052855 395758580 410939974 245902464 523130021 824609233 589199358 287239552 980266930 418092731 730982104 271231168 602750223 414202575 767483232 621747947 290999025 919902974 181638843 18142729 940834801 526345954 381073618 493009290 764363300 786974735 521018901 580107427 742012133 942751123 871588667 470989649 732372699 917654473 295665422 913332952 975237406 657708878 724231831 31254705 551265517 655709498 219755012 32360877 659120821 113417314 445850204 910844514 993063943 819313650 704210004 800556307 536126718 423746923 446350191 626440815 738481408 972195996 802958645 646727992 881416255 764209150 685292303 107551999 787583460 793803088 412748715 299996099 344468203 34032710 296236713 54011922 105170864 496026229 567096076 600662597 262204588 345715392 565868407 348073729 998117407 190026061 203529774 425256362 660626266 611287243 430492384 921284548 427351193 134306341 58688820 725071321 778682889 528284189 113096048 60656459 948133043 390539715 981870677 68502006 220782180 712560055 533931925 215161143 357515677 106747715 449916081 915985046 135959720 48428199 603430960 620097913 733017805 496759638 837267111 520314190 66850651 763955882 981847700 727340710 212741110 412794144 134884644 871149681 869315336 855790620 221224147 214637581 421529042 426878423 434943238 385522696 708940619 892332968 399743027 61632047 640427351 993298131 136184371 81895181 669701598 697009121 838062351 289063393 479065116 681039846 65676529 989114500 213447643 690103799 687639439 801415343 777302851 163371061 764691168 220989412 325465145 657298478 212010621 87163897 12361914 425662289 830846646 867952340 390212199 316263420 286500811 573878025 801057672 482037335 844723830 259969307 732105799 140539934 617423485 204552836 805854904 942978770 921053918 799614365 340926630 552185095 481040821 57125284 396988675 708804305 23701098 572351059 628759294 314106728 735118659 916549395 375754737 296190518 921975289 129300879 686175089 844419985 726836616 489098578 625093769 173497104 504625370 560371422 184279682 233427712 61341641 103672455 221704852 750265920 766905376 602812566 859646546 857612587 307753309 791911659 915866240 547454254 990180121 950062924 808395008 784238126 584370196 321310952 88137412 81568818 562613863 912639538 493514748 726172996 165291351 464429040 772432736 939830836 639200950 39983626 428763851 812140877 576003625 194431668 512286541 436546805 273586639 888221004 784219726 251686335 963543850 285199904 768470704 267607414 82447969 652999232 685087487 628820703 108201098 975512437 631432954 728606995 597644194 536499003 199365258 200774765 797076228 464306301 320818594 808611420 91826483 286632883 114888067 640333018 42405335 293331155 775702160 529912589 846943736 745076511 699274857 2449641 819719078 785045040 205679892 766858395 390717810 584494544 800127695 114303024 706835851 479517681 341882650 842853918 249917706 265625877 319146033 365258693 903625202 988082978 997539522 151648399 359889036 808246259 746568511 579529573 750204319 778994950 566918774 847394484 871526650 858765330 156341875 119340056 480327851 131075192 34934038 660786114 646338306 669357146 503994634 574411612 814503588 733678518 31948903 959436320 748885848 893842428 410654816 731662482 9825904 671866163 930452384 412109618 422079042 287880243 463846098 589652940 117363678 89259990 385930680 408777251 252086345 346278969 281940649 627956722 35566103 605424759 612134116 353645804 177178082 34879910 802796639 181280371 920560101 304513115 601619875 445929922 782557421 660548286 375877551 669474149 505661955 353353744 835087555 741364225 443327219 512206467 736430015 741826722 885896310 889328781 463333154 729783117 786007293 428627460 752009510 190811784 854328894 200629273 624274711 512634150 581725584 422571792 76508334 886984617 191955408 836467650 199056924 385776949 987378581 968073124 651541747 803134507 666720149 495055312 300886150 54389539 6412709 30029535 343371922 959120814 777358698 443720845 986475541 12915338 851685927 8733676 294906130 19273130 244016786 985312680 561283210 416658102 513022187 325395701 520636839 300355090 869361672 793081779 426656903 282227262 204256729 240404026 190378018 773478367 940885118 627260776 412644682 680102794 136029340 103472330 507845042 320500511 759848152 895193823 980358363 204558511 895434098 789546260 896792660 252938015 241030455 805592383 163463317 435843161 47808530 363676634 971215464 758375221 748806491 612082587 400538435 729232700 147036214 111133584 553301239 47087802 212603008 279473083 154104267 715825698 977956054 808385927 525876071 801837123 781696618 426317971 422485115 244159264 972475299 756544374 954728577 988401038 298492720 840757255 155639780 791963495 205028630 124440294 130703521 804106528 635171667 380109054 409217785 103679079 163779561 838962871 126942200 485002844 192001347 526906018 805514923 831597140 198755017 952823078 197399910 125553058 635955306 575303771 998970743 372385611 478353043 737855314 667125304 400899766 125645736 744304195 851948038 657761637 319681693 970867606 632569850 731359661 732265360 860739185 959055856 194233079 705328887 764583984 598677203 407539760 9279178 482525896 222555883 175450517 914022831 832663280 485255147 820205728 197842403 168637127 282897395 899653437 475441720 687188182 618382308 798837391 850458261 287201381 505243513 919167838 338792881 861335180 273308289 410164342 550206142 394803769 988222403 896429445 477745112 363938456 587563709 743999546 408498289 664362880 876445648 30770870 100046506 75371008 673767858 336859720 81051600 891490299 558520988 197069018 701842161 901460379 308120032 423305708 280105114 511842938 781808606 296805774 463177933 754204728 270560665 861001730 340793098 850491332 697435203 919075052 937873292 473360562 534756610 984288364 617999962 312834360 897354861 601020083 172700759 453933686 214411930 881924039 596186745 444433434 787059415 806900034 331519858 673046742 890658669 863357207 678474772 241638388 865460916 287712407 162568949 200840110 241060428 205985716 272064374 100971361 776070347 532563235 447095008 523534591 652761492 542601402 308579654 50868309 923936898 200857639 824865168 298608360 556129205 48470161 294919643 538963366 931301790 830418690 66548544 46237495 696633464 136797912 779131603 382872497 752888074 24218311 834918231 401482440 571240145 463588488 714574193 662034868 821095276 223153724 380378956 882394738 519444113 210439133 443657863 580256771 859581188 287658911 129587184 340129952 361594007 549272630 43159329 372806782 920188920 282093590 542063851 488557982 832467629 73167797 716826676 228724983 485866399 781571859 484980599 844080244 928649326 964601151 108643037 235669623 489568980 318827785 572947149 406679350 634229258 417185039 73543524 254633311 717870660 732758579 216836494 529756589 954059652 806261649 133525231 152194759 542329427 322118723 465599456 859335378 115045903 533689711 331858843 967738409 777404165 858143038 513012848 181230965 367156314 69565911 744353271 259779657 131253911 293378200 326310506 33667075 988901284 35570016 24650309 309327785 529426067 265078660 480599139 942973751 616631078 763314221 661928588 281172112 61099884 157160082 303584290 71386931 116209014 342766611 768802476 422417266 104810523 482350070 910116613 474670997 221360243 267907537 946912719 474356310 94526825 631957757 924343758 325607437 318829760 330043732 895233892 474305941 188423491 917419353 305500360 817188542 667205586 622310740 346845533 831092665 940776287 598389988 893955550 72685968 258260828 570114614 123740926 236161386 370569801 117396884 65442770 119055030 177999038 415804182 929465530 891140602 810924520 867757023 347340498 968235636 920028846 412988898 230012506 670198321 71282978 11515383 894515949 781620486 239759320 978856486 219837409 709813391 175466789 410003280 609143909 192868404 954826619 623359248 754147923 876185944 618330396 338986944 667923760 506737644 323400595 800564164 749871795 962035667 212910301 395101319 600584836 657188480 462195086 767793451 15881820 796957757 885934483 276689238 234272709 415306314 851131222 365961988 973478342 440292835 747389808 726444832 325638837 707079657 48266078 31273687 595116187 486747463 261450643 654196845 510888523 375838120 842444834 492789889 525125655 772184529 743459776 14322697 936294591 728091290 419988510 490638557 236862267 366061970 227871828 262111995 631210122 223141410 398400240 123522713 342470965 941438646 631377519 404606831 527393081 852598462 406677967 868425946 459575189 677050484 597593462 238680869 946836907 973163223 211216078 471180176 894961226 346255891 187689148 708413350 702400162 454525978 132095749 11996371 665461952 325801807 843318666 37028181 363017955 331784774 660880672 25157001 679659525 505975607 604275624 794177216 696158978 215279168 525520823 818755018 352264874 723679416 580852672 55637180 114901682 606034048 33664312 708739364 664502988 924396606 957196230 688750370 157073525 697757046 347627882 733376140 950269576 724191038 936852558 58433758 672309243 137854921 212292499 775287153 420316845 853373549 203881124 709424156 376881553 102546132 809589137 21041290 787819379 687740885 322863402 156448752 672502081 23847721 115011014 57712496 13721512 327863021 197914613 378491065 215890523 719412100 866251706 915647765 103278785 696704618 772613355 342902719 352140077 596122606 20322058 859837381 552928264 395244824 863498018 524567409 195433795 893003250 587284254 578563180 971058937 854488005 545545365 662514651 814657898 155119213 714843992 951802200 331695634 538889589 970352232 940829824 580964833 549422430 944796330 217092630 360244852 731680686 799572866 651017687 471574296 90200388 473601275 469529426 275322041 66697357 757582284 431873298 505322175 417970605 660755189 314394333 278810752 708017518 411244571 327152099 304860118 938048894 750615253 413986197 455395810 979687901 978933282 229786933 714002326 640656302 263417248 179903915 100549492 351260259 101984429 122528442 193681463 235863132 157446750 694504588 352207228 322919724 38027032 205872872 126315043 768675493 365739892 113242210 739265930 230110533 385253423 432581248 54238246 856189192 534354588 69556142 839927874 159678054 515933745 23582722 905363309 92050588 545473589 219353966 867967031 433923922 633288359 842456490 382363659 436564512 427829591 994806954 459696085 383401184 379129858 869467759 575869602 582579223 684455067 845411644 419618757 773552488 212087372 377617449 713417647 744913052 663031102 276577026 218304603 516931971 553551161 430278709 610075318 963658179 56012309 473285071 14041522 716025317 955715803 798670265 298119329 446568275 359792986 672268892 420435562 639674299 544601410 229286205 398800286 971393565 765292171 16562216 760428963 511470095 450390082 556282010 905273683 753296710 147726097 168786481 380480165 288698854 62743881 654618374 102278066 177494326 188699327 933350334 645956172 112203926 423613826 571473399 73890926 207831947 584765890 406797609 713714510 61072906 401535682 493062805 295511494 983096383 825282815 129529945 87685835 632632784 952599838 7661107 140790933 221172176 587382962 450285631 368967823 873387157 513990750 157230076 492008211 690905909 975010738 667161642 720895926 706426558 121380890 824836400 116009611 842267951 325760261 610641119 175186260 124628797 236184078 676276303 762001947 233053888 447332338 288091673 549274078 683498349 711799762 823068578 716881877 544341038 411496314 412728473 284037279 108645137 208288564 214503599 906860467 943942619 400266744 780632503 975552300 487735429 301769956 29692876 18289921 24429782 810377156 57919650 748005564 93070666 937844622 756108485 335788111 79999251 604814415 718975215 595308017 770154773 330142695 508797125 466916767 922486624 972167798 60900133 730832079 388661675 769269100 983656371 461591212 97220940 89878908 319568760 925281881 460350129 7061096 177733995 25201010 755215947 426014172 127450571 670424390 438494348 769469310 537650409 394193023 196876153 220828543 767048222 962540712 894338362 340672445 887426185 318394443 119123460 854582615 118503575 116847094 867662930 343294478 246070671 330115147 55773785 224391468 626455058 439691068 8438841 325206255 28862245 841006191 432855345 595312924 759041360 855759197 824352428 73931282 10928951 127084299 315680228 188328869 262907197 447470540 270005073 651590971 194096034 428261749 176262047 812391406 716457078 235669303 613134009 457303104 198424386 296356207 688849833 191964649 421432722 990113308 294386671 605307628 859511640 452026013 938649486 142158060 519064194 565657403 598825440 544828230 225108767 102845284 133184430 280261120 659152519 888662956 82269894 106566705 572688358 454982441 417979979 609731012 621968336 908344068 492847491 466764270 351755271 642345196 951054210 560162323 150597417 29072593 97387727 250501534 111556544 27079820 176316199 890285779 580991946 441743479 177847928 51346573 571728191 876807111 479666877 654483344 900680828 269081180 903336425 16347058 77959590 468662404 392423222 316731171 681242645 980927399 859605592 860464374 993286826 923546743 464677820 527306580 998662863 746975635 897948497 420047669 112358028 678436283 613575370 115846773 992221118 544719160 745023019 890697281 385514390 852458108 29535140 367335933 238943099 933370727 899145814 521328806 460900198 306801840 284261642 25765203 334722719 295872193 821287303 905069813 169616656 244338761 940394600 633786977 94180799 998855557 535458219 685520783 604000057 131605191 583981252 387309873 811493733 638011067 922794200 736363588 520126839 208306698 302807672 967007287 511810376 713371609 400695183 611685879 812909579 92990088 468724192 95401358 156868289 288744817 501588300 912812380 152241844 942026827 274223262 85243297 102261709 6699922 660309868 997102036 897719702 468982447 88951411 733400749 94198693 220655151 247690802 363188711 950124140 558632205 482944896 405932374 453619657 659358156 990173168 497483787 346570017 833772107 72210775 88307376 81817867 587701502 250809205 711421507 309511620 920841336 259382567 512709801 70723143 354093797 329256784 761562155 115507252 265265210 857219084 566007401 284775752 537840318 539854655 239584856 19093271 94646045 594324220 890572004 904413224 380134851 915619574 501181397 148765286 214774106 543007368 69737969 676793201 973366686 776346497 322008922 140904866 601717269 721428537 914666134 456303953 904346350 825293070 905793058 950121808 406087392 384489798 965433192 852081136 890513090 903215164 155885073 423241790 551457789 89183242 428218399 542661993 922438335 542137857 688720652 710465717 36818112 742237790 85469913 638891765 54927365 948323150 596171859 93861715 878694601 937703081 386514247 34082791 529003759 93719594 212092289 666767789 983670785 684325678 301200139 378504000 664513343 658687714 104115223 180471239 849157100 482021168 243732975 270137791 105164804 404846011 346502452 284294803 7478329 532745058 216918541 13722297 856023763 96880368 373002156 216830452 995045549 372620216 481119112 77251387 511033384 342681633 480988518 101514534 122038341 216021964 768556970 931928884 379935772 654450705 556550002 653576596 266984913 746008272 357643399 829105376 469859408 542348517 558433635 84467514 654333061 753410181 536124753 671201371 341334085 736153368 266788697 153852097 163881218 338890333 58411381 64882802 969898615 784923722 737787363 703964455 987797817 673919005 566376019 641683648 594113552 140728500 932678520 971797214 590476269 737390925 814260079 325849497 26285597 103480236 151442670 602841106 673994685 679659951 714236109 856298319 148945136 228741581 968392951 539317137 698324364 376217217 827977097 652184408 163863701 645664092 885286733 100893902 285586006 884860498 540426215 819140528 371200005 707055221 328948319 796213962 513679533 360296303 609026927 527188073 975188454 842739201 189186738 728291260 184010303 707409437 881431223 48319294 919876932 937043585 855505692 451269303 624165732 675926628 963120200 288100507 775547205 941172424 124823624 925007121 718997358 875409303 969346033 484543892 399325882 976788560 53152241 695591327 977275754 962953875 516737694 18819607 193266179 437522315 339343343 425690515 460327142 89487384 988831796 413644590 459933607 790524967 513889035 680365126 209360203 390465965 432072151 896243705 246035548 702534259 22244617 418358860 971061390 680868276 409795540 910458173 219536669 210263188 885468089 778245271 538234888 425249522 303580352 363694196 955493988 524166397 596324320 955454684 630377199 296883277 331028883 958093521 228100582 82305350 225948611 60030647 237945523 995927767 447902321 588383829 18504880 713807491 739671791 615445034 87741406 995383506 632932806 936925748 244749640 330977543 719632199 212788813 682579152 678025941 905675721 146621153 177283192 381717928 55407177 237473271 21564312 678075754 382009923 783523701 662415445 848425926 667134922 86223642 258787352 712244123 99830895 152594419 553980365 396391280 23211033 779257225 792577536 921805877 589125748 71441018 980008628 691721893 603714562 64855723 571924800 744112392 926424676 399036067 469504367 739387354 767421283 246254826 989910179 200668719 703553653 900708688 415528093 362744854 101076752 243212624 417012751 727046497 242490888 853555790 804847419 484083207 458373242 925494064 767856603 591217845 452177101 205099293 525931770 406873012 509135169 941886851 649206521 1526113 79186929 311782499 252586808 374699872 329576135 878906152 606713503 795396413 591829379 831075952 756957547 451458671 654344285 902514862 861589410 535307267 915747161 266226491 318639919 998604267 536290679 21053534 129875549 453103226 632059492 514522849 520473266 508217837 800367863 392498946 58975063 258954254 69839013 424743873 143377550 518513235 936700881 867435368 370559849 250118880 263655636 596428638 843813077 316770769 919577195 721506717 879640280 246594300 610282271 815316300 591652039 746860080 424349761 467474499 607038979 129908076 883113419 650985431 999452032 161777705 374663821 841722821 364706897 281184653 890029768 205634663 415990552 286353498 729993559 506047743 438691256 582078988 101683784 738410097 869624035 396802415 132561119 617745504 695789270 721097465 962069158 994665280 246114543 107036374 216198101 111261402 45152562 296521391 549487336 878542971 102105489 235448511 364207973 689319862 226316228 662296962 98557094 539944675 40216156 168781982 299010356 955372038 77091933 113154813 769921461 621908902 896799277 98337205 104427415 791669762 479869117 795095167 609306483 868782091 598109780 829344318 976029626 916008141 633839603 108365835 90550390 3100953 333120657 459800220 983417063 283529395 908996803 375918211 366122357 538035848 316559160 578690818 124977188 175566025 883750110 272304629 414262174 966653640 731449920 850285967 635829343 1282199 48447717 719123478 106809553 779034360 751079573 867062972 694038298 210044419 29840065 181669637 846636847 583368278 185472374 468385324 576022966 476040054 795092347 812838133 263882594 364634142 68913021 24081008 947771495 407405350 548890407 779730443 648079273 219164719 271316504 987820967 781423167 339778127 808208705 363586464 875934936 700082381 772362419 647143707 247055108 777650152 14171782 601999951 115759408 619263401 927533998 531176453 49815598 798391981 666097847 280727320 400951889 648096386 567139451 678927090 122877214 830830527 473426585 138568352 883661134 915053040 989923149 329282089 154533155 447858774 959471797 352263748 895688557 666039293 896409812 925301407 398891081 757237700 555590998 643853420 150616731 968026269 152642433 862295780 705303055 690519706 284173648 87205231 395940633 760842952 574184434 231406169 686801323 546325596 497984232 45866937 257611577 865842814 667016699 669040791 778555054 233718232 977483181 152430052 80917618 850862159 203069043 60374840 276700306 451885105 251899110 529988417 25947335 84785949 540490567 516046982 837218065 570223564 911401013 617402603 470514642 147266408 352937179 994409798 580529389 746070994 723158843 961548294 919563093 360921027 475531137 680647402 581638958 328778497 88163636 90513824 6708726 688735895 988158334 141649034 387951472 873896034 27321919 50631203 28493774 515015585 939358804 453895148 379885547 672028333 909543201 380836799 318569845 100662273 165980012 531911362 166382054 339577926 504322241 454842067 297049020 206696512 113454526 153456763 241062181 239199321 580881906 512156265 743773355 869148903 793722522 6141210 900163989 585890931 62445777 579183905 255180225 148982782 978836070 422574224 374834374 10440345 403844409 429267241 308794729 802132443 899839349 17220456 397895302 335840029 125038443 308842459 716426257 226214731 652535176 868059021 636953645 218295110 871833265 923564154 503108258 618338564 455089332 351198939 858570995 489112108 300945508 801736160 192240600 54625332 148542392 468063077 842828788 714860190 103312146 791358591 613288883 984823946 440357730 138050887 456056729 639242529 780831070 778661012 851466476 508917057 448104414 955213529 476447276 659057874 43538713 574287879 261283030 999034858 281310930 279853574 953261527 457764061 317933813 915295253 149577975 801465368 609253196 588621177 878995061 629599292 293476401 836944217 834739986 402685605 259940634 80779666 161791629 450613556 625661733 762645111 829946699 258813295 434157174 518044420 887064473 901163394 944425266 63351081 98073209 124415870 138487355 39353424 751049187 504890345 43381168 8812655 385906414 53061310 444729780 171987643 760809615 652941536 95481958 550239893 705042990 688836082 836286047 394455172 833783185 583122458 573022673 393285747 267003191 217529227 616127196 180436021 807700426 172525257 268644014 870470198 600580036 577231794 902016963 151482034 951807910 445110748 698576695 986870675 246341044 406044608 976327189 227334399 241770167 273312901 291293177 866308131 495233222 857595168 815494922 191939851 206952170 396687988 965104611 431732806 871395839 131725411 476015945 91120437 643344212 768622647 678644561 129023788 37080761 47590160 617698466 904212016 361949720 550468881 734581470 964582078 471419935 716240308 162420266 688736642 88967816 911503554 415618192 999491997 1655009 471270933 233930451 321259086 949218607 516164981 376475256 395432702 276058090 830534282 584344842 961718344 860863297 996788344 112928412 818489048 840917705 618501352 140860631 871030146 196198799 882876267 201146418 290063973 505210023 888626812 811350544 157510215 559939699 342194271 52306955 311440443 858422339 491142301 701658920 86109084 168015957 698065283 509517362 905868455 420717810 859707273 849234436 338600992 139505853 7494217 465442520 329458800 779462242 769635699 624831635 489730570 229821740 433328357 639897382 439925709 762663272 66903629 983103859 172017862 496139868 111508611 461502375 648094761 738949358 305734338 283039249 181278108 930443161 145805782 989490557 886925507 814654324 55660996 271818877 63412395 104763631 498825414 465914597 13354131 803987211 10414481 417821001 19457748 773411580 327511101 665550285 740170921 516428431 953450033 862890803 914082815 812609744 575955075 351224797 88918964 725690984 405841183 75589930 529178801 254044469 676921237 240599944 656783002 133655098 184122722 472733144 425445308 788073205 435106427 583625157 106453213 191296090 185480217 825649088 63471418 224941317 987801520 329891920 69185333 502720833 763437091 69341488 606256937 822415564 357432613 568778863 536288830 822213080 670705823 342093371 64131624 720879972 185653502 573743768 953100244 82295886 319038911 160058528 791625100 494526426 701295454 214104876 398649467 783471041 661540528 969329176 448721434 674992627 433199804 198625013 521010593 272256584 632615618 377745302 925232001 793999167 518130099 130140909 167818427 205318676 286550273 579362252 33059156 736495787 100364823 170598230 977861118 35685101 227077662 864051254 627694692 677998454 149512470 151569707 703210868 830454798 523303479 336753151 869138562 612859703 380806631 196740471 920273392 455914356 516404197 399390506 691674767 61149868 583131173 31742411 653903329 562030639 618060414 7578118 831223071 870663332 382028494 440590593 482231467 155710371 78431804 707273060 148796057 849290999 329057341 675123766 552655809 292176915 407340606 192035874 400933101 316827865 821242737 953351455 595493173 819115180 231451082 386827503 271762142 497709364 700561822 616957535 630230910 900620873 718562159 188232092 920721971 725781188 994116165 536935930 622428674 88395763 102803786 46344655 988598226 736746981 190752112 190306323 413798149 666370060 994410921 95093717 166277300 559170874 531857570 109050377 749319754 785461654 448996878 588523309 84957342 402080568 935845195 652717466 482030668 405881820 490392127 949988277 389936899 630329283 110671961 797409317 528825765 328248890 333313902 184285467 330800543 330537014 961867315 842702085 286280541 590175063 513008010 517536104 856611424 400094357 313094270 491947935 731235224 201163414 982299026 467374975 670490573 65560518 380727647 501501484 679331195 68026513 802558704 366640895 87263115 651192304 622479625 609795936 923122275 954308873 112211873 592166878 722889312 90518178 407406321 39154538 208553506 435501964 779944041 279546555 634906314 155784778 83168379 220927557 655987106 258894402 694762144 38924086 3536786 167783665 944475656 382964512 897041264 557645106 83166024 731663667 83591103 427684850 485290597 75741755 514582124 631815865 660297446 50639824 813025227 191277436 637802145 787161620 802138086 131889948 354577760 687342365 326805942 84286583 640293474 991621550 996300567 469403963 611774217 682585256 261837234 768448460 942076906 8473733 219958999 121486607 541694330 822646985 575500816 64295876 354201108 177469694 207599011 451420155 230693000 17249131 1817871 733022173 300637739 261548109 41376690 105233334 145464721 619246896 788977363 847495181 873129165 117405646 226585339 465034204 839583917 791757767 263740358 235683294 475438608 318362170 509601457 46752643 416246709 774138403 216776903 72141913 970286889 185609427 770911968 404053177 533747212 862728376 570372949 932567426 615645972 800002148 832847749 733490111 368962339 652493196 173775283 539485097 54734623 146140824 564953825 104711394 255812324 48243039 211814344 457072206 249405139 725525836 400601049 656160435 304776842 250851168 923650678 752595708 272055096 798876319 379754814 867235404 511527353 579115986 749603503 580530985 79172710 508731466 546445477 809652286 693707779 897353209 961453992 486145124 809664010 307659022 117376727 96128451 949281100 509973329 431883131 400280286 268181797 459453579 666525366 181665973 757404629 162513203 270817728 248708211 574338571 580246529 662433154 60548493 99685306 12023197 982746941 148321694 729309471 119385208 632784843 729288906 122622478 798284084 304505184 151061960 943356350 260311302 322950333 650479058 707499143 158846291 235748201 192772865 544906405 848776872 554079053 194896249 647246483 307867814 854575727 536482230 815363872 41481984 564216308 110909838 193647803 733952842 13724929 535276688 459609984 14404459 62278173 313428191 132906541 826751091 806268315 48295524 799064505 419958453 798561583 248055667 923076923 610604210 860770491 997584477 661125073 167034449 393038441 663302458 288625550 407656900 455043731 523650869 900987213 156845883 211602669 190320936 741485431 223835927 95050149 598002208 637426038 820538150 572916766 668289597 391909407 664885061 718700856 575134199 675104134 678246710 137109911 261960092 791118825 909399144 888396926 500613517 24985834 192966838 679501637 300999432 846374280 480226988 952725345 552866998 475747132 837338164 47742820 24059017 944884847 957921177 691916548 177903058 863047802 106705665 734449577 771166973 819236166 384221081 123216469 50905632 839921354 718053173 952754425 553513546 152920921 789939789 675577970 902578900 479489950 52040683 679604537 647723560 236229318 12525425 133483331 546762308 775178389 939183718 215660001 93607892 687685950 489496845 314237492 27873820 123664851 274132339 216675741 319450379 990520281 823079426 168207907 821502272 497522136 706748110 278643902 191489574 560346748 246361266 774867519 532862584 486068640 484426671 272491696 198201732 647583845 400042097 839384649 525099124 915623220 498600499 909290046 813610435 257461776 977262890 746741644 613738657 117551184 461322742 888321837 310881024 551754292 855807510 553952433 714645754 952867353 660731596 623627142 655393426 801273090 27229466 565627639 959885325 428212645 676963536 86957455 137970620 592899712 551222608 516513962 756616850 724871872 967400641 139083323 718660146 520316015 437239516 995011217 530297397 589871297 224384245 679769806 789257744 821431539 680657744 412548934 522557330 452425033 768960398 32771530 645430991 814934976 970927941 486200041 212781704 742570530 6000003 206855189 464575272 333850271 251185093 872972676 538828224 916713771 794634141 376968684 184589449 443196550 802321450 398208872 849258355 757199399 282807830 438710512 136901893 335722647 983465117 7851024 463646874 533514843 985723937 351890689 500253546 258181373 559345011 871031980 118892743 272694170 450901683 715796335 227764382 801782151 909183007 747504327 579366875 490264017 322172269 75093551 33541717 918699276 410668282 997633797 221716380 666910412 665546575 994403900 315710066 116259620 967672323 860934696 372635010 77835027 64325015 810212248 289772897 507901663 918585791 986552372 539999238 449670054 669933827 248649409 477052717 954159229 22047790 560388436 848126139 973137270 481082761 803086578 88789839 907594381 749446379 950341342 260496405 398470230 167156844 201943956 188635264 53134343 963271825 603636932 676030591 985312624 628445376 340534923 574112011 517340595 125155635 37991184 621976429 427888277 120721708 759373345 702220754 509772182 690793768 807365052 610786029 334828401 124516470 968559606 871723742 487532872 483423939 299704070 140894085 356056595 22082274 642989401 225959599 333919579 661891207 195336619 269490327 259263609 410382622 175022177 823689343 234111221 904335508 17329380 833232003 605806963 248823805 294149485 214289904 45497764 858171260 446739528 484131194 42718620 496529239 845089982 292736051 58295363 369788192 55202005 447074449 483582092 404170898 630384433 538879436 696926214 491887216 70758285 501000978 39703009 878866488 267678908 793313603 30640048 477352131 147945423 224958005 655671835 377841162 495199095 879769267 430707468 174911633 327154796 68416452 373413351 564473266 60712172 484505402 844442012 142643769 472106801 469453896 621959757 283552057 367636211 291223715 72148763 884510197 661903133 334311504 277145250 123811534 341789704 588769174 41737305 630690 335739846 604883056 604899844 650666369 176459302 170924621 357228693 635611088 988295737 921733368 626172982 717739762 4059008 95530554 141524333 307427737 139281070 917975687 563085134 442389730 604946001 469732086 834628288 228902591 314680252 55453775 265466299 866206467 591584780 786293820 202001237 398781350 635436071 444780166 79575341 572266752 736746473 896821785 359946267 23697153 98906990 802064382 66746605 93217896 232577093 626757363 86371541 807289837 895617224 200824125 111973903 989474818 197504401 376165862 902871236 724090193 979156117 999159411 866308536 716192027 622702896 238081283 12919879 115318400 386940753 60404043 461331843 602175700 418379012 972416134 209367665 616607485 202171105 883195214 447193113 726944111 71038996 180877979 666874742 454560759 113155021 138473355 40016635 687416601 923548358 788868144 78611177 68812042 734319964 107659409 969727880 476491447 939913726 252066781 657613897 837427475 31755866 453316153 996386491 200368016 245718244 220848315 426589386 699445833 158685143 144154874 191999059 661824164 993739374 182517831 891854976 862097848 328258718 368676216 739929482 259089444 259166588 747664186 774437293 576919095 563693043 64157876 423159738 523181508 263691489 94533322 26253442 465244084 199490633 385050400 973063346 739123813 490184293 756086702 334805533 69803166 921673764 895485752 809675283 199704306 879566067 373304657 718483724 176105028 909863329 52898680 2571533 467661190 532422658 297079942 964608009 78391482 335838200 234453396 691677561 842294263 174714986 672439308 976001503 461037278 344333189 920694394 871481918 375813348 924758310 590928845 228421787 594968142 427437272 730973689 851609105 47768016 693228280 573561682 341551332 101003072 586521756 981133181 45258548 85491308 871260515 616749029 101076720 806950995 42500211 338982039 637354100 654373951 276463348 460685364 762960884 623266838 163287795 917062208 705360792 432451 838556166 360462126 604807165 919131420 327804631 130227727 245425821 542657106 122256346 101588431 960414792 355365692 167633466 311977929 76766252 510287359 523874709 686247674 716930515 452268456 966772750 942445133 66686229 957808941 106912522 56019700 525037599 162530749 95873569 394385151 540759397 676881897 480137506 548615044 919903910 846839518 22348842 223858062 870245112 769205814 55636969 536299273 602139689 650633521 801483624 802703157 18474646 567123630 937397164 478557574 414073102 899373751 689223938 802148393 453371342 832591253 419092927 7405193 161753251 377619727 17874702 955523691 446104271 984101464 510207467 198482082 379219767 926425866 832440092 92755901 686335074 539584963 234411794 488788355 118767618 396789230 110540887 328419362 699851796 841650210 285965152 884999995 407946640 670390808 123499963 693402853 842647885 508221933 547948659 104910220 924799526 16006370 876265431 634742500 948681900 703832456 324957213 320385292 716387930 120697270 995484610 396084013 705509533 259185272 723335539 609027037 931047662 847893330 451994898 347963542 311708684 120555003 83033225 293509127 712319715 217657824 399769256 260696896 725603406 731509475 297475203 363005124 122446677 954317506 329522453 974212402 405110311 821168692 589355282 453506719 535457513 623685707 526975763 898384620 422570069 847897542 424304644 628380946 707729237 859324314 155767148 655932299 882686689 54174124 515105831 199971406 415974386 658090176 953215144 1931673 948485165 25298998 350384960 936866742 318319130 69754060 48870618 250519636 111233102 56980819 203690805 115872821 347180853 638502484 378009944 721149101 813339451 574647192 537655721 370264776 998867648 393527016 859131405 86319000 387337426 130874337 745670814 158116483 642030954 594262450 894834797 512489044 814490891 288713268 6407599 131381846 809759491 604418476 916482258 706179436 181537205 634394501 433168661 450625953 62984968 980446225 913580780 920541448 566424025 149911373 835996587 945145676 162252736 886788521 558913842 770372593 666920294 887905486 853720219 366842853 301617839 798694551 63787857 472941374 136757548 381134218 80039538 662603790 423818540 579957937 297814113 430096573 341969148 410224466 574457310 316449301 76462741 3359618 535487518 107296070 343683559 892931933 436316477 447192704 968102331 894764197 27166644 342532221 465003545 777425322 868097880 959467241 481281424 138591976 981895158 786922232 417975576 541650863 197548682 910108131 919777468 701649405 178601161 99743051 195597241 56908511 949546417 913925170 486860062 834391331 149461521 477824821 641082337 722318442 304031695 116231481 754909016 691711771 779542705 980487237 909433280 945868480 20488864 225162144 77333816 900725723 647569591 870898308 389246040 271443627 75907008 667183588 641269587 296741802 517714659 631255547 24433812 968617530 478328800 521693332 675143372 212123727 418618862 299697800 477917296 345000319 121100148 256508207 909911044 427603202 619050735 518955965 796597677 330941821 389333138 425106202 827172494 111103257 908638203 477453896 335922884 297221355 845827219 694877927 466808143 850343779 661102835 130054503 469701422 629820842 544528796 517212968 491413884 997301422 320428780 413432451 264131785 316882580 55846195 652658645 894668041 952818859 675727784 18214877 682427346 418876384 786701540 391977189 226226330 199262505 190251868 972062140 848115046 56394535 994598267 803649094 381165099 621749701 164459175 745923336 952417359 700840136 479448517 156477918 76986702 742247265 299102817 132401742 361097524 767850991 9618641 529001902 726320649 301140593 326696958 244315635 919494201 445781128 822260861 974481192 11050596 116427718 92147447 45520440 652835479 755312585 645290319 526852869 60256231 345083066 770212781 860431314 317538758 237070809 100266976 243692752 766679190 825573977 108352253 546166112 584614008 307180299 221768049 339144663 304652897 175091790 376117269 20304381 764931177 54270194 696889194 166046359 668365620 677264365 722423968 318609195 466692892 480421322 354872707 301487770 917327880 550814777 151583517 34204935 311534637 587233173 281493830 757576273 604031359 303036404 319390578 79331107 80937886 190779616 333981473 628414506 993639694 627392727 158380799 995805088 806649929 629247743 983370400 382339883 251324380 668612181 587616589 108335505 428044485 711321415 482790305 31226092 701266277 76159088 438601842 370051259 775911106 504952548 410568850 16784507 328850668 205021350 164642426 745456151 255924004 745542462 575707643 725594666 39125569 621335475 563432296 438388237 957646751 402665238 290674920 659438534 822494295 387269625 715217421 169515546 957309822 174237189 343084437 61242799 628916402 589079770 5313087 265713520 598061974 395946544 748212427 390594750 65834320 851323621 254245824 908872866 374502207 747725983 894553076 888430798 38323162 142036295 35697097 435799318 201780555 309025129 917106103 226550699 538650127 283126265 669687632 923545472 904290543 126800989 675649622 462015128 533592684 82076753 23680980 921157263 766348078 934558007 104665695 173540785 552183639 951046750 594684047 601108404 343459610 375921210 861908629 856967040 570774340 746114780 836378298 421108052 27997922 732602583 38873217 528051297 275261360 790138100 771377931 75992000 888143474 286592940 770135053 120106312 187885400 888083508 436735210 386768186 671837237 206080223 552422341 243675229 267612358 72565472 525337779 793928572 371895270 597770623 717611218 412857081 30509687 991044346 495019222 335416121 604975333 634948486 492652619 710741464 935400544 612022223 558037183 387953560 981374948 397424710 848079329 289488104 357443018 716382751 305197524 490292024 427717166 393397033 249859940 673908001 38982390 520069978 671432752 276254037 852791576 450174341 411715925 397375964 413572211 328896568 112941496 411144888 150328299 358552602 842965067 514378095 523697219 617975403 818114027 461186053 129622310 709565431 657219460 344262619 137199549 660743929 63059893 61131453 807718394 844199476 244579126 638666478 246068384 288951812 938313827 289047410 145137840 178546276 93465878 177291710 563240404 997456432 429347556 729787805 3311426 329020264 406671017 317937304 401364796 576664389 153438933 121338918 4669492 611781790 612063574 529027818 629778978 615774699 989461859 701596752 928781336 902574716 727901123 1281522 479919566 695430002 425589222 439313547 968761187 561354957 903620901 788292348 414252033 157556370 327791041 81626509 970244344 932638506 407310003 656221776 35011771 995735880 945802594 771938476 13933038 587533471 507960145 727872427 996421923 913073920 13889621 800902314 183910774 182102569 107287097 520692013 444174880 918060910 661471188 977243822 827281459 562145594 154120393 351496263 520919821 314470007 607405738 834629052 6629433 133626308 695328535 899125361 290691128 590773886 459638954 293370585 32132286 829455734 237277378 264650090 339099874 851936402 912945993 487807928 403149042 847576965 452180402 308450335 360091677 362089079 612103357 814067619 89813015 525322503 135141290 838842195 93868223 780997105 203992061 37719288 58295049 461953802 992315998 192231275 111569694 931376197 814199483 835470550 679440514 98281271 654940970 186495171 636863061 443063520 947684284 405844524 256341879 338979242 420197493 330325665 749022462 947076539 286546996 441686628 505451065 360407341 571267839 609262410 994511570 984660755 260394991 402641743 562524057 4989862 446728013 979998291 622481430 147977014 21034814 575730756 694802633 663986048 227576340 482409897 456164239 912214045 54208565 501107359 871684321 54084694 732183025 908113905 910332048 939855717 43371151 751460964 280427968 749638704 11621443 662763115 82277518 167314264 717550845 746455542 103452125 438395311 198101637 425595408 251235129 971457549 617217196 12323866 789438923 189439961 42615646 925824742 119052100 747834453 314192369 521697479 557594857 229172367 884968397 729515516 940136492 793903206 802382904 407119306 348377034 561365763 125181049 742400101 783045488 54757849 157356271 741610203 109532589 689751316 664939649 804875949 342498582 540500333 772266529 447473895 46157223 219264410 478261515 473263087 547067187 495846727 586258566 360911503 299165456 683338220 358262322 843193150 965495093 95548048 318708231 550482840 387131065 937046960 384598450 857806707 694689482 828657915 600638518 16764549 278752475 608193169 615631566 249917570 631788472 124219022 948963082 163135165 869954597 786414230 611197947 536250575 579311298 414232128 274195457 76507504 422231395 414113817 415951834 130526003 614946833 146684448 619323877 232953929 49340816 299294180 284913624 626397583 365046363 922543306 888241240 99560132 451427274 815947353 576504306 996601883 16034048 767498185 354274315 923825003 28681715 734783352 496504306 925781904 153881753 683751720 877752022 602201935 886898351 562352052 429571829 391612090 452160175 638924761 514820103 915090998 138647818 388872598 498650240 681787393 724570792 653185298 489645692 203702030 770986187 181554624 54318314 990401584 160266394 763992445 892031469 278010773 493483271 614434647 328811998 236436682 229667569 718282810 576190696 3567706 735654450 568155156 700422445 557666724 869356716 912926627 814208298 836968503 744007710 461072438 611299920 138103227 653819633 118391585 129136899 334064134 161634522 466716164 956322588 466935554 622991734 503163533 26370389 681636109 360897404 649361838 805053861 781263285 50404099 288337202 485466816 501287418 469899976 265298723 955194561 280228891 417511663 425176069 225598401 983251992 363176445 900554485 536074688 222107685 187825510 124419819 234718690 988487920 536984781 335174171 947336240 279699520 68327035 927040286 80639100 979910651 27115595 81940350 421526755 521856122 13012307 57280323 309937799 386998360 119174367 777739772 397816440 108632176 526858094 556001263 344400903 469155914 432646482 724828466 672363880 721984026 966839449 226088658 244734743 442001371 504019577 348959317 465805965 12595898 950767575 507894372 563702500 561903366 862397359 960255198 961294203 931834205 334884378 612062359 361501084 264359152 25843043 586949206 589980863 727385292 593982311 397616093 96503770 941831112 247751034 357860452 575880386 415598797 958375702 769521124 402478561 340273014 958102278 648647018 167020214 489844229 108263654 630821459 654442056 245764565 674791940 737956329 729570972 277345904 587071384 268280792 935264086 231101631 699574048 885462234 322173184 540062257 500259651 814798488 973289214 196745565 825427901 498104192 986630633 157282450 306397142 141068717 955509816 964646999 264995106 723557278 294728610 65687336 601392766 627820801 331764543 536146749 913821920 968156920 301921572 393683991 19198103 908747809 738542408 717739991 784943389 877087585 99562843 130072240 849491392 539840326 824539282 433601063 739219156 153611652 261381988 569322705 898636344 588875902 428191588 907031146 227776683 166605347 821614251 561395518 855821998 572222773 680935627 986973866 939674288 338285977 500258623 765090550 603416300 902784920 889172737 969666909 721676394 282346824 227373027 288262122 465802202 105959534 921764 930767868 866678941 769740465 503541745 106951100 801690716 289179103 729751548 459653742 699684763 78485886 166621362 614105342 79027274 14692160 335034760 954474157 108828333 334479195 552824475 30808871 962523600 585956371 267669557 749376763 374780056 374968723 162274710 312624947 842971103 136476643 44041509 43170296 926791083 408239454 271530879 760900786 3612557 413567643 366401278 754937029 97279853 562762512 479140511 877853450 411134954 894963515 520881235 728652692 228527789 338603089 459534887 370607304 89184168 288725311 697246564 517030766 47747323 729645629 700530024 444858612 553723124 97083387 955562400 486290214 156502962 181301685 268306690 911924111 548231650 378183621 341654272 658403898 540979887 198252267 712485772 999154585 12107544 1977476 765986525 617535976 907936068 201637971 138736618 703329643 703714531 65771979 46308461 243765147 73352613 225814689 566061807 848549600 707293616 63512604 955840598 641036056 265800578 219293898 397154416 522812354 383006363 313924485 73149754 702574305 930342903 437887196 466370795 649471708 280974896 77864212 676470074 802892154 820145821 360702965 327407482 735064583 739402653 802271682 182850549 592261248 200188861 831649051 719125150 742788647 137063708 340369786 25679092 551285081 774111978 883128752 509803306 406788731 989870574 946334251 284121724 935772073 303967440 901779109 814618767 332951319 722059034 511700940 289661738 375719808 546387003 206624723 862551595 650913674 229226606 423315578 487331119 23195862 303899832 47789378 310759879 337076664 879434783 677071485 315050688 41956977 710187590 666597611 895244667 657200976 544594096 956385040 587927000 41316629 426714168 177912235 736960148 62846166 659943992 862213767 725745915 633138395 748898740 58020806 675623538 121512123 567907652 774916921 220194009 356352027 433234638 109755073 761589443 148192955 986023277 117522287 699162007 342232241 245641819 873160734 624809919 13317583 444852102 356270811 110453455 78580195 648795424 62307460 935498993 737650648 83078071 701076736 34175271 697798200 466410775 386072450 665061517 693910280 422741166 561701389 961381984 351297726 953466505 427344933 950988259 66507431 605767175 881955083 816442633 94882987 560312461 256396188 811419916 371754638 792812664 706124141 618278342 186794211 804006428 8305233 949866401 67666458 774835828 437051646 223241001 322254963 577996269 460862277 652583979 728484697 789443137 937188137 485019191 114524618 36518765 919857158 231075158 681428233 766668305 264744810 698155953 588605531 309992782 661780593 787699504 464795718 579816783 206579687 959286290 579763466 73217066 875792121 166189484 574831685 248688453 854857483 542611531 514568137 176014998 941720726 475337467 766585054 680297817 305574628 261920812 41855503 892553412 442472870 617828570 937842714 612642232 491899712 43907213 705027233 808785487 858061111 387619127 314009888 952693469 54575103 273350857 650759932 431468802 587266399 235946570 73411725 195780246 939507342 323484001 4184617 681073222 435560706 242517741 818553481 106843210 893352386 513664368 392982248 883489615 869393619 37156613 139866411 949141520 651692981 336217017 204629454 991264072 872827656 436473431 491394621 62624210 396809774 457743387 537608084 306511804 201140741 824641020 803603894 527270340 275429435 694686174 929489347 520363013 510998516 545232011 766109734 999417139 486573317 500340724 401055956 424800860 395708495 731545261 337678029 895810515 851568445 890237640 115105118 295223658 942924380 971628719 921473814 768741176 389542212 269525187 800947674 734346571 253737076 400269175 126288380 355421092 304715903 66236561 264212858 701358487 682267511 652407643 98440717 363399605 719043643 769534298 300876713 441062638 721899696 885206885 768715056 690364090 927640259 134105219 131484731 589035304 376261738 218595939 624274819 417717160 955778041 280069299 298574871 80796375 192676357 979524488 495305964 932451044 33583366 437523188 851455430 740747673 428422627 210584102 609110884 198503267 481576590 267251690 434009229 816353572 727331981 352490553 606739750 882484754 774458666 977202067 892020218 516730701 518257652 388013920 513649106 123337965 500471097 536222012 405850469 612174682 580718860 917601491 844850177 238813637 345329272 271443075 384398564 552380191 637858851 577354279 274655243 356277256 877001989 268017798 145488130 763556902 590195117 449173892 610305579 139562403 965393176 541740909 371973855 682149570 820556139 893587325 229909731 355115378 414518708 414486308 737956239 99514440 156572316 306194400 523271248 103912532 89310399 484868840 567227026 519544947 742728420 494378462 548011802 60615780 781171910 902208990 226879844 693680195 814268889 799696501 238707464 910564495 174952632 435060865 901147794 942779771 74345166 827427306 825924893 293233568 362805049 191628933 44826193 69545539 429274935 820130543 840904431 304183849 487703048 589355316 764412245 387252350 443297784 750477458 180210544 642128697 881756425 70383265 250404193 319991266 792512145 665987183 795896314 589133833 369647943 988322580 582743628 260218498 827268537 691247834 11999339 357582108 577485697 712129263 876740141 9168688 425751126 875440174 65485850 505310315 378087079 183483981 443973943 736030127 633575964 52339213 708623285 980430533 322457413 746716004 558320946 453670397 887696888 7477123 644630733 377996042 188911210 178370687 95702950 866219010 471763486 977501955 216542554 765954701 499912136 591043294 462118970 582808119 427214400 147059833 401240323 851076084 585209175 981984868 641747977 492434783 776637629 781589935 394271118 351838678 505875812 598664174 137243329 173977798 580855588 580123912 108427423 798496932 200067584 657370299 447315090 208607737 237384056 135357393 352378103 77882237 367350945 976388786 629430072 642772120 48240456 94896243 135943395 73427970 614656557 99770328 425782331 880209305 643435769 564604737 286316895 944627205 567827438 852710628 633145903 271649938 815442803 498281205 745064788 927224728 70076892 319921591 717298785 215333116 101406757 646190845 822348230 457302681 830341333 392235253 919276281 805035804 362612374 385852719 709092 618789404 796517749 402860922 330798627 642590736 238447377 430944991 753812042 44154232 825344770 765062967 576816333 698906247 71428898 402509901 610758643 76353466 210460494 515139019 849597755 829101309 865316610 92650517 325689747 784283478 353460646 424184398 208965783 22129407 347769894 464110371 394288330 10419948 147278218 582231493 340128889 167041710 985655437 573627760 556358409 611389102 289442103 60676928 410828933 482546035 941232164 695187103 504685412 248513759 360837984 433151122 724787780 569596224 793019383 306818826 500537477 98194595 985700448 207522752 723754054 792419897 121820556 872252874 310640902 462210988 167914324 305431853 383450894 693140395 241437123 297658701 402606487 479715594 781469528 965577026 904140353 736021534 440942788 353437498 739563735 220325324 922348966 955846448 390559501 998655606 441004917 714162666 223254733 738631816 181888946 547947823 537748798 131749242 426298583 338024099 425940863 274774458 710027625 476816470 231906464 274310928 178369436 74552595 186317081 43230077 805907861 327952027 426340156 49411286 584668364 37007506 50801940 466614932 732031972 346765414 590318273 821124108 71397511 810610623 147061706 587518115 509057374 476569695 346588225 327294598 792548208 32651132 620424799 492853450 251986551 778072045 765376837 253328720 185686193 986330667 917830098 92420553 202581813 147690911 713014123 237002069 347474386 150781145 756112126 426879462 530735806 582986652 481464588 133708287 38818033 405243023 50441123 302435044 577922440 220843900 202647467 907731612 180571748 140687139 479927391 392321718 304284332 911452797 980654330 572321219 495827411 569474135 112863973 365430583 630572522 238025439 540160686 1806457 84217626 842558950 879979529 286244296 488270978 527388272 198861320 979572542 326906037 535146816 597128407 397175263 563662656 202877487 258493384 813271898 464094962 996549173 852859917 589721465 775185658 983032120 448972476 679571907 348582764 335661366 383496362 279703612 804809785 340494544 361898315 729455066 83424455 778121961 481658078 20555067 437920800 32691485 440878189 196642200 147721450 830932692 460144630 251604350 840998965 283787582 603590076 787754788 616028551 714470728 848845745 133725446 638760417 387754453 556254007 720749835 751960888 160256567 562608982 420406546 358181248 193834801 871163648 562423740 12965470 805751573 52628981 481329793 677782692 341370271 928872182 395873202 803534551 695381330 502559325 274902853 836127782 301294496 424243449 415140592 802290574 444586036 706791321 908924696 764679855 87607505 913847986 978466256 615153341 628858069 898076951 258870359 120161538 294624360 493615278 101754868 866792764 42247745 612698865 29939229 425833609 246600359 53860549 39497096 864488957 119185337 344743127 963326601 372049655 626989925 114372055 98000194 673559045 229820501 56127107 529854676 34955465 47152153 333559349 300137980 340527118 857319242 724597981 623658879 660774168 101333018 255044512 10019368 122542711 714406736 753940751 109101784 407628852 54676232 696903255 500720169 843522969 275695394 43318945 8969289 33329149 940486585 107777616 61551954 477253437 586793214 350193705 406274881 408356414 108013402 632649218 668085521 618101597 837917442 563676614 513442373 188351744 962743753 337406628 909542937 854289245 995340675 935512787 772791645 918502337 941771164 406574558 40928850 365026318 570427214 618455674 547057853 142321768 375593495 358854403 629658706 424454150 396347801 936082019 439615709 368642069 241964208 949547317 31861720 590468050 946303220 694378250 363633802 668728944 553838097 269908557 607862257 122299750 560417713 200914652 65497383 929377132 311859026 274534806 143276809 481144808 792598170 863063256 907360290 47717268 907343418 259694555 480630029 363970354 526256064 967032350 226980461 850024361 163792083 337978226 417371573 259374115 486648610 308452818 377522382 946825364 86993190 95791116 995022135 931444631 947341726 392846348 619580064 131122756 544480505 536452452 40380481 843147739 598355541 883210057 161470144 849300296 220809663 785515860 694060858 862637493 889923824 491693229 825585842 715864339 304208422 266735821 493984532 136489750 423651993 131581570 190951160 508737519 319154480 185199060 661763017 624882713 16401851 179706588 391849247 425954861 347761704 152861773 581780139 862035128 913595017 888113658 450719664 226410436 586356734 968049317 729925805 336063025 720309756 198187364 493910510 330983189 803893638 478211202 655569494 503410964 941607693 373686596 764964467 485060894 71376959 866759983 887744587 544883359 798602982 750108566 213118825 486182098 183854616 211329963 220466962 329069524 816736988 785581468 768555819 220189296 133803301 606400227 739564233 553044289 835104036 232019418 253336975 456652877 617199663 835696312 684321411 100348244 400551387 840071724 145580308 374973004 308297559 157061320 254994160 465355862 240841736 680308933 997515739 948500938 194245780 61615191 167085322 764212177 598762301 504366605 13467217 940868138 307294037 758808582 686076168 982894914 292752849 186981486 5155301 797955766 137954914 850030533 259526840 149623664 669880351 804338655 840497303 694675042 103501383 927361994 44341761 824907303 499899894 427883909 916606071 189726792 307097542 826374338 594914757 624000853 132434429 792878170 486223212 341069515 208180008 265164091 764482853 317007917 475871627 425212354 487871500 262874180 141305458 965084523 383897253 476754231 185908897 384398616 793987840 98705255 804112549 551911205 506812528 611935843 89841016 490517645 721580078 972748427 715102926 127057425 176178561 560986400 529540170 358158184 982314236 51318523 763921042 109267559 865543440 614945759 973440929 117152708 968991650 366795611 708850234 438560730 136355853 977137413 258389631 11313727 250879418 993186602 689550304 479458688 739296976 508854701 126228046 943023591 464140221 584778405 896358074 700212336 598377456 64363743 99492705 438721425 197266910 463527033 214760585 92008541 528823810 758663971 660919031 531182816 445668772 755593512 81269126 98362573 577945794 708388729 868002813 88597201 961824520 389709138 390451896 147042230 621276639 1165704 43663277 856978420 431918315 974136682 858260987 435273101 855909231 504055416 694885302 670682520 310125603 991402904 606480118 16212212 92869891 657510737 738648242 981177589 144260712 444498870 30742874 515505950 718100340 24117747 967910633 587774029 531057667 350494955 679454279 462643970 368764864 833068031 49216854 483076119 913586282 586793219 831298989 693715287 592465981 480341909 807759737 670364817 782492532 779795387 392437585 757260693 59634472 492778757 271539875 388436283 884332529 12353064 529526302 43412338 542776096 660594329 2033057 355377480 18954796 325214939 890091212 52433011 676440934 213229764 192474892 512120769 360250984 350623805 914950597 402017213 278835869 594486927 741076094 768527163 740878390 74729552 56660141 621310589 686638607 135033922 243543641 347059582 681463273 589462032 659520286 218288924 304192071 327716963 418580997 959406595 27153879 697206054 955124903 974023737 566999682 163789202 970590302 266217622 257557153 327659780 936682919 489421997 528021665 123781250 8311003 520091126 234123943 221323435 514100333 358472977 665760147 458157637 758419039 575605777 94811761 316692761 514360171 139983949 326905846 875709859 23551339 941381456 535311299 533849779 315257220 754977081 397665541 412261720 984262997 833544668 336865368 838383964 670826037 734742085 743989175 698598279 953293620 23113419 298507519 298744445 794834006 957208436 376356391 142914585 919905517 590400087 775259441 621278685 91349493 637623989 647111007 811872710 461249757 809322441 880980370 130079742 507330690 439847277 266505379 971101981 242194257 713723218 348328295 311964487 501741162 685677606 378837155 397051946 829398543 149443268 640460379 204108468 33475546 772424112 698123796 250558146 351376841 372254522 254975363 581734081 763994141 617679668 517932115 20112326 887415663 334338162 132139627 794198602 909317142 462650745 513337776 696107803 784792116 651655028 890380392 512105169 954586509 752450687 902735088 956644747 880044545 182884104 810293768 180473346 720251497 240818552 224234985 185546543 458152285 293162114 322242130 380362559 979681532 227378668 139922709 72446875 539409390 892850686 86899914 921362281 424219740 397695028 939050563 646592153 79897534 171694747 342009364 359026522 886399246 187097318 916234733 704460131 727182479 175848719 692122913 873522512 265952323 5271286 982385919 763981521 949528446 471988864 361482333 163035582 981707762 218125097 50976096 226390399 878699244 868565845 542219705 49058254 945379281 362552305 782564266 550870574 817879738 951197706 622782832 695886037 538463222 49430876 514278641 916438952 279950489 44544052 455414412 555873580 737763123 965444352 300746367 282109786 368575553 616274761 806985206 504056844 448541233 196746049 394036010 173414086 799283218 769157923 858992398 741744958 978384219 333160215 401966133 630168630 642729633 318553815 7832186 746742176 269363490 587156116 271027186 993795320 420404484 460674790 541713899 615320824 146224452 328390932 424300870 732860338 127291040 386089549 432303895 223820837 714676187 803925647 422028956 123347017 958808566 34884090 843492228 635283897 809117744 588532153 864272109 983884396 827654541 589733917 8890796 864457922 739681802 185590001 845809996 658627335 941672689 219604517 589880578 206249842 2617484 597969207 599792768 784538477 81588033 781744583 561443525 592274128 430275493 898975649 436427324 600796219 960314283 651495256 783627689 544537330 784316194 397635415 695078115 722595452 793186101 359618239 286700101 802440459 170642587 146948682 233009090 642544654 544218563 327022624 239778078 40069442 303729064 331288756 198404248 4896298 395706833 723509112 20819009 101864198 233497109 584697179 830054018 26409052 553428103 451682904 459579243 371242769 549744194 704478426 477844637 707596674 829378800 323111027 425782995 737523872 891264235 870820348 168256599 844757063 813950239 332509657 546772927 40980732 196376978 270759047 162924596 255006759 639022956 278890684 976300709 470008248 162730792 941141067 393527187 117817037 896003578 783466501 669409553 426815145 98568388 708908596 643221207 618698475 301822852 932329433 533578337 624654881 116117725 575877840 651397744 194832621 654935165 621036988 586857507 819408304 899684423 331889985 245945849 395330346 526141417 572687287 208981712 995678105 991132711 176191518 739490673 238334440 583997382 87276506 922604714 159001045 880580787 834489440 338363091 662112654 421329102 274000085 780508723 883397357 607119673 92246912 573753287 90833901 412278185 139859889 713286871 608569436 551787101 234089428 877749366 218846788 853189586 520684994 183001299 92440117 774687733 412878744 882663005 332286313 291420082 16329912 390471275 298032281 723441391 378963899 906587399 488772758 885899706 467648313 486620440 539681730 984284960 934526108 485596387 800846954 604528034 550440754 483005278 755818444 829933340 736447817 973439008 896629854 194718552 750700960 732383748 947126087 714707248 568588115 309524060 859668507 924725491 241589671 211334263 388696753 918654561 722212702 508238371 12630632 236236629 195646405 715628665 791088128 681709977 100799534 460224178 736253437 233236111 262446892 967160130 974439111 727485012 258089217 281098578 995078808 884245904 747839358 261745187 277424320 169031684 495306475 532199633 101713941 761201043 138432626 332903898 106903718 640131573 239578613 843298024 763953282 392963099 311064357 397420039 597027076 183738437 450497325 623624218 780304582 909804826 657631415 837204544 845890167 652686478 422481700 369288264 229748784 177719620 869142274 169703644 334281727 78709162 683599942 738950139 710155842 554121818 233679304 525128588 955290924 416629907 533928916 985109482 737688304 939994653 308248188 265379823 976100016 666331700 228833939 127356092 607042411 639398254 399616852 221537496 130513336 536190818 294286300 124650026 924128897 498807776 120879798 978640665 849905548 457348302 305751127 843300471 97593682 665014793 833706351 829833980 179014821 512209805 523838934 760035133 415983967 573322255 549773800 743655867 466748926 268765815 425806914 327876323 354491863 601142525 24823666 532908697 166256581 334890316 918087521 281767491 321525079 509169365 441950445 457383325 565691189 471591016 367241082 250627295 441143666 610344381 625963236 277222308 596945089 998350561 100122952 293749810 952051701 111200311 499743398 790323311 578232905 219784655 288032004 405097930 797627130 966415518 855363477 23934676 969905965 970341096 65479399 945657633 393071626 481068677 299808150 714047247 872320585 954609575 361636202 495107277 68482570 262305259 104800723 172493433 11440152 556821482 21468735 104537342 8585242 962171668 35613926 749136622 331407281 226402477 715107478 248378336 442788989 201425687 264937910 298753545 138716181 597602612 889317797 775928045 178394872 985618468 63081367 850952337 684943182 972432335 827001227 614278134 794500606 227113800 446536009 134192876 39484013 976143571 195364432 428390894 176145060 590225615 797865478 643311218 367318980 908490565 199935093 591615967 254439132 980232274 507797492 250437690 121836940 477246606 754951010 225957489 542050424 600671512 546012360 231469759 489011895 848025374 649947477 907644777 714104304 572149036 833341153 904491859 236884121 92910360 846542511 206349926 580378750 879735426 956682986 552252189 675970116 367271490 360541595 71202242 895761459 309967072 151367984 189402400 615888971 847486082 314596583 639039034 52571262 376885409 498502212 911177532 504398428 432870086 900509651 945098938 158513699 863113432 805521763 142215678 140110006 411698110 167976188 17883641 983446427 124500106 775736026 569994385 827304054 463912014 384993594 996967926 287013759 709586711 434076135 807265602 234419589 361414897 425931475 286161049 622734107 234916646 201947046 464532759 995583749 67269987 568693023 989264111 918263676 891382484 818020614 419184025 764057468 224190383 951146111 840685321 649688615 894896388 358769723 899266939 657862093 546282093 953994602 330667204 820059229 969285176 414646932 634256682 406385070 937448266 806551357 705087558 636079790 113153930 382574391 284468430 286192205 497086806 653913200 284385354 250742305 949161634 199623708 449822691 4212979 922815589 550502206 433205546 791563832 91605567 254166890 140013439 975415139 592029307 507210730 60552159 11804492 297432356 808115562 605200093 69337690 401247080 985836765 365977794 175349383 521384240 929505028 389978041 774572701 610838401 517028159 830736477 746439282 941339135 614407924 749540211 704346941 896762676 36746424 679950348 92594799 711858957 881835299 866604398 978902981 221446387 27272239 483141319 664358275 258946020 291916960 555365335 537200866 632850109 209996458 325812165 776718207 91371058 364800648 657202879 431619652 442190121 583470592 31588874 254977624 466899579 676020630 268600782 896807300 515916168 842164230 608160629 785399463 825756551 909731508 423474638 974687464 512691507 991325826 579116632 659366312 814882538 711905787 682746240 154828232 529202530 291341994 132181960 366710497 645826516 250702790 528674295 89762612 411912894 216743318 802818004 423446344 127841279 412878266 828752880 739710453 737103395 690556314 824712332 727842691 767057296 386903244 127570447 787863224 796241269 111203362 688038609 903274739 301431502 553176072 11826517 922607958 624638570 275263909 606448666 939003849 192789537 381154663 932725794 77687015 782207139 983103542 95706628 983315354 152650460 762867849 962684911 452565685 876341852 804248204 557659386 112447834 251197637 207385590 41579636 695427107 6997498 353768884 300183288 298146151 371619997 807845846 380402981 55490827 312202181 813152850 101632405 272727410 955635896 644238495 592685028 931504427 755199393 631962984 551028932 932675207 753373765 231824470 36661600 436056978 437192449 673641595 334782194 317983812 915249792 53773656 227506142 464318525 475555627 566114806 260995961 602121754 135692187 475739907 43719542 934835022 774177142 475962568 118799387 141001548 780692563 756511842 421358361 744508964 545906365 512679519 850615119 100625352 141811679 399259383 260505147 261521260 920311235 528971003 257342691 721186119 274409961 609231267 775925995 786662400 314322749 673918626 814313247 167767916 405524985 900039128 6815062 306306718 513460737 276664225 805807774 973233647 472183686 739241643 467007234 637177222 967680328 7206084 534112146 631119698 59647665 447331453 113589515 404948064 282553374 11101566 630778953 429033471 685182064 305081740 437509826 777079305 830234466 817617795 867431977 359606555 484066144 960820862 498656401 398957262 841351241 104703164 862505999 358487005 736445459 489598195 279238466 335805077 590936621 425221948 232915454 542039642 116902804 208086863 156393678 128625215 33186204 738176318 785230347 145282411 359563056 305268770 869135483 235954015 99738039 251377967 622159950 78744906 2410090 730060128 359889852 181774298 839761649 781365244 775439431 541372085 372876677 216539898 226728222 852994789 160867901 764574235 567315082 172242328 765201450 478114613 445848761 233391783 382931943 380543625 594744248 890472157 137349301 736854267 761305248 515769635 68210611 761503565 940810595 379704788 66992152 949663491 681083630 956781712 735544781 737567107 276893486 254146353 233390538 525411768 553415566 952983205 370576905 594988401 627845154 55969780 945461641 805105357 642607230 547440217 763641963 561992838 88017594 143065515 120820391 496342630 648992781 137885825 495330402 530673518 24858837 667849557 793956471 323587392 787954070 106664074 188864276 360956033 474971131 301210014 243843095 629907105 948307767 270816833 88634458 182063064 205070298 851799796 879363219 429359002 8740100 435690267 399123564 920494587 863013208 950882515 633066106 15897143 891428359 156724283 948330082 351678590 935171176 977548271 991459173 371877727 282003894 102334371 280457266 62071093 416908726 644653391 702682284 676255271 233494753 659761734 159129530 78559315 207658996 697729938 230436131 549005346 208280067 703045183 758430559 586888193 811438849 87393091 151575045 966728884 209965405 705582036 58864195 851114430 221737339 144695042 165505162 611727512 409689051 660698321 314896342 391734991 394417439 92803841 464304796 247167823 492055076 57939123 843774492 349096300 692247568 42623118 647207903 25201136 756108113 85540867 699646840 45878961 556965950 895915771 240695719 516407694 148895935 356893862 998079613 346213235 832443360 986885071 512252264 315105596 759232335 343372356 139334806 325500200 398184340 286965584 458704113 749596317 834720683 228569569 115067867 144849582 601366606 295258998 796213379 184611162 411075293 344118497 856604786 824843219 473357141 26562658 779083951 280454792 568385218 529274647 947750137 162562144 112688283 378400532 818637841 824562657 466116360 612792638 573008567 875999470 12561500 715999094 192141160 524344659 145087009 89017148 392699674 465458341 670861131 482392701 954088601 271002141 862271701 805885600 698546310 751586095 113737401 967155660 365436567 902171822 639592866 432482879 209717561 637297012 580725686 172473235 637349749 509070004 854279732 966523769 24582291 98556144 809433307 955229188 148433480 390522923 695635647 131133213 842607419 591087225 232206811 127106069 755863827 668350196 345368327 378276698 9087093 586416658 871782263 453618708 964318700 250521463 240023291 796169523 959156210 38351584 324092155 830688616 503396522 742196779 593946936 613161591 409943379 470518800 923665759 975260028 263977717 992210948 778047117 652112015 731070508 824244361 208458202 814718961 316579733 911287090 479618401 689620346 715539977 128428218 387130788 83020137 576512397 932853486 689379116 771203795 772195896 566104754 310313138 91193558 605553034 791140607 966035837 891061453 451117967 393192231 321865268 36066355 664359961 785641879 124637346 329805374 457639633 70877736 316012820 348973821 781002308 381113267 562436341 238475660 663782839 77698198 567287331 671448791 515037279 703168888 857845334 661076578 373818812 876481414 401847190 404150992 404235314 111280053 765403 86486107 18918201 353798083 193255277 15787831 772185922 936866281 434234586 224344300 677559499 711645766 902779191 983325384 884147540 279438261 654805948 777103600 270934113 866938914 379102888 372659954 767670923 500934752 644784387 405437965 3451358 669016941 20640378 919294228 783951435 366772862 671461723 28642388 918473787 156954996 796676127 7398865 115538528 209846534 944161487 406844259 733184179 816354033 494726179 396586185 674819364 268376024 661473341 952280241 734911085 549456162 417739563 414504374 243753587 750374445 657556080 55633663 713220525 160131268 622257604 817648871 911049238 274239205 566577146 376994815 72720257 78215673 649126838 766991767 286633712 893695459 932686090 566042873 754470145 509125121 648374585 648402383 107798323 219743676 298354894 698185122 898308211 399685692 238541781 150575255 956189609 794006239 126119374 742219551 18772792 789675509 888141083 798963666 738407714 997847261 113900008 536825078 476194113 898698310 31499569 529838709 913088101 942766248 513056142 972381769 195761444 130643244 730738592 117820880 683712708 720832797 71899914 229576548 663670172 454882836 464563141 878069194 516415511 945498709 659706268 340196401 402195723 526719880 680130519 225345289 116716850 239028238 391257580 938041156 443308831 23459910 255281301 204533989 601814601 601605297 662767119 986879779 58060509 887013084 783915638 470874337 186462206 253292405 46798645 517636025 171420661 999717344 653723975 579940977 920776062 579752306 397940373 361578051 479167387 386013205 154678398 543805131 785416308 98189148 678209192 471436473 749035508 586686863 820165382 509750318 940376193 39521976 563720873 244550158 850234649 549003740 132685618 217449260 807278962 101400416 881291970 516489468 917796106 272523656 649797156 545264677 553845793 261646594 605389061 798587061 967308922 291162760 267103574 250006836 768522931 652657475 556964166 67862184 202505353 106419223 535056598 132780288 907673279 555779434 453288134 443587699 816629190 736080470 223100765 480591392 668598203 95031963 321534255 153768280 643173663 721104598 901484531 121876819 32373828 198743298 466279815 943834708 815327415 410893871 205661951 453068888 880654238 393271360 217068992 938084743 811232523 250681523 212760446 768013202 571319873 6511329 62966909 687891407 391655480 318895490 982030852 738310761 779335487 771836983 711065407 214833219 858260368 192017808 524800494 79149808 183191285 653528200 417630282 430432260 148361795 354727103 642965373 40499361 633044341 288645308 541966751 337381905 27759517 267306656 55685026 976082431 153361714 29426412 402932487 359755452 108145746 189189940 57037079 461605594 945199377 344934143 671028767 312162941 961602392 664262241 565155380 46551892 542890997 158675168 892792731 321646651 13995123 877745222 405578056 290932412 622378827 318797483 847778582 438666662 965321442 357627919 284653487 656618302 803539770 865669656 144341621 375067461 498926453 591082314 573609814 298433550 568743518 101288183 282527133 75403361 525992528 358379488 610159331 817854884 231297254 774408563 512049486 323668538 841625825 72897100 138974535 499317420 7730801 309134737 379426782 449142369 875538681 149637296 346611579 396449745 61019024 434371350 363504986 321153289 645470756 252257274 507454828 239735832 10835309 566844982 534689564 641525739 823556588 146591049 542032952 17782357 378681360 117783911 445723506 138591403 598565041 36980448 13701448 799871947 109125021 435956056 143269916 696593474 542502890 167915410 350555143 778378916 196579577 94276997 776481561 93099569 940449665 662964692 318282266 970760953 110895362 56788858 637586546 753933258 168572544 851208675 605055567 551460045 749473878 562486968 572364129 94425523 962216211 287330813 967205460 338992883 233658816 104193692 392366334 964216275 124731464 151227385 704684598 95844503 543018099 199801968 600593709 99280529 767410712 191436466 199171956 918990115 756017929 605683241 183786973 850723479 913758737 661917931 60284767 29508071 994117639 435381318 243053137 260382307 135686669 783004127 923802030 939846112 242400234 921580994 319645493 664401667 431023102 132412702 340591995 713930961 679181096 239964717 400498418 787160791 752462915 351121917 988590934 149243760 324701124 248186180 732767861 304250931 908767608 520778998 793654111 349875344 125986187 248038067 435230853 152445418 269570681 221430641 78045175 798575918 794903213 810030527 343987603 642442682 854470940 749369445 369817592 914622535 684165623 638598163 827226418 411299360 527386613 578995894 633340073 872782282 20398865 901828160 381663052 849760048 135380056 926727102 776511463 637970184 841213126 846854958 175235060 506546861 837356866 862903158 845118155 579054005 674502788 657038168 832218255 594670343 121908842 403639542 404641436 535855581 376116692 492648128 226461787 232359023 166233359 34339207 350728673 66274658 237392377 642796625 352496087 233355891 284030625 799342100 530635336 104246727 304638235 916438601 982667883 218112899 324542641 125341285 625145217 179917034 384979769 252194586 420958672 230544019 744796930 613857274 456554621 520389608 870219225 121836621 217919685 856169713 807397634 939430857 21342483 819709814 976401999 559282247 192704811 670056176 149141518 752883684 984858712 640980471 515741049 263352700 46005013 887790219 712711534 534266796 564247346 470096609 156399974 156233562 444948553 251062205 184507073 131828184 451315465 993294876 744856414 9816333 935808076 737822270 451164294 710329690 328925596 885948930 22655595 56692607 978773426 33122942 36561218 810295310 398843338 515291127 894528523 884514792 950233028 921647661 934531314 497941268 479264306 983217883 995643693 834708379 469136511 133770501 530471924 583576506 917742117 960753649 735852850 849934946 820975550 616092900 870561879 538296288 434433226 836085134 499742153 633630285 382435095 28548299 818690599 746256452 598729679 679253497 417128096 497326648 401897868 175067946 739325513 355308172 898229622 781618969 914728417 319528479 835563892 272312863 21973105 262183123 239574344 522623563 463515363 294773110 66259961 194855664 441296842 448700081 122381378 617375830 22317470 389639875 150509957 202983949 484334103 186695220 358390062 870803253 236870247 544726857 974555479 744266157 818869837 792642952 745239322 966275103 704902259 276776029 352937561 493851244 485622416 537375425 246676850 967109916 116130810 920519897 978698771 821722898 461127193 936438364 723747041 658383924 634114465 502813255 824199822 898573122 869469166 932954792 313906641 224495068 224272735 382902704 289619681 113793217 549980269 958785767 176147002 356319592 800159525 983249460 568537888 642646827 883195017 712246347 859008233 872420948 37346581 366900166 813815809 643594583 63788037 552391075 54753757 440395529 7295764 240368930 846605810 752816511 409352479 180922032 604768387 75012823 250220480 721987528 894123400 417125098 989084956 62205590 262736387 232429194 233655639 26031124 738384641 70257781 418121363 684410678 889274163 601046478 315792432 80744985 560948111 682648654 594332534 774478807 18079704 798589395 398113535 228718219 137076821 405334023 102200100 313684824 169361668 152564212 41652831 28761498 625454698 795449439 977986445 519872979 426486765 900089470 471084393 796250450 581495311 261686157 620601380 470332618 549556828 948169602 551969983 53827434 836850586 661793336 739831120 242844513 258248356 840264289 63870734 900906790 210963793 876779447 428899869 942901037 170650500 528847468 714154097 456288025 555939293 683910038 717828667 720620833 147901549 381952957 335064523 701414461 932624793 847891665 271818003 507125945 46856761 726815572 96656642 699691842 85188714 833214647 737633126 676864367 948564259 34922781 822603693 474538897 53585660 15296751 933946528 704126957 978272525 910203751 778355139 768680488 255816354 318950663 762449987 952068352 586112188 397376952 622638493 997685285 184327546 481929467 627383969 723790296 281578812 877693914 448331990 602677381 781433144 314482079 797000367 558339170 974996166 282314397 76180394 889731707 776981657 789495103 612763157 940725001 840851843 157937382 395011982 892044587 396093070 779445355 759786244 878960374 284812198 715193964 935981567 685310965 858610749 577672314 76311551 48233220 738381145 717659675 877747428 70897852 311634734 557651584 807415553 666443110 790199994 265386785 97819624 265138812 266502728 17658728 843473004 670983322 582153691 503504077 11378475 208014706 61789244 355189134 105291091 210629322 740602503 464257267 75629610 84098822 346534712 827214101 649675448 921692025 293494123 765123873 21266181 261476901 123163982 660725464 746673301 410730874 376863354 291170351 987950399 939338021 196460175 430513116 896131561 99623531 986276979 728684816 74618701 911729379 975157103 456141780 273760252 975301107 184556989 267240514 608709538 476153843 68820088 422260583 764783568 64323183 742645098 381401902 789879725 717640246 857842996 396703047 657497384 991567344 456004521 561839724 5113561 571385511 187719853 961715619 117670784 992587105 501770021 236516711 567413472 163222762 817233226 672482497 26630033 812415828 761663513 382049648 168957966 679459961 561527130 28174463 422601362 265748165 525001947 40857361 589305312 901567876 764245202 283402134 577129297 451938228 721633448 520222806 277291458 227828508 451436764 435690658 160008904 266090187 167376790 504829590 211649892 967450039 588958616 61723642 832057461 213967617 355973875 582157022 848955669 594124986 517318870 250922654 311511281 803774986 409845713 386688060 35853827 263692635 279843669 948292807 582949537 899970423 31162191 645991439 467919342 313538563 505607148 560621026 138207414 121958676 233478081 91490207 145411932 952177120 652194270 38819897 260847479 544640459 260404832 767182682 202519716 400628108 937210113 322988969 839045496 479141560 709902803 552129855 984688450 885632564 806930476 112615473 476376855 392661107 660884390 163832089 848788793 451766029 875569882 920950385 283430378 899126587 428444434 229988331 902386243 937826183 934931798 361084784 114387875 800907532 357697281 278881840 43419347 394989950 776271815 620101577 317232473 312279348 74330783 554757594 432717078 992515912 737605046 316565726 131489913 38970254 799491468 28113934 722107009 208569456 682129121 960563017 112635322 138106106 382311411 764850099 132236156 343442937 952084272 723801269 729765273 644761745 578867251 104283385 841590537 452679581 804578197 64512614 173860834 976139986 830473381 177786573 886983804 238786161 735845054 184034725 71893770 311237114 927779115 852532064 321142311 219979384 413521592 724340077 56010806 237906752 371522829 210204953 806570777 481684225 581412220 457075376 517982355 258260955 630426931 901663213 276043677 300233109 550255891 373464318 339388040 698718370 377668877 119944791 907224151 822032456 893741052 627094553 767912670 455610035 292238781 625659804 414986145 541403040 391499137 260074777 523420055 904472397 872681668 655191543 179041522 733010087 607732631 359479769 971099737 366142734 329737340 845446225 127899523 360334965 513101484 343494213 172327668 95606162 806449581 660167518 395984217 519518934 57943145 115654398 774233355 609097925 423838728 400980296 732839385 663107629 989585554 817556183 274659577 59595568 961690083 308741752 590980471 806720171 969004470 249506266 527414090 118434472 85995780 193941125 518157630 683422627 341029220 569699411 956294286 32091053 131181135 331979415 481725573 441096537 831481448 619591920 713493218 125212268 3946442 413125673 895027983 620398498 782110772 632607786 581217322 738836553 374105173 540014009 190627421 227859674 759311948 628133283 625265780 143142113 659564068 900496987 191927687 346323324 310431623 736350934 886406499 957649884 946320369 640574465 749666190 808737575 42661901 453435547 610310368 870240069 817018838 953841363 209799971 422649917 522935544 170240729 629987074 321942343 533851893 49697340 790935533 372478581 434612536 882162094 562323861 507420177 326607524 472320408 777508409 842080079 909550428 229640573 837470929 154927474 652926717 289909654 551890140 761813873 469504764 244499361 440196001 672010878 243334108 22707029 149420722 230034566 406654616 789027303 730328228 944569936 181807167 329729956 97590972 682580390 203840845 719124942 659877041 901578594 47707131 110603849 171780815 442448229 46640834 971250393 484651515 708301280 972418314 77515603 236627483 270485347 557391196 626226723 216045551 102513703 267390934 71982230 244559096 893660459 604266294 83938379 76319925 517139678 968292014 676869659 478521828 847314577 705855515 262653520 447916046 972313698 389874014 448766217 680445608 486857134 629574835 239315654 423637809 615950427 837935970 437699759 218032261 963420525 454229557 557373204 428509483 407324334 894377652 99286615 412769620 723619993 597052480 538271776 68086517 323084971 196203490 414378148 888495707 18440837 639329237 896724974 237692993 800954602 161179995 999155674 962994958 817902527 961577134 143818358 960431780 358634254 223106614 483080997 874423472 374983253 905883843 729904297 336070658 584486829 69595132 669303063 568953895 855329188 888669982 278876995 412022313 269191471 26644338 12822471 189702356 563066177 205867231 388560970 261144392 514807964 321933770 620779076 628546557 868764649 659494496 446501901 387068420 907126611 627553842 547159975 942584982 915279796 377171801 801812105 355753712 557880366 587799646 799260901 354630193 500298568 535944834 855888257 374198424 553152103 524301279 833186347 48594552 2231430 332428198 693559211 124584049 800769846 747223024 280370400 386449117 681761652 923491584 643057237 82960220 52157471 480455316 249683629 351811038 867980776 490225262 597647747 14286753 333996742 410283787 786683105 795181126 949083279 626717513 465028080 464471411 260001137 213338364 972065930 340366376 156491026 224257367 56974303 505447360 265845954 808035259 419355228 92256712 167631064 880499697 904719568 53703638 453561872 285207541 193748357 852322105 947062763 621488371 709765077 104940336 44309501 947736326 154728788 790390066 836434523 310636459 309807128 877029577 957374601 783428316 365379770 84033209 972539111 13863813 325673766 279036160 832752415 841778410 169040140 51815818 406999360 278338335 397876815 196545023 949082104 292531500 185914348 775059594 588039828 953885111 422336876 922001480 975633675 347419698 223305521 187511648 223356246 921577657 993852894 453550180 561925750 359818960 215272378 774745232 19049460 401807339 449109169 257139004 849059685 948201491 146163855 760994218 376471126 139010023 178418874 344822407 741959148 498930118 699939217 53922705 114949652 962947522 814805170 342085478 64931752 534365813 680421560 843266187 817231894 927510269 652927687 607449541 652195011 308770572 512909820 898432332 308425123 776578337 959686686 781216577 851500904 359475890 469518104 848579138 268358971 199742444 983566287 339366932 86457495 143596961 341036020 56512331 728887125 622374242 578972259 749688355 484154807 219365643 270872839 849492823 409831850 528510549 799264179 318120026 987689041 206810075 153191635 357405638 300858072 3670264 99753772 275024809 179085099 467327808 990498248 251384200 619606623 514595818 346766300 32618025 700393178 105352343 568372295 905448950 829322258 743337086 99746215 453315997 275695010 776390208 77091877 713317111 626662811 128007999 294050389 898720117 926585467 27640220 871115086 272665495 148094938 640915987 43323071 408010642 392483625 89454043 474946841 355104448 818619703 486973609 413023932 85992236 262520577 440231383 61422621 196718138 995767128 424260275 363394172 732520183 984617451 746774784 75991790 201520735 20202208 157495617 859438445 485793512 1757743 368307093 785447184 36569821 597461404 188629344 915451739 731164062 835854348 892212292 310682453 637713366 107093221 452408646 439658075 816078975 962287683 195385840 548767770 359146267 780530856 226405301 61051759 27014965 407288207 417050255 399911284 839909250 299514100 966128534 966748555 129656975 638761366 7152379 929583113 912967628 93195348 177817101 460397006 136908265 595026516 320297069 242148626 116131821 305619446 462726596 63938286 181178469 486594046 306351520 72648137 479903560 281107221 588000356 532564124 342300510 245446273 104616226 782050371 822704071 610280797 491906291 304107104 186565414 494874608 43193012 135942927 919777516 739549628 880074666 792013314 902389139 107631260 477465708 233850453 209169625 907817509 713916836 139220751 731531884 692868611 101421922 399272212 978739860 668523798 33795213 43368746 394614546 430637091 964352407 851482095 576631704 230205212 2400039 346302400 840579615 907655631 762154894 645552796 984959562 826996135 306746318 39037430 737329943 757220247 990910746 561494212 262628891 405420924 696551382 388411723 6248678 792576970 718586669 778886296 498324078 465814515 880271833 655947857 739855924 991017351 325831545 48270866 767147820 104233331 664555197 255260293 887072885 433694929 910210979 554827004 488341925 685498855 486483813 662511965 130542730 893222266 434632419 261589019 798603965 984166862 444045953 876520916 853484028 292821532 408513861 383308332 145306486 413024499 653301410 638353632 462708756 518894053 107499076 332836254 308408029 621946125 212341643 369319687 540939205 215782646 866568368 832659763 953840809 706790673 615976942 635100035 366830883 602641838 825400388 688531636 896138562 372135233 579850378 164623619 930408683 429245393 975786842 932847886 979400161 363106917 171785599 776510936 486628007 266301229 772935556 334342530 556257867 62208373 385624189 13216406 270172237 724450509 649783664 704818148 216035216 103338026 549088551 341305918 132301912 642709066 94183279 340281755 736906269 89167134 118442852 541676664 132220315 112689223 795257964 930264464 267049407 405552338 623353466 268935291 39458689 404732009 712829703 678856097 424403761 762687267 273380566 150693227 178288082 716260225 333101508 174506664 383197843 207619971 20459717 453393584 324908371 677268634 966776799 493576822 280934865 902696126 862820996 14616701 110690287 821570850 639777211 874647871 858271201 99359202 42772033 886776771 332035811 202934750 354998929 187045095 729508528 676746956 89542605 991421750 168031772 95556789 751745085 312337363 197068130 857061595 679514075 267117118 853781569 414255733 962594708 545594816 28741301 804433465 797614197 10608764 329145260 849045828 747383241 729009794 303656566 329661605 405688309 95456904 202459200 876404964 631595607 154587032 863409331 71844938 680288965 391230873 895575933 450385973 338020598 43286251 627438544 769868592 218115550 564057385 313928609 990792503 178643025 863904106 470333264 650356155 379173584 136749245 963943822 21705664 818788076 876593236 773949231 576366201 285256778 395451701 728504487 448448790 323874604 14248033 40218794 270626625 587419815 634824481 351302187 224732520 31809608 358133301 381153597 482407857 789604469 684209584 763491238 860614138 804523350 310491270 549342284 732985615 462692091 281445496 680479707 964400234 36476144 793228559 7856969 774194197 873291125 857410226 966379703 641611878 285082011 760509236 590333715 904333621 991585285 153433696 96055739 654540974 3044666 689109829 344512511 896429804 38679448 298588584 63310988 276605063 204989029 684185392 377564711 359683928 910781273 293366750 550445002 361722405 721576100 791692222 711668689 874510541 21392990 834170469 900083969 893951739 758665889 126570536 945187296 11405784 164279655 589367486 760151174 597173907 497914869 247861870 202403131 392669936 668466414 208031204 446570624 926250485 789864531 223084179 921435934 763691010 460634624 659155927 213871428 172821459 229200041 946165844 165675517 956014625 34474168 637384958 715776514 298641539 986538480 510129997 729830254 108777680 220231226 246919381 167468947 905210033 857276940 219632757 393329876 166541610 766856674 731340395 562061100 851459982 993097157 724195345 551593451 603818168 659657322 3832296 254266127 207184306 331448608 819424298 639064766 537142043 653837623 784055493 552058725 298715668 794897815 347890292 23155465 804460720 858708542 696178758 939463378 243961976 121577163 418185388 140556144 543099132 466734306 380450273 91804581 311122005 337723809 144786574 299506025 563653243 651937028 796019462 795463852 504740711 414606298 357793636 93666146 570231545 624327215 186359872 146747257 387496023 833977913 506864523 832989541 120114185 295623403 497429688 965536396 562467058 282686943 536118746 943903646 841118896 318784795 506288790 638751514 887526436 697155734 776991907 284019126 972248730 386983117 988103751 341842013 278333226 905148439 539831671 131688978 875474034 589330352 854860209 5650342 275014993 761410812 704064570 893769278 434649824 878010657 372634088 878689442 508683826 128794436 759740311 995485729 697940434 601878500 475208860 780431499 906916970 3524011 907434590 886792588 567009750 95263252 376270482 67259400 196912847 844830149 699808200 224017754 550484430 682285110 851692697 495715875 753857744 965499601 57761421 936175970 842315665 560937968 899402511 197308454 90239680 925131824 639933695 841757660 253708897 210070592 119607511 149010419 445834503 405263775 737936858 345676688 555382962 294965883 969068786 600549658 508021161 487095533 149397120 360512110 714767182 127614581 335268549 141033846 354146742 236892283 557663129 735615524 692794960 261534754 591587179 262138010 539131025 344412822 615598890 825977437 55169116 757073048 410014126 413662058 453502404 890428072 768842388 108161248 488204634 582967780 8233745 785863771 554684682 551233628 46640939 658840459 965030519 757399763 188539115 235786337 408752357 748225991 209988641 149140651 495856140 711913335 108986799 466169784 633625189 567778490 827727043 106881433 656559746 247482827 432955621 168768135 3560621 380832668 317965065 98974922 9102480 727824862 305958169 408782212 271693580 507244674 764360068 886261040 442438202 858815972 942065457 782188123 624821972 822635600 462472373 442672566 329342811 424936997 263273442 640547512 982577588 337647815 155694414 870915548 860701615 937993006 141768123 861406073 435229647 326731859 276572055 721405278 11551937 816764005 988241411 854167628 860211177 282888597 806326496 966047348 798522635 158407245 271997803 706859753 592553616 842099238 387858395 219681528 868106419 34465954 592604018 634477294 787292357 656990162 195599216 67154325 200814133 227256874 531028981 862251153 692483580 718641488 126996364 29391359 558093241 309422368 139627527 34618310 632091281 692543609 846559485 40145350 457027651 824783211 237366619 510259175 410108716 266392866 987344681 526552004 661651112 839150315 703073966 666430487 564016463 332539395 805841174 918310847 299342955 487776465 298514003 17948115 934210296 513356033 738678434 626729587 624679186 923468169 857030790 534121850 555640393 103412671 287485366 794955240 410933715 829416516 330870516 616088017 969703063 905430007 248574155 793868784 479128496 604919366 812335133 910247893 275510500 743457094 69504678 963222860 863935434 268538920 132296936 549779293 84687279 872680117 841000236 11372872 79874829 546415692 726743514 144538985 824021780 596750789 152190930 628025504 539594809 739534772 781245310 177370107 211148354 742217848 554101414 597118182 134790526 162719914 524432282 69683847 174240176 9372472 336635595 188907036 18654866 987236785 942903298 563123699 250077030 440965041 178456435 555658432 246431928 300649923 126735313 220808282 157082789 428001272 800439076 284550350 693677252 220581715 693546985 45216061 160401206 33114292 863734371 677978123 317276132 608070521 932217816 6371671 141344909 109241054 211540219 239295404 853149583 544622058 339349358 965737037 854434641 643460573 78112095 996864501 46092813 549257004 993046932 978792421 546927932 700502592 175992700 459558368 176895444 338220848 262521907 281536734 576364920 291087288 808392969 406495349 541371397 419732314 668036005 65339968 960003918 53484309 178899606 990200177 687379318 270080825 443093579 579806353 482791176 181688989 953389304 875916642 893326132 499946061 720037108 550321345 784932617 853615596 756403946 331210712 130186448 723169685 460029194 507553432 586553977 562660507 191207034 857903654 909952252 733709633 290718146 664881657 291185019 770376490 22674596 635971972 67353562 341445579 566160324 826526710 950567518 163506912 652538080 996982900 988774570 212911693 732144555 117650649 739890455 687626478 555413659 51742433 700926583 578952527 846274557 912113840 385579819 753189660 544370717 342616097 273246900 639695016 370442115 276267180 979397166 125695855 186896338 713807240 117429457 641754555 530283983 783322440 49074008 135351416 747584156 683415884 571591640 298124677 360078316 524449704 725171515 419505871 169554823 947887558 929598620 568252735 639717754 472502634 236972826 772238337 285061279 383648923 87269125 232365363 230147737 752601379 649902610 244217061 149531285 782964292 782613361 183229376 973980994 466855311 42011744 515774057 886571384 911426682 912585411 677598896 918194890 564751934 432854943 629528407 791124553 226448079 82818857 580843102 486883639 833415402 302961681 132740984 980283138 600465732 437627714 491300444 893122253 913464313 607453796 429228587 700833208 550637697 72461337 31903860 5371967 991003545 839171736 859724992 418506685 682588770 243495873 556732444 533153713 297200460 875782936 53884056 311332399 235340874 973961348 688925720 165037849 729454287 599311568 974954273 244671489 945759959 220107676 793229157 643704526 609427581 848185620 870113579 792362371 324737624 412047559 111555722 771849895 749310229 703851547 90134291 333665279 815907621 707344709 426632193 353450629 199394349 682194727 28506620 253933279 854168248 483678868 24530463 59406969 10125461 520493860 703439186 429673805 747132997 289228501 547796266 404494814 684346516 742676251 7562609 444902636 417156350 339570906 478684435 842947256 671754521 624264330 980119504 589659744 849299699 547335818 740684029 733322590 235328724 295163702 269955239 795449030 4536907 757831218 680893250 323572392 662558174 200315582 522985517 407922062 590252688 913497671 481220665 943050329 343472605 122143807 927420248 16934918 8649935 309274832 690687985 603970749 865029820 447415997 291365228 868467345 360127250 238870584 414571718 34728381 500182884 821246527 532339687 274148787 91097946 663410165 914818278 835719323 537906682 293695532 970313804 988934564 560145520 869907754 167501205 476499253 829733570 622565607 905132576 89859602 86625065 339061933 604493188 897213613 402673412 490205268 677693130 108515933 867693265 872210995 840402109 516845958 166340034 108657449 835339856 860530626 940202399 525903495 798159732 486506017 143075589 958631524 780808974 999671675 523415278 127859787 353436109 761817424 466166997 685444369 707658177 73019489 155324580 501715557 599594969 12319751 223260856 102868263 123319149 967450677 837263794 818045064 481552911 918773829 370703506 807406392 686120018 344636778 95421284 916528879 938750663 253632345 381261901 223151622 769107776 43363556 617100894 475061083 367501356 591754704 225312288 953025492 991767660 112390798 52077308 90263051 146584492 344303074 993578901 118297693 217195504 81699525 208712766 17796647 802015192 427050069 40425 212382131 561947003 301437885 466924408 256766154 139103238 33813098 390178985 839363153 881405197 562855131 543318007 820420937 852398016 178677209 297061513 690582491 864596953 290940748 502010536 117805358 351658980 727512357 595523757 34053992 764102673 984732068 871389632 296635103 444047187 489485379 669458 382939691 923234827 118070322 416302634 989510338 531231843 508387086 554916415 803007407 748433008 728673456 994584419 494154677 894313192 917373707 841476121 756162677 403337673 308566267 270604476 649300459 641031616 948566613 217665317 26787346 134283782 598626902 609224526 899790149 228578808 672398254 44666663 133862400 835010239 318112051 619218215 138317387 664710720 340122462 280965741 612271483 79765573 391967309 352669552 262389752 534528408 932194261 859902705 755156326 196485765 839237960 987200388 861080989 97908097 91165266 132212427 817727566 32788430 175387256 416120439 430300611 692567139 912218993 349850590 685377960 902593470 268710426 720330191 808144571 803455151 419248797 990309158 713965882 308273873 251205034 163848060 843545716 27854844 249730495 607248849 446027485 259225200 468746073 577172090 335730797 876927338 819103323 417202341 720533357 355001667 281217529 567940485 573100142 632497789 815599873 42027282 427203333 56758975 640523852 142288531 259595457 208102790 994513034 217327434 586217914 313727243 184620925 554312286 436060259 933374292 339427704 873599706 759489454 382128847 274100990 83483307 216091919 651500580 465504938 720363381 8205935 14304329 478354646 356832725 903328094 648543869 534256564 853355857 354146684 213334167 500096489 659862253 936164253 829698095 839318090 743932748 602260426 249238107 628681164 960104307 172819295 676264860 323927724 25392128 717275971 445240432 988380532 563867756 830037738 603237828 64305436 652080007 345330956 592144615 503117064 137591472 282816490 403748499 25203072 49016708 776498244 275097179 857818554 530008863 748509631 539980586 554228972 361073147 657944575 575122434 755237395 609453695 278537245 967796018 907575300 366759983 167651442 733292570 793028400 199247421 5573330 862867236 201254915 320972146 254351940 296056343 65029886 194722581 657867945 398718397 611689361 352026484 107996091 185573162 410748837 638083863 620299456 497869960 694683001 834129570 329756124 167266436 864950951 703952740 293700881 840540436 484179598 704666999 94528833 374547910 3903199 888413278 974132490 590376188 730223597 950292894 346092819 902295920 630795533 513704812 689194362 175873865 605187363 291269640 981587636 227425560 699560991 245190576 677592314 324171543 152834433 923338553 394288739 548731064 897168776 522176417 300472254 43756799 955867758 845425631 306364840 842512206 136112294 85993893 486186593 936408837 724528764 765751824 27583114 49553250 309191170 815018354 503280295 945959077 462913332 711249404 937697039 904457332 125714353 73010305 350089497 701457997 563216620 75349183 574375300 506656445 342364062 957247421 395738028 463142359 327777288 821914943 2150349 4803689 798323340 929274935 73830044 565807683 349059796 621896398 885688254 904541720 818215227 377149224 967766233 884361314 635126317 306625081 792006311 868436486 996755862 144600422 372403420 132632246 37630617 864798232 991971136 493958720 95332253 408610384 448031074 157428693 556295919 147785039 872765342 276095041 102158485 39087946 896419225 108294014 258579810 740287108 553847636 711924747 621650167 185498779 794093128 108114481 679144474 755396637 3013459 341503789 822803115 170057725 573171608 623462516 249812055 614331046 571143905 84588699 896665728 714035826 825404479 524954622 215901488 148424339 244347570 358638641 46141569 602787956 269443512 497649985 155490764 122016640 487690254 288443655 505774384 780909260 955540875 845882214 613920968 663192520 356478681 279935311 585095086 577126978 915577015 839245024 702356800 494242684 740544220 198140959 851103917 105571110 134147684 205850866 215858781 255303090 306036845 632392008 325253226 473912677 573458182 279051511 616389280 397454746 328608503 293578354 700554720 595237802 115427631 261402848 550956401 167218185 102650929 466106834 106353695 674114705 824285228 632380399 518285539 902579629 558892629 431625594 750395606 289489175 601565297 113699785 216215352 545308717 62515753 289013025 248784961 919320508 833115611 434867531 230703920 139427854 966579483 148215923 353686164 622987528 144803845 429809816 988999950 516617469 40761038 593248991 785803389 480473285 707821806 119689444 407472322 815679598 598545311 432687555 167875169 156241054 584607589 481410574 890228749 663331065 971663680 815022516 861947199 499163003 176804258 330121037 166850274 672376399 226290237 611168130 543350460 879175944 830284511 712250010 999059456 427608700 9726161 808751692 516269002 218497810 655291327 23079147 903772669 159282381 327010949 657108794 475579539 91786732 539547163 448873006 874205376 36652353 256906754 986161827 760715559 918050454 794082975 287043110 381652182 331244773 888888220 196481402 510429086 199270885 982818553 589267699 122393056 951087815 393266108 182953635 621528928 293310661 943994534 440707730 161791973 664840559 98039715 303565855 537645748 142805300 497174669 185036902 806136154 254871778 207217752 730185268 471580999 839122133 315678734 621441488 532373444 264403468 441398098 587969115 673935416 313199445 89286683 532225721 642479713 947640680 943410843 923751306 206311108 476019331 141209424 120761899 99090337 887909632 747603887 889366245 776234679 844350126 922920353 46090897 546916292 774477005 173654126 329404842 616369205 621554890 828412911 976521760 754919964 329236394 227369473 747556523 455664722 585305561 574333762 37152562 678405382 131271168 679259791 55838358 956952318 593437057 55250055 906646070 410019456 649733909 970108422 237458947 497875190 963478072 929349230 991779624 218947616 857483950 568663957 632648525 40179897 5600226 518319845 603841413 596654808 53080566 279343806 1808576 972382710 672934021 196875063 909535201 162142676 863119479 807371276 938240206 700698975 366232388 612686664 877466700 953804560 874914490 871486391 515955409 163052440 798722309 642459990 926038137 949110247 589850615 186147742 597207228 43629926 447658916 816270077 959583069 738658602 586128119 988651512 206144067 584183240 720498828 556078831 808095834 865057200 707592442 944935952 778105920 226635781 457681926 651645349 250604206 694707733 426145425 981326165 876724905 522071843 128972062 519426172 720715059 450698809 872325941 451015211 927506831 274337414 565139692 742879540 440676002 313257876 946302682 222514477 241393498 908402023 312644888 811580256 81389702 449763318 389430868 95241845 117132076 786616530 747509490 224013668 924477920 868751571 587761152 797897025 249433887 683183738 42131320 878132182 21435244 506337714 462536213 437533985 736144905 64936458 199357773 90018108 748872341 171838314 218191042 984207646 182354457 523666723 854729372 947426760 893697061 517413035 396372563 734835221 936103886 152270282 953355773 384625323 276499662 667727993 257846820 760668071 688310197 585265963 617678896 947047742 729968843 770561000 701497661 640207045 440191101 423644385 623209184 484964823 630523026 93727900 880272231 63995454 219090399 561649581 29433955 572831812 127545608 538535379 592806805 285692754 635569071 992030237 250850538 811100155 922550068 189796055 831435892 231563618 791224340 609576992 286704434 49317365 117616394 521008336 882294985 485469054 587882159 606798401 617167327 37211071 586680855 553586549 254450852 398560849 901992348 93354953 747272952 494473168 826858811 579624363 684477945 510801072 462649186 955745523 99478552 592677087 73459216 371142609 507760457 427137015 635046470 961888347 772520954 82999169 911380218 859324070 540161481 789531769 845784145 840187531 514739993 105130195 534381956 223497002 790254194 723706932 921733734 5874617 53065486 742252317 418121151 508433059 673377998 306352614 872993267 84970571 82067635 345395200 190160551 27071094 552038360 797435363 695312831 14244027 328121733 445665575 625473296 735667835 310681105 251825302 437418579 687184275 723922887 762600555 911910381 756511903 189830508 735436267 645007753 262684218 645327537 445365365 182498636 98711945 226634616 189543011 964228990 45058265 129582084 577603908 883972317 658809543 688322 338395352 636267823 255685682 665800912 347508421 299114578 490931315 902519122 105286164 590930304 632386796 668596094 479720796 609186356 919920708 535474519 960245723 323676078 681570758 394885913 571466487 352587961 917289637 181432745 378921493 293536043 447812532 730491434 577120801 846508805 311756217 529923170 4972954 445280979 539691915 351503063 298733640 721630605 926085222 177941246 320806357 643343828 235573527 723173682 302274601 888658984 522474001 480948008 767371067 894239372 834312172 63609221 391691505 923679031 823687229 706153238 386088216 150640054 814965200 266572607 455301275 231643641 155983194 551950444 208225931 624221191 557090711 840007106 954841970 672119188 778362980 798112769 793954212 758430057 348063375 972243960 492425870 147020246 364024397 747044402 828416564 818591827 358135910 476671409 75692410 519738900 31801972 923255203 282778755 880567754 44930861 914758502 926591183 487424532 646746958 87998829 499576830 196488277 831360625 761888540 117632960 374873871 46017733 87251429 91014102 427115972 696697588 701418760 321102136 632610069 167402783 775430079 350175110 230577865 939068562 879783098 1555446 63607193 787744621 565756046 496196626 785921100 211313386 814282189 619850651 860699233 455002924 488980706 56510806 327030241 629311561 203647378 340220409 259094633 85283962 152442809 677922653 410827684 854854625 575931258 716618598 113180762 698211361 929792117 730043599 578835312 292128694 379076942 136736239 324774119 177531513 14261526 368320355 852651058 752233594 905066730 759701308 865325077 272139505 333367464 707429780 813750558 608003103 658734537 723160376 472800243 403063827 734419735 681850798 619658138 352494617 926755733 758915661 500128654 614966619 118300076 22453562 262753417 420418088 198855291 664792532 798491050 965280535 44332393 401964542 788254363 269331727 682382205 288611199 554042907 352777550 76323401 736588870 428155619 824844004 200683712 10415594 638705644 364479264 2305978 906254812 36245896 932390201 295973730 721904667 729221710 460032320 728220634 317867579 642110464 788303714 512626180 378875906 563519462 125287092 325887033 266350751 715803898 864927730 403088373 609498211 29458555 367262901 462072867 920853983 789372303 484563644 939194712 502290405 784017322 246844475 769403798 575519466 677204139 696514527 591776553 998047380 579150526 586563724 465252584 766929216 786967648 279224265 570738963 796442903 49628421 287308742 40769966 956755974 178748910 489599087 607686833 124266464 80137262 739259669 628634052 822428584 21035185 977127899 760939336 812260655 65575948 488691446 866448837 319731038 966998348 729543668 423166769 172177284 846571904 843518995 470656245 909954368 19866181 445097058 507134928 287425201 486705265 815385200 495155785 172114193 369831035 455876918 524314012 447902602 333558004 716953254 406045020 897294359 386399167 60068280 552326495 609747497 243367324 989647475 209990111 11109320 670669399 605475664 342664048 120825968 318477618 472976525 976332742 786576593 861281273 547974104 962745457 7196205 608740053 113845316 6945331 977547759 203880229 155059061 278543760 837825015 498797810 571211667 529369235 671711722 373897100 805543123 753638455 585887935 32273574 866751627 713030939 889563630 694311882 480967993 828073155 895851880 229092900 422373167 536727721 871098806 639805598 630590244 683053230 413148739 321140994 539103408 405195077 770387672 596898372 608710205 937302256 758648755 681132249 203234287 236728492 541762077 852755066 885510562 228455707 631333690 69287192 316674428 274912623 78024231 391062051 869279168 644251967 340681238 101340525 701876918 706171174 729764111 31243847 122388945 521281233 181155156 257992716 281842615 502060466 125573641 615435497 896735588 414898943 700681181 941426903 559823310 745406183 326367880 492775022 635307590 30189841 975664553 584600298 180613031 467193827 671203689 84731337 503618620 573893878 475733459 827577319 993991780 960985393 458247091 311050218 38222264 63603235 749525215 214850920 175446150 556174356 771539068 686093179 328023330 445934677 740458720 843934577 214071031 841604064 418879200 928856603 405012232 163244398 762606053 5518407 41512518 880883429 18216692 589138852 701536130 496227014 168659498 726049070 724881046 760359604 72219780 32198247 292019915 147699498 872813275 472183207 517412331 370266055 966626398 390116711 585957476 507463059 232473029 359758528 93370944 114917918 262390260 870327478 495545510 659299884 175795293 378666683 806944150 409777586 240299466 873318537 823214343 381949290 344934937 607178558 720059378 227417443 364899119 449073375 524177934 167279615 791649375 287651369 744571121 957371394 95333539 878797832 990887582 165979136 206258685 73864541 670699701 508117229 543813807 2756450 60903232 188949260 441472860 693736882 44807255 697399138 732768801 647883002 467721715 721392564 105386050 865096177 365674195 584813944 544617361 783532110 700427352 278339019 600840944 8905433 9244453 76331035 223051245 749992472 614122950 672320060 832205308 760676999 948177070 106739903 151768762 162574147 607148614 675438143 518457354 151920093 326945415 562615647 537438374 432338072 365841677 515445876 157195500 774103949 651098162 182374810 480380633 796444846 806737900 584548297 169376930 595672754 323215347 815103249 127538353 42380064 383988954 590131196 511684968 186585788 632596573 759528693 668122274 886297716 254937653 588316240 917094960 673129005 108747878 194822470 732339419 921503988 808690728 172345367 540767582 377264797 624702288 830897161 844038888 347073815 802739042 368190473 63118277 971686374 804383800 184541750 411829787 700777246 782997002 213016124 857921160 638785787 355558141 27207535 527118594 781783462 810474847 67548567 220753074 984140016 28430554 744328504 478422910 623516064 566618919 464466721 989178695 836859599 214604279 820284518 649077824 709249428 518407336 929022405 738301329 588348949 639957492 408785426 266832148 46972669 330401788 58848215 616067788 766604756 722607280 930787130 494994633 287432925 780202318 379093041 211094976 331021433 470233105 969265774 315974102 881072281 793055997 729895415 624799504 582178022 301688454 614014139 163976454 746555820 980936314 906339663 569771941 518653413 442428265 444468899 558394443 160634531 37737963 789821564 217072968 843616643 955837436 423860328 366855013 86402723 346000642 226744712 953772400 701558500 242600588 59520965 77343579 521491308 135950442 423698716 752967070 613417104 217692648 641751622 183002048 25458587 18262831 278211685 798915169 676131747 310240195 126145805 381010363 848359303 356671296 914849852 528889306 829460048 792425553 11557200 974363062 150155338 910854694 442914751 217143556 394662018 105395114 463846417 104775702 40683147 199197293 676599588 745645927 855915534 763572382 967045643 951350293 38587076 677050498 544033310 117958586 899776795 608370930 189404876 732023508 275264094 481016292 910293458 12797596 928864545 866119480 349660452 621070690 89928532 825346767 791054747 814054692 955199346 358601965 575656660 50536869 756806051 878615392 896521449 688677278 505522452 650637308 853452090 934354150 36900577 282918174 1147473 786392417 882328597 72936448 528501783 294812724 536081853 366436259 733544788 328883125 818291522 142028896 573021908 478192543 217470216 697098522 429347877 903062281 163508915 130108421 356758684 525733532 805764674 959649192 386178668 434178600 908530736 93466425 956788043 977628610 459350210 325866362 778611588 586394583 559514956 524085344 946859672 902034912 783048702 625776633 161885327 83698541 756835451 948750693 423129869 171188382 136511657 232044880 642014392 8244750 465739437 624046778 229051487 219207232 579276987 432219485 924501670 420137256 687258954 135409451 259542015 28077569 386907196 520031489 541935599 102086336 522204018 109779897 784787161 795410362 681978808 974292443 596144162 52391054 155106004 103141814 447904789 149604326 167508993 715768366 863584299 309484286 2089718 770533458 898939602 159738045 268759531 947118774 613025570 283979343 829324013 78942327 890005604 990956060 45113685 788460666 224934751 668154129 100862009 42717787 149130407 142236831 377701046 630933153 706631270 36197561 960833011 774406002 42534579 57040674 625168281 131906756 996126682 606930870 981747284 288564324 681511911 536639292 409743304 942623768 199689315 42354513 639241600 741133849 560543827 31259844 492917266 14206309 662789503 274915606 353660844 779239076 15722264 23807905 631082815 12731712 768380396 334828950 820821959 749170772 421076021 709845289 836662105 611793058 172338563 522030861 70871790 63421333 401278086 934210426 847356960 5300466 290886785 584536237 609594684 130680909 249226820 436319376 115670750 935197365 308870490 805357744 42320445 103381074 917207600 449733151 826253806 82771350 907309705 75216195 493808786 624324259 581862083 350889426 796114136 582191378 260178142 631229869 451352724 628941453 224126947 741297634 104420340 283135954 203149659 142420318 947804432 535804355 5851414 822860450 367381999 163341840 182907791 393341238 17858172 577948231 922354596 591234457 609594810 987317196 136600591 646469196 211097670 177683515 80082081 267511072 553785819 823764654 48691872 436973307 877039322 701421295 76430791 745522609 383122494 938241952 687287004 804875400 648794798 338888849 851602180 380997285 907589885 218245855 275492748 540254997 394286053 92884717 215264527 539632178 543310037 336864593 678068766 458151090 229673996 648631220 366125320 113165573 170973639 421881442 356929735 8321959 518499872 565978768 436704391 585705591 224683081 589974683 616432706 729048357 843417112 961195634 159487333 701814402 566748909 490188984 124366574 167477027 111712242 767094518 840163292 25237510 171995733 633120413 965188896 160860007 449653766 307020780 879222641 738929764 673847484 589056361 686853821 185938085 274036535 125883562 78472486 51913058 359120505 698919374 631905175 911342704 240973684 614005599 455211863 248106111 454409327 340428248 252581313 140443306 256881138 976696219 358674950 820298487 328217336 759990523 803599388 51848847 926193478 616227531 44573699 468455351 145372501 111827281 580469392 808127524 916435164 597379493 135156792 90715800 306717145 179569867 209033185 323969213 497366183 443949108 383437539 402013119 421442193 301476943 982393974 850517570 600223779 63517181 418955615 799722951 282507935 330875881 157723555 682315056 835551426 13653587 580537048 971962659 878741072 398085504 193153246 238576703 635308744 2210180 641786917 63588303 701172 182725164 626781485 824113747 748473394 837756186 161985751 151046667 25651188 566260217 856322792 496411068 959470679 423961024 125854243 334100685 206163254 161377351 454824871 276035120 419785690 533569535 733359237 767769639 830261343 888631350 131496914 751525763 825025290 363131271 337044765 975997778 987586082 387674497 934147308 767979685 621197665 725158767 569137122 271206409 31566792 853316369 810344127 180636955 75008784 263905378 733522004 958673619 340791346 638407918 443869814 655542432 850722814 774311464 55432873 543141769 374989069 562316560 735876490 592900785 504355109 649907985 156886862 261564225 295123188 214459637 623254058 179443423 30151147 265263820 986480088 138950945 49524531 970512969 43240304 414996521 722250966 498735261 899691455 137666155 940497433 941580045 918965806 848401809 34404261 448966406 89245163 29896294 162650126 342485060 49322544 908443022 384556135 726280096 81655141 742585545 759841922 178604488 347778555 462591697 984177698 772491085 988654627 185948225 90029992 325569013 437004292 50320930 871528807 374489240 787814940 474328464 833445392 514983904 92271550 3794028 634760784 712229830 976214457 829731375 178385419 367941200 417007643 917349623 43554757 992892797 21254643 887312597 346566261 12540462 728175690 709802790 744280060 645718103 159838715 351372401 245719115 548661311 978052134 325317957 770645220 620946909 912962334 753551848 226288049 768867587 793049953 822860730 935969438 635468271 421101096 85261937 810703481 791156358 151714515 352481100 851477089 101309441 979314600 412049457 512671611 247469143 259691388 925782637 825446449 121391295 379348539 640506952 160158204 270515455 645786528 220819368 149832398 767551487 133369186 675931641 87112613 160599840 537625738 664481901 243872023 816234447 506842589 332182388 767017931 651038993 802492932 403578862 286962620 873921947 57277349 986065579 434446132 671184955 807100437 808392232 980783901 973409813 405934837 97613137 517747900 561851175 452965256 816359537 845005201 832176433 272168591 951787756 167433433 452689866 759791303 838651916 556294031 895987029 959704891 138827460 674855520 427488498 984725800 250145712 589674013 255828188 531277203 202347516 712062642 644326251 238632571 995234224 598672834 1572236 588901654 136039041 455101424 835543520 211998379 344309494 826595454 918141983 576866371 891895074 814787888 650283408 542558905 927488397 300602429 511198209 805486541 625151610 993683404 354941510 828395252 592396547 418365848 903041494 206185152 988271669 425764012 553851656 395168467 767502573 134479067 830389383 93641923 619610524 436572456 419437206 320047851 298559868 469862063 632869945 979236662 446107838 194212093 711434946 791358020 662026052 835808294 927598106 753409963 696263633 807172285 219044513 552825562 851242997 662093026 28287835 340960944 105494936 344992730 538435599 480814893 910489205 872066955 7932866 420629785 366540560 2427546 270279514 610945918 432049253 434675145 49767708 875395248 40709862 228188351 404352569 99893403 403477939 456327611 584184822 554707718 354913201 608616385 27962504 1472557 460861694 199992561 79954561 608541128 649312186 499423066 442503960 347311901 767586536 160460302 167784482 100414544 899524647 975455619 25511609 700287683 352571488 115803428 935131899 516879921 83517571 759308225 91459875 834725790 595897142 885712738 886140701 250573547 726439712 44388103 215109949 214033755 384135250 88275284 475164799 793772044 328256126 78739958 451515743 122907671 879073896 420127831 315980159 101107255 883178957 440451512 755417545 135605742 334055824 771606161 570773561 108428745 792045449 627234828 799153077 839653559 385257937 358798618 234710424 171596430 418328870 116946475 249396688 948392121 639651735 848554666 226963876 5035055 2076000 529058044 76588174 240407405 756116651 792651607 869835696 887159088 28091924 861256717 664188615 700349999 682830932 98652034 252483107 719172999 892438333 131717409 304455685 670621689 27132759 253521904 745753196 276075962 567155815 776724304 33025122 967430708 592976385 562873495 323907447 588467037 290458676 851050124 806347305 483546565 949531933 715636969 66396066 639952083 992149496 256462357 954935711 846765467 969960645 212191526 282459400 140048556 202380227 510777568 765628360 244451948 295861657 467138390 115771547 54936180 398135464 630917671 995659592 248284569 398455505 728181108 214258910 153214824 964115271 432677871 622050207 350246949 943724977 37712977 366784549 55056791 440356632 2394632 800458458 923316238 820485284 58698879 943199353 377249667 701354688 97661249 632358097 296557901 579914766 179398338 179004458 871349778 603951845 488637875 444808827 161807797 934194936 400396386 299260115 90993653 532822098 738178621 594241788 593637983 788111901 245758618 764674954 744650264 754170545 72610726 529766438 426352386 27112634 527693434 43100846 913452480 235405606 83074141 581239805 882954832 717697109 276580992 639333868 936799771 429265171 429413792 425884232 737610493 951275592 226315426 722976755 21791590 629582675 403931067 578174738 724255169 959069863 486052038 979025670 332576085 701405522 646685081 625981148 57729642 301476001 966793119 321858360 644281318 633729837 485273696 340623667 645199773 598364739 504458200 560431575 401163327 805392650 980590225 174702273 321688299 789287851 845856380 985758759 876596408 500376297 445839469 799765192 452266328 944970475 718727385 758013759 395442906 649120382 427948498 910419223 932922281 971796056 297338717 597241612 939378971 112166463 910481597 31239765 839688879 779599163 291186185 507391056 567056744 492846447 600525800 710796636 128029112 155758141 957597089 889794408 346426074 978248612 685389622 945940316 724002055 626985585 425323699 550410393 733126545 562661404 420103968 409922597 728597472 113849140 844437559 619497153 737909209 84981153 506983390 979974282 655830803 915233171 319569975 434774092 681403728 220281665 421781837 797759053 129966881 63742118 880977385 200338241 435722342 132951603 666584437 598694369 180672769 87536432 375769149 379287976 198288796 389508303 446718908 925693183 98537328 989673597 715687681 120989404 168900505 540815290 699908507 839248826 275702794 937432673 442552855 26408661 980418904 166870305 927458715 515307669 985757451 6930279 705739862 832194691 514980337 684422312 374001851 480672302 982513443 223358228 16227479 362006459 537411053 403222065 993045535 946046055 480083275 587358743 124818048 773388069 29317096 21996722 598146601 974736463 339511457 456052606 89258655 18811396 599489088 826355684 956166551 27588951 530379491 367608475 350859510 714397992 193000928 447121473 283766918 979166459 806964577 50624974 993101057 519927762 158134053 667104610 862407651 789331182 73480420 457401657 319253398 339202964 88726575 934226980 994540718 21596160 642694029 745526507 106051401 789876119 121848386 870259300 898367280 229565584 660508177 539312826 627995980 119397625 470912277 844263581 599380131 578783828 390912041 48379265 948503361 55855256 313575038 613878740 844091834 897773301 499582724 350099678 737772942 327974612 936360778 561122358 95141604 933685840 534083846 678073404 632861817 88945180 37025848 535345387 550617835 738543303 526858038 34911965 648429646 14651056 664967643 223840153 183074182 195771776 43380013 180113374 197012000 270011982 413707446 447725554 463796915 894845217 625804058 797158507 139785415 39952599 639580047 672452041 398553181 761315058 645988776 138235520 336162664 474790517 707974140 321239374 196485202 252978841 442395450 843325968 960167325 859883949 805510601 677084794 620753224 425121468 622481716 9871988 768565032 913447843 505318035 868595476 777803840 699499322 628275508 705479663 321810005 60046161 226317816 680972576 218220352 816601123 504987364 634853906 634663418 448944494 924050921 996888939 341690935 334465877 217279514 7453339 298578531 532977248 186510339 925525392 282336373 117967391 859332585 900584400 940006121 975553942 10867178 160337998 601007129 301359028 10477220 476933665 417319425 301336859 219843331 710645123 148357417 569535389 245597479 999675590 662557626 641049947 90248157 89139136 704860046 844372216 293709173 280028885 529987094 573688473 300660064 74313631 961506394 424251695 252649190 298524299 518579304 196904104 95803022 670158567 364328193 59107217 472568977 366248246 353043003 116095381 790581939 778869377 996691544 636407046 50703324 64006968 903762422 669696109 890419625 176640909 236881003 424342653 699673820 573576520 274726271 879938937 697421331 743200153 708551987 797386339 911981980 188108465 996563171 542218783 564419554 971458467 500563945 17950246 862493350 600813453 711137948 793771329 147267382 453965145 305952141 314336378 905864928 137789493 524720050 338201616 910883009 384673705 638110610 328270750 914534462 668192586 791823163 506220717 813917817 426978535 233807513 146365405 571596016 37543938 472990065 62273655 778826813 243892676 744236044 138590795 729293484 748764349 59754511 855464561 936217105 62301032 731654028 433729029 608338845 201750749 313397955 401499466 863155707 900454127 927402681 419780935 501645578 881563422 455236880 148720734 906815082 699900960 410233855 74231270 948177217 715436533 733126990 508667659 192163778 936205048 476614700 766639044 249962970 258481328 528683460 295219105 14029924 628632072 700816537 358827517 639669241 233486852 465122983 152796623 191338495 931544593 593070773 388649135 408703761 313631002 233777414 216313461 858068136 989536457 869278381 369096234 114619535 640489935 336689525 110810065 462769260 202979001 535420766 260435604 203832599 366705377 204673346 585050357 104244748 375397125 733078055 580278041 459813717 689761753 214184168 270445797 945077862 986164230 104691628 134854234 342420242 338067508 990400508 219876314 738859311 4012505 264471948 526470641 829128971 968878576 775017219 376726090 177905930 856179962 226765839 837290029 299680204 180370037 304791705 122120590 39061451 255306848 248140701 761652661 215240209 960209613 910794225 347545313 302989998 483372173 153292698 502334824 640200639 721296407 500903935 524501977 13968041 391769498 465127543 63131072 226608888 766997958 331137180 832632994 366755222 930922100 933003430 505538808 359368919 3876868 660681090 657073565 525763614 518357100 623907200 496913375 656981030 64384892 119752354 414807199 299681569 134598583 148813909 53493183 74860883 354634475 793181527 707807352 630168077 410986365 39726458 90033721 224112304 719665839 163920798 155249042 73033447 642351000 542493115 201682620 560522712 786688862 251385504 234089113 328981565 114569304 944673788 173103455 892344229 443993533 141905926 764146682 976301104 881866108 679751151 582174252 561357510 358132867 325795967 244315702 149857846 278483363 343312494 275260213 975271202 526103956 228135741 158679835 795804953 898809212 125303335 291766230 947423689 835297687 646006268 942904124 961846323 577458397 630334192 675745607 750728451 545606342 164550286 918721149 638563891 317333721 66764217 296171982 23213333 461838212 113972037 529842642 52992481 243220347 72622804 823309812 525154834 607852916 57760948 868341380 167991680 889959950 906158589 925042798 331909621 90559246 977161933 32291074 890573460 642426755 905785551 60434318 779496285 803922670 555355875 943017507 458417036 997145248 154728528 646807548 568641697 78458160 792017386 165949143 519714253 747829766 191155226 209029822 897474237 432397280 975714025 907368711 573346743 519482919 338717915 612411550 611784067 89031483 476755486 664760434 683384211 164986911 689139683 76588015 54547714 726251469 2385787 364106438 485743812 635765884 424901710 202014401 661365374 871675538 23776777 537529582 255978722 276095945 929831647 755486789 756994822 144236163 186421423 473029278 40808642 107818712 489726432 448572540 196081472 456253262 520616790 816166422 119078745 679555961 684445687 693967645 573416735 224576760 500096598 742106466 589355807 203539 805486482 183081436 94762585 805155443 855457092 558181359 813550934 803091785 38876641 241555238 110003328 232316135 166501113 896496935 533194865 280960609 618542424 55013948 559103121 107661507 290068098 864684579 510372410 556575583 255849015 326407370 748588388 765174909 811790515 833017384 19695525 597459123 829514527 265855250 543994378 247613720 29346301 865645626 126703131 548534389 681440834 40863001 588715919 474834536 134040475 631593966 173882543 778973541 62469991 932730083 275853380 430074915 577645892 877743781 748231514 856204878 318456551 732975675 725972857 772767545 574467739 783635485 906925285 751615179 63283428 776518084 198204933 423640315 613919056 686510516 957697765 822373715 244029732 202569714 60349700 481558809 910143692 550876993 225123189 549905324 971723787 701797251 905642291 487339669 102171508 910627008 47419739 365517073 901315275 661606759 934203283 530524314 263682207 787057903 439223375 412375172 641420737 81447842 845420694 577858100 462617979 235230614 53632902 242298488 935983503 249497173 457940291 865736135 849414501 897332565 660316096 69479242 591204980 299784471 895144594 82782454 649367790 733378353 821682099 952292242 689647793 813552056 326310146 961850299 195329338 338830698 690200945 869322652 576733853 886574539 986202950 762748208 704364185 725444744 840401126 404581667 382728287 604510551 137738061 820467365 968260727 733356750 711804618 273351233 873089648 99448699 677240796 489632933 428697487 663216681 35238832 22657299 92222083 247477754 976533791 329608458 7714463 528397543 860732351 892256269 630656346 192263190 339621816 353766199 75753071 529402556 149696964 319466148 105365337 36478787 579844404 981667760 377417784 2634400 26553020 542461655 681496836 478987645 309809693 275562841 38087011 406368599 476367756 304295781 190095912 230035362 452588363 884984697 663024629 533117214 520144775 918778963 567048490 116988100 722594906 257900366 823912512 267884029 772714334 674922 320774718 564041409 280092377 122218022 416464291 351694627 999508716 405409384 204572981 141640105 182403843 506799935 630759225 54584802 90334354 695855405 368127734 627348940 791464498 337042462 58817304 98782295 644700159 492030303 386342553 250833175 472098051 24256013 351468892 443816842 601776487 829091191 899745168 150699973 692525811 110918825 300058835 696229116 613471402 274290092 666185151 304899967 474991503 149020635 324483919 209843706 720235296 974986109 869407827 345988626 279074317 31649040 280357310 641761081 505204801 270783749 747988323 924332172 404632477 478196929 906748028 165227741 265385881 984463435 997219443 779373859 608171161 61781154 175205279 50609366 5872449 624647764 219235433 713752777 684538556 81288251 522569577 267453347 244198980 178311255 215382485 692221292 59402912 726188953 253733184 278870170 402388983 36207720 648737383 280409916 768575865 442885379 492197714 74514507 21664658 855073054 341164774 209925691 461765875 937137745 512275560 858482360 62569767 298438631 892913274 744253303 86062252 138995019 873917198 496052378 826933006 254292590 157728438 205551375 511489200 570207448 882469251 421279051 15197912 52024559 199365198 944441282 937506266 873771249 61269357 378930721 4418454 230139392 711351215 98674248 414236654 247716639 868126817 423328916 701200931 688809392 825258626 77121346 165854139 456161856 990123035 680145573 884405666 387477791 907225385 622214553 630811599 401824248 902709544 451100735 527306368 30205020 52933036 744687781 247948108 939789853 49258972 989069092 263921339 76816421 254661924 303356992 91620248 28241324 674592775 617180502 96061399 153642245 296014249 277544939 552264070 9375836 93949924 723915568 239360809 96353853 53514678 925823344 563552691 978129221 81224070 353079413 45565439 664647245 741294129 197429829 194363451 771314449 347777207 690716269 4700482 229208736 392704788 263213245 500909104 511565751 174644269 4000906 548669706 652207867 930505704 5219814 309679843 200082693 107774189 291473654 882439658 193768700 559960585 452567395 514255284 419126882 254649556 142277005 348402244 300736979 128432440 953662930 776299019 538259887 508854466 836362509 217075899 588622506 473007180 674821842 157602712 736304228 203265326 452859369 312309949 47305582 437081131 8230384 699586662 217710779 41797542 748630849 471539587 361261040 942360060 335252708 979428288 403557484 904099757 418381237 610039333 539706696 163863149 416146912 741352058 682042484 198952326 60218555 616587289 876749342 85277469 809834014 216022869 481210257 910413367 626941217 410796667 139527693 523207022 811493937 90169685 926589160 457660237 371056878 790906539 556617849 227793484 702547682 245938059 810244524 795004385 805876725 906707802 244729927 202008036 484955528 27758257 339547673 125349342 464861351 848636856 272958737 745252607 326952767 328974140 88106939 573374259 610447094 397814073 46863829 532075467 436878812 621490802 334708783 291047477 3662909 358315028 424340240 494831532 878603237 730524553 889391249 766515183 302501788 751540184 51763024 947458560 793221911 261893765 223944902 885066605 541518210 898923250 49255953 37052231 642577310 341875653 341879127 568722977 500177924 176627493 351018169 851716425 173063429 320106091 214100233 7985305 115360299 333843448 648171501 459310565 219054666 689088089 281541392 804443485 197497893 414072395 419341123 37151503 16252364 785506957 265544288 370294097 159700291 464962711 599814100 350461264 110731473 361857351 882159822 210572545 550636287 337456736 998400549 423399084 948601440 705247890 83318665 844912479 705604427 495932151 643674369 652507963 992327386 349213661 433502477 579176289 955922828 742657406 83118625 719084491 153966842 440677990 213063906 557586688 802597383 928106219 182566631 766740477 843095485 467816352 18500082 410606663 313954423 295754067 877550246 855222266 644150538 928568656 60426885 359038555 573274254 319646091 311646928 314900559 309862556 120551869 266447674 324330419 750870252 953007774 519600450 279060084 136297966 74915816 359897249 775444671 404805153 908222659 700841587 835759320 116231417 828642386 171592284 917937820 861615738 539820632 663865440 294199586 43713158 196448606 370178204 348600828 607855931 110534853 418442007 882099019 901568230 790419635 358926271 34127217 14711441 110412211 600194585 140061182 254089211 994842898 310191151 300727267 295459607 693839088 537571428 122096926 8567971 635532966 984488648 87739570 208531634 103655033 740625921 466500602 857832284 871161680 613652752 104769818 282811707 79614345 982324335 292621707 370757953 318645888 711579921 925403562 982802152 190782118 977039916 368106424 113030721 597502355 47573932 244744501 928156600 683320139 154231116 409281015 705969506 312582438 753415368 336977949 764575522 136341793 317894398 509479428 778662624 59845314 875892318 273872328 235372552 987106938 109090483 453042881 285176869 763486160 507559777 393550409 92271014 794321975 721424972 63617475 857810669 995103 442897080 926720786 144885858 600436273 334545386 618303540 880018919 664021042 128349179 738034181 319979141 752183288 425992923 63803524 417283503 645540421 642831193 717048413 273858595 823866039 146642753 235351183 307832005 376035149 231506725 204237474 421283389 265548177 986683095 693097612 971647902 866154164 615972387 942661631 593800829 182675647 69785047 642411016 295042530 385664849 156005977 966232905 616876035 440075679 68573132 903212181 662774101 11022842 30912739 394776601 168757790 390404172 662381069 773296189 387093726 151067039 565275834 713570948 710684804 116145737 756646461 627037044 930979147 905628344 368707447 695856482 469368531 226419571 393631032 455142210 639675758 875704502 814002400 515934121 151091827 707907645 584370232 965361448 975514906 736497658 372900005 315941491 935510229 809814735 582333361 410763351 266352478 871807722 909951496 852969122 975981044 422163898 313683496 296598339 746697918 834414962 413003054 29412323 983597193 482498033 217518635 895834967 777240485 819453924 943953374 785595532 466701816 373381653 414036790 376007325 742681434 245391869 146363516 304182857 292754689 682020919 90194962 674568681 927469403 768838951 165138032 375335743 789781353 374029601 20003715 503259264 56992899 197910408 287279686 851161028 768326552 351483308 689121413 795845181 488066967 140871382 179977680 229266317 27410631 570248467 535519809 941148695 796168246 280775175 321555301 347093451 700095151 254004649 283099338 335318682 410417624 278356122 516997200 647481974 6338102 602875655 552423812 298883579 574344674 400143911 260713142 515832992 685986797 301042723 521609525 82267566 657641211 597110144 228453299 605420321 4687452 842935771 131011873 164805922 10745813 160043418 372227543 987498329 923007761 841415749 961673103 378722273 494318803 45009601 338609723 895145508 181660331 493686386 842792288 577354187 720634238 62579506 24509481 817999639 653063468 341043991 98266103 810811791 268430268 15479068 554252893 809083727 920378308 517779484 650578101 138542650 630667123 446232958 700899379 843186578 617218925 929847298 830859235 412347752 145713947 945597760 878011558 170415372 7379267 568694003 183413871 72699049 101027599 531265151 101036310 252088044 270497351 403457 817778941 130668699 224636310 667605986 553364886 297584157 694593295 957808122 225836120 645286084 462508744 508591483 58884968 677082532 827105870 942638402 758113917 172958811 997383480 9064992 11974644 358174938 242707833 397578421 133577619 21351832 374261676 914070429 256747605 707983101 604782371 412193279 286788733 878914175 542544666 943845425 973106263 699682752 532114041 13746097 120660838 534872706 3563435 360549226 699296996 303108562 178159714 615000683 586987975 385858974 323015524 767881461 273392087 869776398 471172018 909102534 244148780 957230931 202083297 184870824 372273227 128217512 801737048 678274898 637573718 672126470 974109395 463824268 566484571 61374229 342380502 8545216 398796370 996473880 629386994 743919921 776957591 853091099 536407729 735203054 165796527 35484068 135228587 918180825 857403843 813357788 999002706 508023446 468639033 436481815 962360075 982035608 905455766 377083451 648018385 693343066 22253184 404879039 553212076 585814108 890209780 900045225 486733134 564160075 827004792 230865999 120739286 628427668 222377651 829124872 148711122 930212544 706684572 586154307 290841619 62409727 446937896 284887695 654033285 616808772 384209334 594736598 254423611 11253497 410226458 858404440 224073069 924413221 992446503 906191898 806592302 342930968 507593697 10437842 549713395 832165446 804887222 931568404 449910843 217830364 280318628 772582479 207792212 9446407 477358054 757239081 748412018 230827324 867733218 633438659 871354341 123064694 988689285 445254920 615988472 980262759 851281679 498938006 612778638 444078776 139810264 569872468 894500465 953988761 40702585 137955286 343891787 351781738 852276159 918978916 826832891 279446599 447237717 563176813 421745651 846351284 593235683 110760104 4709504 654676511 81241664 862872766 257026642 990719026 829133405 343514137 944459825 294756232 175981781 719235339 248464709 595795349 215153684 966439044 938464770 423906435 191245248 467756843 572135997 774988173 177508245 899293238 869384498 942896640 157365681 923124319 548629498 442419871 757515642 816115254 322086360 416561222 145273411 957953778 650385780 664140027 718466474 337756715 364044843 295610420 698433457 48898299 332914864 619586598 88355386 178097749 555979268 501471028 680673349 876677708 194238152 320857923 844401846 109677052 532949832 957916924 849929910 619829196 437588993 324524276 677602782 49696782 424699458 949039954 734410965 630928166 554954759 867629695 500952575 971998909 186984751 765076584 519316911 921093025 88040082 727075905 532494557 904140315 636801053 724689122 9081824 41120747 756106183 657680690 818702437 966823477 111370074 769557172 161540776 310950341 908604612 597732474 43050365 855761056 680743159 808812428 214808203 51996306 914500704 17336457 30877570 370285170 695807545 30114264 458526613 819504465 367928981 614936807 474775578 613985610 39883141 864395391 218380200 330030625 344771506 322658455 499850086 623673480 41693109 756256337 562370991 13605175 780645135 869156936 445595154 471061419 904895012 621718682 391392181 946139625 933471864 957843655 829558712 446402886 465043334 256615734 83061454 134254323 110727412 111661926 748342901 301680812 127520918 743771051 313881545 578873624 157630509 680082672 322009900 174153825 620726547 411652995 589013931 406799914 913187528 920301789 785437325 494719361 280662506 980559681 572495509 752762369 420369095 232015970 14572554 517383716 536215976 481728365 697047813 390107506 601439560 231031114 530311356 300812755 319549109 379119281 576916356 790890099 897934902 838060361 663466693 275407032 373667821 732985332 162204217 706573954 290201762 944923745 87820173 267419946 953989752 661837303 419716407 530504864 889901789 921630403 240584349 646133616 901009291 318853735 416677005 598395083 968361887 11195102 55763164 540392802 218611730 344793305 200034209 765121904 790123927 299926765 408043160 452253158 599344018 200776276 653558205 469148509 984316940 883683135 233311808 382912295 338410647 558621743 931759106 178521829 332753420 774986798 281757199 459407540 368379899 366067574 226014806 762185177 792594285 872320064 17675499 101913408 95861120 306678241 427475818 770423475 449531349 480102362 155305727 368579975 886991567 538029474 660533845 711899593 905518917 517744363 580957795 307450360 295916586 151246195 862688213 219912375 172332805 673253737 514282817 942181081 317671331 681754095 973001434 610970323 140651851 85632398 935354967 343611307 985423073 638355835 500949444 921000207 774941730 475202801 268147160 775622982 575790356 484962031 425720399 46739681 872816566 510775654 284053904 64966922 765565736 49869818 111549439 791921833 636365180 651116139 379160872 634088515 528269518 570610132 285282405 268560016 893927794 605856988 234891966 448934744 587388202 127436568 93563376 319197150 138446108 701787383 363725272 574058763 349070839 980353373 241558988 494454440 400614808 926829098 446001250 872275411 183937921 15053465 428420663 475052892 797651480 282352919 332146423 906178462 844089046 66677007 765782933 124767165 709549074 662563543 302974083 88215333 705606981 808233883 337536575 179101844 318002121 792676172 239773842 517152080 11642374 98965938 580205736 356019161 101880076 762544667 229222561 81406085 587968843 640258822 600177761 657391422 262548513 253694851 990346606 306601590 192237913 500803317 945834304 133715677 893880678 931632053 85871637 336762178 74217055 678469305 288101063 733325012 245571785 955856811 628130848 97700153 886817410 488451274 127849333 393454858 306439596 152372584 229571553 472576781 321331492 419938233 360394875 358380627 118778625 627739851 206917059 480349817 285895374 776311093 265464620 957176774 450854577 139843283 944523799 316081434 995248716 254117264 302738889 735671427 194169661 962187046 336657692 593834442 948800929 853139386 205379658 506750653 751317994 769232352 528521254 725113677 866423194 682543994 357736521 529207783 42869244 559553640 804891861 863160879 811108573 804929098 116883069 581988543 10196047 177031498 243636540 294657029 582999164 746484133 964685769 472253939 185317607 419744857 23733813 285630874 4362408 147969847 332902551 11841304 66400575 129830924 605775753 155443081 699858168 865495742 610526439 973566969 702504495 943399571 411856265 399558992 596953068 641745564 962410313 528053349 853964035 600683149 485571659 371419944 507314524 652431606 238115670 267551339 11114774 852005592 945074644 626815545 881318817 632726492 263386615 121755985 216130235 679812427 393807931 865040182 67741822 417512202 417711603 328364574 117488456 378312667 675613564 205042692 325182537 352282275 991297514 469540306 302880278 952436589 117782282 604242095 318365997 114887512 920314265 754191580 209252296 533541834 659651217 963528641 506377351 583725813 217433810 523658569 639476491 502925173 20315482 506976553 186365885 695438702 689951538 287311977 853893838 699843542 654821626 320250265 860297743 826617139 122189812 962698463 385840537 278383721 791475692 812866569 147939817 280318551 289526005 907851152 498266193 507330247 798658895 264157765 749347079 750576772 349379753 255080431 308349258 103527854 37976976 932145441 173635116 768473390 884020090 67162620 740338715 559802463 569453770 483712559 732094918 681760627 177023164 70198039 662437805 199764773 46473890 175969310 731774073 440522985 870216424 413627711 593209105 602273008 60239964 352984513 224684400 859694703 69524068 345547327 505918214 142930116 130992358 534729026 977954312 526792745 677002252 692020444 780807084 154155348 910680245 219400767 530897243 634945689 975472038 743392909 463908396 88836443 534832207 449048739 801871231 676148421 941160107 552911540 535150690 746786376 855699715 153524092 569280022 40454662 317112941 385104662 131687906 909874619 17964970 900667770 773449245 686163798 314911905 785996834 25418627 65381083 104428991 918459901 440464501 952261377 185110127 478662831 730292616 971442031 891734975 714489393 724536829 849219107 655592418 235959059 767327238 217911621 560618033 553151971 861817249 553812659 701866313 635056209 957943583 587057247 639243931 836311476 9511415 488384239 126996129 194339846 785347023 24054656 302359497 394974191 443626101 747101225 347306760 392331150 369346035 702181968 493485276 812383981 719735980 734943756 949908437 614166888 113707097 563599192 97319999 116524797 910961926 983199472 967253900 344245126 743726981 201270969 383711342 311830521 490227956 68313191 80082183 903545457 229766829 656282681 382224148 141584053 773474398 278500399 247305124 763479640 857420174 222159977 568215590 706613310 197767770 995584299 710486558 35255458 5452114 695304095 528051257 396960500 559137614 915935668 623904161 7214575 953286844 577836531 563373507 560214469 49539344 707487529 836488367 576216621 217908877 981135505 867408472 453890338 596631356 26544798 786311257 314156329 549426775 91014580 708621440 456601405 780518529 968823664 96826075 415462280 352683583 134986677 837111404 607914343 153721644 432740309 106630932 96888501 352859786 40638414 234448368 585994993 893920696 692133111 486849474 790922971 663793274 56927450 377467790 879361545 709376039 930911407 835446081 46531478 731847002 916522551 696000328 486608059 535874707 910464228 540499138 60153856 760199804 695304702 94700502 617080331 999056066 793568305 707669137 453316538 40866350 526459716 423457128 250942793 720157377 355881563 327388099 340128265 121773708 639453517 927396300 336543837 778273325 282093056 980276878 668540588 938400615 147709263 499084160 708990237 560916375 583906964 64493514 557718764 508090017 421335083 166802287 269929921 856046275 491930519 249481277 536404779 120925782 853860221 867813031 314992595 975530004 132276955 758276267 368765799 786686612 475621019 840319149 115276540 245622929 49395489 443587945 292579907 416995944 204073260 366023915 515841185 519647841 586685843 800924873 86210838 524259986 632005967 134615336 873530822 669838950 419742326 682815868 130944108 171398611 495332654 805872370 460766660 451162803 369014014 526332279 82301512 130661207 32155045 834959409 959225320 531290746 946079138 898557018 430803165 691888261 375124116 328304874 261206359 606389161 232557539 625874367 844671036 80941903 714460066 583564752 143910150 767613474 860982564 728367865 796979272 362605828 182549074 546095215 260662589 710163162 934328739 878785157 288197617 324872775 367567419 841656664 470325230 949327862 480636662 970022713 437060638 336860581 831416223 923881387 926171652 857924588 935546619 754196700 515542877 251538944 662787211 884399348 367692409 583785978 421202627 996069653 471396653 542475522 326256887 634398717 426548358 923545010 675996169 545075190 695432022 623795109 346589616 699908705 200444620 403899496 3228258 965729094 899165446 842601913 640452211 429386685 449090840 400692540 816517774 139275628 257969345 411332948 897141540 876798028 165262352 97138611 471104669 596746584 16650181 846788677 832150903 911706894 45228912 853523335 698120974 426530815 591113957 972881685 855778354 81721723 879288852 341429782 47036053 800120356 759887847 799909840 557575469 552900204 973951998 660630307 756137635 861639720 937025836 244146841 350536228 681579127 749321087 725686346 11930743 749518627 570847630 793692377 612944921 500048807 812817258 933218497 860147106 655413025 411549962 399743497 369073817 721717134 914686168 216583402 242240383 314047863 994650786 754379470 923470042 603179568 921783863 744935323 881025408 387873113 840140386 66497363 673314615 284896239 997218417 256256445 894185678 111183116 361334459 462292997 228887008 141636395 949557488 292539136 116076327 281812049 136910235 468735068 671959947 127012589 267648487 388889400 404709394 183983768 734837923 874635481 959317494 881287117 85890481 694428774 582376889 636935505 982943418 9610132 129207128 502177819 428066076 141324640 116877340 954243218 757558373 277288625 856995151 547318997 705650319 740491928 253641732 361588082 482715136 385872807 267502679 115932053 212006795 962835431 923233278 3499359 149201096 526282389 224830004 240733206 103539581 299302316 958658484 718107046 196810637 561171973 461366114 361196273 925771700 59876954 344274981 796543100 441293824 601544482 796250550 188868167 475984914 301510212 61426672 408633459 947858466 221200703 828303174 593799815 300429470 88208613 121162068 422430148 965262175 505372930 719817483 647815867 805042662 559099806 816629441 695337130 853923841 674609344 323749025 799786992 120453573 985745644 390676155 691929651 365608568 895508660 82782183 443489170 303821278 959844157 624391529 131925387 263322156 85105503 802352355 80741096 901534307 727155111 539302108 574934295 536606014 249534862 803863086 355625917 196348912 903886396 380326297 554745121 151137407 772851513 753482256 568745100 706369209 163640414 650248736 447095172 674569335 530332274 598329656 318855591 563337411 461179128 746644402 14990159 463585295 676808852 730397969 206049943 486503776 351003018 336808034 553133466 987924346 144626222 265544339 461048030 716402369 925463325 520798903 834533514 608587243 184055656 630434057 286689235 639361955 352131882 946439346 4264082 883064127 363837472 56940383 297890878 866297970 936291933 910221267 699262730 301553881 63467585 133724117 459312779 397743135 177185891 119472789 499849102 159143032 31818298 224910323 758931589 177148729 839575128 785415400 442037063 136137841 245023898 384898654 384316872 364515511 634801130 338356952 82525576 800834319 758773781 961758869 685413064 645552596 763839552 42749449 239545079 254162011 141139703 400470467 237213336 664331744 668300734 419301998 246729566 584221266 775059128 788008267 54763679 569581778 85801250 208350320 567257211 744874057 141230184 896653176 66970657 249481125 148438158 361206741 221147473 228173186 83299833 832242906 217997192 582785504 677603503 320878602 167798090 103257191 427280945 416865867 944805752 878734863 722896103 614404570 270389104 354921733 352926091 774244431 205482810 97607422 454276863 6277549 744172021 807969655 432693265 558929349 144209388 892806734 742268998 409672588 431288504 154241939 715428151 835328057 283530846 206042 592351660 667629724 725529735 522572649 496717464 523215633 929708438 967658865 636324343 9635574 984370390 396180336 992494683 630643410 453513186 728550680 749839365 91221355 328877780 159695766 687173634 850320459 607626362 246372570 704783643 700677834 67578761 390112401 291350489 17801382 891519738 728609850 69424737 802028639 26110093 579196132 102325935 631564936 199601118 463482693 635903469 48224395 471516719 559563230 97990880 871189932 258899177 446975111 411683475 493023083 414564227 886021340 915935938 725440004 770657410 483555965 418875135 416966870 435796901 890993609 573587419 178725982 976074499 821204587 566729015 515640202 193394496 31693020 753985330 549269870 730195839 613182839 711245921 419591545 388608636 216970820 245413679 878560569 824575355 207746582 357437595 707197492 767847231 789695792 812734306 89263615 224297579 973805470 802489274 635800081 767837939 855759425 640311791 14432936 708075752 310109551 59311312 657565142 218546702 41262164 53265296 597648251 362944106 111792629 118954355 928291614 960162106 829053935 977160182 185136996 808344103 97204340 348190082 779400638 735329512 73440455 984511006 386046052 94016475 927157562 383149783 93616693 26516761 725951850 482873320 272464787 383515175 794672398 829612261 986904779 46777714 956442769 292092987 281051232 617388764 545710610 616636547 717073946 356823112 821749016 510531389 938109662 33371546 355839072 152896051 441165463 389596850 483182824 649914230 313277854 765350453 591133964 604993522 679890184 763895701 609156950 142600650 25705610 179363408 274051248 93948553 649818180 573905736 186814965 656856227 186607163 223330674 413725284 91610639 800210382 886083506 956531863 955613945 962298659 191520942 339776058 550117630 157686238 18191678 487195564 266671910 592015436 439124893 24167751 116703397 88660929 59559901 892777915 302132519 6467123 929330545 884409437 35961263 767770371 822466959 714701316 491037428 797546260 34188968 124991265 320417256 96232941 908963192 301055982 499933503 568975176 520974251 533290407 541566820 85167936 652961314 336086539 787759217 417575556 188297379 458422072 473981436 924848931 209983715 15875852 978547385 49586617 916192258 93039816 838247530 646299752 854696222 515330804 888156757 345565021 33480907 838809953 218587710 474878981 411014940 773476807 84470484 993935726 573342829 151781097 867569171 581590269 307166280 707984627 377302796 65391956 254349612 881811586 877648036 972708942 182139120 311619807 837102720 133641420 353078364 911178478 423251678 42428031 938890299 864013768 596191747 236461298 189839508 160739035 716628981 660815558 309413245 849627542 770634892 293443704 547230935 397217525 50028980 496805237 382663453 466959128 795710285 798988456 9090825 792567507 95840191 352552055 294116262 564075004 626340160 483439822 925343203 425299393 876736201 837355247 709014613 942832191 490324558 957268031 202755758 687264078 940646117 739552770 68880203 655976217 836352637 944955993 249876209 718178829 728356006 598649345 461833515 277777530 676942037 936528565 888212388 597862801 305254863 291441413 380576106 605362674 208778744 811353511 253432078 406427053 457193447 947908089 500726176 200230803 343589028 933397332 459603145 297874192 536027946 170829649 424532943 941687466 643725095 846514550 148623184 43667095 597308455 513936732 251584195 767120870 616678374 79354694 153674534 392886689 384703494 141984246 14350189 687107275 856950039 419588793 651955355 3929854 495739326 136431772 464737972 707488672 327023200 773221673 863785789 877547875 147484120 616144548 789486002 235253511 513106675 272134501 951364933 301385441 640697501 938865163 818576994 50548601 812591748 899521083 24677314 11420695 548582854 92087446 893788038 66993672 487887190 212143171 163631190 20063406 109847539 261769031 236344058 706191638 881680074 634699276 17132148 243203741 381457302 111345099 997474347 600153820 639159792 461722878 91613345 698532172 521860988 102901448 283899606 824682505 694381051 806932229 852241216 254550211 54554715 811224296 894982937 877283719 362455670 818781429 319780789 481654671 717585728 332954606 739944538 117286442 165762316 242472828 647749403 911116880 310972937 774486471 990908714 79153513 711527696 674230032 417445336 867975572 733497637 776952376 276853828 234285128 623078292 773366405 937910739 811101114 533246821 183351445 775139271 400435234 939308823 439191902 174822998 602130992 215070387 625367223 997036200 106406487 85709684 429207874 258671883 602777617 83483525 877276183 208082270 108085547 408983271 213589792 118320808 967566274 401565076 502271851 374444157 439593934 259273180 344642775 223423451 663544581 104787391 313401739 124726445 336151120 922426609 291182933 903326528 861658644 989939808 613072293 85913706 205989452 308566873 168102099 195457850 764777251 890780868 429502520 924236573 489198052 280212126 717049425 293012266 152157603 158133325 175157360 194872926 335244160 548658103 176117418 260411192 75822527 192736782 659716194 929798888 616980620 707343557 647723245 716784792 292247671 709643276 468606825 270223652 480933096 969203395 716712080 559891043 313734094 284020781 171654463 58711971 571373129 108691298 189357564 947328183 362954180 616760871 193299737 616555939 846626291 56972418 383660726 402334077 235130973 713970358 728246343 463205025 693638778 585070072 506106271 682361190 476466416 6819448 223112464 364447902 69739912 323212506 130914329 547809518 409021289 322616979 617649520 972390998 576240935 641591250 261098190 824297608 778880485 916150545 546523515 755299635 481150473 75940490 857121652 276177250 830503013 784930751 24076078 813255384 415619256 872922119 28137319 827661366 632784666 659495982 224424468 427824082 230542568 543765485 71660399 34407020 461067154 470363521 564282100 929496039 865607128 586121939 501195752 274508911 703460023 235490697 641621950 935376509 990659331 593743208 311982214 937569626 637996976 838808413 723587441 934220696 615572593 785806031 163028411 207316559 38964496 903835857 167950492 971225677 379709535 293532182 881046818 261520327 133165724 236452861 576131946 264869035 605401942 778444298 161934409 989491256 731973708 166315506 372406856 275712333 795798308 167924485 765334289 427019827 824665088 796964102 312633890 969250768 435202978 4387572 373568059 387670152 853900169 437946169 382187813 333930552 88492176 872095244 623515907 857243270 325569980 498687712 81425951 201833171 651776534 403128772 943869883 922463794 965186852 131396165 458214001 777567980 78455984 937656494 446744003 212531014 471972686 958002704 950874406 423229292 881024869 565914066 452014630 865449263 411143521 718390510 940670292 136993979 55139703 653813127 713872771 901871966 81726971 476007647 984164211 791305633 992743605 985430868 500534642 254317459 322092717 719082570 725311659 667199058 777314028 887123391 391847861 12443746 132013094 213975109 311427801 303227353 841434548 936685115 373015650 774207625 72883105 359640860 989288203 747793556 399305287 613114240 552180707 747330669 738355525 750129326 14061253 195800290 84237367 296169986 942356742 204639593 379589702 76872247 444622033 699436313 103974102 697584535 437222912 280766753 568769920 158656139 11262049 264760449 185576649 824683941 138432094 703223497 559768738 918781030 632379351 199100002 262449457 677568641 800510504 196772709 902301919 528805263 159931080 697751313 141400021 45734764 739584224 480448582 730807113 370658077 65808787 752987259 265914735 484790641 584159271 451996780 622063513 352835355 200891021 44939612 633608797 71958624 217203514 993333431 683586775 345909554 40148752 318805880 874531192 623924829 874093499 948047315 727335041 259844536 151460567 188568747 815436042 844797682 132231721 824267873 894332430 845758819 889846427 653729132 382928499 858720969 856543075 435412287 678705047 713102175 229608817 426033642 96363274 81297400 633423956 279935168 254594417 129040566 230304641 483659734 375683885 106075533 833618809 572220885 387689474 817570758 888064773 382186769 558380345 474979507 804291738 650880386 142572666 158568330 691891031 552193898 555307535 327890779 573390043 354653663 655705465 305379633 300745587 764111455 430356583 502652800 70466299 593721337 673961973 661599280 866700981 351515435 714627227 339315606 332537048 709079856 862271424 410258132 319670473 652911642 538390960 272926113 216362341 226563115 161883524 520275005 13415093 396931164 435134472 51443184 815351007 159553506 624446909 235663672 276394376 890680705 195313834 584410226 810044252 164523108 45814849 525806024 851281007 221912012 812007024 119108750 19370741 718060116 745629514 352961362 611963042 640002285 465974427 616594841 499308493 506490482 190840927 294183969 695159165 173098963 672983163 132952164 5480397 115792885 724596750 628602688 682775117 682942932 20010064 329144772 771712862 927503402 222684379 352752826 205518745 497492202 508159991 490247889 948628115 259690890 915466746 361820159 403342910 987409889 857377151 690056305 375047819 294742350 825011630 432064815 374175011 677765461 839306833 773593982 751331311 177195816 123490810 57073870 643398065 813105636 802986999 576117250 58856395 988867494 69101599 742747088 341315468 864543201 817628803 990430436 233248376 404618970 793137382 328263335 69485452 127277928 491001812 984450374 666113914 303416705 995515622 376991556 734910820 36451547 315775067 196854154 766197902 829191250 258424988 311829510 529421338 701196046 895331866 637279744 720432473 872691252 962514337 741755645 171727928 219198894 62260354 161472057 685777962 914809763 666922604 580337019 295986296 335781959 987678811 776306402 540417987 331902197 316748272 988528027 489596800 421454806 770898743 861898819 119245228 66383807 815887284 136937092 452640691 320403972 812699375 70022942 811527492 128966338 821597553 304285821 106769339 202723628 364018363 598814813 485148036 712081397 810810643 712069608 639855517 564821873 905785444 676263150 412123873 458563837 877400599 916544062 29893793 664616574 662068310 751339474 81518997 670395281 583412934 796069929 710336712 765412496 894765670 296477664 584336598 759209020 785141391 675067435 911918156 383054477 660680401 893098447 981531795 751163366 390445550 270736335 298972727 818917195 278359140 130648301 7509242 762799141 281492355 612196825 69119099 143602840 833951531 232316952 776347726 157096801 94009358 180407335 375532324 528361350 366203596 210183697 238139826 255148198 373085237 509463378 793358670 166278496 147281654 562335233 92758780 905072536 584999059 176432881 351880623 268195805 931745333 538882301 963203981 898338646 753416372 808979325 622841081 385344179 74393695 893498036 70871250 95281863 575214934 620731149 795068016 448839068 240258365 750163240 29741723 804633827 549242291 954384831 879068722 645872816 457062853 741759023 754098788 557695706 771691601 6257696 853994670 935937717 584847640 442656237 937756939 313711732 587389232 623790398 846251464 109301076 362363673 550529992 896132746 278959154 978873686 886631751 683718680 373038419 184202856 130204413 138996580 221347365 954062271 990146030 699643931 89552074 124377863 919673885 119574252 667778478 506341930 62879628 28672947 430692518 102339915 795245271 311830106 640414659 111126062 783018685 997799827 376918183 182860431 595879714 949051442 161279974 222892461 513601074 726832729 423235212 259149972 958282650 794777865 435896217 389403142 359163653 7554256 501628122 848882019 789805377 494616759 777795369 465891087 696220982 991182378 739534434 966473428 369385723 23889837 728950931 93401385 89720933 869077713 450239373 368876604 26107562 635854458 585204063 887929751 795621401 960583666 524129590 289018802 792314644 653864142 659587915 379223840 549227261 285991609 676437921 235119215 990722960 187401777 987662671 136641465 58167146 243090821 741396386 554509353 55881808 841898320 966591257 66377900 32467209 10399811 794429154 28115385 260210512 497276363 239984944 639190276 968667183 725822005 739718855 293264043 17368207 28100695 459674706 818967345 875107974 889082209 29292430 689899079 118251116 469549783 333222449 790871125 16417739 166486432 279897154 246863320 231860049 65754909 134608628 989294586 479097497 306780579 917970540 176612769 424258640 464463992 511743537 902668222 151489836 655846073 972888855 286028249 6268658 880353624 511052 36274355 39772 739021772 132346985 910733978 409527281 616740482 216173086 115819367 625261268 892977038 448832721 836923968 566814987 41035364 730301180 561818549 896419706 912599459 859846726 877221920 743057681 691489866 775302950 167642884 441528393 888599180 191624706 762983449 164653500 83510500 106743305 479819794 471771379 706774445 940475280 370190690 39378491 972261914 555354285 795576135 153350906 282763495 454906225 821340224 498874251 193183570 834918539 288733930 376428677 948035084 224204345 265315448 761317768 542517697 311938315 465463447 89279460 233228919 974967160 433235096 121096142 525103907 966494130 159899169 867796047 742205319 266013322 736448321 865838559 924930759 188041074 417854484 318766069 332165947 919796507 812213619 883382845 854834299 623565891 263176912 567329123 652769111 708363836 211513525 220979725 421013000 614097400 201175940 622453423 691562172 949067050 81701926 986666031 619344738 670433002 883141680 340228119 207117067 324026150 670959726 642289779 246415487 638265118 588946951 797731068 723566184 862874157 386913908 355916886 14363028 739877012 277235043 211274318 220728415 222410519 612340119 360682301 727442466 615256402 13708813 132316645 34013384 354462126 740651771 102417240 228992763 786809508 954520847 681772098 411574896 403149199 24554506 541176955 513617054 285695700 668885372 882140280 106864800 70058617 88055883 464505207 886802697 97885335 623028278 169143829 916770251 899734275 886297443 968339342 977467681 632031601 93484511 840424225 174273248 646054 656248887 296739502 425770703 803625274 420215311 912903179 217924048 638872446 531774241 265313625 290042295 415580890 795437434 253703532 266691802 15058137 155216210 411784444 357683235 537360823 287461873 837046023 938821420 719594563 74655406 773694766 614291953 586565197 287971376 800278125 535704493 236839719 635018850 613640362 47209633 814637015 700706036 457629441 658996082 252694501 470238382 212613243 219589910 839520275 547931921 992987096 876059152 209403951 942544009 700166711 714663778 441955471 22935626 318590351 887112554 600094035 385129204 119747026 771706654 596469739 705323953 933176121 862608305 386579574 687209599 594833067 95971621 264930982 538587938 858196541 469314094 493690963 251367590 596059142 856083757 840974486 297499508 699977640 882398333 917388521 401430920 932041530 516726356 484431539 381469854 746438685 773786063 241301440 820789131 848985557 439903339 140318117 761006982 962472340 114069551 397215647 957909926 703737877 526647926 60797284 808845386 401210221 735217283 424285611 643522629 108175822 21253744 205212141 555061437 142531168 162076501 856092785 791597169 336539088 457991957 658040554 695610677 549625383 786623803 282242277 463401425 891582173 78596796 828667393 789283882 901102357 418942709 786242092 740951055 902333667 82111794 330289924 750851693 346087815 248345847 138043842 532526566 672486823 688635911 562386104 846280502 32993453 251030812 967713179 245115721 538257105 972229285 853609449 941048276 48764985 592448403 158158026 336544704 76082209 547722189 385852759 747731999 495563734 28475438 104709253 708286783 451070069 163792204 562606579 4222592 570945739 125420429 88662012 221025016 912425703 253017071 366280901 103314103 865454167 309864603 897326603 223891268 354930024 800977339 750408422 907660292 465039020 39181858 350126459 964199106 499956224 489045424 882568440 387723456 156169945 540213785 937866906 801409235 500514520 756624663 359798615 743632259 682941270 955195119 894434998 944601620 704497623 363419941 392124144 32669492 89341428 997692191 920847866 633833574 88532234 642293130 546995622 768316218 631300780 457521335 95047796 66221489 635036614 860932948 481109829 531383939 250051811 972213036 487046679 368665740 790628823 542540425 872745935 411615860 909935319 284621612 113065441 738209411 918353996 141101108 675950933 227008464 573799701 727767538 592456092 293294071 42614609 348712637 927847234 41133826 316007993 337480726 929169027 156524619 264126988 466238877 490568397 234159026 82536285 875269912 124702080 449808424 215706579 500160757 488059262 489776319 15930315 436693504 865736231 423380936 619210095 374798907 169174620 128585527 665863918 985164570 36822281 408970264 925616269 829505739 822249164 944481019 984620433 532722666 111773428 644173859 434133226 803378920 881617323 959277385 505012002 235877012 164521589 980649725 479139895 98586197 396910890 578537165 605902701 984302567 567660754 755389157 646508829 191629194 807160328 314489472 54799166 517319650 985991439 469282253 81087799 383139716 88700784 603266091 876474755 857551397 530616607 141746845 328683449 327594530 189417684 208289837 132592122 115769553 569016683 233491869 900134917 267837076 468848562 486096938 699044974 651616875 950053501 996484378 644627918 767435790 757253432 972437603 910482786 856323858 920348509 446550973 402582273 247648111 105457019 565514495 463287249 849468790 40490510 526723236 945613113 173498768 999097311 30966310 801868783 291775475 847283028 830996792 973100166 719290426 122610122 426602388 281543373 295863459 45599963 284217974 229985012 754003138 596286413 773808910 793145308 340969633 109151301 617998907 749651704 296981820 793720630 3394226 377447407 911359663 675248274 367908193 422883319 596585690 355073576 782183794 638962437 557860911 534660037 729175974 23809799 540391180 121149377 848966550 654629791 701511142 387857574 943608903 453951895 372777362 267155180 682949939 962946674 287232288 861671727 859051441 19892349 398926345 42609454 159757854 802748069 693700229 62035563 813527802 254534708 590949711 825118270 210315753 779666542 896943760 808163193 324261258 766734765 692597891 26853025 231554513 321930378 228129151 914802182 25851423 355962469 522630999 82102904 205479675 995063062 350597961 327319266 302534878 154013533 497596948 127190687 233152878 324660121 332785414 989468443 808478451 8738312 253584375 264477417 24107886 429895513 803098071 346630226 410689483 435283703 175528907 289989797 350661247 658380361 717556458 151296638 898313272 482153088 983940417 823220296 540219006 698071020 747191925 654203638 294259857 403151990 180807709 125190082 142725208 729714825 31884218 652756875 522617108 240410748 24437522 821268298 395820584 620631218 921127576 548164598 5320072 488872768 900942944 160833984 223502210 842709147 807525579 71496791 857310503 327406605 178612581 365087525 726414903 466803291 785091188 47972008 215261381 697102198 601969951 532779660 336456899 330779094 359518844 15545352 815382912 819496976 665397096 288524256 616665687 69297633 817885435 491461856 229603172 88675118 686879652 553147945 33595250 128038595 875316030 314070485 70167445 343776055 389833107 292908283 976366585 595289107 574453528 350148198 879464676 871964779 890106615 136026009 529338654 44314354 150348800 174384507 765913680 55591552 574627047 200382381 978036612 747536796 230806702 869010349 572498234 242588393 719706175 178254238 573399857 550224917 391459638 686498670 919383824 178983869 273935220 341007300 760801564 349898332 909197816 64656121 913889622 952187378 133313316 758968799 363712193 576053957 289513739 249397874 118203717 217698242 244975865 979542890 662254996 330339466 60724677 721819253 661734004 824588152 456649162 336827716 772907685 838250647 830924756 141349294 868181708 771717672 987222350 396750311 897274401 505394258 419207794 85857795 241086176 930037598 222398237 35971292 424812766 861031595 691729820 185425873 101419369 335571605 584932233 792752460 7853599 21168718 301814908 322509718 959277124 839321940 44824390 555192152 253501709 234003224 836828818 285370155 350634098 944709540 266074297 48982807 50840163 737288766 673602584 617170315 650573078 200461584 298289316 93288300 771575910 437140757 560510116 713329376 46588568 474828404 799434998 847167963 657579045 562681978 785032092 757944717 697781268 749803157 482495597 62884632 172152250 245251290 328708056 839042593 821880523 527278401 609765433 846948745 46925718 263280101 973919758 400442600 398632260 685026035 722718983 944062608 398578369 467512752 859862468 116415379 197740308 153669189 364433321 741541806 42593525 746847141 303448326 538561078 550086298 201892779 638254292 523577180 863699928 415248253 601620814 897857428 41737071 464616689 816344390 162340714 684422781 950576919 692825306 601997884 812581947 906625469 596968400 356946306 125036330 154024678 280792769 933941565 385666014 1024352 30302396 936912307 244982710 350893908 124545577 925274429 545650014 936544220 752380673 487585883 266193671 844653141 1150094 132726306 170214866 101265742 117482136 908534203 216961801 896811503 738621245 832767167 959027391 559555542 51292932 846553692 976082981 302487226 187532873 771935025 187036767 499816216 791471256 279736910 969227603 901207663 63450774 426369294 546880085 489825853 952944245 767005077 24511347 541985610 730093963 812194129 663876571 776224621 230184206 427501372 831016426 247308177 319506272 182827928 460785800 753492859 650887562 957030827 480838212 420066781 357337595 355089260 484367771 58360317 689360544 277345716 738618775 813010873 750766969 439697763 130073661 330726116 318530792 301996104 543563398 229185684 421648214 708092973 417893295 566207892 376975791 410069307 2043577 722856670 24698922 570069692 982076984 852840686 182686014 749930554 607858915 282858811 917634480 217072154 590924227 222362581 907724898 273445813 524904393 795105707 609525403 855197137 184805325 832799346 396676410 558970643 14555936 347967241 6688047 16020615 933569534 324490432 352905066 374480980 99978647 973324255 251612793 326373738 378177459 358358960 490220887 201709436 168350859 680141375 946341867 304613539 878863498 646528022 721537383 49841675 813760003 421303855 903145100 642508993 706400567 4664481 703709338 639026154 372743362 982635062 478603572 337831400 669753110 677813485 926922384 480409759 875777270 688813393 836221534 572151267 914624848 777842303 856994690 976595578 744275380 708817919 918392663 57416809 224123991 533935411 964061844 859035786 685862771 510964858 878367822 676335073 843770944 298175403 713910873 687150179 277503245 114851049 234393787 752110758 847331515 602682172 102921709 790446522 179463590 778789510 529997218 234894349 482196880 269358273 315433013 270529986 328999188 689331025 74815680 90862264 58141649 890628731 915697157 583154289 86300152 15405406 260876285 233123030 578882204 114288630 853224105 430123883 406935723 599917325 740172263 456422655 327193017 728498155 7126741 135698658 556166589 486708600 694550519 53505348 913567781 242892714 59714323 324468357 846403385 582016337 855223824 29667773 160579751 813482812 263469997 196320098 475953951 105398469 306678958 874246292 295445754 489494256 860701636 412256891 48211981 336215619 416740477 790615604 232572384 178831984 120648826 702963041 763901362 352603238 881796382 153558040 59004942 10167704 681590969 861246843 141397265 611048603 883805667 702124248 950453951 476964735 836408628 696994127 236230759 58868531 170574404 864754352 121102773 815218361 527296237 704462887 735884497 716566858 680073757 990796240 612044193 464707049 62683453 531498935 595034116 125347587 254279924 25918123 996504328 510491346 488151303 424970936 173335119 124572820 304363561 553928733 334869793 191586239 708926741 638888909 504040421 764202019 554066486 945948602 231264885 726716555 733894572 377215245 231083725 559138623 889008373 687675064 826886057 299652408 446677112 497798285 628779401 983808907 993748367 57027643 112276848 785947690 116686440 96163041 967974330 427807875 780518753 911043543 481680388 452341887 220265368 415122182 408988589 875641948 277456405 741589786 780979922 416116310 413096642 916846604 336779082 898605642 578216355 620308455 190121449 324500839 287526404 667410169 392406593 729649799 370855898 21245389 321130424 657809170 853176626 850278210 175205466 634202253 296280588 602197564 740199848 633031783 27745011 734739476 93627996 679617978 168905179 863013907 565448225 23141437 269938633 325601537 905580925 795819858 333988821 681294986 323624916 347613402 439433921 584219399 146182952 713659922 833262670 397950982 668813414 498459662 807997508 163191912 224718328 2049482 688011423 26878310 91440297 899961860 371834298 126783574 220406061 795187009 712220496 138459987 112090712 662186993 389116546 27907540 712806276 412418612 321797387 772334719 37935576 739788209 112025905 846500899 420782839 190822030 459044446 348723528 126141605 67164 672848101 300682473 260132088 723067606 217208874 609575120 434256687 403841588 860469959 279251556 690380323 449345553 900603309 339301935 495240783 703962559 294679890 258256259 472448122 350016583 53562277 87008006 219318853 263289268 958954846 786704196 878218587 445321437 689151846 953843031 690941741 840886686 179925872 274525096 909429623 70991860 549189458 822671439 970459246 162253446 655639280 142537638 381179665 76399550 154357761 335313922 438012575 862962289 268915856 606356530 524549378 427186917 186834482 990480141 487001921 659266326 134108275 740953971 249558460 455101558 845784478 174499496 332257353 820319980 985144687 299327263 447741896 349378851 281386150 721865109 681639496 755246809 985089586 26051214 457675058 589446589 591253177 699305161 951108514 868147124 59872957 379161255 215069300 819338749 397445952 378771644 37438946 393047512 114980197 708290453 918671480 610253829 786180309 864095863 910576812 623711131 523087950 26172125 465689847 993698143 524137665 791193530 876099301 184086318 909551800 701374288 786968105 106045580 770156138 169125083 489369330 694309465 564077872 315219379 466296273 952012204 960727608 703099850 700702656 844075053 930179426 712841471 914539740 273190815 968394287 119728994 97503412 839706971 465953735 436453602 729924715 556360992 106285798 293630170 168695222 887556739 89065692 791721786 713024880 455853811 707576909 424661259 432784806 679567511 661589302 547420743 840833853 282849117 778527374 595106912 232244185 246517943 364302722 438484785 8646509 903550917 622813474 242831878 525794376 535660030 115196818 351435776 148503056 267143557 524732135 377750622 791631585 827828051 672048307 856918990 937335610 791439329 555382947 208491039 128864668 443224362 507541135 813175226 2421133 654717245 430293395 116182322 507086178 578171991 110662489 800714744 12518474 995634178 249644937 928269047 248621522 487558442 716554697 60880113 501922998 456694854 130046244 733171243 536848518 568050277 482388364 254865088 743751420 531003597 34749366 60103949 233020158 729314513 746656556 381323078 24605744 17402225 442483134 577039336 716282783 741900272 126251678 587038992 550404614 351442424 642880049 930181965 737593254 228811066 952225270 434186993 915626742 202994242 605227119 328284262 571132445 680802952 20386734 983408262 224148577 594692932 151624509 37630980 630992934 610859769 534869173 186982131 790346285 294449016 1246527 785147030 811381762 713938663 999657638 451610250 281941385 426654507 375623451 480552284 135442365 911485012 462491342 863342718 844135976 83531916 757563051 95957190 594002648 846751483 48935765 683932318 559972401 3803744 706002536 530936859 511584168 343104415 562084096 602131286 693354269 126032162 306440604 544072872 78751864 198367742 408951153 301335511 871965844 905655024 301867601 114429664 898684782 845256818 210826052 755949105 235800675 768379550 784137527 572712007 927592583 968985419 174338262 20916553 666637987 821579134 951895271 47927301 53140044 582721436 404137735 662822832 103261840 692353263 435481985 374571551 308457351 590732184 94212758 691992271 556254496 966445914 420293042 26482287 758689191 780618501 790572533 720721925 951915733 267229365 667786066 723592710 827753127 416926625 813587421 466612461 781387580 987435519 18107816 826022215 201995698 413832607 518404665 132541826 945631451 658379992 431743669 698688363 406186014 513961358 705021023 393042578 185054647 417585934 298153040 709154886 917570230 258829222 21730656 261806800 606534669 751359492 340987745 493504002 642562089 676385062 964547218 106840182 406040727 935035185 168537103 918329337 320431495 343639215 250394873 747538562 879551182 90431776 65878646 265531385 809937620 971811530 100710562 440023901 349322573 431117308 55000294 583566440 617816772 373211886 74273913 953843408 703376786 732751111 941857320 810703585 842017654 86182187 9569292 661552797 71360163 58231754 655174396 811261342 638689988 674537085 111719610 175889277 467990044 510424224 863960334 504743848 85839680 128981035 216377652 465690699 760518595 942321378 835372609 949714495 447845004 369521000 593146677 573037182 130782023 362357298 981203339 586225966 366678289 200782580 540861979 746341735 664718919 581120748 905405596 887242190 544851901 406006357 1952646 641228284 29880601 25454733 442966700 845094562 712782239 408845104 988610837 241361478 398786081 893112172 752243803 677916567 322996823 671400670 890889302 369529148 733780042 836164266 283116971 8120801 67439622 150493791 804930725 96904917 276634223 441393159 989852721 421098279 573846792 938632033 383317780 167906424 535917348 923436797 944259841 586134430 245862424 832423816 931704576 328086489 1952504 178850876 505709426 154698380 816758280 597444043 152487463 579329025 45168673 493641676 405218467 73503752 368452896 2473653 112051828 263094345 424510165 772627641 668081224 867795738 801077755 64292953 968223908 926717415 639439341 858780924 170119037 572523870 825081752 433312121 748400584 306626518 191768741 872245783 976969840 177139226 613933379 517422170 185321024 833583598 217728141 846635783 273763901 929095702 141210492 499976447 974841539 902755333 477337337 684410600 385941366 395861649 486456691 473841288 477782849 930417296 87502054 214671441 187198029 442738283 119743628 422398477 440107069 412070312 907229099 63854731 535148501 868007660 894462041 136521234 244602858 604283840 298968298 863114423 314317447 207770090 515712457 778471507 590733278 270183025 415223852 840448225 630162636 647929453 525609689 784812470 287141905 704932589 51173168 764533106 887332510 98001451 543809064 923038212 45309827 338992922 951839452 195919043 615857905 582873266 76060617 675780733 506746959 623040199 74598021 651125187 5940462 778397285 877221307 739206835 72726839 834409257 224010585 759534033 431328393 442759644 607802911 508063255 140325244 268929130 339593934 524597721 266116127 3399262 693441191 765195770 256945027 138576754 481108859 670629039 337983507 603843143 583392751 28421674 852786283 905364075 291791808 706386132 833941660 457731882 10376237 768955413 352905908 873567370 703841745 737556392 968797427 635858685 54236467 32139445 920304767 813820811 358855195 346824214 437815995 931297502 744842766 870475715 930385433 829615993 66592500 197335492 439117955 57954425 745378194 353755654 881969751 913756947 583601402 443339569 948085803 858093951 534077329 557542962 882428572 346690093 208084091 380505930 77340067 32690671 410250234 311252773 61555996 44672386 670195489 345492292 608790317 560217328 348018490 834652228 912274735 343134525 743817124 558146673 409784859 981634298 762313085 793498018 719857293 125170973 673414070 100398447 670897991 549393477 5155830 203009098 773728350 757000933 120569266 898542613 787236814 610097698 76797062 884378899 77751821 519247255 616464961 408672726 706978474 247930090 497259269 843256278 795432339 462143124 269884592 933911966 395524889 802057015 642043975 495164522 273782704 883522857 883969377 764783510 872477156 991839466 969117769 992618154 453415667 426785347 5297493 938571989 759099326 393273961 45703692 277973014 757521974 568859406 576251856 436834848 902351216 403137243 793439005 665130956 423001921 716113991 628116880 352141563 452874263 689099868 623618086 867558795 824259442 579084229 115719363 684415255 806772747 479115857 575585745 207722108 790836448 573079915 693039060 367764979 98891639 362522479 35155195 594139588 752489328 656288261 675994864 629299473 718237357 398846870 531732827 596217815 82115791 357442368 766962666 493212179 144209667 743947532 649512068 612984742 111621479 657949043 28758559 967319338 865986543 296716552 796411618 503013731 160362780 796147717 81928176 174183454 973391862 146463008 220317875 457419846 529145687 336136558 136518642 568650832 149791304 940554540 370358800 853879520 324928357 757246478 631041664 183620444 758069221 948495864 199494349 681782675 559351619 163635203 102719303 935368716 891776465 564117616 770383750 771713074 740956286 890512700 225194636 292063550 585511928 23173338 522347519 683345301 637080531 815612100 294675853 800552641 150643247 347985054 353317666 433256701 249980848 489584929 730269970 331714346 75639904 939285586 817621360 659164569 721937015 854533864 361503621 136174568 356000230 453979813 162039138 922676213 668859528 701984036 911340235 763230391 592742028 232555846 946139941 619761600 780290289 202213972 226089108 912930793 797961436 116492252 23777229 871391323 225234569 50513837 788165697 977730242 34483088 698052861 852993642 184584045 84537637 664853324 559253923 599415446 564820060 155337328 110868764 644904145 240994619 868441562 133474503 498452990 175506276 192884814 60174557 450975322 685118686 294226163 937621658 594745956 122261695 550517679 369954212 29354766 275198368 705497523 119040988 9888358 222969058 12424460 846450628 653343968 96721984 484764174 831670360 662172435 714566804 377621256 433036548 831567829 67564106 953811615 214695369 942411793 305780288 377393572 591733638 64165892 615682413 238310253 339960218 906906278 135299394 963098562 897804110 34590972 947466082 863688754 449079369 585610540 385431532 331616862 608724937 141131969 779563648 180446186 955873978 287883414 618041115 353705029 136911057 817198170 737989221 489376675 900631810 580221329 505153287 168048779 163195503 586575404 502899430 808578958 54199356 815746877 208103396 823028885 508032761 799612388 408799300 290777387 576077412 173045938 233366153 162138355 884680532 239855360 490895890 51139177 519655222 565400687 422756064 26404270 841236903 736711280 365760358 934529334 247343943 690561716 947340064 655552407 506250957 16983276 279525750 103075480 383010479 91928288 346568079 960762674 38572850 252631510 601888052 729904515 597949986 426524943 146879001 370614295 881238793 930043643 864590214 700038005 386420497 987091725 470151428 708688293 227260538 977526652 459731949 860352195 550973332 461709931 282631432 204690350 690037625 23185016 480190961 357150427 676608053 58144833 569618663 923604496 673195421 936845168 969464198 732242881 19614028 649217620 560218857 914498041 316234784 607914656 935618902 270327243 10901041 652240164 427908096 933549198 876398076 480082893 104584526 848855163 564173599 162426540 756139642 375967947 415405772 27037645 811096320 519545943 687471974 15397380 191934135 798212302 693388706 277373561 431300020 688174405 65808324 856195654 475103406 749565624 346248765 693812635 895312847 536623007 590673930 712137578 503368908 908618719 93339728 702383677 673112854 966011268 218453228 309368633 820707164 475412127 880402555 710900193 246718136 722335422 154655990 752719547 603983792 840976356 399717060 658638686 745108607 53541081 802206291 666662654 398521424 476299514 882667037 741141768 32569623 12645986 255028554 89749157 682837273 296648901 491509665 754863859 74041605 78417359 812560518 288219480 746498626 877513838 986980909 990248260 902431130 484893549 789353205 954399879 500477109 3879752 328187026 14920427 78751202 942957424 651498745 677530541 585579601 651377206 652241487 266651720 506371565 261486975 529890927 509115716 325359937 974100012 917136346 989475932 602560501 10718158 126403155 261690509 407712701 500836470 530084047 869902460 678731660 534104294 577910916 681031285 148308645 259717002 140096847 857196144 729134820 357365486 795557870 58980628 464948794 405990250 131629845 339372769 825345790 134996575 950948530 952652545 477350319 656013862 737133476 983328078 719527281 123303928 649570945 960297204 939788948 476862727 187149062 324834161 363793817 485593573 241748130 431668017 250812995 693071747 994131539 513401927 824872103 409203515 873147998 63508208 570629103 768960615 196745802 550167710 411897421 4477926 832413016 416071483 888659336 918789391 487306009 824415464 996418026 944092314 691017698 843850867 741340769 571017895 812617412 201992417 329751783 687282392 931661893 54750234 243093286 519107847 253986918 81664138 997853175 846805085 120791431 688980892 577578525 888927977 956620057 374524181 977211950 467329961 965074679 938300456 633034597 365352893 103421800 625319749 666054496 849245261 459366995 646518085 838073706 163895935 12991394 757223174 584111157 147837630 894567789 379690179 920947779 491315472 666063578 332675050 731675789 129985025 462977055 807942846 370807012 63032305 481099309 975470202 793714507 212309523 242367111 503366219 711711803 297274954 523186713 518629058 678990368 470250615 424000872 704301555 790414229 871757172 540276101 500853587 350913234 595860334 743311216 470159538 824015910 227928174 361610607 942884386 246340725 890394528 489949510 703762491 260575265 867262568 458259100 74182015 753455423 921136622 745833084 843586853 161683275 274517027 193224738 581195085 879033747 888016505 674045049 103058350 365575554 538199440 506051374 551619679 708605750 742695825 879457540 275112774 9323834 859976457 40941789 369867363 539455036 301005495 721730479 584139165 448492601 680918997 824240500 579719300 500593033 188319228 71629123 705816830 991781933 85443926 867428144 941960429 451469290 465893687 452272565 844663299 222148973 556791716 495178369 470689380 235764044 379526120 387425863 393640359 281683210 981754559 239184060 490208057 749978105 460402829 696488811 199775232 733404239 546217609 626184107 899847710 990861241 652040788 736793791 147844891 779616244 721505845 697858340 894179625 656240424 39777392 714785434 661139736 531575700 38920640 175308941 265123956 820619079 500047058 16975900 124602233 331672484 288115282 909692844 305858196 284367227 278001350 373306882 876303341 42394505 178928491 640750345 57307656 986965908 408666018 425321189 703142453 619101450 118240665 645542486 472524562 285437449 587496366 614188525 756856091 991712036 341212039 615599136 459511599 245992843 940634770 425031465 762663151 777368338 400097699 545759660 915753644 815710820 275944708 572708369 337258365 475176167 882619843 970916202 894628288 807096190 219069538 915734334 152014005 683200441 105969038 689810273 613788667 797012229 956755434 755276957 473623520 821798843 804832479 24170339 185559965 779062704 673171383 848279537 362164408 423734578 53037905 41394085 898050935 34186227 802426074 108353837 657009138 93478448 124096046 886617332 578043450 547328274 582299791 163371389 120078712 230950084 125507793 674999804 434478117 698850385 229160287 447232573 44567349 964871776 974121629 68132307 13947102 351700812 403916155 1585891 200009130 780430772 492342527 433121038 350254569 22813281 518173677 747810317 576446987 528104212 369041524 104706310 669025160 438524744 12430605 736333459 173673796 463247968 580765783 873419463 974921680 247886955 129766990 634293586 719118566 615905143 772669103 628741859 446342903 768347401 272767032 867959435 288287939 281958891 746410835 500993158 682911673 293517810 993322877 255146110 969803924 67964571 675428650 360149068 901326057 108646358 88831045 136193391 684662341 570273561 184619941 841740036 708707900 765584721 657259580 132615634 454806399 862793073 50325846 177043616 362323100 229650884 554041301 823912044 681048026 971467640 881856976 100335074 894918256 275464979 712519607 542842253 187326833 518101201 599188669 913971445 797367863 577890288 568583754 687004507 79175343 827435493 675671208 851914372 512466421 268333982 333829110 140048940 541978484 378247201 58638491 884612824 468791730 132923899 636576683 933771299 758584148 426871023 421463350 245095556 82769492 12774073 975784026 473868713 798725084 843785938 227783837 685772837 789160477 888002785 141188393 758489861 884101858 264756100 477699874 335515636 440452547 239709486 215525197 471682373 505947476 665961702 845983173 569748856 842100076 524729931 105531575 782428479 964123040 896264701 428552729 485981282 341882688 11916929 431315431 475706448 241370798 190963020 819206724 139528456 870283339 688701732 603744063 517327083 519968393 430495729 166056001 722941172 385222594 776480758 912780608 193055417 686713796 151750122 603782821 809253218 670881876 569586489 388565698 981979495 21568434 778122406 101134325 913413382 10465657 419174439 97505209 412024396 459301466 263586648 350663680 31062308 316233123 497514000 743889806 536141952 248409798 543850542 597218951 520029328 597477320 41699570 64605874 366157107 618066177 954375554 427848473 91029205 920739406 843927409 144508935 206770087 335108176 615895766 633182592 945291301 467856887 350913454 988952420 395233542 15819131 687595273 959495213 988114701 57798148 535153181 57052099 335721966 647554899 443873496 72330144 481081417 557246678 78578451 353602440 475259205 175823180 679560509 895922734 657249050 738255119 223739981 346991157 433275037 417273072 631113444 165737282 523357153 49796926 832294845 636740259 512659971 756054734 349863886 856922458 762839801 522308752 599231500 576579461 11166381 164258512 121177860 657022472 456206291 592292867 400036722 73225062 862430559 329742568 641550911 226897594 344692550 109719749 93263995 4176229 453417461 50891151 840526332 63490572 638998915 305212339 316464537 256988458 171914203 619634549 54668238 924285850 220982568 472897232 64652241 541636153 741664110 599731388 84117274 559539028 745488125 63505667 324964625 701928941 526003800 731668627 419937579 94079280 656260054 315207699 948574399 60874916 244989678 71902038 570711737 54282456 11293306 397310864 588069322 683737967 636857619 580612377 925323167 656647531 382321083 344037540 224026352 906075837 811385666 907965541 321478995 798547373 876234844 582424380 99066775 933028165 674627107 234179707 451050108 955014254 381525323 364065459 150117816 151960802 696465205 785782248 487178074 6725009 178930566 884238548 73755794 688027509 853956390 432286015 42194573 137817854 801531931 361701348 44958781 782166856 931657692 115744965 263602594 55298483 864378488 463635456 979998466 192213091 807689759 197228144 540685153 692657982 525471476 930597655 265240182 351563084 476581707 54001753 453436715 627544096 948393574 668922807 797425491 777351117 625562136 938852289 763334538 598483081 802413666 991822094 247286387 742136051 964069038 771614671 990385995 475783913 551835987 380981985 76185584 884398656 956326787 812061384 676418267 476453761 537278390 382410820 440104473 57483597 433163336 805917555 772588163 182144336 540601775 779942102 612302098 345431437 916666044 46314079 702925066 534721309 216589376 950960495 49051760 48767226 454714033 322324198 654689226 48028461 707264061 14676102 455667032 128598258 159869260 203731400 678654914 855981328 193818315 950725741 177197312 53559418 489919265 341010455 138366362 40869599 577750508 920621478 138192558 117466667 689785879 800067973 574190828 158653654 27700671 125684123 154323992 562015410 112087958 828028536 63629381 933176103 159812329 599924790 855551678 98587385 73062037 823969742 364090939 66358988 610298134 875957437 485722178 633857726 605566791 514348089 686231177 433207953 424169849 827358123 150571489 312167320 99802037 804557758 744546322 44180031 341157311 156230336 549870364 487335725 74432185 348279863 609921557 875285802 421482982 502457457 435325773 663215396 102578509 392804292 41377701 237314797 539195381 921528297 148205842 15987444 949558109 122150815 746242807 812282307 194973004 465246832 463048729 87474170 693714740 422263770 296390431 972640091 660690557 842258428 290641998 863541280 137815223 383513417 296126561 192185824 858282784 174103413 245690337 637794120 648767928 802633457 106647190 808080984 990549418 449640656 652316791 136900785 695606282 657526698 157456857 294838285 224564467 744117060 131195672 273887852 479644095 730687851 218943715 36451948 871700532 55327019 455019319 81197658 311542357 712062602 669364954 11498205 613614428 216989784 847236703 686798153 155323256 855108227 182238551 398068336 67611581 596053817 94615934 96092943 863709850 787752286 473806406 776052767 105738002 740623421 35712247 937065225 773355750 292047423 301339637 535024746 491621615 941191415 181748281 567946725 240963208 204756729 454602447 392991552 782872488 605648774 411114134 352374122 421393966 496528497 214059359 221319611 548182100 342664622 913833023 925398318 813555655 839899118 467174941 232058567 530025671 362061150 873064088 42326150 668920826 947581223 182001503 733227236 711489727 628644545 430681187 235600702 188975023 673025905 670322296 731443656 246171704 256589478 304715925 72470851 157456722 357163255 999894124 829439909 196350974 114240889 699800729 559358668 887930448 607595309 481115990 665051052 508021086 617478695 912721943 706900005 175308329 683505567 330747635 209080572 4461829 575799967 178423412 448225648 156469374 382743077 492390664 518303976 576778790 779046804 675421170 643250953 899935679 426229937 289201221 494515603 524731924 876781602 13452557 831913317 172938850 364746997 605443508 348647978 991024330 109120382 879693298 566524834 808866839 215613913 354120029 551986618 598951991 675107248 269179435 219216359 400347954 158227338 403965258 397531271 286712099 209928568 205275813 999474323 12586278 683709115 437186500 183350360 592373461 936822599 898233681 561103745 231714491 129464054 731748759 224143688 938429468 22591315 384875850 859602660 81411964 275082406 295756908 559295950 941049891 585788869 449181433 100098333 862130915 597195275 642205098 862459918 966614996 559231364 33197291 983034012 417838836 128528937 97459032 88291439 427232972 974321356 582375551 562003816 543986884 758766384 424473661 947404916 866606521 725163622 772288676 255841737 90581911 928436370 28808266 308388758 75737376 814701087 791751511 584701151 400203415 664030752 753818877 128212269 806267290 273979919 604061350 455800413 482673675 949143493 650495369 289379742 504858161 2819085 489135421 418307537 164342287 358227515 821775628 49744676 556906574 734225051 859036967 398477739 302292184 521916355 430587892 256329757 553437720 4073746 565774326 542041091 750862645 931861154 556162707 283205732 660638578 733199015 674495087 390780150 956538217 512152087 510066617 611352924 967384 162242786 230011470 812442468 543768835 812850516 992410119 849160991 49107152 810111120 13500742 733827042 644122168 283384433 442265706 792643742 348173583 105357510 244604283 267761393 809506095 516756204 183865939 957381632 257550065 301700180 569715388 874689434 652699360 812798902 207563730 919394984 40154834 400171237 687018846 527518987 650839054 70196974 574087601 786658440 808145354 746520397 584849169 551864820 698892116 54300909 748110329 65857313 952322807 93541219 846913923 670167594 342429278 516250417 793289158 882070580 436711579 40970628 149415852 997450382 511783644 500074687 386007557 793370598 143752374 597878590 846012407 92360999 424822204 595655666 345547886 730513200 314890660 225246682 38790717 139783279 971408718 775030143 199714740 964740573 806375057 916956029 985718861 1820123 596733105 384202249 443438456 736859568 57954832 690064213 887236155 814361602 998793814 616043542 397880478 431231289 966740112 680119819 951569874 506966606 878846948 97584783 599466229 771733063 969549137 305836156 355374763 293890039 993731710 990951618 708886849 959704759 638648109 260804786 459631968 568879728 157462514 738550733 380657691 764646160 875934694 112983423 124079435 456429165 501597578 408883417 554244465 552405795 184249306 518941660 526394050 465753981 449220368 630620270 624250120 834974088 130705637 70560358 458007457 960592997 551324051 314538086 200326565 755656008 306942846 120482834 181803855 545866942 912690679 346609269 913674835 321816848 345347807 309747715 118396081 246150712 498692104 474620980 479707724 297563730 183070582 377482077 752748214 32855681 494478201 404059862 594755863 862731111 313849922 886224786 459030867 55673465 947390363 124753169 591466475 495886441 881333438 630578728 149282849 92020065 614372425 50107889 752029398 484714225 226854839 767206286 107472668 628735508 870388667 329029355 974992300 405335311 463588047 559661576 232632563 234711148 808808557 627737034 483821233 679662226 810880105 333926867 705818202 190340965 301037096 609017191 606558296 724803113 21069540 368620047 952510595 986245335 678480103 273691781 177712545 538494988 788550742 126218211 133372169 732128298 257403495 254641319 489260459 527711874 896916545 696853952 953732303 905288509 357697880 851787355 669984993 64363129 508653633 197278062 369996309 209103027 737417359 469549900 85437184 723880100 81761527 73004695 693271422 351936112 786459968 722015184 907654491 295861632 95680727 866043550 414823333 706517806 655886262 624775341 173852185 714888091 898399441 530376378 322025968 695030359 439364257 822334042 566559293 357911439 969343614 918850322 684935600 863259958 396216567 375935209 813447568 265947884 484377768 941942456 200331094 339340280 987178260 199073886 154023880 878881405 624540671 666165430 839215890 439899984 851367390 312132849 978216656 139286107 863897286 766650416 795975313 998780584 623301492 610547511 688007275 260437114 698949951 848791868 592386515 610575977 344326116 165581410 14879420 196603246 783865884 857474624 398537436 420954412 225543308 34582794 630585283 307299972 59359999 29533252 810641398 390051875 276432621 514868339 709450501 224595861 963037118 836968940 372510331 541712301 27934762 372188483 880675567 779462407 576858462 247775216 313768741 440409077 503101311 653735959 212741599 573206628 157229001 625157047 638839660 223302982 568674632 149016716 370680544 701974804 14766705 636823455 106593616 25391666 246171831 48769886 340915696 287032916 133842273 637670309 124822706 435219306 64077330 719215607 238790569 256180233 774711188 70034598 886571545 241791893 225306039 463496290 39375979 652242835 161576364 349160298 159512985 206173797 484745989 222717400 258540306 360415906 215965236 976541356 763795588 273954209 186718743 926728544 861562258 278404556 671392208 905659217 462198553 632794943 134629126 689768145 991701371 166120739 962040037 119581296 653035232 628001538 258382546 867666502 165751847 188331114 451109971 211946926 912669484 811154445 142804874 451487915 384545930 928328638 315404347 960327119 126973907 70751346 400578272 770998894 192864942 697444623 881845042 686254856 498265782 485123237 840573400 119473780 6280302 494367427 112171353 737794341 121764399 100129899 468518820 182266267 749036748 528618561 76194200 812313138 38233554 947882012 616499546 306240038 537075109 404450547 957612489 136260046 253361249 662155071 477369004 114584133 441305478 71521061 594624638 883771184 72368305 31076676 748979010 845129973 633032996 269364676 759881900 509256228 300408214 864599445 978229519 908599534 291872436 367292745 792930237 343569305 502975215 697779704 99775409 829192907 387916013 969141117 387477131 125917744 511517270 296222278 951806386 177453851 833787999 109506561 809550278 972727780 65682256 683026132 541788348 882763495 295905451 6859719 956164690 667053981 394965198 540086179 109863293 162547852 683967690 440392997 160650653 888972329 904457982 124754615 271851847 873028518 828378407 290845911 363147845 834306849 851558783 707264968 613007663 560115326 236112060 560589840 441316763 806468239 362244509 472077272 134465596 274472428 273933034 311592229 945649802 655094940 26228110 605964015 606920374 834616274 713591611 257612004 678910230 366382240 270077167 702433614 509920274 249349779 346726022 811223942 28908073 591691892 679773481 608431056 828528111 397525626 784395836 400397536 217829498 731117844 795249458 356218916 860674235 810930 645396138 300599087 905503320 445735716 706905006 560058211 80079029 280737500 722512676 165789735 590412284 457383006 500211452 667183043 437432968 803695340 995753791 731160505 373613535 608420953 130298497 243113132 294879420 864177467 330080329 374106095 389470073 297451484 308240163 932190188 701443467 688896152 675706941 681765131 889190845 462811235 684822621 61883400 906059457 565166564 108278441 808194925 872552520 813351411 198153745 536123400 452900584 842868438 213912470 292231747 502027835 70443206 877864097 62158601 7016146 419223366 234621654 212952180 829412442 893688222 706659580 905355583 455609183 202385482 545516365 124719746 115991044 263237329 53763979 837238074 930462728 784115189 186111818 774468672 285646026 3682301 811709643 36997213 497543426 966608984 520615695 64040446 145783068 367484342 151289394 334005941 465470961 809816984 887299520 693051959 759613118 626320767 582314446 58550883 997778872 239641904 932594580 232049222 250786158 995962580 76051448 670130219 989525928 376575528 351314781 4350494 826651659 201825091 832828422 569818536 37215800 626143655 356263507 434558211 574369571 224434387 404205048 843979466 771874456 873587262 815915568 70185311 795254688 869075063 675866426 721149858 723355031 712861691 795499538 696929662 691105372 109321862 53245648 285670507 982605259 417070063 639864006 281160432 529142620 284678035 667777463 74850671 622150439 821061714 130929593 995677124 706706346 887470059 776989242 746960899 581717247 572673397 679371450 111936140 835425155 671689240 80339195 762882967 271640075 765554128 767068336 515474270 464647036 905647450 73719684 320309230 314371372 938169570 776644479 31692697 693971446 971942546 671793997 288816312 904381284 816226979 767340956 643995477 421245895 830550995 893659227 805650823 344278737 737432401 788283637 657331620 516923057 396253655 927623967 809065019 518560666 532779496 878600545 145920282 864823037 248580342 351703493 468033699 158039978 629314016 803727759 441419511 383891198 1684055 695673797 41015330 392214614 650104302 346518619 812038201 327046637 529545020 563558088 279740061 717691603 118919021 891471513 80768890 250367801 934131180 330361975 321658604 60813456 110516523 903413378 396412941 790111068 609901878 873142808 444912499 869947276 211722559 854311779 465205109 328101298 573695376 918737290 780650193 342230955 199941548 732308592 39816915 898695991 848561808 119060933 252084373 783629118 898859936 817921025 301014093 524714489 508793609 912376033 221442213 579007163 770599220 472752968 740183000 875325266 221256528 536208705 483543855 97502768 937908700 443519615 456893039 108585503 83182549 305611188 53184942 926882897 995154262 770185041 502692497 231324801 841443997 905249723 263195146 874442181 675586577 758440428 162399927 34854985 423090915 682789495 647367108 599056162 489900115 615683645 116842520 575662060 548573715 175947332 745254890 772351812 309440466 69718955 963536826 57418155 3179040 160356679 949237719 205691927 983777480 808166864 171495382 943414495 168783106 99732714 13918228 969500090 799265806 17323608 262674906 548587113 71510379 139157797 181702153 462166900 951680201 642997356 127517907 951591640 618959562 923536190 864900115 649939747 949212911 253377043 638044969 936089445 260312492 454697251 592139090 892374246 169156188 62534288 839006424 847651205 668497814 108897816 868322435 206219738 311553042 899142100 450664827 883645293 975887661 829546040 488239365 460773269 860883571 126125866 130534440 659975155 748398473 827633815 147410891 146823074 840137524 592695644 63398865 88312906 459847202 430020698 778360993 563022156 391151036 967593708 595017333 901832848 930342555 556889990 258712026 220997666 284777676 846449538 527355244 642480795 2472624 341191796 632602595 760578624 689289004 144616396 468411928 142326218 549186131 791722125 242756401 2961092 891252219 453048703 515596378 442591800 569439714 471813838 946160470 113605453 229223419 645303143 581170152 811687985 787990659 327182669 950554278 955299104 742898638 742204199 200523967 656725385 9430684 850083457 938609776 645650880 135582622 816444460 147071009 191726393 694394432 492782453 126920300 800459531 502221300 872692162 568369258 520233678 877375946 362175476 358270125 913217875 821311149 733874876 780257120 574056520 99815230 607024388 881556736 624326512 408756147 901906764 819446654 195048316 713779903 853383587 819220554 788133957 136803950 355195427 526241287 47218349 470834506 651723919 706842180 19161041 8467060 491969396 748297782 322619562 424926928 806842515 735607130 727800993 494601141 574214402 449884741 515002305 575131761 782916846 768393103 495041784 940039008 524998770 678218692 932134497 137558896 465170415 102981346 737660139 960556297 505695047 821320164 927051591 714315133 933856410 796637031 725420905 950386884 719217775 617246045 850552328 552099922 648158244 137522612 570675353 531064488 819262844 415539718 597455194 130637601 901778190 218772960 520306532 414262743 382091542 481965252 207306484 659947999 813934321 774016733 816546815 549532277 188232877 466365634 54482035 853192954 950511912 867883409 684448254 482281767 762843801 400696382 993115530 280354652 268470463 794121525 392152710 920247265 490467213 777815175 743307578 660863225 305251337 565604877 27431694 739454859 467006632 814498716 868271277 910646753 444042480 433783120 800170695 28115167 606777606 856526862 740858149 611180290 17800295 492988790 376836579 774509268 228235293 475540658 472581683 645905372 602119375 76728084 74445505 485272242 673919012 180176492 610540418 118879227 82305138 128045524 523590884 542855556 317067262 979234326 533745455 279818824 101122165 913260545 187238465 687530479 34618584 411615286 139991492 709237179 845140074 664128548 219687732 767369478 888232609 642743704 648905784 866129417 828547400 886736737 744584221 148655937 690895112 814210677 912064655 170995840 713300924 741758732 335952405 638642158 748157997 116590105 439306059 34201254 698549657 126752722 372680819 897137110 413748769 245276646 570917571 444065459 53114991 165852780 831969693 177478957 645294883 245103949 40656755 98843924 794395737 28156896 714652951 145424755 619362307 710134732 716308627 623034171 630545185 982403243 812833536 913924519 813173056 717449434 242259181 109287093 372926189 367152508 675161220 997221702 44721340 467137540 35510363 75028953 896760285 143310009 127028131 7518061 921020741 798946421 111066778 236244228 290042510 689870457 286602262 855382238 896426819 726752329 865266725 460009422 762731964 939546418 811930505 923089359 906667429 970163951 535153340 951772162 274679380 282526555 549364759 956672545 357705187 492259942 555694098 817513174 308571860 166956916 559612567 437127860 698781363 654350812 243891263 795756614 30983441 256166369 462246082 542478528 208799950 814423747 189011082 33287909 42300897 977106402 345469170 687714636 702730776 832072787 280930648 535202480 242895149 132514315 685077046 436727623 970662986 692419269 271564653 910806424 321356476 885054885 658791462 892463649 535056661 830769496 265809390 773081574 579303044 233084505 19153329 567359705 197287997 822866675 159151729 113788420 275650377 86918205 674348998 316908530 442566383 182458173 361267628 327999525 441606753 529011605 737061413 949534232 606984786 876960197 610240359 682368098 460834195 989749239 309264458 450327174 81944995 407338900 512927827 202600549 64223119 693589594 147809964 698591070 187843076 852678602 717649542 440458065 532690677 282920104 600731697 71725298 432026335 747364294 801842268 141906340 877710120 170399949 492689684 992389598 232978725 407539234 856573767 253134167 622123782 953779806 589069601 564007610 780485620 271423786 493161434 194898551 442655172 453195587 957711973 652094528 446545292 652251824 327068186 970302587 963814047 745825930 523134653 238923839 81618492 918223344 102750982 811177425 460219312 724657495 714816087 905828777 951570383 959080703 602366614 561298235 59759261 385323742 596912686 198122087 197060840 486938493 685827066 260055336 284524708 926364843 760661441 114658799 96591130 677236975 573468535 33823066 193667653 221103480 303505007 855990452 143969549 166330491 603035343 691194778 701062060 574166938 987801384 104259197 864573994 891609709 734667032 832537463 808675796 118693934 324193370 980543161 846446267 154748986 264150223 285373568 569862229 305837280 659600687 573221525 68949479 463359085 930880849 623675613 58732486 336226512 143381106 525315857 333960943 520798957 597276752 309928991 868481545 945049884 875294767 207045310 721557101 474734719 392786940 461492435 707992922 771424221 11963888 263077717 8971349 907500293 466034776 375696366 724900523 199834297 233932046 145961610 124480475 628107903 108688574 626401579 595569715 793457427 696704741 261937839 714934858 636470970 962799764 510118995 969117208 809128880 599820672 859396230 546041986 431628304 505104148 361131469 472297954 256384173 416732523 486237423 209364259 469221212 887285976 913183744 241607914 891273464 246586041 434341904 147285673 941029414 276538731 212562443 195579137 116167610 226511463 708730866 877619930 153393181 840362 189721997 703213547 633237134 57664399 425717058 536219243 119363640 104058110 807022578 686024474 374763308 625625931 214982296 626955185 57525369 986907747 604407620 417331282 783201199 896283364 145227034 105997230 402249864 49403719 946959167 140844220 24318178 544176891 132715467 764478569 8673517 524055108 967387006 143474161 475710431 800342238 989073683 653831100 778576993 937199414 940371909 921069684 27087555 3995884 987242656 575621250 976431197 848888006 999452058 767254742 703688685 137523102 626322035 563931281 689872678 630465263 213583847 518617677 142437317 101313114 471138827 103869556 853373047 717065119 298072482 301023112 807412717 916078488 248228869 784289676 452484425 290730314 598823069 274422023 824802166 295706307 299210752 939729032 585253392 978242435 162427611 692633395 189367208 501405991 861721647 974220892 550929832 125686202 558914543 131694067 196050323 103580283 701241797 922226347 252639676 839476581 41865207 77054207 32096594 380718826 378434965 324726137 989907442 615684542 957075459 626284825 658326497 893306218 807564924 752570203 370803256 880872091 852847562 466620062 326571590 249096508 386104598 585397909 490821026 83091867 561635778 911975436 821336893 369110625 956917772 770356872 603178382 824072598 719406804 459859596 735938167 193786933 319149285 960556482 322896596 995831225 344022619 785807525 727388229 370282077 24412819 445422374 564113101 411042795 49798174 999723929 780486270 131235550 180052401 574466468 750966430 784031235 177811941 372025579 215473344 535339488 103588358 935158002 583921595 983301562 746181442 995141158 213437444 749897755 372220042 996921093 683189449 87089320 474850017 43482000 513426728 910544711 849326801 548566207 277748710 681572213 421163475 622605403 644877035 927246889 800055048 813783435 442452950 215751809 65028421 498094208 144412598 741180299 241807604 632939770 618439920 792663314 683272191 184502911 528797417 315287363 862682480 394479012 154720990 781642688 206545093 416672193 35010406 843366838 877667415 738319402 827936451 865933495 26224167 131399118 675168216 238881340 213532720 921699293 880924122 681396626 499790172 885926279 158321402 557391709 491214775 773114609 673843201 172132922 617111350 902650399 124932970 27084306 922106991 81280504 458133832 307706624 833330697 647163493 901981911 641768073 610242171 588509887 878353981 193608830 432385776 843647878 232266974 409133663 565257311 192528261 516036169 791753671 501135155 195328046 158477294 233368184 281898125 908926360 975813482 577486743 811776284 618025315 499406852 24727196 551954149 556136577 431860901 908765011 349931766 977442371 920157874 278911038 258337794 141647693 847919209 70577280 360626061 96340307 766707608 803044649 692722851 190748870 994902347 176793495 271012475 3449561 138593871 317643891 106781208 345610840 121310409 989670422 317181114 486422651 561056234 777479834 276798059 848106001 916531311 526435203 49497414 777873439 746558157 456632994 392791581 57690775 355531127 936582969 621080212 637958206 624872220 100176752 360670085 670469259 434565442 891205928 322100974 275435734 523679138 2193492 449043732 544786041 493770150 933522994 373746219 857575088 675631658 276043953 872154472 869687902 840694570 456186121 926303240 956190076 186667154 646288140 459574977 536311451 232561445 433066222 174319611 293492325 402717246 810543417 446098770 876608231 526607027 160377812 358485820 717705662 194580109 426003208 337338393 503816086 601154865 964594422 639456572 854175523 42036078 740198705 284411276 84137469 120605888 155508350 72552734 805333508 198163374 885633095 975214123 655435612 221807734 493559774 753089980 262255026 396274917 119163689 535094174 975886722 435450041 515610285 121598041 909704783 652482868 699670053 56743380 900673740 231010135 984853618 987399498 878141189 296261015 87719140 151107993 196867404 89328474 132204913 33000318 913709145 473769205 876172538 545272971 510076411 397114885 467997471 679645692 277066050 651018066 921508415 862338951 996304743 16627028 692715849 162145593 948524891 224499655 255064013 931816517 318046163 578293899 526543116 694843019 230128681 142476614 373281229 858298295 897296974 600059809 836496333 302220621 688116609 654873406 73917156 332494100 666484937 814251831 145613843 403310625 834144772 910909685 880648715 531432609 143695056 768997438 526154174 241180851 992529070 199497291 134721375 126269299 197534999 713456765 880737067 880862206 978858884 841902938 977715694 431133606 725541572 872921699 76944751 358728521 957890912 6052762 878445238 471888479 545253835 997873612 428097997 583149118 242105835 13791924 6086098 2965622 506958194 127610493 924089091 780048712 139429003 95658965 739740819 750282242 67410553 132445924 870409659 675137743 560555374 467090548 897037605 106406915 869596105 888682454 184250118 941266919 504330924 147265998 423690684 985212559 655270603 865244220 492385478 619290589 445229854 35923406 740426096 501975055 397640957 311207856 257982917 67224915 113369399 427268883 162879621 252549554 418423468 904091635 474744728 155987239 733767869 676343327 724680831 97121825 558185294 840508480 578082709 642021089 244995919 433890392 658038814 941782324 526173291 158633584 731410059 670553559 232149674 114992000 127311737 852025676 693044665 930979637 750193144 354596271 671453075 615113691 455525928 447587328 500983515 418206248 92696304 245137974 808430405 601025964 609136237 222570426 840220799 403611821 416292663 916642749 25776133 219140399 642471211 221219028 6206883 514076133 286300737 259862786 57381651 968291571 901201093 709845607 547076342 812040606 277946012 295905835 415021291 961124361 454559104 904046891 564548680 993711924 772912593 758172508 489031468 187898021 478696010 12548908 37273550 615431929 694609508 215300972 361213187 212422801 452408826 303491873 396648723 837502413 84693460 53875053 668879217 536047748 521798090 191274782 522748396 523602158 273170805 901605490 661482429 411170700 951350555 578307234 394140661 964099939 291556782 577803100 718531268 544536242 27480767 873798178 57218757 722184490 928209279 4922546 606268279 534993560 466803709 320246623 91470571 500725357 320713833 434478353 339588362 515040712 7036711 323029366 774951378 460999286 368771549 929751873 512921912 793821631 631336490 409924464 104929176 579471735 147855168 538690885 249400214 692908548 52714576 765404000 271504329 43366733 459601179 823046070 923058616 56085879 632385601 69592401 498243487 168622641 412176363 860301933 568535156 498393063 357253088 480894594 728341062 373830208 942849872 159677761 319102485 704269321 559658634 895636770 732808867 487292275 324514675 4761757 413376069 114793549 396419131 608682556 705182772 303855032 451003579 974620441 926262841 309389778 24521649 947860554 317108503 184964423 456418531 290687716 827119055 874862148 105738898 513380168 185774267 298387631 806355861 682090114 41459651 559667241 219531577 273807680 160293794 905220734 265701085 524297265 272559928 158208794 899050290 931957833 32785563 190489904 615330963 647609896 768977688 860316510 922204418 197691719 781344397 852664344 50299404 197527232 637519825 378654720 927829103 15575505 682013258 23215814 905430670 614458892 750350057 88328415 457959256 250397851 396168476 29199718 980706476 117524696 62400051 998091212 949058223 333644450 59783578 248329948 315171687 734880059 261916941 180277789 82398022 629850056 13401864 97701285 209504717 908270045 861701998 809517627 889853907 443590432 146917563 565944230 968975699 401127239 547881579 166735550 330768690 797494729 132094386 393467687 349477167 382450708 228024887 767096798 728324711 21810939 486237606 878072015 451075935 505746025 426755757 352827537 487534350 247594403 984366739 83320015 893087229 335038892 783047306 192200580 491814727 94609625 997275273 811550918 413831533 22847514 677276178 437460964 978940214 643112807 622050038 614562104 636890924 729712635 225168515 539522999 663782320 99499203 45793915 391149251 396384228 84944609 616796063 678172321 623034733 375881538 257795869 576453140 567704350 360412394 200946402 787324281 527891129 37978734 989754795 632360125 291503857 711926618 789316144 29546951 962820518 647712575 638822876 343655924 506546135 882564729 425940701 489635244 683517293 146233731 946916360 200234599 593029140 905503911 879129202 745454512 804044207 206973821 69920390 187923176 366693795 786543019 573938045 534586574 25801144 171498262 894773192 196396904 292576820 922239882 73784393 553499570 877797089 842879781 434774290 710380004 888791777 513883879 433358812 284799022 289254782 562459626 66400188 225022912 297711210 736081524 383200012 839775753 365035329 130312783 232454675 994072484 927802442 572753404 482181364 747046090 558775940 118743987 876519671 664668365 768637344 108615148 475424751 199738362 835299025 65338868 630276072 450210141 99634220 246095114 361568333 268690885 412499213 37756903 264150912 802761623 738276567 714838190 93757060 77837825 453816556 553230197 400877334 239118561 978938356 63910395 66077382 633779297 997769700 529216229 641829040 499555753 309881828 727193200 526335081 528880333 316121238 982284526 774831507 121397540 527810919 971796338 89437559 319481452 867447537 536644984 325131702 293873681 657720073 625037489 325796205 979913608 961157951 880746007 866708094 648307895 636933800 870888409 687404028 861846911 659746892 120561070 20140691 466165731 457875706 606180778 325801422 631350210 169141579 412510299 797131580 485386327 431997959 419022834 644270367 11314161 500854367 44266481 769511265 918448561 477095650 539238455 310256671 617970802 300495280 533849600 619820006 813383190 302088378 203386825 245300642 867064495 436675442 201375018 79995291 796868964 654709179 279144032 907889585 85859272 624776595 821456984 24864348 2423866 962696716 770726525 486806921 912695805 382403479 392263958 308876048 901009160 542240192 142168255 349632344 819784591 881906589 610829528 713434238 925354330 655196285 26143336 578330515 487731411 20778481 399610155 409166436 786515499 394363447 564616216 336059129 854995321 485010710 751702605 875977900 618769045 293058962 407829348 562844678 153805920 808082940 555392559 562796923 68057264 481446809 806097274 756610934 282644386 519166879 420153355 748609140 189534944 440904471 994916383 171221471 37098669 579593955 511849421 336351812 287774564 91176308 185483537 19203120 557191650 144660622 602592080 531167493 629343695 627726181 881661549 349939880 68288497 455983657 682067764 447192579 921594959 935333565 857540003 540996464 237312472 709731357 904531194 288732283 437132384 243491556 115359669 671469345 113727315 885977425 530945682 169524813 261046689 222612328 333600359 979325350 876571454 862439763 89364354 73341479 964907581 98117541 846663579 763566781 565596486 903281820 228410693 385910795 642047150 381998641 334620848 32158962 581904384 903012858 679683630 856544743 562690815 89630894 867887505 523443247 472367505 882219598 655020166 200865867 387355190 291451321 440071656 141853159 885492875 656969612 451448869 132018110 322199013 718378149 220025663 852574261 363495722 897127433 546001545 707863929 266374493 563415090 633291626 152572532 937047397 533186065 898655807 342256553 320285237 687216014 73003759 866066198 897746988 230944249 852788225 17866762 456745162 895767848 818307449 176046459 940831840 876519467 1371973 51078115 262552077 421836695 846649769 626046829 713388460 899312819 37490963 967438862 684554694 919474326 269563936 710473521 79791465 231690390 442052297 977901444 559042807 452447407 659492868 355822162 738476306 768499526 951913576 319634233 162140706 174072132 154110339 398016998 297781144 600907529 248374006 284621170 15345182 756729514 297793199 241224562 953170379 92453301 972752621 955269744 285415005 607380303 92622985 753140370 486547159 426637942 914753676 136903777 450179969 656097364 813887068 784159518 189049150 653978886 989207894 274564673 979127275 32761467 123542983 326199799 891832386 856100198 984621385 418003001 768367502 4130917 773477347 303420972 868376715 783769463 107616999 720038180 437821014 101926920 855074418 787119519 968529162 122018074 46133019 561240905 399549772 78052443 115394608 842551030 116973751 296143658 965844168 738212995 980388235 489912465 141314436 77765544 353977258 946573180 876690475 377355709 985493200 431041650 458348093 357765577 993109208 758345268 292965821 314411250 959227232 999262552 784122729 239135787 487183051 528118872 472004598 24219947 258106874 427791623 759816560 548482487 296703855 751697770 362716724 696521093 948951532 835507085 98604217 162365627 654345039 620048761 532732499 176041811 86015098 963979860 348991760 946411264 853455647 677654229 440329269 767084503 38155163 434662572 263324229 123244320 94248336 594415370 560957473 854095543 769959644 424927111 729927249 433816864 217746254 648748041 563492202 283736823 236859252 967074358 695266410 528952388 352046749 157503042 743164460 6262910 238823437 278760200 470428648 516654625 982651651 582018157 611970418 894894889 766245657 258285436 210560478 442642100 809012835 182831780 239661650 478375505 696744910 69180028 124884188 691908065 251586927 633059467 252468354 538558789 481849777 678208076 517139583 453246350 324363129 458196093 216648339 412419584 658377990 30056044 765964869 313446045 118665127 239807771 431561678 324291622 442112848 979659960 20129365 580218997 949080053 589559207 997164775 652086179 996956822 953495428 719162292 466293543 759157492 917012142 215373130 644013890 612383583 950836912 119427929 112934129 847896603 602218761 283021805 883643660 298448014 730885727 152597536 209430882 872749932 264756562 375680620 877203484 123757547 458183236 67884546 583113116 428689781 684540903 556132086 521270679 240167865 929100094 299531526 134219189 454608481 206185880 769275602 422654785 724964148 148767633 131733638 622979743 127159043 158833090 939240398 984200489 651813402 146880449 611516676 880505368 774602061 156089690 202227784 800763460 1575030 135583359 540932068 523425262 259111020 176925074 338526760 294578684 676022386 875291867 291412858 27630553 762178195 910230069 735689660 81715765 497001285 519407449 330760247 106395186 754004600 162829118 306510689 174196066 672277576 784363456 588890922 130549873 103935584 417094492 266716076 256552888 902556279 788758301 454143819 750376352 514592988 285841719 965968147 838296062 758907670 560866636 536773157 551141060 787196597 723573504 100691088 483678599 593629364 808351208 139402384 87044314 524517793 505456918 834470761 945460011 561159330 143716653 436068067 441958694 489193064 832833885 426298611 189423459 742864440 264780603 385048346 221499195 423694383 403041124 332804981 863427673 167644811 53448745 389192133 58606581 117291370 902194722 812852185 866303485 419088151 728279602 453199576 562759904 436575284 59215400 974701584 644730204 886030844 204478221 513480697 843824667 151180254 783065844 708141543 291863137 668509776 149400447 514043798 430140033 183305 298471574 161642340 619873067 513415481 809095520 28337315 20017959 808889994 592813006 351698082 529378434 144197763 487975726 804533372 18284442 845269059 765666738 857573913 495505199 948889473 248268245 811388662 771251740 642822358 724836652 237531903 287588388 413154587 480328554 834625676 659633147 153867602 493719451 305393087 173856740 456612263 252707024 190892149 709858824 447405443 929337375 386460953 547975206 545129746 717247563 640219966 964444750 52695781 679577193 144295705 882539779 547271716 389868282 300592111 868589368 597022342 234989928 181590350 226330331 155746417 640430613 244607454 91108233 572436560 976318877 572631055 124007146 141154772 855002419 985488128 331995667 89031169 588680714 522548183 637274858 844000682 417735506 401331496 90288896 371544368 142659339 783582594 652680254 57921572 168887446 518185411 994718892 970500855 717854403 825929519 588013181 916102405 404385255 451025590 27869705 890801179 289156827 963739567 354894846 39506929 594657919 39895278 573521611 118305655 639843769 858480805 166723017 584392594 955968547 359320503 89676458 610001777 583344929 886529392 174624055 453028809 565319570 726936897 998852967 570575302 562923867 316256604 475224521 597891223 262791208 597981648 400272737 229484083 743396768 45622824 633158725 399258672 885037481 745323450 513055362 297847616 514986830 430500310 846417692 32323320 921221767 955826131 228047403 152352743 780502546 119926607 281139773 634367886 671959256 630592137 156092643 925778652 629792600 34753703 432924 981582842 285574215 908916287 693262443 289774632 124054845 907466970 800203601 234596592 527955170 849974194 281902473 750838348 371897291 335265417 788221434 867262511 9777086 623969544 553357244 958614044 761146264 954429962 972015972 238206576 787656071 476634794 563317472 466738139 613034691 847352114 164743633 998881482 437039174 543472917 332240355 667067578 317872683 274678415 876439984 222411634 109241530 289316096 104701126 131913120 972925496 299688060 354243059 66482276 955394262 216722530 30608674 369576807 691027342 767841231 190718417 529575031 699742887 89718766 19982305 36103306 154914144 791923922 945300763 511239143 58299850 190252450 991561707 273999063 101219642 362029189 160913909 925789791 325248234 125529666 49220584 356505913 836953887 294307678 890245868 999865538 138229139 455380894 833803533 311456866 157587590 54435151 581910975 975853862 866979881 71983878 699470768 886791030 459029943 878739947 404701887 383573748 492807719 603900786 827508988 838583615 19094053 24731443 423804723 100641503 104982936 547216044 195116774 382182427 508208779 79648530 535101893 32851066 741396895 367638608 641120531 941435077 271872748 690721832 783548045 454267957 689608982 225945613 670402372 831529152 184885099 428048396 956247146 793302222 956979651 180749259 489548623 45335550 943891935 790611893 55933523 772182295 718346799 642207024 118992344 376639761 650896043 761266056 179877426 728308057 478850963 884911082 468503414 403544749 294499251 216174680 699216624 674482635 327055892 98205561 563974938 142789182 142255700 136162194 473184260 588079093 477604057 311366803 48828279 679248545 47383748 344560244 992085159 940670707 593636121 157363517 225998859 863132544 997202431 627393377 281945361 768593388 887281367 187306396 284184460 775781228 703367200 723935083 722118345 881137837 617923794 626956225 875522260 354350775 901474853 383035041 858599708 762649574 169798588 668243367 140818656 871718739 757010012 229451984 186271113 503480725 126119357 624878369 231244266 431324038 590685877 33693841 343402734 664517944 998688915 768400502 918835871 530640717 321521403 372682389 841215290 771006506 642846617 90816721 61757068 631875385 587618199 703047425 130885941 661714854 955176830 921179267 904078332 79679176 839304146 276296670 261791625 980125822 690190912 231039817 927157085 684178783 281550552 11216309 66944626 891390624 215505643 407092740 873028884 237666074 382306455 606331947 55738856 309801211 856056212 935759072 847667040 451401660 841593988 188226929 651947206 234821300 251768916 683284309 500028084 62654817 753368438 437639057 723924857 573293158 649247338 169126226 33786331 168857843 880197205 653651773 782703351 786038693 993016509 676499286 178117187 827230362 912505539 421229281 601603273 793827951 967063941 520822895 490110204 609926757 105304417 561271640 564458286 78680636 475095508 623654670 545326561 303835249 690157170 672421035 960936906 209761430 680555952 57157261 942633932 983385484 239152266 422268237 214118727 629266608 549251035 754046323 848215210 264336005 179170010 956512768 104623949 467093086 11976618 2517390 780054014 687771509 568288966 25310385 749087334 468909157 526320618 122337523 507433300 342054236 813078666 287144574 604695984 432979260 565255969 462304656 226109557 385554234 552092033 89092422 816372136 788206398 178474628 391633136 709832810 833990193 823217934 370498936 901373789 74192056 860683885 397387270 228839875 117435365 398307707 631498008 903128109 290314614 607375844 96689621 244100255 161755398 753112819 330693216 925842157 263599117 1107504 374734771 723276446 951620124 375047068 305765653 766630670 174120232 27666719 838839012 805251123 981833116 158427998 941061144 168937552 243123530 78811316 239708657 849876636 971086238 47129054 453416756 399581276 935630324 100584772 210281116 530607157 633018855 774893191 105696671 338295020 169113436 644154199 237534061 595846290 154735663 291825520 703969767 51375225 342059898 829091508 106073490 739066643 83134174 624328175 456751485 219629744 83399942 729781911 838970189 458798387 163137844 55075596 746589759 897556823 422066872 674362230 822942806 943295848 860813388 604235119 900216442 164852521 518592435 640421281 902280795 597834059 859977091 402298688 987402765 598633363 257232141 984286256 537446960 704106443 791987352 196714619 421595296 281723959 860141981 29749589 537293663 13173710 687325757 540886255 42206312 153036078 655752776 442358672 877647914 435775344 472235044 101914308 969090763 890463369 979643852 484677049 211103013 638878010 422948467 644067190 993021754 676108447 595497673 915115987 581449897 983976832 229459130 539017868 513593606 531735985 469212908 813107692 513589950 729738122 450778517 984046143 635072101 686737551 243166346 508093389 453711139 256934423 635533363 837966026 692133281 313640463 732477418 553444032 341130908 47250502 94309928 215079786 913006662 939977748 73158733 25710596 590127981 195762280 131365387 314544813 572316666 382556859 78296289 19025228 954999782 69909036 788087934 9351439 229061269 96829478 703626998 639855032 905516618 174567356 813260073 125155605 303909458 405769926 504096839 77449098 923356590 38471862 217943383 772209678 625388923 76843902 137941468 749997129 334776443 27308588 372635084 425378937 818444025 835053256 456311524 663010663 7752965 886816613 495548008 94790173 835543142 473789192 515602339 304450530 963681082 930390646 331773457 97013990 19415241 92898326 639208700 576830977 710402688 929468437 15700824 374098949 135874099 818203156 572289539 265930064 15482955 330465754 82230054 720086363 463588451 560797872 716264864 379779977 485971611 555713438 474271562 248753982 886372813 36319954 805079737 945928719 560405455 326177684 120879508 430521783 137426790 872013133 740559597 809848640 731169418 893691641 78923937 193843618 186881722 174019119 491740070 191454175 916718006 364180940 150455068 337831880 929095057 611665155 816387967 517422727 660904549 643133755 11223310 602043110 860062525 561395379 614548621 433651171 122321101 680692207 345941612 581181124 935904496 36690115 371481696 144193832 605366613 332477364 786049201 464961223 842020762 978997770 441825249 65429934 379027017 339754778 358917302 345313101 717145513 364651060 616172969 28898049 718995436 672432829 875165115 701934334 218975309 855480151 294726433 718462079 132209808 251836614 529633620 196292337 208056130 162621459 726754497 997136943 323752027 324596091 997853154 231664286 316055374 805876670 76208590 96721634 257363074 645872301 273978828 698894579 560627330 154082168 138063759 676765907 274737064 139594748 108566873 234303606 617524142 457846459 282513160 731920973 736640970 139163876 605416267 568948799 827563020 332948939 839107758 592711559 610996006 892568585 666289124 373631710 164447792 881114702 894406880 224150238 348397913 414421336 783585980 401045117 530622860 435970520 900871604 703585993 12672816 651315810 748022793 479285739 784580273 538200536 957168957 160839816 724523566 970637126 519277138 691920961 400089914 62429440 177268001 871401399 991619302 945727008 643193443 869611429 375698655 787598519 637679131 571917152 112245912 627130603 242768081 228498313 497973347 514627322 841115203 199302959 727313471 644496804 905900690 210287343 676229081 54606065 713278224 9381436 621573956 753709507 346736287 66389660 236279277 83939339 4539687 118007573 306011842 836557407 264645363 737830273 239222251 913842210 837100658 469431539 397007412 767010103 549216863 807227633 856058793 411375225 404524357 121518166 801418729 249022399 420335706 433743912 41492721 287957431 628740616 854529024 78975016 377704853 221712317 591556670 927110456 891215649 196412044 228867456 706945059 410819634 232143277 735397555 123509653 766564792 677631015 53608041 217897412 553471215 322069602 673856588 297363314 212465579 737680129 348137709 532501091 307817854 862978508 151694225 965875832 56915727 360093475 309112185 356663950 995973060 682568535 750916211 704731512 575272706 476983297 125938905 527636281 470470239 51294184 475716835 462194783 520784396 272807775 831452862 756459448 182949923 474016492 252344938 707923015 95272999 461062334 900129539 879732253 116383478 605701791 430292181 711003098 178648651 462620546 671657392 155287187 327128324 549441108 859329586 497721948 802573105 848595773 807412580 98179385 360148029 764211091 997387277 975601770 221075249 768130780 709997068 113426761 574414944 735188991 871517149 866598321 412833037 905414538 752001046 24195771 990303470 499407461 207707205 346044156 332670353 425405979 226603111 660084046 246484813 190965092 621283270 220799196 890974732 834367862 556652339 844925993 535840934 36273553 140515600 521464466 600464714 888197757 598373355 741281099 438240074 343080671 954391437 572464610 911269343 751621212 927789219 166179365 617367199 421079460 610293070 118760885 360266739 413210798 432313598 847207874 268599835 522592781 965185933 603739113 637405722 723543968 178440178 171694158 158153173 722605079 442819303 78212108 39983170 124573863 19847869 256240551 366162110 502372644 105678742 255992376 724980077 3838172 883468371 904514178 417372029 561915173 378333284 972060442 765521907 492816538 528692648 489704246 859958271 227568922 901926586 274450280 420765630 195179215 838018235 253581518 878022344 260870000 949207993 12131488 503672303 90265505 960241596 642072221 551387467 243432947 774915259 160636934 222266465 851245525 537598014 387397608 187011337 4176207 110082671 647663842 444832162 339885397 569099932 120448114 42293090 346307597 439566684 617631839 237508628 222998292 433889917 585454060 237941711 100807306 262647374 927743000 823512593 160465687 77795054 586785864 248695472 304297007 789115140 874559772 997895250 403351551 803684898 12951719 23644180 874057307 929214737 846853672 583562694 555374187 470987950 127991863 429305080 54555247 575690175 952589851 781653859 55986855 671302774 471850341 153769175 613169513 643136913 343802880 12599752 402884513 870855985 279754805 900456698 499416833 603004752 756651411 89447540 465711437 118743279 151161841 658409231 644481461 100817157 718464351 975754859 761926825 622153382 890042324 512868510 11307301 233858277 867674605 578796188 668697150 127029864 703323828 428784686 663416872 895806666 852407127 54390044 734970696 816227698 274099332 9835443 872008100 541067366 929644586 186938645 6403998 414237016 870310174 736989718 528713042 767539614 980992488 779204336 320860161 30317339 656865800 310225865 30619010 958687337 531295183 906966484 478301896 914823305 702624171 874663739 162694963 688751662 75260488 796603426 581484411 233866808 624529472 356907126 92310255 192802485 274709065 829847279 380876607 671070852 367134081 301235015 728074729 138758548 664212188 628970770 324449212 214226117 291198047 265596174 979097938 660714324 456906672 480168740 666073789 295877802 141487361 579682811 716131757 74073208 735556472 777447857 265663024 820279547 47006156 115291306 654005274 442511666 795155770 314398671 712706553 361250289 731496422 651173225 143270273 420889163 146787694 344914636 344660480 167293291 249422723 599247119 64261543 489181890 27041412 707550340 741616706 422823098 435601058 136229842 851801417 569511963 957357523 629910854 228892766 665306931 31869882 152986960 227764899 160054024 899303409 632998502 881468678 599837405 798832732 730498413 930854516 48307315 860798195 118168012 851536642 424823370 804624543 215565608 768734724 655644782 79000344 257345601 998868134 724423159 659615910 4392099 88554218 869122029 104408610 812677481 47675029 197255767 756046293 855080658 605746706 93299484 603891771 495023365 250372974 283760146 78895511 923923924 831314253 796700202 966725385 69818551 66778759 992035673 556670461 520099667 781498062 772894698 242954095 610346740 842188140 366148693 196247255 983818361 645780567 344549118 41383565 108069669 933831825 352446840 859300034 210086088 196313637 658720575 386957737 241854614 755686845 644874330 92455144 770491892 941920331 647032344 178748382 357666570 709614774 555989348 775541517 286106511 149768920 333618143 112212631 449562499 420435640 388668588 57445346 128660594 785723438 39747815 955744432 720593148 135321001 749370283 405351405 276114008 48405919 729079405 124130845 921110163 356580978 953154040 941972673 71408708 277002416 865362502 401677005 579942823 954600536 699661653 480260425 30281131 561234333 164627785 975625952 945203428 401724978 119590194 434180912 484940111 438044804 154683322 256974371 546591638 414392166 992555290 34926086 4714898 572454744 610840875 141031241 20871502 468807647 863543150 859259761 555472472 793174943 285669610 114695468 517636625 838436588 623224718 257246855 294813246 635788563 328079277 40938659 698658698 420951519 921374479 991812566 955302649 859245227 200979426 689868055 587864031 745550000 110635980 737190065 577996959 160316285 654428031 53419457 647346849 485793728 261418499 244931624 734583193 650765002 247729154 286740152 602524038 850460222 336223400 433606894 111360039 39555191 815031784 390457384 165772453 707927924 84770951 735829428 763183555 159472177 189546378 907109583 585887450 669913277 27139744 1327487 931499080 916981454 959490095 464889973 208431889 934226069 655208342 808117220 152572216 807344933 731476451 864387086 601811846 318431645 504876293 239751817 200456462 999641038 531006355 819640950 739369122 588908432 740745097 914613229 323296109 979062846 704901656 45439026 711807979 55549082 664551229 907827832 341346026 503691581 672085061 967613705 932128800 510225351 209293684 411132001 728549801 499576311 347878400 386594049 839320790 458823206 994816226 719739285 404717936 242579086 519448373 722937809 487420607 762108800 7652311 351792687 754071790 682890720 252388915 619186301 856246619 885252991 384286574 749911577 368258174 696979936 669961401 182434675 581133321 951931123 532400296 67286664 29235682 270927741 320994346 89779745 843779897 657903337 543450197 585874136 345641338 54952577 260450223 350251618 352074599 815087603 665406498 691805211 591760945 42317746 912142608 689243061 36836255 773223319 571433790 496067931 542306334 901861348 908793518 913884815 602503771 977309858 752031961 616922280 82870425 19772892 225006828 87866589 474003125 142709231 874519865 660472891 746455368 999058737 97641709 287480152 461712218 997164025 839065731 794171246 335979137 519383300 909449164 21186180 234785249 59684983 719317458 804950821 845297596 275857732 345650907 213676206 536473679 134288203 843652615 268066501 784199108 849848606 633061732 139107278 977584872 592374129 312042666 17625000 310419933 33554587 446751256 183755898 407232405 173927427 814530222 605873222 934258846 483831043 560963050 603445513 4124865 451538875 25658630 532321147 64535527 721507629 208922074 586978026 164072175 625581961 928392135 956475010 218418273 706834966 397605958 398507941 101099858 870132138 912513698 825359110 706803738 735699872 690931042 366443917 449151733 902703731 700678165 689380349 816183973 471492443 721729980 856272313 411562183 772818891 806875412 397951382 49751814 555214904 647810248 433029534 761456734 340841694 621993258 568479721 265926533 79679849 381290750 993825114 939469124 220445186 250234606 372610105 470934950 380170192 119493419 22306333 25754052 847717774 34065004 343934582 878033968 251855060 637558514 642001049 174800417 937279242 665392944 165763697 26253938 799604753 498900987 735858019 327322147 720123547 656942873 577177256 470258679 421740781 251037736 498112805 131505492 924144765 378151012 457740532 439759547 496612744 809250674 223157972 45911664 399282366 552362605 447006008 534759839 674571252 765898648 348498948 524081382 273593341 672440577 367426116 350669934 514154045 937791051 165725271 200038347 598775964 868352263 434958650 866285911 41038123 956303040 297917664 935350896 936314554 275246639 167489275 483996780 609559180 222760098 268845601 699326386 78362498 13600484 213817537 935230938 494572063 994310765 807467110 445259769 12109702 699754357 8192243 55093504 20795979 574284796 6653380 607935884 950923395 66103906 543878563 68630484 58556514 573658362 672994548 859229704 815763941 132874436 574821572 332840208 277618564 644110202 244038249 368633383 989955193 734438618 50756847 450701577 196665802 83250011 495874971 764542494 570830211 722916104 315603009 797782321 259853054 948304431 257377400 540235011 702175943 202889622 227173665 715037998 227759386 767674032 50978003 87321155 756805 735539009 659701183 621135145 226422123 284030391 766140700 185116761 116665307 345651510 989021022 808688591 178117623 269106453 359528690 406196078 305825485 321633973 534519711 158370932 945387767 734502979 596937902 594580959 869429761 887623823 119229305 706987297 609810735 364077134 411686155 797347947 834291421 463417927 202180422 177099728 531017486 158257666 14332016 454333635 561799250 201670992 357721554 352924143 216659017 225193265 197314627 121447368 328411368 117692918 421573550 693956557 26321717 982648755 984941799 13125650 681078723 633788856 997833587 585694392 205983083 801210487 235487524 710764336 833447839 761374932 763929788 971564501 655252298 871373229 209981549 855471241 156668925 710381599 689614028 341949982 22044313 84350868 941383849 626910373 614918346 17092573 15232991 803465255 461783026 172025832 620024757 659293628 479798083 810631273 959820424 898781038 970902183 544339200 693888283 844396379 828301865 553374556 592579624 439377825 731275935 472538051 361967569 13009053 271647578 79795804 110257144 529952169 795382773 100110385 97202251 2949585 174204709 269043282 208185897 96496741 899688480 895541516 190047407 776672412 366297935 813105566 568055739 588169488 546856838 548368179 68190146 681064120 792282465 132297147 735472490 437904639 907481180 251960291 122451631 883172045 327614140 697107811 850844380 845259434 472565505 665792831 861438597 415168560 931806142 22651355 639983427 607086785 501364529 350130338 265712724 656212530 72654679 156860201 376621876 714069807 833991747 541552593 536134665 833979555 240149768 689365449 646563577 378123373 285030279 471692639 223480600 114548869 789824977 90998057 111270674 407494073 600953739 775538920 814558076 654963043 142075317 610595552 498821975 39985625 744346628 973263462 167207780 817759999 897146319 722943112 284257857 473543111 676832601 113482688 287799457 486203117 174451678 351036517 835101678 574056075 475083389 213648542 17869722 626268301 995829524 20379803 44181944 48693384 103773262 703379871 82408299 422283404 983796147 993556127 634035840 8399972 789320974 625854937 32996718 35842576 189160773 620881319 953095425 787910473 285353688 507095874 568906852 445183270 259857472 174988834 154723947 870653548 315754607 618012268 601768547 965410959 725128521 774232437 668402085 917066745 794523763 407765189 345541579 75261708 431469614 530588099 302558617 908838001 170017946 204451528 780573524 853236785 291260530 464015482 321766430 298580038 20035456 716853715 656534725 148239256 547732055 557308274 363054483 321109779 198197745 235903739 922368968 547333336 220188350 947069788 686358834 479796742 390027959 225599025 804430366 162429138 64821755 758916009 438519673 641048517 141783478 502747855 386068498 175564988 67618737 762607895 188610452 577018108 705709792 688390644 538855504 883720791 668655010 559053558 530559248 812287625 624936488 595944981 576513223 725630659 655378228 197746053 404979963 128277343 372070090 38839845 711274091 574528755 40939486 807001414 803111932 249404512 594423235 48733980 401391038 439287083 919375108 299570394 414584272 708218946 463528775 791277433 694772821 825009513 636964583 130339327 378510058 167125461 208416922 402944155 907597412 410074260 110044694 937317320 630938210 455136851 821047188 265395928 44752422 186617529 674530658 213873207 239283799 35796516 312975389 411445649 128238408 490118472 758913088 821496271 588898034 58304009 677999658 255596199 143128245 672544418 487666859 238844204 325522558 764282229 923910126 997380416 308355079 644113390 578825852 863776894 896824351 991600447 536875821 873307662 708505576 842062202 174387951 41150521 211882066 578971845 142828476 236888936 177930781 232620999 268035788 403393461 424633504 284475327 766503777 510307893 611631191 142595547 557024084 236661227 325154158 715968630 643919473 35067892 213388093 711716264 223309109 669464092 671543262 348514470 57894430 875549069 692151802 124838657 759667456 967739789 120822474 541343302 312468309 647061134 444884024 89287109 119666767 441008443 435046318 63751795 334151588 354810683 558286477 521172380 280607348 863563352 343927177 132146035 969132943 601114286 742888613 709319106 926450084 241111101 703716553 962828577 446009475 113892238 523482952 241816778 399269632 507156057 403937710 369016017 69065920 818609883 693510423 4476445 924739691 489438408 456058782 309599587 772879213 34079907 837961879 798239852 595899883 143283099 736460834 892288052 62989800 467253584 483437083 304976686 182178309 32124190 289366767 84175335 743025214 615887483 746789510 94107343 314953811 735005665 514050026 942071252 241952352 784412400 452225859 310108871 577090987 378814124 294702188 551102643 904774847 745502642 649890413 771721740 880527761 515413202 379666425 154830114 307551203 93182738 985180943 925100169 141392257 793312046 271329524 603838213 919345456 218126338 826860066 896109173 428606893 940624186 332465223 749777481 686821588 290649578 933025190 804712549 499164577 156382092 185586373 240126726 301632202 59437298 951867177 174950733 918107344 870277916 590246208 930634344 602893109 126497515 588938651 507596443 240953160 640676801 19919748 997348832 122841414 543027562 20603663 209131678 773480951 862502868 716132914 434853051 983229174 788044911 841870789 642952019 770939855 431111467 955358672 114534009 493506490 908777661 704297022 70688614 983093051 181151906 478187356 260754015 21746488 318368961 168077573 618174019 161183135 791833635 30866142 650103469 116787761 405719551 880625166 408642535 348615952 2561706 896850799 985276864 436915981 383428749 519197124 824385846 961374914 385716153 291575579 327538592 819636748 434463056 466300487 965930406 69038334 996585016 880320937 243276940 352604949 752616428 169766593 56031729 485115463 615065641 458650278 668777341 126388327 639923983 597982849 243135305 913908195 215197354 603113552 636171434 693926406 420606221 602757454 147501010 78097945 153369581 558042278 65634943 621237356 444995986 919661162 397001763 573419809 254269916 208272718 876385675 446115063 985901112 464902291 759839916 864117625 453775548 716270056 318251849 608488936 41533977 748350536 467373594 554571006 530391566 328245588 867367591 482293221 745836759 669993708 283255191 459447974 660044049 967154789 726325456 785676043 137695289 504121554 203768027 761724852 564695311 544446325 429369022 869296188 245339004 974169844 668796850 520348362 517189069 554640049 943361036 696570823 917982738 394844766 478609518 479536673 227772047 186853589 769933273 420653199 19651728 733694120 429014343 500516438 25366535 280125254 663912340 956748789 574922871 263647127 443254174 259901097 679815495 870928174 247562454 852971274 112278789 283575382 869938275 148974023 78933898 328266196 940190317 824573544 793227429 580435435 122968632 842560552 232383220 278223336 852162311 251414840 695567273 955585682 582943597 756351545 561210226 791752530 31170579 402744007 621774895 599097152 403811573 745555187 445790938 732344004 681917886 917587979 16902234 148287873 458786222 843319789 293369485 416167819 891323615 86142766 822824641 388278878 278115271 811750052 969047590 904937716 990090932 515487100 140950268 616093633 874666458 456480864 350438843 145979812 652101523 518101019 17046450 706460585 720958281 287584130 536046554 960560514 173224712 877746300 271889481 18556549 561973948 212147835 344625144 671163852 39507647 649782002 507647486 3303577 563178671 494607124 931975136 880240805 941430547 109961963 43027093 488941001 754176191 63321656 375115684 137651404 399059409 284185463 220103479 613568867 809614233 841295239 492619673 909661011 223041220 967986877 425301062 805031202 874651444 431011358 472046004 720187835 540719358 830481399 281359333 656120442 607561335 336024298 803255822 338130077 544188355 580455897 130560718 909678260 756778829 235648748 602508411 235144390 286889304 312291885 878848561 180668725 396988623 809574192 149710792 602215815 642784510 339072040 799568416 543675056 670514181 764553839 893235467 706624879 476360066 98956006 920421971 155423719 486230270 302666878 835011766 339066663 568349114 391724784 651729040 563858136 911306638 476227544 412549686 572861465 830502714 750323529 699409354 742308527 525914783 145808132 91039072 597814689 668048851 732486650 453757936 58299091 410987586 461776865 196740325 95518643 24346214 931737974 23650660 84259399 36295085 543082829 680115297 827734144 286672332 672121853 781914768 488774917 172626559 18766706 6821768 426649241 986337158 399761941 295495700 945091385 941727609 364519984 497383944 346615088 878409627 92688740 828107106 444986042 927616389 418728374 640086652 245962993 986037351 396938750 315383579 95487340 849167201 469470078 211870369 387817539 4397498 408255864 216709240 219542157 49553420 384874333 585235726 549996748 503534414 423683658 527714053 290684679 696947156 36114044 839032242 605488869 525360806 954931343 750256284 41643317 548420718 183595356 97621063 31494296 487495782 397625198 563138650 131814225 492245143 10039349 111260165 739774866 985148785 726454562 340426104 642143828 944667615 503733788 398965567 722742405 861057012 150240783 61028541 392508418 419052099 966553118 863168641 836036753 819067376 603761328 182159621 393584112 696390312 484869855 982269349 794533269 407036747 632726027 262439481 648732664 382959519 272287956 87978941 528812043 573569447 910810623 332642191 561894849 923882173 56738320 790349027 58608510 216277798 367788859 421596140 895551405 921109684 270455886 811818385 480268986 209693301 347483409 907355666 754877347 680237001 433903348 99588788 449111081 273439883 45596206 930662694 281380336 769376900 521527699 565470664 253646237 384648395 965120931 786143878 294657727 473271181 275558860 352343126 399672795 772816077 681615753 45526368 495690375 265765767 143850331 243716156 987640750 844515152 501833728 204326322 506604456 7612380 190116937 227784055 423863468 124173277 715933175 92753987 930855636 899544820 860140996 942039633 726711604 68386175 987133898 663148313 37350760 471156049 101575365 667734041 7290274 580516937 449539239 163520210 768246184 749163031 944936548 161408011 734723308 203383670 180916843 423843880 551562774 371259125 334212264 313213264 36044114 916376641 793094583 175835169 195513879 34634437 479311614 610903113 425245162 6582356 718097202 766011549 389191581 501794700 739863759 232735693 577158607 602279701 368882238 417986286 481494154 97937770 17868681 265647439 308855850 932816144 742722551 44998730 932254384 276164166 105644386 904598530 940411364 30933163 967031877 239179322 323518828 303601705 954846081 158576572 398303599 486805877 393780344 785009529 303340875 440556750 871504982 190102373 971152521 880662439 855789667 755106999 46452190 150320648 673572285 846652157 869366888 299085896 350982064 614323670 839254012 288128293 282517268 7295361 349475009 594023634 140527479 636723226 993064549 498540710 847215334 540295833 664964107 618492769 130564774 577537411 120267263 569525856 388996908 536081887 524168520 709886997 169996000 916108086 833078863 901002009 204712009 951330421 409530863 180918581 609479643 311127639 779174438 970198564 893664362 858061396 119534973 268814198 304949931 613339076 93134182 284878063 714548046 770192567 408638981 243519813 495477305 845412919 137137706 867791972 918694065 218274311 221874626 637763237 732679512 276850379 59715765 206623110 370300286 947438799 901672122 549756058 901610353 381087120 948282672 823906120 152149516 424956699 693952418 808394274 575888522 797927013 210839193 284537902 815898776 927407933 717174686 559547840 807876342 34332632 140384076 990003876 45286111 264595175 315416504 268989019 206272637 32764525 537853383 228403855 948584330 609759061 330751387 502128534 90540083 205055952 720267372 92750235 80015931 691885542 749110944 480373675 942787233 132643321 45527835 396383038 275699238 633041116 720990907 519150890 475913803 568998720 926434371 893819330 744564076 894336911 315916437 706958705 775716489 14898371 609849781 453911908 369424454 298755056 985134510 153325313 435781825 2176937 332628855 959559592 127994708 156299888 579884852 458858191 313741898 379959646 697682800 959782711 11650392 201218189 620861545 512941483 575041038 882707449 240422640 300220340 996520293 669425523 669383637 618485389 285637823 605867502 946495805 513224089 451960817 449619377 611842560 150339686 90494223 755451206 569961804 410841678 244867752 262510891 529267662 126107323 914303914 929983673 430780290 599462903 819770972 592117813 337503938 258636868 182121302 957081134 628451199 564327976 477336238 341041809 492824056 240694237 605484158 877155119 256009625 239408813 393489518 783197181 261311903 291719313 762987933 163673462 692806848 769748628 594132118 589074486 67352442 32065099 553867875 147350222 393282478 676393406 705216205 16998332 481678510 580304187 338183858 794971019 624160131 81646322 14057790 323257660 844221408 809883318 500191950 177864175 952300600 836414860 674571262 411883808 577053136 295809101 746048592 313554983 333929701 52277408 465873963 188216987 986847863 820286388 516012159 977637783 845719391 528283524 180081552 283200107 492344242 37183245 16086780 905537683 562639856 560308041 204912516 773632488 63927166 102658581 981265743 245581846 729079028 62834895 288568315 514612516 468891351 925857817 787252887 946768263 957608103 369557264 300647476 942149115 156369084 496419149 611845429 109684276 545291503 127126637 789281624 89557016 408579647 729619124 406363424 293079079 957582799 4947909 776000308 475950239 785220082 279983429 815539004 606337341 229382967 188235547 357150183 246225956 612100781 924318289 960851408 381985139 297673347 323474127 254364157 388818889 390484453 283479103 778111204 515329084 158469722 892382296 175522920 429915851 83094666 179908120 847229919 536172554 490657441 320816600 379159313 797074713 649456568 935073223 46443353 510124058 370571756 834975658 452699594 703485442 860995181 722154244 826586837 708355693 577634895 713988489 676194170 468946777 701511896 638984391 851884322 313656780 645507501 83196069 965362505 97133687 38439882 308010470 884128781 129277651 328941987 556023743 709969599 795395179 848225167 225800265 935156203 208572803 946907854 160939612 363782838 786858891 826154616 295109245 935501600 78163442 209853422 999631822 522624945 669327535 785089430 154954147 589216836 509315620 734443112 112859431 339651885 452337156 299673522 412279299 874378290 541203713 591126379 117671559 535117254 729076377 557539896 357749610 99633770 23002830 768746086 231291886 862830672 492138466 47672130 904030893 927312238 778342125 217424649 238766262 70834384 652255991 874012906 575707330 820152367 591161825 552807202 205904855 880703051 584838838 894970081 338219120 669283920 830052379 39852142 338939491 631882394 976415676 859545344 679281357 974112202 154215476 635442025 304454681 11182397 504953066 901601296 229336129 607884978 634313102 899357458 774575380 832120534 911948103 480088497 925560230 224070356 40906104 704014160 637306562 618412288 45285026 382961136 2342248 892417261 24770917 753375617 430447169 715480909 543029323 812914621 808881390 232145001 541634618 149617550 520024778 930206358 449251681 120214285 433613684 545106765 617555168 709549099 433992425 365567054 30012132 123544823 142201223 602560403 521663297 738227892 95460108 588610623 671310515 930927492 683057795 21550921 692650248 537471959 264096516 684172571 398396481 5103837 948866052 643001374 459964091 217202303 720721588 738396560 194324641 299143409 113998582 985984659 354385578 631354531 314030464 780698630 681415386 962174367 683738418 45895085 505043632 33282327 62359733 456563175 780119139 26876979 700660165 719974056 797780319 150870422 980927744 122398621 609900035 588526273 601188572 303089376 114227105 969175780 18471760 969914938 535564608 200871324 77505893 167328338 215860837 937414837 397390856 130241852 586774208 797405705 893618803 221245198 629445266 444467442 494666075 401579823 658407246 789859000 971657080 413725822 427225318 627954067 419757291 541888184 658505574 293488092 127847918 530960140 184681524 709668379 52480298 462774221 333420767 912578753 541125966 852103814 437546027 518263863 5853862 144220943 145137108 722389435 474329153 183464957 23505792 820456046 267573778 313998472 832151262 337528381 222665733 965918129 786759263 760048893 110637354 107561590 624895014 633891254 766215825 555110033 683493105 276089798 766459464 440546670 320871151 700013978 103569086 887076884 668286760 144928769 761128289 893291325 673646391 926499340 56447216 367155876 768834368 272799762 902393368 922632465 773196453 273477222 828228866 315802051 4907013 63162824 969180961 337564916 156531132 235072586 351399894 44236840 137023316 777624864 999966942 172099973 897070758 682542115 792949547 979710642 756469273 902126903 737461768 936968601 544922248 880355525 858416772 213871637 169579914 924512842 474639041 469017622 868447315 485997994 727400089 968645630 910230711 669548065 64017345 610299492 620146812 764549632 722011046 779244115 447290938 278535407 453093794 143984176 590426492 939279606 788610456 34423403 432131397 105362568 984462073 82514904 214247251 549893964 30678397 77762488 29508579 557090936 73988051 610779047 573114364 725295646 21168194 713202493 859706809 112924550 173421301 428032564 68457440 972366415 846307161 113348436 589526775 518274649 356032195 469758391 635581941 333810024 97387342 576834161 138799596 323738039 990466387 335472280 529299245 504752515 324733975 555085318 617425133 200020401 803940437 472708279 316202554 952196502 872504636 862869433 965548389 628753721 916895531 730097571 975291373 429044242 269648841 332228051 415756325 894837935 5086154 643583710 422578400 652630611 750631097 523034629 693265973 895131824 264985569 678206572 537227684 912431126 416945945 320070496 544902048 780568181 977246266 722399579 839126630 699230397 695242628 878099197 590620358 42465503 456535775 935748471 562382778 979194555 174703920 82769965 991000020 203570466 284205023 159004618 549557131 289596208 830150056 275134555 94165594 693602909 724122110 809052917 137551832 15474053 312738032 243570436 804747200 757502843 146476427 633877150 500256248 283611612 156686404 363260627 144072858 192793510 359125061 288988623 442912455 324218044 522445814 793781656 414822802 572003902 273219327 25870536 369636329 42189265 261811497 599599768 371829929 88051125 35368437 418859743 755352640 354095326 763590904 231097105 495262772 989946498 75165141 542448225 561614019 414955515 688288812 992872235 915315014 923399994 261492186 21631675 723985369 855760913 645042654 292743405 308705006 12533199 381066892 533528425 110693604 280100945 250885768 10725026 603016839 922715443 891567725 703588307 481357759 172168595 535526781 833211124 210882759 249959598 255991353 196812928 518232391 270815973 984924130 346465664 364553293 258693886 182837875 458278105 585990176 590938565 542365621 611394083 650144597 712496208 948746133 106089945 649490970 873388259 572093180 276990121 109568934 711398811 563582254 550135096 983536524 129805057 994693042 33278443 731515715 207823840 955525208 523768411 468569452 744567595 506728327 999538144 391426295 749441315 711010966 77555337 327612484 618520020 15965478 738840104 734029382 188877221 71601545 829704457 318403785 489432675 364505113 756894314 405122503 116608062 394132674 341464884 355722034 413411692 46691756 641620752 982190923 639180721 366909030 65999704 397546101 24778298 452934412 867648808 781173930 231678304 691988054 671218252 16212492 933695518 919919332 660885745 431363588 16756184 868248643 870688260 80605851 362936181 288231935 420212350 786307726 325949167 585876010 810278803 982641710 457544921 711203282 865060544 97368163 902548998 777116410 628051235 698077058 105085494 368686786 33891348 525501092 915100251 405312767 877980707 940778517 333663670 514870579 507422611 780385793 504977790 69174128 592504547 788330181 536393376 5354254 90160707 353971072 634103257 662258045 748446974 129381063 340409729 453882887 428081264 166312520 866270141 901465695 103421021 528951076 39264918 454531787 84535877 827970350 190603723 347958620 789457782 523277099 118564129 71788243 214245812 3698932 45847899 208120211 787406654 926655752 404896701 294850896 167589457 346123425 861425586 785016652 266290191 613943334 345371285 769091780 15337500 640463750 782814569 463421277 601492840 457919125 727965341 398685337 437908435 684527037 223974932 770618194 902524634 558065520 767435246 132529032 862020619 224028064 924793085 221413942 723795533 867959279 572518210 95257191 595830292 876812725 670423793 582924568 623267861 106720830 819596651 696422158 715879653 509865670 124410845 671878496 836027949 541451455 247237285 263640102 669976353 211054734 505479885 289705304 766904829 659452024 216249987 732759160 523518163 836984294 164841020 375332705 233004077 434874805 996845822 316982780 469510015 475440212 548600392 510180605 378176682 68295539 800818921 360372306 282050248 837657932 732262415 517544762 408341943 703378705 810826665 296278457 511634499 934196436 520393179 315539528 416714448 303688332 565829112 654711759 106715834 160054588 106744160 402490217 810842382 718151272 229630325 434018978 430653480 447370051 551709674 381190457 650937589 933512564 649009335 628281383 638389567 495784172 127701956 125871332 248187774 864156250 335018837 283765161 742487387 670982682 960257443 329880342 666354628 143225800 87682670 263134515 770877477 219936956 130469288 524959786 806715766 249623396 55431303 610173730 725851895 230628748 66052187 909548961 606576979 313312554 593691372 759743362 924691439 464413073 230149839 836637275 370877542 622188748 145970785 742690521 834578670 202336353 289076371 523724284 825827856 150683310 760716329 958025509 833381759 531850349 786358694 871643974 524133674 161780583 89449835 422885401 118708067 455801808 872154053 907116576 867963985 551939041 592225733 357705392 373121792 205450582 271351280 773611214 233503859 348376440 917339549 98063201 763508836 827690204 852010269 136817554 160744933 744473556 453246292 85598147 243199153 924790948 654821967 783276487 115177158 90368349 667978544 736751995 264661378 726222808 487559946 225434472 538006190 109577243 307043346 635377448 528315842 157201507 865196650 640001338 920981352 498972881 332190356 195092908 605970834 255387284 121336835 784748708 534714476 377941447 928731451 478649210 982464784 966920596 744249394 495154675 783291746 151499698 933544850 447661942 212129117 614902452 56198440 681495181 171088034 701947440 550422750 92523873 92463756 367963428 617446900 549865014 463580341 562137906 530994208 205240463 716582590 649181449 110061170 623064517 908567274 872189527 173880232 799564040 497594070 143694383 688915285 63060236 986682114 749525422 580144453 514414973 601759238 891989970 750751798 136314407 501974693 956805309 541313384 205441328 629936274 779066013 291865996 24874673 871508629 988403016 514351487 484421484 34497846 368171767 615538453 401511909 522245718 416885452 320472723 283288067 226516958 249236166 698030868 332132813 65830672 834453752 415058066 961849202 409244202 893579156 470187222 125317052 184688282 277234626 98488388 153524817 334353472 199805382 466501792 576566126 824452149 111709262 66153096 760418768 385312706 192289807 780991254 733535572 571751692 295903090 31315328 817214552 115319424 340424132 167880420 975834820 25816751 952439388 570190862 729347332 717702285 514283293 853806620 881190375 352549782 338105025 47973370 841974564 371070790 843443336 906544789 506320919 412476637 91464079 577700680 854538649 534643087 856336400 298022588 123745506 638344564 851822528 302938751 68131770 378748470 307574028 320419188 697924748 73468285 977415299 901525168 32064265 494084887 874756407 707375504 40170504 469648321 1626274 163788906 205037063 909971130 394029187 956529579 833692079 205444143 642839153 795296923 163331287 299716768 644483667 11039420 741746544 650013740 967132025 776716004 560862965 82343316 541810322 495024446 884492190 580559151 758719463 998232716 793507143 717420539 738094265 255420354 389956499 522158846 840574965 107703920 889652388 524088628 842742322 69335711 205802136 973774596 800934226 675053675 626998820 505720883 164953830 116414252 951432130 296362253 75748158 770791164 750170153 471566575 756206416 188420925 487507524 766490723 449045865 544961475 972447794 473090663 288282513 222988950 542051827 845193581 683055595 27783123 48397171 91040232 515836768 510804338 865561772 583443775 447215025 952735820 592692468 923690782 304535813 763428026 994839029 266139544 833280025 44872489 311570700 767543314 894535006 855490571 714447496 652794556 586855542 875046776 868595395 423535921 51738746 474557421 269729759 52791150 118848541 733841212 834900746 145340677 357334111 649884225 382923162 499870241 939243014 564553746 309663811 321902954 188742996 584235953 745679129 145560339 349761297 806579454 261169669 733815606 343712203 526928465 840329245 977857877 82181722 95309284 848651711 456269219 211191125 199278519 937660959 34564352 282259793 444938457 187729389 348777617 959192037 436073488 622638025 143345459 496134966 619952165 907541661 395728949 662342943 581211446 800217601 353366876 167153900 230436859 574957618 270114030 119340168 265524657 895389210 630433017 209625961 905206578 507271325 53589342 848043053 804274540 809404563 550250741 13649513 59050658 733552190 700001431 778111059 158649717 449891208 303433597 580549517 372921653 248787311 264719089 233841710 565102511 78029354 780778763 639035347 628310905 34889550 645843325 955821705 14745131 299991683 998806368 556429143 871274914 64749600 878222437 525137631 671737203 596844125 91024968 602241628 443150498 259288900 678072263 872996986 438078829 52701077 345681690 54629385 172133740 451916782 894885950 534577475 653364277 428326560 685891980 303203294 663202865 199589810 544466027 222511334 465834239 140101378 357801678 885986976 149029771 253648242 564748661 118139072 456257580 78260673 429188939 992620739 134493641 830985570 204231849 350383297 986037999 193797819 152346646 702379307 885173257 547708048 651431777 400880392 943291476 996056806 461340339 309504675 177207471 757460836 507584289 739542074 230665561 839862175 710287533 766109689 175806418 543508376 701283043 156126318 61733484 146892762 255256949 391673296 292887632 361573806 876554098 224540635 190180867 499664974 80143321 13463697 964962137 924317836 688906195 75006207 793165254 246841251 705541465 297685567 4636023 985130995 871101017 725590427 903438422 633469381 462209573 901067033 468390720 128761473 511081277 300966903 184620274 937383624 610611495 836798208 147918962 979074602 880699018 519904383 57979153 651167858 346420369 234593253 909402059 759452834 140089791 426315820 47667616 934702279 411046 847464508 959738215 158216499 838021341 339843365 778272963 638285653 278315552 997545917 267016559 653155717 939049156 932168126 44029932 697790370 835131690 470537402 756648062 538849983 626603537 98870783 850901457 992486034 288915011 382536052 575458653 275660451 422016802 371652228 764279239 530316628 84963623 245412201 375099986 74472475 152650016 379820772 219880759 36618411 308423268 932598397 263226009 124538143 412302415 294916776 485844904 54864916 800230354 24628685 654977108 861311522 396018785 920537277 44234237 266737846 827532127 918687120 681264289 190240924 548689217 815445408 36683171 51597412 912022008 491519432 130026428 557675429 513573042 707817878 170666318 210125003 116686987 770364687 453413002 664605435 272283273 993168870 725650969 962287347 846080631 433900561 299030706 418664295 125422731 933469857 185737873 437526802 100207379 277212810 870526037 332263968 353388418 445810398 232022731 894920720 36043989 809857455 532040950 961422233 819132691 89137678 251821229 672798409 430205030 363788417 144975318 887018814 281334471 178147292 31890637 437770264 172474983 502059609 916967099 941426973 280880040 478360412 49520071 972090248 126338168 282029511 924793881 550452276 328337515 720260616 965201432 150680272 24415726 553441152 361180977 555574699 934265384 514287140 136456763 630735495 738299070 469191788 258471166 151994173 786616400 122416182 261345276 536939449 154609920 373976541 177575129 62514595 419059752 925189879 77570057 34672255 760025261 578776195 838381913 620128700 655024677 644230487 420149105 409980174 130867008 293985097 920189120 778326101 849923247 272180251 383071292 328542413 844991918 53733364 779236170 432060904 917158586 86157097 369611394 318869229 205079337 200468861 824053377 535144229 692185115 7320013 525913524 668977771 619329739 19089429 253570283 682268141 676963921 725974356 370236601 295292404 799819498 389962493 923042522 602385512 91098900 424543297 356492096 964712985 254782540 428808790 617089953 278301070 875347926 879416808 286033895 906424099 477902224 499247403 502057052 524047796 895530685 975013699 592365047 843029166 757774197 380416827 218401942 272409669 410728821 990603613 85768372 921265292 722388259 492464038 489612278 526973704 627710400 619738210 192665123 814866967 969921911 420036245 250981612 985771805 803407364 259870959 941044986 900790860 788649664 239208695 651927797 359137751 56345227 534198796 250816438 872801046 82462450 189618258 928495141 75176175 717793681 136949537 259767260 980147405 570569993 727657293 304904907 451990245 863763378 188191365 331141505 975295304 541763490 995376066 548264931 621510100 161061984 222768650 86890943 204820570 926898587 7007741 729471482 684642691 523583090 503147127 485675465 695645076 818562465 858041097 455568583 874170931 278816138 205132577 933249353 936396073 720885359 870124693 349047632 351664811 721249242 762275654 550667721 794490295 985150179 404231051 566612891 106083422 236152701 681751991 399521452 616347134 808796262 506350094 32283881 176512573 901242288 824993858 178678978 732298641 891995224 749098815 643108199 195276072 637425269 299409340 342275568 515173414 409302593 625180736 984333581 803332821 571014243 284414424 650017252 510777223 907455531 31911730 528995894 492518240 885085036 710905334 493322758 827242024 100211172 309309674 297571083 123342400 996934878 161358478 859318617 2780682 992506686 735955205 377157052 493361620 765596255 82193211 242567409 268497243 641224453 633329347 71297353 211109881 122586971 813441758 190279572 245177832 576211211 929544724 368863994 72272244 650539577 8360833 723311981 682678317 754315421 867002114 823506189 832340690 352615919 886061702 859830756 918998893 555512322 525002750 37666296 161754576 149103055 281499975 84120568 528728862 38596595 50441663 743068353 765413850 445280635 56335351 7380156 274576072 904270876 946413259 797904677 2810216 378368909 36148755 321846511 164800889 629420292 961787008 684230966 332103197 174602070 896351992 175827245 888960673 768440551 634247547 33036742 421230386 371341903 402994746 843410604 387187648 248444365 718730376 683707570 853513289 36057642 392248450 976696962 456790396 543178785 54274540 817197424 557868566 816399912 959714132 522608359 734106835 713219331 254084261 763182904 352345336 740676503 91112799 943983581 906791365 688004496 277075578 482643743 325027377 801786350 442935928 942552663 909569031 293391951 480787730 566393443 295224445 730510076 22524939 9649799 926405050 201143612 549346110 282338578 559310111 53236758 163715754 669591969 516831215 432909336 201599750 745097740 975919725 253666882 149281407 319591137 927874543 415046061 223348621 963979445 658779861 919095783 6990632 867347959 261334600 403323614 229863651 751400094 252513060 689661846 377668732 855743677 522420876 33019038 924367522 359276080 777507876 790751757 201707733 907299941 985774665 610441443 125181151 495237407 813744973 318599058 798954643 251400945 246266458 52455067 494311695 698800680 875663083 185967601 483553156 27410155 19022213 269107689 575267791 389470215 311372119 619290030 35016855 655376326 673977740 322296075 110273036 236581732 172135600 410777014 353677841 138825866 201593613 134014042 765704033 247090664 992377416 869030610 31960761 325878340 880381222 968463697 789668766 284641885 490124688 851824364 928721264 175781883 526235009 985282414 745861900 506417298 472425894 77093937 827309613 574929924 681154501 405581213 152179260 468847239 525582726 238752199 719983764 91733234 222352179 195940718 624208551 777085798 458825274 322001622 105681382 469659426 147054913 2230164 200195498 28980670 969024660 617992073 340160797 176245268 37764163 908706611 416889441 644153843 453319399 614713178 972158310 348658130 947023997 151560869 480567054 52144408 10116459 120454687 199627604 994523930 134667413 966463007 721948177 627341515 593393605 521396199 246166526 985149753 178968392 318491517 416581686 265021401 314108473 803788831 928800816 828052582 396392887 325563209 303441731 870532303 595249987 951259195 971109767 435186034 179809183 429793333 687857569 23113840 977232427 33871897 173351080 559556398 951594319 701037684 4012304 38220910 398113516 320047601 964778922 644539409 440396631 349584717 648243716 854363455 55578766 574297040 282691264 610429922 620758461 785284154 271828765 601117507 969750748 427729051 711679401 977828079 195666428 912132402 890665137 587970299 395037727 371105837 128208582 548304841 647980841 251413244 576215694 814761463 334318003 264432443 43824966 13693113 593725754 428907201 364737868 781192434 173301824 917442977 78050074 158834967 216433849 406386272 717941032 428047802 7356589 264658854 548184657 463874074 218060 290046697 938196459 519244364 112862655 345833859 376396130 499722509 179232068 93138066 610577314 711685088 19756092 187215727 414428467 604247831 673615210 202367965 458446837 711788670 504505964 727745203 245807241 854614171 894936650 842638917 637098461 373313257 788535190 965635042 43797777 16766082 856572187 81289977 282176221 959873897 105805779 783344752 533631767 441699413 430936306 227274218 947117352 559698323 466950966 204584591 589640809 416930560 856289810 343835812 169247950 74771505 949825494 592009055 740773115 481960564 129878452 848403096 574868843 744046102 880126951 195650394 137526814 423677029 723856085 22410054 974753765 747588003 504545972 485911411 61296417 687218893 56238466 223085701 791061066 703411460 325286068 514806527 716186494 351910170 786114463 516923945 755961757 783641607 234528728 720486111 555980273 632026266 120498655 672447654 463307689 528494071 499841416 475676399 469816355 483560507 791878327 279501879 320341094 596326774 446461135 186465154 302929211 683493784 154123925 892779656 744615404 280355785 701890608 978621953 928652918 6185421 418976158 270638692 524909157 420397405 693540935 300081219 508700230 684979577 519440672 883984748 49095135 319935879 598489366 697298170 262136723 893593212 985588231 266171452 587394667 417762235 571531797 275895422 667621839 938036633 306644442 226544732 144813725 866775381 221534360 994447775 896573370 746015910 694136437 373133635 348800567 200349615 233673299 477572935 42195086 232852344 632704963 472213975 721296773 221207019 94081705 256996808 394167325 756626986 327517467 936784441 836978103 183788211 917460983 838907491 830380439 354850402 969097191 100163083 567935139 481489164 597789119 113124032 324058762 240220794 602456627 93249853 164560994 136506616 622799509 116720560 407018925 777183825 410387017 721082885 168089285 589159838 874170334 949601068 14213163 724469509 778400736 476502138 116702975 946393147 855939708 636897342 399173311 421475762 845281782 478087211 416029180 337058141 20786901 467013867 339698048 373087045 887752441 783919273 203176343 344221784 446559455 596143965 679614729 228753586 105250009 394797591 104082329 487285638 622390887 782399477 640725112 480670616 647802068 26560230 789511255 528700818 266641306 536732141 692420943 249920606 298269313 324846448 787930697 665376545 490892265 422353110 676093602 569701053 237799597 250874935 633388478 351268479 11346833 515044285 549468059 820937652 224156759 327950253 131759866 71515927 415490730 119875644 655689941 707363450 720598703 177303176 586451344 403737519 405331557 319123334 45143190 8807923 683934110 584634310 998047090 439620283 998700125 564634240 652862167 372612579 742746462 509179686 572917693 438252043 178387720 712226068 506197847 46418460 779344990 510007130 669500378 748832758 259275383 37584438 662982880 551455834 478005464 310145185 977750338 934095916 720366567 379525154 688819965 319031503 346936527 835063066 989963945 423518442 797420083 586346414 280087945 367236480 840186823 189321487 651633928 790373746 67775368 223539362 695951691 721521643 946432433 408019645 233532635 346383869 189623978 278317556 354608487 226388854 121583848 42435900 567248983 306625826 993114545 762366837 609280397 792949318 407574586 899183207 921971352 637214581 522010836 685834640 540291617 242742295 354041247 345967095 119962054 803114469 419169993 706456330 597605731 332840455 876704588 175761857 929253045 579047004 710168385 897532130 848076642 367187237 857635151 365935728 558080747 966195176 31655481 290443551 666982146 281511347 443255409 475238264 486759331 721051471 883423598 436084272 876548012 371918787 513839622 314610780 572164357 730204670 178625629 944520734 140449732 525231801 72532474 593872208 173847460 623933944 243133438 978429389 115241925 408405219 399595934 442510647 643718422 29173087 646995594 815434140 682712607 523554654 681538402 950663954 949923240 792730069 222614084 299069774 739653745 860695841 109392032 68913137 436310605 259375075 600432498 558237369 196082415 75208222 89847902 623393450 181974259 185170937 974538288 923897623 259443598 736075576 145689027 239244868 338217300 961000357 983152175 424556129 754999220 175015916 547559937 398696799 237671941 205999713 467001794 725539678 776807743 923515794 337276599 899027873 628963954 197477694 177335834 583939429 469228193 766749009 81099892 239744540 733362433 699518254 661895636 863565057 283964955 80291026 94474363 43340632 987032129 508958308 871671321 812013706 520771061 671960285 359014241 741445935 48970566 881441115 167171336 112503036 379185188 860775194 970365369 820816179 923009102 750590361 941722077 715524944 434879067 489248011 211454740 332125771 425712038 136117070 148972433 888238482 84504141 674461311 344326412 213939192 874540644 222667744 12007812 518044576 732916947 505279401 718993627 802756945 341283300 999957228 687179509 630317515 380596587 13588803 179118443 667007548 996866520 280641401 452660381 658917285 932867202 406202409 431454178 407189150 942363789 932179937 212682545 189131494 967625890 482718943 498014660 720053605 995002154 128741190 874099901 210928258 527355796 715620745 692992069 967219023 722884657 503562730 898623768 355574002 24454480 575400577 873177791 4949429 166564315 648310336 370482129 518428079 173652769 233606009 156484854 837802897 78632258 426911414 503638103 101672756 886550957 537007875 991555080 707491 623237038 319821191 828115466 126517249 122502802 917101818 795187231 633861784 521840447 939443083 339639204 288799279 28453441 495200457 195185785 341143741 256732255 910124580 13931799 816377535 758151258 778563565 949277903 163144128 180601004 612246438 164656828 928047074 581632364 710344131 642373193 295013384 385850917 81691687 696407622 826978192 13000642 257320177 269235597 823160569 326698591 585216302 533308343 114672158 936296755 791658426 111509993 27221437 734173487 866349065 715669544 131033689 935242251 951516217 195700739 900046362 502132752 814848059 604946232 39373114 554850013 794970754 727821486 569295845 806500951 93322671 661102395 213309737 328100288 579970005 758874200 322081086 414212135 479418943 375994522 209942321 820726403 203340345 112292140 495993000 261218354 386459250 779890556 226428896 175412801 64184345 135476780 943664148 550970568 897294709 487939588 558169393 804771043 629421389 49362960 289974878 718535679 139944126 383714556 837432398 699816504 862528091 400052148 612832271 479655608 293489109 484256302 860655706 32209448 642807823 157164099 475207617 923608643 314484889 935872224 36502731 473110565 342332537 262354368 77195979 278304033 821205563 359416077 94879211 383604109 507472552 490061535 661933018 796709749 881956362 774406666 718059088 110445012 227792126 771228631 141180878 728427541 955359728 414169410 918511540 338917277 709388074 285603047 10767754 172668174 999606183 42292670 595368954 904866139 989249752 592503936 609052865 923141786 938997803 31247808 539717533 433124217 27900706 614169591 471203175 415524834 79005911 504372518 804544820 108326995 698957613 875052664 775670957 407644068 903930789 408330315 601211043 233956903 964234650 71336122 297351669 792734257 638588150 485406764 84820922 726547446 11176652 935608464 613748259 209142485 576289733 12823035 20518394 715088719 916437566 897509036 665534167 370661218 558325901 672143307 677414008 910041227 17675670 176939430 536509857 890527143 546370782 218435555 427291174 971839038 969964241 150953574 364365022 853546463 614313689 542697333 262056373 41405630 523848955 678779272 842519342 846024014 517008401 776260560 929743504 876670265 342813946 814547191 492159503 184866978 803244607 549393778 561271486 783699159 715259825 969647605 240091686 443597013 72799977 941729649 173423874 888905104 202675391 883146207 667188515 207070745 379232809 885833137 98135086 139941977 428208463 347841291 167722722 555071748 967696051 566707360 742337536 550385667 869573396 284343285 220154716 494214857 644235239 109784499 657350937 814412839 398120638 737259711 506109997 415290542 392765425 557338850 180735021 854880564 803849363 387041469 649103149 882570847 645399668 75290824 60556005 236155923 620055263 440798736 395816943 792092058 435231397 610176876 385581459 616505803 167079808 855072051 783545481 830335455 651897618 698640604 635221856 431311691 48212068 801329894 623848115 290452114 314867234 388349923 938654214 433038670 542219863 354132737 691877682 92428707 918660404 135320158 466577555 729620775 253220392 646274441 317437442 107793661 8400609 482094678 381503438 272214648 150378995 58342018 556961211 179851278 798269708 399918423 991807313 767349566 273354855 45513192 330737008 890404829 467595388 109359898 351816242 777803460 373113218 274804626 352599452 672167562 226740792 973026303 148853911 573597746 358670822 553834952 322590817 743445163 138507501 576134608 115974073 332306271 544780254 706849087 90546286 755416750 643244164 538509526 387402436 248552360 683510280 897106666 506553887 486752260 42093122 14134877 56032095 770277892 926564113 165425113 510150297 386358908 350517016 479307913 702012579 138118842 671861485 288968460 995295370 73467651 857784936 279708088 398481153 389813198 428380758 56317473 573942327 910953438 461495832 720674172 50282586 199105816 627846105 852793885 989993620 9138214 851172668 141231772 635065622 121484756 461018534 276944971 687536275 520537324 920370105 224120760 940555318 978767891 767496624 251826477 30763877 367769020 563285773 816419004 573759337 639797622 155177111 531045366 574624307 132851041 433121983 383639934 556068427 713856648 185799679 765044412 845208238 401501777 947944594 444849288 813507406 618624735 108117487 756078533 476713405 334262872 407782031 242198563 591360795 971635358 644722510 794637886 66512896 451343279 93888158 595254803 240718905 543161434 749403024 563476612 719342448 928036996 113967471 924548322 937069959 620296861 917837082 277108200 37808341 351698454 206944183 418791463 312166866 258364500 121658957 85386828 10843989 166886218 729311776 925588308 223000400 159890244 910861573 903213585 717084788 243639670 565571164 374426317 880348282 171219793 948938230 500526010 54112765 44013125 567071507 228237984 591864256 38008569 399858663 781031642 945929414 796095385 163577766 573124321 471823403 84396092 729891322 504515135 97822956 760197264 763219808 201512447 822816906 715117418 275876409 430833993 797022151 760898244 517705801 57230707 88966348 906061426 215909378 197501084 401075235 163705636 142604627 599746611 545458763 840072311 483565351 936470571 869247010 238781680 912119446 791590443 399223867 226773852 150301937 915505141 647597319 452283660 803399512 292252677 784448494 733798508 510517419 761169932 554400630 617043621 300691389 383072165 702682926 161471211 604442202 889310898 273659118 830995501 935852968 304083377 812826273 940066636 680647860 502425806 999616330 156797529 353308852 591367188 478837674 874124343 796716822 532068956 62234556 184910769 959205398 19585486 163615057 964322778 479471028 378356092 865506443 210315094 493000458 729390093 656029458 90812159 562548128 136218991 953235275 403807386 964008614 207023786 614715524 291569142 403995482 380005766 138037554 930858349 681793837 203913326 785078224 766559647 748572461 130609833 852280745 529261158 91822161 837107230 31115826 944154852 54777609 163681587 348859727 763343585 529243746 267593878 346308463 840758370 154739403 660188569 325419985 810404497 64531940 514603538 54366634 979156060 113932662 953090589 998938980 571623923 380179654 157515972 891433535 258278254 370131170 125103372 470624652 889765785 657195178 700412710 6208163 829220525 6333655 24142457 725908787 550894774 236615438 583018188 635645779 634602097 169451493 791881889 741454607 146313043 6834789 768213469 187977112 863784024 707879210 416465350 793910426 404661209 733618648 26831230 460488983 827945978 271102103 265477929 342143976 362048477 678163367 628329131 843149282 814127719 906604950 112130529 325129407 225275194 737129851 369762444 354899467 352961590 616774023 595223252 995486650 299754189 653274342 551056892 601680139 298363262 754133790 461437762 243045660 866945781 735867929 300160975 932592370 187662099 638673328 728099915 763506096 331227518 39832422 787228020 607931724 470679577 875004362 114601975 115639961 407261024 212581949 102232903 859835371 600384203 838154326 161143895 794773525 200036349 258611069 612489436 654678568 716988672 265463896 592892092 855531811 929694163 62643798 35221804 697307194 820280539 321010353 463401617 418092318 209760377 516423139 785306052 626927370 855148603 37619344 414109450 337715169 687668519 874815509 830801315 785867478 679580060 101676288 28783338 188189565 100336270 630044738 276028508 375362148 320755492 26816390 559486973 514906569 819709459 195384871 382297832 992299489 646889931 850645498 10932896 160243588 334467898 466649430 675776904 111826956 689959954 323371267 448614046 28116186 150248146 273220125 273918886 877962134 485614269 311767270 714737124 198925085 290301452 274854609 272957980 702797832 357889603 328474129 953476318 154935828 399777533 886639187 903282885 275114112 845665377 654137313 130628647 547061294 781813950 598727535 731167151 941719834 357548849 38826359 404599847 385453279 781505585 998387439 416136096 156684473 829245984 887706648 421206681 996949597 258290436 744137096 594345067 292672954 874199242 831849398 575969925 208104567 831595536 243122805 975023326 66808661 70191066 16154823 277467590 73983392 281475408 625993655 155269071 882535145 139422189 460561392 847160482 663044543 809884250 651459356 540036101 956354356 681891470 755708206 478795166 883496794 575317986 80446294 420417230 977326485 952909859 762632877 161565509 381759376 356514172 233279003 54667921 619685700 143242231 488398009 863396267 318057942 825772943 946408338 87947127 390498351 866539339 372045564 893053765 350925719 440298479 92387486 521235761 396883361 83808644 826463801 135149072 585850600 92635917 30291791 34987833 686391255 236865685 975441222 996096419 83029024 90574570 915720538 90506927 819552221 359992864 461642193 817020936 998448948 193704306 478369699 151960177 627457045 372419284 142189635 77947759 532276701 369144838 317526207 863832757 320042325 890193640 612854240 419612126 933848168 89177078 157875703 159237259 936358331 124759665 758958411 843065456 427509992 426019511 558016288 644018235 932680852 644365497 47364295 201019610 555209035 35874161 385292494 905381660 361663975 157625651 737331518 817427743 727845795 733925821 993632532 542488248 871882607 635821783 636422315 881835164 756159521 229586588 957696477 326893940 392773142 978516184 893324181 686682797 754160389 479904299 256555561 53292660 154502989 274678167 656385272 482987561 494597943 205155556 743686454 220362416 842137529 123371920 121695151 377427031 410149420 476514404 897735795 479752767 437955036 664607925 261398847 718826677 503304157 517569941 427316841 756961688 123294781 118113128 176431448 734527186 501346002 741491668 820591748 534091440 123081453 842138627 443702431 345684572 653105422 139224355 95066330 717089574 220358016 830304113 409587982 266707038 862111813 669055841 67512041 995706359 937544392 294781370 955255713 59204826 381467887 96923107 361813278 449603785 145173879 571037822 317548133 572522850 57333770 488213561 566075181 864210021 187504364 642323638 279835585 94026182 543091667 494310711 603266050 375824148 606462933 424433297 732530174 113352067 410308335 419044013 382099482 207901334 356842916 811076709 607067521 446598 574083738 880439934 155676814 852629508 1384676 419242186 441239399 47687176 782015771 549524837 807108747 290742673 880898913 867878521 250940474 599983198 810970167 747088363 20212563 552140946 478909222 739100253 209984963 439051732 821444723 186835380 488256466 670956909 175065361 469369837 7840833 583451435 11717371 362928185 312351548 8796049 317157432 286371855 513771919 138224974 226814624 551719042 392120902 825795765 182795236 571645795 414766195 698796469 242517087 626521742 444902792 29612057 468882758 141944550 728268284 17323109 204612588 268396382 141372960 503314554 339181975 32950012 621974280 527639805 740952397 175833416 424655153 483365991 790392917 506588504 770952767 131015537 365852890 449303056 696134029 853624583 187655698 702247697 993530012 790041120 671913496 982461326 891568020 555255149 569395368 6294947 718909517 756881781 88325326 733733385 299268989 815628515 600681143 178401136 472273635 532101271 349206183 287447650 616145095 302238387 717601786 36872550 443460685 890479894 63211594 756225037 71362466 224431064 847957083 313962851 949022068 656123821 429302663 242357256 657728443 976439432 477985558 737806478 339583179 653065706 533936584 77739443 350998975 77948556 288800959 499458802 101248187 936856887 389326814 913574632 399609320 385691101 204919456 925724722 359145499 230564571 943870934 591820100 447897580 285146641 654688183 405080296 123071864 732295434 982004857 91191685 384226100 207099585 402197154 984874897 125749181 611899088 209657465 9800645 624189694 789740511 804913221 556431039 453685799 179726511 469586556 999721770 667736341 113414818 392958545 991766448 714310399 410540828 616886424 426218620 23739904 304837120 755561690 168464561 972046363 419711499 932655975 122494301 386958822 800173553 934694613 853124815 902717982 431561067 243952780 628924369 834189448 726435316 69812021 624145693 706774813 933698795 561573900 691945583 133496153 247306245 822006204 959819469 942202797 162713900 249690942 200043316 284244162 697057070 844735529 897096028 125825513 234809917 412108492 135468119 781995451 360834585 285753702 595608540 552570385 869022699 297250327 299628911 517061127 8708829 957736593 634989096 372300528 340648173 213439658 745473308 230324423 940968523 764914015 920094742 620562578 910826392 636373612 417464369 278705102 395723836 343408723 786995591 539189957 976944980 70996613 418239935 109233614 184398292 673400642 354362472 49796561 223360102 263886901 254920174 276399973 325229910 178044105 556986228 411648606 611716544 645362505 533721337 918514079 533739742 551477473 808532392 708756291 880421906 348429749 461832578 372561741 384656063 576141114 732037994 436540492 622282473 859115248 204987685 615628323 161788667 648450160 130706323 311551311 232543315 608914317 356796138 981648242 623058311 237921187 982833927 996047973 30556269 424880167 864752254 616448356 718013001 123914244 787252986 968000516 264627812 85312550 582789020 286028755 405385926 541786686 980841846 717455796 177999876 981966139 913341460 155416847 370003807 969331100 206095352 827712328 324700125 537414662 652255049 886278707 314231622 408996544 809641603 24273028 84466457 429642152 994571112 835304651 318905266 536944775 64634979 779568750 554010453 787622104 748218036 117734858 114737922 236343830 841056040 786768449 448867054 541597848 505701684 94507880 226569099 137203001 205317194 401490182 170237190 945311568 731210212 799030724 316332933 589655860 238939353 915825398 604835251 887902131 484219711 220527496 260995535 953469661 539091797 39599780 217138358 816799155 949857629 695551122 208320656 853783806 235928194 534449114 489653136 558906339 213390769 11744371 544277756 898233188 71420693 585776136 308389404 744286688 599140807 713816271 724859425 933586759 137618869 533554839 880127968 597138781 989484642 178451068 173230350 257556667 418546178 925498371 651112580 288059319 329412962 918125426 11860976 134117461 469343175 170112678 562759773 920400753 295804591 874250378 137046103 614606603 357770544 479243151 241729813 974761619 367670572 517376558 43558397 149504686 146563455 57799924 901394024 999476760 971751717 620364768 100250662 28930411 902777214 46059829 965568955 232614740 855613041 273781413 94400933 602143595 388250790 696835685 638787885 293297317 76778646 652513949 687689675 22572761 293001070 477107729 643239652 142315067 589088998 768547127 818977362 894320179 834805560 976086945 884698027 324664556 521202556 632047965 133560395 469099596 332592979 510954023 515981299 310999182 21920937 523882434 658620896 230065276 55718666 334891367 253575519 720436904 652021882 588780229 131764426 166534227 683054197 699150264 937180295 966232399 899224935 426295839 417530478 101490124 885044956 38008639 203711233 598019138 323234192 80879785 544545214 42088280 496987995 31796311 232166048 165329016 678364127 599153632 373998961 254699942 982678619 876736048 365871142 71951202 388357515 862639420 395807067 537277641 422702018 565090514 96868643 786450257 376100577 290605982 416001255 52456609 763484524 623825230 203259351 73549372 865931642 334287125 728984103 707893109 785051886 773665490 941047510 660743808 448883983 610456795 663695497 938033753 262282144 94461778 747063413 244082183 785221162 853745486 397517386 414663724 739446327 361397214 491630965 418126875 914282226 999662847 451580610 38626517 162536327 998941645 925482180 148782089 951505848 84317389 476225689 883287275 901953101 9248855 467071872 705080300 826250050 262711482 497958439 11165774 565138795 533315164 491734231 911752731 752417216 68400466 711908148 127744059 407899392 305069143 108285572 759364405 496155605 313348237 771573193 528886764 471433942 100079008 895225622 4537305 404526254 597661930 447692858 927461173 255014435 172302684 209533222 767287813 491619131 398716920 97570104 130542940 53691402 409301549 843765851 679907206 838430781 605241512 655482671 22015930 14475167 300160011 339285714 542809032 984019600 916181325 372495676 735651003 801925941 175285633 201472773 804404543 152595827 317328292 863819372 207193047 51446765 902669389 340619493 941750661 160147530 816061554 59084864 655945792 573444911 298182006 80893566 41289319 215214414 184738999 651016185 348733761 660263805 535629168 825643877 814494834 183966712 464336959 732289253 847259656 9789615 164770866 746239231 201436019 453432905 240925785 582849216 776338674 379290029 313395148 95858719 39242390 111332918 568199432 585827935 464219944 300478788 523664440 880159544 619014677 117085715 485489602 454152584 439283760 961683 602748003 634087322 367841765 703577050 681234122 530425339 351863030 822571408 922620241 47328489 192529280 665052148 28015914 785150220 440332502 777712323 148389989 569080187 281439754 13945901 503716984 26236089 213669164 512354888 744867078 881383372 17688379 30126779 745622282 160513039 829662751 977340905 220910918 440202341 888215701 375985722 370113633 611318586 118827374 569602453 995102620 519486603 990591714 425315246 910695582 237531388 22097152 673192042 689459399 592330559 971208753 363796212 611704081 927947136 779816108 88565059 496731148 486143818 39497708 776574216 690713139 637786526 369291539 977795924 267345950 768369769 355403165 483637977 189460153 573458498 261194129 562766405 143878858 42124114 787077157 500434491 520130531 894651559 36321652 883531624 138740993 37166639 102151313 317467004 582051620 844957430 230219179 331709963 791822825 874520915 145867743 403381897 240888806 420204583 680809034 295932402 834432415 761876534 570133877 156664830 2212604 915726869 80018589 536009094 298311824 98561752 53893031 168290946 510910023 226496661 86653628 695093877 128731045 85758888 307631587 416670 412912988 39660850 713911353 872198255 738212001 934756166 920479868 520405313 575502899 816951582 634111873 235379284 446495291 352319994 694923762 620031596 651692505 223301299 674646520 644168070 142572971 986348689 812887311 150590561 105946110 321730936 466954502 66946897 222646033 848707489 913574070 193818202 560586223 12192075 364831074 144127370 943608817 650196443 232427113 130443840 252072720 113690083 298768498 138258814 966221435 457376352 240014214 650115015 882830612 580421610 65298240 986501056 227070586 439918674 9998292 157757636 105029369 855898634 444866092 657342068 262806556 681531742 624957254 810327400 603348609 139807684 125517361 242490365 845568632 804163594 873277537 432235644 475685790 61541438 706144739 184725074 77889237 24110641 646785216 541159189 339515875 198420746 511123694 328635661 825403270 266951391 351862657 500440566 363131159 626068276 653416596 776666830 131350629 844056801 802668039 326718834 584485202 519872719 907882977 300785564 168486669 84252480 568999729 683025095 986304923 407251178 284533395 777667253 979160727 831310062 908236290 66354250 374135582 991473851 497340700 44837585 840598725 162694652 206451341 948755531 622698067 382047011 225939541 956726837 729425208 386316852 656949706 928154825 172046705 284496101 978847246 689149239 785117945 910396259 361447283 189502201 589520075 524822318 345568444 169563071 341685227 816954464 268069087 188506168 68986103 12259602 29981389 562746104 408422554 450570340 940880549 224892225 866510727 629281167 701444959 409158362 608337936 334939318 680067519 896928286 355557351 70512706 621329707 864455539 625245066 156735047 404655628 236936305 497841913 600018382 135994738 494048353 353945455 655301657 186523645 102263029 17279159 898961679 305310744 218191660 840730060 750282022 707218283 264679700 190581670 824014718 42423822 682009367 569543545 443288179 458847095 384813542 464660870 217493489 680034044 488032013 13468962 828404704 223642931 36717089 197979645 381586608 469535580 824110774 8485379 668975610 211712153 812559769 36563976 664767009 967508444 942974899 671256013 393119241 112123139 414726308 328844178 123508131 387095372 401223568 342444092 990859411 918558297 235718624 745091939 652197519 710185285 891588631 752792723 939353991 961184652 604311588 913873204 154049523 670283989 846262043 904776194 419008207 278101983 302904085 960869504 527335303 807582713 923853759 57437060 932638552 761904116 472325123 18805162 983655780 207761903 503884193 891376644 389623180 33545350 111566085 667303891 960648896 58538540 741959092 22903810 82442319 868304186 927097354 164411142 331868213 140604000 481045487 845454956 815927651 741398939 214636533 61742025 754140011 861659489 480856675 710440188 961228544 423796401 934149203 770617579 713263241 571257132 205392407 222872147 847556826 210279828 276741094 323331163 41647683 181426274 531570395 773517238 50578299 62861862 728086612 568707859 804763678 322293331 881261012 125311919 995456293 151362017 754544184 594720077 546779572 194020107 592816223 442647776 272600004 836481839 30848341 256103080 898315907 15929579 70651434 213429009 312867907 608828755 287014253 105618368 257110832 977460719 150754830 856524981 864046287 469382362 310423283 507646502 885937326 545329840 260500533 171626614 901055322 402150162 93496340 175182104 707685924 298940785 266198338 590188050 214186578 354298886 629127086 875931411 601147311 807518294 671264583 282975365 15697367 8603025 668018326 589229434 361994963 244760217 553570655 562544741 588364125 489528120 76702196 286740497 11544010 294875517 431525686 171454087 879299386 483826769 347897724 883219518 4862810 575189568 522796736 707778126 639445848 261953212 595909604 393419153 501064575 307060244 419787996 961423299 764606848 747692290 186071557 988083670 824439444 827572891 364203003 385201746 633778182 415945168 124493284 916590618 17821564 745225563 127445640 714950886 570532214 999860289 5816136 305627892 822457849 824982590 324836315 835562152 16175642 403551916 588935310 166868012 355057522 348902981 952137596 786477002 763567476 50013912 593918999 520296964 533595763 394142037 994473008 26425763 403316128 320613840 645293515 298760164 822858217 420970963 944886393 190710216 254095832 490955357 303804225 226535193 868862879 884943824 750201420 776541427 909974730 411545708 305507808 981357887 100709570 386305653 15869719 28849641 806819007 499906439 497054729 879421493 638422652 932209278 842701342 296033219 460535798 698952114 517531069 575852056 932195355 898644568 885787618 103237110 820106259 97174584 352668421 998275785 593606818 624807337 377049703 231243111 674381327 111266011 368853286 181675855 294820138 282671376 671164217 918457088 597213327 550761404 834617275 969527080 806925838 714454607 416721621 382786617 391081926 326377385 696037588 606155569 643078891 344611702 36637177 618500451 707101364 425244634 882874066 637687043 164694499 511909553 784917180 54646742 213286850 665097903 570366823 13668846 215244479 197673938 781256704 89537998 811706593 124767182 988105456 492986537 319831197 815573738 754970536 288187310 993924203 464660113 523404284 694203586 978570734 613073830 977469661 626938711 906215044 328071879 341231104 106297631 245122448 636741020 877755587 889040179 33363275 496230056 887770733 527175577 215164949 836224965 195440726 327649293 26402609 112857209 637119610 407050063 654395975 764335651 490863460 971764334 152968694 204678508 420099981 64569011 814563946 381101518 659972313 78315040 546804092 868153039 448660961 588503764 287042907 317766018 759216170 683871585 451261663 668968845 771087940 8950079 893184885 225693495 125964921 587226486 330503295 950559471 932760162 623525756 253710935 179755720 153410648 883822653 98226305 917382292 491971052 949944079 204858037 143399903 963163163 993537750 246417942 850084818 308899661 323195707 406827721 322483412 516323689 165873532 730043666 331371817 748900924 727883584 49874314 638890914 131273118 876453122 406292326 20393567 243823173 823587055 302443920 157020051 140256715 938491442 831604208 759589324 941411545 259603852 397414566 324816192 294977104 956448997 855385712 12911957 670292871 37763268 293002929 596452976 351968914 273651099 607567297 318718503 791471754 387121848 17833402 967176657 211454365 434964537 77475277 9062811 512333598 710826451 386281418 742295861 762298555 658197549 481255085 818728669 301836080 15864963 718146875 185974712 454405749 474774304 254265704 745449550 81197214 188947855 950970566 43779580 377707102 964698269 931822746 669561766 666705063 675165323 390944895 165317873 976993905 80094170 124332692 417045990 382534380 888760000 858170580 663941979 863066458 33120962 605651687 662410124 274440681 728731711 588187178 44977899 961717212 121237973 442455836 692767046 923826300 291911372 394631984 151179384 760310778 82143756 769285250 887664147 531740814 957824160 9079873 461774498 767734807 831832799 981890136 926945204 129900545 254732718 553046978 334366032 307389021 300758039 761255855 666345961 120006269 745959707 919169878 194165189 74309860 454650629 458872072 586819818 350468957 443935443 274193040 117772605 833250817 615916166 346825211 799006330 809331764 834692043 475690966 482326391 340100097 722901028 853957856 668176116 596748707 6121488 167068297 960177902 650785024 208702776 385931808 460574409 785476783 438150255 881457741 430713369 366931586 107029245 169871041 646765601 465547640 894050608 47342619 512843433 98063096 697608311 316608909 448559281 332914506 281544318 631021016 212407321 928606673 296645554 455061899 666885429 849316855 683650267 782270400 501421195 595566768 821279971 636728130 188274725 221109850 112834963 652929182 623861990 546626427 676505574 42024818 167480509 297877315 475450839 708457001 476246912 906452439 163928298 185177743 700944581 403865592 188765541 267552688 144557602 102771439 74103879 541920219 478586051 450135209 932768004 31444317 906721054 203659716 999014169 18574324 91444418 413857597 361470525 926695839 976072530 960337896 203733855 319243620 189899353 913558658 77489625 969246883 856280454 634308645 414681670 949133921 661142284 774572369 299741318 634171735 576875205 665651269 444492077 123994427 999136946 365458542 109718032 611508798 626086707 454074092 431905167 687677839 823242890 947180674 897162956 274543110 374605395 841243387 559532362 342056933 190783959 252794818 81641222 447469685 953182687 40526648 826354981 352568247 390520935 172302216 240604250 582697340 611224516 757731347 849369579 934669249 401337691 832272169 471594866 32415198 475635783 555963959 828973898 457223123 160712971 594946889 294934589 179491035 67329707 684348236 224666006 193136189 908797439 901268122 556447493 538109489 266047152 204345747 950836829 768521750 37100142 226528257 860752854 645207405 614291971 931051636 3638429 970591137 233179560 457662542 840715098 542781748 133378934 157406179 269942673 233390630 810629287 854706901 803028460 835332711 315062875 449153086 412268603 262809482 793146150 622473220 15897128 70262505 278965968 402525924 831733927 173879239 582282329 431893235 765779490 168924653 75675244 13242710 916124002 413215195 434567427 628103832 854217815 475928910 421731391 63060741 190930371 118407185 593278612 906360787 218448002 251839514 990070825 82595913 759168232 711994538 535318077 605314554 440270470 890522401 266187240 208681677 193079195 434839519 139927975 688433542 301944664 647757749 28498961 427407343 250546837 812821250 920484920 711993967 29416749 59372955 221036839 84222076 462727122 712582884 147084012 613808312 117857393 941092541 730021481 474057625 290479276 791432528 340799971 915041521 739469824 361090142 275702046 145863803 769280982 950579876 956893221 689847666 105708003 407187084 150190421 112552376 403877356 993866558 68658817 237263386 36948622 609823172 704715560 845571134 329511038 344196705 995904739 906691501 496643933 546529262 639637001 484328884 672504696 165206263 212682647 415170987 913075149 198886629 135605815 851602184 460804337 318268262 434518100 89864774 43978557 373603879 624333056 375618672 611681347 638140148 646309166 750996045 932446302 964130332 430230580 936509114 31930776 531620951 589070707 617617099 558953242 123787312 207831871 465039916 88476752 830149449 944819622 927589831 276645484 311044353 267610128 156063500 777241037 946281554 755457165 775797692 450660767 722865860 327577701 976992440 327664689 7416202 220738558 478565939 520881829 911972954 679577506 123368006 795200914 275758860 801174302 821705920 864385068 342396263 507433774 505319623 902388778 289007792 866298488 29199544 203566540 855020475 625479854 353603623 537091487 196676172 199292031 464423784 239421469 17134568 962931567 932252331 797989225 126765639 745827214 8878488 115971828 540618088 669645103 433392390 498575200 14852449 443507630 390038665 895160615 739977623 386566551 401679786 662045553 944746639 718378285 90700340 986191729 331974414 598715053 15212364 786777067 335208401 535470054 350284429 939530908 917742997 631314718 381950894 391603272 717824451 48736454 170156889 486493164 689238384 879505969 919253496 2316724 898165989 777590699 471679614 67414326 918331593 313810149 958474312 49423575 440319066 87583495 720359986 223642203 468206016 445220268 709218068 614774903 644551012 156412054 578637688 820110531 910542873 584032901 884641227 130906124 997926437 259107721 357107377 317577234 33265488 435577602 43687032 831288303 972581913 529067357 86352767 272141954 103911185 268050252 37991577 196916456 243062840 990114249 607802030 498812916 679906614 555742377 75228415 143842062 782635826 728077302 706832225 735389508 31546955 63599380 619676398 522873868 951164575 431433952 7687526 636647294 633706427 476699100 204634465 953924741 467256350 493035312 395801494 28534379 208660134 274010772 641438729 890246783 713837243 599409479 502350235 93409309 610297572 730888409 312602504 505473298 98183613 707812820 973885731 494650601 68025790 202860818 549582228 528180826 995084117 570014587 859040980 125103616 397293059 802126739 336318282 421158393 342699236 250936107 948473267 55468374 742104508 475844946 417635844 871817900 972692784 524043646 387324879 702177682 158078700 40390631 121355918 774729085 630052115 751207026 166124556 922400737 53107203 530749350 121464970 753102471 13699738 15374341 868226935 472585794 707417422 158366249 553490357 311288620 589873092 643909662 180352883 968527723 385396527 123897904 39328647 426834483 21534495 752311052 923928316 675322575 40310112 559876726 688027080 585698486 797570670 99213236 533446407 687205479 508024424 526840481 241749696 525641480 267520520 553600401 264709454 31612545 785775019 842635484 711645383 407326742 141626734 416892570 14016840 739296630 700564880 771154495 235792899 28657724 421090218 462819899 309058344 148859216 252556081 592635127 34053529 658570983 239097711 621522929 425309573 408477921 20609141 292615839 388494164 583687485 160211313 313893131 594260189 35145692 330965333 187182121 981226050 241185039 892688810 375916124 170523649 667347669 807939753 60912868 348320590 819488429 905640746 6252384 953138286 648500711 603982879 51477075 417597069 45246224 973226509 316397054 454334813 524636598 73313703 663544768 110019638 753068715 965526891 23668239 312288938 807510304 746790109 62283444 255639667 702651351 754104566 576140660 447898893 538097574 884892209 251573263 233485741 364616367 508360542 384565307 24663688 646409473 760022902 311003899 764220589 433129038 382808958 384319023 696228417 526857046 649262894 323954429 863072962 983970496 407442904 48877149 29475422 299468285 223826888 78676893 898344059 968726812 580993500 288659598 317337989 834786045 604718907 591659421 441077921 758173073 757377141 235901243 861985473 292966145 909085680 268981195 16274813 367079634 834455076 398362565 839889937 280924669 501193446 850728965 380591245 264443060 407063633 852058890 635123374 34381216 734992361 937776492 457098191 639998066 408934946 896036614 806452076 761931532 52146644 732538931 107684441 166361787 942649396 158955937 334642191 326422390 864520334 645917053 142851408 551515913 998602578 939954687 403718960 959398996 192483423 834237514 334794289 126689119 431797697 176120876 425599809 977952234 421719574 94826143 865217145 664035852 960122149 880694926 458100861 212747889 933416945 276983169 606722189 821195410 410265773 223383007 529355915 264413751 762464116 274932465 259916594 221992685 733330440 20053446 472195348 901285796 294076476 215601972 842383926 663353902 603267730 973015046 22149070 187860198 309084137 290351084 914992511 210123810 818098090 803725408 524114248 535736571 778621059 962588834 194449189 920066506 660393052 375713411 788172487 947968593 744535212 526508505 296183954 457200201 986160485 762710199 30715897 435982381 725437659 536894134 199013941 309227388 345938697 91433853 12569756 984977429 303657097 627823411 241873514 287451251 100547147 423907554 683957795 599163836 489696431 895240817 580688432 856414841 9147381 35736390 949532327 294819674 508593600 124331638 476306223 793660969 587675279 505804470 748938240 152331323 407610030 233611941 440629646 732658707 365907340 604461063 706267912 998569549 182498398 182004928 887212972 933684184 848649826 768221326 109339302 418394717 124654230 648770555 571688661 935636743 950807764 450570357 535562119 225776456 853536991 168279254 633318774 45913404 755986913 334294362 197460565 522263632 168880717 125009192 130535693 27253548 401134422 519606148 416513828 478036705 600489795 459127735 474308598 234481276 53643472 590674215 798304684 164004844 941677636 720818871 641611375 24208468 78533143 260503294 769937101 325873853 312258248 61635836 370367807 104642159 256416673 670387409 412455176 821859021 542886803 546754324 36498577 417896507 332505072 319716615 545774593 38816102 49053358 974548372 865500047 758022267 669900335 894856080 789027564 266209176 549747087 750008348 153717911 643120824 622115675 77144363 420708506 382328607 287472231 37316682 665935990 919860045 775391356 898439030 428570086 208706976 80722117 646241946 780558365 996706639 996067573 817735762 46078590 918653359 855191536 65096533 157085469 586892215 331610045 767113267 456252780 595323301 854493133 830542186 45383515 278359448 886287338 157370399 373930839 221563147 156968351 635480589 115869774 290708319 961723633 473892439 62651510 465968606 303083551 251599808 96732098 386113506 17036589 729564852 727625205 529714605 122809739 574162613 635803423 961401162 297462520 852969020 199751556 243036390 153828640 840767431 673046729 341013644 760303952 347960681 771759946 442736747 294041039 702604120 857643295 699279080 840563989 385559479 41200013 570172255 568016609 453789750 686929924 521297754 402243097 442585523 139292295 854292032 557143300 747549586 932021507 646295838 454637011 406099364 155602409 878473546 374016288 991061856 648111586 985119229 45469996 303740765 874814496 618728068 915748804 838076888 219364911 262253669 932505242 113111244 971976417 607987046 566446667 964153124 399899760 356557153 370877620 726004294 346744813 962472123 806579568 286122183 806497374 950223836 87665306 142010211 423629521 601378995 75680293 310600324 37302767 620559467 696754766 968233478 918446759 352731547 438273104 271069995 106172895 142820285 521224103 830462975 335771355 598628803 655112022 32153040 977964135 533263538 441383433 708751240 395017936 470443153 627014831 633092403 708654715 763776275 496041763 200494918 877084457 96213417 703444637 675257421 113136803 305218086 989456580 507430761 491260835 706874735 536864560 634821867 827099132 343453349 241864733 284648691 301332150 678708610 716728668 290280518 233622584 519328964 839795071 789348595 853638528 789065108 343263893 393112091 730433626 895216479 58908102 157277250 52623191 102039011 593060881 66748343 944961057 723174320 278015636 795471005 297039221 261744147 148897663 431246693 868061199 293854442 232573112 667838385 772753727 417080840 299696291 821257020 193001879 224972629 88817175 150920217 53869692 687136051 889680336 333198512 949463258 119566077 689711070 835417094 678587243 995298088 487622597 273040211 382502178 486424331 610006768 918944162 657741386 487128460 490196274 470234547 823706705 814202198 648627325 565317237 800510102 159189321 916142177 269791416 143060547 150409390 347562639 3167395 27975846 531827789 144973788 275790477 60623214 308205310 56801843 661642318 706129930 708400111 284657449 829116355 932810739 537338528 44401 988993652 964529525 686138332 487469727 16972614 877514488 181343892 752699832 822128800 780435956 836138967 423284034 445234551 708365896 43953468 98735801 279079561 193025389 897357450 199560459 473858751 593720637 98847000 298054400 898851220 702910973 963640278 895423524 342114992 353657577 259015415 837981900 200924296 135225373 8022394 542660287 982063023 769546201 234720212 155097543 811191462 776381197 357133799 889389055 170706555 431984564 15428820 884594090 991175121 867839963 810912576 48096205 693743312 769028359 538061355 640417066 237158099 204449294 199795199 406720339 142047946 684503364 747777203 721904949 650318672 399379652 42286503 924359557 936392697 538325833 156017714 117157544 948138928 758321552 93875037 695331922 596734337 500128599 861480139 788459072 238109238 677471500 975803781 68839428 312523810 714531971 103935655 978495612 392562101 421093600 172400637 570858232 488681096 571597529 885668843 618263433 74932401 804563591 382159009 385174505 320397177 592006999 331749493 566153943 732113959 619707207 851760938 275641247 730176933 567714365 738503354 315268646 771894397 148364410 842309872 366675637 551672960 648979927 98196430 350941022 492702892 475463206 664492451 853531260 368068014 495410771 462749122 445532125 718922185 259701441 989091372 167457480 717939732 4642941 694071209 517463946 373431969 396728439 561169237 809843722 951731402 330670700 671222466 676614345 2671001 46873962 130822188 722013679 24955042 755250175 465421205 522562156 821418609 737755560 887469660 424498354 689962842 335578129 785931955 971835176 953675077 611620312 795196099 645922613 714899098 355707843 680809705 738665329 296216010 523543778 111992627 803056148 625673280 916677012 267985084 357989329 62787345 806454578 190928830 99623153 909189055 427487636 507178734 448519803 75160285 225007281 266807285 191915266 869185801 363099451 673987335 271778248 261840819 674682570 766910839 400263927 878546806 845860249 416431912 19562223 912745595 365441217 946547982 748359692 839046063 895564441 732755738 477005440 859584887 919272779 108697313 872543662 929036383 742292790 383289959 515362462 613903591 741829521 345100588 827561462 882799290 499791310 307374023 250474654 404348718 68377536 252804528 295526946 265740071 556550101 824675089 81570981 106173549 453675303 629393437 754277031 88237123 509565868 843950572 640652856 721010110 723096387 618534867 777042294 223279317 412789769 363642401 549610563 164446198 807483734 467508702 506225684 818054800 558862073 7876035 527033745 678362421 896890527 677948533 506858011 638803754 793897147 838590804 482556454 264963823 923091755 414169347 29126382 565450969 946556024 672019322 670519587 601541049 939704085 418724904 941872897 163339897 181285727 802156157 25780314 916320806 62294938 960659008 360594897 359416633 640619286 920296764 586045673 291037860 396171911 873145009 556589760 154805697 87613882 801974472 725039155 302940614 728744759 399688156 664720426 638094617 348017571 358164277 49983799 530037068 742339888 538520048 813387056 41352045 648754327 47199442 693476712 728800729 930681565 288304572 278789873 932806648 765839383 390128718 939899657 443165927 853226039 42264017 393804603 57957336 273944194 548241153 925893403 302396849 141492469 60118148 818931371 353565347 822186565 512210521 710954119 38957336 135012658 891977118 841313184 428970767 117287077 2534301 981120291 244924863 14017926 452342385 147711660 713512463 427436130 265616325 944535302 97734488 854604672 352360268 136452617 666585558 417814173 971128123 956723856 460931765 881417207 148643960 600703521 702692807 379733635 306240616 578809070 872390414 109563429 866515876 256572496 623785353 354976779 521450622 58252549 986831982 330855649 213687323 515002192 815167948 971535143 378275736 217159895 109460753 699415456 722694613 565451315 634854246 856878942 30346716 350664249 37547808 584979340 864915409 918069965 239338118 426407031 535112156 294263230 789700172 355556482 302210927 14768949 492827472 762410396 378936179 162958662 105309874 608271907 335471406 309726859 541947220 60849743 859196874 180442781 529683256 421615921 685883541 680755269 217185360 116556857 166821311 149378071 256477124 801950112 894207208 824049354 862274162 902213074 612865166 945665474 591316435 545410481 789586657 806023578 15719097 335424115 677420863 412341451 504825523 772983862 445695657 30515918 293076714 184980012 404661220 685341642 536808375 984229053 383022425 62599352 186343251 719197855 379688596 423614149 439021574 934668206 694095985 684121565 595049568 472640722 586620159 606333417 369274226 482884807 105740970 921896756 33368265 674212671 81447279 414487526 676062545 564899473 125596052 768032465 222940978 243834343 294069708 777348528 506433871 984063883 923429974 411445698 993722315 736861055 990248276 707299546 927083984 407133444 230801477 78391693 405733304 674894397 315008501 806655471 895461451 168072186 129021657 299319566 618896521 898376113 843103594 10413521 615921911 698833396 694362467 649208038 393047642 295914731 654171082 309545717 758353942 42969483 416084946 320042954 827151531 158228015 832562986 220715338 581773609 722621265 138595887 816285635 908486661 390708494 550923152 750006966 876347092 162055732 916554033 149615279 698683044 790825081 148894157 929726474 27996631 311717161 219348879 479594284 31233 854879908 732798206 691825401 997703277 418695296 219903918 379423737 27106098 467968137 134893956 246842069 234736781 354545170 502265595 304634840 877243477 716105476 275769621 214884677 41812890 105445421 509741537 508108152 7659041 614865965 706649900 284337125 332559177 527111977 39822797 379363583 794206797 216446146 756586292 124614516 825452213 919144633 993510273 429651213 9981076 694842685 263784205 781104598 997317334 153938317 42383254 996584056 458786153 760187702 813601947 450639274 378036897 576270306 692927237 463925576 99974588 738662283 562980186 933172546 517377490 987762298 2044079 325957976 68872689 46889389 493396790 383478168 302419350 478131556 67835787 747430429 5913977 173144861 788387380 490690740 261616800 552684971 807426229 918447179 708719167 616457554 194761325 853557719 759305248 359109620 771368466 274352640 697190063 239285025 769583186 243834633 148662196 929125166 105420648 964404186 69685253 437745468 915644791 250015666 256224353 957558332 988068063 221112110 455663884 426333883 296643749 927428554 47530358 887619730 330571596 389196563 923758745 77388644 758032350 540443293 179210998 738971560 172917068 442541977 923309345 717372514 527022086 157822195 357679873 727802504 547629063 294224984 350283729 338079267 56009585 190057013 651851831 345057681 800741656 663509725 472976726 928070404 534408174 693102266 97710535 485694362 207840153 553373492 666607464 990516377 278501531 137206191 510791428 354223545 523720845 1878095 403409740 317225873 21616536 866634693 856195396 255066018 284280288 829779082 623722169 539446082 112096352 748163474 855259079 719810160 466914237 606671524 730325538 819215921 207320571 1274322 765183057 771203307 234777832 583227290 728020774 184665304 622413390 581514631 189046571 58197601 900771112 737756667 774767351 71375070 830483614 290678923 535631110 965322065 926695580 178071501 817688317 10375848 719367385 300876895 568548084 794548477 766045308 760315049 192394237 725848686 661079338 214268566 502483214 323580193 542697426 682626925 839827383 475505967 571622753 372245508 935671024 707852378 229220774 633409745 719051307 298295398 224371066 942001115 789854234 255287325 496635213 945941955 463145848 690184218 472165153 733191320 651070067 838933260 544933482 985214282 605756997 988459153 693537504 608042451 706711721 74186614 368718163 51985053 28008191 940752800 793964540 303325232 924201181 713023711 419861471 765263512 626902069 253190918 511697876 658706219 284817495 827013228 948886646 103265138 373438319 591967206 86592671 646996410 271110563 655598042 725946855 868226956 957124865 70223059 904321383 102512199 890174584 158025780 367366924 817166506 287240623 894366115 229165446 467334929 243061444 27534019 799318241 294569757 600618801 19234130 129730150 983647451 59398050 377642102 997114705 284631317 120232191 168532474 944038358 630436392 611036161 982797128 802844509 545921652 943123679 90441337 46882205 582970124 102514603 14591953 214411781 201083479 354491925 882790995 590096205 896122656 458589061 26417350 950192502 964239132 782609039 152773094 630596911 276220127 519616903 550334001 256162393 511982760 480993845 909239148 557204374 698377564 693883260 984492975 653912808 663634343 744009212 822050594 69578906 685651804 235876912 556009485 675815306 963436865 344253381 278788617 506477522 573250894 724688480 27876422 682167817 351421096 617333171 309238063 210920719 533176003 976789643 434481011 826843923 832133549 62350345 140757030 643215598 685726701 353456860 720334029 200209305 738448459 617059807 299910682 356388936 160273261 113895339 844284538 690885088 1153397 798379740 205145419 629932746 831626788 741198411 912399243 423683631 188096368 427261589 468990155 38761214 205569702 478615200 746469650 418105467 455743603 335755954 10236481 23655930 493764140 989064322 895615730 877362542 798984136 717699447 31806150 97083591 174466964 463271918 18247569 123084334 958462926 688901121 947237817 129119955 281317155 670037633 716646844 436653618 724031353 265116652 473114404 816645823 470318045 309206538 787493912 803649780 93751563 541629664 706902170 432761565 79936687 5593016 893579884 599803961 777951756 495380708 230442312 53468397 720631507 595204174 396202309 109939176 804831200 610783840 987539372 113649832 362889795 988484191 994558991 377210991 294044143 45454514 326852509 749558491 751076515 328496794 291560967 956660374 444960270 381291985 663071069 129290992 591198040 663636621 587446354 426617586 489535213 422625850 921144647 204617886 215492732 827033528 308879958 611016739 740903482 833013656 244061874 684447228 676407498 858143354 520863743 573049098 215633269 967899018 984145496 494176359 491885525 898347677 417357757 722709563 12771780 430398813 812785890 357913661 922602596 982212091 949779475 986092311 575502141 144595501 34615127 186362820 367576138 267852324 964566667 59825293 873578450 629625147 89885405 957893025 720450976 773375214 253003501 835441966 875130046 542169611 656916857 626200567 117392182 554698966 586993507 125688177 322014064 480012697 375994524 456697016 208150690 46080248 429689493 698658543 695080753 917127291 113037701 876935356 998036269 294048167 573579190 12943538 783235009 909434071 435444649 563233436 717465179 215416311 63822039 392932024 667161855 878886834 688272100 11683488 345774732 136460710 552030680 227197936 258917647 50113232 509649251 200205492 241658993 811922334 49233853 53654676 502197702 84722179 803468756 703425744 683914367 929795110 384175497 168366640 29379651 847054615 173931039 727877042 618883805 122855281 596483237 5400053 641064763 139189157 637841311 384640479 45051674 914135737 358274491 161428876 679041444 604714604 129923095 241626466 554867483 224608315 639528404 433322581 142299239 375656609 182563973 319767752 859356190 811009 659752376 844881416 556133219 204512294 11642110 490851507 801023727 664582038 330957615 175375034 355258375 781134175 965920547 129411309 349201196 564211394 679652991 876375055 234333148 622855407 445401116 662054873 474005034 982028860 901133652 309697753 486670631 700803909 659276213 715062482 300714879 34981502 6041072 719020220 831688878 853804985 60904693 416701050 974192741 713428785 4077391 139021617 69109407 726742445 98282803 551061443 524466585 206363738 973601366 864566242 930652436 930559136 371884377 581799016 744746053 300035815 721705186 188935883 254038333 885089583 133283780 57719646 84144042 846297652 854888337 933656717 643201711 132854128 476741962 890802189 957026611 19593159 697986793 217338901 781132698 693062358 683079052 366327535 847832 404382379 392795446 532575067 440539162 544799893 633796454 363506736 615351361 773887021 636305200 87031519 731335052 359431183 644218169 368844320 405803069 691059727 891104932 783908146 476488538 881375187 240310846 201854320 102342769 243878844 362408176 681789486 807447373 410999163 691057815 398825094 790424698 764877834 622914814 239275029 243309800 916558290 88471245 431173111 463834358 690251530 814600436 93542957 404725970 403065261 889526547 828953231 840025845 873423839 187820239 274216620 675809218 683692331 89625496 259537524 361274277 808051594 359063728 474361963 605604173 703927909 46044046 246045407 632841681 190195602 492540095 502011841 868275134 420660219 460592702 412155218 973384435 270114810 996656253 519594169 8199897 263354910 864530393 394862107 168367113 788682277 69980866 289227613 503586532 6278988 327483998 936219672 18374372 108476184 591048243 720060630 759616626 254895111 245796540 892883843 156392084 712576688 820201562 320559816 313200065 110638956 792037616 596305985 67868973 123499640 156229780 479282869 273595280 453665018 279528272 402788103 456989236 414143036 857395457 196977461 451773014 168768684 77926924 48882667 87164411 2932117 673216804 868892361 263552249 637320218 679426750 43876278 576606606 347059177 398245191 124289853 19917042 346599672 357517446 157888375 799872083 127727811 38477195 942264347 652544360 573256334 725756142 868982388 375294658 973602252 639967801 695064638 905169355 870058245 590365938 73984498 573968741 263931085 398815307 137665544 496162557 643642046 776551748 278600290 768397664 779653208 888479090 215469419 93584867 13811566 181424532 678858861 350692896 534776992 412809019 248551761 146037391 224913183 521360984 532867033 494300805 974846049 662802456 247992601 497557600 540537599 334944020 392446543 840630499 183056657 53961213 242061172 302301535 553235730 684708356 697572090 661643105 288131566 387321820 721759616 95828923 448077821 882811334 121556873 919408121 425754397 33399807 597848941 240184706 29405527 200923339 885758815 253828944 379386898 61762676 437320877 943258979 555706998 63411722 673098629 653477135 231709348 935275831 176931241 308382624 19165368 220797416 305102665 181626196 268580355 696534387 750354893 911734810 148882042 731084390 509509881 187770376 709320361 135273503 942995089 602128440 347294186 95935293 295722879 9976 701800118 905856559 632338383 94266 913700589 356112232 858886595 663689383 166666993 137991692 903819360 399922765 950880797 705375027 750940943 976726038 76073982 62628103 985240415 11798364 896163554 335600245 892019939 881553274 164064747 625278377 819141675 168382870 443277678 514386394 995591950 367943373 944207681 144643879 177448181 783913048 750278464 51892289 13642557 825160483 431323956 767925499 736799831 565157583 33014433 463651214 600418476 253901732 627313717 778340939 488541912 116718321 1041929 142369321 961882176 295252274 348071151 300775333 410785910 132650675 419382933 253176013 346692906 638035639 699043888 868096679 225970808 420075828 121349898 7692464 187830732 787099301 910241355 591848148 700628406 640579063 409548447 553951365 481431331 818109324 833672377 208310298 462114577 359307312 426321659 160483505 531871135 60554763 557306601 641169401 525590998 690845756 361484410 870485834 716720785 72058361 262452302 211462498 458742103 974037969 295730977 60516076 51672819 841943645 655099621 919726730 82770811 920996193 397817909 226196807 384454179 903451805 821465161 778258849 110797627 7394096 563629290 325706938 866555142 223957022 660706832 795705412 862169060 42071573 187715763 68797607 718021846 435595780 424149156 130397143 164408652 158178202 990219047 784439296 472062153 790475674 823197142 566636422 212230740 282398071 965672894 397240399 730675122 636382262 811157179 272770452 322891527 101518009 493286147 3151528 474593456 38545337 43571728 822409571 763772791 506692250 265414778 440781622 36272085 840523476 385261188 568175789 721292857 88634693 432407127 730286121 8340652 407026944 980643474 534300647 237037659 812234869 441072976 516175456 636309877 567556984 855421348 666589313 689476466 487919470 912056372 688981823 428372168 371466953 806076321 10078209 755821660 274722861 546476271 699409505 59724911 675211306 229084592 887149238 556201465 674489770 918433451 40438145 290776340 639022603 660945800 24774328 917343897 865534512 34656106 614271596 970406034 134038951 736258615 864346655 321203968 74814719 252187136 391573314 142684802 716034259 306186616 82840887 431928165 250559359 783682536 891200290 321848923 472525974 511769877 209689323 590948082 26098086 51652427 671954688 269689314 680437202 348955552 741454075 942682350 660797661 29782814 142182438 173884300 551543885 70563220 46687160 974491059 10487797 770473767 28757856 501354369 817835009 659864070 260777460 142171605 688989525 552175323 351415373 252643894 352890485 489167262 666429333 111790462 899141875 73744875 472723843 352891234 345645960 764704625 623524903 137487242 650440257 781770091 396012425 926477096 517706000 86267523 449010604 796563571 261927025 572056383 258783785 170203315 204374052 573957864 297560794 728210415 482385893 809746345 733348128 83118256 419075852 681212833 181169926 604881141 123124507 322692107 162224493 635661620 342037890 950022105 968650937 104974479 540332788 161072482 195581509 148316955 241497677 213617405 40979013 198235680 371761826 340060491 88226169 739064348 487071694 774360895 287730428 46502783 12938609 80611418 5573708 584382922 423586922 148359628 98977607 302771601 36742080 879858693 985751101 4879471 933085070 981127205 429448730 96481865 607192376 116699653 971758177 594075623 770642992 877083517 761811593 958839093 11290942 227013553 741566224 382096066 345935706 378393575 90992913 477376590 657025922 146457957 756986128 961058593 226940320 377500261 576878476 116199366 926801825 211946856 231388393 307771907 876091017 115507210 584095711 543985422 186835552 91613396 891914056 220565958 178949911 888291077 605785347 745220695 732113595 217693658 442294251 434583786 143460534 627696434 763176751 372550071 863797573 34869696 325826420 950611641 504552609 146030746 227864252 630647998 525247032 624880577 615544709 192845531 209708334 246380211 397580971 648024049 154597019 609815327 165801214 311846921 166448781 368976079 881870769 454934908 637303032 778610948 202943799 965553741 392470038 943843315 669757259 401690333 187888846 607508774 876277890 782288726 115797510 110680956 165384982 357548104 916740530 120545077 811139324 582754315 485909436 983878840 299546900 214996106 650780304 288319069 111751670 487352835 687124561 797784038 184500907 658890524 167744986 866364397 787489239 393659449 118649067 736193674 624717331 768812044 514263580 156221663 450456595 312254934 565673883 634362147 39892799 253190780 785320665 565644928 395668685 146998002 77258604 428595316 558085900 476750683 616944693 272614951 198175776 131801891 360615548 84140827 592120379 12435925 287012056 979285492 558795131 451748549 579748259 936852369 717879926 380495498 981738783 312828278 29024615 133537670 121141339 210807706 657115098 55433430 727485468 239409641 336010071 186154134 694586854 481962663 797745193 369349594 339525793 725258297 855682885 864426830 593601944 719530090 962732465 156924146 549381899 427525540 571610673 971301139 904337061 979585981 696529462 150654535 987364400 219541758 411075950 713584158 823164733 543036955 207942920 267630926 25215594 875436250 812737204 192530507 996281902 287581973 937762572 302277375 656853929 125500191 268235999 26806147 720445722 762948844 848682894 91269014 97594027 291003048 370620020 658961521 168724763 822997651 260831780 399377841 531950479 545024221 80205832 659624676 432832186 267880322 360629694 422332065 996594051 27149663 200323005 188172186 790144626 769053679 818842939 715335925 442613087 951211045 808664672 61759516 906185212 596224882 202517552 324934419 93228907 373574395 243567128 960496218 746574805 361784308 144153871 648365569 187098351 401785049 980115065 663108915 206213382 825253203 629192202 230449176 315983919 426110553 941727847 692698516 670888058 666627879 639578112 671106221 881268101 908360741 592728853 665864191 78779163 896723278 133417671 412762741 720323547 755665892 937440218 377533141 196279630 669597660 571739491 703589206 370604585 117836862 847323251 567892828 389068095 731369381 853364519 578093269 63550540 282686654 949546247 416277516 40612958 763838413 863079465 931741317 761028612 858476625 48361008 470169974 729597668 42609354 58119381 576980986 448487651 402190826 86083105 122543812 166878067 70727562 440298332 708715642 590945319 421226277 248510999 241690072 803470301 152880175 997405450 672972530 222324155 354881216 659246979 265424548 526596631 16133001 570867182 69599089 493696819 717490871 855851445 311096020 732339034 140563371 77144895 192946255 789577076 911060729 408415807 119855489 607107046 235611645 904126984 905834427 853655512 246095153 899447078 843947263 245576107 891670460 249475138 894652735 218916337 633564807 352547834 911074244 466493442 272632628 604411396 744576978 877943523 807594993 372655139 62874726 6955082 710512666 397074085 823151545 561236011 902677142 849865551 858024947 719748611 102885721 543807538 937957499 112019278 359184756 860550110 837298676 940870517 52504074 75533255 823302911 737471119 143660748 67841108 356309339 740720783 888410453 82611560 32486722 169180388 378278741 91969802 975033671 970257191 560601151 527874591 429686693 185231458 690623314 742988788 119037591 426353210 255219164 397396535 531828671 635331764 392932279 747538146 322610239 169501108 789760041 622842996 594386120 609244172 350355751 433607000 873385354 85524754 801978718 278006771 859272164 405738504 856336918 407358547 272315364 8045504 658350568 709911532 414044038 662220311 414285598 263994862 448869209 978811154 304173314 274618996 54682802 482887791 676762701 987175083 334347559 726367156 98756695 127934119 849336206 383185158 959228263 494345235 626773487 388436191 29113426 730262523 510520946 682743046 624152805 594863368 82604125 631080335 718141350 599517450 118815826 155962086 454879848 245834144 268430434 469895039 93068762 650734757 596448485 396013158 306947444 619459722 61803691 212583345 258017421 529187987 811448880 874278775 416780137 127446369 160041801 504914526 44330339 932938500 204528092 663344611 107461708 993493139 384231147 345535947 903341665 715973336 145470423 471140760 126801692 973513996 576001249 35852195 547078503 750569938 521614742 979559416 180033900 235912525 653754807 742468110 870198704 656437321 922159901 316978440 565286261 251017727 854389895 300588426 634691401 317476064 27693452 560133612 639717685 504339922 849273277 188510486 71698440 242065598 566133071 83941385 837909481 110888071 718747826 931913396 68300253 781157856 466910906 355216866 28065779 520937465 83018590 50016369 14046282 948563912 297681786 740275490 773614887 3518035 989416547 120115498 961276657 775036291 551362536 940804926 375757254 381658083 697429549 767211034 623577458 782966986 794581878 539927513 612490272 193525347 547626391 95153317 234601370 167438731 961102595 987273280 753852366 820569205 653365729 275909121 5180455 587089088 995792644 588756721 274050373 163272204 216500491 163444059 253054716 338818190 927600069 795209551 267001101 374964721 431922610 406612564 697090101 330405455 734334417 753196870 561809987 34874069 589471333 806655230 372689807 132417945 628869618 106927583 451203126 555871458 473076756 461807799 89750406 269308246 804831638 242459791 498203620 817056913 11430139 516765811 360884159 779946074 163449533 678921912 999897448 540174012 753986453 275959784 588570863 639415327 89541360 596628851 707484562 236420120 592649718 820907056 82175265 879981116 581646641 818794155 726040626 568164548 921173095 315578634 558592255 408494338 977578285 69340012 1284241 242737246 688678271 509589209 521648963 77128726 730616045 797409428 446875053 7244674 776489821 61401548 3326124 887572805 471454306 174366803 275388755 9120586 716243035 218337692 459870207 961950903 601694779 7588122 900891941 796501170 623229182 628042366 90959568 61100500 108945479 738934681 282496754 332015959 621654280 436246362 423392917 254390070 349199661 819547859 87866083 451554190 883354543 132439174 713109006 417627197 747971909 3182799 292699935 534302213 941859581 391601570 635569300 298900260 203282519 234635115 846110143 471026252 958578414 340425595 640236831 952995509 166383587 520303182 614198136 531361536 607591183 46408681 348478346 260205451 944031935 436562865 383132835 540314190 152711765 526714171 123405426 159502329 744098960 559151357 632030984 155114965 310851389 718240912 700974085 753397325 204545486 707986928 919633988 353851339 694684099 658571176 755691067 476157971 547064602 237527624 486617062 916975496 933232354 674370057 604585525 640904226 283418939 792267800 987330280 136756995 265110189 648893306 94417827 53258073 353011530 381643781 601042878 295875398 30117537 38086417 489202388 311291089 224388319 463278065 352022615 649006218 879209591 806273138 336026688 899493418 912010001 165504436 944752167 704106193 42410340 821301431 422410080 43590992 824728321 713828985 364300456 504605227 75929896 127133133 318554932 102414763 99312295 369402972 962063328 135390416 669825996 227900436 804708354 210300687 668676878 646675764 677495573 76075521 326690301 74256685 351957723 741982410 988142960 888533504 71849499 296922847 339266825 211570917 137220975 327502859 350449265 596362329 490952899 11086724 86677915 48947331 834362716 182394220 357033258 850617950 967523283 813728169 438382255 580307083 886265484 52686435 722030517 328882421 465423186 997608351 408624830 754962082 55586020 58075128 994428441 812288000 762995345 561068693 234448234 773707512 505869218 682827521 302892082 872286454 806032092 99853166 598532298 164693893 843267050 942796405 144860334 867965650 394517605 899525280 59947932 600795179 866375508 318900655 416731328 973639722 425829303 578907300 206841473 825287584 794753246 811984059 542729307 875531102 423229615 530358548 970320300 251071805 609066448 240143399 853391334 879265304 975739503 817238241 922181117 138734112 493807844 650985465 797642542 586753391 74623356 51651502 930548785 867690375 293662401 883731190 463710071 308562650 883790391 357159625 527090111 56118013 850686208 106534764 542126259 27663149 418115605 599156803 873498116 465663644 134862394 999585555 658931780 644464433 852409086 945317540 123337688 776583498 450373955 411018837 873338403 681723459 316390040 689794935 514310871 260288463 472817118 248835084 257829584 158966049 882580595 803362468 575713115 651177344 477859287 223350278 406297545 866242486 637511262 792646187 728998731 230617804 876774940 341836260 78535157 195645097 307923025 866013113 999500488 243323514 340559069 35654538 489941383 586041483 297230249 964640179 157312359 975604125 958472652 935620290 888413074 739853656 307814243 773761793 414572094 434266709 877898442 185700542 658964091 489418839 553251290 132272449 245955201 234797765 882704192 154208255 161660063 391340012 786331508 969517657 663080773 671798209 110890873 262858199 132704351 204564845 696327551 918725891 796105099 561271611 777283457 983627486 471227293 967603692 471907261 997237343 897127142 544811699 242195135 930409770 728615881 33313799 681760473 461219922 946969787 832116754 680960116 799428548 77837198 607389015 578764478 723214054 893016409 41910666 934428260 459434762 741162431 552661184 595680090 878734314 97187298 74697542 45972962 504850468 746738180 996610240 490539371 665946498 420812719 244148221 914235748 772901716 906550994 352459524 8832118 44207545 337682388 662683559 289919949 542329715 920131563 391163273 33475517 494179885 432394818 124567054 443890143 198041856 817642905 32478736 675322282 468509296 735888384 146078046 856905756 175727520 179584973 752477927 274684465 979981211 483511596 714898671 204392469 31810472 805258260 501574122 121016506 146229196 657993682 290780521 130907486 336689533 656649603 803328167 756023654 151661544 410224520 734498899 48297557 854335095 319654970 33358346 407989855 428568756 260775685 850024436 674924067 622325688 537630772 691801494 909963915 46529138 140328763 258988631 849835717 756408437 115209319 463556706 987664636 317105532 256758348 687510366 16700671 694495858 757274156 212768223 744844473 988477421 123962261 874111095 230149460 550324478 537241892 823222417 72028695 772988079 328555853 981131363 282404907 136624077 243658789 450484286 48430486 647829460 870977481 343634653 771625697 509000092 146027816 803070454 809927533 576208517 167478699 549006234 237613543 467677037 858104671 848473839 492839173 911173098 910822288 412158022 446794358 469505401 613923123 253807386 433030839 512873451 921557487 929315132 353844543 760715195 253353626 175611169 306703701 465981252 11607738 35117430 843768386 434134451 110650520 267964441 413218896 412427454 334349452 608903960 101673382 921658303 707773632 893148472 558994700 64515794 344755588 403705613 846094783 427171733 491648950 396254958 226769479 93356978 506610791 198544870 863036944 882595024 623573520 480022674 508846374 213396136 183747534 660987037 855322897 885089753 171319284 553797027 80846993 440698522 639143914 58785544 238739877 340549955 247354937 179092232 282660321 361293803 329720133 260713703 45095679 626047359 356441533 201081101 451114213 89345996 795337168 87725995 548659224 287131940 680298277 310236776 699224886 806798612 114050884 870264606 301252517 734290760 97701370 559379245 139007290 320839019 491268272 537047601 630801736 271340407 788470406 509081734 237565995 800608378 401739310 645032785 682105815 947435479 881509790 896478649 120531352 372743486 844133203 654327381 526247889 439882960 595379929 307571508 60075954 291389881 872536246 24892840 390181130 14477104 737309232 445028519 658035095 496173955 718293680 214963024 750156709 329005533 921980207 619925984 899276256 182881630 532634333 274488107 742168316 991261511 221032610 389887396 813777799 323920840 82652058 223315297 809461148 525239957 606305354 236576865 249459459 910858575 948743298 527063151 894888207 268461064 101564865 679621795 480700914 129354795 249055788 364390327 583923999 339678678 819792887 532981964 220593594 791514123 639222087 412515940 352113532 250498583 535027872 734419966 960136123 536517025 241525595 326062503 941611630 27578708 514750783 56659255 505726391 317827748 617270829 624850961 564752523 32361478 933188394 597450127 214490269 897001048 642355441 138782401 65481346 79089547 654527368 47291694 562617981 158242389 936383369 36353979 592545021 701284463 136749402 896552842 827647008 232768156 669713962 532305053 16961393 651083139 621064299 722698786 981169580 938083227 135878192 978205910 33097573 407353617 242701348 877995994 14715029 4703475 565197003 541019099 255454376 54587904 821817211 650984662 499697426 819790866 559378014 88232919 266562993 39539225 966403410 155921202 191360873 845782888 837323086 50475617 206327694 4323026 292564311 139230899 598101048 209056883 698458615 539682089 806593783 620877156 476458293 296537481 401774340 502689787 524937923 465796916 204734281 930335235 915799243 219502985 503513020 445094447 460681383 549668485 180894117 36488351 283442658 387872753 684458877 7831206 341764031 668043033 110202171 525362134 810599088 984560315 565339201 500988085 2393222 859349635 53908498 6277616 18959872 408186267 582219778 627429697 913527558 556890005 892891015 501077155 809044945 740354944 529718247 555713746 938616018 547712968 873959741 825786105 592971973 570930884 824081082 283463245 368033745 705260783 821422163 873393180 575855366 87907653 219879282 276942957 301303723 8435137 808367399 76148246 295951681 956896924 691577779 176892166 167178493 484594944 727075464 322534505 680568752 643626842 460856680 366869378 108934460 528302236 603454723 179444272 914753108 289611520 987175517 144026585 263690148 725233806 654782321 299405013 51563868 304592141 104803312 955667698 887054413 909158358 574886547 594063491 704042960 986048587 431858326 226852017 501442134 640949198 105632196 123176010 821318114 397635844 475919813 900267786 756399850 126610232 83255616 989257136 970976207 226932582 137076172 357410898 142526228 775608147 695158266 616909073 81611837 503449263 293307387 694169703 739111206 375837282 305783343 995111633 630349393 135869100 409020808 390357670 105835070 290455631 273834489 819664585 717108158 556682640 581128411 596086285 643770872 78584252 922070742 479912055 917305061 314219284 975839380 855604434 976614698 918100585 108106265 191912659 486794113 707386110 625232770 847750270 98966027 990098572 300150386 353371465 591459502 147999861 659105851 724464762 158656639 568641604 722667122 720507155 26241052 744417084 313966512 386661579 944712574 730842502 42508962 370567372 599165804 816499676 351638412 974540520 318658687 45184212 949252407 252379599 539958226 26417940 464424033 189526511 137255989 182165210 235397808 616261332 174541620 721717243 162888575 867308876 629748875 637500932 235844267 31389116 390815081 159841408 670414796 821948887 561786312 551965254 670022265 716194189 259388540 995275229 193231590 971022561 520742306 107082458 335624090 247884815 801859979 181018578 210935889 644731005 536506797 822113560 954200719 630155860 602632849 525253560 930672575 589111082 458539452 23174920 354938336 273624242 134312807 568481433 233363222 24205156 585057380 489311339 571795375 128028185 601271867 771149986 417737641 179528061 130645927 891228670 871306046 486676684 229592247 749778955 927735891 991070619 892223487 13281668 637488670 737881391 621642945 565638719 88907332 312193990 839139078 710519083 251261470 868152991 331842233 267757635 20790554 451549451 551536831 728608821 586314703 19672777 918575875 921323349 687222449 110792858 398973779 883370654 609362484 542985739 588726201 436680740 611483586 570190886 265747459 720994762 155805999 538164648 503153189 792529824 197247253 640705263 948774916 767388218 200047599 495387751 58281186 273650307 269033168 190233010 234029906 116057987 883628141 457818080 868593002 235210891 459272248 372704825 492026511 389530191 4426502 348262742 394996857 429127769 275997729 141577475 129827778 645540642 246744830 185818914 136309468 587920837 169145992 48212236 611503079 299312921 76736705 948770115 662833595 827390201 403429082 415918731 70958307 833768069 889332163 532554790 85335918 252522702 366753124 287065928 520478610 658274523 257244781 695976178 908835148 635472758 156811255 217578991 235677889 39785488 223785230 679088268 653933428 885114303 530184113 818900797 537310342 632429488 243935209 808016834 961864449 258709143 336653287 101659663 241563906 43695406 530999478 757982767 627657085 555794517 176988711 945991367 843849058 837238316 931711510 934132676 271683548 954121405 416776852 149586193 573873546 562345475 936304456 279439486 423245000 377724541 879054946 290278561 173227270 867978528 356070560 84895329 496395349 550424094 630298901 342397152 971983357 438313484 928842852 842492528 770644711 980731339 538863449 851947947 909347064 524663910 137756605 273723989 991662721 272380417 812238527 51272289 720161394 208851394 311952260 31982747 52859772 274759151 851062873 103078104 258144872 578737145 113450060 245330252 583718891 640239768 728445305 434529068 387965331 73110110 252468014 719886379 852673499 104625502 991214803 149436510 197679628 379439708 155653840 554793964 593363070 57803654 752011977 837764929 971369514 294375872 811555309 881291175 876315989 424334959 377146537 720592142 395319653 21401842 927054806 720978875 571589210 607018922 681796372 647234371 4302322 860143002 861653852 50345495 407041516 720140051 825143249 903082479 12071983 792975415 884459370 8984728 119049881 811101807 531910510 94101639 612727860 582527192 624449692 257326340 136575029 9530034 448185565 662608893 454134096 920808389 568539394 60242507 779121495 46322749 979547607 243894623 140040786 424278733 200965804 765934257 368775333 564030809 11852994 617208246 998384879 410069634 277268312 271406896 950399983 481245846 903088429 996616910 312408303 983017005 418684562 219933613 954813009 185276207 462520512 724963493 641879569 116358665 25529646 592587330 326857019 945021383 69514313 25265694 423901635 886464 281457959 127761738 963953731 897094803 153806865 616263930 384178281 896395002 503619192 550504267 661590576 768499122 538157729 906011846 145502231 713976349 669551576 521668983 572158230 198779373 193355223 85222904 90922181 880609335 133112780 613840658 173960732 952372533 90648158 629773142 857195455 637545202 892333547 402094836 359252623 327763789 547915823 442580671 449846210 845643849 536221631 152518145 954137172 393835790 157903139 433570446 139184562 986379304 964753851 750747787 507427529 996229470 506971142 605136359 650757903 653458424 644186599 620827277 482552722 581268430 270507603 73776212 478341385 736131549 444662868 89884475 376838786 154630229 241273712 979538341 947417285 305835940 952497690 569382483 427322216 161468492 751824703 566188774 44999023 590984770 882080225 910673069 330479294 989099260 416745148 202872114 589260312 313639944 79756500 662230524 354884547 624543490 683510624 992362291 425885938 120017319 439163416 128450737 548466632 506710896 903364060 923032989 827126618 234415943 628940883 473503851 663833023 842040852 106848912 486550846 461670808 474162748 862795140 406637558 362054529 188545647 346266640 983046277 311119486 65961659 242861765 742702452 392301770 105011903 742551111 23710233 202287529 55699077 749894034 901831318 177902899 792234679 15252612 489192178 552552107 641378101 506678775 590449962 372743967 493823556 45856614 394603630 847542876 760377612 565988345 954546525 319521498 51841423 941125327 185763799 493251148 690912181 748556108 374569816 438340463 832010676 30717301 987430392 120157994 663405312 290805262 192515246 378136259 318436572 664388272 398239401 817389860 240070943 814014909 410445634 679606961 970210966 155390354 875323793 773869476 367386338 605357973 561966249 901410718 283057033 635846488 28426530 984094166 933962734 782584837 975739778 283258436 681398530 415634165 566285397 301315296 74433130 269120512 160502892 890753483 256638733 605190666 199746932 999857565 111453053 273382439 569668922 806058436 350253384 386876476 191239555 375772863 436650360 474500955 182833154 90473833 485234656 846076777 705373063 342921919 687541538 11811976 970642380 837644867 852819902 859371198 437336642 243190984 398573552 876743289 832619240 3138870 865316736 414911534 231384945 133908889 608616870 178472807 499425122 86978977 300101576 686941723 53204660 345883071 217295107 438929621 666343149 35446025 269414871 388021175 70270459 233910252 508487310 662093401 7377 326572723 375992088 774208408 801713149 537616731 478409383 556684067 448751851 43088640 70570863 849039148 144521208 74163863 118058869 415520865 354436758 751595252 221584883 593474875 425920312 811444476 566883044 577932692 869631946 230501095 542364342 51237350 571030239 285091375 443830348 60839297 154027551 929439429 787882034 465139684 627914210 594674655 834896679 151018145 415091491 39398446 282559808 677555988 188718449 28618561 784301149 737934444 725750620 35268508 342616605 518243244 10006556 743274888 189112989 548732754 999573294 801292856 326237022 25563798 203118359 594926449 566573497 979638911 648758635 424201514 212499490 633548128 906626625 932681590 586845181 603806581 923415580 183080092 602772283 497886350 953964950 762430843 407724063 744304771 128774195 535970239 882115129 29055552 414679553 337812849 105900050 992542834 434138123 279267041 779579899 311701636 930584898 302706577 186312653 122511602 611018033 436729735 969731587 900131530 414073207 250917956 843256875 770881519 464944391 819944361 122427415 153840995 680893204 113240333 476031307 987106374 603672973 266516377 227149204 768200557 383902847 462871349 527836281 831390762 303080922 212436019 111821610 588848558 667215048 21538498 173142515 318056280 949961938 51309435 205622482 549579184 917748565 24891666 687015250 651915374 910077829 908325278 850254677 453807028 621959059 236554009 666833834 71934471 760030801 815251398 363297847 308183025 922516215 327276690 111612583 102651882 800201716 248288470 812718998 174015003 482348461 74223858 599663662 680092376 374172309 619773727 785994636 286204273 298140289 47835182 576681558 121784865 566282940 804070209 296734709 566782162 368138990 447377304 865717451 946574722 137395453 511048700 656368993 912071037 245890166 806256078 974903832 486226891 316506153 393474285 864395542 379129492 464152048 478347246 181100550 676188614 800095192 275711300 85966435 292085601 368396789 787744110 598913608 197361239 929241496 688172874 624734628 243653191 71113217 955646158 813555392 674993648 705228582 207316511 310539109 318074116 17909949 702304944 12216470 381512166 975650500 914228829 521457053 461606217 173926894 866416690 747076671 248476586 745337773 682309330 534308649 818305802 181000550 417801744 72696286 851652619 559201520 764524313 386984650 743531232 320323343 292484346 205851292 55281208 351815668 271190497 10878672 542998902 525205104 524984897 744972389 881906177 624049620 840476884 325740159 897263600 719463588 332110788 956701559 635465365 30566509 486263255 797263690 707229227 37369786 509230213 676044085 706497170 809105545 184646619 859048313 879246777 753526347 437406804 179992761 244954535 897157549 332425109 944252988 589417774 896863947 536159088 247023365 733137484 837272631 317708564 314699212 977628919 311462533 129596258 992169091 506558198 851648256 721907049 315356917 250750867 850389875 450190598 742095595 129775682 675625989 591358880 374725289 488131300 441222153 58319631 436112551 384747734 560392095 142164580 690886119 53732316 189567964 397939880 379670198 353965078 890736907 383724855 177102227 795046783 462123591 344401695 187495753 350343298 544828708 927048662 699909145 479625456 375509100 821953262 485624233 400659677 771495649 126658255 376035252 786960215 251528630 500496136 960005949 361366361 20493586 222478826 505163355 792515754 264100485 985976110 510824182 751166335 497052812 893425279 196307960 856811078 688184356 883000113 365758811 911405421 878489915 477060106 638060876 902192804 800824035 516448307 460940851 30689216 295092857 911449242 866744014 311818454 959968154 911051158 909832389 295572496 24917412 874124432 710121143 591078714 529972150 241526140 363188178 278181604 76342248 6026933 336567572 174547984 847686449 116025883 401104966 66218468 378321752 344807212 299908338 395127509 212609551 397030677 448037231 330590842 89863640 204057058 243777839 879377111 223801926 831179923 113568449 45664055 568157017 640166365 570910687 854090258 471128337 191661416 328428192 246931804 700971896 35460757 745691030 651808113 708764292 549924824 751133606 563580581 939037549 24698500 379819970 562928999 940126066 3430022 531080200 191385752 70638951 163860148 692174240 982426711 677630885 558692640 474910213 564421009 679379625 151443254 124935752 511706118 328865638 462166078 953498988 858322412 584763209 41427957 240643983 187073822 971764107 140380783 477348945 46142069 753632313 559687988 195874587 314912555 602559546 462882562 223478062 682395418 845923034 847244224 829951424 81917253 937411389 564477238 445180424 546823463 874492309 903853296 503232649 873105935 123509467 951359121 942038005 12554256 297126595 14467058 453689209 187635751 395656127 491783586 86521936 637033638 799611132 469521192 549158092 466208356 526357057 675338259 779168602 42916223 57984601 55398786 40965262 879404357 436720188 200581964 635629203 84371899 770135548 33402855 985606422 984280348 347869549 244660281 996576181 87842059 270941900 750563074 903227332 756038609 928948575 798364579 591588852 800381074 598331354 291179656 842753118 568493962 984122567 260925002 300855181 327230850 696395464 393043190 498129834 859223690 190459452 493421586 239554434 115850346 740347282 763438992 879489681 178724895 517100707 553030529 47273003 181246431 680040806 195941168 424177032 636248195 149988938 120387818 626412674 117779884 543851922 514388825 12591891 305045295 704978463 454494241 694904097 897042034 655338168 706945177 923704140 658285587 670109410 734319867 96131779 517838529 725552974 524800421 207245670 388891942 215414661 275697424 18498191 290831304 505946176 203588411 385060144 244874004 530117297 349258804 185535352 179497472 792822821 614503397 896680949 182311004 960223984 331611509 438265548 902231010 694724999 94100512 299467835 574790771 151042450 883076638 295615329 808132016 147087484 574673552 654903782 336710090 138668240 308691071 111196514 891185682 956886508 778537665 706437059 243621851 314400259 329032052 244679946 382764686 468042506 124370218 24682808 798378743 834934995 302562445 434969472 138634686 760689032 274714013 750320261 335422549 868473059 709130982 477249645 108840396 811975190 712162795 935461249 294030060 288549231 739929254 808404404 955147875 593883588 443175055 968276850 697964302 788688083 275815704 192783863 590115358 369816437 349128114 595762028 479443093 637346125 200219166 462414659 197453712 961185951 501934166 945235063 60456253 453815025 452927896 663377002 25261789 840065390 358310389 631180903 951322281 896941613 808567650 106956726 126604036 351569455 769803702 360565799 335491349 796639072 876498386 301350537 810668082 978114925 954857243 700834963 759510985 367205820 469492184 632929050 789480937 509764919 366150818 409081111 23815738 380073913 643942067 859144027 750650330 23838783 857662224 264298886 371933540 427371036 185051975 314388579 36808080 413943476 713479481 10889871 90684348 494164539 924514808 773991533 54017288 644052483 209972494 830531191 915852303 280844924 345413134 202673799 309332934 440640932 301621270 617034771 403775995 444946247 444124213 188983305 582166350 804357041 53994365 165828091 204173235 45086308 706469520 570573487 908108918 739344972 349969508 645020376 936643200 375336564 300900321 602025080 385726916 736381315 604308396 822875716 643924759 381213072 485726398 498948777 494790168 689758769 34617637 48578509 873533447 256729827 663143857 832484028 680813861 47869530 982792382 296577783 10515871 472449166 374097392 923488871 912691204 339970302 359549655 185447252 16515667 848675928 336579149 883054781 972517118 187347724 294954150 247257483 17182378 714170434 60168105 634219417 433508032 259006627 719676018 380049919 306899481 996345689 498558046 805216851 927823616 409823596 809065931 392235638 167570034 549155870 951018090 140139446 184200087 803977553 588432266 980225442 576426721 73037780 153197545 295384436 246855140 116195481 513464289 897584502 457139091 701351215 117494507 556870985 436050526 991973601 462982830 630385301 401419649 238380245 457543763 112180758 918135492 553464764 738105493 781263581 62171184 743635010 785915010 673532388 666670409 522515774 672400036 692557629 461672115 288095622 593182611 90622005 333961018 136214774 788135781 606323367 961462076 56242714 210745019 384357405 171133885 806646580 163125112 941671334 407472377 598324899 351489648 903279893 185660700 578358126 837637524 332851659 230637965 801889673 87187491 322717157 496967369 135522417 208460685 963376965 272124028 926276694 778647307 578746472 4280159 43783032 778202867 957460909 475320025 975890138 736073859 278504726 478026848 563496748 370952222 752274339 684039567 25190733 791337224 352099815 73076994 560350522 634396586 89979440 247565257 895034419 22191917 494949480 802719583 934614442 860764716 944634374 735498619 822585886 868479503 40178679 781328161 604405073 626271491 480803375 81847552 860975148 75462418 908046786 636142300 912411154 814451694 648282669 422324885 260129408 814271289 6409393 575040226 144228405 323247243 50820116 542701039 426368551 993705000 397848189 784266119 708066715 944696994 324246568 237850551 580146210 504691204 213090403 886086884 832220494 167897820 187252802 397942117 147268751 308087006 991899657 449640804 111021254 642322808 538629608 193934968 412767336 660182730 645920326 504143107 306776355 572573357 680068897 202799069 902821234 102128421 639275304 745545021 903998438 450098952 995267375 647642738 574735050 136864636 687380650 398328250 344091658 71558230 229314786 715043982 905140114 948872977 641942484 537524619 271553179 738847583 379146311 145420226 674085141 143687105 946417027 487457986 390622665 674439466 964103995 483459376 464960224 327373324 304714478 913543923 116128428 347329214 113765602 797369686 597233297 98119195 939538876 69907384 812100669 35250334 548832213 75906358 191092756 4721587 226963396 595601381 850351658 347940197 471660612 640439376 419231975 563333757 52105425 172635016 152261567 182871399 896964605 639284301 47772221 13781369 608392071 890410384 594325089 127488097 149573125 499390132 284946901 326609601 552607457 630136564 104390090 958320699 193718171 410809099 203102393 252148494 961802995 656430637 21574007 438262246 669931135 89380722 453403695 101344068 103025545 644863128 349237528 961107382 911456938 903712233 462332316 814788178 101280652 946572736 885327796 668151590 267546702 16141946 357383269 248523935 784694611 653386985 64284689 117901663 542174215 160355530 142724854 484332164 322650463 75731575 183351293 37436787 895955869 797514659 322019654 112661304 513913871 781542145 51354533 729618406 322461708 99074329 449755700 878591246 998139054 850234500 906426751 524885271 63917299 838411195 270758970 784057959 665316409 599151655 582091214 798750469 804899880 437309155 944744704 283181385 988027625 697811377 718009302 155318528 766812511 725447068 779694215 210583533 339494967 925122401 392016140 148469496 768202781 487331928 144706841 78273175 373123221 787639756 245254890 433754434 616735964 785250233 614181779 569301119 812982277 832580124 55480960 67639005 21960902 835547779 316955178 82230449 789944025 775145183 368629390 267880619 714133817 386733803 576018014 1885809 268529251 85059938 328410422 288862226 428376482 637566309 614991492 343393688 877754446 850551325 20225019 877875803 350597325 511486687 99615355 570422649 117462491 633717953 715614963 89501200 853070996 781436118 762657027 175984302 749199826 911187654 210412681 268429233 290303772 348955501 74704791 20702387 362354179 267830170 113922206 785681792 528504465 368835464 221948861 674706384 427308599 277165253 377440325 516836241 532492747 974651161 953597702 59018700 39937562 353806024 47753248 3376446 177801937 281211971 112536825 952235538 927404558 712117407 577008441 746682534 393241626 885206917 416106663 275122188 880490633 9279622 859781425 826484594 499075894 628176294 694212336 28913031 988615232 511888111 685498532 746503870 569435518 240954098 957393647 159539089 159323019 350415993 404997581 677631863 23313989 310557940 174532314 515604455 407634576 812007320 311038155 241710560 931826234 934155835 410981524 440496233 115868023 309822023 774809836 12218065 648510744 647048793 737630295 145419444 990252123 710522234 777946586 974356313 338910150 849127477 821796573 309964230 318243336 525117172 981873398 180278478 744466500 280630931 83057457 73615885 193779774 683147886 878455876 920185832 502650099 139481657 575700213 173709160 159321656 935579521 86261341 973542956 446772282 351060651 493345692 884940324 922188879 912122579 840504981 893037371 230085331 572867605 897075680 735555855 262110806 542060243 808320969 53167710 729300718 728700922 979392371 831193277 879178944 616216353 167238201 486423781 211393451 164189062 789310538 712172193 97762595 486604510 836283384 737549253 41678358 156976411 96499578 433657548 8390609 273083042 382955920 846745741 58918509 613478918 124148089 931679503 430719689 573898224 400044433 522791717 633184741 772592421 807996323 322752568 733889590 742187275 68717246 427330613 451449276 110205512 607430493 392340830 978232923 429394499 66005322 888147680 735654929 430555837 953525903 324622779 131590722 25401552 725835404 210560287 379102681 97665253 781822011 732785670 138427761 783638785 157138789 576012469 303762596 452810766 57702327 462910756 617822395 251968591 807722324 986867559 284604167 139611770 23252571 61111357 605809322 79950306 897163557 725548248 159740948 922715110 859215041 96975872 650142793 432979498 251608115 201994268 218647769 284018617 101552038 414736077 714366345 726220821 331537461 627068229 115018639 550938815 241625659 662833762 631880596 483812786 721462108 399253721 683150522 950824489 307954217 803737271 73678938 368274306 989010120 47724126 263542745 845584875 228567569 245510326 339169486 76732821 953368645 871686638 498213565 794702200 726805662 902240760 165113410 863858762 537735260 959724184 323076397 744790270 117543666 97934697 856807061 684174736 79463281 413957059 230217404 999787314 182779013 822928925 383926929 157299750 155476785 624233655 740533447 292477481 769183234 898956486 78581884 483127921 513102964 369579359 373236521 160890609 150522526 224986534 415529359 926421281 293599538 69584881 575260036 292773710 547312853 829458944 637462069 575627215 140074264 639001999 906631637 559229683 899473152 3910987 958428975 516482634 535978235 477218520 759668190 700837769 820428522 88416969 141592097 58907595 551588134 748473669 915527535 423005457 705272547 557289175 491811686 843050929 179713582 693165473 421846877 359990067 510494661 263380316 308159904 117623343 916836198 244080870 505697981 173822345 913782029 814803174 435668449 288340395 350513433 877231973 575790498 486073406 73286807 790632358 838395157 72899958 574592338 168776149 86540581 429393809 224692636 633698361 985682550 180888300 209685653 114243766 533913478 657140764 876025388 946528833 466148794 188225496 806270536 235125917 674421399 143702797 941036602 554601623 251245142 911349487 616849374 819157876 290282827 407343092 140640916 465185003 100265371 658671009 709971682 584992206 83603241 670245530 39204409 29419863 630612643 339896095 892150654 298081127 180139080 582889859 332625024 320815389 577694151 793669411 681637245 896871725 883592059 121088775 851219095 761731681 152854698 239460344 147097450 208221114 8041182 162672264 568375371 578542859 365215488 537835171 962504026 975289092 296316827 280321827 395436125 521733329 597370368 788400534 225345136 585446985 242096687 451865075 72495128 745067272 391706423 246162393 991176522 970214295 188716758 380385625 607775228 606462107 72108421 107147905 683585130 76970582 893468524 859451774 433163314 707933756 333178755 680423559 825249238 336511962 399550887 686187361 629017660 714859212 5177874 158259548 909874618 159379204 576961339 146601416 40104044 134924967 263981045 84930131 286246770 254107777 793759698 50730460 674657906 333192573 748452615 308071930 25058983 799894572 856467892 856443772 738236679 464934001 314687586 471415911 993206946 950241274 315238921 886309695 373220154 419410421 593294983 153208686 984823832 193589431 666676218 215458896 459741254 40641730 749040532 996935963 699607754 475544218 356360358 257081625 326406187 799605567 240183249 702806031 872159275 316667054 139674920 415379510 612149849 577140252 780061955 512569527 727577902 946018644 406710470 414030329 501595200 379722941 612289016 498697045 469088178 340655891 6737486 195089125 844256613 945619056 770493995 214584888 666121013 153042248 85045741 829877221 644848958 856733455 47290406 631770514 41452653 169158374 259606737 381923345 977748750 63397203 403043962 615710496 918504110 943045821 23949 110693628 715740528 782930278 669786959 407980516 469569566 619670465 424320326 205976421 63702455 990733220 337994612 154288922 775785969 477639110 807896350 315540485 564829472 402634160 569890006 249807857 166383396 289769681 782901752 519145995 292306440 930316738 34650566 189190634 292375804 157834317 280573834 883564801 988916987 787407062 151156294 58928982 812708879 805074397 650140795 45979267 629750839 793600254 411721185 293900971 363745119 75064080 68582937 554851080 911906480 919693317 813142273 794069252 406493076 440736217 950443352 100491441 48674044 31944197 124610253 624159798 18573370 95278176 695881649 923395452 530642418 732221806 89667151 493257460 788978996 168835010 277122480 157368664 368378555 207913169 651662 910400392 789266168 414821472 56629417 831694036 225841377 131978865 741137946 191742424 367006065 768974819 315855681 707077684 435188928 378778832 27059580 504342109 371935281 372701135 392609279 624762657 359914417 81466077 440134928 952104527 668810870 957634904 722882370 624406147 971672226 170491721 691878739 961187340 621527478 704210117 621255011 624355450 348852123 320518811 722014574 864973815 889800616 510686965 297326163 784785820 244994026 96349921 654530983 365361106 105430474 583905794 666672524 942534808 705417777 977896916 596829912 568130812 730914497 576937933 586219298 217404986 112507003 285491117 104058437 521648244 742978794 1975258 259265684 878041263 397103911 162719099 250349655 140668715 142495041 223743824 747334971 381433559 780642488 730588316 15297013 49683705 565352344 589850954 587169131 409891417 128148214 864357358 701110309 322857483 525189151 776081619 822704380 507268908 169577901 874101039 833596402 269862435 475961197 698721320 528933351 141132381 753963378 797028584 570317955 648495928 461207769 413337371 423461999 705893983 624690906 284433303 384284908 335716905 203294267 654060920 761383414 999124808 918133040 567296978 230399355 92068542 95404180 968599978 921024223 982526184 449444519 467315320 702680609 910571633 816567374 744949874 678020200 995395736 450847348 730705458 779830446 868416616 384809964 892976929 919714478 179991411 942635167 815167756 223752702 712379949 262986642 788861114 417602046 52633688 194664903 117565311 862134796 304406807 820143821 192873747 642416379 884835236 6340375 370042531 36609150 157746488 385624188 841157516 176750329 672793390 286418799 153185542 673205680 965205851 152053855 878355853 513042116 843691765 262799101 53388130 762904737 746894026 892948560 452924618 149238380 53853728 396469750 587210012 758368977 579616270 193227080 150036378 824991972 955127026 524384553 879946816 422433584 712845036 75069617 587742668 346279385 318182863 943563150 902405489 832055840 778037691 741667154 649605947 147085050 486684456 165887847 786950429 702201611 657112533 396257197 370075305 410475927 248260098 596351666 506829031 372644594 320960172 263995925 668830248 674301606 460324828 82784212 732881580 599032447 815940610 918239592 716636531 973650483 347267163 951103355 617797388 433638753 71675634 87110930 451303423 53548540 511421752 518401615 18552204 903777460 220059182 63270355 712303672 422235898 623053780 856704940 96889831 374254662 80194091 425634072 48482200 855693349 928117614 95562294 351005567 80166620 993293212 783034226 52157627 500064723 71564051 684446358 778738034 357133911 777067905 312877200 546896006 676744038 431717855 620405717 399311437 444805635 468865934 459621249 825334302 162463505 211622124 922109759 628519524 302388772 828948168 979140835 881525869 682046655 959525886 512043824 959103571 702282670 659101271 479586539 88255630 819249272 423587907 71272528 609959770 141112201 760636108 489054495 940460666 601149440 878338902 251319007 456077156 269158474 931727623 659984029 14672838 366251083 884357029 593752373 339102206 843142047 134605134 742587996 383491433 137241638 161040627 634705718 196464060 991198022 280572623 864331721 138833720 105934774 984617903 377262990 609404464 217335391 710546316 282930784 730341942 88326038 140788793 537180255 681459018 661356600 671715631 497134898 284719140 451790176 488395018 118924289 360206556 551815827 268840066 281503777 460011403 172294004 562177132 97267874 967028143 261720570 5289819 555026419 752510297 243673188 48026135 606710246 187041117 235379237 243822538 799384934 802034050 885809625 531683440 901785612 215678806 779622523 150176959 214499699 562165184 871091945 581072949 364969813 47674681 248474811 419160867 281785372 647174346 285628161 19912605 164564068 595108816 177276026 21243418 782935967 363524439 498793896 22943842 361400221 459914956 991078776 290762440 66368444 498907669 780887596 96708956 336103880 511692088 96224440 632842719 197207794 608128956 110780247 539920384 470284583 248901028 19692782 428937513 650802925 449156249 526743304 352037137 175643533 462717832 356224647 878455635 948406168 20160879 530180231 824786286 738714213 12096070 252445481 811817507 208091780 163729717 409534224 544108337 65799060 856516050 618635797 215225225 889239210 880608291 272586870 268739354 11683268 814573880 832256726 152431583 406751149 288881129 346988283 920145703 598099260 6838217 849345941 809137750 772466620 863527219 764903566 496985761 161591953 478853794 566660786 476196332 540342732 676616756 877775088 336355310 261555515 304324019 44063073 35463827 988491523 401694013 422376841 734652578 591148425 117506428 893225953 781456913 360395116 317754081 330720909 678416951 673460396 436001778 270683971 938050259 242159180 738759098 498559071 257996530 249633333 434337797 888610725 41557550 735288102 648777438 806479076 234923624 975639024 675847435 99278815 271459926 563186304 481671537 860956538 4213174 638555810 850939155 748418393 356456851 338898298 967646750 387485136 445603850 321815630 845689725 41439426 112390173 465754426 778158344 822557868 321886654 586148151 726115016 116530080 387182994 815522216 905919623 370073263 269213793 438902440 295933522 418054274 761127484 645012528 756207618 243433849 89433580 888388814 283540278 770642312 924126125 530253314 739538936 116424209 827414247 867195095 75185740 244791618 107883190 196591992 291039963 434571338 386377315 202516880 569187907 150504083 764439657 839361731 745692839 365443758 511356422 750037339 527126570 343625397 512415109 994826822 945150010 662368974 578992783 977481618 979861875 848744509 914762889 498019588 387576609 420657423 78177070 809321911 686340295 50343820 517618363 43012756 626668429 876597654 884678023 985971330 519601409 475342311 256267090 999754696 1228308 106460673 127801303 424635449 168927933 906208358 738673444 410735809 35129941 548536725 366406713 708316989 316934699 198985451 194173785 358158913 23567549 785264624 656755970 780270812 164956342 199825223 318757641 110233807 314729748 153156748 515873661 561268770 565758653 836445709 856614779 251172247 892783789 339876977 707658400 615685648 500678533 239497406 283454577 25776495 519046117 299447559 780749916 544334069 622250684 95039419 769625419 500851945 426367245 247737050 683106980 690476997 983138493 829281185 39176227 180500209 602033193 494223843 83107864 976083806 980330957 127857057 609690976 602928723 464101600 252326884 160856783 81113284 410486641 446890922 876573637 192456940 429455754 913407446 448441021 505939574 443713714 333575498 746150713 610915481 969457547 42238250 820711369 428429618 969300726 156468894 767928084 311520856 491872414 375856646 971805600 728400390 810598430 900686558 632471520 38995103 498267948 96416144 602571355 59652918 453987777 282575510 236311011 709325046 361787238 827590140 107530784 21983456 454959301 367193349 773962507 358976646 47216017 467367900 933672430 846079042 810185908 526600193 277615232 700835330 869265918 518216617 371033400 887964738 190149878 952400215 287692595 680148760 690257326 370040903 546689053 35131938 926014814 677698914 139647487 652926820 810375685 512774473 543798694 762723249 609165761 456869075 177219377 354579897 128711888 969563660 533361787 953172978 691272904 334730134 218983356 373167676 839072975 194134256 239164634 749810578 982469521 436713477 755904291 56052023 742619316 463740688 856310974 984680033 612673882 795224910 193791612 913212242 699959282 213338872 195325799 564207611 466300681 886885330 321605012 933263100 731087664 984630532 879326396 31572346 797531092 909791835 153701974 846300008 657115561 682836664 834393087 235747177 957787716 467633486 812753430 553646347 58485567 234281159 109054842 402203098 863776952 996706192 663353842 661494101 894351839 301721020 372185009 72720381 992709873 976714032 299045698 468377937 960490507 251442307 734661367 948523708 734750400 631459804 844892224 321071706 685831764 926637139 166226885 371211331 878417861 209996340 300806164 12797860 785064208 747619601 132288217 966439753 940182106 88760951 960090973 858402980 17717954 951376170 103181994 504898309 999797634 129388905 524297390 631200657 810871158 746430027 548623006 262814456 17892461 618486619 591394823 512055803 901753184 427377257 236007400 403606402 653224596 270205560 413150199 734871744 817599601 736574807 20408607 170231936 742849103 899148287 991318229 544513151 564341204 128509788 507759527 275541610 489670886 179865165 207121811 548666147 183042184 337492821 655813624 206421439 331797779 111052769 831380153 488847696 198650529 47170949 101497357 902970521 314110820 184177439 648946246 629627844 972944445 958200128 783214328 870083209 163917794 471983498 154040874 59548065 993590194 104916586 70584791 413545223 622880974 906884239 716460516 979282747 392296786 978558252 35415174 174043380 862384780 800781310 122056964 892049884 40153822 822907974 97336805 586748054 814015274 661587378 444697036 11821460 911289084 119231146 801968192 96156412 734705425 694506192 774522905 751718496 200514650 668974094 927105238 918938484 819299774 771472801 631076775 475197852 814214171 863815924 68962251 278070686 619828322 365837884 60845503 595559109 822454614 442778141 679727904 70635222 491888080 875778019 236879197 439400602 734729014 568752836 132884494 744906700 221585186 937790719 72199101 945575549 49352404 890175867 677332744 160886709 63083661 968143545 200510893 113019868 346196452 621196559 812415416 286333284 536642767 163538579 892756714 596764887 5657918 270711804 480283830 369045927 857850146 725314063 937710861 28561882 981105232 477301422 993402086 811149860 664681964 23004026 533222416 546807138 208570956 620811372 928170130 699067133 107980497 152259770 551343555 474921128 180785624 676132520 166072843 522012978 327437219 848464716 438287624 317476504 742378399 678485181 739049579 285313950 954333957 206062554 975582665 298807977 203782243 549456877 915775772 193791888 822185622 522483535 872914609 580587759 696467911 46943117 591536412 683684265 854141947 755629323 854050094 526713079 356611217 335608032 11118004 21769582 248477746 658082943 984767432 263050859 650474206 785012809 306131482 955609654 187464037 51210517 412438949 359988266 828809515 592968097 428963894 640847596 289120366 742306211 536676514 603370428 632524299 617098971 811442536 462750055 906332498 927174446 515992790 231134335 180478147 791773543 751148251 126492114 141083949 224219945 323817295 473103828 863840097 111303951 320823315 789969362 810953183 282786696 940294548 586029527 416131520 930324383 462723662 192120825 631300003 971370129 717879709 969674105 687765347 633998024 289933654 330726619 736722709 127217526 266523693 747168366 473172565 565786225 764192278 555519983 992175604 319795218 78570275 418714256 609296246 967648949 593934658 242133614 848129477 145216439 200174729 690670722 257559934 363951726 177651415 983411614 745376783 203197291 680145184 340212595 895197233 196231299 35422284 914410113 877969028 105471866 846530729 737991759 585072871 295059756 24078455 382701216 76235594 945654902 790647108 587227704 215525177 332279401 503301427 238119905 201567666 445526414 288474243 200606233 719990155 547591048 41674168 372099766 163465511 574147861 195249769 65256265 922797865 184260750 963693774 605744625 64173726 125598761 345421798 163791957 805103474 422237631 689327732 958340230 145406298 879740469 281151699 385111809 10416817 38106501 838037904 69802467 705751416 51738428 287058730 5435471 108779338 576721518 270858754 92764254 846499914 971044028 252127748 512914629 168873754 255960955 749886698 922813897 192120671 419640799 625704397 568759123 547352093 195248579 794221247 795308345 704763599 16191902 186083207 831381898 24838326 86543158 796586561 74677792 899074945 169963370 244323056 396512346 670607235 318681494 815188515 235274715 446751207 252768992 918224082 729488391 717222704 488174590 477239751 204742585 590023216 937802398 115987652 405910109 314416716 821604385 426209792 184945104 136694056 275712728 670267274 296570497 50346531 502743602 566065590 672815983 533407894 18518019 312820047 514104186 727147537 51992751 768005255 240804454 154886527 481450679 472525586 50076527 887000932 181179006 160226264 72306374 570586776 406087912 286391448 64179413 677685422 544376224 269149931 774384657 40735523 604559501 653319828 629735574 471861037 224984143 697037100 287053509 169155978 883959763 934026818 545331708 819068478 929852272 587298785 578766123 181147753 77930721 161093026 626948648 968392177 591566427 247307536 478418194 93687372 490080595 311279219 654088258 820518304 510882739 82690053 51962199 310061728 409756479 622390091 147497174 252326124 273318854 529614059 589911131 834157602 443539959 193328616 223839318 138980002 193034118 787518797 448206712 741922690 565410713 169843313 289610348 735056185 928769763 691258808 427103579 696056655 694073530 348335276 640873446 737314008 89718350 173751507 963657691 414811567 823668319 142138543 915105473 873200553 259656633 130091197 494112196 165693900 997763042 790306526 454015267 565939774 147804277 543808682 166344443 916748306 444778818 127311035 978221053 467143025 452351016 851101943 487889219 937637390 153772000 416528471 54890892 104495587 528779715 978142127 38207066 774977512 734679575 407819469 306454448 837956461 536273522 333639043 678293683 260760745 661799723 471217891 946657975 343220153 293489314 716422819 44468602 15073624 723535567 836189043 659803760 114292523 887035760 901480997 575984991 560063118 882651473 446109328 887438871 834290433 836444291 306991341 396892978 241349336 568024851 69059307 825093622 29508787 114201932 216576185 248414344 859393070 191968464 971199092 411413848 385996364 660739678 880351716 76550027 472272910 86008040 280973496 321332678 914583314 417172985 367192842 526829032 157686561 750781646 598944118 456064842 615341254 377022882 286768556 478744319 638189487 698192140 36467430 650301568 45469352 452167142 565253683 728200883 851341957 570234282 971591950 495743662 63410516 485907919 721188728 808864362 417666148 690411993 68192544 320602080 292506206 588337261 897768549 707847410 90093030 908683616 679847446 2903446 916893092 991541500 279883433 255768178 260704979 544071620 264255810 587475049 589956383 929031192 36729473 721539778 137498935 71645120 398706903 738670470 68126025 383402463 376207770 511436022 245629037 266377568 927567276 749658074 836682152 189986790 330306375 185319181 239899706 403019561 781654815 66479509 170794272 501668218 108847382 631054622 715407574 471853726 985969495 734559410 656926215 230386092 397980782 616092033 125046707 405308853 722006592 672862861 132689436 391881721 802773342 249707158 366384428 811326024 685588353 944581510 478930994 246300371 592346380 541910661 181333556 748962297 151568917 770169213 864669123 843039907 626132793 747079501 9076967 989673181 614930725 812575857 922086020 405280276 275849861 71916490 799879626 204259289 918947742 422698228 999256119 140289832 986356502 258062246 446822302 734378109 770607945 861595588 190831638 620511689 886818665 389372784 151027134 233611048 169339598 746699893 991521492 865523256 974844668 49764482 518719322 451439638 536051250 300074586 989411902 242461835 953527539 713573489 988775744 206349667 199962259 37106803 994046225 497391741 315875954 287066637 360225877 187083695 4304526 280397773 739246542 819814048 464166134 468527081 202722650 771301688 16138013 435543319 824468282 407113690 390188405 871392370 305853890 437412719 984405366 230306131 592407928 271756909 61494105 565340053 108365461 920269864 117874230 311733907 807734068 620216375 513844194 819710698 959552635 477180868 69724669 673406516 467998559 212192133 167969304 797743877 884348436 830118689 429204520 105288550 674223577 407129702 859713313 675756285 711619596 763720801 690920735 715681162 356530253 297223400 739445875 768649310 369526758 109037427 688818330 593973340 535370111 265963015 263182999 710670229 558648857 221258498 296319662 365074857 886413854 895671989 400633267 452119833 914886477 306262561 456756548 174241044 594507632 351044459 383919565 268160986 881348483 240594372 124928098 656779644 978837477 334317748 720156189 814835883 748784114 629020981 697456302 489606563 869429931 15085422 565949482 633366551 197540191 148263950 909551129 944021834 353163312 637151278 550374587 824777341 610855954 330348011 13892704 158498102 800173782 121014528 109701275 467796262 306667849 264337485 162554840 400103920 496728237 261955915 665858230 151590642 834879894 823091162 288806634 115273756 347401022 913152351 326589149 877304625 846446965 476313709 722846900 927984428 428956931 501931634 50698211 187640106 934106026 133554957 271682886 67669297 697210652 300653791 635527087 364350288 773888078 227362541 590791963 846109450 710522746 896765449 193210525 641170151 551840987 547559456 373127950 795652853 621025921 229728926 404945051 469020400 981308849 762006483 384405995 554675570 800973177 398020211 755989660 775136151 828408734 904859441 648347400 222604411 459850539 725214300 731261135 79991512 895152958 920450260 919144197 689934926 865587385 954520607 782934972 393377512 174781067 985355753 416910299 647937306 756515794 550152648 986578292 212608144 401954891 969274097 172935895 76689340 779240299 118451682 531131679 335094446 640940206 690536819 112927258 622934128 179150813 711371841 920621716 807728058 219249792 564862769 217936718 150927965 694486551 15195114 492866710 168901635 660921662 378671962 336942633 205414126 56164542 889517645 726759220 628549367 762657629 577205522 956226175 25986427 560064117 951454137 283282032 261177419 687928631 279449125 374138271 136190370 241934589 459981148 416122521 285715588 911149667 855983027 120800741 139384208 189561992 153419625 638307462 635698967 192594961 495127142 451339327 563203565 584162535 842802882 617579954 25317625 679832358 830587584 850266717 275283386 609410195 535405132 331582852 375676982 117525016 771669736 843187208 312107884 860733429 523115620 487696771 912228287 988321735 614465703 955527523 195566775 585867424 531086268 835667653 407727936 813699052 39182294 949460224 970619269 123061735 268382118 413276393 169069706 941012792 323820112 300701585 313376845 838327065 946272276 755151919 427149558 921971673 51935204 325089453 578788832 455299597 24383436 478249433 887054125 460719779 389320278 342241370 587116531 751352427 559376116 599865582 215945669 926661408 126493413 751796718 275934177 350840523 258385365 120906134 107207029 691605105 502321038 34918587 90127388 608590 577139145 592911252 649722489 280608808 447892746 269542555 822311997 733669507 878670644 970582214 240656008 457167593 290716891 256778527 190921615 393662306 912152680 368054184 899059974 617112306 180880221 433852028 500659510 610618404 122236400 19745490 997381429 444532176 153933800 635233103 455738548 769364392 172533040 428037572 439034525 488746203 340429225 522904501 185156469 455675291 767734610 518107134 197532290 923413827 565351431 123231224 991688516 557231727 911471689 556025802 250793779 492105930 857124835 973620372 729476519 13158029 590732417 73606148 716217290 928425560 2413064 860675419 118554207 620127354 729680938 171964882 209521249 179127547 204813934 639217977 356178936 419783685 683226027 581242234 404034457 942183288 180849935 144034724 180331419 511626336 690799109 622960665 687685029 281095802 163051302 588691201 189595590 80669362 94181716 61828215 271678029 367287937 108008725 398507094 124492318 823403899 514509496 982557600 696055722 84310017 406187412 830136098 377460509 30356883 851044347 660405377 256133124 112039081 504546584 561925787 118207744 678441536 344890262 831272589 524885531 267326967 384584869 361692764 893999479 368712746 147695743 393781234 757035136 248324709 475538353 960489709 159820881 409779449 966218604 547602487 606561718 942776332 138480440 586160400 650876051 327662032 357701411 631031422 357092185 947745502 489270332 45289719 708778176 529209257 258733892 914843725 755102010 201897347 562326212 97120676 587915540 711596363 748938530 589771169 892735767 940260077 398565056 510669209 570682607 571128337 26191972 266860519 326547601 53382253 988432224 884868979 390128333 488411182 660844148 430627659 725246356 308801769 999882198 588526794 438983486 614038063 178823455 879449243 926548258 523955048 158526384 533873446 496235358 571243490 899880182 79566651 168391877 932551007 66021575 832083612 352690031 221274197 613947201 676985084 9955611 42954545 971793799 398294193 561244871 654283864 909919427 563296499 866478650 524030710 756036598 748063034 680770515 537271301 565620665 990321918 289606722 763097328 58192626 2159041 245510099 188163679 266054299 601603739 469618900 76525789 111534245 143369465 522186941 242490699 988324940 55329723 715303827 795599080 104004623 408183987 252322279 874224485 377195272 979086048 793109460 974106080 258691393 65392187 141074269 835116781 818327047 852325286 652589208 247569186 350241083 375541060 557580552 485928048 527699267 249095936 502395695 375834815 523551564 406414652 741582390 623506908 117174774 751413389 412130360 31579215 944909290 609287600 489807218 319480116 376018784 668554339 766752562 283841510 41911978 411491602 579917303 259159532 418251450 58375545 783834877 43488704 265865881 589342028 150586637 792813452 699253262 81475764 445357641 637769001 176748140 490597442 574505141 962767052 249852274 823955375 286425383 380694210 480017730 509654947 737883356 841224410 647187319 860473591 250794963 396350263 690909293 81296798 858608713 147508670 59600174 447104985 35216020 135273928 355802355 511215404 262523286 153163173 1616895 767244648 977015280 109393574 819027596 906272970 31750057 877824998 471688236 350436808 247567351 183747661 921696967 686040487 949554896 736673920 703149258 580591842 943623668 93197245 959462962 833314136 623445746 100788019 360766033 383585145 381626736 362898267 487781141 481676542 199481725 912102671 54978032 884156961 725454656 748755746 109500980 154172296 179934805 14698574 945371160 643786147 423204312 590387183 485168471 735834326 148252103 989642833 923268236 349213947 518872183 242649044 274781991 924390063 870785013 660179879 640312660 825895282 836798768 200041497 117389645 278222018 104880069 701023208 62893439 882361335 521893219 750223149 474188415 232944770 343047537 266490001 110097691 883753421 828419401 322189354 234130459 745246188 10821837 957158932 34266988 570503217 768947012 452157792 863386637 800088002 284714362 47256475 824788549 732077535 42172119 289205793 790815656 941821717 774620446 773609642 501978559 326832534 416022500 584420065 524078801 442349873 305907686 784550206 630517236 877443823 674305675 200204983 126639004 380490778 71701760 591594889 617848654 606968079 6057490 108939643 135445739 475951273 740652175 945734441 910102369 697486239 981835506 732792600 544223614 906470349 377661552 195696264 257077567 778997038 418157955 220999578 137654563 911661598 978534696 901425818 654073883 748565970 722816352 641424797 516133825 629263459 232890780 939958239 798215663 518831608 893349434 522877839 729100508 805470117 363784959 810675487 553828974 412955159 603613333 853343986 341004894 111535403 495794800 440973927 27126894 893593423 501366853 816117973 649426452 485814774 972736236 808485323 987577054 918008739 637618644 41007778 228062384 125239677 824359451 997261373 759010957 406347601 187608744 916478205 363716197 424062977 926773441 574443888 153037757 716079873 809376652 857957419 457898589 576604157 994083648 447874865 737234846 211301919 561108164 641198146 6419519 394716291 468001697 164932794 91829260 46029566 206884794 298591792 707117108 389267637 533540280 610047299 381051171 760316324 85101943 788234792 77163389 835772579 760888960 229382276 293853725 201495991 995202013 331382060 433767608 588750276 332354051 883110040 652156173 308404930 200904451 339673175 398502212 135358194 897268574 104072138 143861223 322896565 976664104 313575617 139807436 199703789 883393795 103890305 554166752 965325280 558268021 59989942 174877473 777157976 911514239 943831827 785989446 145420100 813800497 249115106 870480917 133695104 428670280 751276658 142857189 447209877 509407786 321595481 915311105 62774241 870946736 429868966 41684628 405714809 538703684 732736738 724610348 434794650 826460610 92334512 849464713 528489030 232881634 826218622 544928153 714613293 698302837 692270228 240081718 350038797 499340214 262910122 789643564 642465655 961155224 603977418 794642545 313195684 445940204 385923834 621044720 645241756 926291826 648644905 432453181 452767428 100622621 110036490 896786191 367296279 901816977 272103513 473100069 222866394 276644826 871946784 738510355 316787730 335137383 715140846 207312425 195794979 780652576 994121094 237127290 545618654 448642819 677071353 192678820 476304446 460449340 956539143 694076559 323250436 249675240 349703199 789289164 31317970 325770896 540447854 569706183 660316353 304682559 803153748 745691322 704831491 707184778 618449791 853578941 788458487 925802859 397863885 520742867 919063859 258743262 548898795 275494956 391966123 350144332 346101880 120921345 502087578 61413459 348448792 675418507 718844215 913266551 959487822 306829314 263195213 791199463 69554957 646260947 363504504 834723815 16036428 759431672 456373948 468835602 880661347 720025857 846198876 525111564 665269243 352237304 869123913 89488766 739107707 374739627 632866237 804684304 826824458 252513183 574502203 173277483 723523175 65351901 95431787 543844492 750685341 787081284 586828747 374460192 119404929 469677527 22857801 811897777 645167988 122944319 238563927 87534815 876811595 871468321 805329565 916992814 418984177 828923426 270762605 616898941 3817600 683379365 418875953 237856769 766381583 197080349 2319543 817841529 917504744 738355966 823684061 593303629 188510808 100075676 32315846 490211014 669714537 929322926 271725564 785407415 992368996 225089046 542972881 333413892 707770900 993940587 672865823 998957099 198584653 202063594 814140282 949955437 305989122 285529267 150258012 991385598 633788273 931006436 137187824 297327510 240366953 956471700 499635180 356982659 682550262 67481556 494338384 352851901 827565837 818113485 299435098 286414760 113507398 41901927 80469300 632666605 227235168 710536266 100265005 649522485 261796053 462628924 199772205 877089144 259513613 782542699 486199277 509740224 986226749 999313388 560698969 146622194 858967867 736867088 112085563 519971204 341132897 778101115 665689761 425141899 215590831 828583927 530409990 664336248 982603448 726330324 284919209 340150667 179899895 463961736 704953776 519502625 650524187 300910158 530914032 822249854 604507773 574262548 563296438 452369069 338135985 523532036 252470018 628937145 250288968 500013690 746995957 922466841 961626836 519079299 277952184 877342873 18743743 487998737 663606347 536282077 545435151 997202971 831831863 762671476 154617382 734654445 193068928 417201677 668446516 935199272 729910953 887919566 955251738 602028591 919870891 759420211 398007527 610544565 557295389 246034152 761688120 737443506 215263738 463121725 707326440 780521062 28452328 509267354 411769050 361168497 549671986 506289166 412546460 426181988 899419786 786520209 432847297 922511581 187451216 22710400 647375873 641065321 916039999 9128642 625876137 366265059 836804946 33883115 132722956 121168168 212641291 49137348 80254724 343319337 235620179 115162976 627433508 48110660 623573958 247096254 893914091 245559035 900189902 125790618 980731956 791681802 730031679 902867709 374686639 867396421 669328066 157542490 146768641 852007100 219353639 479902946 371065990 332470599 869750884 593092863 771667868 333057180 315021321 255549618 424405037 632238668 519282585 484007871 277690164 519634632 826211943 236576220 494277111 477395186 476628111 625852938 201827458 668414055 525331562 87327680 922175130 807394358 160762162 142151403 108274010 477305617 957741524 673536005 293359284 690877256 61972629 506475212 970539490 163946428 692390016 848294734 541662049 911209162 228683783 198977497 856240164 97079658 302462211 173390409 682644345 108884564 828547965 35859583 901083263 180376904 114980647 865231765 707893536 859460278 169837169 495482854 49171909 150077921 252429344 420594320 745770433 890626177 587253644 439537155 728559185 836126341 503543681 806568662 405826642 110060965 290908631 613186120 323919753 749225505 305903960 627791847 980522917 99922191 867791533 431286026 379212455 344749933 358035680 583765002 496025843 141911467 196971050 496204154 627805271 943844625 2016693 375217459 693110910 911411929 447550113 137470402 793033209 442895371 344901507 892847592 616117095 436800276 897275975 451156445 817973455 553637302 87667512 523804497 167122138 9361064 803932578 687135526 924830491 863231672 327596071 87186683 242581381 40112016 169874492 571989 41662180 862204947 934269248 264743010 639016810 305533945 985864191 219149602 449477204 699120049 845373289 894114109 81369057 197274613 637304341 327056753 780753597 802997583 354204696 768264608 513785294 941398941 716321816 32566606 800286974 307523865 329809929 183983104 421692970 530779213 544457828 599963785 472835077 160233436 11912274 34492345 204381448 972092051 20645845 241092000 174517054 844804241 404853408 673930731 737612846 5765259 662368365 210027062 78180537 806441595 908972498 223558629 298346723 666273610 552533511 264610876 359201131 90243803 549652784 15862063 859980640 466866859 322618019 914022650 371157288 683244173 22186393 308657269 448621350 679657567 628361622 777251156 550456436 300705128 731003566 273826766 444792474 660952782 472219378 552273211 78645421 652942745 111378499 919407497 265377589 895050807 104955374 878988481 912531074 262854748 766998472 538604516 650529579 19538164 939450799 851148770 481076999 349175881 665317492 838165594 261840230 755879207 588422347 588039726 927553288 295455428 391681629 698126557 654337012 440971649 620042401 187957861 270348353 15068786 229358048 246937921 98386853 715143423 583109383 379748172 871340834 605027311 574664922 891697269 744885194 978919191 425691119 675948874 102106488 998378963 477227368 802538457 100715875 695059827 656181873 944584252 927925819 741380883 162257274 106423226 90407586 636869810 917207544 442983948 255229216 943050488 422313685 960436920 21511119 665733271 284756503 745016855 341613497 938481382 232747560 602000919 593384687 70260762 986514738 561847133 658227778 367655277 328924921 85246542 894806481 644922128 921598214 397288386 963855056 810431423 820516435 976302242 356138351 557469804 729057071 615805446 784707068 339154121 513634570 881342988 535069401 538426483 757757114 65169559 348881234 248609102 685201878 750376725 74952371 866212017 209979838 818564414 168884246 248359687 428906657 330511559 115849319 18434140 360098361 550168396 427753725 152249934 13423267 819035481 164970888 995868846 106817506 368970277 844111213 708302505 993892460 273130327 412768501 82351954 294077760 164339192 103576865 692402181 43739096 179164400 796146052 117374716 506121311 176503727 835957560 80610299 768160590 152895724 299232068 186754946 70790554 54813032 992382383 831443239 71890341 668667714 254684837 409112711 611910579 557125439 426955105 796346167 797086356 244453499 170131620 467708650 452416471 884290983 48653147 452921140 37968364 467091908 942616075 679155268 502939402 94537659 478764827 892211089 322561610 388649319 710415640 239303973 733403419 9131408 165115291 785982142 104528776 444889522 60587211 133038824 178199761 784374849 319872458 776339228 63868829 733269252 603324466 580060519 225633484 644391356 462456348 207802266 607665674 509777755 13622351 101653660 633582102 914861127 712441797 691578155 54126543 4215880 773549487 347942018 893424541 398491127 605987065 107088070 197150444 821095591 111481985 189910858 169920613 306600662 870840562 465363798 578356134 95978304 7975880 38336214 511198912 443128269 5407638 250416348 487571128 275298850 706238442 460041216 620948283 956008279 867029774 995666846 720085213 318737476 900904712 954046997 834766048 73706312 994818954 29029280 504698304 30032611 117789268 431722266 583527881 847641133 317727142 455492784 270414151 543500273 329763583 375996545 362828189 660136774 520138252 714450273 524773114 829728047 191141005 494348005 466387048 579039947 133388151 587544513 475251673 274458556 355800198 248899725 116378900 470731314 667244713 215082102 536147742 733642942 512802291 735900155 917840233 409894145 562695246 581544782 735894027 897929711 452258557 363873660 902413811 783084018 814929916 797300278 898571757 947629332 408680635 494617666 150607698 603939122 313063087 30696792 948385080 253670725 867857153 616991832 606635142 679971745 746647479 407830605 18760028 137146690 507205808 326417195 430368453 896802102 818877964 818427385 669334114 450942150 524383596 529283072 87432782 816643323 943775252 944167082 774460498 886461523 99394277 398410928 793482400 54434633 387276968 720188680 351365413 480356996 723205994 374612062 882276465 693924426 702646057 276271902 972749583 322630315 437860619 976463284 971920311 195395028 89550422 130377472 15106448 600593379 717139175 196694607 235014472 896077581 421097248 949615334 921206701 427645560 217103924 317632197 887823798 817591753 131878829 799536228 893856791 898243558 41848053 388727302 117577504 800562459 268629520 388905125 924135982 392992343 7812325 952112743 15107458 209659917 406599775 910774196 125755019 144702274 966396545 668915043 197444086 145778600 720881578 137373304 335138309 135266079 839460553 434241789 654982144 279443458 709369031 306801872 220033060 187273566 33435051 753808340 34667214 103816796 967735488 737993042 182623339 894216213 518050113 221532300 632396126 453330131 869408546 386713058 751445776 356690482 507438434 35897738 80783700 978224480 425047213 652049459 8914172 151012422 265845198 89257488 288228249 358508970 136345640 472618603 222658044 448178307 403960448 933698645 751651524 23002330 576388262 673520644 255962764 310229021 813577604 924382640 984795488 725915829 479108833 706842098 159749088 835809280 290087066 631734808 716554598 831412914 419668396 7260730 642765243 169636471 288202099 978852321 578046032 779328074 991866755 359410956 212912446 303443509 347476261 104580542 301750396 522478406 696187860 826123734 435317833 999946718 825299646 494442530 600867380 814128610 669178552 575230057 212220384 958447628 921981506 592913354 341033178 590071398 620047245 174620892 75729545 66035192 492499553 149847985 17185217 555785359 180232156 764351100 261241124 256846006 846309847 668916274 52515886 551796995 158046351 444262436 370795980 209659017 954769251 996738023 218513607 114642921 647875558 503496498 307858098 608077984 385669218 987325129 771024078 249946766 514970028 953120021 550280106 480060236 561154345 334206202 502505019 299435827 885223949 834868638 378925565 819197104 951068463 263110608 199168685 326602370 532032501 5767804 235441361 771923720 522811619 479645733 171279167 766825635 172576541 595102757 695294902 488799623 205185671 275382735 442273577 23242365 927562853 97014041 920666523 424423779 311469877 603320490 198251279 512141916 745951145 580190457 682940448 444802025 636973138 997832560 377792453 135309852 772191126 957470132 376890316 469250764 505673536 476451854 441443924 244999900 868355826 407347046 674634809 363837498 862825576 605818480 836337912 116291165 322369877 318672948 951018146 362802166 29191438 176435171 451665116 308886763 922115892 898417399 938840355 792473221 578271685 834219981 513030211 31452312 6497233 927185092 955743368 375107308 7204593 515656801 615849422 631334115 522098717 656917283 41234339 906076347 152700340 694387628 677525516 247402393 943216551 304850821 887700257 564595748 795106449 955792517 307527427 635202559 43896672 940650490 839027019 643605005 278812002 70980492 195779984 973129602 601989684 650610035 123826846 720225909 853391955 267495330 861142632 985344370 307810939 229212457 779477329 984487969 350909725 603054642 91501266 773837618 569867124 553290755 50269444 539933091 377091181 307904901 50249514 329756724 948969135 453816971 537765153 743797106 127037432 43250675 62159749 429114107 554655174 924016455 760802328 228956354 66363712 254891459 426560523 299828061 291789609 222151269 17075273 523199916 758569080 291093342 666646972 77971880 264353328 706491497 540110927 426223103 242813873 975478505 380206520 309345002 497027366 249602679 985331017 918851013 536714514 886615078 207857213 471150109 17107847 256704497 643073889 605112908 968506391 345045670 482117013 999481756 33820528 75239767 791219408 408575978 43166474 669100976 430226785 65350788 768056535 874149154 70778923 84550934 817648068 108451322 610005645 565266980 724760052 765515811 285971894 330245558 284214966 211906093 302027698 517351166 247225739 460451863 443285981 339327398 155691258 236500852 713693203 847957820 446058892 857313044 49209577 953088998 107649942 959102167 508647217 877752939 693666525 896379637 112289728 694500456 23473405 991939489 358198888 127295857 180453156 478001440 509029390 9340202 628606264 702962008 249596101 841124786 177487344 107584048 224453405 284521876 214406905 100758598 965162845 968988043 73125376 896978046 869552835 607856216 88443708 261493655 862909101 886727013 211052719 792529429 732025730 597589843 864517435 423924878 505497817 580658984 222904919 79257209 177280867 58933676 196329976 820536266 386355936 814757453 477460296 156096738 565883132 729822020 921319653 238897384 205561949 57312994 142301239 914971911 571512657 102190608 248888033 677728382 159478254 201605671 317713953 936399445 310596652 846746649 735483712 673629116 305245508 260775063 401978213 94456984 211477655 310506810 6719786 81790752 704446558 496645150 968694552 526588942 122938910 331932308 973888366 779099292 982321701 562999683 846869932 810022408 677628996 920951481 202851748 856521198 889363141 75706532 964231905 593479639 360210717 562807642 676424984 992140836 702650887 453867419 183160004 792045433 989581921 695646124 864977269 584852321 133271799 668650871 616960280 711087243 294280989 235829137 733394047 989207233 577495802 30434538 965039387 973247352 286718048 178376408 789352649 256532725 897679304 533872253 755107549 515385770 468883364 608434739 279167827 837428955 50650416 735355716 695963859 27530340 978834086 193501367 766156594 201631561 749480063 296837253 141596608 279497991 805005320 806227398 407791679 578430950 833644283 885661414 550996999 160670933 31173488 822783761 453716305 310057492 838079798 236533921 759972206 925791867 229650915 439147832 57985700 978660828 448868441 278332661 326309313 537294855 574142889 948361990 751374965 822397100 809163767 676421990 72512594 946868159 965121075 600940335 678391788 421275783 587910365 649117035 376958286 522161480 287923391 993434050 650445676 357769364 666129562 487130238 88331950 765203063 164218165 227657968 759989462 492594357 791711225 265286516 407754147 202156812 621797707 859823962 572271369 114412009 635421472 955904382 444791372 226157911 444701754 452194981 833985591 874571465 390813480 449687841 268600830 335972594 967807995 529678250 553765885 623542726 51138073 463036632 471437303 523029386 206517945 70538409 670041582 342823549 847286466 123487296 82127747 260830576 700582078 689912423 619000919 74642226 202332633 961581877 936554697 251454574 159989873 264223174 429547867 755084955 830192885 549141344 727001711 129097820 405456512 406069666 928866039 471639142 718330049 799768002 25652051 49648517 777264357 807935446 115604297 277850768 119590210 977368105 825187055 69135962 475063799 997530520 884797048 925268497 770509059 870464573 991093427 783164339 975088719 403955708 121007914 824855057 734811824 203368772 239812208 607257770 47261355 129424228 665857792 848128896 147323126 242359700 136203153 353321736 116879095 146979374 993098597 806159099 808795950 261067134 973885731 869170455 422554720 663477496 307972748 748527540 523373015 688408604 86079870 615889307 825565796 571605197 618872694 422612856 538754746 786455879 221553063 165418225 687065418 909229123 268674419 259828645 317130605 56002943 415970051 493806943 231237431 644852982 687572611 6754598 91109917 727740812 521767794 110252196 109134923 717882465 583120739 971202539 574663184 921501014 677798834 140809259 551629608 851292107 54582618 4684775 581172587 710973595 446259252 821003916 43653284 216479007 729712193 778731790 885374871 730859103 769975617 293514388 405157630 866687433 476105217 571896500 193160019 543414084 345473203 503654028 690000985 893210276 699076763 397643445 77285519 181056553 790683154 162488485 380682865 512327074 626383681 364425242 243869444 343007410 466977997 554114812 27261188 889367955 759629012 159643446 626111220 740549623 21459910 261122751 804472264 909085836 343460353 88958060 927880126 271626242 492803553 739646121 507932410 309801673 480631625 948098860 497125383 262629033 517965645 135781361 766721020 951054122 340312039 324780138 836401275 850363665 640858010 123863956 706682345 906006285 905516252 79604469 12669868 707754945 847808452 217585418 342832601 766884786 705285806 350276307 816694145 836358930 592494419 808354963 719565891 269105869 923646573 720090940 662720860 809140458 568437940 189610821 460856320 885221691 718810291 678215866 914503694 955182707 335610650 67419052 544716074 227806273 755170382 913716314 584903700 948929400 769933580 124914800 155658405 389297110 876619387 400476583 977816828 126492296 235798902 12035092 28282599 950592068 803285573 55332469 743705261 258638025 744518737 228088297 842401398 899241024 114834281 104539790 820619916 276829145 126102883 840219395 237054818 391704133 909289995 81202465 840856788 826410943 431004297 483368526 542499415 946226004 240865354 425634273 567805866 914453470 404631102 938406055 503916081 208720497 775331481 203760972 93173373 807823022 747897122 325960723 963290715 614251056 475833603 301192788 575896123 216579217 390959782 105932587 977680840 688481304 459729633 619483754 69997158 88849435 581823099 810426616 622582156 756065663 50759807 514520059 538223008 703823014 61811901 568720271 963719329 947185246 982212983 602598463 509691311 291569240 34457209 395338190 396389843 36353784 657275301 232892891 635855704 286226207 478400882 266740817 539377178 567042355 582111541 484550375 858772994 634374428 781754320 851252744 650740164 343853534 836622957 342533690 483625140 732147334 200627840 539278830 300993042 681137731 200580547 905950710 230074706 506930435 4052332 549752367 459388567 944835365 461612121 691064145 468502977 468393787 946511392 441767407 451874490 167024275 856982674 422343100 759218821 627891667 501025264 234249082 32516331 771427839 5038981 113460780 344714062 727319144 762859077 654875106 829761018 258335746 83813793 996559849 916454918 366583898 318895811 795131039 6838890 657357802 519616948 596093808 10286244 110451842 351483522 994626353 86681305 607126643 972081763 739873538 522293610 268053468 614777200 908577756 193128438 566634422 158654776 929770123 715752656 29471454 114896220 996953309 606781329 934254596 639043478 192638843 566314200 407097807 351986489 558610952 523620295 123706639 545218925 162878833 594457076 312251705 720545697 253987371 406306053 519193280 959701334 292674751 984968983 60564630 355275905 780793047 911553290 80966407 341408777 958527985 578076339 427452908 505709830 629370609 183502099 277942616 301306333 138915283 722422399 654163924 734042 461216639 867510109 330425203 214847585 258556675 648436931 490134680 112546650 518990931 698116403 714539681 398236024 665130732 659522523 946576804 391004398 128521706 161158803 741957895 682198773 254720400 380919167 895714516 117613099 416036850 583570735 608059731 146052206 890018649 466345698 497933325 231786529 291761358 686711809 859264731 900742215 190809980 427571643 676251122 220902347 570590519 969327743 687875257 870704995 53841992 672932870 415559266 964620277 404082766 345086209 899980093 889743824 478180488 58556411 684712595 423399738 608388575 35315381 821048728 40085435 534366402 141184438 180672964 654732148 80172140 42289901 8451695 370412742 330630710 157562609 167021250 752216341 292009528 908714939 193628021 47087292 413629446 864698202 637487787 725629382 16846555 606534342 128393678 265344146 370159227 703266942 295872638 690657877 833118024 904949747 288356826 638055370 622661202 104715619 31767373 505969342 661392867 699105972 289979519 959646022 745497830 965458081 227151189 173286668 208559152 337597746 624462171 66960180 206567466 312536068 885865219 178019140 945726756 943859337 318129458 672717475 209750179 42794681 943093780 350714144 44464790 715862004 827664606 54590363 218837067 624541950 315555085 44874659 890803173 729920312 313892190 625560750 23898867 96047311 635914885 732378378 999431184 163897630 980807249 232797210 896144504 909104067 552428418 793535965 930419260 644143960 914060348 77407068 392514696 304131594 751813869 469516889 301177244 965586101 358953690 57048387 818925417 436162628 59871831 235165135 728494248 508222619 460168305 858359863 683443585 284669578 627133156 156227245 723931009 413606298 61215182 458683959 537953193 868080604 878479092 390102804 782829818 124680007 214272087 552490831 232721358 140025768 221381841 271162704 830925267 77203991 158629554 133423541 201886205 296574211 212309368 155596428 976842225 918187426 488781525 859467838 374342180 900364158 116894946 768872500 680634933 959190740 888544027 17219771 301896194 839006191 518054009 396303472 788792788 765348533 337028803 902867379 719849009 578319218 854225055 106265216 354300410 486508774 662315223 480904488 205932660 921182267 73137440 731273255 21181228 699809849 420671460 514709882 32632271 762624123 388850494 774501639 112405422 88886855 147953428 939446689 912951130 404525282 490733443 230280523 539983549 397077014 679879787 413992333 423688714 177898899 555063099 381616436 541091139 207257124 437709520 438949512 640807901 863716619 637464890 889614069 249963786 600715874 182395730 593687113 209340247 776744952 751699972 754592181 451117891 670740584 815257095 390082151 867820178 121306050 48832325 820077074 438394947 51796909 459472093 881787593 254541897 34922480 35270660 715486911 266786699 399754593 468189205 368717417 465755078 369010751 413114380 435516427 422371283 319721578 952934690 786280667 872374426 622816610 614244772 416885831 747757946 5568909 572767313 549461484 458497742 645004625 494561723 543842220 712913777 761535095 334547918 304069353 744812888 672728672 848717687 23044552 438411065 452467980 273396211 911275471 675581243 619717627 335937090 739081837 807589227 407121540 186032066 240584716 133033981 258079221 103367228 263413402 567129915 151469645 663127550 15710147 620756480 79552111 732240740 316884616 894914261 984474235 924529223 254981376 15150125 880598644 494159420 456459075 54623750 189977544 583717163 110454320 939734403 99808346 159043921 122115692 834930422 209681395 37543785 167597277 130518682 207511733 176138874 125815161 630967173 462410867 466154891 723998856 983990779 223197594 875060925 761354331 495291077 909492553 704988543 463642451 749898566 619042022 996365383 365291899 877132166 101487212 114220659 179280419 965946891 688192092 353221175 289474316 353436432 545615333 659660861 603762204 202358704 986879570 291436602 291906622 400782181 732179157 924512187 565289269 26860798 479558220 556027939 524854698 481651141 802852115 486217090 960290691 247223922 358277984 654768752 356205949 825845679 351277122 552937030 246106728 17321378 942479658 866303402 468774121 813041552 542144331 871607160 657799718 888767183 199784168 970643985 187320980 343627222 380645817 782260569 199823091 652353047 551686961 503708126 313769407 996100304 123181022 183425171 58879534 193015292 405358970 118079821 653481030 89224574 400404729 655370015 499825320 60920252 52922500 639330710 641029612 592922466 683480037 146391225 681292358 297496521 60756555 556531196 428765948 618041849 746675020 988525892 937847806 448270608 469585113 893932096 34506682 681753722 750031827 568839692 3669806 892767614 322823213 132313973 179220483 62664161 426250077 572268513 846471026 293613497 83244090 533715186 672564748 471717376 900038941 133906105 986496070 675359893 880259512 839585263 587394743 169567059 6920245 918602267 278652213 852014037 259949897 524313676 347951550 102066610 921227541 76054684 485477638 590646438 978105730 616895330 618688455 238240372 515826615 924846218 246131267 120245532 879162055 979316377 24672436 995875257 880724073 689038127 993077028 565478994 796758810 546188156 994895440 492923013 538072519 579419392 161649047 675493949 994083344 276669918 897602947 878879944 480431391 106120582 331897246 803676951 255354903 193318289 144603273 611168876 721225306 228286700 516028941 662197848 701951003 995427910 139476040 294717891 230759002 273938026 364669905 967094124 791895457 149739814 655043503 532837440 823845555 984924963 571884632 868753397 666551330 65123907 750776428 332514860 767315333 828700610 651882245 869827404 494648848 770245827 603170946 331313064 386457027 880674369 417239392 647197617 979822105 641179864 481538167 778542031 974091734 575714753 169524495 61127138 292782179 701517540 20816209 563498087 474005638 946909160 362917217 811842042 373914647 229402395 344797181 660434759 186215031 697284779 1622820 480409150 834791821 268506784 463748655 693186538 10908033 203530602 22579916 515740170 52461531 624824909 467959781 201813861 641319004 968492948 76420321 410232941 333917774 654616367 871582901 580824252 494100928 649159000 492784502 698461977 979409808 873794350 137487691 419875132 763862484 853448247 864339691 281686727 513725655 55541370 191111724 958285649 47245734 277612874 662598254 128456304 33169726 235528341 177227678 602220349 679717599 711568847 713363696 572590905 122125206 381084637 303812220 501647964 104101639 773074822 438573948 396203956 21990906 906496823 527737070 54362290 654194564 305414344 506469624 21156947 577229008 241717131 517524804 926107034 300562365 565437223 47932542 172077485 197407108 951038386 673062017 85871567 961824138 453564340 837861172 960266802 640445622 776618279 664074629 273203542 663066617 911628330 377487511 352841684 807685785 415114404 299680718 48012789 192939575 730224009 113793054 383635197 483413728 966894419 142302856 258638833 856608351 669832978 169128221 49576253 532036015 195049898 49728358 177330325 397042260 718774020 308153600 913089771 711645027 279578609 764278575 791806541 229097651 619855595 812673026 706281490 740673281 14112729 13526938 240716373 991744538 912513072 9733223 721408151 464035319 164721651 562931269 124790206 72595723 357646560 512515075 694039749 341000571 883062001 400082328 866122565 652216199 173854267 10718402 679691967 974440859 213972789 3981592 104764299 12152725 989802212 369352966 314831461 931294021 297832953 717620825 832069480 886484753 132388796 910063314 664238770 392303693 814191623 923487704 218360966 943980088 327338895 531360055 948081265 422288520 140515737 459452389 515612562 98676155 791706523 696113858 846223621 831100964 765175603 434659005 285540685 134606530 208054436 899015696 218659928 458533792 931041273 352064754 696672858 77168357 465809701 722866634 83611592 93479911 416209195 970622058 435489349 698333157 192932184 77616628 310283278 448627581 105071980 240602166 370794685 541859765 128104732 360063265 378275318 203381259 335029167 41032025 966149930 592454554 531707868 997324823 77150712 891866198 788304562 854011137 183009477 82772292 444916817 859793401 902402793 744240168 655422638 96393469 158861949 308627695 419014796 594483989 544816030 448110247 893767480 416884173 348762346 55626978 880021513 342214688 294945913 827050954 934172472 453170931 531822024 964649296 631983066 552829838 179372228 795327682 815554696 61157771 950445950 553044399 178804572 90276431 578582564 296651389 363305192 473675174 532034770 19853355 988703129 249131218 861228450 842940376 747507140 882593325 253937989 400646915 838495764 957911256 13191455 380751205 461679950 253590755 527929510 933830232 774382692 737369880 754830937 274264180 632113501 374555041 54677978 567931844 965622388 581091389 344060506 956618371 275830062 105811823 887599570 166972555 652804850 947230944 355208425 93213705 192948294 230842778 414664479 543549106 640712911 188718623 966135662 865597619 522280994 963341415 676643148 122573978 331501575 376554856 558731144 676985405 461573129 249226794 812276656 188751338 250871172 464940015 278560233 304477851 273941526 43631056 224960574 396608167 959545419 260826396 31581444 887336525 937850891 735105526 585861827 793559118 865509089 922829542 883968836 593251253 480564904 408146873 361518007 93748229 187625130 345135478 486844431 309951473 272557267 196259748 840004090 724079190 702763198 35737113 510553946 436810671 460346201 436900161 495493578 323348322 867177070 498143173 599724824 86117564 655186428 672809230 503231634 276822679 504077472 553899928 550314853 60768899 543876571 553565315 589169079 390478367 885298536 415786554 94069893 229481332 704425643 697184679 257281371 201102170 779248029 137873798 600909956 980557058 731973191 438045172 312415815 815490503 841081392 305176105 79802418 60636816 514567233 78280688 902337583 611996808 350640628 605788741 914044969 209480164 232018933 626251150 291196020 444365512 406430643 511147176 289279160 159626168 997072089 70492430 375800525 810859181 733723727 169178454 221970105 820593433 334961441 17071313 924772620 252459296 249985770 185185610 991720769 987451068 451688355 197944278 952798502 183095241 644533097 318424054 329607374 491795742 782817858 178641974 305732070 114480866 752358593 276783509 900395833 750049458 966183744 298988465 360124335 512235113 609888324 836778477 463117734 885544546 256012660 183138549 982009301 640191032 606501539 401246048 939053488 216908297 199589395 988693541 409021815 761788458 830254711 691349910 377546678 17189347 287341915 648660735 273964453 57850843 857526530 211564119 727540461 582535815 797006419 318000631 670774361 364953629 117532837 558143876 518285878 800559737 840071847 490739519 876887610 522908222 83119879 69833100 602982662 675841587 355921796 688059851 829416210 389409493 430762620 501470870 97533832 869396965 742136994 728268115 99633335 918808651 557012522 991341756 21393010 317120007 675160047 966312107 967173935 704818647 663222101 441200340 694962349 145445757 952796771 927632359 184485038 938252879 103262121 691092454 489287143 953858382 979691098 114405705 401473301 68877396 974060242 271151942 778313662 462962447 916970745 949530491 461833568 723928507 228608244 820880123 552784943 616849996 620215102 48513293 199715458 429682774 296884258 945645461 982477491 585902140 21791160 800402481 930078935 521088124 552718114 259190764 169498559 146652324 647406662 494312560 368514344 246407706 589611151 123329925 823499736 776651314 544628670 818204534 556832767 392233684 499231926 405154790 707887603 480389282 327193547 654777006 900061419 582185889 497811005 392706920 547740080 382608548 998686674 434216374 353643527 534699413 44348661 495724075 360792337 469683756 256987559 329343418 498864324 79529293 346267804 805243525 523616315 56684992 775379816 357903162 43578658 955690495 31137107 889942286 742572719 887899547 903234641 889749086 103520327 426110816 1642308 454317914 480940271 267777841 128339510 779056808 160289983 184978912 79652107 607340340 777275328 862080181 596761319 587953409 471010996 372848000 818650091 862976029 286243519 455198959 142295405 273527417 187618177 346405274 423244110 665198234 105671176 928629855 652335683 76833001 873448198 147380850 454877090 267687204 441114749 16839792 287179499 111258780 692257493 286874857 241138487 765856540 204365786 895261012 651890260 207614287 993682506 352485829 875362941 465972198 591114577 145170842 410577108 561120337 769031371 266547113 624828877 440503920 55757674 103696829 246846523 752615713 723764222 51880423 199232944 121687165 260270483 263612515 208004826 580588391 846577297 653422169 196402770 472358637 534055278 583727971 577108666 671107317 698506120 995777554 724563971 2706181 211538143 136166677 664946673 210131550 459280493 107548490 355606287 760856383 961821621 423747405 887393387 571441013 700307498 172171910 692324414 104505894 195718242 463791310 455542058 593294732 407827898 639518408 559003659 22725758 622749215 241874021 501756776 226087340 980382847 825180248 230955940 319946978 307760465 914312165 77985198 343833213 866947283 33657215 612361660 715052902 293404872 984254801 142646399 278392971 583639458 883084420 205663963 919981220 825690764 61220817 260125736 292549425 155165762 373493397 13458213 880087250 112761360 300778923 209832095 223479010 115475315 428509909 325241518 994175856 39066525 800186009 583449085 540127520 294220212 396833275 309909454 434525829 481469801 906935279 780257095 587173973 230041076 568726325 50687088 799453499 15749860 717587066 59320002 467125391 467702104 520099676 4363775 809131024 562763272 253102003 877670141 974485522 28847213 134307774 736582215 558288830 249379532 224773850 484346883 167938396 459754883 804558359 195637514 407077659 425562279 80968988 973239124 187927610 672498621 916272641 610223971 650760153 77782765 410663088 291110409 581384177 84015790 799385489 966831768 539874078 62013491 203224862 351175508 220297976 388372860 605254056 509870448 132900565 159278004 218164985 661826374 567945049 135575464 773625588 122924925 253536933 922415133 893023513 674792964 675483079 28866381 486655725 455043050 852363218 100709864 821047417 942376911 535805780 171993536 709980105 548762744 979815493 288672833 931958000 674932870 781118580 264705916 761685412 213336116 467652551 635639368 256686092 615733646 946957234 600654060 737374364 853496353 47512830 613151041 893819572 814167087 156717006 836567339 103491728 685652999 334888763 104972850 800114566 563879325 370745369 822338159 236640360 72725725 780022563 676638845 640696120 790001295 29640164 699581643 404410312 646808994 623737142 847544688 38860307 949506567 440770140 988835817 664541790 68084660 430824335 499551204 800311258 431711185 180290383 392226747 921656391 816453543 772864069 933961412 603539624 74244504 641980652 48755624 243757300 49689278 118418603 730583655 300264753 197919931 930588985 781199585 365900660 625037715 573801458 38293845 739390014 675020630 200298501 712011145 944062058 53704486 525021437 951767426 588274530 804445661 616540320 74749344 720673954 485493871 808693731 924855218 977950174 924750753 535223458 792719824 645145915 472356213 155620084 69035001 848527192 613576242 667665342 354138879 910287755 816230048 150844951 344247050 54887766 439447064 359449026 329087695 869112192 254000896 11495537 89476346 103805587 996284866 613161067 696276278 512574580 380002768 610653944 739308005 83187141 414028885 434756150 203509401 319163524 479875189 95885341 202772527 608699786 773742604 193804247 801535951 403321168 873047842 171494846 534100562 363939079 19754137 242543142 275460276 678800129 839810432 398706547 124326971 610041242 199380795 196747117 886229416 566458086 672526218 197602653 706078826 404647793 583063871 960556236 295206597 574296161 728175598 263886413 787416258 887413589 872304350 237813102 944092968 12391698 445503905 369504474 519345678 17083899 940524776 84143965 790067936 347207362 295533380 254801123 517448140 812011658 213032590 467504295 886179718 272541097 779891067 981838561 67033866 169454304 177196638 401167313 510917452 977472461 943560100 458506883 457451439 24452940 149691179 61204095 351372688 44153913 189839062 427408896 598556947 245095888 904642610 523019989 90700774 838920318 95373107 483931164 681685982 155116217 73906932 954536319 486780621 729825539 838248525 778157169 656111312 694917133 701079288 858196349 950072570 535321805 917099981 517710818 247509230 582866154 130970066 944070898 962112122 743876849 874559129 449531209 463294973 873632171 198646033 603357141 72289432 911198044 823291026 235508965 584068637 827841357 677421777 791013326 808979121 270320705 427648040 376614843 462388290 421594290 659491828 360304076 668647016 47751516 19101103 934863585 191926270 375627847 807540502 537439139 394605775 780873858 626467573 541029877 197553899 612381798 685217719 855877408 353342091 166981767 501644242 16942769 864938160 107086382 152324989 108955394 149540894 867725799 717382563 155233503 809098593 767213477 189668160 703512111 686320482 299670650 683263149 590966867 224099111 344535563 652105964 412696119 468278796 602566548 854142929 563355426 854762151 267851690 595617642 259767397 721951580 648256989 379773247 577867951 262393991 526437569 165902209 94743442 859885534 61489476 828488050 76035726 921123575 284188614 952782447 654973425 627651205 924837092 824935835 566093907 453992014 246683686 887087486 148827405 147932007 44995258 343859911 99911413 129889182 577590080 767094865 34823095 133660499 23072991 755536380 643230637 86067639 567864685 100468968 402733803 96283925 239614628 466086017 771722477 743771708 606150406 842346156 804483247 296585839 48211627 330413849 331114968 74910831 921694927 958254196 941795481 910419968 12694893 805438458 639121418 738014864 979474893 50985635 464928700 603716675 513785912 953563305 869460265 613592132 390720212 85562422 915848459 799732548 670523617 357350069 921759347 106217076 630796898 485412018 429334760 311158955 95640245 246279282 738820642 369304479 923011324 942107354 227968146 439367820 314287636 344728559 177325907 251873571 290213352 790509914 679430093 501765379 633627345 447398040 676506375 434926774 605645269 248438474 856487136 509396995 709924277 727607823 1935276 999569072 213145116 530841902 727538219 76970207 259166266 501327907 975694416 413308352 790041975 671111761 671992810 218013718 327944406 74548972 630762542 654011540 713753897 531897263 975761962 252269990 157589798 513691437 217952596 663115563 261201096 735141776 506494137 936485044 489297055 666980942 992148352 713103610 247239629 920937153 842532138 231292803 254302820 843365486 237662518 558838068 937409101 808871026 48946727 222482852 522617818 568218150 61454673 699391367 816780085 572035182 605453410 564549629 707725942 832022764 632624036 397574853 59850858 60343784 243817423 631040082 514026290 334742248 222442597 736627888 829746947 948886494 697211901 474794417 465030611 560227111 924148713 222457757 931478144 362253933 226873319 530592755 355558910 72592662 612845169 194411751 813523573 23631 622398039 421767487 26227637 468059160 735422237 248675299 708136370 403328043 79204419 524383616 990870818 492324982 841187205 956965475 88877615 654304682 825724479 399667534 660290562 699475296 374283821 522578960 630093205 735970245 182198777 705076481 971807334 202882592 79306449 710798096 855020638 885555081 351409903 670101671 131891456 736935990 295437317 539904159 473720822 381484840 364664754 71550611 186598132 865499688 563379157 265868804 341657256 169690724 385236835 265836889 914375961 602164025 43144267 145733743 962106225 265068604 172830390 219574215 286301782 444631232 698957070 366757712 833512439 394470242 689242699 522133895 570007545 368600289 510113192 44607099 524691063 937151351 982150607 858959825 258777329 854902829 813147010 479938957 615736239 170280279 879459300 566566114 850719512 794390192 427387893 113239470 942528428 503369570 493718928 327637034 428721987 928172893 606105728 859351971 464921477 14963496 777854418 477980271 238477663 914846256 867883338 475787737 975292618 164558 166706305 256972902 702526287 926670926 797515416 129654180 566150678 62935021 388348939 775334129 578576857 506013689 153039743 903109144 397973315 147425198 560333135 62702292 633167671 385483495 968783125 256342343 273264804 58945711 69045813 269105546 250847483 536071659 334533251 239967427 27706792 952721974 582198493 742589682 930767785 221608045 780595873 118915712 289298868 596247115 159386850 347718279 668376220 278160355 49399725 653160739 74373528 747488417 322271105 558703404 712729188 604002030 636423788 473267547 773977191 92817473 192343659 503715733 578589525 273720609 550950166 54357193 66900364 157703744 977130704 46830261 512677580 980446472 376167993 338470610 50178055 2513151 965658503 887656738 992752308 741788647 197745943 610886446 191668334 194750738 862988910 435712347 534140661 267451107 303669446 164036098 90284060 261524380 643020982 775087285 898993993 653429985 473690205 966825675 649780214 698971747 936528264 830882498 269846717 108194952 233155862 757053407 350839964 220429901 34485774 955359866 388747910 340717194 129488847 714565220 234999639 509816724 411891740 406085343 940896845 1373562 742404350 201038168 968288512 790377412 787448860 690557643 401240332 89451580 99436747 513363842 118093056 344288407 857616163 59904754 168189115 123703690 119230924 108129622 1290069 804526824 159140352 408628156 535930383 433273772 833894675 938589848 168267364 629742290 651680443 92649934 283376220 37290589 449257465 984248913 627738797 382415041 584452840 564735976 911947702 966031724 899249435 654587243 654346271 355257959 619139020 527687664 547828004 104679171 180054953 460008437 935865158 832635853 505239433 735036128 143652640 973712338 100808554 369295319 704644201 835897486 299246807 637345946 230119059 620711023 740760434 562420781 197478249 564109404 960350776 76483930 393413203 517320782 986176293 765243720 694040443 157710264 741991933 641064288 384670953 739203788 385682332 962037519 596650999 823464232 961261352 769747234 902231837 630295578 638460856 105729991 633805118 269430202 25561631 571509007 292464296 145117120 468915687 661014628 401688220 492246984 189208703 269082482 940891079 118527993 490154703 207154713 206455707 187861075 309694245 384270924 104952565 598904347 504493779 302012436 82685232 748868484 502250378 993952648 381970907 64107239 266375394 921371632 197707692 338992900 819653969 661250120 402072681 513090877 917119241 505395883 737679655 788368748 932341492 712741054 132309375 709092864 143550916 51511456 112278312 76349442 474217226 508699215 956351760 946791975 718868011 874559473 392642593 145402430 907670065 721090111 84742785 512990691 920847162 892960522 947193118 817755899 608429459 511008544 943119053 531398770 454810803 506638825 573123303 839626979 737668647 328861169 549072819 446395826 111207342 912125690 972786763 357391834 103004041 391215388 550382614 381266150 214431311 601267531 244918315 335277529 918344054 552842672 510068985 607107774 578497128 233274008 597880101 829144527 902990282 811808217 538245686 166601989 529754477 521608671 77692765 496151582 72908848 455596903 616094070 739121870 82958153 952653638 230710896 526953173 250234538 96070277 789911865 839509735 559141108 102756973 10166852 638911637 530867142 836551878 162645620 943276191 313228261 62482810 137077422 695794313 959349211 780189443 696141482 97679510 236848165 164437625 663244285 565234207 564330843 771785139 923420084 919027681 506076584 541054962 556167172 100647489 345923971 734011858 347203680 765014685 35048152 150162812 39032229 983480915 625051762 111398488 510644633 2883284 843855578 971964601 284849666 822645957 737742613 886598089 705010079 780235976 254295731 270136758 527959857 281207681 397551909 762363994 85543995 282356178 729936097 922202298 961132968 39114964 175920856 89430689 637786597 53196026 442353779 734096096 19217399 796017403 894478866 25582022 854467628 980805296 277390192 39397229 472846434 457897580 52446749 297150508 44167789 929759403 911675972 66104830 68557673 528452220 584466963 801788276 770406673 790154618 723826300 188632954 326739899 567017152 748870788 641551222 319999023 765839873 971980367 994585775 338255662 681389612 925465190 124845521 307405885 303710387 206861191 857748909 642632864 472301829 614625364 158867425 57576059 788246214 287342847 320943427 843206484 554315290 785355163 162988965 691491356 519054363 980924006 978196825 976753170 265564505 410590365 424631917 239741667 747673834 516579350 788154041 217021032 278286289 863326703 709395325 659212452 134386653 155834639 874639650 864018592 293782376 466553155 724570469 282657564 935281441 902372921 499367270 973509132 828756067 392389699 393411829 70123061 206261317 781559935 483768975 613533347 524824488 890620953 167028862 687964486 557880402 836609308 28487496 360842547 606749499 456525224 504201328 886625688 723545655 456330370 36840611 900549478 653122831 456824350 232306267 682229699 225189354 183704790 365670533 430613941 100317328 925497963 709577170 171638570 130605164 6857478 237076662 606472967 996595708 848825245 981467710 949962895 983476946 96528174 666114983 65209812 696005936 858176072 580230863 261680877 895556129 727746706 963835971 44645515 752655816 281947070 721865740 474590574 784722336 766420651 836729991 337554384 65033229 599933546 83876300 394231610 515378188 424852815 774140275 18194458 527199485 525447871 44274793 45926009 71922291 582840498 988674699 92244845 117309969 670339968 798219811 544369315 45198408 376954609 885595704 484176089 302596888 453441263 345760327 759782557 139357913 78232247 202902543 465077605 319725151 372818925 370249632 769213351 861704215 660314688 719577694 570039385 35764743 748817790 213906238 275828992 341848327 323544144 445845955 684722106 696447902 886371374 137304135 470726606 765198913 268225456 619849287 661721726 929177962 124429642 62278528 946054819 307659468 824176586 881816791 200384515 350110702 196981595 174045975 603279425 259441834 470215019 496540972 445282187 589794259 388899039 356024373 816201175 533287698 460330948 405815354 76542059 636905431 770528690 286643286 58517405 42495476 654351282 508846227 866647872 777101448 13775230 571766630 624895355 732814845 491797870 232726063 81456693 612175737 329115024 518670870 352489226 935067169 359253323 806793726 5813678 577824462 729717667 547838988 298649326 63021314 197867327 874725279 380509282 255682377 818465342 995018242 533621552 554165402 703331580 370460210 664802391 999152995 249289357 661398388 242809413 858361178 144859136 197765920 87459820 656304401 420599210 642442651 23130830 858008455 460399088 468154378 559849073 441947418 822850271 280335890 756222864 653754940 128751377 782262553 6505334 458232695 466810887 230300297 708955379 623360963 713873812 302797188 752067207 835257857 778567367 217698622 802772942 948659118 409336815 659532925 257849623 109173506 317800591 909260161 750256170 472391198 994667725 470916609 198274330 637897779 306066173 581292554 264341242 250884915 465109523 821093427 725393131 242482172 859161015 542838825 126950988 724407395 311011458 349558659 802221637 796355362 685173568 412084912 340400678 604106726 667480467 623798994 18589848 135952515 981322578 232605515 482749401 351361491 927891722 955416115 679714084 806429697 150662463 616198506 414123225 454249031 159113069 329458488 244455981 803838371 685783945 986764316 186204791 525654878 211313231 100420521 121745126 252925856 382035854 677137598 369216693 852368585 73160638 647558462 125518062 892850469 669466598 854067963 448697266 70263497 745763865 574239570 2440174 962746887 627707568 558249664 568048302 410134202 866094381 925789026 443868504 643764658 602984705 699985910 551678631 886453279 598404659 523978708 95176995 612806005 589258498 240774526 290478982 284129061 567363307 417894136 945437742 648115295 584504740 283649671 814494377 720018019 535402875 684635442 51078096 160905148 469116621 885343977 454474875 523655610 826766432 671278631 787378221 741162795 552854347 960195535 732727732 827072238 661297451 339926435 245618030 90493901 755815367 110442120 559723030 987412482 716282138 613783608 262227897 949364931 174733905 604979902 663394322 203848399 821691638 158926811 704934110 687942074 577498487 692975344 670424263 46228241 322037816 839157604 154789550 334325172 650429161 276784756 337772842 660684286 859634382 56776281 797749130 374142850 55287551 597980366 448217585 466650392 836968595 579167032 829092412 370260597 208591052 482842824 275705579 602069616 664380640 858322598 629398524 860779627 902988152 216054170 728225134 871907178 758322230 883814863 156321919 326333748 11246293 681133289 324945671 97087503 4172296 627728972 2419837 113637283 160946409 110923369 689784495 366068586 3175008 978886455 171913859 208999335 31399107 862800047 127172840 442844958 52480988 648093536 42223966 260778925 695899058 287503000 436296577 132689776 714538434 88567711 810033002 617723945 409830889 556405650 461482279 135765054 269790479 278991261 375048851 972489009 371124921 39377927 998489401 739926654 668296074 517507032 976942409 964368151 815668856 770467763 700144570 849089960 716283500 399105802 884767213 849996152 999945906 717461788 200074703 264907657 177100496 915071991 665328137 553649141 763286137 528372738 599622879 913696964 301087896 303278612 963380220 14750866 51989034 132816950 370173169 620530272 874597988 833681517 211038732 637004879 115246859 856667060 606908301 227328537 558674198 600998134 922443719 100864567 121062284 132954028 403727800 221997505 497183410 427797810 941034019 511590017 518913933 976598577 740230989 811368487 483260822 843606371 855661623 890619952 448590040 998748401 132621783 112417762 238775238 853402069 292298096 436809119 283329570 648693093 637170030 542988039 769389139 945446205 544143317 292622096 40026116 420603577 19206918 668398104 763141161 193662110 772500730 811293315 526540687 120254656 484902553 165900202 698068465 1042979 249776283 714168635 678930341 637944357 280296625 29036912 607499817 449330463 79061966 346994777 22345490 129684583 250345629 718055288 498814527 616153663 364052217 264124111 514271637 184174916 664780208 238038764 448528538 465057159 913925087 118114353 722765737 384836316 908191763 637464021 234376969 614536086 609523283 934139256 145195909 698143161 365982068 323333420 946243526 557667510 543327889 936760939 122253776 738393069 955028324 6744415 845412917 449281098 909901269 316407519 221626847 468188121 453629220 670804406 565051175 13826234 76313502 564710629 114816452 131755662 8391387 331121163 9123755 30354701 61755391 166090908 93629467 897757259 272456866 530172050 458328077 796717191 512038867 734042785 764476233 703466611 800295945 563960798 264990429 329166767 94448508 31205571 811635339 324260665 23676866 454670445 419494323 968399365 784656308 577548447 337009256 543330920 89303821 574111666 815634759 255130990 199094540 179706084 214405372 239549989 690324464 285091348 924780592 720416896 569182903 145288934 679821053 637145441 269173189 86254065 824585953 573754230 495480672 350137712 914945157 148204243 141344602 999706210 580558838 976345240 597686060 722376232 413159856 747049523 140532928 59560659 740954544 118112455 53086893 147459543 998237282 687264137 503781848 67224145 414530760 610362861 289903843 628041124 780207032 654490421 409328229 201655028 515250363 106730918 575778494 126430993 785857342 500940425 154207086 61846636 987051032 662500048 96431565 147384994 429182343 641715070 154711910 632418558 621741853 817878418 859342739 323835023 705693448 707189093 93147700 137810758 250919225 189400099 103410032 757678405 616786589 517451993 388575577 548459293 393985732 858607409 598426147 321629180 234820584 942798518 107362281 585494688 66600518 580407191 244114600 182535447 806193284 154157695 695928491 995992927 49287688 3846934 349532102 481705541 835546767 594854139 15897132 338999680 934552080 191385596 921355857 375464288 283985064 877893555 167050614 870496166 866080529 477752828 301999948 781359319 68282817 112399362 239582045 213026242 984116597 640763389 461911767 232284466 403361836 318984570 482013650 825218545 243898307 52367328 650575659 286304099 408998102 837467871 506994134 770815229 448630233 605507766 892518007 644100183 73826852 674057623 477751882 764073152 803027729 310570140 665004727 949927087 404377984 327556829 580172522 240789185 192827264 80769099 585067457 636006474 277682590 793032369 332802624 952852554 39754622 996964696 812732849 969340543 194119163 200516359 458946735 230357663 328433040 567168787 81713360 246617763 836903705 328718008 145868645 582969669 404284149 952288534 147772187 133698167 749307953 177998611 353969628 818026874 300541609 439516658 940040033 985699815 487905900 717116622 33769969 897163158 79166255 720448435 690484221 694966402 771940153 649924601 468833774 338679944 863470146 534881090 130457159 72876141 935800656 337566670 378719379 31827236 703979151 584953655 695773097 355195310 312952014 72116903 347636296 391506476 951329921 612137378 201973190 411197711 968452734 179082130 77170636 260462841 833049133 998374401 542517423 932996516 516625295 827840729 629964724 203679424 258067218 133743929 476254524 521129230 826738789 415739210 229926259 518342730 750841478 552274011 304643557 325898909 593121164 847153384 826984681 76255097 241490747 443430616 623688206 675954272 798843517 847555346 924723005 64269258 759077713 373165235 694689243 663590235 144722271 937346793 691549032 58669253 20836190 49964927 982783268 295051460 545851775 939722768 981719977 405074997 937635411 879722157 603995791 471978777 61547324 887915340 28272500 114114982 771113617 226980093 31796130 18162718 833080454 759259432 623009615 772554791 359120966 845732979 790642905 817295345 403483906 951423933 899818855 547285978 594895574 193130864 487411218 161264731 986949584 182655297 758273695 606311455 567597486 547667363 665162323 215462329 355444760 509326094 368616438 542086273 190425137 565254927 334113706 797682480 992519996 191537394 472044393 991240326 369111304 41075223 323542882 457119643 28473851 498140481 263364878 541942000 803987962 879711692 882946527 708210867 192703684 103219227 760436139 364868971 280811339 820662743 283648021 408651558 324726793 806276085 549455235 661218330 196669850 120238055 812823407 848572270 895126730 770882618 179153283 521925340 461495812 497634534 1981017 164723626 265672181 319853498 606341996 251359394 637387454 367443940 710898063 637338533 435025381 353580749 516667272 461419551 384815064 259457281 559633982 794478035 304988894 379003658 14516128 188657191 843564840 293381127 812041923 81705060 656587052 366277196 831319671 22473098 170622500 330715255 356831479 516690969 550492301 943159153 845580906 150920847 57727948 972450019 431007788 634800964 992661866 760469393 393491532 898051657 805417879 919815145 668551046 232632029 719259032 121421564 43673685 772861808 245995659 909503545 925095355 135251429 45344064 928711578 468560536 901225369 968259154 402293204 874486853 101776289 545101492 599643360 356389310 600206650 907914664 80119467 395384965 275023731 451194746 932284039 788669362 731258171 437944240 387696232 363273337 524529613 459354172 728851836 94192579 10285440 937141923 429220804 661105847 194335847 617888601 858298434 294130311 557479530 934068011 444215383 957465199 767657047 319984 682075451 902674483 124572189 285817452 157894691 30192204 348698076 43596587 53701148 476109403 924317986 602015420 763303470 891366089 458546408 2883620 584874274 610478658 569005374 154656187 704030734 799964310 380545547 889957992 345149952 234667705 266652350 212089665 69810406 688325500 613587729 609520428 311391871 363559242 444519426 143122023 355553583 857096898 334750756 847503463 612840339 534377461 979994273 293669839 81649083 550622631 213385193 62953122 46606783 864567913 426326284 304440632 855714266 913127204 897256415 27337932 28825359 467285438 179390274 885416479 988536455 160839926 97456527 22180219 571358857 260910324 704536560 372560011 482431541 407499906 788327510 115430466 683591663 62618357 522413308 114381453 678333515 246116048 458690830 543512726 851585975 782514462 774676557 832731091 951661306 447727268 262921096 523353313 78049547 424157478 543044573 613749679 476926561 982779351 369297392 674112551 882854517 846865924 964603464 15904729 361799260 756997609 426722459 778414425 198978901 248769343 527814654 885368466 635979108 972982735 454807342 538233387 954718620 343662186 975717410 720786825 477135584 751279002 11434898 323487895 648784653 171335887 679314428 47724268 151183703 998268573 16903236 166208782 361745823 381814490 523771673 686126593 315743997 688170222 351087263 135565922 132323569 349117702 449011847 37969792 226595569 284452005 932760094 170631583 62492250 320222807 288584320 635677162 95077899 222530370 575487789 537179399 477522700 607949646 778549689 205134863 314340633 771503150 937353315 555682213 237949494 950164573 382537157 381255498 837812086 2526658 380542784 579604226 655149382 227083683 84014216 201651045 980135112 209219559 644404044 964061226 306491792 4705548 410778627 753737315 226426166 102086598 744578460 296359651 742376099 671998261 45438210 350198761 887097059 323955924 556819387 904681910 837154917 905312828 515698953 50505062 771938329 651543979 828562450 956557453 515011375 476447816 197975421 442346657 853702068 812418433 901980211 693767627 914121164 308687419 622172366 838692380 868391766 801070171 642701247 482814581 968745396 740548791 966902331 626000167 517067604 865325405 869656017 182064902 884577498 688483184 735414162 464222146 652347489 786529059 211377870 987237899 431032312 584070393 936323571 564427014 593162234 729978154 929511445 951292138 914341144 639039124 874888512 694365019 365462037 182516420 575940421 955816281 936581705 887421935 159275582 268324561 803334381 347169795 323011858 315543710 622659356 624483359 84366222 104906857 496811173 666393063 744197224 148510999 762296373 243267253 497208675 348064063 43046345 535539063 581145861 995412147 195262563 474600675 638505888 997393145 110550655 575419537 132370467 636528440 465558828 283150969 174237577 115631214 798282840 732114177 308982161 694344661 522923276 89645274 653970089 801687008 755432996 905453205 486770197 924087337 804299801 133866126 355451201 416141212 959863494 262433837 149288697 161370087 632734668 510060610 37259276 538736857 83324465 146176745 20280097 84787031 566884846 546826349 214912526 67458905 695027398 633668669 823462855 4890588 809131821 176694021 269103754 752695793 469731902 80652102 459249576 279011220 670250910 939562229 67327669 776409567 914767853 655738150 631734405 631838271 977940318 482604274 836191235 664825594 807014467 846755672 360377296 595647066 11087002 919576860 280353514 4642254 899073743 494519497 717522146 787356338 365285713 634871827 720688157 829605192 18870807 798743436 877922709 634478216 155009506 275333446 623125219 309895873 654352812 308625660 849422490 202666113 393214430 968123635 216208831 237623754 570434101 633200097 409961700 900029103 851349573 185761918 949166402 810292457 944892604 428598428 811439518 771732346 353773541 320562710 891972929 662892590 796442832 25976753 329663657 969731543 851168309 95387460 96251664 803666943 259186627 951613189 646016967 123306442 451854560 711244976 891519517 170245808 989549899 133406790 176555006 806986005 93942903 653685868 49036572 103369627 891841082 235377256 269498531 623320411 230825913 224704040 716688722 257615416 397788524 88567646 170677350 412643583 358773808 199499309 998148510 481342235 888171652 193608553 964677300 415772461 376365483 811171697 61695540 763270404 221592250 642529899 869063391 721188045 319653999 266062082 385744904 239363645 148328655 842902120 838290149 397863733 797749061 380182429 808197991 566216852 840310360 996181791 421702924 927204143 817727465 32332915 861226577 550699639 509023693 624094346 390598008 970358437 931078480 392525348 966756945 197565606 362209667 439632820 354755799 206703101 373086197 712012927 130282780 146096611 767956159 313134289 797205201 315146964 158243139 792267691 798907339 663922238 366776567 572527002 676352845 613290042 895077486 782035944 98305195 179681623 936814901 814345176 636573531 149033939 566524343 970271970 39022278 535409507 902089374 554607242 799523195 542548463 493855986 959935633 863334823 834128159 899280726 169784412 606427384 101414551 457614398 987601610 667583602 57666049 258041804 297149004 194428193 300549 451043164 673693401 394742751 465718076 732277165 868184557 885048568 171162869 968877257 51595240 645152642 698563966 33583515 676391242 949861485 233755741 440801829 801439564 660562118 764768572 927383161 86082974 414659755 285631629 874647213 313059723 53948903 915573766 401741871 615328344 691270500 731119778 835167327 269864739 615784889 709516791 624294721 188705645 898137772 181558812 715124879 106495842 860413664 613898380 848683503 545025648 250298589 43494471 828012015 20447365 277757424 154043735 70253388 873326689 955626685 432756258 110794921 224447541 364214774 985207769 732442263 322474502 228405213 23661263 664943959 197558028 302990079 451100218 694015560 645215015 399188933 557843786 916900267 64993918 858672957 105032861 863473277 235497391 232933002 127559285 103714150 247920090 773878112 386840138 436479797 189445933 926598577 449361771 279103769 362423453 246447840 909763583 849862616 243239341 283544473 29271042 760677653 771571093 596845850 633492081 989687161 500827122 992619587 774877037 759821452 910616395 745431123 661992917 754544048 882867956 825544643 248346280 644444 839777204 784466952 428783915 353342859 900311183 559950131 693848290 72613920 719050280 431664780 779395036 701710477 545592768 939606277 129107322 779394479 807487504 624890387 670424360 694697491 263494253 492914989 106038781 555357319 283392415 637521416 61338019 449308657 549912558 808795801 831371713 440569101 753922853 987553146 64701751 367637396 437618036 833483957 353014238 58374885 393637035 441509412 717178208 268863277 548247341 196178203 503513125 843992842 787592005 455460383 487439217 998382653 527562977 832382227 269593340 982043506 401375654 585181775 948840101 760744952 7085643 718169318 156608688 372984789 769142591 906841325 11921770 659245980 869872928 338646761 77305124 583902682 512724477 673765269 233019875 563042677 483143613 822040222 43395931 96036195 313127237 998010479 946351786 488005121 225578988 568331796 339677907 420410229 199882347 773900080 110976724 453996613 627451604 281758139 522912909 403586452 714168061 335423099 137771099 247043466 213880088 117800665 125225307 583261581 522160909 646110046 477874158 493273501 525300265 573888341 871972731 597166338 144918308 602470128 389602982 724930770 199199549 787542584 18440415 387192707 413382800 774133985 939408661 6682015 10080085 246608306 482579462 100754664 8307451 94002531 650192136 382018815 67691013 59429827 724043208 667596530 21132479 535173154 22828286 254048391 960256794 260605727 37053108 170411103 284886421 285720380 642758359 482274743 24055900 218917493 679907476 401220441 813932195 695943417 328192730 269483802 79478935 938471035 167369661 46791769 713906255 445725961 385341692 939570670 429275167 251137659 98799467 404668387 264606079 313707942 879427077 223159204 371539773 185928074 897000264 972383274 760173131 942174631 949889708 866767634 130180814 230046966 481485552 352101891 378527604 317961991 453121435 536076403 279736196 483521116 411214081 97383189 356820806 682224948 736187714 924414644 466158186 901773921 47273386 472616155 397545961 611097950 28729509 722646161 544101329 377521757 779525542 426302172 239028793 747614860 261260311 458357615 168282876 660703821 362819825 612146922 193845861 74561420 62660571 512112004 223784020 273255944 969571661 462804624 253422842 972817028 588702835 584820540 456968959 469260678 303153660 387177105 405662869 192336 522989768 136649064 161294777 956142751 662226667 205177043 745985266 464016237 863257 417367621 742186999 852929913 930962876 865546692 179505572 220417377 506647450 351235974 322588678 698432054 328824221 322234748 478741344 15567836 193223446 826782626 170342881 743563402 17463445 674661062 659905905 694126153 802900595 716132629 526291078 931449869 307707528 775288258 417319496 264854462 172008655 9962011 36488040 6937105 48578833 272784407 633988011 997513252 4454923 311287676 705683001 529234468 68928088 522798849 332423254 56880107 318470708 737598361 941295757 453602454 683230248 93233216 578085297 638749344 591237361 269353639 814664395 894145453 808183144 99686888 590278860 977244701 529119290 410114732 15505659 65942669 249102073 728382479 442353357 812882738 926675988 565695656 893780996 910938495 707194750 197184180 231859647 333074905 874699577 664112153 582895285 543949668 846814590 338661066 760998891 294027903 888230337 390297130 965105817 641100312 15958509 737428929 580746968 901268037 258714477 809606955 799237967 311932095 412943000 375957643 206263803 468047622 652811287 492695907 826846723 893850759 218609259 614320200 760804299 895556766 960178167 908963174 755089141 399274874 201438695 840656206 23086381 38004915 284872593 305446058 981124045 242325031 746970562 773052120 348356372 686535046 128057547 647250976 750601167 587849523 942429278 260574147 558480024 239845608 903764735 926889064 437727484 489195146 442275001 187167993 528731808 815727859 696803862 764775027 789288227 344493960 229529809 855561880 56119449 928077333 429098548 568116995 597423572 803753977 666820528 959447294 712813364 26342915 451203229 452850153 53937565 613891436 997685226 905941582 929682549 447572569 213096745 198764094 362576401 349765869 831587197 581728519 209814162 348814376 761250773 680889366 611132483 693015414 854673029 816576192 627179483 137386219 407367132 884778613 533758204 792592271 922360355 305022034 591156332 733460018 711633911 304753964 945635038 899531682 787591624 460348760 710555043 261857717 936839176 546118106 488672310 988756558 389778384 238109382 835277542 893857178 555333539 833674289 861545749 406646684 147750241 961520973 928033188 984419332 685832746 449958790 660266688 148514080 498610828 769756667 232496737 415956785 672854066 717860589 910924648 786368011 939613980 384490273 228905590 101695362 938024095 415491569 25676150 742114376 854430566 254387929 411128484 82208510 672478541 834580830 661781416 228029646 447357798 849082787 322504957 413705918 733428412 457824027 713891339 315374489 549283320 361636888 250431447 720681047 513241985 386899104 224561194 508563625 293311410 663942279 631700256 817265943 423865650 503365082 846674268 173697220 944123252 139160444 654346629 656272855 945412393 576162639 900751807 530501890 3307509 107333438 972454393 306933225 102520281 261231585 141434325 194876464 678196809 154937783 307818547 840095131 341008861 558701880 327980523 970549187 84100314 640067683 449436775 377893261 540901185 248012865 19787112 26086289 676870615 820687801 556337809 655241990 83576837 283364320 188982638 2926645 445091227 142189926 854402771 677962309 41058485 888713315 260283764 687510322 887552584 185699613 56747470 103085536 61354965 823603947 378398427 637084218 688604074 477482788 213959223 944833166 749572882 218681099 664439272 124370749 973579068 134646503 960759622 484201565 278642419 705300823 485360017 487993225 550227875 884195824 401794532 304065861 671004239 143673167 534782461 529544353 551485970 615512720 120253191 628432193 163643817 30527870 692006635 229893227 899893010 790311620 320845644 269365793 557704401 146506006 965271179 651047223 480699282 791664917 640877606 376978712 441212983 622675265 313235768 271946372 242164480 450798524 249433897 82085173 968119529 362432935 418174957 419082559 872750553 544003901 383201740 813041729 707135487 436267880 918545197 949345593 582693227 291999851 722423656 34942347 107766505 162200710 870940843 752805118 87337986 257955438 401926144 123702773 998576238 378999641 166330806 845130906 233773047 726857523 597078396 367208630 558234842 224858515 232621858 822792673 787480425 118265588 378799555 791466014 811947003 268464385 742232657 94856530 298985502 689034783 861197640 837294648 773515171 130924858 50667906 550142042 734250170 391691624 903704691 626768398 106449290 416983753 775283594 603266283 704091416 186238722 890373900 701285132 978260066 750537905 805741108 517019089 695907858 715187237 113429664 2823604 182962868 293322211 79389825 96073202 300919091 395134046 230129016 799685759 883823004 520945120 435523154 552917756 937679722 921334875 197058581 217566576 921024785 417316481 738625471 450992993 632332120 865854230 883575339 961348928 567663861 33199165 490531663 962627849 982169200 257446608 522725954 300998093 731866893 622897356 378028815 591640291 123423046 998452712 506334550 550569032 610292777 471104197 841106113 424601441 805337383 894070789 851675256 262843870 203252600 57990161 92163257 712936126 149887750 484635902 743522741 11133041 798206526 109035984 361127554 33547777 143583323 486021948 426264089 938858595 302230609 321889956 735673184 534238947 497529677 912763688 192077150 774571921 463793560 982123382 524831450 472845212 538708421 392675234 840354753 794212661 84709655 213174211 323499032 603314261 674279282 841577091 39275208 823379057 432926615 69932774 750447161 135875466 610348201 550022989 519967762 681993423 993186029 789131168 792041094 853178899 410303728 678074674 249736577 778953049 454127989 982849530 280491441 965035920 479166664 851550559 470752519 338405849 330917033 729140883 954814071 246528036 776902984 224849891 942869614 687326129 381677113 517191599 128628881 171579084 690643759 754395859 726922712 836735635 641872118 328083418 140537710 153805921 304854785 911745030 585121019 421555487 476832756 911043214 726393745 720484556 650334751 259611446 61071457 151781915 676128922 228392413 455698120 408514983 694132459 388570080 141866199 159944175 763529521 460342449 928288598 900041262 397388993 220065591 92690136 578851483 993954329 654828003 789436881 616440797 893383201 224797290 126107172 617443045 625690512 934796365 383124819 316762898 293306824 510841656 568669597 426574287 994531559 300962480 759478106 96867515 609248361 141831012 22731412 834790305 850500274 956176388 853873785 149284577 646550320 963927615 47638630 531234248 425485212 107957541 730435516 293124709 389202308 48345584 632768751 389280776 282890587 657854064 228169312 846273006 422538806 24973701 556362243 459960053 318248356 394603467 424107321 987159578 13244989 550467372 969867594 951633705 994097672 346976938 416166572 428254259 52319909 41174576 909716083 751764237 740593673 390685091 266624573 101909462 827738563 127886318 884787599 513896155 344781549 648562388 976299458 792336474 656631476 327025079 920970820 674396766 935342788 468356725 443922481 237412983 103638933 663048399 280019433 255380967 553507140 319095310 340767801 49596451 492082200 75634753 274230657 237724094 350613396 341144628 703138490 44308284 98920916 961151510 245950667 882219127 398452283 749453877 242696281 744001476 828563711 960653050 598317691 205317487 631275684 171813317 141939941 967687794 429550330 76799 189322686 419827178 417750910 431372893 26936396 510659727 728674734 56644864 615058643 437544331 474099721 452314834 238434049 312641269 877879068 509520438 201933956 710229845 836857525 113529147 877557138 524989553 103664566 77434426 9658749 452321065 812623828 770695081 496230739 863608731 729856306 108795672 940097801 915687905 577718146 945515705 554542399 273469335 569289883 769738608 695164103 517510135 881599382 150332701 698512450 961425820 33600882 78796051 70741839 915920389 367965946 713270889 410039390 514793943 501268621 964387361 589492625 862335469 487127244 852578922 834408598 374367749 840768940 160216760 969804883 955001736 416197311 162429730 956471276 630539881 354475012 973138220 630419894 518105364 973550339 635851584 223020663 634203893 168444305 59240447 615642823 568925312 465730481 789686885 377517945 377492563 138785796 256261349 600778992 770102615 449276691 595303693 675260904 326272102 234704580 224928352 911574800 815915893 548648494 998990413 257082293 612894346 774554883 730552621 694282569 246854091 10526520 24590208 850381609 566867166 790652392 351121563 303797927 588550677 766621243 164755634 805242771 219733481 517528025 133056769 888468260 109436924 908313456 200724341 855591497 676275508 461319326 450663912 313994990 968861702 663312825 792523026 20783766 457943467 232899658 378627393 988682484 19241908 602810261 526497072 533255966 12398539 659881546 300964126 379933953 615383799 903052112 631361305 890885570 936111215 377733426 388666081 248916235 997945375 684374578 883809895 672039195 133197558 944390486 820525852 883781546 814128614 827743957 666175311 185990526 75381309 305507302 659165735 148596491 734277805 749844319 950404315 593547744 862403618 144153167 170350188 286031041 608754439 494818589 229594430 867876822 719419435 51240833 551365879 74145261 321596497 701020761 623439710 343272512 717876416 859480035 502160040 420556615 580065656 677979328 613042217 4500513 613771650 639293784 877752096 882087680 352110963 70569006 902327391 524025955 666970534 560612954 555491137 58801362 669522832 920850847 259317936 658513168 779583486 363974135 206476234 879074303 630102520 647174450 846931162 911319315 13476987 77345269 797824750 421985162 358943769 349494216 398048572 408586282 160623313 799625913 500745936 980371257 569818432 952468141 479851907 110336665 4649244 588387414 402016137 454741511 423109637 199651776 72250192 865709878 107323420 226656918 434276168 400915121 943309703 315596780 574892947 821755686 202139639 292627746 605764346 259172714 645940441 234653125 166155943 412141773 928253315 98908752 418365854 299470636 657478736 525706318 937398117 220823810 179004553 428676566 736290429 243631064 902264819 937120005 366443293 611341903 401832655 592214197 456102738 378275760 767160732 417605633 269164990 512216439 125530035 457775009 889343479 170593260 978272614 65901971 221473633 423369996 300994349 123369734 337441373 815965366 55305519 549246801 539651731 11565826 200464170 980802106 192725936 544867659 711975014 528959527 831788646 314342953 101092000 135575566 993471165 883067018 641724209 689281857 666501768 595725771 546591608 159615626 623296269 497247123 560192278 229768306 380996498 943626017 726470701 301503240 561236257 577205714 550586769 798061528 888042936 723620047 980600893 398266134 345324175 926303154 927485648 960847092 502283825 322473163 468166071 70191910 242103076 223451295 369664807 389336262 413187375 2949035 450221650 39342025 319675519 432939543 855685205 243347683 637575321 122763651 39836918 218128272 160570213 888391850 427901905 8538657 539846703 710697900 481179694 743275940 56784105 877981596 441933927 427957337 618405708 355672533 426320480 928781798 511053547 777825991 646590086 312798304 745673252 795271164 812705025 637752033 769726239 165959105 126962602 726776598 762824268 267317745 453214275 757055784 2786750 699189791 80139760 539758970 389875225 30016667 305980907 587900468 783677832 575670909 759338579 674553158 45973510 780133844 173157541 620998697 971609708 650911153 788724058 917723635 657586386 730959746 312145711 467320616 9889675 718615390 23063373 903779193 881261181 552474798 994216405 249981348 989525048 372695846 88730140 100826861 907448506 831213337 306274232 260264868 457819992 617828211 671722377 549934802 62060909 83164510 142161239 905967231 799716643 316821730 534710999 490056779 501207362 525167883 349524657 708746930 983659629 257284858 216177223 648904349 248910829 810941628 804163607 823809428 563495158 828439740 341908074 483932409 222632207 308061072 513929743 529538756 61111491 563849797 392259935 709055495 124135865 160626901 581750192 911239894 449693815 578805807 850135 290165402 67519950 700925752 403315322 17623458 640423108 899336152 800601073 298811956 936716337 375372995 241701932 166765882 566908706 941402062 703673877 780119561 504980663 470869240 515926225 283709847 856878603 199170475 890931682 574417271 894226842 920115981 460527298 566209222 834683552 765582473 865019301 13326857 105867934 905543226 777636580 687178927 663877963 357419117 438074132 163919824 231530560 867854214 663536321 525573590 139327819 262561032 749314087 302018772 579675087 567968262 916755160 720540250 665889756 297959925 720732054 474168009 726878883 901059136 358127797 457744205 885385164 69223796 21160677 542664414 138862274 934145232 624038608 536210974 508708235 448867367 462622976 452491578 473135904 969262549 357209439 233343989 487398503 153230194 320116989 663397888 267045835 492006141 151032669 10543704 967535031 96471855 383405633 259494930 148029393 878281971 112995861 542754354 344056103 13113482 760560612 27630577 131469332 886706111 579079908 768661874 320324715 661630826 399697233 91806621 154623558 77418222 237321479 688592989 353738717 486998818 198398778 770839501 445161065 566246890 324039944 824730795 904842540 664032968 399982020 64386998 59608516 776729639 187025317 550660265 131558457 235117468 34885921 28751362 20322085 685597606 49682299 535755332 770849278 496370561 911318009 574606795 195243529 527166339 303885778 757099110 371583542 405633452 376767446 222904160 467258344 914165783 386103015 66814528 21083801 444120416 667388410 885217557 338183666 137879973 766021008 73462724 440235479 995830304 614563697 527029085 568583875 713672421 333187441 562986651 671765040 183299230 563239846 50696784 239088501 576404099 288944777 383283121 897139641 981709151 577748278 104731417 435993858 993338707 403965544 347847788 633379505 244075513 538108081 591758744 306626284 623057032 506962168 924453076 989063688 127497324 443477100 541143575 229814694 693579038 537864358 279707503 112953504 157905887 790670444 896972455 963837889 477335801 674083600 398850309 498129451 691418574 666255618 469774356 209338895 367120400 617858177 636050442 531632013 401673505 360015920 157065535 713832866 88008738 583394821 828094354 517664178 459652651 125572236 18503413 912234652 896472613 384670764 239879814 473091694 304000191 541280349 324457366 397446798 612609678 17950494 962229407 752697537 888761241 398908053 997159260 573719319 565614282 336117885 333208644 668537017 86128691 850500609 351062736 131730263 310059112 329290747 361893690 930238231 670971636 169015687 732354095 466477158 783639194 111594762 181860629 921627979 892875419 99200153 275040760 193527383 785606460 999122744 173229442 88680402 820186202 394487032 9094951 840611076 954822321 195096153 966347724 402813141 941893370 708298777 476980446 430713532 816203890 89860851 814623391 127368869 74779499 392958419 124839112 836135626 541592301 151265068 565035900 162888018 701540046 700279200 962785706 465821769 588484637 228476169 570124477 149418713 302881329 343287679 30137279 342086545 655642076 221959011 571318651 966673344 519065527 377527013 463438984 625899391 25198644 473804896 388708722 222778288 280342713 923085751 425657816 179001123 464332662 700731153 913983383 150943670 741784314 779113567 212508384 502928007 308564818 673081632 127358018 592130494 648543074 446426452 496310756 464113313 52347465 432209488 339500168 287694617 901657010 980400035 865502854 996532156 946990840 585279373 95011916 201978181 299708289 433664681 591856756 993394133 588612375 572772831 236609424 935572546 133452098 108640326 743262232 857251068 557768221 331766800 528074798 779759996 168625017 410557918 193148048 229686120 545528841 229182452 821758959 214487612 498655008 294705619 938735030 575706146 308712791 812664017 713735572 383009871 493896393 571118451 368076276 361686496 985816971 152243855 798328523 532366538 252363177 477137112 375792703 772309000 421123511 252418699 34694447 649658886 439559735 253324427 450712410 654855369 582599823 465506386 669982795 925558101 216335893 253830413 186364157 838939466 420968491 193779892 598090496 676704917 385877623 276485768 743598597 953085491 820041627 918968773 968061781 586251462 738478998 133999658 780315462 516570151 573144447 755383839 775676438 739725875 284299689 403573230 563757980 513719471 656828563 986700223 159160741 710107629 469417301 356428028 691756449 817874935 83694864 447018167 985725195 418089853 768998750 329325255 783512225 604988102 846376963 220391743 759899496 532819 419288073 527512300 112723011 356828409 400892513 499107278 196425047 561666228 518430086 893350839 192280723 981647672 600218816 881648917 584709838 720755256 807614032 887318414 442035447 503308409 911072534 366730060 702145169 921888270 574183804 509722610 392892329 563008411 208686583 88624867 950683115 430395820 679505209 112133717 977640158 395762119 939447105 731446748 795472323 401289741 621523766 833596574 714269899 470633733 565672996 473789779 433712418 89689379 640808361 616289827 715856191 490705677 658714269 415254607 841763224 192007285 108685980 937632058 32415968 450850495 902382679 203221731 588444321 169080675 288841197 266455333 359210108 347973366 914770489 807095312 371289458 662196226 455424032 155023015 151808341 292295528 499851217 921282293 960018468 56001657 190718165 412172371 477718121 96638486 108891298 757673005 177321414 52125864 27303051 536096204 411047288 93343766 725829238 333241746 355997023 197962673 70857487 863728777 8714672 480608173 288475874 174685073 265743409 562954776 320097057 385444852 308997810 76626373 241999445 787177721 274447337 852286744 920859749 187848143 430868935 391674513 472466363 498197518 688536640 576582418 975183411 678005771 681112573 688113010 322762881 218353351 991667673 917009449 823246176 456423244 587234511 323805073 173715253 339646137 249817601 229810393 104307852 63021684 901586252 128360699 251828474 765617554 346471034 580286077 715288762 529144434 23919223 263088017 547361375 941752298 750941589 125883003 756117040 263397235 315360914 994320737 400905174 312439806 997512882 874750235 907380327 21852370 556444955 159029479 641649098 749453644 630309757 478618452 773560715 204738236 857499399 776485978 194737549 138122688 346593237 430810408 915766347 225618737 943271560 319756791 644604832 477998812 766389040 917045052 862910117 987276047 809802630 227212880 368552841 747101282 707782950 868771338 610265109 334579146 271826098 839653586 416175313 879148416 246024235 489617121 199862755 995092078 79600846 324683452 101061011 21375737 446225069 767191555 448783914 42854553 467140492 921814010 163694832 365319724 302818530 807964338 352690143 685659234 12841475 809937446 305262776 169805338 357792976 444742822 73869404 351811658 531743240 323931356 66783843 580855621 715384443 292425179 247533812 576805766 588820248 923665453 56600644 849022991 884491572 181909148 691330586 194461088 542296679 914890756 150838278 645860099 18765525 271944130 768013213 894647795 923255773 107837750 896204154 360530941 642638260 649875156 45145435 920954769 780624413 944601408 330077523 76841284 521419228 652234222 767457267 45460007 260935409 533057047 486956104 220534626 118373567 29477266 190264015 835837477 948540858 306808765 828060248 987315827 713480566 64484080 687126193 670803220 587249414 490020767 573304748 42339470 200657472 894593006 905648483 579631766 59821673 83307756 580185006 429936438 158520874 546554298 982199517 891613993 828565087 754385713 210656 130456040 279991777 899818794 46552479 78748659 230573472 529372150 565550382 226538635 286258135 235541295 833985685 560490403 918439041 302808077 269622743 883701714 839638235 648077860 565227462 984456933 45475922 855474732 318093764 372474729 517904852 187574852 700184240 14278961 184448054 643885094 706680886 974704683 67482513 324155729 655563935 540943519 221570225 34525098 158848864 977466254 699898152 176274852 158873939 928393592 705046016 611623673 3790948 534442013 948009491 698226986 142299824 318115468 19325139 443508634 402020527 358534171 26223261 252029684 496099598 247513677 582376754 345795483 868546658 261728135 761086903 888927300 809114828 119812225 541698405 624676448 599315435 578933486 277217040 882131515 857203292 876652571 305806738 323420163 907927305 887862476 317862026 594976837 160812150 799038082 231856910 159813660 852047611 609661553 635438853 198072726 612704917 42652050 326888459 435340458 987834343 827780443 562088122 377412070 221926542 833686283 560672060 174052146 280705889 109512377 597756407 230302456 896848318 222368441 425082851 742372164 253454715 978857470 286834548 636348898 19653169 654394055 127677096 821593618 605683892 472325291 523353876 990545023 239474961 481621111 797552156 347282228 203622140 530141159 433375156 636639286 419333148 468477398 863144381 829736903 448565475 861857380 823287250 542192406 69109861 96506270 503724555 146444511 234017982 523354375 705359995 397366312 49330982 478508913 779497715 775046267 698301240 845266043 701152440 774143609 339841963 628243130 595907972 270435567 488606333 25593988 899342656 255412544 321464465 136971943 35022964 346438971 474899438 466353653 519110887 92618280 198759080 590441391 121113260 846819164 83566420 142523328 734638961 192844309 280622768 37591200 244521988 579251471 398810704 930136350 330129064 901053233 840346120 538206475 797378988 736113494 105074621 644480279 766021218 764797659 379953511 728156978 709510632 797538817 966428732 686234749 630293963 558069850 808403953 974323397 895882607 541883182 857788702 512271648 13482975 920496339 994896794 505006535 820934067 132699619 466026692 577112875 225386551 16484145 878955003 952592776 413293629 523975075 929957674 758362717 264268853 597516561 917070746 17570842 576977029 63830161 730472390 635297481 413548596 859139044 60891583 16445031 214922716 746182217 95378312 542737590 741040548 241950977 676376569 871454099 807784964 603295368 135808901 266237005 215616815 261841258 648029893 813623721 485370933 373649472 613219786 489075960 18437918 7255539 851956515 98483060 528239001 262124218 150708947 715624110 13060151 205789953 371974297 354588826 487138271 215282470 941240704 509053614 620944495 156934450 971262769 388451288 587214178 417739221 825351002 115762243 920731457 379458769 737251650 953418507 960699960 601207887 377294246 207772226 438896842 421634218 281601219 737664733 527587308 427646685 229978045 466585470 973955767 667102889 121923296 234931877 580419055 860843847 500009443 778273691 42686342 846439461 638986838 726781214 635968543 681753164 503174108 317522952 262448918 880691765 318290705 754453654 482667625 81423178 722433430 540117566 578441348 276367771 356578541 474288265 868821361 973578493 550187008 359729436 882360698 71253736 988216390 243408796 368392933 441715226 391558237 726018434 357717783 486847634 781364136 351839240 470243232 849369249 475723247 649015128 606687289 887683226 455292860 305872670 66435607 663812671 452857443 509044227 232991680 556866610 784712822 122196969 194152274 825635181 362192428 512454681 841846606 449515521 513311060 934971557 591800627 293091741 70149218 280673604 957368606 133589801 951108965 826011523 658364287 806683488 774008076 247143276 168993098 357783639 583018732 124280575 32774975 776532241 216306535 424673616 975373933 443253658 914568661 536845145 876569329 229717442 878654909 574257919 947740284 500057271 889429133 539563415 431909908 817204160 737970278 931959661 713007104 616594335 798614499 838596523 246241628 826506651 489093446 34788224 972275909 858259904 619798260 197564743 651660334 616303410 872030060 961862312 217857996 405385780 786640842 9626554 688484215 616842643 144838612 465163803 790798666 575711213 940563173 479169400 847948326 794932526 24873520 884876993 493815546 401663538 212614678 452350774 998484352 694848987 402221302 538551363 269404982 832670501 186416602 49234916 658216301 326151815 245771627 742701550 640124204 874141310 476480500 510177586 87203014 641125692 785704160 86506982 173628751 895426437 91233304 268441799 426901908 661861861 495228799 9587544 422996081 353151026 523554107 467285322 963710702 310618188 205606132 360095846 250579561 785153891 717164686 567913800 242472770 763203590 735464621 476556857 138248657 944059282 654003421 169710656 742681904 70104287 133303027 317736580 457458021 668605039 510245754 784783225 571852881 102216207 295934308 851580772 43941996 754646565 489253934 509454194 976793444 502804404 628179751 531258754 75917791 199517849 505868117 232019937 521133634 551654619 88531763 670318234 383884431 565454036 719682328 935966502 335711014 942926128 505403306 553223522 656899513 862319207 862231614 5084087 438832994 409537788 257748734 53944219 801479297 388442263 111025666 278908441 274867692 953264907 193130809 434476163 682429641 3401297 925646198 424688015 112258949 957251336 112945610 457812288 170076713 30833588 209850637 361431260 211119789 471238653 81089810 110782317 613743839 339239080 5003500 209363926 608866452 74652327 577695542 144833887 996115344 148579745 971081922 957036794 270573758 898862536 694866513 533590917 778171576 834866711 413106946 245550781 338870746 817779169 767829502 488601071 277030221 869276396 344492804 279925453 988463339 575494516 986175352 164769325 67412957 674408136 112718074 841678758 930223822 272863782 94919623 736002865 387277696 381626518 6827319 94129813 908223962 319034666 685737643 840479239 603629248 79703451 842869765 189120756 814089457 858556973 692845277 138587301 272155660 853527303 212278685 840375136 588619050 622651901 12765593 136885416 806471512 992616395 616072468 42986014 649940569 68231595 398414810 931361812 552079966 926489244 949533984 759119117 482191995 20447512 967092808 788791473 170885316 633083448 221647623 928613062 425271562 689857541 932178148 969343110 664863707 2487486 88248867 810993875 904931674 506771823 421601848 181044778 755537270 963397917 180838965 246142954 800346959 561769883 76388426 972291823 185193370 391531277 282319728 538867884 438829342 799593808 620902689 870329846 113647275 490661981 991212364 837925507 188836033 499853235 7272533 816884447 80904422 99669097 523298997 774406451 512640831 76418266 277825231 249656702 652593216 878023611 665924441 470336607 561390148 684773087 391773083 732894256 581040321 494596205 513331908 430788781 806134913 320072375 323911443 780434376 767067528 241593598 263059525 508250143 319144486 128274055 207147835 450796574 957650139 674464467 4424066 733670636 866301433 430315773 712982613 945276301 185336019 952391378 136253663 725884400 466871037 861184611 463044726 185263934 116334864 894164814 368465366 61913417 798770813 442316530 693989893 998033787 492154170 959343805 216916965 932241241 277497463 459648592 405622079 402695624 13271687 936395545 214075597 725310332 57164020 141983066 973218089 497401641 508011326 377405569 822448533 290646029 919102676 139421505 70078134 516620338 680782221 245661112 748818246 114923234 712679747 136509758 259197561 477937774 893842970 647117856 239766846 384151312 939909252 187761987 993110121 219793672 208573265 543429582 964419218 476007377 109835616 858138821 537425670 116892828 324317782 956577662 92930630 559842089 381315492 338747682 414662076 399000431 547364780 609461342 641783447 893732016 605155023 135075153 430724243 443494109 548923627 534218850 280857768 786918574 569904177 937290636 902720521 591623450 232373371 723945822 871489594 989750540 45344800 781845182 564425524 926379186 161614623 491529531 624849613 190823143 968770697 557519841 624302109 888989089 687851156 727670774 300373969 716504463 765707118 618071788 498272280 790984752 617678673 705272933 30923200 208950727 559273938 275298349 269555308 283706225 895675347 873499582 165998066 157443944 615858541 991980375 358642143 521881219 701747870 427589229 304913670 154582171 658434169 124153133 937833674 719214423 76997745 752783409 448114041 456587668 689457208 312986899 487265962 31592487 252173954 152523658 395662808 511026281 765230213 541066220 341458677 713478901 982812107 933186849 397430561 833500618 141622121 494326150 440537469 519098453 88610196 509939061 197378476 176771635 744009557 206740149 828397751 308300465 40207401 988581452 425756804 647675776 645799890 27557443 650772293 147157214 75544387 780008761 799964977 767859937 146856672 750994717 295455001 822948941 986152230 418224661 792868694 56599165 880185153 613906568 88596668 194349291 27472980 58649940 40815861 848577973 71151719 911632142 651239611 206020797 361206097 369545611 265699188 243106382 196582067 690086285 958931045 190981372 886686349 948768188 652028303 609795482 464516992 780151948 115339075 904051434 610114503 927020837 896940402 950839099 576090075 763914696 256528825 784872281 164452251 205100500 786653702 942730119 91902777 403423791 652399788 389917451 697177072 338448599 821778950 235959802 961354064 844943647 610222935 720158833 991001669 548207341 711036081 268259531 855951351 126638056 485234499 898694215 574519479 124969133 743951529 618491944 65937189 595918678 365422303 646480549 792074686 687944619 629470639 299121861 102516856 900302604 185136160 369923193 351817427 742207760 466497099 816626211 411992939 852834335 444753910 742296448 797225495 421888548 721017970 268050838 695232200 574203285 661137323 713780499 886432630 294415759 374620003 819881825 469816892 332913604 668985837 347626163 25155071 403043069 435062097 741514225 71443262 2362078 675816240 124690784 881931205 954918141 488373400 169422936 803913179 893640008 922479110 86916262 66921107 424092598 670758378 82350341 679913445 999123247 67594064 94089683 721771749 982739383 28347453 387101677 641430596 75368614 327332105 380796719 781255525 470619404 828440007 167747048 795867017 864721476 293609026 845676737 900793631 718856330 781005908 282406442 311821065 155789985 501714004 378096078 222869524 382398937 365603224 347103025 603260576 510786263 45633950 522064060 380561481 426558450 901627255 538919538 818649804 433625379 735535187 888094375 879110795 92162739 879863409 302934173 166114140 625039554 285633562 614261661 568700981 15450618 116149102 209230872 698038255 868358061 257983695 494548928 14491692 488262920 571377479 698541278 899929992 407634540 753380582 785049120 40997344 236829002 711518897 930082655 926594498 553568981 176721624 998889736 628891580 603664989 617290360 210166449 839045407 504305296 793246914 8159529 834779198 664770536 270485886 330957546 655974240 842643741 424663096 611015225 722844509 205738901 511971669 268419963 553174818 541928430 191169305 393157896 168615573 678185398 650942464 322428613 485004976 597063632 749072398 201019 381593188 192842994 571189283 236797358 714956558 273995536 509030511 676899703 752660375 547549817 496575321 302089923 497480347 124561959 615189491 125425327 85927199 788312554 65773124 811289067 724601977 12847621 974830619 694421824 35562216 338796063 263679317 735601258 169804983 875877437 744561057 273610027 485935414 128397486 377111110 51267732 469297114 98013946 259565379 650219617 524857546 850631330 38355314 466920235 820465848 721075684 968903214 968700074 663767965 460682988 684581879 816227554 871715706 453466551 734653560 219461006 350418418 753642271 731076190 300558493 893919696 300383753 398608605 266643140 231700548 862631498 640263958 701207715 881864989 401543544 460304760 14302725 904694496 288815054 724436579 745519732 854254885 466881243 807700390 895536644 671829163 94242408 29390916 246727704 370782930 719031570 665140757 546137228 802581390 357112514 495627354 621343056 55963905 50776380 937968718 675149890 46011021 55205337 408191970 253608970 214890572 196375034 776104256 984165036 853958609 754376125 651759973 510081115 88529295 733335260 537546990 511248011 185038851 718149566 171722251 213777846 950847210 78628544 728370521 142872531 589598416 564412276 804965188 975265373 435714163 371116277 440170001 659305513 862062200 803130164 83754102 883168007 203076849 540768168 117939851 207084652 685202209 722399639 977005733 320576590 428352657 840080716 4148543 314577272 292084009 741100470 275543485 259137421 970936669 507045709 666928105 912688514 129900439 452493494 39597944 311797783 628691141 54222088 122339114 227770068 342096370 458071277 801795787 135328074 376135863 676201316 376834203 101258986 6603208 276100599 363938011 562357486 298743347 88606882 506932045 118033462 403634568 458086996 490882137 500012192 206419876 143580437 121296700 724863498 442504353 261367353 713975593 589504881 992114727 491803806 93561717 313847818 127437928 180916863 62405133 282075482 230295247 544109380 484379769 935235271 775765401 186778418 494283450 517925394 277200666 601380430 761051233 495560225 155357938 678640707 250974744 81208399 519710641 349783179 340899115 859892950 752080376 79066479 317121528 470177046 331735616 276490572 984794871 183356200 531327208 485191094 767398551 890076319 59223051 424383434 742021275 196492839 132505284 455116175 81103315 154042625 209168119 960996860 81807084 964960542 950654958 306648172 125562557 53044127 661199336 1343852 945471206 194800343 921988872 111767376 192197214 25595656 107861215 262506537 850741820 195335923 268586876 912083607 820625252 768676007 716359142 639465441 244699203 274133551 865521457 796330979 355923711 287259947 67009629 526280040 269488589 302052617 309377006 844741263 841587083 38857731 46799042 296856762 282848411 278538552 538353021 851848021 552835150 786422361 587399060 483980015 910281561 818837373 366179039 673912288 764135959 330585605 635582656 713849603 735415619 535977122 917194442 60756504 522013649 457399958 98017657 257617554 446811967 466530124 551633389 314664518 584211309 89343541 633085052 966174159 151057578 445310153 605552171 973828501 658190095 26423046 146214341 92272133 852797803 901652345 954438176 490563328 730386597 525083009 494529091 796165644 904718756 98746777 493021655 258346352 143732134 562834172 510578794 939372226 944510448 654457634 212402996 468077706 384482286 345853731 11254010 571240053 617977401 541040600 761302250 516393791 376014227 487424121 841480457 28499683 348080016 988831363 299024641 556779609 422659379 208895063 32276370 991284547 504883796 481082654 38825681 6994763 677084267 565847348 94721916 543066872 562096000 49979219 234218751 510122750 787155158 720703167 871286230 155860208 987471735 480798822 717277729 399467528 860339489 891326362 258784803 319937358 131683779 369428034 521753367 991409352 657950759 806420864 436883622 585974863 381196149 232843317 6596896 288789594 236934115 576844111 867161643 981984216 809383816 564671631 922321447 436146896 541646631 295037279 665490400 457739461 751095244 503336950 680652200 523395800 765168478 40111417 231483196 450283390 870046724 826753466 432407529 396283271 973645904 32513490 678910291 582530661 220341415 194152007 742616382 408169309 2786089 924892125 184562934 679194450 637971925 655539727 236151327 450173773 570237361 402964347 311940148 287792412 949426784 113377325 827827154 268019570 247342456 774312372 900418971 449645053 110423909 38009407 116162590 294451519 952976591 837462964 221966697 818039804 618623852 805459916 363549197 105831170 459593669 367369996 647352713 875125092 153535739 726448984 479426730 809602322 515315688 766735150 741096146 295650235 72156947 184570836 952544739 626859041 8673075 510495542 338996531 51754673 561575163 334334973 458110548 104638154 13593128 348382998 978496520 418703728 467539614 738427371 859260134 985673072 849626116 141080957 859736272 612960731 243738042 520810194 396432197 273556103 408345241 828691032 161775023 214863875 327994321 93968115 853374069 129915740 107756227 470172606 912330010 450439403 198879521 294632486 59697158 327551012 706012178 550015671 499574905 10335207 366907444 704087559 843605508 247256494 438489552 856502506 484170170 960988179 3906787 613778018 449820801 337620541 256938881 958972103 772832302 177849809 361345235 57279212 950711904 674277176 91181346 45134017 744986058 562532599 727516398 20976478 248835564 825440189 288922365 446087184 256447609 289206155 870862784 887309891 95997180 125221252 302281406 223736651 694667734 684721082 296234254 767389221 435088887 98981478 678093579 57972326 824955392 288663330 828253826 611565392 538564732 127098989 252829525 773468823 897398807 77337645 967134190 607359049 923969959 973905391 201284537 318385447 237267115 483670098 382966917 443691936 376136787 607471819 589406281 8776762 773620163 905015464 735797515 808720292 104167270 731508884 608662885 652378678 854382066 373342590 565253488 796765114 736992915 705342034 783380553 692349817 310560297 185147976 436499970 992317200 505556308 142746158 991203678 727861252 39423394 666603258 358356936 180087981 371983834 351228535 758457254 825506901 753646573 625291742 615292452 830975543 448642844 150609702 821163771 310402817 778414372 454677649 324981646 188567365 696655744 486719795 835951485 408195927 374575801 156871876 127486982 11719811 619614954 302759941 669688405 671865981 423247032 106752145 601353991 56537546 721253825 266757987 274088267 860530449 544941909 697426526 778885128 270045356 466568670 350592545 536466619 479672802 332342268 296728477 202050364 102260724 451871163 637693689 382987472 506748857 788205643 217108784 868142822 419240431 177912089 67571209 776678303 569794408 598236056 648824483 270850742 703653586 811522349 296022017 435599308 712596603 127064441 59327923 419496552 995377276 214918871 670918584 334799017 859807905 741871529 925134459 92184789 491386781 682894797 787296296 838635305 829785822 755416876 118662623 442515801 554526152 721598816 387396594 647383241 36461028 642558911 666005111 830153776 204435498 224402266 436043910 27369533 114488752 122231646 207082593 407767930 319432574 334333903 954176761 589832020 896791763 196908815 33341611 830508025 535041633 830010037 711711220 848661120 848412412 360232667 155639572 636034599 638226752 278415010 992558037 267327160 100769026 96030362 869403495 220029411 352339522 239183378 335520663 571833088 435574809 699752365 398908407 930174476 113047829 920927337 298027632 987305270 988970971 976749132 842085750 156599797 879627506 968747352 396483273 658217080 784358814 914616400 259663430 100431703 910112327 622125693 786942629 907593993 285680786 634379243 555922289 267983229 737916452 333393506 119900537 199412351 989404928 53995720 56645675 723160754 109755520 418339435 189100961 168393637 371036479 827901260 457641126 582189877 990461406 307750618 60825128 822584540 607600670 484021121 292586612 606470925 304615386 85490397 930547157 851386983 828661299 833697085 284567219 869747600 121675176 306338379 440827568 436752560 400114764 528948860 62077735 256087554 284790496 496952335 518435971 609642653 248505174 601100190 18684990 982319955 304045114 52335361 66708874 851404574 127638755 856001514 972714728 370915211 358714451 707378100 244323124 42666985 103380781 754327329 555563055 687321905 187881561 737488172 215781648 218864991 806115081 406528805 302456261 30661728 370144154 613869913 714856609 633339895 74610203 853887449 336782731 203331214 711387663 511058810 667665150 72044128 403274115 495892295 658295186 151066213 864527908 269001378 859941948 956895433 494261563 973016786 158439751 604907213 614050181 296200113 695771088 184125174 968223120 538712252 690050095 991760596 576203234 630439145 371215891 391835561 350488108 429079489 738712845 287951925 889930931 870795259 566378495 642472116 351090541 560489218 468362145 549852383 883978403 778303478 503650064 515462346 578205926 13450433 646895033 844268809 498495043 320761297 17886559 602160136 632716606 380992056 129481688 248039390 99541535 427011577 96860129 138621266 394090653 216827616 483544733 151684328 151427629 85566356 491974623 498383850 666804621 693765745 328291800 285593349 203777685 639739130 608063788 533560144 125088214 900448955 530464016 714015258 462097547 160362601 330916064 953758062 793336668 266428931 479881732 619931387 433791207 928312714 974466810 979129058 737902853 337178117 924213834 443571854 628509457 279000717 773193012 184047151 928881396 144100375 465895554 568831446 219572751 844723879 52741858 749323753 738245050 735631994 749125917 54504743 412672218 743694385 781060721 430326425 382584766 222740328 46769765 98052096 794682800 575007485 234188110 872925278 967126295 640832688 73988097 524238565 399557330 857445986 193988867 4501203 595779495 633697661 668397987 205850990 274693285 674615638 618157829 462700212 394756726 531279811 869102692 343439573 47442350 243944426 38549727 880968558 132450402 378967981 932521680 362850276 659781840 804099032 459993697 392979687 78355553 855327729 266292437 412787019 317804051 496263861 830580205 503687928 639829088 306758064 489161671 529565231 511869664 908790686 567740235 296937169 674669750 378998712 363157789 894088994 474253132 554055965 677505697 810915113 593914426 583422848 273897731 221785419 552793522 251319567 919579455 451152092 536273272 666981846 890242944 898929819 482085302 313062759 568685012 472386797 957706439 188546136 167814249 246126247 974290105 993920622 634052047 761544918 30364147 16025861 436256274 67059914 425987466 298069436 904184275 979211644 275929320 471407204 400223842 659544420 350333481 480979234 473799418 132519715 220251107 379363295 59760602 474146859 314680354 123529796 777479245 297977835 287195051 161205722 580638593 584388309 969440927 141146200 195704789 16681800 863510814 218155194 113224638 580089464 10112419 333707222 309959651 445186074 159812857 558580614 984203085 576662985 79656310 603291538 399558124 665363567 169263631 375122205 153395990 593934947 44827865 396893054 500444893 703429207 273560683 310598469 187626869 880059894 877442521 137282879 757846535 619936669 159433986 948301331 304135188 781240605 583849798 670969192 645854460 714734151 665204623 49800186 613873710 333191117 25416703 564631769 257975590 152064292 86360848 951360654 41256824 637754964 926517645 587722045 548794927 237320938 568203603 564890127 443411170 141606787 195924559 440848942 211772794 530809665 818134167 434349747 960647824 25367340 805321912 332629863 458923626 253593955 87755731 40998375 251742432 69625369 107866882 851367715 656085075 510270438 542050331 35900116 74116689 292344911 195944609 36543225 288525209 648497542 524994807 242514313 822525739 855559258 478161061 937492968 792812733 892960450 40149324 488663299 818795628 212439551 836023113 17714459 937019836 531043552 368357572 25625913 773508162 725702183 541147061 805323734 565362860 541838456 888970995 275599979 802584451 493993978 69978790 733561722 715252358 518471618 880976120 307962564 206195829 454905810 179957011 84772515 131859641 671008642 134442661 536957768 131831150 889045789 989593345 90083840 386741014 635837879 660934620 5136547 529343185 474188329 108158517 792598716 681074208 984203143 273104826 239445193 317304190 915644928 124838047 204657546 580307812 730319076 630355515 14399608 760359921 525933400 65478051 847357797 33407878 986317915 212860205 217835357 314591651 455015306 641322759 975631547 408918655 381186746 953239670 134030607 170226713 935335887 716613796 608647870 527691650 267950137 956499105 376486107 135779233 44794068 905173732 380099448 567237460 262227745 214768299 314016532 305173309 764332637 335278893 58956386 190268858 898128400 155878362 379178679 734729711 920838529 343096429 140240569 967467988 171017578 499049491 762178484 122008506 283784151 16656333 120907835 430988289 806844791 746421636 777794077 419784602 269348040 221340214 891905429 520868942 606092545 703337742 229149982 645719612 317656303 565040820 762922393 833185336 291444206 641776767 637142520 204841842 73773234 54361183 142961242 655016945 668517891 132130215 197860152 400543700 734565147 985300712 97667628 635689265 969537016 355889289 533382638 4329313 724366433 278555403 955205421 183792214 222200291 462799201 49577731 797554915 831217792 602480692 107534203 662338166 59931292 283149176 624215280 719219608 669346194 105480723 70271334 936546164 786931493 607027211 53095633 871523927 685815159 324808943 765774955 206122692 851091512 599732616 502673901 815066440 242245300 354721237 484015815 776838674 671709023 258240665 897341662 344614285 437977331 658462580 46145017 796502867 870865764 686454613 208332011 457651339 864637697 526248569 436112176 205205439 387070712 439387430 665962721 795319975 100980072 899778766 409569626 733349603 491758670 912081980 651907269 894670453 412431406 849934795 597095866 202530598 638017912 853793290 930639711 895986673 289138404 332068157 508607559 937443834 657693077 99143106 442015017 398058513 463775973 597358244 357603078 14115731 955979484 216337263 205732661 883423782 560008093 973921350 901012000 968305102 217312194 603334128 153898040 463835311 633069702 916217706 770783368 491048458 857139961 551777790 990349787 420363263 610526074 777733267 598580256 499128337 75009608 510162385 981692446 506986560 193139442 828937194 762204784 300659087 23694439 292256490 765111341 689138630 624267959 238261267 830290 422092853 454649416 753891315 518986669 805481771 468570880 953848983 690919216 472354733 732720292 859745064 786701849 911376730 174486152 515552813 551213980 937594929 207587477 393026268 273007352 77825229 391041546 710607009 501302671 361246063 751003552 576812490 690694927 148097925 196211460 963266700 622192380 670900025 443831330 567421054 357031628 383111118 608054225 380400674 678089268 979200192 900574349 517908862 914398549 93695496 269965374 528746395 566912323 63527826 224305677 698576878 97521783 532574775 755769500 608677392 866079443 670187127 536225604 427002690 547934299 566098947 810010518 851331473 416519453 700345303 111453316 533436499 831885965 908233443 913131966 28791957 648963451 585382733 787992214 134679160 512185102 682763666 538644391 351375462 789054348 751741090 704264302 267290501 717894507 545696408 615929093 40822736 811023947 103123690 485849801 376529310 118778071 572729890 123637008 614511506 65517370 251412839 735358823 435787794 442402530 612520646 658158659 371685720 541514317 859618183 670488758 941119748 801015028 67226641 449326888 239778655 89204734 915014503 863031944 126915297 262834675 547823154 609767113 661483748 80755007 952425398 324985331 833996946 532715699 254783868 811898558 946712433 329730118 283273183 785464305 773270212 712775924 163278372 809144494 508389283 622454988 978623875 672506776 510375206 369869060 796326665 727158207 525419235 198991690 606587813 457056309 666317649 529849622 447905511 592523674 296641578 311813590 348190641 725446598 534869717 969644138 709191137 265010685 801453328 511987696 957184544 351980853 128955688 701768776 809124236 143829917 210213529 591596466 114048713 280059094 106935967 822787682 28995438 937678876 670524425 291421026 529348254 93552678 550519957 258542235 567392995 627510224 553890202 760434455 746689011 541204010 917801971 246337208 987031196 544825231 767903022 30865900 608257932 891478433 647546096 905529911 178480480 758359103 13240163 474621634 397075075 218125102 568644361 514282276 75741083 894113970 728284128 188487815 908136275 187490807 348415668 799229065 863402309 449903117 82907678 612140645 711987221 115716602 582612251 504427191 681876035 120784426 193764830 722835142 408946505 333549749 44374757 65331014 743881331 297254290 79748526 850821344 904840449 6958520 11190594 108702047 909449582 384893199 111880075 816376650 617054364 123130855 425400580 588050 223045801 244575955 44518233 341869118 22551694 561745373 514688812 719543776 22444139 968724330 843869677 104981418 748381751 672160579 918496348 895390729 194762719 960637321 143060360 491598880 146810194 544348511 432710838 815602670 481280674 663017937 407830901 629348467 20980817 939762153 680509301 207220057 776670795 847195031 226271934 57962945 113622367 386068228 758701758 979075630 32854411 696856459 23664143 707403304 873470209 372068715 109309346 51043349 788381427 163894936 894651505 244698134 697187710 872454450 663263175 233760720 631138998 26753012 396489796 957766048 750841290 725702821 808700412 500088902 198084527 788289253 744978432 697885100 30662877 545152202 344677439 156491908 887505508 203919766 617630346 629918836 816031959 223788497 343044388 943605587 62676905 95199017 319859065 840510885 509764444 527870897 108953728 782034150 747881121 145184551 308743040 655463530 819417996 468493198 524980485 513786387 728338866 554393140 524460988 747605416 545795243 720829979 952095694 593514268 306268880 477847926 898156729 237614003 757339180 278068367 355817813 995393265 528882460 859023727 729791854 974574837 603386309 771438225 579750827 276923327 353336443 158950797 313248172 880468432 101172504 575305375 301874879 838966806 663694091 32210340 876082780 978769251 15736386 882404890 381219910 554849381 247679113 533718143 47483128 343209503 869974041 392418861 744837573 746677152 449894129 970697901 803293363 39293798 203320585 98367080 102835370 101377839 782093266 400005714 730355967 304203135 553162280 667969729 587440504 81347013 742019738 201183918 822627639 720286316 748025439 660385344 476224088 717778936 905867064 388063402 418439780 6681463 822025762 8132898 951333122 803246671 246090228 311904480 92131966 782273052 263519064 100786687 667145589 150862777 500422081 721834610 202299784 606388637 932960079 414477699 313432999 91662323 760814612 105501848 581281594 945823219 379191674 667765380 841729864 418889060 474203207 741220636 391217423 455963913 837950640 58161049 273012865 165886717 348046204 81643092 970024450 683018094 100319420 488247400 798443140 126280833 96185948 533851535 499704385 640603925 314814897 927395732 772727860 313159012 635064147 312334580 480204333 468568463 285655644 428248214 648006726 376157530 774088006 516068081 635689587 769729414 148301849 526823256 948436104 97983707 108413155 395918504 26743251 447648851 844205708 115174317 69741364 13447516 775300482 584704569 251359064 527832154 253646567 906279649 176029794 164690090 248139638 279884760 704218570 997703207 380551630 423039620 312822714 735619470 865293493 347460229 155583738 209860197 866458518 591150117 693920531 995145630 147807601 221894752 359542011 445288005 525521642 795630733 270782017 124750227 98205274 637536604 787293087 476223973 627371761 583353216 884703830 151123924 995244537 743594253 527836575 91242102 766451622 66650844 42402006 361860769 788036347 804491392 58486607 852003520 767798940 855428659 790941397 528684297 955470767 121109575 294025705 114844854 703746816 343486727 161659594 223960380 440496531 113907670 980799461 621433351 920165834 809742168 3530302 55822151 891596368 583737486 151964374 512568739 423248961 686274336 756778844 202046425 998074500 20391003 86567152 508005441 699840236 708410078 877000233 890948751 369965501 426130098 218130006 981973797 986434536 676830353 418586529 452867762 120701119 246707708 121619188 966448506 205544652 123893713 646216426 408923540 71232035 762483864 908757936 628234157 513506393 227788342 941770832 66965724 966157713 309748272 250097201 637546479 963125311 82020892 250376671 512929315 763403518 901295689 974728581 668608955 359290307 655968095 273504173 71196612 776520182 252338217 919436107 513966591 656746904 984284365 430900554 312190754 419896133 957216529 918357829 852427665 543557417 871545945 197088138 953792439 946605279 919051873 988261329 891090632 472397755 875562721 355063819 272533638 865770954 858781230 224195499 733360466 205764943 146583740 848321676 354668948 773403144 282808663 20427680 540513540 906055895 847875710 581472667 944878843 719947864 773348657 718433555 436960195 40907864 532607616 70659727 3496902 206545978 250528672 14501848 493659367 393923462 683480025 684177650 861648949 751806835 437317178 463762995 570552752 484903679 803949579 961760224 90131739 522745890 545126481 575416287 654149171 673355081 795990391 118143614 292593268 988435564 936937502 288313370 565467318 360381887 676155638 81665977 988164167 648786686 347387041 657167139 489541838 787381548 92180650 975933347 661384820 161458872 556447433 864776636 615287956 99587823 557408937 858956447 752069029 80593564 750044225 415984881 72148919 400477235 212007608 827163458 693142787 8142884 504445583 533554194 723817424 251437646 394305431 156348942 193966827 995819173 795442043 16708204 300104357 412104966 524644390 80176323 637109263 744398955 963219446 549312017 616315701 758905160 748756183 221965008 267176287 211707591 509964063 65099227 852233264 20925415 731993205 565216539 791430786 338504539 352498327 153915182 460792064 139353871 515504010 740264760 773332426 204724795 758534832 877566541 324497086 93879293 753565475 367666297 791877272 540307236 473209457 659090491 149777440 352783303 665811696 491277896 526966569 651929153 530508192 628905197 434696638 766756657 908030769 385318037 885747410 76643494 682616468 896369535 870232577 326677481 141615488 376010262 251265076 231193928 43906311 529528406 612735188 798733048 742749418 861096925 789568858 883078468 34501226 418233297 51262685 193298074 638731451 661166408 866910079 567597285 750602633 936703541 158962258 194527722 997247442 419119347 17224212 455227103 872512876 865424330 337826357 541657380 582398162 431828827 975326399 128576688 790542507 293952860 827574716 586305657 243873926 106174901 328757170 148989195 542443746 956661908 323418264 558173989 308669462 722596660 178268414 500793625 18334133 282915309 320767846 2848790 659748428 989598690 202989009 236691592 384032774 98137733 55283086 80830836 520698175 611552729 556456197 482805623 64348291 941306419 194931480 803519506 501712675 726105790 645395599 46016645 865372342 765301661 784636801 326593107 731833646 344094643 171559125 396137460 718587402 551780954 679050632 208948274 357424368 492267445 601517673 479265401 881483389 182223522 887363487 460101252 878801596 570401910 271369408 816127825 450923712 977738460 226330497 519573906 338223498 535133481 647707757 376582148 43837660 31537469 44704572 501586157 96182501 135978083 536365382 678896267 64952393 599290155 140847243 886043921 929142311 520389814 982973587 132491630 256975477 899913438 739253815 263712158 853399662 45756815 215744604 552968612 305871722 349917314 800445977 663478400 888226158 478214399 294863280 640499246 822334293 116516817 18388794 38401561 155678954 868920673 509252298 39978115 975803744 884247312 506571393 434354825 680614939 5869698 825076216 40736134 445867804 2293733 95448967 732286013 870220260 191653449 801791553 695001756 659590686 50700956 994317113 310165017 499964842 565472191 521796362 786096031 780682627 374784807 272926199 159384805 599999604 865197379 726920269 875515936 307750679 589578510 890689895 454075592 391712977 805351346 618207455 53578316 361679839 320483698 232476086 961784598 495443218 781280537 885984900 300360363 340705726 946994623 654864214 370811244 779516114 246654193 231921262 552662739 115027286 59304191 945018110 702892348 554482495 908718002 982373090 926091735 356143684 470598938 276069914 249292641 442189821 195961801 961500126 849875707 241917106 390589946 432678168 224696127 642847572 912910887 833575199 913596098 675934698 139351607 514772154 68048450 415963945 863023623 784487906 391757347 185088510 88201417 419547106 255595260 39550568 200883191 141371823 566470437 437383826 509473481 864825114 633531973 713690446 256556747 158519838 840878451 387219975 808793328 273202446 943798286 814784492 525951359 490362154 242527467 49093446 959780351 165062881 262048533 758633205 527385043 613133764 602018626 883503812 278606846 110252206 553496906 160072377 756051349 934552006 80968270 415920754 482998169 814812470 644684297 598831743 438394374 464901468 139626194 451157212 35962625 107423948 794048242 652582701 258746619 226668123 223588820 712253899 963518978 997632608 116138415 728279947 117618564 714555215 182629203 982020847 663653071 128797821 441322453 866110998 898739811 104656681 607356716 870160540 709055450 169993539 590716153 63631005 566472634 329558867 971718775 333196827 853347963 161812104 302189337 104275682 815624757 720698675 83542531 341541109 180041334 49361193 560976552 69720843 192969690 796987894 995405782 329989238 922645692 164534785 753093057 782273022 443407524 329169138 565594142 559297551 918902280 693118736 891626236 919408236 823403072 82654934 614900756 495733859 302698419 444887025 944105813 858155397 447194391 141654765 23509359 180309928 483157149 369927222 407516957 926844693 458266976 412479943 140994638 289162189 642609116 657278593 668979336 874212966 455261265 861332162 397911000 843281515 887189492 677311640 41329625 199766788 252421888 84575647 590486763 921894264 247849364 666847738 503300444 528313907 997991139 68603263 803863563 849895065 138855959 85912634 131104639 23057322 320767504 823154362 181122508 492999428 784730604 651798336 32851249 50839380 165609467 434602525 847045197 248923686 754324913 190644683 47694434 162624863 456952116 348297375 774369619 332856194 134188981 432775295 373373727 590330448 368301131 221739508 11274910 10629193 887737478 662897521 883571564 129759014 826790083 258420144 121730919 823732285 558137800 642209002 453617172 215547220 682084806 762080843 612805909 460208182 421672002 681279124 865334595 26031148 769854110 367644263 246038142 771548340 241088458 580530018 273564717 426337048 730474193 311098155 17537201 27001373 917602769 907093807 846168601 296852185 361861055 13091177 321745792 942313647 277665807 734617341 511164425 146684899 96811612 647657128 593370370 66368859 223259039 461782644 94869582 373535192 731897863 82432382 729926957 171390289 4644881 143887982 938416432 759960375 376792817 295374152 350953559 611478727 319792023 780118455 165085029 318932334 368280625 402740488 929290719 759151031 75745499 888722934 174550695 865834055 82101830 954835980 841954224 180563007 684122608 431959470 784704398 906938768 727572069 325072378 249606892 526340047 958383972 980487976 260999959 792122512 504683829 371363640 617385477 984905507 797283122 916011509 756162969 876203427 534334201 607788897 899938985 391965267 495332271 965656406 270359904 755261498 483248644 961590176 176792528 850129226 142843653 690865270 25381418 560217816 635241703 680147769 828113346 483466100 540940119 420274716 8094615 543637028 674341339 498597586 945062208 855494857 238312965 318137164 803061204 652189569 286599044 640248695 821272648 432444460 952014119 365334380 585040643 610051631 466628507 290545828 556056913 651223636 943921731 131694508 244451970 318861779 92653012 4335721 122385429 355665618 948392485 706147163 826211520 618257543 351663081 271696993 578585889 112798514 553813589 879730787 76579084 607501077 300366357 882367884 483241267 49383524 75001180 541143659 748975275 519742623 716111981 924091492 666422719 390242389 456899958 333946674 176988925 472397686 434464880 898637231 128599761 463978897 42082438 715892958 278225780 457178717 21222585 366928766 877496872 795311249 885564666 118161379 19384787 82564417 642218804 274136828 1542424 706081903 695249091 626784485 501186851 317988904 673710239 227585893 826906400 323810724 653729426 315376011 417273998 25434775 24917891 437152212 647211476 891053410 84315706 892480725 551791370 305848241 202800979 444544109 332363147 223193187 246448221 846596613 271702010 553576783 361831017 316703208 720180667 787750494 116930618 320002631 12443678 113334006 105843016 984743928 395924707 566198744 507710720 910449517 971277162 103648083 429845768 650929110 109629172 335423060 116117400 250339934 922324010 876635053 677728838 357745493 857024860 507442675 583315432 930889940 505936034 768186538 328960558 489430979 670528380 754071410 19110120 962576984 141157519 256051675 106170379 243816695 148036381 279412212 748956319 969629835 564686375 181716482 453584789 848401446 394173736 847481998 600176928 723202364 581163977 518992459 112412751 858277158 915417276 713520709 815791425 105023727 780303845 773617112 736887688 167249688 709048339 258529096 32384819 789962342 398455744 571940192 280137655 131444657 582918817 369097316 276234755 982675071 225445779 292711041 26206851 87699777 342390020 357532985 841725227 640473426 411394285 439406864 486752357 570345926 521330815 700922078 236801058 192432305 674997190 791725079 39134484 101403970 472070665 429698475 625221361 967624373 642293056 714743559 504695503 246218239 94556962 904982899 236465578 590673402 724734999 983426751 237645131 823692750 644121204 358952306 756485797 389833194 562170650 658392292 390720742 952994162 128093466 43532473 233520925 471424615 125646459 287123861 681785162 474678881 480614653 844378508 200848248 372711727 159018292 921728581 602570181 4741312 235942894 49344876 848523945 834711761 752888433 517625485 759178339 530952806 66327770 299156504 139033418 911122655 659041975 520309580 326705279 694634874 120338355 447729122 932657019 198624428 512988958 215841668 731840035 751580669 805743301 195389005 703764756 833831901 886474687 974305686 406684063 184139477 221904872 491506381 515925869 62025807 274105446 519878314 247058257 982680710 574667103 989829556 311350474 220947179 116610755 697787756 843772867 127302228 568582425 792875561 975416673 522262830 754934575 116148059 309722295 553577365 709450724 164224157 630810004 946106828 926617282 53227707 452288641 316893727 216029677 812791272 740983083 197764254 57822402 170294840 733198602 241643804 76489282 388839614 842074496 743997188 352101236 639878014 735047591 570908151 791337572 976304693 128664124 952859307 743337059 535039444 708449830 178583784 236059430 532423436 304950533 685284193 360553889 423893294 238397627 932277146 91847619 555318248 277843506 524593615 80010012 88800661 161426511 438913066 242842447 982403507 651245718 865205661 235863608 359840646 162422484 174766553 391557091 373227789 398186944 173376198 980815108 629473532 802988591 863258683 31846977 802640204 674054078 289594391 292363043 881528468 163959220 530788114 14526506 17385895 557441412 650352291 333355676 169932466 82005186 945400299 160835726 922794936 684220817 950011045 785888010 920793432 453294632 119895224 707504352 158089897 407383608 439722017 940840544 132308785 929112396 518843127 536553574 990529966 333004886 573922934 100412004 51402036 772723204 891342679 745697007 477688182 628711444 506477274 770239674 544661342 975625188 769582024 923171635 617088252 770148073 789639967 774957499 341793481 328721327 32921448 681890206 736574670 944205127 10139395 80275789 808066149 420998820 603142494 711157260 857909572 623464051 782484488 70171992 94374071 215090680 565839771 128474650 907980497 767973775 434825535 285714124 308353272 523518727 584822431 151069237 316299945 152545789 790183029 513680104 924051541 664887922 341074564 705379697 75432394 163594807 909041755 588111719 772165163 68168067 271019353 711367622 277536352 81537478 60589175 298684131 475524348 635096244 281363776 798378408 787879535 581763282 150400374 551221880 81300977 372632829 518923491 431345163 123863003 957387516 180743769 301764995 190641552 183510845 453835047 783673686 817702761 288201937 630297566 835686236 971059594 376920807 222394200 9665706 663542265 196144791 407313549 316021525 884295372 161611427 108277585 963946134 482267695 480976957 138280862 92197431 971823289 203682586 651053843 504416024 519629018 895734124 305530487 222907079 877490148 83894506 161436282 464063006 101845797 31006795 988743498 643041151 314147807 361097684 501776320 209118304 864894750 635045949 514540411 95261477 325143450 894661020 796375206 444127221 848954962 554671778 608190964 853193525 592845349 748638620 616410240 724622676 984372184 336311643 468880421 352300279 23512245 635094237 362092332 121068002 807688780 391458173 191024293 910536118 791262041 711512610 955541979 558267912 321912182 867740953 643069996 464054247 834218743 982984957 618522393 434866624 606274179 182175430 927161834 103779978 656834634 822052969 495944455 957293885 606360422 454201712 273477394 62888698 491509474 610426374 786818627 706761333 610485383 120871935 861244159 167308906 539395483 510593652 41683660 748209268 477513987 975762470 186144750 450033561 769893227 110337666 90799686 308226356 658759315 469605481 549769511 736013858 273032032 536403678 377526882 322217459 277632664 701581613 754156604 924248325 412944547 337190978 484934831 35425812 127868232 19733757 59648553 116884256 707422117 315824315 155961787 625361172 261930907 365769525 57918686 820282380 416117516 541211347 89629908 205016477 759116046 814572856 797116646 291381255 721309224 532576982 761670395 148626221 344571177 438735746 478394424 164508937 398121393 665707937 372420899 777584789 666918138 941179404 861683790 494292375 471725457 719476885 848720677 582738390 153049714 279331913 85679113 313904439 439874242 39736926 387435517 194264946 168198539 560039519 114771548 750998994 623931533 735538335 640558229 786694937 116602242 738104439 374329410 27233781 295224858 429564718 327018738 286571160 939165425 178792161 47111566 311938167 926139719 40300356 312992286 584351983 724241481 341857545 640649006 704462523 746965760 157276759 36062730 548979686 35284961 878268237 143806829 508806195 166498175 518188111 900815892 722075964 370723966 814755968 403758766 894623476 114323798 529173405 938208129 714446825 901049839 894769456 264314721 867061097 996252037 570786040 624801332 77044763 457800012 628459084 68923214 981278760 300795211 665324078 347887708 749674882 699529324 565942861 345059653 435044218 313581614 553987547 74422097 652008295 41342127 616424895 366344762 552175513 645837311 479420366 813998781 627451793 883466880 454244610 112399464 809471971 502013782 592641747 36826654 338672928 862766443 322295220 572376590 975903767 417297812 918668038 947929017 303790953 633735474 335753702 691243898 317323488 349483870 170148721 942052099 94331661 146172091 25904250 451256881 776539145 138620569 333886594 318497431 141282731 227577968 85849645 861579588 510227028 150832800 14759973 532713327 487878797 241842939 779836637 34186737 911602929 995482609 256504793 850463244 970440893 70408293 692400030 6041998 294287878 185319901 356942853 900804200 331169483 573742037 33497355 669858999 380533191 729038090 445881212 581194032 323190822 895737167 72762345 343990370 555444993 255054664 258435449 165408982 132267864 865212927 225651939 872538593 443556866 33797523 59937809 33452252 852109985 168925913 462199489 603771202 407121646 33954726 249556924 680855594 735032228 621805184 741553644 571183685 262319113 681700509 939993077 19116811 513156436 518884764 447113722 988025770 240254492 417627489 713582104 368690723 794036076 400539283 706497964 64471531 717772235 559539336 803547426 461075764 561831125 316664631 324390026 743591356 853600221 426152897 534813027 653191345 551841818 401976919 815608090 512660936 148704041 912276941 639825485 36764527 596176083 198092185 344073539 627578300 387523436 361555666 468940728 72623309 953626097 526484685 26247921 153382484 109492887 786213554 167152596 644830166 671032744 333251913 388255251 416618962 564418356 944601841 319617508 845693487 10385705 305721379 272726071 538862966 137195161 128689694 601143241 116281573 424661027 559754330 230935709 925593752 558526580 197912410 919365581 639032358 692058269 445110879 258503946 408649703 856667821 255873784 25823977 361368953 331531242 469420720 183824118 635127654 772211860 148223143 594494362 714755975 709940092 66460740 885178441 652375473 865323541 903224919 119165176 745880509 86405214 551632855 61758373 374099720 782805894 577877100 395037705 335875130 600433962 823403848 924998442 548906153 73338953 958697639 895146645 941914904 634890432 455747780 181437940 926981679 98057730 370367383 37883844 198273087 87955965 738335693 314827008 87223303 863775153 337293499 847089769 707870185 457256490 942651572 973127909 405144804 550757572 347147023 561473443 982039021 254312904 779329795 976109221 414174289 901239535 443601358 892083004 948673053 735318270 789518239 220289990 182330652 336893404 767794680 697401664 572429471 432306579 190278736 182552181 298277374 464434815 606469680 876852274 485926992 923712096 767331899 684691635 139832744 554740987 367024641 342457721 980510154 434698416 85431131 876934199 577065001 158526626 621622525 246493369 909981970 977754349 13541054 24151563 703224135 922861685 118475633 478802818 169330800 658449931 661660911 984101944 708387442 877379194 398693371 804651094 867137186 913000701 398321806 509755791 166414423 243189023 571608643 871607970 436477790 561650992 985974080 381692429 644552033 561227665 487459091 800768636 118303416 350715256 977178215 476462752 513032721 972214802 615137527 838590327 47564020 792052602 991022987 721664932 710607404 406776870 646527994 30684602 97570216 274761981 885304601 987720858 740001521 657076647 890393706 738671415 46515510 595779810 615689297 772467563 948794013 414037668 578659901 829460155 511643865 615763158 112820820 10399321 165207896 365565330 979141626 871333971 981363496 718037804 897846131 31677124 455986133 17262159 533874565 953371755 589089913 344822183 113849279 680968253 354065166 767378786 207124462 326575199 838712940 804793612 447373489 673958349 443442108 774365174 186364471 160144555 498641240 777073590 38268060 935803366 745073097 165186803 891813504 37323664 388395783 498438006 828220327 804515328 528993481 569542819 254349796 647183564 42226331 305811611 710464965 767401075 639033383 708859823 304113390 14618901 516636949 364820450 334916194 836830907 127214812 341916602 804307467 883033385 644828400 264873855 436770827 94706592 626330353 181410075 349380529 226158668 21996701 403110839 850906014 520761580 356060017 139902797 482246696 840092353 137500587 364476659 104827419 809342317 253016920 768872620 485769083 860434221 355971146 816772917 737238006 537584086 186770561 623310749 530030635 846594410 135781455 744841642 167120940 356239437 251113101 452136496 814423167 590000086 870367424 147154170 339065448 525019632 956305684 783049655 936799677 704146117 811013130 771655858 994796824 241816157 461148740 202138166 284203349 891122671 168258729 149666436 144783477 394504991 592113764 601340260 945225615 904155470 184887067 960628378 873429536 866778344 216676832 44477047 20042961 621209482 82260974 234583397 362614804 857411991 264684970 279210176 857429967 931434009 379858846 987074348 460799818 30521845 383199610 224855209 732231420 138993528 481064154 243914645 806980131 249529896 353730378 35022270 725423158 27541734 69686721 650502288 364587812 557937243 976189059 675822446 535277291 980901846 707895956 84066269 875387155 349480169 540642829 165803089 481598920 283146911 978536654 933287709 602946239 100070074 308258913 362715658 777664961 627804182 334866704 792773166 476304650 26820373 580725515 902819668 370036483 336145691 273175803 287319275 3039919 825383305 8989341 120123331 314765993 875317043 898418022 53718346 725081773 1143927 330097003 476297966 136679454 655215051 875534377 719770904 257966962 243828904 380513808 215807506 832801882 249065411 880776469 369408520 980523547 283648553 894968924 217715792 715078700 829453134 174304263 912176340 110994937 453568305 465879997 293884978 775579326 929868457 909206713 343815936 168053894 723195911 729034085 524903492 399626741 411490664 937133350 315734509 927618297 165188144 964808422 515679460 668043136 160076760 430931970 720837010 323305924 67479355 303286550 874314909 284245205 339721855 94578568 973432970 214431215 734096358 443677855 298694750 688680629 644803657 796134121 860804806 257588004 974927681 8646080 885635920 844633081 145066152 616009752 410671433 244313865 194999131 916847083 787419957 57975064 734790488 280025920 129442271 855172591 608334143 521796059 218167927 549692421 389963523 173902437 17255620 764412047 396188996 709890558 986621771 473131425 953218675 341023209 316796290 618027666 449261281 19870064 479605242 38925913 675480657 569628631 688249718 662042044 373925738 681283310 954241039 130988589 216190685 156018041 846662716 474918141 745696242 815947750 732466392 67582164 572731080 946395001 45005113 155987560 785422069 57065841 830396942 618573228 495506060 687024320 965713847 303277304 576089151 331947993 778654869 565318895 427063588 809327213 533810779 753851071 90117329 342047005 431748974 847191698 156418947 243962905 302027780 478823242 165696454 935271432 353709410 272343630 65586282 934606651 144232200 796315545 610678671 762612539 506481525 70899384 620426099 513856960 839030553 941583586 236209773 902452024 524516417 45001563 886505889 212278875 105233297 974469288 589638628 362532349 499168853 710256155 319792953 653175605 558543005 348433610 757754 869697376 996111901 357382357 377476581 567137588 138640051 399745691 870864470 677436850 300594240 765562844 782248624 208068191 685982174 229740186 420678596 681382874 778726809 663771901 718158533 314774086 701163668 35686316 431512395 455547990 791484360 331966155 253805362 561707313 428239422 135820622 746564058 797201282 939167070 536491524 777137151 458039714 720374505 155422759 161259986 275721870 692521128 294072270 891166501 202108767 64141054 64055533 928378708 78378992 492616542 105808482 633522558 152264413 831711242 620200380 621024359 773463971 784201848 556888592 284340766 416364977 713355243 502027525 82376290 157539505 814383753 549414867 956661503 374997072 615175022 46853631 866833746 596849456 927886504 80026703 123684940 119423641 508779748 217830810 703715805 472121700 372838206 849455883 117544511 623440135 163740396 173949594 392656741 113837859 658677662 219738014 304171863 996862815 59672152 905014298 482266007 580332015 305743223 463371283 644709511 74418816 985460858 794784254 199472908 433357070 880631662 247448950 620941103 606394627 250753261 282392940 659424385 728905683 163776764 929120830 163323251 52274303 414283028 600434955 51336155 220419908 725007353 219940753 799551151 742491498 311506189 692484837 46335480 552925515 68363122 90920203 719972907 813234872 100812837 781948119 417468958 167854996 798817002 991686188 318787859 272866627 515714173 519149052 209998218 647364210 278797388 784502437 433205991 246768027 968412849 521545760 987718869 527630783 563282961 730793494 136680927 849681619 705196199 837087753 889002058 269895504 158861609 267574308 21745313 291755721 840217762 109266555 246675715 22190565 393818823 861589956 783947492 678480154 912361987 369029053 618484122 416124387 443173264 664266584 539039319 122626034 683193482 582555488 701950303 627892885 563654842 185298032 753965944 834534463 847608842 944015673 364222678 194464684 296256272 655557770 902127323 585229783 275809360 579032709 548853374 708081529 925469013 636883589 66914476 140347328 366679546 868313494 310546604 776635036 344481178 362501026 44191963 287415211 403589850 646618028 3033935 872723070 233004527 428561468 691622067 451166297 479566076 313807389 323011205 544414869 523374836 169577910 124343410 58436942 408842225 564213193 234750063 849592250 112244403 581508707 347660155 879166620 724899813 787048543 737935019 220640091 549036455 209959531 709575876 85121813 74954509 598223817 21209924 909543322 701139566 808558880 720128294 103818018 236913414 406013924 915296082 19529158 565009970 678773280 422866952 933767549 988276789 162781098 316223348 243580540 61421120 604211754 379879525 896040730 750535195 814800493 634194690 402696051 947385665 501635857 586510019 326705155 59666429 191020257 830847175 420270316 83218549 15687434 370402555 645596432 288465983 611188062 843133007 196865020 204183101 743822408 169493537 844061503 630684279 616028078 744584855 497879545 49552528 975698599 478924443 69504027 809408486 336593659 513621145 195347830 485641187 775990913 603634890 796976328 305158530 215218558 67064874 132505328 204792906 209286755 367586068 272652419 105830523 364990885 57402366 956765956 468123933 533170652 316340966 763129399 792303295 211704058 483502001 137757951 439881409 244805081 805804123 341263261 420358969 179610769 501265144 98834455 841056863 351953505 339369687 311969458 549362511 63846217 432451133 194753502 764353024 202853201 659983071 585801269 144962636 101661932 313207969 821703020 877397658 579076965 421186361 867106852 612835270 79962024 994791566 542326221 800154394 474769332 267006000 931164309 429101710 104195734 928684228 19359733 357138273 449260647 986660003 594218087 562232641 297447476 520186935 899825732 491473750 864320891 336944589 755122413 199788888 874440363 144151271 71813017 59672232 316719076 297390442 334333500 993755459 106705053 90739332 529013633 839679798 495121525 635930703 750870085 115319285 669537887 418315063 964019143 544474212 27325568 497134939 608036849 225074025 263727262 71408210 878021392 404880074 314936181 414409962 496660094 360433350 681173907 163273955 734461225 43079341 544907027 359232833 283994010 902970698 257488751 82962227 467083994 70446419 639736096 318614540 30923503 650244960 236721938 64274293 76594775 292837051 267619495 429935833 669475129 673785770 834318725 212250491 74092423 283803373 840668517 77949623 534415391 749346373 263937457 45154945 897025028 583826302 585382511 461555154 5591396 357925006 836029337 524019408 201878268 621585959 35416419 179324498 55629790 458527090 952489440 742690456 678837364 955590595 502301674 797627159 525602253 818688412 874462074 487822672 801826332 885977096 728665622 832096947 847479640 153340940 5073088 664180157 175948903 841158232 303987616 898468710 442212045 490708890 858907804 685777964 524000285 507686696 516824783 719547682 593022770 120131055 594155651 736260557 676559387 747392710 347957793 323780313 200473027 456777189 484787067 544775836 766871612 933466364 352929860 973422786 937081340 730351759 798950815 322002656 820190900 904288464 597317924 82915508 867805289 253050057 697780728 385383800 241305403 208836182 129461484 594047545 516898446 669629985 152259289 775187747 163124461 69987709 706954004 519195737 236319289 875904887 21640803 280123488 209979001 57639834 541032524 543697792 539057980 784641717 472889567 157161541 661690011 430000182 818575072 902275626 34833736 654780043 361977519 642412780 509919211 335391381 659310589 1565383 680335512 535201963 413288389 904343311 769908788 164484355 68540804 981800278 526248932 24702852 994909442 862152981 798857454 353492603 478788044 4352955 97853931 343244049 146520819 747784833 504283796 881356253 606761048 507710684 620687895 698206101 415972451 262170493 953641634 705971000 14067923 898646529 818846186 685606015 911589167 461199733 220948904 453949926 227768651 117795701 160019179 921102283 664705448 825751530 319321415 523279074 57371031 62631167 352445777 400748577 737501759 137613627 491951933 84640708 636759564 480935047 894707430 433656337 901954650 83316298 867378917 782753158 178552539 601188852 86467927 97775693 205294502 132309947 456201133 570759879 573149536 824129341 760846543 130860909 866937366 244118991 436456128 802592593 305382791 797473622 813356912 419201463 21229718 202466317 56889323 150824528 327485370 651319949 78702795 88968779 793420781 889188067 347592439 838694149 155382500 713829202 560546413 804181246 533525501 761969664 15252053 660196946 1619306 403663278 122726348 774090378 814176792 396421265 74214768 804518893 714400161 721548594 849863801 538194816 403052632 229221445 8700539 484658648 59731173 283517707 748816768 759075445 743297165 874551777 390285252 462678492 729423823 881654005 705402200 146128621 395543517 573899083 273060308 284254423 609792912 717518220 987347155 642407050 396621656 243074485 541074934 784531631 158004232 594750160 106598746 231484867 329150376 393305752 909667696 169537774 977557388 290720353 385533500 690472181 836804102 250613954 498422998 712529223 975861285 582945351 56943114 61538270 426499675 988544720 493054873 683666684 326205250 369409766 578100790 260995421 545283450 108563469 403126694 602348476 471463629 894615427 846720764 615316473 335768867 11954488 868058651 893471401 630797829 870367478 90983506 826552881 349133288 695213353 719313959 166957184 923403579 515883360 763082248 761556245 805962834 375255446 257626367 820688967 604074469 492980092 685274208 602463579 430455989 771972483 930351662 526118118 508868884 899519188 997941274 372533079 323449443 92471932 704757426 486806062 232855328 465857535 607062636 585569477 546744386 330406022 991092564 495534206 886752060 926813890 206115367 449077433 191098237 404998445 130256790 962283630 268290163 554600522 892628302 758905813 749375709 332374599 294402481 495198314 49552851 511965412 816253807 890329289 121327266 245789791 203259633 450475277 177167478 831076790 254719 385375562 217219304 927728993 27312474 245112285 405723925 271968725 959776180 563805080 918278091 492027851 222318499 147124177 956291480 559090849 238757574 435400734 666739250 474496928 978316728 387157731 328669110 974888533 506715668 340922491 941049534 63697509 9741917 820587534 192369038 703355651 986664232 716858086 893474840 125155555 103732335 203489041 366301612 23441076 75018436 261632702 967798537 502641450 200251697 990691981 487579226 165455290 490314970 898079485 973141368 312255346 194316085 746795759 229243539 588335624 751111219 5358090 79342786 436085575 889007526 624039727 694224858 945840143 940056642 2755248 13635015 206372290 531069586 572394930 169846282 141324760 459356174 75006266 110861241 200911660 950784663 293062497 51342387 858166024 438104934 698935526 216298576 512532276 205702331 290053831 755236819 92020817 292103907 721483583 306284878 721144576 607793555 607064512 778840058 983416565 216131566 449680738 254370266 301324707 210087416 588888041 98985090 701861881 189017439 978418969 447491355 571289725 270886385 214943403 60145276 330706995 431004732 832399133 182727087 481209130 950201764 540272639 588542406 274282028 306424548 102233987 797307834 472292707 225175243 146012498 14746752 921072050 123349020 346730472 75206482 730385208 900423825 580729775 727790622 476601827 31542862 254950751 112300798 777676045 65110698 673725998 171446183 501457103 574750592 127527586 236168683 7014054 512091114 542632525 433390699 343501275 864280329 981373166 248255785 403410585 186179441 379466025 302546104 997528975 453355428 50183508 228030881 967458766 714809029 549434645 358619681 232001302 399098286 528571012 252335093 687121725 203712105 450868252 550508530 770740533 235566382 631898039 754059095 249272188 130748416 899478369 895331221 169552438 264771561 252135029 991496445 127132763 655451511 754546857 843561832 778457530 63335084 119889742 3407087 964049903 479267007 548897017 545976420 254796568 121969734 241924408 798509374 874296315 107093095 776132024 453798283 853730664 70305555 152330143 591968756 311036928 953655199 711047435 67317159 520003581 861669281 920030198 279345211 969363285 876215110 841170608 426277672 186561592 318843402 711763550 450499431 364086030 778587462 758334713 440779746 32890860 185691812 407874309 720784691 160035114 14908667 451506775 121009064 510240571 588085113 859448714 869928615 906471716 195952944 943156910 309688375 75857294 845491728 680820705 540990799 175032964 11067148 642323782 731021844 367048460 956298758 435170526 741040097 379511891 358265757 652386509 701941789 447999746 36445018 417722864 174198630 279436796 763425048 148916870 952802125 380458639 519945993 326256284 757452603 545306989 528360991 904249505 30453385 392033950 705135789 670073385 378049960 955463560 881751128 11096713 560668772 348166881 250754987 283308492 86718331 351462828 512811580 849439469 269202099 832752053 93802038 604949857 678380675 822325504 565580918 554427154 442425978 234663463 185395289 89166878 296411729 349752422 43045498 144853637 304018989 475407491 629333267 836800399 401012108 120146503 725509512 62551853 950269694 934852151 117194371 169616265 244121098 524247726 904882695 168745513 883355514 846831979 386559134 586069772 479140943 795388687 112706400 836688262 323232794 433305094 515561697 670154008 467755397 685683952 136422694 514808880 917021922 694638679 182917370 812233924 990483476 122877684 268171185 312794071 84395915 1143387 361467124 946793906 556579959 896903197 129395074 518544360 582430172 411866191 577882940 467762925 656286544 835550752 395848075 17059745 398812114 815295820 198934482 319144233 730538391 968611560 245018770 427296020 957324909 997696522 382640837 999646401 136018468 894076975 185853886 829255068 34810129 255202360 971731358 298832322 109795150 700300458 459088200 383770529 12772173 43524477 787733926 759548422 295163560 901282015 523077788 627601290 795337803 847435662 990232919 62929706 919342230 360033320 371735492 626506371 624481834 856608702 371783935 569797878 914954746 294126727 808904602 255540766 756424234 290293701 973073617 154368261 507732678 538854817 83867058 787421218 934144645 544781351 702673015 106249821 708506626 309555239 866789396 925895860 327352684 787572941 572890179 752022051 766674252 401035302 770819419 125261242 554831858 167904414 693214729 938092339 481813170 746696916 295772434 646327798 663873414 53780652 724086619 716479869 580699797 635113149 317736566 275159678 516094900 678441248 100693101 73653860 375677785 489773017 236867746 775633074 985024836 549186618 705907394 66293056 98358194 405527567 997946541 640628318 857307404 574560677 872657289 741668998 521555351 863246612 301089800 552592092 976500764 101623949 73609148 244215867 406033608 806839982 973711302 889234172 694368543 787939602 241383436 498462898 304196253 684116801 672756152 644709947 931202160 501116568 722172993 625674963 891998065 530219861 175566017 128201648 170478858 815048080 166521010 25483636 717921036 560600378 585326837 590472490 439989157 702834081 240493092 842119407 367157433 517816783 542338055 820309664 783186260 368506067 158797385 426754868 719612473 118651932 750546962 762136041 659801944 937890592 67666703 159303628 95637276 726221095 26881850 280232961 262928285 549763730 874555499 944616936 455593553 744806212 879560197 326061479 263798496 73137132 475460225 562615085 887157754 529460822 415217710 392919515 363543236 689808518 758061913 653163383 120729918 177570135 965413990 4303438 997998827 129699072 649751605 562537040 876929633 952889311 811285817 817897325 661326924 279447074 153014429 417575107 78176975 647641506 999726336 296608226 845486304 75086156 492666585 402648045 475067866 860887649 494804304 960885401 642240894 738214219 323947984 981003077 806305688 10076186 601646411 536554605 628687563 261219501 30281705 131639048 172461798 560553245 67827403 57115330 466643562 663432216 823200274 369350521 531299854 579372966 588769613 212584783 706850971 557106204 228325579 658417090 63329091 682718944 438276478 941318133 699781342 329322426 219345629 370622552 353812604 559847648 966530569 425607247 762373751 551381028 147296293 343485503 646422526 302927041 781651208 486154612 8845327 397281498 346949644 832073090 80207506 271528355 936666611 134230920 96960123 99697581 256397148 501882442 844214745 822327945 199392558 797846606 954878784 342842615 759555458 358753213 154881267 362479976 315310175 858808484 424957358 240578363 890943304 137807042 671026726 222626609 747838180 812839329 750823438 734502301 610734623 958150849 864077867 532993553 541356299 513639789 927607923 74340395 748437839 681797897 98973671 838790945 411264634 628695827 404927384 634143108 636361557 210161820 309057701 634615027 214252003 106860522 590853427 835453873 239416507 795369806 716283191 453527555 973571176 140035187 336338980 753534465 145483637 567572025 846741732 602111728 610203112 598747203 331012683 437400386 895618584 865207145 105349943 433703576 527519294 662221700 103921754 827637348 303556671 416928093 566513334 961295704 182269779 11528249 754417639 670439930 724017201 471586974 775647226 937222960 644294209 678522168 642308061 412891527 569891278 855627042 306977156 851065379 728123000 387070118 790403261 28114901 828201902 898316855 265726012 745547602 189997259 982028798 936016205 197663290 170934042 375036683 790008050 821924547 445310030 681221139 496255822 581191229 473970681 984158620 906452151 846287545 436046983 256880243 635086695 495325367 377518399 391070362 292175551 860839060 248459532 819805748 480318421 171280454 9931078 139704458 463610142 181948486 368321747 511862923 981632273 507804385 959966475 319139082 785518236 569950740 198573834 975063592 631427538 658843986 992333830 597843655 862905165 445522715 455077782 744946103 697111609 535294097 873764679 124247563 118779582 599368150 108824157 87751958 785484814 587079617 560135554 817233003 417782095 906905615 419122569 360048076 821462149 177096117 392459089 748674810 336741039 795851414 29693844 909732780 483987196 882970081 468159799 688338656 447096908 107987958 312767940 730821500 87368385 77142054 113498982 706566849 804398293 506998979 282124898 746618950 939364091 998829536 75838947 510384816 337658922 649042611 499638155 330834798 486870091 675477718 149479045 567298052 68914436 374698989 379251235 332228118 523003272 345348336 427929168 885570324 746501648 900690603 119686726 857530072 902382982 946437512 432834873 818434997 461090961 394985850 839935026 241946840 211678012 852570402 930451337 816505215 89347347 108548415 690212737 404129636 305934465 239304358 18783546 200043028 107037983 142742229 673177817 932769732 558706996 939857937 859833415 119154511 827633176 166192582 381737964 471708739 169860055 841255121 884512273 602426142 524185940 86736132 985241201 199131917 127022266 67881982 616537571 250065639 308716240 437110919 72922908 951291464 609997764 672221179 907152173 43999813 476443888 308970174 573672370 892620253 982994237 256514598 113402866 77199282 968137873 222462686 443596848 137139826 896804610 690293749 374447733 667808687 737054439 845328505 520366858 833820318 906246999 816332955 734099540 368628165 364169731 81087516 331520474 192184307 268967153 87337953 205570691 415675723 853042014 535146742 569684843 433419427 823697223 902812527 752593402 316027703 506821584 20922728 276008134 594484291 551808951 291999498 79144413 206544575 748824397 134929518 874126107 689250600 367390988 730719218 700745741 995249273 101366934 216844037 426423375 248951006 375448257 390618416 194924109 411507114 653015699 459129990 790862926 640101442 980878256 251187289 756044933 495802205 777334578 329758123 506491981 787256988 706281844 837920327 938489142 362955092 122193290 794996513 355666729 802017632 483866508 115367942 913574083 630407319 678983876 882583117 800819613 344394353 915455807 64295238 73369142 244463168 696702311 720439444 535815623 559811362 758212867 433076824 529852760 811744650 726160757 996167266 370732919 725754923 539424382 340107758 806012305 397597477 713021528 372362697 629083795 896528716 496502694 149301527 651750241 783582821 230959121 893775505 773665580 71194271 326653209 161720297 915597325 546636036 160371972 375764969 713700686 402407481 242758169 68696717 879897720 361860186 4376389 633200369 701064707 245568280 28526957 447612179 966443241 375497365 533260572 448620488 565006090 105602690 963947929 746949417 61858452 359574291 957928187 64148973 78759503 276632461 568301703 985489527 188154451 538784192 464104668 428475792 371477838 309094636 793296951 264153266 698085413 482576 247249444 282684319 610760758 659290571 653813735 552105803 141518745 389639987 477343671 436699170 457807910 604343896 272859948 301739375 356432966 853575580 209952305 208871424 91617203 52782110 305380764 157051773 681817458 599431909 885039672 756663227 643471340 310670774 971023373 814747135 587998535 995249310 936569233 835540693 946682557 493981985 992060343 644835540 644466516 926998983 144817100 924111774 146422416 473272062 207687470 156380794 663982808 310383787 717487351 793751354 973986751 682850094 946865896 540184071 10464908 804599603 154999359 450399935 450887216 677495856 900596327 619560475 613155519 65244697 676386746 534031444 355153222 823630555 305019816 999399278 142318816 457355334 978383953 681220545 70035880 986958362 506785742 47856270 250731850 308562932 829091613 275517728 585281905 127101596 293303857 48937829 771755582 696079063 769883998 477869341 376986835 518129472 972454638 160957991 963386568 694237856 47756361 813679818 102168390 229406923 539220789 646388224 963208602 31859517 169860776 870624026 658116722 158661419 800957564 487743088 852546443 583953128 647161361 64729868 254436622 861314831 737620780 795730434 833870587 476022716 698283308 4686627 415619584 537098912 696676055 780116795 968142767 420995669 436307037 397079748 25206151 875973705 770285145 739516767 337428158 584672219 474874949 371291615 669910250 15248136 245043667 272974835 131350222 779350852 628441021 242805147 857008364 32499278 62108840 298887045 457206184 29968948 455854543 391045863 767301653 168617208 16064501 259385924 810042265 687557484 249694256 747186289 643369484 701790178 567606652 47962354 104643311 360680205 59162262 239789446 122026901 608060178 974221678 781635555 883398120 253244468 509870840 72357815 515886702 113969246 396674705 238305354 787789086 445208749 390467244 140054648 655969304 487877216 53582136 392174570 873983194 507638255 134502006 673084948 150564879 913809256 349813560 183312315 95120425 42846797 641589549 222392822 652793120 74601025 738430792 349506284 851419995 52795160 427478322 667655496 334705564 23618973 729588337 451700040 271474910 105057578 378050396 281266638 491338822 66605630 220522718 111278434 288844719 476157558 59373835 278906061 799158195 684529479 811124321 193407470 230515061 63457794 906930453 920702796 103631909 710989233 495487642 277667645 301582804 710436562 329964595 542429099 256085185 748196255 678747210 863015227 128259411 913255057 848462746 368055461 224878195 643513794 402078068 783430181 208978722 754655355 952955564 785878888 573604270 160468588 920531491 581996352 468084137 525863269 840462076 169705596 275554628 548674822 996675167 606726810 339772600 687449448 423529941 700089406 3994320 971385797 812812531 190542969 277521036 988647168 164209056 551829150 456070862 812779458 526130087 805083279 226697819 851845077 265587509 820162693 709141528 364326046 421553573 8772377 493122353 868665803 238056240 954890327 667057158 405645592 259108538 250587492 734433960 975756605 418873107 19100521 483356463 698537141 937479338 54808629 426314250 407477308 855534446 995807762 351856231 196309446 578085081 557722067 681015960 995401420 749466419 228428949 106233012 399273926 211533742 541898828 478313010 176034544 972011199 509716274 181206102 522880469 33238374 987667706 949122559 525726908 989568734 983258240 396342826 149642218 938047158 921751832 951952334 61977934 650156340 182952992 711423323 518318811 627280709 289631193 818061105 611221736 207925281 262643801 972164392 809466780 653050564 434528270 629587783 825145761 575662626 26239246 516992136 398467923 768356541 604247485 938228606 513114862 87522164 919496191 595516416 539549417 996758043 457982917 381535803 908307215 111015588 256032605 908831499 645189512 914451467 551194970 222558718 709308672 72731063 561243301 109960397 123462737 50891592 86048399 923157338 944240688 375827246 181772454 965307265 723711972 530868867 246101881 170652434 955338451 305405359 524842641 747336513 778257766 867026786 134997185 988470918 375143664 279654212 384270619 663355949 711798718 269511455 77505582 574956796 834966741 22335755 995562627 764459058 318429046 981844567 975165539 921324869 125708013 729867836 637762160 164753575 796964634 653149947 334073171 24493465 700178181 407150218 91147777 553021086 441387849 748025377 923736434 8267452 815426444 7711474 596777501 675710371 61007509 812418568 134186576 691038753 528021769 937356342 755045286 584928530 179535948 690181655 102994565 868810138 620959979 941285225 681167255 733957001 773532379 722922959 646198433 759259039 667913982 54694599 962041304 843132465 45573750 171650404 934156718 329470564 798681594 280751291 28794432 490841129 314529603 571641371 391630170 462598171 979181777 539020385 631593407 41073051 74522691 162584290 574232785 926310562 551652374 40716958 333944367 687452057 220991682 578573886 167009679 703524709 535741161 280295789 89012585 877940600 985551599 269701652 959528846 507209265 249733083 522200072 426054794 565921784 711229933 756105393 79451574 221714504 528481760 210232618 978872449 206906981 971780365 811543542 356818325 765647895 315755652 813588268 369049015 24683767 756926615 356464163 9383174 175268624 681088799 270743424 510743496 509863921 511252187 354591008 731825821 494085009 161802975 736152738 413536517 817700980 819371282 711347536 855502199 678639584 925093481 290681803 742563971 762183918 801601540 167921085 354242283 590213089 114431543 292014071 465673502 536982643 146290800 221132744 961304401 872921773 881947745 390005245 953270510 444709181 692083359 266518182 730116932 450704830 317748398 861763289 502385323 198670991 686495037 385990585 931673275 336234521 80561915 746064591 874513507 560025031 203247082 625241635 871125431 41503159 547790883 291673225 214532233 356966580 818422570 904095191 877506718 475749562 134291566 874687666 707670585 827395332 986570820 816597524 946504881 79856993 409831843 600719087 113462699 242735421 683720473 625651490 486226702 555547171 431782667 281643603 86382660 347540608 990041987 825826511 784119558 319051430 903849752 62236606 940945239 484650983 487140807 943221026 827735950 272415869 172262795 789507439 951577599 474593966 750865996 354509739 65682118 64829650 140954633 469842278 1782522 484588512 886259459 676372221 498599595 81929036 618328395 201461782 797056446 970275148 892603747 642100745 270468288 251838231 931145525 191354045 110985737 875774399 111150917 736264322 310469233 267783415 245979306 209052412 348680465 719090537 90118149 796539025 433039850 217625535 425860981 772044918 97129750 796294342 543067591 181381078 775183622 444463065 959792468 179892595 476792110 899796390 757017040 694584281 696394793 965937008 817971992 830085986 248108176 637652197 136041657 550826873 944253709 217702442 994699766 91347578 130189495 686090603 824495442 847804993 613280602 864674517 961482115 456191896 476493290 867807976 22147853 488431751 713631919 735377496 588175192 35618629 139112413 195740834 394520254 298695340 5808282 570658864 703212521 925065863 964188498 184023206 343144614 999448319 350982965 356510627 873857260 167735931 217281322 231147338 870556627 491234416 974591375 243204761 477386774 436456122 394391212 324263764 213754986 190450434 930337736 644448362 874262741 985832770 531310171 247001084 453982290 155713225 716995947 527798386 523911086 169774331 684734787 143806362 136865830 960730251 500475529 522800002 199516779 421860030 31404656 111989104 557038716 967055808 145717227 625169387 571258065 677555276 454065191 10570617 875529683 180307232 799797686 847881999 460274543 470230423 228246384 39612313 273873574 445684331 47887126 736988880 286512752 30751360 358130955 486992999 572897008 185736215 429279262 491161041 505058838 973287503 453111292 331628898 492768750 617740192 355153616 975383869 516849542 501547956 81076064 367905104 676884751 758376537 174400082 500949952 714007096 397052022 644363460 340005123 233470031 818880255 282072315 332053183 289334797 944763109 12911526 733188904 334538356 459826243 723216498 520565246 826687440 5581782 219875914 646595505 504701836 358870046 877441191 863709152 65845308 186652634 47350223 470273192 950188777 623172490 459126511 1970839 298034496 885164419 345409897 17102030 678223278 408138589 82450050 978413163 435418631 529505960 842031558 869546950 391349403 434533708 291595958 841059799 838842928 78496053 883012985 210033812 465691307 130014800 584985957 80624457 918132704 632811608 777863515 362025360 768713188 484526694 533633131 108463821 892597635 640828809 750162914 631600007 368295950 785424692 165059250 432821892 49047733 138795494 33455483 925527828 198311496 618588171 175931945 958925631 230276591 305987649 683347758 396520992 103403037 532139532 512588261 199628639 524604970 542028323 18078463 606131659 785315459 106628997 292659302 719078168 821682632 435255105 696600075 494515792 822161205 763111304 194293953 21249245 931670904 885613613 676005471 656866658 725821517 918487893 581544792 275607903 191714879 767199372 325894419 591342592 997860497 169404868 210956390 256366750 388694429 740879373 947170607 883017424 82680138 833708630 121008310 427924367 299215819 419943878 528963076 828061655 951398343 452811304 866655957 251956985 443712067 285266452 888930632 756447524 811071724 441809737 170945325 232086018 749093072 824093322 968122799 769268004 173795054 45154083 373364382 93031646 841740873 606299920 602480797 484175074 408642525 673593894 965007850 511711856 872400369 314297344 567075107 936215623 362551881 495457761 705671505 829720 915780658 856028902 2191324 744771016 644173208 360708470 214674478 274299664 671950484 393944887 693704886 206074062 478414625 363838986 72875315 737888907 632573703 946537147 231065705 755650217 854926045 963312993 299592986 225989902 825442887 295867230 349910512 715365366 969654700 323052706 369714970 767040812 722925883 349486664 611871917 563085016 265243592 626285205 947514999 356836265 497870680 753548468 764399993 40129999 111370211 177935470 475883094 2173363 132731730 432508063 378823044 796901889 592067842 318485496 320384954 23582794 588746500 170790826 781827617 380991299 444758016 919829157 329063470 725314275 944857079 168971265 221657409 316625812 236005440 279404497 457794777 960325062 786408481 149217178 883300618 6949906 27095538 455241365 711792239 392287293 830893342 2649087 139569370 646503668 7931230 995700630 961452737 848142536 542543689 752323902 815193860 657193801 547016992 928679196 168790799 768075915 754817148 586156353 138593779 415212483 912037216 212442898 290769004 10671780 489521886 604437527 429637753 641770420 421797495 943688574 390931330 420226355 76886457 499283308 428599358 211159962 955602946 773058558 598091477 10209013 309583093 535465061 728071254 408828429 926569570 609335499 15113899 159916060 28553883 521494935 753505846 133113796 946445994 565700896 183968704 332917265 53479090 758223665 695950062 827409211 811615011 842725006 369477058 314525884 61496939 675081861 126267958 588263614 319473804 840046887 952620686 767591252 862931613 625332017 568865392 747794396 223972374 133891819 531690695 282244942 592611630 755996426 258115575 304969895 752427968 923449875 418857213 669422552 453525781 471240650 670425506 52151664 558200190 574091027 74739423 204832341 291407744 962139186 522841035 385826569 830834771 885071826 308783380 134162461 283680225 599830226 595965401 960565092 796910936 204830372 206394841 464940694 690369848 634687888 800225658 475541738 452457221 629387713 787047213 728143328 714322917 946968511 537557889 244287282 238567483 225574625 325623956 627438191 170593884 501681291 384575695 404126684 275509198 392389850 851324477 715723029 235107713 375281425 488265091 394178957 198313464 453466895 836274683 361371662 293854630 737261900 237256113 546454251 818018120 324220271 420068929 643144075 168616187 823404831 578101838 454167523 722514679 17874733 256771555 457672179 82022461 77780413 606705210 188138879 568248620 253325642 810519751 669802229 518686679 971127103 872920750 278754855 639489443 555481864 410396620 695580648 251642134 398520040 5505731 250669391 51726805 67555327 360759068 673259591 412199258 125513773 444483650 779951504 417999682 127321954 939971368 740640303 376770816 147695524 429603694 951085397 497642361 688460292 444712215 258223290 756985063 431218163 610713780 19039522 926844783 923361740 683988318 565710513 535273146 67642647 166103019 826453299 633400707 591563511 956984389 585516489 77363478 958336004 106799179 150633964 772556352 550275394 577811468 612718066 45258964 66260822 847517881 549435571 209253263 29153248 382978434 303804102 968279928 310361956 61498738 851199739 602378598 225785456 814658576 941656994 203487485 782539071 933022516 877510027 580471800 148296889 640356319 901621484 493324400 943162423 582132197 586158835 442718201 584966886 819953368 852964459 189689310 356023396 729071476 837457026 512998917 722413768 609748774 606355411 880099434 151945353 402125563 923797073 622618220 7842827 865829583 903121113 306718581 458762259 998621014 853095967 661514446 294300098 317796666 330321135 786203960 315698389 59939532 826378812 130898830 60854545 576367580 348485406 315104729 559573567 798075987 336699710 727960665 380197985 574347497 531155993 323850399 997788426 824118207 681910301 310976604 119961660 116453961 533064118 715783822 45197313 729114197 194134553 563735027 601715202 101537913 522451224 6645173 814713896 607225554 464875715 47584166 619993230 997391383 974691154 276248136 14557103 256214329 736919447 580009473 236597030 645625368 841117507 715451174 948022672 120024191 657152055 265338363 508124143 115236011 668553196 135263254 60151976 250706320 680442188 120984388 37877737 334199738 280958106 673276801 469408371 404575054 868927744 940150844 607133652 702200052 752570821 251691175 639030421 812272356 312055266 888738547 639067109 982720235 225847632 524769278 639309834 16726256 282112831 38008109 574973582 440264347 890190771 470754416 146311305 527381467 492771806 633550541 542144186 779772835 420411471 67243744 223675959 905228518 258750042 184310372 417259856 998126460 778732464 697555468 170107087 284725521 18961412 428976882 784240147 7628869 13552707 320115074 293427342 698150647 696003464 296693414 778465055 685972558 336523791 631943612 971531772 800299643 450985957 608187263 10755483 415442304 59008453 955060149 519495457 452766215 462378653 544363668 365877189 876256644 835464972 593833349 939103161 608342874 734647372 847313401 124561734 539336994 321210995 288201934 105406321 629056511 792538355 327636958 10718747 494860452 600027288 768702101 837179171 885294844 421503060 682414496 964305411 869739946 881939942 358243412 523473424 441969474 383103525 303941180 74452334 626126001 535851247 763896611 399893539 11526068 212933250 823837841 705805147 227710465 100933589 272727847 813498745 340484801 94566629 946860124 914168542 790515090 614305487 484178938 881605251 105089789 373792173 243328632 937716362 564755356 844158144 231581677 575611360 662396085 766922935 749274070 592536414 288249681 65341490 683407993 438700402 530936734 944232042 554654658 392621805 263365740 414583588 46664546 468455377 980196587 742505603 481618447 527892573 525440111 415137625 524155911 801602978 219172793 255172277 79136140 240623670 492949770 517300894 200954036 508960647 799880188 793170671 153141632 932008126 860490064 172346053 264541051 533584858 91996528 504016034 436320109 885149165 509419152 373786711 145729163 458273891 364600192 773617910 57009339 777777247 512749266 633475676 962220843 644883264 775838911 85402916 866874518 437297793 527174216 462514474 690218198 154265291 112161229 343016510 19911767 132059864 221077289 168041054 587874942 855892142 752554111 976347816 495840664 116100446 463823125 798680539 775446876 999174553 619626116 928461421 315698093 393332371 939615124 347232631 394692783 701298889 487221959 465068124 638442734 612807170 199928391 963737520 465192952 265939151 223795689 53234596 234647959 57650871 383929139 35178183 546234411 272339902 379281853 194055958 330679339 499791702 13327553 327818340 847650940 929044448 907431552 415613985 30590625 4145244 530508855 1678918 607444992 591559933 397911484 690355340 958814005 481217462 742980049 401324770 121699095 315064992 488541121 78249735 791849391 492105556 392707628 117264503 543503923 2889585 7377223 519388546 92812394 715932177 277306412 948911971 409237553 686515954 518460007 418156779 158175675 816264653 599453421 73714844 677459091 519246794 177695951 243393177 958471514 968328218 62235581 807740388 198546885 373766230 19032452 119175212 351101469 983397860 527964256 297580768 832006334 213561921 918742142 177831167 220201256 665319107 69291718 308093468 100229120 498419165 176938679 332076469 967580899 177225041 509511613 788537995 983087764 462562384 256766610 183942633 723175276 431197811 702371123 366316293 603950031 955660519 242712973 43612886 85806149 353441422 827159142 151441222 820313714 348138484 404812572 30141784 420184335 323479922 871124916 957822661 958168852 903312900 40122445 208323333 595604815 617602584 378202769 553790042 360222069 217353368 698124038 972015663 141491540 348340274 41504730 768514858 975564943 366470108 676170708 133301170 516830340 218233665 815194827 586169343 822379887 450132166 450782365 53084886 626649974 210552014 67039303 584390708 136517058 583618474 614932915 620098024 183646252 450777926 172726547 345655516 13939928 140281178 361953508 982548681 835707197 66755666 258554456 704785002 374320658 394138808 435969284 750177966 99125680 33180910 147357150 10901504 538950685 259390165 457084967 101854883 27041384 2839088 704421963 655299356 165537837 732669627 285289946 728185620 298505379 420473157 251062288 49127449 676901190 57963141 235731173 64651010 892192836 272569271 229451577 117625199 30945904 11933295 198359070 446955328 335444968 268232831 163499116 536355373 88432038 241160632 375512038 755220838 843165500 250723384 338745305 38908039 910001674 789195413 90621659 74585201 997223185 30431283 922190935 446240904 997002714 696473455 249569503 912736495 449091490 599301986 726236191 169601396 698836990 817702339 862300082 262116581 703128956 708180481 838900990 216610280 297859944 562807930 88207126 774057401 993482299 108133237 620568335 505027653 677170380 673439989 495195837 627100265 725701326 551615896 16151299 565848513 492073419 62642825 230494673 698287476 648619382 731147305 81422790 710772342 173543632 72871481 969456567 38041949 147240183 340297315 561157736 862292818 325980526 505091172 306003878 308006920 620268077 979887020 141107189 736023090 155031692 325909991 121456592 195327646 915596510 619465955 320313074 352869055 788076059 442974258 721342010 986298201 878959991 135887834 86322853 727520327 676052368 262974575 767064869 859374337 531848697 63650599 414652008 736045526 856734488 232068266 722601426 181258294 422350014 788571713 54809143 212509304 285352451 831346753 317427116 538278128 802765205 722240928 530113356 650816196 407316907 654577607 791384199 7517462 80832407 424510493 710533628 258391168 452804006 201429405 903738242 153729934 312313546 195367106 271896218 78792415 327259184 732450906 864614697 379608254 558396540 279297248 305556221 348194039 343158444 318951669 170725403 574869663 29907744 579434789 279786696 269632055 838779697 532347438 70931228 736758677 870892458 686809367 203112720 265041812 315861861 700279480 14741939 106899857 891959931 966009335 179457650 903404984 236648165 640883810 153498235 235553090 815449527 89837578 443016044 329794837 630107102 208668257 945024980 292227717 926904328 400753338 137832403 920797269 409475078 222936750 151597143 165684016 72733293 234703409 702467073 773612965 926345404 73816695 794573220 400176499 309750983 949090549 589213218 439845069 943892275 122099816 591594779 836456513 621611829 445755303 729594983 819831965 677559615 550898814 844660798 534732253 224501356 43023540 687723100 746735797 346836855 469147677 853919623 8738674 870824483 785761704 561130968 226934983 108201306 791030658 427461879 465237136 881107696 141900403 789155381 203433464 1695813 489779227 685596892 153695795 13868552 290228466 208483154 282451846 386579884 326820658 709243939 432433157 743081083 972641038 37077824 862924281 624773219 917075367 12935583 97462112 396839962 539007525 853567187 641419030 226505185 625162799 416967510 301314408 376451949 590022682 833048174 881766003 53571929 397566923 691932629 843932856 761609553 429567269 569670979 194770988 203227775 963347375 339641754 319255520 775661939 616356343 853068098 440104783 666928109 449624535 697837947 416104797 918908214 27862609 889418819 263861490 304790194 205813333 698368948 102032744 976482489 380369329 483103304 276610567 800152033 143672273 93872312 978611907 504743363 470205584 898362216 249065552 396112827 420123024 129430981 390887356 856891560 178819388 458538628 483078486 791833374 41200961 658111013 172065487 829674666 97668293 534883296 535014159 11652957 787381111 36902598 49355058 65937317 556705925 266536767 48917213 768936312 693878961 286818513 537838865 202098842 991115803 843060321 695349626 906665703 436669747 592142251 957908528 512667586 958999688 821952975 534003026 846712133 896830946 439863754 72044843 518194706 194501802 842843675 941760901 709374656 921872033 678261488 249679867 931339409 313351915 420585000 239930776 247587616 521286131 639665115 240419349 622968573 256927454 277835545 767665535 608513042 200657919 862627925 178551863 618353232 874426378 799546509 936129311 155493551 876175282 384958663 612187731 811773694 583648489 372717758 920324417 840925725 919728429 10482478 418885354 237291633 513392860 498905306 90024347 211802908 84162137 432669591 547828822 417292074 264091970 446122664 160616995 226007366 682229184 781758953 85183850 27346108 927408374 576757113 89904109 712282214 634967884 981603526 325448994 321240246 638435321 995513043 503711272 217093321 22129558 244141820 702192391 956087434 534961089 38727665 788568912 841575272 968124966 318967441 571767021 903739230 777996936 92768530 975004636 26648331 752007935 781242050 573584469 766286171 964178699 882844415 204630645 739606954 113458424 9132649 198507414 802424896 296295897 107546140 746569242 73412296 123919983 865566014 400347381 239594184 755634566 91415752 393921806 243764553 201025806 772807802 835510855 954888613 127041602 794906093 96135186 436482459 373825925 300067613 30476934 5278961 766926276 75371190 698486649 991080742 809837665 583194262 416505862 84015481 653816258 23491572 807710118 686141511 333413617 735362797 298802851 387682394 959230962 574947378 518698449 584521071 684020965 528986259 428889199 506852149 566480462 447758980 968675727 433602964 821558072 155104802 85141673 132275933 46669654 22594775 74736090 591003133 703814220 809591147 438483208 703901222 450869468 704364372 714564047 459662164 339988737 792411428 908658430 556420434 572515351 434049821 838240746 192627377 637615553 128082405 766129439 627180725 621174648 574157720 11291677 812912643 803000630 754995438 910344442 655391731 199754169 253486188 288257720 503440020 676316516 439561702 878152912 492679726 969513880 25656061 639577216 324864570 448748228 197942310 938019646 812046090 303976229 529079397 124208956 264941061 465725162 224342115 485325211 222081679 725617634 817947351 623005577 594023745 706218979 890563589 341844099 645398960 991268696 309698652 619989098 830683035 310565658 213514725 928878917 584469955 906884008 347318608 923692201 488950210 744335130 962320265 368775297 537965408 47956212 68505558 370881033 378532011 849827600 630358562 846215683 279212251 989930848 190563465 669803706 127207246 943182083 706540937 341304370 769797447 467661852 722865915 509322131 51899738 758733888 337993989 192245589 611787412 374885804 60815913 301651912 112891266 504596187 389298 765574617 70528303 383767090 955351297 222550696 163971054 539320504 536017189 606226805 572930289 45280921 140045043 420210293 577358468 102392898 459014502 320977198 591569734 259218227 831286569 464730015 796575627 303537736 572063587 6841962 599113099 561950311 418016465 703810940 851051120 895812556 166162089 455395604 714633367 390057135 702775702 37362834 56797146 846411151 135356252 596946077 347715839 12517033 466634197 154481518 316059232 71352995 388722538 257043214 134403062 733950287 132945260 724006528 539068519 48553683 970246969 520666442 145999418 460620060 655827599 690635475 460275909 470341786 979685611 914886319 923900545 712148664 295557279 241276924 761258139 250429274 380231212 994141360 16547845 248797565 758869196 901434073 219539374 629421016 636950558 908797283 746583761 368574149 57441060 219225319 9385415 742197779 388535912 558260864 396312036 410953202 628029348 427146180 815234820 715743050 628877285 714512996 986705012 779403899 235907820 74357175 550112533 215905144 299769547 132016689 909189552 384829708 948793557 263347188 540233957 165649413 486655467 635955033 299360920 177705559 682987830 985400279 831156683 145204347 467189028 134085942 223423643 618009009 756900242 300965526 1942583 235875487 865704805 116085157 800435843 227806334 465426333 707894542 27067871 225293766 842587841 264637973 638346153 629422330 31687559 255922154 629587819 79311977 510671948 517256423 56527672 437584744 810702499 504751318 389621257 370018350 442210278 598830486 640787644 802127999 730794820 350913875 931785129 346728928 719438904 977844293 793267063 558016274 522595740 824826282 381942473 646499648 433019554 638357109 6607773 372468480 195635782 237218258 765952357 475614540 235191813 985409721 676921331 809216026 316661571 640695357 433549425 408690917 654028734 146124529 944027996 21737573 710215415 532226620 624822216 61783264 342703465 37906640 647606669 365704721 239881 603859168 807744646 907026483 775545004 46730699 853043943 799474174 470370152 827887819 588202972 124582745 286732623 58506890 258048009 581827132 392429036 361592376 545533709 372897159 890685066 569977327 867153226 395361730 592143903 698854891 927870158 766413476 331352918 737699778 405692445 427510267 835166971 226987613 432321219 116524308 481620613 561617989 481701343 527208709 928572692 279464480 949018176 506213917 890489084 930079669 115377523 786604506 117499281 993217610 846711228 237364084 383794708 461827822 480087199 405049688 650869455 883042298 41843156 920421625 638418907 764416987 14942463 506900399 75628329 961157353 621145589 678504111 859123535 662590402 842883360 942032889 967984724 644916454 392094132 207616640 902409006 612136991 104325410 412801510 857812426 730125402 808303358 719548295 246055646 6810836 173713273 487629710 347427603 968405217 793832353 133016497 403582741 234388128 981978337 233110663 633365471 471479209 437056000 51976592 171079411 163450838 825772088 413479137 905029005 254684721 839911104 306891991 520088804 249171789 77523964 301949101 145287853 139482503 792933367 113047253 791039333 252054099 480636458 910090390 975168093 157310298 679192429 783401387 147623718 835811518 994820440 662821437 113621783 578167697 269811831 641029901 741394789 148304183 912189412 506431613 696506131 246394753 441236812 486123181 694339873 582688388 285757952 7256208 785088877 319976171 521922441 411124398 260810725 734683755 695825584 479317630 153305731 112477212 661116791 783329802 581846492 243664311 729479455 792115462 983284586 433653110 331128744 842163215 46251228 603045543 575257202 239650672 305765023 236815651 695813130 616656874 697616339 487829859 97261088 697223036 942781321 626896885 366604985 762344445 648690047 887683031 239560677 536467315 741407083 780518211 68823133 778219025 719966539 295678567 898006169 918471943 736961353 990879589 126813641 980336215 960907695 489159233 920448296 946170574 703095008 154388165 921837291 862086041 370095749 504483209 804369956 193796603 573423195 994594067 977282764 858092026 54220999 170052475 434804957 652357851 688868616 726198231 258245124 58518713 875504621 960137870 640917754 504075184 71844514 828641431 318872814 115231183 266749568 942167250 586814197 880825846 479295031 39480175 36044210 63942599 10803586 779788737 99117492 597826079 71573385 969577545 43334354 523956010 551245562 904642929 492944820 157663367 537168469 825314828 504970703 196799391 259837758 558213510 446540139 23498767 121757280 860827362 111246189 573091509 19976379 177707423 519972368 378757006 358548599 421811087 382498227 8803029 794990151 559704922 541398899 166985915 558665464 599405121 292205986 178120204 162188570 773735767 554540538 333563153 894533009 526228893 427931 485441705 961983498 254552593 304365772 977949679 638795090 143660542 691787014 208595665 781710185 891102505 340833912 632642613 471681669 731666650 591595392 834723749 133230997 760826560 715610462 498440905 934014080 979704307 748127428 136384339 243809705 245881028 219080043 28060863 376899252 985869629 319533293 125230105 938330646 841383431 98034611 110863723 169475925 534669046 471859113 580578565 213745901 389897225 573523405 519498239 801944708 840631573 295662822 784211607 266346697 371938593 643177604 8784978 313414376 709068826 988555038 645207527 496132385 921751926 328977596 664840404 750416519 111418548 81470082 466036628 491925374 77312331 552984635 209937940 37250198 914150462 387098249 672420562 174029864 529757165 839941706 41679066 640333184 141768901 119586290 397035047 352753281 758272813 35264293 678244383 540804189 794401797 310048410 70912534 97293730 115594495 90871586 373492515 662113294 347642834 947916262 398480712 258792540 630138113 865822895 972542562 633602818 198407994 602955523 439370589 252829321 234915501 964019268 454473925 346319927 390955312 27821411 880987086 436297939 524841515 536646695 225256966 900180513 815709060 605752941 366086527 972423471 705804711 442841896 828671951 340500872 267364627 985029116 744792303 146356942 785401334 729684858 186778600 490256077 485644567 884247834 770435464 788178968 742560500 503296093 803728301 979249109 218716290 875264152 416907803 35050046 451362816 341721437 116919643 542090365 147821341 176834160 751085594 520108999 871462988 510309955 171700772 238553287 211205704 800798465 803699511 263654367 366661120 642910541 327023350 660260078 509014561 632192096 894544208 803842530 868375898 64985042 57351373 121409485 670915685 561406691 609515668 497695322 333739384 376281433 985117355 853536264 523663083 461212948 891378458 172308726 572632087 564489585 500110223 145774905 71360878 274549319 867902685 656133990 570489350 604479688 317143987 756945530 325394550 570959565 465496411 736581923 394120866 705143148 565716425 489625788 253191919 271519890 631871864 178280971 976513795 386353578 940343730 921280424 288283460 383455558 431295526 204349212 429813323 826180620 618972542 573077906 221508743 366826877 923410506 502852102 297391366 576946350 569958537 742907694 472818239 139948254 930601026 656286210 242448612 215958957 488289713 501663226 867173272 293966578 548331906 776181512 427240234 219523541 81681662 563355325 638698939 150865569 522245573 322882535 248391670 492532510 525563710 173587131 880284655 295944716 726235854 954462179 487076760 193786690 315083905 651324273 222344749 241132739 184184022 598435227 932211060 495930803 69676846 185057829 923255828 53097112 338200463 694915873 951624180 164304256 944945207 478976374 794560718 857462765 229521821 400296582 549588801 800970867 502473113 90054609 829741336 854016658 883882156 999119077 485389965 133250336 877680580 641193700 379515475 514567947 437863042 96408990 99372596 355782781 889516453 166879970 972948543 505793130 747408755 441176973 51149175 989794624 700590507 635391978 681862771 693202718 825514520 653517621 827149259 218449516 932666994 27123465 193218330 994428106 475888553 320183103 540278993 617948583 721609727 37695794 24929793 453204937 42117934 550409925 724527906 148810176 475572307 923435533 294792552 493955561 493736291 601000511 762011627 976425145 730819156 222880475 358569992 395561626 554001681 446682150 667061278 440091243 884478204 665896625 496792681 982204118 184631317 640667210 552881502 498260553 915521719 573480921 736560226 980568044 60866696 858478939 3931956 97252707 847200368 714689557 781525302 474734808 177422014 568177939 594684626 556234432 614146958 467317766 799915339 91028723 502942205 311922286 215562131 111367240 887596081 836184302 823911838 793956444 909326406 621193230 415325118 601598401 810200491 819339904 693787289 745196122 627113004 177181909 509956766 806053746 74080966 924517383 664238182 307292799 688726524 604563496 729107733 272081958 586101684 210688745 584988028 792919290 11192248 593856777 869170387 334411892 39346195 163737615 29435044 246641954 802133903 232094694 366995243 58708244 3002668 352877869 948105522 372239100 420320009 49967527 370882497 835601387 440018112 931507867 74282728 5022876 151012652 7194238 781239040 565565500 534358758 154331311 155977404 754410746 3974588 706944519 613851980 415685419 405409807 565025255 658914067 891364264 490854271 532487536 98033027 134984333 107536331 499815966 597487145 807666539 968836975 985202125 692200562 357604759 619811265 972586151 974527838 879967990 588533025 579600634 712329747 551337303 583903824 365841460 586380264 543512258 77924345 598922256 432232665 319783207 557214441 609923791 782017518 387302830 235518742 680257504 14092239 607289629 759468509 636695085 444190406 541293709 189096433 965056142 397666796 143430188 872236861 691013163 175555631 674132029 814115225 776835497 473163054 225962247 97429587 795326561 414044518 226745058 405674878 917354635 920141582 448204019 689847663 519023750 346205155 906813 755109197 484470683 262712991 749880977 787132505 752304705 883048952 409680329 108456536 360168913 457458526 871294651 688886201 993939966 847788370 641811106 474751677 631212449 198037072 165683153 468059890 313689438 699845069 70426142 573779867 734504405 930680809 882968190 465115550 982653022 448050408 224517901 793584384 333459239 604999851 814416784 702276453 644744521 781497415 700073454 196319686 269091407 802954941 433651990 512497652 351618563 119865316 594129931 411320140 20075341 779506678 68773192 650717865 160273633 249272052 970196905 585515927 49830979 246024263 978992538 463490095 149632460 559654980 648419310 35401049 373489486 426345325 194030797 633714753 925070677 416548124 928601877 612270571 535571948 477004419 512078324 244562957 56840628 891095552 756786837 537217547 507695519 904294423 297085995 23843753 103340893 581462788 677222928 114410264 579473172 402113997 529759190 459179500 850101146 668672195 885757589 129843955 96353871 446348427 544872883 177201088 969298835 644193505 553309540 469194154 376331253 450916660 263496418 843306284 922613760 489294248 470657725 835415650 355699350 254160570 182023185 855066156 684910426 861264259 844548425 775107899 802489026 592862224 979598201 85518246 869859525 992359883 998427925 455759603 768338454 380558450 664426238 478107527 186799347 845960668 547104858 822337147 291960729 782378053 815003680 317274012 516347061 542564999 417248626 719804770 328956071 660570600 743825112 464410504 401839764 892057 166750139 511167567 727322478 82295521 703765894 89920663 176206672 7050914 889010689 914656209 303921988 939911536 455724979 672697708 229729203 805568534 374605926 337014894 172593738 860926710 920163233 662660337 431603996 318873225 57072926 481353718 949621236 622458544 844279147 769050662 777356791 777691666 724060507 577897950 613488706 661442607 466047424 642621616 733818844 50175151 221134095 303324902 188934051 300697045 603356323 625681771 610894841 702125464 364455775 174808902 371217801 962837869 994270916 365555074 508126825 249994903 489135993 109502774 653939021 571477921 555700790 681669110 228796904 574072346 475865338 362034872 570154516 841558185 339090175 872799198 992772010 661648175 850275529 893628656 893615798 261721873 30590189 716512934 758173010 393133212 993198532 490556611 561412356 725117456 621499990 115155341 392642339 289574111 627887385 292270334 623667623 711786825 346872440 410065866 923370267 544580466 122857450 895381813 250895285 340013585 277920781 250139332 719574175 588332567 308542984 10843182 684044399 567288234 883916200 613992265 451524123 391223194 194529010 864179208 942784117 902863530 391102126 730976445 16850456 401442891 153117930 214107635 583313195 755442395 925439162 174340043 208434648 23962699 972889502 534565011 275268292 908682759 523222644 911324864 186139595 70237817 432721697 258283404 448374046 646827882 572464616 321086702 173014117 352708182 382409792 503520953 577552370 321074938 786357727 339896890 868302452 69878129 843556497 419879292 415168141 8788960 158923228 833068520 282538197 438785985 395440407 763835896 669411034 405672087 395535293 769876879 132242046 167258759 645705773 609900022 27393719 406782583 392842688 25484369 479037477 662148462 85430492 52390649 521113849 195861720 291032014 724908922 8145296 182610489 941483273 460139618 670408131 86861754 403589552 632951659 863538004 242265574 948417322 684912005 331490796 349065246 841726270 245615847 822948951 121607112 259874785 538698156 805712948 146394226 415335939 51732030 344878990 176479617 432757674 806551689 374889458 156440279 912930281 6801373 71160543 105436404 514670790 442532744 224043080 7131195 809064599 7740315 698898665 655105193 905022202 23268861 411573035 71358987 215494894 702522321 210779264 322628566 140295875 750699942 2930508 131465289 386110267 375712566 46109257 398770398 337197584 642485535 393527972 326144277 830537726 726710409 206290008 596485916 418862887 981040641 342180965 196849572 305530797 250971042 462300557 221214997 925755813 465061162 965832583 199353737 411457472 350881540 133591379 489752816 545444320 913496824 250703527 815324693 452416243 479176817 637096369 591759042 965269785 114306372 303308372 43818445 579122806 827284321 421140949 36935917 762706512 175187014 871680134 486230421 967502802 968475630 355689824 443741126 184190253 428339037 337074512 718086079 39426857 425943731 850559122 371253983 701428604 902203273 655399832 773490062 401949635 163409377 439525240 928062116 460589209 220706049 196683843 502449187 226686058 710756024 77205258 900487297 366769071 17312901 473875164 978530104 915118819 221731942 627353598 70624534 484420540 193109252 223645843 423264590 569681006 113852268 911271282 959527903 869123840 630955304 823010927 309249426 30357673 272014049 385935885 457152996 743523356 884093903 587155296 413554337 385484755 242109665 979910718 827755529 876167430 123078908 377669582 255347459 754475240 362635920 757857348 431538114 104422236 879032292 194047285 112373322 666709448 454579909 920624420 219714645 957510729 193951485 887086385 253905210 129613059 313311885 538734549 477950925 295420866 569347030 74949390 680171700 484603835 11416750 263980901 424230743 691570027 189773083 648455178 173788520 110170199 831597299 531020148 672394726 606177768 213002109 179035273 128214051 598415127 702040228 427627539 372189225 650463608 548854260 261929124 376742835 529488820 548695845 119266658 356937450 297334468 192180333 17995050 722869525 183250307 698704573 872718896 356994539 772275550 489612183 835715412 762008630 19456647 403437236 644782260 802319502 386001696 476566820 501470090 629122942 587740695 988130262 316345646 431366712 371052821 352295185 736248018 792157839 975770142 674975404 939922225 796208915 337150316 441921577 13163790 767817975 913621085 160733980 340630923 174350392 498160702 588678598 992935565 975500339 32595551 3342852 991042735 629091390 318684464 833234031 770083909 429666715 507694613 539656577 906595731 99539247 485940454 804038905 417553935 917969952 178193636 247155112 923187761 655169875 242431936 293343839 285578115 208287687 539868082 317053331 272004522 433956770 13455774 7188025 158221002 706811084 631952162 669750403 408361481 823232719 31591633 529718921 767710059 302244426 499139010 574217046 41409243 915503200 401893980 48772536 54720533 281032379 644119935 904562767 342253899 851704646 314770193 792074725 824724286 563344065 764918860 580648398 437749626 194303359 458152645 299845633 847360518 833280821 381393501 861904237 279990946 550827286 157763186 195809751 121858633 191917688 868209476 365017871 409209510 505719895 805458043 172653379 843623589 792836037 187420909 370460071 469831519 999371494 20838927 587202593 664651914 550561029 442375277 617702940 75009171 716945574 235276670 686368640 944142746 803951562 354801231 704719549 675687360 815249784 150079681 618208577 726509831 301783453 333171903 675894777 861066238 881612626 31883210 34728119 850163350 410842481 997853094 569662039 562378355 305835571 521329703 702381377 808007360 774831665 251113389 16949747 298328899 10373318 802700856 760789026 246016827 194807157 44908603 578586076 372809366 313592577 694192430 161479942 185885557 92851731 560787218 932971436 655947973 263554806 151598168 555169110 864432266 494963675 659627746 900934556 875210476 178037370 92469542 981496486 312222790 7581670 214336125 426760243 62994782 613329792 921412480 77635582 545397347 630784463 675252764 516384640 544357757 490676493 334712130 506401900 502198607 252036217 281752846 92834058 243422860 447843788 456060609 890506474 207407678 885071218 508040214 781608406 219884316 931974176 112712897 824266293 551892500 225300115 431868223 846313185 863227124 613210014 709970294 151184557 320442486 962728642 192304826 539521347 854559565 948672156 512859291 207160182 384842917 16422527 592151466 810360705 819103382 468719965 288553918 296659148 267782588 251674947 143847293 823656803 475061772 856781332 292773933 602852334 808970521 583357745 401442659 630126615 609505977 430418180 569134001 119928173 928608556 112868070 625220513 31260979 858040453 854668335 240109665 740033758 401678791 960735574 643119529 274186275 81693461 115640577 714309722 629637495 421996554 729350060 655380833 7453494 588471281 573112347 364769925 674786334 265596275 499784089 462817618 254363666 520846017 71982060 177909281 286308154 212654659 661010650 34468902 341286317 609596330 717301969 597546683 145720046 333503236 443413143 103503250 13968245 615875645 389514194 932485986 771118271 515312835 807514241 577579411 166420043 380208689 7208479 604319860 342069444 681088346 337965481 78709115 229420662 559304471 445411856 556827911 358988734 355491185 139213589 562185543 51301019 565479290 846232780 859717820 18862837 171117294 336310701 83586687 347756562 11258139 103013689 837663968 71470993 766133180 599170637 878431415 653028835 67013977 879827613 839738531 254907693 27249535 75511230 455987885 768448546 431152955 857661922 685970900 899215756 545193122 251941125 564554194 746681944 998451821 430269255 970497206 804385764 387659196 969670507 564264640 809519318 968418615 446838295 341170544 876144426 517961046 316699939 651524870 277407117 826769383 888115194 796571806 677857667 109354535 590487565 828199890 148029801 595150847 705580457 988442857 388153195 655887312 912001840 274677898 302042771 643156012 990559600 509888579 682632722 719842956 289956081 312908745 671037010 621654767 495741069 450912649 709438276 578309051 985923492 171403684 451644007 869281695 31428658 531848767 757705387 755718608 30322180 286188092 982000917 114165981 284367294 976852346 460776810 74478495 92507612 121758831 20165973 895363560 645590353 277265511 795105077 275564825 313232886 984289944 726279709 637766512 197115216 377777510 113162535 45542727 356664956 652710836 996973963 900142156 463798949 339922254 366266650 153788351 394029914 919395859 665256913 934079994 666259152 209575154 203854496 881745274 970467100 515992626 661591690 724957315 52790101 69699925 902597080 433835228 385760539 671348622 235977306 152507615 270379741 996171738 868123864 910429198 717507706 293724722 862459755 491095582 772528408 537221047 434373975 584499976 316158229 230099865 677695552 856009843 92187155 957899248 899393175 793062360 826362944 703022588 658910213 787430148 368882640 192432681 418827839 977786602 143011851 199792254 86433075 412370324 681089602 685510277 892928646 5626844 24542701 524429976 436731980 177191373 627646905 462016398 237286643 452526459 370842402 262253851 553296575 290720207 527808302 491846942 426280774 506007572 174925968 143664949 78338493 803744095 909933047 742502897 704165770 145760940 758282397 558472083 255438715 219567213 759942630 836142969 3972028 166980604 912062855 542062909 349527564 807500730 177966348 258443724 720921786 524428055 553386043 16145215 273061704 763223314 772838193 7948363 762248051 842880381 177607806 332248220 831762853 125745151 331236268 22206618 679242842 674721123 526236526 993482219 166417669 878119187 898158699 483694454 764088210 450018063 244324362 583702412 974607111 718101908 264375851 782828098 893677142 751446134 462756271 639450914 605112033 202311663 500458069 91509538 121343593 151678709 353419195 999376525 688169469 928913698 34636261 327494810 968677359 18759518 120031471 524395842 172809859 619670751 306799965 471778788 494967551 419644666 284376195 385609900 754282069 191135053 515596354 721575472 23530295 457394089 861300509 950422097 72599481 466645759 836498477 563152233 289188764 863063457 47076513 861841749 982814852 386027781 571857632 684782911 582152614 250645605 753143381 898083478 70602601 190062105 839163036 28386162 325939820 594274304 224350666 935297257 397321156 844280723 682229140 21711877 478992638 643811371 282097365 687285050 942452618 99019470 122556465 493428902 703950756 920739897 944484199 388525244 316545403 548603107 856579899 812092283 638484935 422102136 978918574 174379272 419457089 632137792 43049661 758258122 902659361 808193233 856094321 395940539 448859168 14434987 170250603 246042145 710708831 703155910 777256526 603733529 890577769 99755054 959640363 117955266 273154599 117193004 436399289 966774787 815970664 323265745 235152142 170645216 103815333 19840920 540659900 517622485 710443275 453652836 435424483 53876716 323971729 163911050 546323782 849270749 220352141 149873131 353360031 528211819 758400173 324499233 339352271 638868896 606164298 236859177 591719718 33835770 387542235 662600254 836450845 488656387 812435553 584277344 940255104 384461231 80844879 844792105 690146275 745714349 142010636 10765151 206939566 816312874 256445272 720699339 668114701 339342702 28867618 602160898 793480278 370789471 679291126 86786493 482561399 602057207 774349376 965440616 806059855 538593620 322130451 889325406 677104752 592598190 989152085 428141696 336986853 280356592 993961414 796273122 725439064 868590415 154575773 354978573 852407387 280501162 782354648 287355718 939058548 808982937 540942041 412829088 290111227 39746148 702366218 218019538 325279166 695018789 394590389 847896562 632241297 313825722 974752402 518729593 628328369 772263999 119795214 22159576 376677981 523435024 128231373 122987980 676372233 744768897 997420637 576548596 889759821 602962453 682678745 508003928 518974815 587195642 69147907 443240696 865414468 442228608 278105489 622485315 182229873 876645808 792582901 168231780 240357724 356348886 229343022 278840516 181439629 917921894 966737197 613442593 498595528 781254606 573308899 831273407 397119452 398629269 935645625 226103639 317807129 536284969 183330825 652507654 108117607 852181873 582960078 505759519 736292929 664965502 911773697 598006443 331126828 282546369 79733823 778110836 367470426 383956590 145434393 523114117 892367333 452634257 904794657 549089332 144956167 393643367 430089360 210742975 890057388 200229338 598327906 168839637 134263522 308383354 411522019 193608187 19717292 124535397 960510769 90497833 509685051 264154423 186634455 448772158 162686709 432258610 819099658 53683275 883548493 794937845 60694286 453693343 79828363 482104702 790188002 493407927 400425260 516000843 563098838 767857355 72924667 836013685 428876438 826132178 200138135 68579409 437354966 239918134 44971306 8246297 202099940 604782246 426469502 327638011 502781886 987337161 658109584 627981944 915757923 224732433 610119720 808791979 57275980 166169534 561523654 959160713 461186713 121835919 717973545 627913681 191846428 112806160 201338259 426110090 133989564 693272527 546239625 208897434 218921113 324125087 680350293 691355504 212719738 923198148 773852464 734168362 841825801 839189272 535789229 693273002 569695246 117041062 215800317 355435693 874223440 669436175 834095465 273802304 187652647 865295596 175798387 914285348 115902784 757447119 222781974 981451391 213023272 241757821 409860395 967825325 19845483 199887288 359619268 939224800 693522396 147840546 918713343 593942243 608105462 578220880 491685396 557179890 854165170 688234094 780130448 59756433 530726721 508110296 539213369 8379732 648074965 585458712 982027035 256047993 129712931 961536873 527263915 610978324 474109554 282983410 28628584 887556245 501177319 23345313 853177137 547897194 679564832 347473106 635952176 214632281 167856176 435738431 107826439 824729394 760887756 66313018 369329376 733079752 735504434 106407048 667909877 110435445 901378187 868956114 194390065 643609714 340567866 278690974 428762818 580060153 309653865 493196108 498906012 25021881 97236568 196921160 622783855 812320403 73015803 121218515 93474832 615394724 308702980 994830368 581915950 102079588 473989237 37538481 481569115 82673773 768505542 391095754 79797873 685246534 807396795 259883959 441287833 762189632 240657136 841088930 405577368 954070245 248038530 8544516 514068610 43886789 155475706 690410310 334942919 260306873 366991697 598838265 425632611 78986380 960888028 153188841 738795516 374595894 275912088 859665722 693891871 96158850 254180234 426593410 796420440 657513028 958011351 510321580 299285975 96388776 61228745 558529361 443323989 197958561 818989736 917671101 2419065 393379771 180833194 967644520 798074797 138752796 160748086 276837531 804420178 572005472 44613719 497464523 803863240 420654431 496025535 195310946 619903172 28980169 979618574 96496757 117924541 660290294 61242802 410113234 475228525 600764966 687990431 593085169 17549972 577798529 126651125 560023432 812764527 310640007 182748212 681208291 690802613 231481087 801949191 320920510 989826577 479136183 144711009 195565227 825170703 575331788 465919438 571659358 758628759 639828908 215962166 81937685 376362766 721187748 346786251 967734695 946157670 761286893 848315016 992792589 827268908 114545734 206347105 374858063 690575445 927693882 442933455 163651914 518059891 156237788 508562623 182629240 498374198 813321440 183495496 397936039 514778206 880578456 604897602 705678447 272991759 132618898 7640418 881662181 534322864 961485651 17094454 459930343 929574909 517560575 602174678 325690673 431964909 583264097 509230613 865120486 858344258 466409636 141541655 523445936 109677416 125410994 906704445 360518283 754976631 158745333 255948335 954769151 631981325 604484304 808380981 89306485 555597819 750145649 912846482 792975269 822759898 933828121 298943089 562648654 911678276 168737411 807720553 664980759 284218452 486576782 290032590 285859710 765605581 394960346 846277488 215406525 274108426 803795474 578798476 889604278 677875614 564041219 219359161 458946255 93080724 362976465 989377484 532618258 961210995 178466310 410277709 535640993 683532427 123452633 175526422 164695784 646291088 326564689 503762487 662147118 290939247 32372806 693725415 629531043 819105763 347562325 325258733 405198741 333301230 295675972 370568958 519414659 976542876 34074904 343294290 46430683 800201755 55205476 89625601 258412655 309185842 602557965 717699147 192024174 519084173 295087229 88949448 66351513 99275080 11425877 189047426 29129899 940093466 599844678 474386785 350653994 681155021 199857800 306170724 121662253 564012473 965933889 492018209 471864963 178885083 838010290 120865153 835295213 803666457 960867578 881114925 234773984 972674127 899339949 668094988 52031401 907047295 667220850 85530920 867481159 188253615 25027888 955541937 583772144 441795018 832643773 338183115 343510574 252385877 704705744 971200053 416594093 665035308 618576144 535515545 250055354 586484290 927266975 690450426 849950908 877594135 968648924 623883135 458496287 842679119 538601353 850260322 337012359 939187490 7299117 784413431 543132562 84263018 971294558 141687966 232211587 655396806 422670169 825224780 267110709 10703463 936748121 655885872 813386188 495553508 155794158 356357858 256554818 216463727 616815326 951282346 636047363 11934287 498889615 286568357 956337924 685687000 427082971 834569420 69633140 136437067 311657380 60693496 109977236 587751595 202910743 20457372 652119639 790807709 591552270 576264194 749371310 901121516 180486646 195127573 740844947 644401135 542898189 227214621 100963195 825462878 275576595 969753352 779722908 212078930 432437375 236438596 660382848 306345534 790363136 796081074 672920810 265054217 926322701 844544730 721813740 217177897 18927960 840002531 930473517 877333610 273919178 382853006 315062769 430444923 298633867 335906728 507659662 32155881 918220720 847883047 510277400 747667845 373595314 642752454 480999847 496252714 884046481 297949072 651071048 998816872 333678881 460040332 571689586 587798511 541346388 253031545 979135749 138997897 180912658 468684225 658401040 50003542 951365034 578132323 541698618 663779671 913486628 864647385 421724335 703093279 613580453 736856461 36320053 876579084 850514269 79845495 982580028 805110342 44598443 95769279 604907932 317750852 547469123 655665043 196737316 327148832 615225031 758033775 319722192 518962907 770011738 220936215 719433770 945532070 426741802 924822975 532883385 147362416 466631750 776433480 76171086 709211249 412769597 634387435 200367926 884998138 397215563 876582433 702969589 669500684 371744319 121959098 800578924 16273743 888762971 512100277 589466713 635613384 298917122 535061776 716871754 56664526 554092197 572725670 613357496 309579137 60436518 920246829 747339920 731816474 178202789 82532908 703688342 231537494 137668821 897070540 18598319 51592957 762818017 870857484 758942638 999187544 204732178 239325410 529595471 390565953 823191978 276576210 255330522 316104262 861469110 216752103 493669505 208035703 578217621 260009897 495954591 726853822 764415316 973410124 212287127 27048619 672924066 371652344 726543734 364018201 789344909 557125462 331240270 7112654 943899283 504679583 985031694 942301454 458033173 589729498 586121756 347903356 196869973 710394086 157554217 577448047 362618527 315613347 833287580 347388209 135049345 118836063 579573472 64709276 527832860 306114528 339849814 988217568 549662228 773567420 92962798 340110608 440269113 475245058 155752194 43248590 269142279 561553444 422572112 106935879 802704581 460411669 403311716 647256695 130283170 470158753 943954980 101108609 628566874 142809374 822715249 788979797 589554527 287665506 101427681 764905826 98334504 74267725 641266246 639142022 165890330 441167649 799098886 211601879 583442510 819362628 360042526 398640424 974147382 95506750 174601390 593743687 24746594 226813678 531804171 862799673 748122927 781033274 590160250 657578648 755384688 168356238 97995029 470605323 344125411 941312676 799570285 443068337 793450872 506643423 876937647 906546523 237277827 502138117 433326008 184268022 178953595 928869848 212231133 216529985 777498224 197256309 209196837 41146837 324253250 869142331 67375059 106362990 278701650 925400462 513540955 313733259 254791954 874436259 548195443 190836724 773804618 698301822 994261104 966624740 86908780 629345120 220607335 970760741 470704189 525700876 143077723 280152272 154167099 612765433 823251748 465839837 326511641 10971320 508265202 546539114 122305380 511420179 682053101 888485595 706343500 704348341 497377119 141028215 668830156 949428388 547959247 774058463 679636699 971398606 924289294 474844573 581960146 375150114 725649342 492757249 224429383 396571627 462889563 171543919 608795372 472550466 691042475 89025786 112474404 555578739 865283391 481143568 880513327 527854123 377471152 623237497 832682677 511497589 832121636 800241646 944115347 565433755 196549202 470086845 964443612 58171339 283193754 54525530 954083550 542774218 667694318 733819114 869547384 45952067 192862122 80292005 231536475 408336515 961462047 547930677 731712465 187994979 871825771 770401649 922236328 115441365 920186485 184873663 345109137 985764675 73967755 894876235 74975415 215810197 966664435 844923426 400073302 833024441 400021226 946479769 553317964 636298749 30467363 294123798 851775849 684748792 119013648 995089153 655243380 610214124 337555294 158332312 656081619 213713759 39187266 348014025 909918994 294411401 168901994 853813567 96397850 869507507 960664026 158948798 599511530 205954845 614803597 192139284 696560119 26912034 440490893 955410944 41784413 382212212 775119467 481956382 986500978 278404067 682819756 536660283 994871223 375261768 732957566 476713393 541023651 755209181 775649983 72023192 542954460 263216315 965006761 880443829 199478108 143562937 1979597 737928155 785085512 967913458 21719895 443660302 706667137 878334219 806706512 989350100 836132227 736437206 398089944 716730117 671926476 983015686 734914162 816040431 6558976 35930449 498015940 551648613 50692743 235223396 408760779 662036503 433572446 539498806 646356766 707075357 470013237 925265739 684569025 129366538 50149166 381483641 886619139 663038732 727979548 290668188 210211780 210598454 628850320 378496545 561338704 666843782 722272950 405254950 130686082 827184569 226587458 932137297 130110207 745093699 742708520 46128041 745988971 921644585 191425744 653470589 71527067 220045917 651443626 695931999 600436866 67841110 628042776 575941996 792839559 872028995 938123547 406046385 38712922 52934140 347798087 101531015 944359126 892023255 23977062 674531267 562223663 866323076 148245786 188837201 37356206 481468471 562889269 790951353 84028901 750775206 400388946 541032645 793324340 584452255 952971248 888106434 81765419 288891219 309495104 50336159 801430996 246306063 215535624 490699817 215097644 203080941 947784614 109468356 765700898 850015361 104324732 965347962 997842340 693870732 385701386 237518719 856717676 760174220 648350815 998563178 835604330 318104395 838169294 849737139 928292188 916361192 80263973 341491122 760687154 123099592 152674938 642968707 825030662 959286887 47501643 79455229 174517136 845659678 734352177 620300690 385107723 81635092 463409275 954594973 863814078 879904664 360758088 942544546 419523057 572903623 395564811 320772786 713420831 668441915 827929790 837880545 135145646 453452980 436765415 598460290 370804852 997017531 167652391 118583283 514503947 178012404 311905127 82067225 10256227 94895552 410745242 88589362 85417741 725641421 82125596 899949084 636733210 288624030 63157049 59852081 416640138 947169195 296521234 335050169 960747995 320392348 578663240 103885951 794940357 279735542 559445932 243558993 101832278 265590569 341215302 206799212 819975650 251485687 564606548 868076057 951929707 455873872 826451218 948362807 50609039 715606561 644244621 243614107 415157697 99622695 739035789 992326520 87306500 214967205 805649687 968439036 827837149 505876022 159348159 9250405 16451982 846996561 694199254 952639992 670643365 884790189 502356957 813888294 636095668 819115675 338704508 44422134 281459 120364354 561467401 28491248 328274383 745175181 260161255 134988277 302643468 771364695 237919791 528226670 460489363 973185144 351593349 611450205 420963320 372241027 682018845 345786547 754933248 447838226 903666992 757635651 413632106 835773595 211216541 243714227 523872988 391767636 627881377 238971422 377796449 364696839 198085907 615808820 179695543 124627101 745004237 526446686 243480559 544291728 7385493 963717142 961266514 372940815 538540264 454096369 436916819 852652733 418518235 935324820 703368875 593723457 445296543 210515802 455296759 229118367 401218721 569577621 847637615 431457354 499804877 801267773 355138711 31365739 687671343 806115688 385915386 504964833 213342158 839227916 905598962 594261859 37556104 470418262 869917251 876223287 704950973 586398747 1438160 117522668 872542649 452278326 267532038 149595689 640494099 473874375 845830641 869365519 29802963 77494052 208788565 410499230 958599202 318441730 473959449 852967765 723340500 766179476 630541895 993860808 600391285 665670709 811090680 789980376 433448903 385974425 218217517 345475654 332158354 130522302 266667132 653393563 247218133 268202033 913466811 312416090 271043770 809958445 549145028 348338889 31953957 64203649 360487522 336640119 174722084 180792523 545242551 228159080 821310152 293416554 603106866 612828538 711989811 759221913 948102386 159800837 916255557 472870382 440087936 205449857 127207736 664733759 134040464 784583200 889966980 241944407 886727612 979367244 741367412 593124141 539278990 592938249 124376369 839626252 833919101 361145880 557127299 404321119 562975474 994658547 552656563 611844428 926610443 213852967 772175767 310887887 977549564 480346052 428387070 802547172 39461582 797120359 912581011 140473137 765864915 477305303 822903381 835572627 918517421 550873846 208883288 583109252 232721048 583275105 642998429 962561005 919993205 335666243 156636740 254057355 318321639 914107405 424449491 209781845 517855504 688235454 379488832 449066743 699755627 270861865 725441960 205403705 618985578 325249605 612652285 781991786 424315986 497968470 824063896 171934589 12331033 497526725 703832782 99040354 689156358 737645510 820814951 334326759 219664764 360006620 932386237 331963443 813446689 116845589 563786647 904987848 178180737 830555423 437621538 277043715 473256560 744995914 859286260 349524312 719408127 12327751 44459432 110936104 133218542 50124155 778565695 428040583 784232110 509004442 686816793 850029549 656509050 774525444 18983036 818114919 916184058 437910185 198287847 14558514 700170430 853689940 306930401 467378998 332020453 904118288 107684757 504340472 866007109 800554665 422453368 742608612 194711729 754187247 628005890 868228953 678295831 665595076 195442555 639723845 833670027 924596484 34224640 696511542 996821426 838983685 752120912 605728820 787608432 408913617 233948658 778609565 824626252 275229448 408133966 977087286 578529439 481291697 33565430 715406372 79224441 587080571 740284753 187406082 329898809 380947391 370930823 305180134 482149581 670427882 914364598 148203853 266478200 906236907 450209996 929118139 455446188 884710941 551657171 406662491 581247810 346384018 374318943 381855199 632981177 260140417 135413190 327172923 784290128 613534529 358598132 83565143 681103704 623921307 105632774 546326228 811420451 113118641 221849166 129108490 172789435 920186061 480078713 770681646 684867049 36466039 417596542 610887253 983099322 542905173 540787203 705011987 668724703 458813542 423682347 630309048 436865458 149134593 605299568 362682260 945456421 731677610 636006057 973556617 480361387 522697297 497170015 790571274 38679505 811758565 748220534 594577179 392163518 938640920 620337792 328289417 112731070 74715591 144747880 490387865 214341127 83143410 925138455 418073210 278524173 296340119 815579847 881672723 1278832 77761006 461090044 16621276 220188193 724911117 345990024 264817616 329666612 195810302 633532979 889747716 266942523 274288090 645946897 373568911 211683171 925487717 800303742 318143739 386474596 797091792 585840305 199862806 270865973 503592285 784031832 545374140 917511249 505910711 928393939 21659111 346845619 480077646 770590730 468844649 837496654 445648362 99736594 394275681 276494584 2307101 291208934 239764666 292038082 177550845 788489730 766758776 456153206 615988819 463036922 226293002 714020910 874623763 467774710 525373590 989974922 815015242 151337794 874808765 58672404 412243776 180652396 438498027 773121228 580830678 487358223 810624088 465849763 459481203 378766985 848040082 165912244 735149484 251876043 931346417 296016523 136829608 60551309 286769713 680707850 67784118 567514079 187888829 310723947 865144350 553476172 669686111 617799981 169901710 982649314 961723703 529483937 882521506 249279720 527475298 394022652 354820265 90220477 426304357 444696707 224162354 698579777 453650735 12233356 939079473 26357870 431969439 138506121 797548681 34305475 530074480 910533882 760690087 771010716 627130694 543427991 82723407 10052298 426345995 237997482 410112693 912676324 581626454 414892295 143563494 148568343 325667169 628256615 20903325 953753745 370024819 686493237 110877910 381908039 560184299 15747612 561092357 737710273 644019184 96392614 515691334 81184062 78891023 883580313 302559386 430396587 952081400 560694814 998314643 857138207 757206111 631920627 455440004 123102526 553446269 874918344 347514523 45948123 813788500 362707901 510449415 485878244 502148013 711372050 468277314 897205835 210886336 294099248 688025027 294330325 150977482 780116813 968991725 712670423 538032636 520359479 73651899 73868758 17165503 412044235 539298229 322789616 832936234 127680645 960289124 715318028 667503114 102639083 948603980 646881275 454738080 799842814 86850910 420139802 356617879 641186773 555020047 801138180 453075917 136665987 964080202 207481879 168441625 35358862 527160855 273982462 7159709 672864152 119297618 7152867 533769109 826573464 531265913 712260429 714039112 499372897 454230392 589719144 733715966 601447639 921574082 99787650 114603951 513693398 565091063 452524721 1045441 46681948 472680846 618496701 449512291 489290325 558159264 916096642 390845726 45509129 137163175 970790805 940891466 472631591 546347540 489173636 661389303 506954182 399748346 595242027 349301847 806039091 71822591 342048676 445483861 990334669 71425678 100629299 269417880 886925808 520667477 332644238 390497185 254967549 932236115 757273308 737381252 815433025 396614337 882092166 193472533 767382839 989616883 623707953 551335033 103602771 393005017 11368561 158041168 91268816 866095565 190000335 462662182 810933505 342375008 710449147 5806497 449994874 370376736 983628478 906550719 421188756 557777551 825945888 29319409 446602486 245316761 783842556 564366808 131510791 369508693 883893347 871998787 646451847 595654653 450752794 932053613 743816080 956423434 127956931 665194511 983062127 767356646 993101425 456867554 266546392 344743785 912619265 515010495 216962045 264896284 707091788 618210041 772151359 515143907 214014141 767116218 546600999 856051020 296504583 200301577 136342294 484993039 891699869 735834330 386547894 324568235 238842255 30488518 58866756 415085487 355015650 377071385 921524784 771237393 424098326 82868909 249063146 959726851 692808702 720238047 584279032 294281042 946243412 617072040 321908236 95564914 25652908 133826593 980872534 236863844 498917648 232147550 153910937 804860012 966153714 125475171 910680674 718362324 609121664 224535610 409843435 229843638 884233726 440930442 97236197 418172399 215581240 7231341 648369179 947366424 830538989 749633836 82918905 789545854 755003973 14168432 688278464 535847600 917284621 813243863 203777530 206904944 201041681 167299559 289183340 367363900 700956136 405728550 881100415 32379298 360131010 849382004 234063735 383772961 876034718 650611611 940971825 275996197 181545158 691368572 643715577 954126099 240512599 628513208 286038063 791991193 3308708 516022258 672698269 324233724 138686813 206142767 653687668 310632476 621328644 208400912 564843643 575029457 802881445 632559933 547551305 229335031 335306468 38884124 361152474 287230642 283501637 215209132 881955455 713373341 174914797 996676225 103384041 198586207 178706491 104882247 217630984 102543306 107037269 135083046 868676598 899528197 656842794 376907482 277899213 768886831 229085387 573831760 78916050 578772906 933553997 842305082 440601502 116481585 834487685 525970174 40387945 398561423 252467658 525122637 921861345 491380835 280367106 978686985 656062307 801322493 295146293 800984242 11035252 560542622 458516143 481151674 973453071 845485623 918407210 332643930 476292281 908463906 360163096 985898699 778588592 333333953 519905914 206392200 539050753 973677663 751850011 709892282 529718528 551413760 918034251 819047446 272056032 374459362 603810557 869353633 657259332 78402942 126587928 864905350 911728393 800254347 368804226 201336726 363668475 464867312 449218455 206891770 540147550 766904728 184174532 632915007 516947296 808460611 661459001 22121376 708583653 819587392 817102494 566886428 351437357 390921503 832925980 744285149 422476103 167293082 1208683 332604932 560037495 858170681 581542482 814719218 279038936 271960467 806440426 260268963 72627157 138880938 221305701 856356989 888649996 251259089 164773900 380915503 613343658 754413758 416678639 84424492 231933435 231050233 786117973 988687829 168910128 881234402 755822291 364361949 722723107 324872061 687049099 50720170 217154008 771868211 523972183 988081056 910076295 761382604 548841499 141392523 401030868 334860415 999424908 793548361 133043053 772391248 864520070 502228178 722914440 904992207 874085118 795616226 737379775 925034521 781796151 773990531 287282838 786927844 71684231 562775034 779839290 489158094 561938158 753805321 548269754 783948249 567516508 10017427 376613302 477471425 585768143 490218219 528516381 468452119 140884935 689133203 375135948 178397465 962009157 427048418 175111395 689950237 193892227 639528969 453446487 177961346 130630643 916193481 914140331 623346614 532364424 648885473 755826299 621692954 171208245 333632272 770531138 287340318 420579903 204370700 344254957 634987175 311896987 389949406 745920117 569024818 683018494 267726358 547514385 281954724 117601868 886429493 618262639 178086468 318625006 339007923 6423322 130575184 883299025 985296444 28622642 466676230 910877795 54999808 410047751 415030484 222918112 275334500 261700990 33382616 824821928 126528751 139846769 879180051 149457322 816823089 719364934 517814026 359448359 326162952 590863864 886138771 166903487 197001373 941203981 701146554 365579557 135667016 200839290 188959581 310307186 953947074 57071712 951730643 666499404 239218568 477450311 987036004 160985069 977616589 386895737 657911591 61033675 693398396 889112403 544339440 866102106 990818546 742034221 875368811 759976148 6895589 794423097 921632536 782967811 992512004 372552745 192240085 89389790 130400349 758675877 791914338 68966024 758269685 419030217 879719208 847844168 499438882 577020944 816039916 357207859 764400437 905760885 759550927 652175742 957853664 515283134 788337105 450572990 656917914 397604712 605457461 22102539 858715486 363641337 655566883 105310456 31284529 23745094 855691247 713022686 239739770 233942621 620570756 995957807 534286170 857717047 778127267 697315910 975414428 613200764 656222527 207138892 601285943 519641701 975010890 730557195 305099372 906950951 299447891 738306151 860994932 141100168 923853551 452525486 308186684 242499106 376006130 19753212 754201786 419458796 562490567 181879847 563850745 320301008 104235794 59492606 262420568 712466259 519398636 323439358 643496932 999134209 188589339 432189630 552986976 506658443 884390722 593390874 987993463 610290489 297603756 667804447 454172838 728792069 86521435 769869358 688290368 932287723 598513365 185488969 951112793 764947485 127355993 292197939 681500206 837243204 493206589 656991349 700818563 991952330 883635768 222544214 558069004 551703275 451237090 560342108 335706755 771105809 376732760 329887748 143736804 793589539 285925468 110489461 403527189 729566732 781554436 24581522 90071673 126627142 853355793 861163115 289018953 683932687 518979803 900674960 262776776 122835849 118464503 996575180 458969199 209275591 151566015 316398772 672469655 551267425 255770219 443019854 662411821 284255817 361558660 555712917 9733947 543661490 102879852 952082488 91321174 879411623 735027165 125031065 377455169 672025121 563131597 652450506 951242205 559120625 554118692 567941668 569812589 549546658 416077812 713675769 387216407 871971297 473106202 368871497 752791077 69055182 500763499 769051843 510319140 297453526 723242054 198503629 496843006 10409342 446197039 916045643 133082324 31989534 132263675 834970307 996701012 592857659 92876861 953434659 28566484 594350671 389323492 615499249 618246338 758014341 588043636 391423772 90820525 155668547 7614450 683758371 253289147 407866491 619063070 467539528 704224471 329736364 198267216 919700556 847122211 419616719 303831001 303621631 142829486 520401904 945241027 65907927 488656587 559377573 283251736 491072680 454936951 969707031 17566092 697679487 795260746 431110974 226273494 27519917 134965812 170860469 130263211 553986744 822333072 81532675 414372699 907327577 596438920 498659071 337913557 408333045 261777728 177345923 126766313 848918120 322865782 686623430 335014738 24659606 113866190 397829212 420120791 226991508 347207521 446955772 288094305 4874083 988620396 366332203 361995892 990936227 656164160 955875597 765276509 58906735 87192728 719183062 511959736 139512150 562284731 409115892 314976635 266627429 441596456 272223620 69875150 488811223 674046862 25980456 530808560 883649448 571047057 188492107 357176312 812474686 413911929 457421308 288648477 9185144 866660671 162240917 771361462 355653216 732612722 389269592 933468052 866470088 319337604 257658561 173782216 428784583 818429194 248225249 658206646 972725822 269231168 19844654 356005279 553146325 740066004 756138673 646316636 628482817 847653734 571594393 370794515 144065983 950216023 81963753 246862622 839990031 408708314 753531787 783798249 479374604 668305814 337605173 194788806 288851063 983130016 528366181 523994085 387766332 635765770 757161031 229253465 265095618 593243159 230622316 61466047 100459566 160027871 494303336 101208331 843465146 836070359 208632209 591056795 983739560 333367 75082670 485264728 245318222 731067926 138180317 937104517 174771526 209845599 446587682 600283350 425678972 167363628 513512539 340518777 399977170 511469636 65821447 266561161 387905384 346219633 487912853 407735470 917150200 322606228 910066224 199589451 809677721 73627648 395749737 664808348 467199194 63085402 980752206 132341988 823734520 578155446 290603794 841477672 40859310 483362984 444062000 601174551 998565219 637948201 182790270 407360386 265161247 775047898 632942088 482365374 798763774 423743269 161824296 975261850 431679021 289649490 694442610 864690329 317113389 579067499 130554760 936674545 892723951 366529085 319275867 8332280 621225544 344530177 14323818 458525697 414376574 919266163 477148642 710362632 642887662 531862158 230438302 320307720 188399639 782308921 112136446 87049159 438455200 267895784 238240718 14423355 421875587 17607930 393152393 985261967 352472621 699735402 203664278 809816213 555685441 608528047 929635477 209781485 310586125 106851946 5308319 819345389 714509758 747481374 748042148 530581057 305790087 460306227 341343598 504757609 392127265 164641418 912608881 547687102 35025555 221349886 557473051 866495980 452540700 342112938 823219903 508836792 729822193 153626900 954020178 389760307 411412958 698567111 810965385 17324868 386456626 169468720 595815987 228615906 971575589 171615424 288768247 526741746 64578032 239587364 973196165 275260672 305048768 134945445 622638401 990078164 343704008 807745155 575781509 617217130 720486060 874062382 784343912 926271355 535686982 32075537 948352015 792611284 533916935 343865692 820174888 437461262 978024742 680605669 765865301 50995098 751247674 432537941 156179330 905875533 738503162 799737698 121514921 956493258 624368978 715997422 877311425 58104887 147199511 25260390 658805 526595563 975872298 86761178 223272060 76120290 777086053 807030887 102997818 265732185 580081098 961278797 524910784 233567654 113723432 25552436 266203031 490489569 468502140 20241227 317127276 628438636 607963721 202853901 305581012 508161839 361362725 117701428 771088493 894509195 188339120 512375013 524036912 911513210 888220680 798806803 885387105 82795949 359878715 416634077 561809854 828517888 73959225 474572653 139788231 475238082 122293421 767390944 294665902 797726905 163024316 368857009 491064671 970933378 114920668 573114901 638324854 177242899 713953063 28421080 546441167 234706017 883016009 724389633 997567769 556829266 915640903 317422076 181761412 50773030 755530656 113419667 528512341 147637839 107574883 887316847 39531303 835514969 615430336 322529463 670434814 45769390 656104310 311422722 100737220 133647159 714126669 370732844 177545640 652351740 398552962 87292960 226123055 357043523 575953907 197020711 788730534 961510104 95128444 771279107 819571035 255078405 954912601 712162020 855783868 251821189 73938360 261824316 460061827 373796996 602485061 172660295 431066312 33349959 176411957 312305297 924411908 213963655 310326152 295776448 83292928 32044632 43507881 415145175 737440457 966371330 789268884 691476859 814616784 773372510 914795182 1546541 3369047 80186 512851051 755326671 29161751 326847439 124458945 779306204 841387232 410078921 856821289 818662275 119295860 114719811 605581921 842115045 39139246 233706685 98006132 169429581 951741443 764151118 520179733 156766224 847417855 778623852 853909753 460814671 875479895 361312994 717091346 437866458 555647847 497211624 890520604 30260215 175647343 330439085 315681654 319254161 210368194 265561127 710356439 387114905 849942584 234188162 676988989 287105868 316485616 214781657 485481315 830501980 935144118 43862745 120941823 312470475 621035391 444431948 93645095 846089257 514635260 337447909 563320429 613319737 393617408 711055282 284080911 15711696 816385498 614275777 402028317 49703326 855342757 299065544 816128399 66746254 866883397 777792333 715248395 103467407 918209771 432709154 388014180 645100357 392026631 126773571 412531009 17453738 226447863 506109738 264447919 825559590 453045745 70003772 746275032 911864014 324525253 180235652 983368716 308555000 558575417 506086062 125570598 705971686 877488827 385514570 374253198 452738690 467663757 597192875 497838861 582598925 112462441 827515085 112757934 205921635 566773220 682205584 85468298 154365400 520792857 750429505 157940042 959215368 909905738 782963689 951603318 383951168 377613785 568897138 250930069 537384408 342286720 900340015 947357928 710237787 221389216 905601077 311226949 174009263 68650623 837453838 830194028 666374658 263320381 120752604 452625542 382750742 527503628 311078758 229980045 45362409 800314936 959924410 82078147 337172213 716065251 51968725 492683666 658368946 297581000 754873543 81163920 281463413 329177824 80834639 405411682 633039877 37531376 199330377 487945527 897368362 530865745 300445270 966076544 677755308 656464611 717105328 818163308 109026076 105053756 112244164 16910451 432604798 741418505 740129134 405007290 209224570 572345095 718711039 782539070 139428969 27688961 780599096 627065574 526138789 81598383 233524535 516967218 742858373 775607512 115157230 12825476 551166214 633373753 925422974 442374751 549521426 23038378 340406428 767918494 264780808 328243697 143900187 634614754 715233038 266123407 602086718 573848689 900025738 995883569 727333523 493138284 157134959 812376742 980112277 649464110 45801650 294624040 314177562 1607984 809007858 694950666 848794269 834443571 77558272 950768739 196069784 70185146 964390068 384176941 534058232 140851075 470939765 822471494 216627830 639027597 669344360 873427036 529763203 732587951 401156669 41336921 18150708 616608996 391379489 657267007 956725714 776887882 198317657 422149625 929680911 305882379 77636104 120639790 22886949 342648348 51329822 265119605 836766400 768140304 587500199 959935161 74594443 279655320 329236124 427061310 197888805 438912753 943075775 780086294 621248029 614006253 514725686 895987960 166068768 592154067 398390018 381344904 120898689 528842042 521873483 693359969 954888216 821503153 45037058 996796291 976018636 112727085 569443688 370107954 146184292 922759091 513837979 366211332 643908430 570014835 367628537 601931988 150955423 642708117 782472463 901797639 693534400 951079104 877848111 908994093 996378650 469103301 44733583 476171494 939056674 62673429 718702915 544833725 690513920 380878635 47316958 432325211 852445836 578688150 876528573 348491343 99947191 540616309 86783964 691754919 263814785 580902173 282442284 663593502 382976545 709121271 223470030 839344308 138914456 390312942 190980782 743942133 311739294 976247638 39034059 66751674 135598576 27070813 367592869 453468450 722847517 400925557 182245021 21376372 238094855 454284026 503010235 181670281 150632964 726511308 90462264 20017148 165821681 918929775 153065699 150020056 217992796 531683693 435080143 287933225 886465323 686145387 923514915 380267830 530175890 597814337 217092152 986240344 862207244 571422291 663252337 79781123 153669068 404642453 766143366 959378722 178525279 884542190 54466791 724877941 508003749 8520004 532609074 508193266 675910867 124219273 641121800 142324547 427393425 966975995 653815864 123113220 714018766 93388986 216702815 301449581 856904262 335570738 949272716 879671221 277647752 235841196 215523346 363501035 698714759 852777825 449853480 456796086 190791800 288919746 281905016 852940661 673092458 489749322 407952772 450991276 133001783 798508128 338265575 348471487 897828681 835210899 319504524 540638715 256251994 887758137 32385899 381045829 896206688 256159875 944208990 576418077 992687792 141306429 367154895 756876762 214332771 400812222 531403026 623556070 240326122 504795888 807201865 950558855 673295454 822075729 211087018 546470611 365981889 76811686 10226983 174483347 369835093 836978211 168833141 174808411 417937221 976954468 674781367 359958406 834367430 966113441 967932853 585635708 243021428 560312137 916806371 928725909 153753905 284501263 701479968 433062562 693946380 800504492 490472960 494053743 692755520 570637476 356127842 558609504 551567348 493390131 40924272 468670844 268634016 464074487 648886994 843128313 67648048 800973140 636909234 332937618 444193383 582344060 5630957 413654146 789058268 607545341 36264793 724353687 829664374 540962765 311499147 5212304 822077022 910380000 281634794 862653221 595626304 204646951 77070913 330014316 353815789 382922065 510330467 325429187 974170939 624174399 28208168 513690868 189357539 959449710 576752890 836439944 918575519 655599511 687254670 840788464 332714175 712554477 698771297 167888017 564114445 502286729 801457918 338942200 752217046 342394210 562918675 661463553 101158885 483634688 85026160 504354303 801576754 11362778 625164254 416700984 447487624 523399455 446715038 990773359 851987994 1231752 381974641 85334295 347695625 334573900 125182986 233966992 700555986 310699116 382749674 521539514 54963645 215581790 78368555 613381755 804444213 359031751 511049931 84055143 714760416 907450259 133261031 453865492 271710083 792331172 765758798 112418760 773798629 218274278 156085254 422774204 925686401 238159393 313072494 661480038 656525352 292281081 138687127 758246 521029851 4503824 221096107 776572897 8066194 276555593 182453919 353577241 549715200 921132327 704015948 854560319 324271081 429407309 561861311 230806459 188285139 480447204 994578295 42719630 117972300 347476716 372993315 369235896 476509896 126314306 673262625 288949469 887844456 299060935 139477586 532182790 484895870 684592959 698258711 894058003 968591774 389372844 690631186 535301010 761800542 990960686 190386786 309672621 134637682 369361363 285192220 24505227 135145326 42129370 480664816 241341864 497671083 890922234 217628022 402140545 669634117 795390762 524048861 219004638 30374645 701658007 271629941 653403409 643414579 298081823 284396751 755108179 924188145 99140722 602028333 149374831 721429570 278048898 640301822 533951579 476845072 850513299 192202890 492752858 905029796 225980677 605825793 901005480 100684022 274047687 527531621 369428790 140131747 396087573 83222222 305814713 384843573 454586065 555935603 929521913 394739904 655367929 266876804 864805362 333737921 286441526 142883945 907668182 415357620 282147594 865797902 7327243 801153393 16751497 604852064 842539111 590249110 408346050 172264111 987752480 343667118 70052368 68196970 257808722 763125694 335953543 120707053 557691010 135421888 603833994 535734705 192777199 647051328 207066152 108090061 715099367 531910900 273765490 757404300 402750272 69812821 212421357 927491391 805756307 300194873 894337568 623273583 74919772 398239556 399639634 71773758 536653953 553649855 421747699 398989015 162869631 357769441 591966839 693941625 502969766 371536275 29104860 970748216 756138378 662403948 864759151 668913962 372429347 633842562 164527129 328184550 289973414 544075347 11425380 967872858 155141850 752876178 605623999 470630721 527862096 461955060 795531697 32153295 451059511 585341223 848013421 901779660 730844108 761959702 519208082 471113138 833313348 273749352 800843710 152202795 658437003 617756442 335227505 428113449 36143195 152462907 653646384 3722075 232176118 870624367 138473011 812670989 383601714 908330258 318922636 481331740 186677792 432249852 313352329 553991277 824287332 28021582 643218690 733496304 118716911 348858395 278352346 854278351 100269749 284677485 270824728 571460369 539261935 204911892 293809433 45884992 861106537 190799218 567420179 772897430 670881106 841179572 601820363 511580574 713771056 943449585 958229532 382343154 949187017 307194737 144149784 826483328 824527863 226159817 595878302 629088004 631873894 914923274 138701010 802125395 489790920 410046292 522878758 479440896 811973159 688688023 833557350 520197044 17133672 43590345 494465651 631968369 749600032 618408696 348366611 961460602 160262570 630582843 529131907 780268684 985727694 893585675 90451084 913195792 63798799 980309660 987340095 669463473 369124578 873054185 394046025 916393906 607610996 987475643 344737078 839479860 351116392 781683614 714988363 67184418 811489385 798296110 384877531 351677529 652951168 138039508 11855088 808690014 352683463 71341456 1979797 358238786 605146228 644457006 118935780 900004985 275395461 588819264 241063399 174485928 681954368 144940420 692923350 30549891 509606283 120772566 866838588 532752548 821528956 540319411 318921995 688257681 862774245 953821140 510770577 53903063 739031008 494177783 502157835 63332054 822757041 55975206 263851620 750466174 501793792 870154210 557568150 522194414 483588790 452964488 586190812 437601453 746237470 7259685 209716418 769225574 804578167 733166542 834348417 831142772 459587860 139112554 171801724 187448759 536389233 914663776 762485401 116913441 240411132 398624590 382532793 253629398 628417634 655929759 112184951 442150818 604214359 665622613 259222896 803571505 296981921 343258277 260801774 242564405 6475125 830372876 122779979 300043513 477410719 48811043 514214552 35758139 746430 912851364 512782229 531731700 661845093 220419824 723015240 674075462 4880253 963397273 316315036 295142429 335966540 620945822 845422321 793193335 234102111 87844902 197993417 656925651 795933719 865591319 218596794 277003535 404836149 805582372 307574983 578508792 323478522 657095844 25181591 945900099 965011527 548960910 172861306 634035315 771871833 917550128 474856389 582139723 707839847 166331982 743156902 290440704 950757311 810679655 895700858 367421521 43005012 471308776 709801371 229434507 878466877 957361338 224293020 355379283 182982633 455557580 448105386 869497887 984076104 796568945 813577263 141479125 226972276 713615874 381304917 910928450 651056357 955809170 957341613 325434444 878376071 62261497 832884879 331729948 885884493 116529234 724395150 591073512 174775480 434703783 291818926 849634362 358124940 902023101 37919460 196841585 772176796 504420314 386566048 963265882 507548677 238507215 572340920 323206091 298962959 261979759 19070867 312876052 950035429 86509144 755638867 914165593 963573445 981971651 22564855 234769766 922130785 538738004 808974178 932179923 189942706 272384570 666887591 699359242 447315420 676967277 392456752 415525826 189848991 805819794 451582036 22675801 356105297 473638514 240626470 168426422 154607257 326502842 776598256 998091156 556471247 932014218 730046920 918533576 645424045 895332396 212450156 83103270 881843553 71382431 854870132 894300949 275366058 536521942 532538413 149687821 861093641 608837150 254573036 359388727 126206101 946363404 721967458 208680344 379874867 895635457 749317635 178034778 310785159 594536415 346005757 322846789 341869796 269717504 184559484 159425271 97596631 411994020 335179652 379321354 568452668 662070006 598766472 98192345 434780628 844837152 10533158 449976550 790071159 64519012 970992267 115509738 813340513 885286037 247329873 780191163 567922824 891387441 583542401 519793200 755075624 881145285 744208362 582313039 253437612 915900569 385158825 525952731 263755111 511089138 968627303 9476535 123891051 518206167 667888217 707828933 64065326 945982039 557209174 545684071 677631801 591373081 758786482 788467798 620833569 357099515 519238558 533824538 349603850 414864513 594272880 662685076 656322141 63491898 44765938 906942178 85422588 368753302 494887238 870061179 896677599 88415177 448095609 437472005 151598521 925802710 327682212 791510892 154673885 383088382 126236481 147017959 443069221 267331149 661890300 33441165 127947745 593246520 216051093 793090604 987762648 981601039 166109781 2850693 135180401 981271741 739752622 119915085 531370342 660938371 892844106 134203277 750067357 513936144 213828900 3620548 297343121 691900008 177851586 428951797 583280804 316237687 579720400 426557540 460197381 743497107 143735726 479466670 340811226 286453896 26007876 503262835 400691712 448980699 586036007 43078986 78728185 444828573 99886614 53837311 135191991 439107413 875480432 183101785 445724238 381232529 535732335 461454115 627611017 648436223 376050470 926041834 59786395 767577215 136690072 17926669 567855365 548515917 42620468 892262918 572024260 928698467 683252281 388323418 500151053 44272036 976640256 419293188 953184041 40673848 400257575 645167807 367768934 601854248 579292014 342383257 865227220 783193529 963871491 362959919 147873935 819521676 219832227 591397854 824553138 870049862 964842942 653365690 230175719 848173812 503458361 435542494 99093126 993773850 685507858 823621172 65327500 528535751 429085351 100701457 719104250 91224014 540877467 718828382 484085359 583778749 838818081 577460460 568252235 543381134 312469745 367819488 839644186 690026471 725508420 949759146 820431711 525863390 490016850 591857105 523024138 262323445 709676912 878161957 763506449 829690852 730422664 185815538 196054188 126281104 460002895 870178304 448531544 782679497 931745504 23764222 275559017 180703659 926931354 857465465 160893764 527549533 892936941 188953870 175337696 486435013 931156390 493645170 410117988 389359293 18275512 510297640 541999265 847650206 758597146 677586120 533861458 611545799 756166152 599889508 528110642 310218488 101158781 567790940 271316966 70339734 448662954 107889513 700590340 617426260 145756475 483433876 889045282 258328349 323915304 546876992 981250696 902207721 894169027 417647532 411900160 590758779 863261589 26787648 594778367 479408983 685080159 375751084 837359741 846863442 741354342 665957538 965231014 51525665 464804074 744794742 333026742 212990118 72343878 824798474 565884888 440345312 710113564 425616494 929243802 165556802 710160639 432030287 167060185 686791124 851734280 476532041 777358359 954675276 618303882 574074365 366574255 765304950 560928335 486076912 183792074 509133480 245428138 234183624 829449895 212511610 21375914 571436192 982588618 993527940 384456596 266914673 571205135 976547125 847996589 714056349 556045153 498728510 332782004 256958366 655997746 821582433 227711570 460828043 764535817 881402129 738854042 562950152 806857881 226859778 365202843 533929078 49774839 267446119 505599874 880887268 932626679 862138693 995637937 731088516 599780025 854281670 903486999 255506779 539406194 309594077 711344747 755189324 606205651 225091594 559275597 242812817 624284373 66755446 698602786 46722127 79140911 506123818 510474358 395997155 342870020 359711667 449295727 219672421 487450395 502200893 477765110 869195661 657627640 769573084 893965972 120867758 761803028 899149632 978973083 289515511 214571438 261400834 203621628 443510360 903354039 883497369 495382903 674219420 659528216 35288197 165722962 182631401 105644752 420014256 390554624 752723898 178611720 823081794 423139849 870544816 185767976 816826982 237743367 563742417 892316141 914482737 458794642 394096223 325396674 851239159 171385637 547478367 452404752 769692755 497774964 13364124 485720815 575415749 77103645 405629028 544724650 218246430 630832838 66858585 290933707 740856556 69205960 452902896 580062832 35714035 648933996 632257735 329344624 66293609 222915031 374091742 660360136 320908737 747019126 905879078 256245776 608303885 257589131 962261699 379452760 472623367 978167997 216938440 898837543 725342228 907834755 269986982 932224477 803679842 65883124 116837929 850278395 836788497 547521089 895096205 669199953 50605494 56644193 458652394 778787159 614748110 351345755 301812302 963787299 757798086 134287394 743865471 630830395 22496622 55952886 25911501 234289358 553412192 129468212 499255103 49343431 320221687 723258133 472428507 502855951 185971589 813392391 181568333 716814677 241129009 935911793 890008711 645760271 709419629 527531184 216404053 702187203 499499863 524995362 996145223 541487428 762737021 118121399 474374597 887463089 205093414 286002002 195397940 703964512 786483359 194546814 178179834 127120645 355475931 155485923 862977237 235739779 886207904 840747002 252865435 57354704 994079424 141720114 167570041 128592704 362988295 755953803 959340010 10782288 462587288 163348285 902540700 104981505 116114697 233795952 860014635 12260831 855887972 147102441 27218551 52234508 704386586 116041447 168652083 634468963 913051089 941329119 911872131 806085339 515770119 778591316 151174885 748075726 991803466 615549584 733366916 239977383 658393659 2032673 941115499 388490597 581796232 367395889 476054058 737184818 400629932 354603626 473293301 510843486 79043528 764664412 512718487 990008954 463653996 888272106 853493540 34394272 529570724 361194960 937040555 996657505 175073494 863626189 852687825 317419541 826434253 351583536 956349269 728711124 634058210 884633345 335939915 425365875 269843695 420033007 245813371 611417967 390200072 111843862 886599979 558614456 709213234 234152748 130686811 384126374 210757914 172543540 779797859 400812960 497458542 633655738 447872618 832981262 916679700 353504773 316123868 146744021 439526834 907281836 492961996 350663026 252323625 791644131 164432855 284775919 376021596 334130738 595884008 66702804 878930373 711122316 117037141 855218400 745433561 421920218 235489782 302563418 574349351 215428867 741700009 294041168 920212264 873825279 124520628 490638557 6440522 430860110 353366578 925605752 216158441 564508227 615817019 388942475 55809426 677615127 73927004 674895478 401304270 485914528 257910338 878520306 963406991 891141865 610276304 513463832 429054 705742942 944833721 751318339 315358030 221650100 301867472 742106842 395658755 352734217 5908801 818722810 279685558 228790622 65370530 678216840 840001719 573770180 57680587 101022794 280925254 636291188 197115511 64197986 199207067 999394824 769324481 997537912 443326328 564162616 997823067 630182045 270888793 271189361 451133888 96117112 358937045 789404736 355586789 601923087 185937505 187319553 122510660 311924616 765248686 646187614 518922712 791612841 892315700 973124111 684563529 608690317 672835661 58287103 64556917 275189639 888517445 732223276 638211941 822339916 931007773 759707471 685487437 52742315 47992106 219868065 390862229 528054537 199584002 588464263 367908793 893858335 682556713 377192872 18691837 931056820 154779892 127425972 14872309 474996042 626456087 456712389 744612044 96910409 685905318 688499387 527635796 841666605 74123244 863497952 128455752 467053654 992118334 889848769 825777680 7122907 57192481 723372959 881670670 872449867 521197601 290211655 894300105 892715562 480714230 990443918 926586023 253240410 506009668 378001866 733898566 505048463 951517275 177274141 289863087 310322202 586449893 851875054 405093160 682772078 200300539 48222232 416619878 895619621 393129951 866210820 58966025 346048839 548292714 768496731 639802670 119712398 674227246 506082864 756721664 779233983 492342636 523680823 42540702 302998897 676611645 977414807 271252251 553082604 48083066 895622736 840691108 162470823 494286810 715216 398142870 842678140 370661542 415895712 313157066 553594354 455609442 303850370 916254972 137438374 762035535 504844367 378940750 986136892 823583472 735635171 521112572 287971318 801221289 989305742 465706095 140305477 754038646 461896258 744858244 100368180 395956749 164753493 915660477 513444733 198396105 370176712 256631968 587619035 172968974 840182664 214692293 538314382 965098549 383943659 6622401 478382609 917734077 896666970 640140429 170027404 908332369 440194475 150151999 397504047 166678212 818707344 560378219 656918141 577491169 708294131 474701314 877769908 725410548 338058162 439216187 305697355 226267264 535156317 176235617 763727981 376969042 365231231 486181440 425057235 3480307 719183000 413968615 710298594 123539085 979181854 58571997 516288059 481523140 549159520 895589714 542185147 827462931 32090586 999730727 537523865 560646507 70261220 824762336 584628082 846106084 914842287 755772537 314702212 960727219 718870377 136303181 511344438 223584355 656526360 440403976 918869531 54987299 246062438 566435212 682870924 898187556 514765995 444778822 407740016 931341739 988952880 934927443 577565395 905501469 127242865 887342079 159905166 485365749 746130717 258721611 362034557 516314784 902006302 800675074 519338118 640259288 798011778 134738870 427368702 567660780 44586567 74986799 864517252 757123409 65460493 154389727 277050793 771827558 16169541 827109567 689728537 81993645 209270801 303573882 691628819 496365628 774744112 671123669 878316723 555219398 998013404 855132737 81426899 18497873 591383109 203136251 148541576 438782343 96328987 197693779 3325885 283030819 393300468 208348748 883639347 7088433 266207976 117689184 417177623 825161876 358032163 421883474 386424235 402735366 539701676 542335731 448303302 433328683 794319800 639505421 521860026 634757424 392047182 579690031 54220716 347443051 565591323 659674765 728429748 830233333 677013142 633109056 564435736 211128703 385220050 439971211 521567570 306274615 906410215 634211649 151231788 845587229 593125363 276313821 113188535 265238412 212363895 264952806 589067737 79375320 722180442 848364642 30117247 296256755 519171884 429036249 640838341 420870932 590272056 777115057 565117369 268835728 212771897 876225213 260781598 611021804 529192392 683819091 414864530 63215280 392272505 91607602 168530112 8401454 287998288 548932729 807483030 533723713 383255982 348012057 701846149 583346319 593936585 120892351 996764858 650658021 74255758 630477121 433995139 171127827 951022428 51291424 180817175 978844042 830595910 372999954 493760892 748492451 116737699 15649435 41676949 866125775 655248550 954608978 77495742 733827326 96124050 486187053 654958454 780773458 255347654 585648920 802311605 62315058 620421393 248352712 580810452 849053843 308295926 206234095 305929619 732907324 155009130 837974565 940924675 978789681 707173202 685315636 268447272 585097627 241383146 117761053 288030311 934162108 110669081 341610507 875592774 691960789 819884678 700528891 234719334 309435003 282283015 70739509 671954737 473193136 629375657 477843673 234455826 895774556 821492589 846910077 218443698 224423739 681435573 962590469 331679343 886430400 430544078 64579044 49030005 820615298 175417238 270935241 800081215 757882127 983631776 724243903 375179510 746943749 428384686 688586030 365327235 579099139 342262825 202099564 282862527 475369585 409149128 81943975 779923476 762542893 90205354 488249698 764060534 698317671 652813387 86387219 493723868 717956472 292356108 146225436 718295251 561034930 386764922 891670744 835664606 700607631 722322605 804099334 932694881 493973031 729939218 446319145 345148589 462277194 449182035 513467439 32859262 61420471 545984095 318816936 369169227 756965370 2589738 385866008 281763313 354815446 74579516 384872660 841620312 42433623 104814024 215663007 524379755 850731203 255095245 639297771 935313684 923355659 958637796 630046 744428411 947686685 570864869 769550410 417585827 81676159 913397092 434257934 41542933 990691050 362597444 301368832 227837838 538450852 239220870 324544016 707909688 178881587 623986177 623178274 161432880 188110477 946327481 41160059 159295025 328397817 581615672 117916695 185329727 184131587 331899684 113299619 506383460 94419846 863872206 358125577 579718955 627810424 281183914 790135859 823511262 144328428 392940416 623463716 335364197 169212954 8692980 51012776 359549494 998186957 863163135 90708138 452304389 195649685 216424094 152733343 917924475 210048727 118300513 899845193 577182561 899914959 451999797 714444841 150940000 161535451 498093512 910235132 633485136 421766131 104330142 964497714 811691502 763044160 231940485 548273250 749262536 775696467 23516200 650795212 913284037 364061155 385982130 611163502 346965145 569654655 141063269 211948031 106209172 824876394 308360319 456073460 348475422 753147302 331041827 445865758 626430106 616580615 105002792 444101138 192164518 282153005 380491988 984670595 217334286 568831855 47787937 547115212 96427722 517996498 194170519 375469715 911692634 111732037 381587187 771215871 139763801 752767248 223973907 201148848 672919192 48168997 424860697 801594120 938956589 495046941 841626542 62469513 677717022 599401108 395248515 364847198 796969848 369958686 567907222 695699852 637951226 350696948 912155757 308500972 657104823 429185847 54583168 265396483 280307913 232385456 750949978 934278761 788867066 149374275 483178123 753467488 949008176 461565532 260072815 78583705 528815415 516011110 792726007 687914624 505624386 403486072 435705052 885629195 377560380 832390382 968559326 536179198 328585292 266082742 424534866 215683068 753968845 190016655 630184381 218299647 743418780 449109752 964057799 762225752 613320321 372197359 83046633 316908273 710154001 593672242 764075193 163991076 428770088 823861118 163525718 23341067 503364590 484649381 220101491 133408079 763836784 657681251 121789862 96363004 125979677 212755281 224739871 922693812 562794874 796143127 933400326 936303598 251323514 511401146 938579167 763622398 422321901 774039630 300505209 724801057 332964133 322937351 586602072 34347463 374874440 513491417 709385431 588607901 466324092 748132533 623425879 303139951 20452267 373516153 662907890 794404206 51277028 184370949 857841239 287060069 430535583 325202656 660125777 469306241 766973282 39350572 545443027 243343757 864241150 749497797 225009977 484719011 165362305 913754855 329407259 483005970 455154754 800638350 380945521 531800735 979186037 460087910 62703575 61108259 387240600 152216868 311663633 951087352 433789963 310361803 989621611 697612470 440327951 667588585 381261706 590018525 287587624 695951097 160517849 194388541 89915586 303962148 294113503 641360509 268732440 681659688 78964723 549572311 770931966 451162672 796037217 346869111 951174866 382362438 247244270 399562605 162968896 875804559 859825014 875759521 526608994 397075841 761572670 36360595 102534814 32319096 952954724 124789874 43789631 512612264 696715527 892964567 169937493 537036281 364167273 852657496 890227579 424585789 153216371 637945289 977030480 360842012 308124214 884149412 713285944 334935394 474171444 942181627 563892515 624127026 486506401 778740898 650246285 501055312 809112959 779512715 764794268 451730192 142026981 88829420 20014645 690852160 41396745 475983497 26130860 469680433 517252725 597468810 793370049 626487653 171990694 76804270 78328197 744751939 201669535 790751125 505705643 200768659 713579188 386239437 999751373 874789975 436304521 306513844 662016693 451744205 853226599 319234833 472608426 883254783 494125691 308336623 339239722 295976849 562713823 349570792 376590160 384159559 417081180 643251687 721133347 734775457 189538547 228577365 625093341 920194176 292135381 789850121 989319375 321482004 9746497 280798365 916846387 21212411 943808483 559764727 662228479 485629491 458843061 931956762 38828383 31466317 86278259 650243893 773924702 805164058 486722640 331443070 684534574 567696972 165380396 844541212 125122290 381909433 478348524 201576618 959746192 709363555 19169943 328656471 998523984 205870679 58154762 691224420 733277466 636222480 467733643 361495116 242923371 634947013 608169155 875089564 512995336 325035412 817701268 672655851 665929947 640417709 864694506 766898015 829506043 757576169 260948501 829835164 466275687 385609629 624603519 407063897 869556167 1751029 464963604 772625755 920621825 542474234 112051817 727739248 255232041 293919628 278746568 795417896 922811273 570980294 9219869 383362198 73526865 483407872 553272871 873541636 292127467 791319022 166897353 261294678 249901000 128254779 98818818 339567430 978681480 768373068 288173989 786698334 728203437 316778694 56730155 672926504 606168218 817660115 420436684 571337330 962170416 674182124 577810901 567162469 417536313 211659876 905983302 306875239 585169757 651303421 291852654 136739682 38056526 925900324 749049263 599162345 222551986 512352412 657065706 557183485 882221911 466069224 95806705 173103482 887594558 660119098 747440480 872686921 498772297 149987638 559967886 856432523 359472640 212781243 377396210 359880602 137200519 5629311 146367446 639156418 504859057 60085032 754340344 356768935 185406016 233615003 66162345 307141553 44501445 257376290 356225159 794469379 263583005 328594649 225659518 433230729 182942 896631731 668054 499100898 78086347 820573539 711662110 655103028 521708486 937443394 907989913 166472751 709027254 921196934 774202886 79484963 430448126 889559541 789797327 736415430 74559054 873069762 842806818 292609113 1573757 959503256 472006482 484236255 362004289 214938509 698262828 250134461 113642565 912871670 743699668 343867801 393700586 555129007 695310761 254275152 464457566 602372786 996133050 786895674 648225353 416895499 189515141 730571745 803298550 351376529 988796437 587250180 495309839 563341342 683021724 352530043 361574571 160976397 36064937 859235384 474447447 501885072 270489250 651695516 790241716 978844683 899429098 790768410 603044978 806566748 695553040 205066284 523486047 685168688 449683311 875840319 948326246 595919005 35414538 963494297 801062449 710774595 533972323 846781761 575866208 312158534 572927266 779653259 283942057 531686622 85567458 764730681 881100515 99031351 235132874 986500574 744167281 426875107 279029033 241703030 439899371 941521698 57247404 299032259 951442754 242941729 164830357 643326887 826819482 233676852 865216362 879488535 259927596 776681103 20574463 934767802 43633167 117589933 409671919 186214046 846146468 930918426 201487910 298776286 777136614 493292063 430432759 164599602 143534514 806061572 587844340 664391912 124816495 289322851 819162520 753134461 58505522 534329840 37466143 610608853 818998674 544461306 447316685 247567136 505799519 224327481 6645201 139963789 164297920 281081035 917008418 95629619 49615096 276758526 839932302 824205038 234854363 287222553 777667179 84160722 592031741 9423502 176175319 487883198 319385444 86691290 521631123 354587225 973142070 839042808 471890760 170986840 273975994 154848698 676295678 707334425 871006298 282775587 683109042 458462483 692535403 102344380 350963278 607579917 234699052 546477055 140260451 682623299 84884608 879933701 767260284 787219515 738382451 386537631 117938722 682240631 272577410 252241214 748201038 63729190 419470470 82433637 124187568 48949652 212722771 566674910 884874949 49942399 801851694 456732379 907940244 265208821 487778502 208326113 364700479 36377199 748630392 543841713 826506855 41407131 665020568 264276944 114546430 23385245 741626636 782232070 501540062 791166785 723063354 926620150 435106529 668550739 609610619 188441517 962358621 997694534 168747405 352942624 753526990 271054832 855868697 893060435 511937131 657174945 5474378 577638594 743498754 256602652 562131825 950013059 546964231 301753524 660566769 274139085 645255240 588182157 131085019 81492313 574762510 862769643 842938762 745209319 540383844 538891362 284638879 235393586 12979165 671579181 146342022 579826388 493402259 518579980 578076128 190682546 103214579 287229788 450850959 484813334 418650770 342802828 328190083 744845725 352382755 896757521 691223739 749609337 97899372 553894972 403646399 70553713 779502298 899726127 133854844 689085266 461883074 992719704 418080354 476844715 252774765 287370069 526486294 916228621 843477844 353330916 239939145 867612247 737091926 210390252 62982767 184832685 707750970 961184255 209714251 477524156 711370212 635609676 612310379 585273586 78439627 459226601 831905606 621749038 713231724 887529561 408719196 197998277 709793 837113049 514712251 75333588 352303938 126264126 655093843 902768537 496607842 558114568 220912726 669868907 298425298 674629658 905294795 887196224 138322353 870629630 428718732 568542608 231516594 895066028 910858403 83850850 583632080 302813044 626732463 28516515 689085901 374412564 923239019 726468221 297136027 195813820 39172274 828693625 756652999 323269033 228857039 962439554 668676296 975143700 883813727 372997708 532391351 13859960 718334797 692784442 808095984 881492807 782011156 889088713 670386905 932101823 584429262 206093566 731402752 775412763 881818457 956026538 62612257 314919883 668911654 625158918 48850567 898140019 40759995 325873069 951204848 880777154 489134309 370344982 922846611 114628458 982803756 825108354 191743281 128748101 598117279 737583937 35238284 407851743 812686953 873632416 247984999 451768611 601582270 23196030 641386217 841266459 483236326 516668605 305968512 243579304 589468690 339564055 927245523 159656772 802426561 454762593 609982117 321898253 677691660 409322959 924569055 428647273 851902314 464740377 291230638 127458500 55938789 326775166 850361830 761315997 376606099 339397385 500806584 577440800 768731809 948336091 428451635 655729441 283313166 369975632 582874629 423621786 37062720 599474547 621318153 529455337 17200765 420622467 158492045 505933223 24496177 157458640 600945450 227435685 766786922 237703563 493301368 672400097 714241918 338660414 965263627 141436456 223649795 395732176 436441549 249593664 147692913 304341278 22115609 298835832 489740906 809334813 964947357 150350241 969285658 641721528 10909951 663846325 588079718 397315485 784964625 333547544 556139247 453579310 554763276 252250132 719037085 476063695 418414214 860726421 189396857 77232274 56094596 677898131 928940129 437417596 208507689 849802720 614012612 27203495 56508960 109199592 948759718 763073686 56480443 398874113 197631309 510831196 142728602 867767181 512766457 737066496 596292396 212031796 956821077 838617979 122192452 989842245 188987211 486147790 910804913 156292863 624480469 93168010 930209626 451203650 218233993 528648081 736202099 107969251 648433184 591277606 330137805 421042826 800913379 530398313 923130086 790502814 67205031 969456417 282533096 196114155 814251859 900458353 37184414 541941591 362318764 912410079 556084126 722809503 288183108 729488719 471924077 246858334 508562112 123019333 878886255 34463803 226101306 465229612 836662349 352149993 44432663 637975364 700621139 191072877 511650682 67212537 221487853 883635842 76763854 364277201 138932189 628208875 834957121 659446319 998502869 411282478 208714252 352119133 627442163 260019368 940477563 858506876 507549090 449008263 919938949 642468427 918520303 493295420 566845585 123171891 468685546 34982165 569501200 820191649 275104120 814212440 125479412 402917084 991588459 369491560 942457687 467553506 769700145 697281232 483585143 232482812 545740373 662054571 986965598 185513698 436669802 54579521 943276767 771644842 565466858 130233610 148069638 864308352 290710944 884480304 448604610 555421268 932835515 779903372 93615907 446294402 774873167 490784848 376981313 645679755 523010821 289148607 467841370 209527817 819337541 97452647 244040385 347285306 409757596 645094013 531131108 392707477 519213064 908583736 743341613 679030275 284216585 836461913 782233816 930616550 745596895 758997326 770476270 720268326 876323264 591625721 358860915 410721856 459762260 634823048 95876715 31170727 994748771 382686060 686236298 336246512 359990889 311001009 278506362 863564359 679985870 725314102 771824893 233200527 845897431 747264707 696293393 374720554 333010912 956229846 318472314 856067734 944619515 824406796 21319587 142135335 845291026 918755027 243824123 489906111 729864366 364557504 128869284 17408701 833817075 174158151 48430760 192351618 396009235 280133445 299558154 532935605 336625711 62127871 218221315 27457761 708934727 362093076 387126624 48819236 155718544 555854660 632086842 258965881 925401279 421011546 446110285 638441071 271731183 25367888 946491457 995851004 174579636 674675037 276962924 491085289 872041835 186447276 9966773 916471755 601620317 165607644 596786935 548393351 706030281 715508918 789988272 745361392 452943094 126256151 469932441 313018243 919216054 434495848 460164255 958080641 426941631 725959191 156500373 596103225 161592087 315015343 46909267 203435713 165766328 348411174 188037496 646926299 699678979 801876367 51836737 915407137 419094920 533139842 234709833 876649193 422502943 420712661 694746218 823804760 624679760 508848460 419160645 475960320 155076300 478392239 83084230 824554859 273815764 48116855 951619886 88675992 294184985 634560474 275504637 164504721 313004711 811364618 575038682 712366541 162060917 604603330 255813986 769100177 306527304 331295500 578803768 387932559 511633157 20642337 673035423 565179805 621261814 584892582 576815631 325333811 873247455 470885300 144685386 214364910 770135712 697892055 380715784 345819617 288851888 988219902 894090843 852070096 42526577 121876005 809843590 932148832 733611426 142583859 499214452 687060059 407340990 73699507 808579714 946203252 676235136 365358680 462795598 97949597 360931207 846788148 783970193 428045454 26558183 837282792 367967561 606711571 79132226 785900986 677108014 471534637 81917989 678946722 253904022 582146491 567124825 113223141 502724922 901784320 80948161 604678278 681409516 981028788 727239982 814805934 582130940 766647490 537088248 148715524 136127759 171907356 802964952 930267119 219310798 710341104 782981335 769815680 435061618 499091284 878703747 942225941 277820959 430873688 947209055 560764668 175838720 10543204 549823127 367112931 347979282 810066508 185286026 181427003 300816437 826177912 644371929 884391255 239311931 873756919 634309797 844990254 116754927 625447919 617532758 206585652 105383854 228800928 833345929 418080478 190465217 51528416 987415367 679199759 11290871 363831445 150641143 857526180 494062611 861225449 186029951 910176025 526910081 248295509 522996431 562794528 628055314 362580943 775516987 729058883 806707381 598206281 527879214 319871451 53580303 256962864 731851345 233540653 465020914 957073688 338097459 717053573 892971495 713216193 319033991 241055559 199081113 749924278 883430784 642686267 235612649 907606535 477431193 793245972 873012383 289978263 612570944 874293256 543200910 449691645 351180697 89865761 868838124 955488317 33214501 469272083 140440389 443184353 260355602 286189843 961822191 644240118 323098130 688996721 3743547 809341647 617344572 47389970 125784555 713057955 330441213 78847476 488361818 514173116 440072946 967071570 784596941 41919474 93181047 247351376 695770937 384070188 756250535 785777755 445283104 226706340 766224406 315102342 687728572 497201928 698010750 367315034 570954945 802906684 397320407 355962323 146023887 196998604 744924549 985152004 488866423 669949371 758845201 530133096 521244228 347450875 191081328 564739322 899461954 686340395 687977581 376782382 496778711 199170990 755900098 913101263 409773858 180829942 320371472 433483809 396564539 352528046 323947860 595367183 755600715 272649140 168710773 865953197 273598209 608880483 165064914 767826971 926943995 283767386 165501778 731679990 3130262 130444778 990951170 951976856 356184425 823396862 650748916 848592221 672222992 86100289 263113046 867249770 439263340 429383327 401907294 753999719 202660847 739006286 116956800 756039962 67313060 546277035 717818087 185131400 314600121 234655481 243907856 934711332 541301312 484928037 353130304 753057495 246117099 489169886 956935001 747719709 488122663 292302156 398951570 270606287 423246152 149539299 167805247 784625306 238643312 715721146 665690069 967473341 456137242 721998754 324538125 939386276 14610023 268082201 768133351 969919313 354354673 316121489 404326194 555816878 193999034 447679521 302665053 368433005 626285082 405628755 526412177 266986499 385719126 635299551 619639543 742661585 292015241 562873888 539142537 275210763 69210709 797788685 938400278 608264530 201846334 641748174 504255526 563306276 575487866 629248673 776877012 360131814 115223201 315042747 501080695 751681573 441791285 788715769 48901521 408271504 58040149 951323269 392802766 685176211 162229258 494432127 885196005 885381385 147834409 351904535 938398895 925017492 33676092 190188793 548625104 266608685 112692609 697480084 950944786 889829656 493160321 946416989 541399169 204648630 630637179 361768269 647197851 386244337 380961302 676589690 758612536 42567563 428355411 712046997 398069917 894491900 195478576 734261818 212642293 265127984 664316356 524532658 681524875 565243398 231916580 746182630 590120066 733653163 651460964 231239343 752229461 206647312 311222035 104851173 696208944 131107701 126458871 144731511 880638434 785160531 112427567 890021386 425408210 981816736 604331507 512168511 622838644 774991020 207972824 475062094 222417588 847339411 567944258 918611773 157463762 913058153 469876535 340676711 995636966 695190215 451708624 242584355 19811941 320780512 558690274 603287455 781976623 278267655 170511965 869429812 438639910 788854925 989520054 251926573 135774217 408606942 11177730 81835357 951713792 898469679 250513905 578934820 343203351 301290621 409073077 974015001 694853647 496820757 464950732 539665569 860043050 757451786 138689921 108596790 634462600 455660929 575420302 91523205 917385902 647750814 950126518 814516850 266174188 919785448 664808685 882499453 496952183 471355872 661774782 328563186 620358205 714588968 928016845 271966098 570883199 809995057 517498735 818178839 861085477 316250275 350704795 787742659 596809136 226606651 978529243 471766196 968477905 98961677 856797475 514383355 750113070 912007670 906849971 147616346 903711016 998197559 352161268 824007008 48924616 677667932 758884933 845700652 15148392 273093536 854982784 127278829 105742672 193193748 136152493 461441644 64965765 636427667 191586901 702005618 278362765 658522098 88012894 628497687 358860299 870763606 127475996 744191944 168729185 349328156 835408474 508828073 485082074 84436903 81168746 184118532 83966006 189089795 223804372 847863776 11725228 120327035 656678330 533279889 323963763 381266750 295695426 99220962 43810417 314128992 832308109 512101748 978330610 101595066 984752279 462512864 45622317 668419790 655852170 974106303 933184694 854905852 21676599 927369816 906090427 195304515 265362012 337143490 916370426 110454660 486200922 889828206 728158997 442317401 820425298 82968551 274808915 624685183 121604225 711165660 41961346 16420932 52585855 498372867 831281740 115528071 323535791 501757839 627919318 285272694 959239443 248087223 53579192 114321653 909331450 494262061 378671127 954633407 565933812 696899319 92198202 60760829 156949197 83563760 935394255 440797348 934839369 909372803 858151704 417535126 535037495 106337536 334672378 595976983 393705636 165859062 169665835 883013566 451018140 260844324 702783395 208978072 376394813 133754232 393616317 98015128 838288839 788217414 487006935 94239507 54985167 846877739 599415258 442739377 761478880 711238482 370206138 734379963 719693612 668731470 660478802 35704787 120845356 430177938 594259638 567233226 144593466 242600106 281975781 367325345 290283478 698350488 218582874 113456752 841887654 198433764 948293601 552057947 614978092 273244830 660115675 593049853 699844405 951964098 381827060 660275839 298443204 417785351 996955050 912856653 961684075 461915465 175525606 927769404 866625439 75800696 993403989 373493540 405276587 875590539 971379925 801188297 375368203 668489902 559923771 361910274 123908041 314165813 70448818 600577310 886643874 336077668 273158541 220011723 454029503 414358755 260842246 751191264 837121543 354940137 352532197 221134869 444036586 537138659 319097046 934183895 190660870 902292586 846753648 972616235 219776680 416851413 451456051 715936501 67944079 586725491 46310541 547734052 235612893 659757276 455612008 437482957 573588951 716752829 933070637 39316273 485656523 797903839 603362052 133880611 802710060 64292021 545033956 105670500 478117245 590524768 963606768 403982866 676822099 244755567 830157325 678226566 879435532 419756557 485913997 345028505 471252890 98967644 829707947 465486939 241413471 944651269 283000112 159003072 374885858 549877866 515381025 95676116 510023250 114437307 521363331 346973279 283678824 378483135 538012042 327578556 426019679 268923199 278283389 90665402 532352756 393295619 682254283 389672863 966801915 607785075 903556531 446866111 243374074 187313739 858780752 855661082 97003067 713611300 199624779 21419404 161489764 19482188 854522007 676017874 686222708 522512323 469915406 673030871 433957608 410988053 917045807 61504553 151369511 189575987 453737915 664086343 932346553 734138578 759881250 400892564 88928685 107144119 288090654 712969060 262384810 520935086 250452647 330003827 89739532 495701530 260744317 273366009 425847553 124292808 321567363 31873132 36710738 301893423 764882665 725094375 568389312 831234942 135179229 974383221 430200203 309307735 421142142 967421459 95563541 197404213 952373447 661046526 450696196 784656042 88350906 792354809 737566502 195798868 360774949 929068083 467469757 246108268 572192343 9501486 147014456 309478997 731206003 517368892 634110067 587697150 768026304 270388497 826351941 117406493 173192986 753246773 739465999 969621439 707532421 25162624 213118318 386471244 50414940 334046904 880754882 348897029 722740745 884902256 464935523 25572837 652733483 226597610 22913721 804668657 17000087 921200082 219798860 719021111 407645095 137771829 10607821 179635481 664493764 583749872 930002422 881798552 399442933 583496982 441904937 7905052 539089461 434132056 784564126 395994214 623323284 83240758 677489532 309311887 216832397 381689848 257373573 657050763 945753247 735152492 892236146 360625898 842288758 194365386 171908845 819854793 789132848 596157846 171813529 724551802 598507189 741640305 807914460 982398875 338342777 847440714 246447149 325594077 133452263 393324051 119972703 407912697 331002426 736302017 504363614 693973618 441734005 237562767 160452801 53836961 282480230 559268806 111964446 121170344 112131834 610675936 854059367 398623491 216433915 626193157 421693257 797818943 942585823 97645322 756972982 831542913 259159032 863526081 492546598 954929555 471673503 447328567 935718856 544253071 506777074 311804421 958031753 767460117 564910827 72427446 297301557 354919055 973753454 414835070 311640402 682085902 501826790 497745941 192713895 240944219 82868540 170022580 525790133 112046008 489436232 254741626 792535270 275153283 935864578 9034871 434845386 218071768 758325895 169519263 883991985 929975823 893005500 705084044 19832622 389824990 67863971 345892300 528405266 481916758 718940325 659708134 601342387 834199585 533818538 379771736 374112025 379595141 71791129 755277154 745683858 950900305 578167970 358842717 602903541 503734838 583345804 684560538 434661807 150556044 62258605 786719009 716541029 406749842 389234210 42096284 944854223 155389261 479534172 943588634 839284419 395691385 919706627 71271603 388706933 244943898 777945318 711448159 237603810 277077538 707350049 954930655 694971569 626701559 339990898 309956918 955485612 831599435 835238837 108727269 478391211 943080827 398115402 862192705 223048149 939810441 228972618 374876264 311510477 250368992 336742740 600519055 936134124 635133316 672184248 582055784 327511589 282600252 502189261 164933088 78450040 734721057 890372461 123470991 759064490 292236488 233439568 503410175 824572045 920060598 548048735 409958014 138138237 553403598 10073533 597828605 414989316 872184583 923278723 475517676 195870791 160557028 568467777 647512152 196562441 815262843 207546546 845884636 539817821 515293042 223349527 827151671 188230516 55053537 774344802 229586684 437886943 668947886 422380721 303911347 643107246 36117694 861486916 750597203 659671936 214550274 659282915 131274755 805288330 238810684 908687908 908426050 808584656 413434829 109066027 145587752 580024162 348782188 377714243 624199519 806649468 585194120 217335711 324482627 751327420 341732448 325455570 626051926 709672674 471165860 632375104 28444297 619934379 772636764 374576518 21822632 765725875 637788945 40321860 199190081 673535904 223441563 373318346 278330320 553068067 129207754 928091026 278372852 150679511 763189230 200085229 785699022 623521502 237795036 235209021 752877659 218583344 60247888 203476494 48444836 289280256 200846428 862736360 993190695 904933814 458664041 968423289 351218232 580023359 134507820 317551733 76409875 712189211 783544641 923745904 61820883 578241387 142940665 346313743 462366247 245697282 103643441 678060124 469715668 400701809 550150311 648250859 516776725 49307077 370535103 22464775 704910517 504401301 288765521 981005209 704140873 502147367 579047925 482720085 331488386 166373318 903200831 446699318 97027131 715455803 399188165 956276290 7253611 765178091 940379018 582192124 457660073 619930012 624661241 639138021 490198926 623790186 771880567 295220794 759141894 662280274 817955386 68834729 752997752 244393285 843752476 187858851 968222196 248135620 78234023 717047963 430521410 864930369 514895111 852050666 427167006 74671932 256737586 900881699 295880521 12432947 93339377 849586174 950446614 108533761 205899834 947599325 276493789 247110329 739005072 809109464 800928360 491686333 489630352 431094600 979902023 67085925 341214329 22993478 476154668 2928788 945407109 712291866 527317173 344580413 487175704 85269183 612017357 164637106 274605543 66982964 523197194 400180634 914124157 96317121 247587612 703955101 996879146 269111809 51522717 20489134 473167592 649152235 659325775 91512848 681064169 368196359 986389199 995254627 277731739 822761544 598331680 915947421 461211105 43799618 715899232 738357490 642013210 117110375 867276008 973200944 516955278 565476392 362550870 718515219 458335610 528497913 602559590 104732319 546422930 511268497 360212547 70999347 836066475 860692624 789603632 381413439 215979055 427293632 859025578 598530004 783556331 595671078 491058380 688402899 922439417 198706256 111420312 559089241 64444092 817158198 782433845 986203454 217733373 155256351 873988524 944523486 557061829 848382080 136034948 56191117 435961893 993334079 118672915 190541354 609568511 191786855 412146683 878303851 946715359 683620707 938870559 482029800 987771107 548766335 971405795 68225517 580394238 852122274 6254725 975244209 817098295 988472112 333100842 731899302 74867498 230878922 950559070 195630145 280816816 201715000 624458334 295577758 436415785 994413313 991974587 940268632 674125075 753594740 401907117 965932189 594570368 782006482 233763017 541410797 694283846 685536654 585716323 5880211 873234692 568449656 867476131 36875510 483820045 55135126 799516985 303243889 654343503 818335718 35238123 572813133 664520420 861783054 634744940 330159952 24299752 264481781 341019790 438210399 679676190 492047847 217820895 198708945 65836436 766799119 945086510 283714551 516752165 64228649 778932480 293277390 468038539 196007402 29071335 724334004 314262150 8562390 234479240 390669610 272077482 918155118 202855914 615159201 607311083 849003082 593649119 767723647 759256973 436056147 723524819 712820477 546428374 86468138 591713401 314979578 785674203 691731048 845276774 210475832 546654209 733340969 409394228 388245600 564440297 887267460 25457309 948546492 358076728 876536513 351863724 761163203 562178605 218184277 52814418 506885636 291945752 875242759 872845687 45568164 926739230 12277648 944931730 216751805 138020244 333132944 22981610 713377277 167682827 511300129 196692160 583851630 378255518 430229293 381895628 205888126 426699888 784641728 621707254 844840032 957996539 395618875 209421235 253226052 494517810 218396124 771051661 331903438 533575789 413277434 210944666 460705531 909161727 945991621 947705270 94740367 13856880 367518256 986693469 126690441 458462570 391803439 697990615 466154437 463440109 760047547 559121500 92699703 152519123 645049042 560023999 494006120 872581469 156771784 142520114 962703125 23578233 146760971 588487761 989005270 870779060 522736364 229762248 178516451 233243056 509430397 555042590 693626561 247391059 977853006 188020251 632506622 625102057 221663225 210504555 333841278 522890888 539571259 800808972 948336742 673266295 588654913 399244095 706381692 778294553 575792232 240494536 231159724 416885986 617031633 86832484 113539025 58582133 381280068 130558368 102021053 83745088 612034780 994962035 626421363 566484702 376776847 622040257 567077561 846737697 24744237 102228190 148559700 783306258 555788778 857760880 956106901 419377707 72756090 880762822 330732689 847773434 275053430 264722111 511388092 391792371 636990765 557661209 582549353 389967700 859121380 671122079 705661540 42145456 262068849 416665376 466814078 576037644 377287009 830542750 80807559 459544335 855840816 969914996 391737634 570668550 386699625 381194955 620721105 664055576 74380175 143036208 181020492 700687930 95840214 589968586 827405637 539517712 815992186 343900858 257960494 806719669 687536544 432149151 156851190 415381662 98462912 374297830 628989378 413268065 883324596 894257530 4594949 509055117 861259460 640892033 400078756 609267896 566605034 718448638 504279218 161542641 740116105 275857861 647797896 23731014 954522541 821235207 918011764 489507923 206878520 865024511 665656199 383594839 247114728 864125902 624091418 305426734 280171059 335963964 296303503 571886118 633917196 386325534 935970406 42921042 755323266 505797791 712625996 114067373 285019219 529073984 839344198 899163899 297214334 911118008 306253409 942398436 824676540 62034083 679715435 461408306 4427477 718694704 243749885 240525523 561803910 975520771 856009251 563215689 152693402 900511827 873980973 872416914 33625226 778807231 238228248 938488986 985096556 746570150 859884813 733107744 922831451 11392960 856041446 587586918 96197779 350733143 878688054 662860121 812385680 915532745 365394451 313725388 722427088 297080956 441160312 126291874 977714450 136973462 733655558 765477124 500262362 576801275 492946957 238918822 328641054 430413686 381163082 190211161 872986761 344800743 36361198 866457161 260875899 776338972 571380328 778261753 193583998 226549372 38959352 265459516 180985301 260251645 167405318 408877624 108146871 199938675 938223939 680950348 852159416 571787630 525988712 422467529 949769677 477794542 702984959 566307758 333045847 709678963 783009196 583571092 179598419 906618291 259041295 292359221 79067101 344537800 766758511 280915227 500411411 446125678 754762335 651049684 263931327 631120404 989366597 442890508 586666616 263511995 32427772 437289786 30237027 359273789 370005434 471899360 728972364 726419663 467879070 967286825 234916248 887724805 758951039 234419187 169852335 124362325 525403219 231400286 361115634 778210468 828391551 392908987 728271405 660069676 435911440 852156922 702595423 626053514 261958680 987915435 739519909 219398121 190225786 477728741 860557762 704914027 529087377 341278544 483617520 805945811 613468444 989477047 684414772 958078306 397046818 369210539 675850454 209576528 402950874 328885158 248228473 357543081 387203755 784628614 317755174 145831603 97473593 908741999 481517796 555406501 209866686 800960715 298390616 251508187 630111315 168385862 28633730 981983288 301908630 790523615 166078544 975221830 45582112 967347025 874477962 104749971 553706939 583053568 876250674 746543199 555359282 473438629 604844155 290420823 759179721 329877891 722877112 522597769 875549682 758361283 338251462 374067179 591578814 617282472 424744827 573970069 480204478 539394328 307361616 39058767 423635548 384220669 384503168 860133580 918156398 136166716 276301549 256726026 419991920 852433143 923312594 393443447 810101506 890019371 340470186 869637473 439957669 699737364 118385614 324521668 245376236 875320338 257567863 653899599 644271551 328384831 300052275 262481985 901471490 431304270 605765103 646843723 885561047 844916984 262881206 110332943 878453482 511270079 631343775 481162213 375837896 689109034 959650126 821512831 348698435 587541615 269983435 446159640 347318246 887551166 187114507 554430815 74548715 815404899 958080087 195534270 909105378 514441977 42951430 930978442 675882546 120248353 192605685 102267587 568060464 855780303 295988740 529467617 359156896 546198709 709586598 214537746 138749385 924955274 846584543 380175550 997573239 135688144 305410611 874805673 406576459 55457669 194981862 973869028 481298848 986978803 348297869 433866589 757554059 532515742 478814403 348673862 616125231 593049141 897406096 77210896 51242600 474395671 173694555 383832019 310305162 260251578 368994990 178319743 656991731 370563792 919790441 374890411 345123701 982642442 735303667 659162522 61821453 971797229 320444607 781568404 919687676 669290838 536143420 415224835 388741545 544045751 50622828 274789014 685682163 33909318 472690704 852125145 143588375 242957018 177051407 422012078 174586811 276016074 628260647 858884634 738088602 29169177 538138154 597593255 714325994 885128744 789139580 810376669 101751118 225620847 567943422 477453203 329738442 240337153 860555246 175320201 411299908 275813081 396454934 70490151 798107323 374949724 741989528 956197627 781719604 653848948 883459736 130507340 698582810 951218906 410973918 649511221 416905953 361604349 368875401 712327361 503258608 621854497 343239535 63004303 847499019 461662906 18012652 961250268 617814858 127054838 470863770 30052295 321298976 239895907 285860170 211469322 40669084 913875352 941766043 889205623 704810653 870976720 578785565 526657881 745660841 274397636 188629861 972980571 484173412 822324864 808702815 447456907 147459592 975078591 85254856 125830249 363694614 121926012 176156930 659421767 418021635 313487922 846282193 920471595 207610689 817098094 816236551 48841294 718285565 214078418 70537141 26609390 567064454 345963448 349506727 63123238 492825742 187099705 416804645 769248553 846548047 903878864 256663144 815184031 212898345 355558303 972301993 790552380 362949029 994462427 62938898 705572979 893239049 219972883 879833883 870191087 205569595 985248321 299940020 818950009 948194533 465917165 26217391 43647866 578084935 77525937 375911416 796847501 569676289 384332724 623754064 281166279 533194618 85378553 706555727 18079179 820578518 16254610 518874305 707149057 284723944 805056236 532223054 641549123 304123418 51839767 929627476 645947216 526529862 377994005 698279419 233590752 615948785 354501338 191847736 651923266 571058227 316778219 562464229 268999741 846281495 680748481 628482570 814817356 276114655 923010053 782497811 291141008 308952483 254051534 707749958 572843445 501023859 273935588 977248362 94266328 115785285 712160629 984280640 289154919 152123553 750826597 675526275 336403732 833755364 298931453 276247053 666407354 810282402 22018748 593094151 472014226 121296500 682776702 500353856 189490248 614044103 903654363 379103360 311392766 922012705 595398064 983814037 505778045 713532214 954381043 825424894 544103650 389038668 403872299 28441307 777012119 612228031 262928295 807875377 820033967 738603823 167460603 764455837 669320672 917787220 693760490 13949585 804306857 568172967 240089569 708476496 744086505 175495070 901171889 360195810 607573343 300752734 583381592 34464323 416703528 498787098 213722782 686255468 222652604 409688243 829433845 243948777 348749402 178247749 208207257 403552146 586967225 131317243 445769028 469994210 70004368 166547776 726300085 357884212 240718066 433448253 449697470 65831100 303636990 652677483 372897603 193250651 920292824 870603979 895495914 817844621 827915185 387781336 917332005 704230394 350567585 114948618 846997660 105205794 828028731 25853102 11233152 181093758 769987159 329898793 429692456 766608913 165391555 744899048 429808737 516867283 936192668 180247808 975381204 717203238 183803151 840219874 870163487 744184504 516318644 839515783 138425053 451709376 935823176 6623406 82990516 792149861 400533550 196846474 381033088 538399255 823492536 587861152 672866432 100680695 105426342 759924757 257117977 395672035 301366992 8133011 330269501 940989658 933169583 199433782 745179232 177564843 484745983 592952900 888713695 584007305 194849054 557053920 720923033 98488711 294452407 736942917 998479482 779367184 163137275 609859210 81626966 994940010 659227785 610926577 421665563 282477591 595869471 961060221 860295299 361356334 184748379 303793144 187194369 492354292 85242680 387663898 917515446 207844854 228195023 267670366 680507250 193928665 819913133 47695295 888841135 575999575 911928022 986933604 224190109 904323800 448184788 366960185 121618729 391232326 949338203 585639932 640782813 342822152 781849240 660380178 66712807 901158114 522947279 484058502 840013610 114504424 166698040 583158587 230429414 54837270 91682548 896548359 306306054 390688688 609079612 819986902 861217408 687151484 190469387 809924261 851540031 311794998 522753852 137442330 736848592 808572909 657586337 55101285 311822357 569721835 620034726 336684361 154807966 114104216 765208136 394883998 371622354 735085531 382933039 29408949 858159443 428598795 425229281 976687190 504978718 741833343 474660952 66010674 821430392 91025223 868211380 749670150 372376226 727497613 105040040 630219405 937354114 672179127 692139278 515951118 400587944 883872565 20301085 820468377 358005804 533620972 156023293 131535701 695548906 552480200 388094902 735143010 533683890 478536192 418567376 266689081 195868764 637870918 600717476 341710525 857634456 323219285 870452521 227664207 416724852 337051511 335584769 625229575 359300650 492826862 444212582 988382940 855358974 115746049 692360590 293073553 687899358 550277868 167822082 62697131 564730803 980264891 294440527 454482912 684135942 275057332 638115791 378397131 735797409 161189764 243759320 723657843 953049937 771597643 64838429 301839598 776615333 826890808 760148298 423744085 884071552 288658849 897997063 403258074 689490835 361097722 888989330 809984060 767205208 376523895 5615587 954621344 533781541 155516989 163058528 220998498 76760008 737246867 99423462 147520632 969193633 763435166 339158234 875609480 807703280 912939220 408406980 288495706 532565035 984067542 938168177 661380454 29064398 879099298 620683743 732628457 167874092 91186461 601408926 952668513 840067965 480597460 183474902 568519649 552418883 561683885 403675597 912059131 187575915 9283756 140571854 189249464 183920261 269376237 317727766 636909506 771533145 283477635 164867463 811368914 387924076 54520271 662570444 605630038 877246871 189496376 679166900 797261567 241938144 196490837 149722257 332977337 211999937 4448909 17952222 61552959 603357310 662559977 351790121 510056262 583129265 533221850 306329409 823700037 66407541 785730492 222037239 321667998 503684627 12405463 160399624 455442797 937185687 780176962 510745989 990595618 961678170 451394599 35640345 410367698 542738581 429562437 360036696 595325644 318208130 185061182 647352574 676529420 939777612 148283782 222976911 616087348 180922872 42202028 360919112 203366933 438876414 230494127 28474395 105525988 688496255 315141765 505393650 155793464 138319350 37395810 364838376 364302001 483531502 747008782 26439481 473767276 389131576 637437856 676701329 409576503 360046120 561840823 600417356 608259803 415445706 793064509 277042623 15572841 359465910 330061349 23808288 620344825 173478002 541091152 898062465 804466099 674335307 94476921 12624327 232405987 931976080 380020755 674030028 32790714 529255920 60651932 481010805 944223162 257283112 70242647 18229894 709037102 386395265 12288802 143553114 216183582 178110951 413625425 271695449 729383583 806918129 186974004 879823400 7733162 105116326 900338 79656739 706910387 233482869 219543900 910303163 814628680 508049830 326233540 941578006 219426253 884883431 92187400 888054096 837607386 288028863 436434669 225085463 316578344 843996757 158995480 675051515 566534312 574409178 757861657 11253974 527944115 943064495 838487877 177713 924802062 326409680 122048459 351860853 581755289 962762060 524272783 787648148 311758601 94709249 66407397 594883901 710554397 483886327 935442092 93622228 628137623 383315615 343686984 105985125 823053573 497019754 672809654 572245335 494883341 430027894 124484949 869820487 889973473 546524759 439008893 89680784 528421471 816675062 539963616 525135376 19979884 651598404 937597307 872273423 240148434 27970208 556690745 558428441 285458599 331354227 572295950 191217545 466656070 330234402 797668047 475751562 254527938 64770779 824886999 606600647 367612265 143580657 121296540 313632162 91520065 597648332 770077757 891176762 61887808 724627856 878228743 586691694 963795808 23823612 392417893 777950863 430712270 573081129 347756145 645726789 888482005 883759887 698343189 1607199 359223429 344139329 963448278 458389217 657896295 795562836 28836384 643252876 383403564 313684200 648490430 95526541 901354381 307162063 143140481 161748004 490738696 297468379 145358636 75294994 135690362 835474388 689739463 503792697 929680253 965835903 477054164 457083409 605479772 35472538 949883435 807403539 14754542 478469408 813062326 657292037 13009014 185422198 671830988 556741844 708806176 425037612 995188033 534851588 550199426 302891211 707611103 70635094 730152908 336253006 231606132 288418446 498625020 375970464 331665377 303708579 875783079 796514459 480893923 284722597 359441404 135216152 122936477 374176632 22458341 353139209 242790214 4246946 116993530 429627813 921953436 798678996 476554534 84226127 884081366 807444230 902904695 776529696 808048262 190411341 415983499 735493654 418172334 190789249 333584288 244317030 536445736 914948644 417268385 128524378 352803179 406195734 132902438 389044086 166525204 415455215 388109135 122862961 803454105 774436421 718388006 117492868 961652852 680885882 806652553 798298474 656367786 862315885 416827447 922269651 38389294 230494148 949450155 393627236 772353340 597723814 822534968 435246663 351795954 833036838 1876985 350114761 57396616 497033541 188546883 808392153 369518307 831314659 444781982 381748916 853916933 797851735 510347077 742758482 953181927 558237677 406338264 548593791 180684174 818368960 593607579 685192701 734620606 1583529 319706890 998445913 948603560 278858926 950857462 462243783 765162928 358866773 571746157 314225997 653025857 365752191 93296416 187773885 267229623 240155829 748898602 674162447 869436476 952842359 633993184 469241424 929861999 19292153 789371814 583605679 493113142 737742951 825607768 920903988 183327601 316433650 596319629 97374146 690729823 410278141 701394293 303900796 688782795 740817619 129066442 494074346 282226924 424175149 266257041 455126462 373832187 958907863 40051860 72970069 769701883 302386536 531726176 493993406 104818782 550383345 512664453 875574363 372510020 620944952 37333604 940589258 345543718 673000083 417673049 135407652 60773682 820851197 325202827 54147433 192127771 339005107 771445775 153176381 683870433 484191713 215258958 701223165 41632077 746809949 51898916 548144925 7398003 527155513 4046449 91451687 903862065 943032466 998171544 235658912 728947071 822442903 640366298 798481129 873269816 716568537 697529067 894220469 968608850 672054934 418328710 256352578 236003445 34731447 546683397 135854319 163611846 641691059 350105060 106962373 530585362 859638562 684479480 898140212 996251199 819064217 447823318 938225198 981325396 498391179 196663608 847284868 70048810 305461007 586725291 134821885 223234459 128523150 91683509 9448645 819421474 867738079 807758982 59604493 86574425 273428658 913570312 362315712 298344492 88979505 682593629 436840502 546993002 927291333 820567730 45292730 609122943 293611314 16077666 132408556 21221875 544326335 160953647 780772611 892058586 787539277 208062364 967731323 706668833 65872572 115287397 502157348 923283523 535942558 656347098 152718206 310351189 164972502 765261911 543216287 668477948 561898829 823379510 376312357 419713823 98872690 692797669 571095575 908993599 277882644 692044584 858103556 96024606 60930863 31338608 835115720 477689251 460734598 663380234 447532735 318296806 210932900 801542038 179159985 500302551 432091843 159919741 738582056 593698315 187150983 919925018 587157480 839648450 916930607 952521274 11735406 256674669 289457122 545317360 439904104 266550537 912447808 310776624 689527856 951723903 513118014 732633274 974777987 457931001 926819867 987592078 458101217 245244165 4245406 701626190 519760243 984185922 23976671 895584365 891230719 621543859 474536998 142266423 785885089 956729956 541479599 588646908 587772461 991780245 904997655 668939499 805169781 122134996 688087719 673603582 315787288 171026028 523598753 143702685 844032702 264095878 318511287 752617379 131545576 216590568 700666645 466086541 970715824 336263964 478793542 457202146 782285263 715873962 104532692 476187076 609414164 19571146 384094645 932594780 520600755 22152113 913524584 483003899 903640993 978718618 453931061 793232773 788863243 907588181 437852013 917880361 174869043 435248655 421441422 747390655 884413921 827042775 111699017 439412902 280856227 392208329 297607824 639000161 939628645 674305241 776680856 130674358 414988399 460229712 943708481 809866341 572219768 907062695 965591647 884831238 145531390 125889634 660343936 78920056 358386885 891771919 586446181 435036608 518744100 159919123 738528026 726606979 319462370 172249323 792034412 308074412 929246019 948018084 954296744 503325667 448101247 40088566 851227285 22567876 348433521 67839273 151111473 207899035 102280278 252323812 299232634 135704065 226191875 514797303 803323137 839599874 415910111 859450741 467839429 556640348 245228144 574110385 630081989 911311523 904769872 361528210 949869951 929541275 184647258 197332155 509545640 154440624 54349435 740074679 439841865 825303501 614671119 503305113 14886985 503257624 693446366 241539936 838894078 510075703 663721007 130041712 257134786 72550223 547772042 520818382 692932259 616494644 932230415 763287407 541692277 974701713 201616039 937780022 809773617 774741373 148089168 951729490 54265773 384414422 176491580 175549208 223063773 239329032 639205169 683574789 180883821 748745653 249556133 721173979 959084563 395280038 278788668 563635840 188379859 925418434 896978978 781636863 87953764 472966698 343169936 280210430 934878823 496675085 214042750 319789782 303088624 565869076 179314059 339134009 908326659 33379409 750516867 714686814 53687810 746892184 575319563 254106190 883193277 883952115 309277057 40652737 169821097 614852086 341822619 376142158 271152687 649763578 701547991 262496811 296866777 583631267 436648909 956219879 467196028 869194369 864214443 696865486 367412215 611810679 276763671 557613883 460886458 42375010 351248026 242203786 923585711 18678764 457428769 802494445 861639377 361598466 413047335 456397287 92469934 942452538 596092144 544834296 18222946 633037946 690884207 465931748 25749305 98970184 937475267 298465405 717657552 449691789 645418106 585451006 732955126 243600642 166753298 486654214 13214466 315064698 579453013 410464040 72458391 756307243 204211738 378150038 487901098 670722383 959323046 587484128 975473750 294974109 272640069 861818175 609929654 741806526 602814303 336500418 477089620 337648767 963064225 393120902 770906704 378325630 365352763 671702282 840300011 798645774 264570039 174524433 931058101 704765181 878045009 836011724 562120167 295249124 722300951 679714515 574786245 710402024 506314861 857855012 841516036 77060145 673227005 779145549 804126780 62108903 190157160 923435689 422007699 970912791 198755202 190577283 418972315 836875068 266733886 94683663 461216980 19807603 293802371 113045089 2693009 144935597 791716170 989765384 302915280 384384798 452363559 202510886 95561300 703166792 739883273 759454768 209270689 538963487 235436363 201649178 910079792 259469082 214278388 322150268 382642068 43596397 802943468 449303817 918024881 598440544 528795760 527378496 556078303 403954217 535308369 195220978 606183690 443875448 291002708 153270866 854414848 822445515 250337170 894665116 769806105 351120543 280674193 315345875 886388165 713250591 280656920 997248014 655988969 13628117 180119554 964947764 488437335 314877168 46286208 284672040 177602093 509483066 36959129 784929546 29014807 921045942 396502075 693159043 168423995 280930171 527739618 534158662 408108996 661470180 859994187 8999886 620317720 138433642 925636262 647459668 217528002 406547508 212690427 241956720 752590886 223090280 85982467 53319035 889306623 539038023 484172609 317899829 656707942 113703228 686775106 257440807 428362680 671317898 773596389 916206923 863794464 777205154 109229148 560254622 707228902 99700803 91688436 725751782 437995829 562525345 697722772 298513431 742074108 782911914 543987447 556594874 668288760 206982706 157322755 52226823 521443435 60583239 22910984 87354471 367499371 666750542 871722016 867656762 996614758 589298807 989848653 38811593 868325692 818129483 240619226 606488709 173579135 822616853 634633321 103408864 152695585 701006598 897682410 628659726 762768394 624261483 944189428 454843810 930605081 770209918 60949637 251370654 169320583 799160745 411159734 731106984 947222197 126645158 322205473 650589210 375921170 842805884 102888242 415120724 10280292 981740541 644539810 891736663 103307998 256032640 92719421 233241355 448931423 788000487 736556834 219046456 876872195 631094587 48069346 360641025 795581805 173639293 731674533 683836345 693238056 919827223 798450446 204347892 340270442 10635963 846908561 14211274 387353168 507662597 48004294 429752819 732223773 142030577 452065009 650598155 89952800 815474526 769526702 85478489 846688311 716977061 6925115 279813045 854072262 627802779 881285331 790864888 572519903 245863594 110792080 20252378 173385416 886227709 908175446 381214618 517390183 118726824 464697088 477070423 31114533 615964617 365543407 347645845 296147514 642510450 519007275 748545628 902495029 636119344 628924160 766489856 718883751 750098014 669951618 353893999 699809842 943811655 434945066 509088455 291761513 81977826 238711348 363638803 29425976 841604646 130222256 906207844 610270980 629940481 734770883 559956826 600794004 248308105 234965618 627855897 601248535 198186033 227046872 999393635 643696761 491740423 803442145 452477164 804032723 934494970 356405925 926254509 420684661 452029519 458432656 982143255 563682780 625007214 468379864 237964162 774669060 732984872 346619283 915374158 162849079 331056252 655930949 908269125 146039984 179425312 907515808 597911128 14214309 545815707 214434338 481492216 357107900 587514606 591872292 220703430 217313583 109534264 505819046 718236544 885526677 89790853 509527208 396980625 909750810 960390341 844121161 9839015 332797065 477698783 11974212 428242618 36991100 904763044 898572401 299642458 112105823 480621866 585868304 51837864 555340074 179573580 466228181 572173814 113554929 842831160 192734710 216025808 701970901 569966663 594250116 170996697 317658526 312285873 423463017 107956499 581677544 584754821 629269379 638696599 22569904 703901960 774234209 276539128 51435977 792623426 160518163 437750850 686543297 575483494 872326447 858363385 262448895 769997288 876606951 715454501 103708816 588497410 624287045 613621996 238226687 560863588 865670050 610545102 200770596 466821454 218012292 114535942 535446685 811927764 535706676 303244940 624374594 190284075 498288556 775487011 288012427 321848762 235242708 890483711 742809384 519052502 625827581 704591621 210950706 979590399 348655299 400397694 367644782 388283892 837574064 459888714 40314913 188950565 612730097 478499552 335230128 481646770 623212159 132754928 761925216 874654189 893250099 147731688 627497856 105695252 662814114 916945474 631203389 892791354 561421599 34490851 949732065 123051247 480766557 70429011 573359608 682015561 808890440 438553067 162276437 389496412 174251397 439315053 453666992 209920677 214072750 447719371 86071965 174464737 39990945 547085962 704470735 950135190 972616288 835223959 225326074 318355059 164040895 145103972 881269846 457878012 976585049 470256493 115733622 515163097 534837598 75059551 970456759 701370947 437561873 278682364 52503180 890652003 703439957 50086633 224968293 243329446 240365894 964106204 416190653 834840412 613826696 49874226 725686023 136759393 33951085 660084236 216737802 894400345 496154144 769859649 449139454 659065044 509677674 242119758 713120981 214190430 181356542 26963305 28059501 223638353 856337289 35976807 533519771 828031854 691096291 37088063 503411094 925993729 469355154 480477903 40140405 224198141 482656659 950211195 616672550 202705920 111937564 248870968 179610377 614718498 30730180 1315430 390747099 199186749 491590736 320827085 256579958 954084349 654613404 932317236 131063751 822711870 738410358 588926349 512578585 350567723 726101151 523957717 351538309 983798944 160308149 875550367 281923138 202123870 944466513 583535986 726998399 79064949 561977478 892206575 779153558 243188901 905013153 631203660 920172766 826274208 388735302 190928916 54609703 532668588 320080093 333794642 365261581 144245864 582689550 656135541 876472556 110794035 787067140 694106722 63072223 782333995 832751381 580488387 999805059 411644146 280348064 937801196 342803016 184166938 972717055 23578422 79224230 155462419 284825600 757388285 841306927 688456006 809278996 607898872 246143278 460762991 676823719 50381985 396710468 299645538 185196166 79530131 734016966 327334552 76920594 162268337 687109808 293344913 152380918 788733396 201550318 156989497 576323816 798154731 992528192 426023755 98218367 216629820 960978967 367443214 165959758 908132185 185926054 451600379 68727075 857015999 416207287 444842670 957439602 275767513 352509514 334366855 970803216 113638232 394372090 455848511 854663365 799178829 508675705 395482224 768260758 494667837 515483306 49982209 13099081 413217949 530664311 497585853 503981711 556708939 221697415 725133294 571910 379477064 394771994 374726313 787344320 585227955 942562451 975807811 599087479 940000682 716500836 498790064 478586197 722610119 940499271 334730080 676268304 355141719 321560406 54650398 300624065 408240563 717352417 988305304 377940170 873150114 862775255 94328404 737850106 437430222 576733982 743925348 176472042 973183297 579138742 589711251 582481784 71070105 686755860 756525825 182936634 733480644 565178248 577264687 284824569 531347224 613380093 768133995 698137143 706549470 765125208 514513471 974086828 798026802 161247539 422076282 712773356 424965910 678653507 967224680 650489054 614716223 222907284 2091255 20400784 178125088 249013714 80974054 160044531 880024240 820845426 500700669 657169124 492552751 359750261 310400283 839694652 501694028 69335229 382387813 710560923 611498956 351388638 727622724 579139267 792618453 528524507 194510351 905979599 745668328 293379849 184504676 587273866 137194335 453390127 8019526 890302543 521773564 338392199 439843496 319016431 211078528 37607914 948068636 540847454 27224003 460142146 413516957 937938551 678060013 518540015 765912525 269561286 475408587 252684167 986836529 199779292 867426591 574457176 172648294 978865500 423152432 561113988 461900386 239887070 279957496 156044242 221115019 63756537 849651633 820615593 186854964 802414082 992845225 664420521 613458698 285775865 526448956 87784841 999499446 4106299 457852120 692307727 68720329 561224171 509363092 122717516 205374306 921579868 993468795 565658128 762017168 162810519 303918569 338590102 569599500 584295293 606925154 367382413 649420104 36758729 459759857 926625766 149994908 221487829 555955277 35288087 51926594 184618109 886713284 667834700 188760293 304022920 555402620 762361782 871827227 994953514 345011384 861281923 414723665 152387196 456899104 606896722 168906866 833782519 506875623 556441304 162453611 672504404 415891309 737689802 543049773 16805955 822342162 995368997 720137243 185593109 44668028 327242079 815354680 357884500 241283098 934294770 598514807 793315891 25758890 267262886 907036769 48218093 338792173 229714030 582001340 457888754 323489072 894178550 645626484 904296552 908347580 59692803 355934180 244839843 458367069 87701392 585046242 252987644 598421711 383285126 340513311 970633190 119121890 942870383 511895394 498238674 624987330 5837148 317424567 379506471 381408762 589259245 370752716 527737375 454081235 26571688 409665196 596174524 281933004 892997577 957382933 354423345 168488036 983374882 562708184 103590734 799368617 731822030 374086401 192189286 188525260 317551963 109570666 60911937 288236808 271504291 296716563 928478818 554883957 366117259 798264281 384224104 920834090 695097759 305942636 199083317 592060949 164173329 419235479 439526008 275607528 705726948 802228102 268797056 278472750 783783250 56272292 522381072 462641002 814267663 478159944 969274196 525210361 459289162 85724541 721631157 88299441 450773539 487464678 238798621 810497621 431578591 660406762 75358646 131446639 943134140 361368752 784489144 407471399 649979725 22505845 588766385 486239543 91518303 117679834 831192209 644528990 214088584 760364530 382218780 733978181 799489337 288121925 510974825 935480968 21128118 478966691 623930466 338518909 72938254 346101007 8682588 493660598 584711999 633228513 571688349 252268631 415024765 42328346 92900650 687082235 762492720 454744400 987166211 269061957 124404719 98326760 569985509 931999435 559557340 550832235 390194901 961986293 50522572 271053628 992921680 910900011 190058244 569481003 377019235 911663431 252126899 230802958 251569832 796111515 20766442 57037097 443735863 474709894 168185097 829577955 645916957 357027819 950994596 736079618 969973409 909439569 893008009 761042292 736126445 960983377 36690368 838446483 701090258 958899852 260004306 986263346 211637904 607932448 803746212 105128771 168892598 504539791 214744781 701560621 866338409 131765320 553596553 105808379 249453651 903963570 351058235 136302575 435430768 805999713 1954923 703274073 822215955 659644440 173014416 673354995 171335167 56307575 478514414 681126669 111114320 295231793 516578452 218801041 828342611 486919415 147370506 922202431 294320795 528115364 341821583 56238590 763813236 14615889 741151291 419500667 476364376 386910467 491002643 35981077 176882608 319276004 817877446 219455419 105741457 186767273 905930152 56240877 344181329 843707266 654837894 73140900 574925828 464169265 281063428 918969712 647950348 213937440 535675496 515122253 706734764 201073179 611800158 814595433 66987206 373760825 275577873 376990757 309225552 954172982 206665435 126640174 687392960 767771967 195071984 13366875 415329868 626808266 774073773 617520250 907049943 140031909 523330881 889272457 922729872 558468335 662122020 468648950 799110741 991064413 57879424 246432082 399695383 611327307 744581485 413465992 308815535 369261491 143099188 843223613 735679089 513945540 103378030 910749756 762871873 367985200 37336997 711941167 663612081 489751198 48601440 241077755 759143431 395754449 933190750 385084062 228753125 26838638 388309757 468701848 681693814 398055168 963570729 387838024 166541849 571649378 280946271 625742460 353686440 859766774 405351121 221614444 303119221 204591454 358705066 688930434 172491648 777784742 287772391 464553419 252034826 261277896 301727231 449193400 623012444 485052219 30545111 572071139 497601368 518135072 355000590 309952691 896364113 603980986 962458357 14756200 816898465 571882243 999613822 104633720 454731220 544999897 301377447 708759058 77869709 125131665 419897611 267238883 308747380 321008071 383352840 739218431 416397269 63210416 412842333 778211816 635548415 939900721 676790507 795183059 693244860 985496177 602346182 116741171 530614955 886899399 468638583 175318168 643951552 287555893 600006098 399209116 519667225 265258835 897168170 565119211 539189148 530792534 302584307 591198195 608036753 686111443 687498021 961058211 898630393 432260067 299796100 65442214 257263357 637560804 976670349 853402422 135923920 630467898 812959011 68787551 126470199 93808769 505167129 595056855 525653892 314167559 374756215 859433097 952101052 680541045 78937013 145349637 456021133 849446645 294877347 427387620 922112388 133173604 208507925 48992525 95851861 242137434 210194245 500583472 170524955 912584742 997133378 966871995 821992950 390883848 638027888 671342787 940010401 270758359 77021410 618216501 600323563 418847972 100210630 96088350 177219949 724447573 873083765 965805639 997431136 62846540 60288248 976919233 643565866 465380241 805369386 418930623 860721676 874900689 777168890 726367997 786407821 695288479 606989170 360701385 436925844 470128151 492616815 516391334 106096291 744081334 330804844 714171679 765849304 399595300 319833020 347575968 842176220 204586127 532168678 797140329 933885301 692926064 929487258 620938189 698131437 23634383 160187749 453497770 339017260 69965748 185996122 427951027 182276369 607188976 425377539 449126670 988587967 241140034 974321883 861875185 863488357 9207543 473683945 355030462 370374738 23999154 449300419 935231892 938414320 345065936 670417954 794680096 1238431 425601643 52429909 955056714 242265344 430158506 773114282 424649190 921127859 621783739 182220376 613113370 973436022 746416361 23019945 129154697 390763103 496491079 735205290 582857322 732297488 115495519 970729457 977434481 939942348 433042725 827980679 960559945 739725573 684174422 216872218 743275688 720640461 324310327 710064624 538027463 856035237 893845844 519090456 120273637 126838974 943285035 40905122 322491647 627392251 503928141 600240208 359893840 745616079 77972557 553251016 377375348 841115761 269687125 214587418 582908248 325818938 492691329 796704030 908979699 843189729 829673534 965467934 432510280 54350623 982094437 566966581 996029579 504148239 601338758 912404727 294790774 830096790 782273408 895784115 966951608 48447514 106652537 950252535 958635529 30194090 572348339 135328084 587590963 135610264 80427013 984382968 621670699 79234793 404670649 712800799 401493014 320455631 576348888 697832541 479892888 631310868 294568057 689902018 922294819 32611212 870476278 974666652 389903598 667969402 322184170 57477958 717863436 593458254 787883437 91525454 792610934 603625876 909703928 627353576 627462199 872286007 457575084 406929538 738656773 869365390 623412451 426184642 249511066 755312501 206141182 582763835 682137282 305805120 761111854 401663324 920209749 379988627 648795603 597169420 834274076 880784126 35652193 644999050 793173741 369630275 856643233 295149244 271569174 557099261 960533488 837951385 702879825 472469067 39655757 535130301 439219017 385608490 178883504 497126609 785897672 448640044 396316920 758836139 473851499 352979671 185221300 843800782 135127548 566316704 409226393 700978790 875517580 763940250 219671596 795241995 737032445 261409373 697276609 719645423 109774924 375714428 223640739 416334886 928927833 705395717 466778724 829096405 448894637 339315360 773775587 987178226 250163672 861736549 905342390 912510093 602181578 525266065 670968178 436035065 330294816 962242021 46002083 895783435 231890850 230070098 714233434 427407163 586782994 477145864 750593216 375222074 575309532 141888109 641312300 339799317 551267089 725311011 718762338 902862098 394271775 671244369 784337919 795498267 853415777 304670590 599467037 737589947 75745012 403380874 715914343 565767290 772396739 208821521 132465523 427195505 386090811 186990925 413997854 797355405 220193050 95898245 583641453 149421770 41436215 365406436 892021404 938157339 103574665 678139615 17214492 64165588 251861082 441230068 309255555 226633751 255583628 233733665 372403583 820365258 416884110 67726080 944457766 157523332 827396275 880510192 518428493 3117727 418553243 25959209 985736283 919967516 361070303 118115461 836941608 539239863 768730121 285820538 674953427 610188956 665329166 884532406 59028024 925162855 162238743 427986035 649679751 484658983 259192140 884575026 52904579 241257411 668277190 293793132 560155694 954670556 44579375 551509058 245385100 465670124 322789398 643011348 74776044 785781347 59707226 824156722 917117404 98913534 843597885 531469620 980246172 340712197 643602980 392090883 302305237 890935256 884744603 422984215 783590675 807808204 535875066 22019121 826088355 499327212 373912789 844391687 360751324 700591977 371085027 204526439 381885774 563715358 804583095 874403028 940040764 822381104 378952599 462797709 493935039 787944059 184775842 509010905 483966151 468271287 224370669 608222915 665622433 496604166 463365500 958660600 545777869 604919849 518415913 750794251 574160869 487828948 578434107 989678248 787394657 922455712 99738701 43395679 534480032 867282862 716659593 416625323 411931879 632878422 816340883 255979639 346797037 418471064 852362603 840616405 291145011 841637602 831667159 365166895 186737370 738030593 871128158 175679329 692597044 169509014 708974713 620363457 263392738 117654556 943537960 345777416 599126639 433218381 207017326 706553344 151873965 984590334 958466591 728147920 427722641 123404831 109903563 76870146 874831358 268739112 386985020 560997223 264195020 729917444 594067040 34861370 206639397 69117817 107854044 547077601 460254937 734441472 819532458 57059054 378322074 503707115 335191500 715020124 618271200 521439210 926610192 1692017 996230826 302726846 561710247 388754748 972920819 614018358 969512211 362490408 609024817 24746837 554368596 127382424 86579179 101247369 628207237 979720731 225134639 439409113 649861291 75384626 45849084 995152122 48111912 200698539 682394644 956633593 170180582 492932127 528148433 992929033 557309645 666027180 144604560 122001004 876964344 589204020 439006020 191218744 684781442 249017727 897494463 827841066 359061498 666851497 977240596 284016925 107625628 255593268 113935682 80726803 985768444 652575718 702292314 231198697 783304475 63367712 881785608 122658548 564303301 228068511 271773952 587337671 668572503 70693114 612327020 139565925 132511516 805002848 807479383 960131231 264988929 428313235 140360085 185125826 895990170 237787460 898593946 835597580 153154814 837871292 244428386 791403034 971099343 312578916 674886375 72671079 596874626 740858470 131933362 840335262 128188006 363516841 296794206 629119095 537335309 771632318 268203036 199570915 198938329 884451222 143166632 895368000 845030091 873465553 962469938 542984633 637641457 561091287 180087995 470994029 929933176 575917535 868967809 253287764 236503972 696195938 602533473 822474863 725708354 735199986 265995146 489201636 415744406 214191890 9290122 316097390 275142432 831069694 544986348 555952434 730792973 569823624 990432043 881769241 400432169 85188722 515443259 557530204 627227988 89484643 190244669 105269213 258317606 393743768 17234835 986239797 756297056 558749216 307978975 812752633 162719794 110660775 25831325 771503768 61060877 716477248 360936136 706081162 457986062 404282831 357453921 271115484 942626991 804573808 530882254 141540224 299746678 802215347 615263330 296343965 521789449 938094252 977285855 70790191 635041771 419274975 856563735 748337899 442166752 995897173 225843607 158930347 271841481 562784767 65537949 759528091 250859103 572466426 564543072 958955411 542663555 870704654 527615836 61863839 7450306 462716187 286957869 542542748 526832810 643404776 737671100 783908592 625283793 907761164 830400326 150646022 313596449 59434042 54089878 190093278 460270914 369886455 720399519 522342556 405396494 224113834 231751348 876790083 200902729 337073514 239751374 780194989 192245047 351233938 616469350 918726735 602062026 115076366 14173439 474001976 245352025 991679467 943156010 905230122 648412278 125418706 519148610 239204116 588986803 541537521 237484641 182343011 189397171 591682458 577687903 592185523 11216602 721049338 437053991 104388638 395664181 802264985 887281515 128300230 600961460 649172645 534326949 813936215 421171455 3857347 554004133 791054412 715050114 941615372 923648217 46032446 553360525 336972668 357137610 150872076 123022104 716890072 573794627 156512638 107574915 873255682 673182918 349939832 895279206 586749546 875821621 397780876 716338376 284852551 162199132 290811882 474140943 150483247 352441724 187047176 248797097 199955912 327811222 35988983 956459977 632173633 115816110 63379794 650063190 225759959 703111711 551774993 288212341 859099969 594146621 392984020 334827411 38510098 903313052 784558038 135980906 430399347 120211687 919020426 498504671 347896772 780315832 297731488 685021266 199185742 321848369 629705430 963053656 277910949 385847065 95041375 887586620 823857798 764677959 132073723 439846910 669416943 775256785 771203235 506157031 641002534 753197444 732214947 557282838 630779914 969983713 143857114 306580717 217736941 564581696 812189629 641841744 771331615 493077465 63304894 767708178 26353938 9576227 142550970 582094908 870696938 678199084 778580611 828077686 813625100 950177365 231905696 80079900 459360298 366376755 685190551 934470195 306304214 830753683 707113044 691209800 26223327 428386018 422593675 965245870 55367331 909057599 908045229 998029120 491620193 948261886 645930447 902537603 930466308 823873546 755070125 810863954 944645785 310582342 114381437 926837170 928066888 524882692 357710320 642336647 718597287 269243439 208083687 82534259 20262857 792177595 378965298 130596924 764226928 418973480 861611648 780622718 394597523 734816067 889196714 73398985 345306946 289947112 518297673 196925724 51546134 391988050 465789668 613198559 321111474 946293449 195879851 17963500 339458306 412174314 961816387 414812764 619568187 131630293 440884071 289518109 550783413 463301482 258474363 75317737 455068224 388826663 744307738 598817600 702767580 724903267 321693501 492418739 292178801 140802355 781366233 726186787 514621842 810773927 41442097 922351762 170871277 286067360 522789 215362886 37968355 797183045 516801629 148518328 634840371 93769721 649149573 583933919 54154592 568882814 716229182 100345908 752294184 833718084 542098299 975232052 103227176 780064170 187543136 734818126 803196367 950435699 200638543 174749736 538238650 854087812 351709240 817470136 455729474 707032490 861958144 58185136 44302839 839506011 376200060 144488595 90403394 840625604 42015875 439646819 617064547 448568632 352663878 227677134 75224633 93977831 535586573 821800683 574275211 17449380 690083284 234696088 371050368 582319321 116133632 854796360 454131017 692379836 438175064 112507999 294221942 542011516 64748027 955041634 904388222 651749541 251115733 376621899 985564844 228070355 670815967 460595652 150845217 821745786 766813660 722115651 32157585 282597141 247443249 368883318 309376850 173497992 931379609 816941186 291977974 747705726 321905326 828498533 444692422 660364176 453009153 867979580 852254248 110987090 688223901 327960445 776117324 366724544 745507507 61782408 611509208 501334803 701070982 81284844 940456588 261140214 955051615 997100396 892308555 501661563 739214234 653525687 423628755 70483727 469411476 400463050 525235074 426227830 843489059 558107551 204214428 107319502 490454160 467016713 292700359 333515913 358993390 700830708 949160226 297171156 354274245 107850316 729981000 966669106 415525906 380463049 924946806 519970872 936524474 794379225 588650541 130898963 714883033 389525402 275608984 770274415 698487975 789780110 834930875 746985382 306093785 858252527 908382571 944111257 224174437 851789918 403468635 616643029 464596408 34526137 279628925 654007766 466903222 28271885 930588499 292576511 125830943 658916456 840005053 683814831 664423707 354793328 859388155 149207322 7591593 950377898 712459106 491184325 784212810 741679340 298834920 227366928 190792936 854375961 792930222 301986885 39007197 28813211 587087315 283109935 575208540 692256247 247352915 228176386 195707817 373847685 987265489 350682636 512602629 182559180 35670334 785088963 816147088 373006881 905500174 144550724 701558728 770498058 421595760 407277973 629551881 734783504 706546222 135071705 84057713 457625026 976656429 359162262 380517005 225895850 19381497 550215128 931413635 482265040 866320290 838485226 833958706 557929933 186688484 932709402 310456136 783881049 809978683 398821555 420302092 980342704 7684464 494184166 520944991 409795948 75797373 191297897 556558919 936777786 880000311 699546674 515362801 775533061 702399269 536170289 291449776 950421391 294705179 85268739 598687534 377195007 692917144 703363355 337526590 80982098 19226476 693575470 354663683 50906219 687975955 913784589 182317354 319504434 564670094 259967382 874280531 38740420 640180494 244914736 763834668 65072417 638367194 916837615 239022329 356579544 83269078 816386207 602977158 691895198 215955798 750072697 997917781 411861728 408393154 442980312 620262384 812223757 621439551 846488487 581955478 115666913 313943151 506342508 113868797 843620189 813606973 807123596 803361790 187542578 753519938 687102940 419767807 123529235 478673248 278752914 55690593 958099920 600421784 978221540 327688679 258072695 136177102 662848534 290245364 999382433 5707880 608928524 159095664 39242983 399971244 550140344 658368688 83175581 770951138 970595607 831174492 456307298 979183417 982754875 204926198 995610493 908519817 321019867 372240014 294602675 820905001 793493666 598982307 646951094 236629885 507154805 871954031 220144706 506536422 328555635 610396264 765112131 903731842 973446928 979215358 882835411 11759557 639277247 415262922 788700008 761749669 804702585 990054364 333745446 813763329 419937608 308536333 630281498 246094236 560536167 292273329 660668556 652434109 788746896 45645017 326892998 102171334 84514012 210433384 211302564 123262270 124286873 291345163 658008336 98882554 990877062 531492649 779164278 882973701 548561288 888131585 286699438 234145774 973372763 417603989 476439764 10483550 12832214 670782699 639794505 674817136 371965556 870924431 991479615 744691210 275234915 78222051 179445739 912094112 616830209 261133789 675970860 556122548 606019618 441099191 160238195 273496252 670475825 642684683 510374446 720688044 231179350 286907586 330322001 234665676 566380979 879622336 528292235 327632117 292363053 761589250 414621373 730927226 971917486 976585864 566245959 886177459 709680410 125820858 892166305 377415505 902305543 239880075 870336482 65570009 623733352 309682885 996377107 236538483 164580683 184213264 667099309 295030057 902468003 127895177 141204903 364801782 16697911 573234356 800988848 316018111 102178019 298826877 318988105 828912251 627970915 155798542 858490629 57706111 296002434 301895957 833715019 629200220 878328106 515010960 751448993 522560365 672211169 356309065 97350790 948727840 980697522 454939847 30046708 496146696 803457853 433138360 978671024 442746012 587190248 618082423 516700483 526752591 841390193 617231608 364960016 302988790 588444862 255955847 568316249 473557398 41059598 859112136 148982538 739631449 940324095 971544992 267498980 905275178 392420784 498708723 160919782 505914912 886944773 852334012 896165520 442469349 385564526 809602434 806311157 760541733 307352704 421139213 54246016 77310292 722522122 43923753 596144257 22576806 952037701 4944572 252782974 657363742 225755116 916592814 794972607 704223673 841060978 628011598 70404425 736596110 307825354 546808674 973528172 900236705 561817521 54650427 255945152 802327276 807635419 556025809 410590381 476384256 717753237 198708615 511613442 562115337 168447015 142484089 538500894 616070543 562559683 97470058 581474663 345595790 665920575 419184562 937306343 379490546 786176109 695854330 562397937 261070726 672769957 176231395 291130743 568881424 49107557 673365503 59011138 378551661 251437711 143138540 731133132 711240129 181597026 338496176 992739590 323892766 866433562 673353534 448083632 580652410 940465580 83420315 931434230 621610285 647874645 308107652 769044436 976083826 595007792 338859170 86283322 181991112 342182214 986638310 409831968 441952390 968595359 88974334 206612525 665278797 976384632 10040406 453446348 800299348 585078132 463237438 808889182 701034818 158993787 674738854 440177748 850600731 44310595 593734895 580636062 153010319 959042951 405640175 147375907 820127787 486481605 460961664 399862102 764262977 658232274 372735991 226690275 327080648 859219038 415559714 139019641 313509266 241021494 908346207 992960125 702453309 649251044 326350616 167818586 560443874 434211718 340702942 900445930 537855260 749549759 456642777 302996689 166339376 691427184 111736963 726427085 504652882 909990183 236473727 483478633 504237486 594476225 836874700 680102210 123544284 776042867 62594414 970156113 407555842 689009289 888249493 195700336 68211307 249572209 448774057 166328951 789446606 778929684 42018027 512442883 313424415 92424035 440758900 763391338 742132989 79418865 257497679 736402421 753642673 20666770 181619011 796197316 20935992 611647611 494416323 546289243 877229921 31294220 455923194 269601870 224033392 697592592 725007558 422342248 791388435 317581566 436116995 442629276 781993337 220456610 323419745 401826862 597189447 108360782 604258571 982604545 201641794 485944872 46505862 394474946 322615009 470053119 512493636 685129694 451916105 972943775 767910656 26535638 909826605 201743601 88427158 304089224 682229950 31309776 608183458 97331806 149469315 578566661 891847498 698726002 296182322 48610023 858565162 132993734 558295143 597214444 742116221 741434665 138843193 338728760 221064799 10709928 583467640 196837228 970308644 346641504 215072075 27969144 7747075 289505209 247456387 932667092 130729698 36936322 309292051 106738243 85548550 886675920 45283184 618759674 596229507 433117796 582058503 110167424 188584675 295908523 892660221 575863369 240896777 996250062 65140113 693733480 303326176 915691895 181131031 983033005 248891797 210942253 794744927 787777016 333071285 737690047 950806004 667819619 519582970 813794845 412650030 176095719 186093725 348669723 205745589 154473932 987855108 836952316 921645776 596609122 193730278 454151810 172241481 489151773 465063990 556081002 944882397 251952699 159074512 633060917 945643497 445145471 936392895 561328478 431023606 879515579 909165338 287277208 939018747 244363643 552649798 843011950 985970670 460914730 812680702 705275487 973693753 74259873 208809860 856146214 261040406 876977343 111292090 869436173 903546462 827413445 481673131 299710830 873955779 583716945 956633058 431475073 870023135 776940306 500229003 343798704 242795183 748648822 286567355 993777378 302778054 960184687 431698409 666028594 292356983 15228180 895201801 957716940 147439929 654728291 303915896 766780773 960283601 190590477 723456775 724716008 85981756 784188170 581948849 812573871 592634652 862369323 871231926 135479507 509043032 430892358 66475241 540836040 260472834 827480998 276861343 51419478 219218829 653237893 977674578 352854484 469767608 763900327 240653298 270622613 655978412 156667842 727739619 499626445 198151216 680097586 217870033 261086676 484033613 47829263 869737379 205598706 360815222 742741230 5257879 78691069 674530284 308963160 990338488 662761496 413414495 31332997 544939379 402023329 930739046 781825173 375291102 849826979 635147866 177047997 929557421 881246855 635158041 903437254 649255853 87353214 309316566 909673706 81033799 639456018 841527339 687726644 809685517 242788379 845785071 564969880 223776616 824181504 536043889 883936215 235452066 544150968 339265147 836793811 286012635 767912024 789043539 748117012 791509123 604184757 26173757 940382635 234814154 909808163 796724098 392028245 728760457 582667418 591840459 549630786 411221252 485992669 651003760 793566977 135587137 125651250 601659115 129677216 132830974 751695436 826251453 309930403 147638458 979169225 111749036 2760196 549403913 559819311 419350082 544709 894512625 250386146 685140213 408483645 76130853 640854824 113439958 399240725 234966381 553349302 334387195 148517881 308848583 113076401 891231483 559266871 552483495 642274225 15961817 658657574 228464358 519453289 779123966 846704930 338922723 865291202 822871555 259333333 175564893 169973871 702837587 647861310 987418009 504674048 350260423 17141172 575277846 737772812 131704890 961404076 568138589 485115130 450858019 400799492 127934138 512157522 739584657 389551224 685249272 555351739 381571876 178042604 514569446 728438187 231400368 33582300 289864407 725232405 418081460 678868741 816862363 72766 765861494 514283137 425020103 953525267 754604106 486261144 41842168 224801287 204205889 360604897 11686571 169541314 76518845 418744054 101959342 178104481 719764052 760216767 848411002 128848308 988995198 418319338 695838805 14969745 809215616 377436229 867035691 995022782 255340085 296842457 289013091 395987210 380501980 683493931 239543537 210630422 440832768 522486739 777539818 804478256 349143985 666004027 70704354 860808222 821076281 132017593 670770662 364659254 23848421 227447480 236683927 781250818 129344843 238681103 395629164 802808371 782647492 854710496 113469248 545106627 532433662 461080922 705743611 465235287 59455890 287936897 64454415 22871876 577428240 98825220 654533334 418941528 809458371 54056897 951752937 724712718 670306434 817400072 114654632 912638906 668036116 580841871 55524083 305296206 681404030 777485837 31198046 711257234 20365184 57737569 493529575 876191926 66336110 446824273 633914852 625813442 930257385 533676058 956226613 909621401 390767556 700555097 473620084 666217051 922816331 974546742 591693449 812409501 832704361 267079948 327123141 669316279 685690542 66699824 837908713 414241869 615222609 919379695 838306010 551368872 869058253 436208353 708664357 301920711 863416986 463364789 161344561 970556974 323152369 74602212 13133130 518611664 656159995 101696565 153045474 324629795 8403289 206477709 709815844 55050738 215865545 747677890 434809096 322534692 912911405 962951442 101822531 472723528 150817390 352113820 703051482 693625124 607435508 751980852 694144751 520527768 532548792 243846534 420980866 611914159 297967604 548163085 64365552 315920830 281799646 864236316 855213145 700644664 542060449 915329667 471489093 98367838 953670085 449422320 89113827 476141736 549596053 889720346 891287978 46546160 993038800 82534025 519473628 258527224 9857371 868239967 203223439 142802716 564485113 922433596 337429547 445388454 454823968 896245000 448575579 237092854 550420662 12859277 561767639 664608922 969881713 968141164 781275136 869223699 961648329 48043260 808350038 465419480 681026625 341918288 781844001 736283253 362210062 607580277 850997871 451882576 610752140 401467788 472509315 84286206 328986761 187147086 518291855 122304463 525557174 44126908 594666849 806412878 168617970 403938125 345237391 450060654 223890410 636851433 444634864 963249679 874578687 247355504 529991328 170780782 940920983 342014200 300064957 364170144 660006994 764424462 490927764 51721883 425454566 336937767 578594553 542577119 333985256 667351425 493148216 402709376 134977676 705233865 72594241 919672985 919896819 496160188 842567968 786699040 815169743 750464318 22637399 60943624 294699078 946615841 948978198 320558574 370758246 914506418 254326135 872997234 482004643 504763549 261532045 259335000 424417144 118891495 995718952 688300428 443909396 968068542 87158235 400827458 715054114 391296986 624755431 976766700 7029330 358718510 797472813 867449991 917882306 254500943 765929880 942168565 525354007 994325534 255261240 583181595 302498808 870718797 512518768 557376791 265162017 252104935 599969290 389910528 221796133 813109930 989379248 683730542 665160875 907568551 342550182 662732347 222825436 858062765 684000621 340283262 210664904 989944530 434733738 821635831 281289368 768164380 504252482 191733229 178683987 63175490 732688024 922572265 469005206 434955574 157538520 910218660 515055895 199458450 952886121 616733072 646488017 829213297 145369775 122670295 673774791 95649762 203843137 651248781 707793691 948077797 440269187 744897597 833894645 195840040 927052556 754463125 336599060 631792405 264843912 146230250 273361693 357115124 378394395 987607192 93783206 30884461 436485578 927924381 365104075 930760614 99823571 973861375 352975171 803198343 480664415 291572600 88728416 835967330 145559710 23156152 24802438 412004091 872115907 463913594 997861526 999857643 6659001 122185761 393457595 603870843 319503693 758672308 497733679 926886352 979360074 798240819 486329966 174095151 785169878 981930304 795593720 32287552 573949369 297588332 258345086 913329363 846507145 452939963 505800476 429357483 544755369 924396984 734595513 207579975 764715701 616780571 83886762 917300398 907555056 914766900 266743556 657748058 804836259 318058983 402271498 95652714 899565612 581630738 362587248 254859892 209738614 684371551 63701251 148242123 691185553 188883456 698376803 437017643 402319368 259581361 274383286 169203677 440697017 956115454 825230966 66251221 716859120 987597022 945278996 347015064 531530400 641074627 942683754 992288012 892527919 562400275 516057585 159667761 565057404 210582970 623627154 404296710 216393556 770349752 968513431 215033088 694629978 713482308 89734054 627927536 510738513 728706911 563234302 454346051 33423429 448238448 636287471 705263154 768824214 843470267 984003598 661008303 625329109 577256651 419283797 573544783 935958407 136380676 135589761 258276302 482829805 862291981 646772312 808351732 244596646 83250213 632024571 609705486 233490248 18326261 602881276 268612730 74006601 707889888 623541831 230983159 541708850 84141907 285075692 967426811 787891923 612415918 407290309 366705583 353408913 918014213 925382702 400323784 926465205 161727277 264096826 28841686 50856908 924551260 418931903 661452483 905396403 184796213 72476651 764063267 466941648 541115055 551185526 198529194 436048884 406102291 500044273 565735942 172462073 751615013 600712008 700291663 146735113 379708952 625146161 241735691 929760591 999010858 694238344 541705129 860404195 780983028 162228195 662124502 186211171 933363197 228073542 777152499 794657377 829733626 710070022 769065158 392326376 182945492 729053313 620945691 593433597 81666504 914900756 723389423 249993128 455048118 59815639 550752061 56887203 9725743 13136168 616384462 82037626 464565122 516615982 765028118 571818931 852098436 155152135 832943356 938310259 326222974 719643609 432314184 817862970 396920413 215318370 197846531 827769889 205148011 993854522 913448944 797122043 345886024 312464668 3289257 889185329 102351025 351560799 214135330 226651074 233086600 693038680 150533560 602300316 974177184 446948799 653905511 663762014 990838602 718852211 612008525 758007035 551816696 896638054 806484270 995526469 940996236 329806730 693044265 285984755 765688411 493822579 406845950 727582748 472474774 183684520 61473308 328819093 693401208 554398305 745743967 780276130 374249035 768460724 914547321 102977720 248764212 583780632 810604907 375832524 59028395 584500683 191648331 470745784 132306024 792806776 631265003 662722393 904386702 79735758 727637064 913158944 577040177 373910409 669090138 213772736 99536302 84069098 312310006 409394342 995431097 347780019 985009252 605732029 520641040 698380010 715711154 19882192 505334206 605572958 789803364 922508813 94483124 180337793 12356744 369352944 510647939 738855672 715782499 856753842 48351675 633229455 641755585 432166620 22093268 785064159 553993692 121806566 655993453 376432500 521843933 268154951 722500238 683367266 139904756 556369057 532933487 32811696 792434238 808889838 537199330 127929438 343685184 756169943 138682856 92564263 1905946 629201117 124192269 938315511 686144894 25458668 410388246 805563265 191091216 652428190 869452830 475446288 333910806 502497789 614942255 456200928 723579995 302016669 62886344 686696850 304023635 511125818 926049860 4677107 890041464 43224402 613616419 514438660 931759395 316470343 967923015 34339313 477055378 823741640 656577785 351553793 111349354 887371349 101902526 924265499 187454727 156402490 582769112 799417178 77937744 906309554 224568008 985960511 585183736 777622907 50546533 226136692 248654651 385725550 465763427 663537975 32861433 478362917 930424613 955797542 625099826 931375068 648115501 195909783 301339198 562474116 573479523 776218314 197808993 911326256 459246716 264079275 642335631 349314496 479613359 901413996 349118776 307177689 72295314 123169221 849862986 625792633 476153034 251456495 169319470 932860034 327928302 85263859 267734609 673817123 621555153 941891365 762838662 220064919 577094015 650868255 169130255 370612857 671116876 166671354 27978275 300633040 809879001 960676587 77220788 514304660 221163169 910156827 268487429 992469625 932675231 172290074 541105073 740115589 91406825 594175225 910559737 575347549 285231897 883802976 7282526 404725605 610070333 165368161 876706161 162980092 212602570 743966137 287963121 709768428 381767117 921226400 492650614 737356452 787454962 358916280 28376206 528023095 213517503 50604369 799774971 269537309 583339866 872788189 104248503 692535396 512660032 275432862 281867019 129660206 133384128 176725495 744150175 716049301 927801502 584852358 670824169 324703280 779978043 745988806 651413881 927818796 252856853 362599580 944825896 8311904 932541345 504879859 828199736 481536794 764720165 689895727 957513866 453085130 293636389 867574891 627087723 965911284 923377188 14868929 559332212 625982128 947921337 712701548 989307334 744062555 523410043 186217696 831702779 651643050 598175743 161722966 570945757 898440188 62713871 293155033 192737472 64971354 587190098 307975976 479822204 726030695 784373494 614643854 214315002 792541115 613198102 900949386 803430285 562785020 43915109 589854364 374024084 391281394 918145092 44448992 369141767 936912655 122929658 245023875 402047115 573178647 212409184 566057074 714188222 137711670 221637011 721079361 626891092 357146657 98631467 926973422 134049043 644233483 115061756 876780538 441305361 436057926 934049541 915813195 964968813 70751917 102055227 271271894 671810862 410550141 526598379 688767648 917717431 255282419 1005254 227181262 220712463 380423245 316321348 188649032 153551363 280371934 34574466 173104996 158128489 283768458 252539358 646887792 550863751 331958080 890861165 550395379 791959275 982072191 411616361 845919717 290658272 986211079 359321507 51066949 461790587 550041133 924696017 214049435 13809167 852459318 6609561 969936872 123489037 427410823 662689921 230621610 726304785 847823357 717810504 848551983 873603797 111182817 498544243 257254127 925783676 288912292 887446568 313335703 347975607 837916472 12300286 270779639 134394792 667399472 775155292 502205354 614755838 303732566 364974342 733539425 833061927 164327360 564261117 671463132 211830420 434883325 865663994 527278415 28869171 788928080 262735833 587147215 704439292 422959335 881340090 294370472 126966868 277153758 698178013 890918930 469396045 487080219 254700742 684954396 230637454 708469626 319929499 117222303 580011527 749073122 443349553 311592889 831741083 745510649 6478979 290435117 373669744 799561464 345821764 61140027 91106910 554329528 25987529 228768744 269736317 893526524 106474512 590591808 980433755 594565430 456594517 498915967 483185262 952391664 834353160 353636146 615531352 710142290 496024794 163931693 954330637 870787703 673069247 706181415 13131846 230976724 55714265 288807776 594721203 432781837 90606420 494664217 278369668 84416551 293336206 460704701 936581296 285152624 128072824 116497005 70244964 206721807 337148399 64831064 151234382 659634683 208707589 981830256 182330071 451353035 331503321 282997002 826245440 917029027 118567033 242667985 891283027 554573918 9256785 944340355 778276923 578993334 682486585 317560597 949979230 762609780 313975859 783782475 20140125 996806374 665150904 272275186 187399458 893029498 614260300 680950197 641627852 336961457 624397455 129352379 285302812 977649259 68071380 968460482 392432997 881027769 38713047 351635983 869355817 10296611 491763892 511298549 337288045 708292708 489528083 596334872 961806117 479558480 6393087 322377797 376768625 945817528 925721727 938778392 132732840 99242421 756339091 155501003 570202477 461559825 325510698 374127142 707280684 513501973 243185153 336106896 331153691 833994329 219834312 87830971 881736091 961851720 544372016 638044338 932294563 108956180 745811038 535873864 378372401 781818524 941981884 803960656 434413931 823213808 901055595 712441912 189814292 687481614 736110125 817930063 578159015 682003412 12642086 234505680 359777123 375872247 545695396 417404187 305670457 787711755 409692441 174173139 439818455 399629008 34279043 197833048 458987268 289383749 60942817 632003085 962342291 987648995 260589822 742183831 964301797 503171269 560335617 696898959 49065620 338476542 307831539 190352090 162903984 891725686 537162399 991347998 99970722 457280126 837765989 435260860 187231097 75135022 701295730 984084411 179707910 359678816 765119890 889141798 417414143 382464811 650978905 672304003 49818978 799263318 492978271 971611301 787502446 642236582 749834796 641085929 92711095 527503978 346297525 503965796 556073971 566161167 912300363 914208463 170934680 781204086 320803960 884178559 125974682 391316659 258839707 322934878 519599784 803119314 130283198 150057341 48052304 436766993 17756475 660932110 40712214 459167746 590304253 696840357 154751806 559193152 43977019 910624282 276153616 151237981 304328552 790477475 530127316 374531552 305359348 722018304 728537839 927718505 921330944 442338408 806111800 828025416 248718031 975999193 758081401 343827882 201856326 7028678 990957459 531766539 733388761 721219306 161797025 893102611 117941300 189402301 874739617 436004549 284670465 590934869 486496302 33715212 828943719 432018021 857559881 145250361 668300112 638415553 500368162 471241472 878151950 992297238 906086792 849428008 986879259 589888558 354631319 536001749 270723093 305267892 8308943 468793300 713044438 729566043 289979475 336831405 515282265 479457207 962800443 455221631 397492770 950014281 651552225 232918256 603262746 729911072 100621709 410539782 489351952 834641646 785461427 245121536 924062458 901983892 134534209 760593341 760110508 870983353 637768733 323570813 432899153 495639275 92680645 831727257 774571547 769294025 401833905 34908967 213410427 533130930 38381539 337396376 621753700 573167122 88377226 1176340 498340292 373031657 178636734 726251454 289642986 952473233 356325432 689540579 309648640 195581141 31056695 357398309 426854953 828104392 634119222 277997523 779206866 828462830 544116244 962761821 465087371 612927633 266682622 992120049 468920532 783804453 466982424 56853951 879469425 681391371 77989160 532308531 965617974 41768697 823497363 923915233 777771678 731734635 726607867 149995746 713565588 369331087 62492969 645155848 627150842 212257625 672076384 383118931 474635775 282586964 698748345 564717838 303408881 458178932 250446665 483618299 979860938 377622662 830248770 969448288 882751757 626148669 266125799 757611156 999991712 486655588 567200661 371132556 911326417 941030399 415179766 897437998 218428806 311757467 667340780 292121208 443067266 45135070 164877840 332164344 801335788 757935895 180850155 707561181 4255103 481741877 142240733 193206574 371494382 470663112 474275154 33224429 30691207 787376725 725479532 287693345 595686542 27232299 104408796 825425408 573621241 14145834 818019452 756202727 38715270 167290342 459565005 217775882 286983859 194003300 318035671 704804541 502292209 98044117 577763305 803854916 514723408 449204900 867544156 461628195 129190668 903113683 766931384 466020644 99386070 502869827 286932422 563635398 907260666 308666153 883769270 558429775 288160723 486496278 49659664 564638389 256591630 233853957 47532470 474729139 294196600 457150253 724276790 26087796 959006855 437832095 628744429 134001361 920862170 994190363 285562745 181812311 295300216 748799051 320661740 91703477 16390272 112278625 337930526 299726097 653419920 892289634 222743454 971687892 56830420 308883342 677412610 948859947 527292266 511161585 467874050 55724446 873720420 835342 778592686 873599655 356710422 194737604 490775364 686067904 484964665 607223843 335267648 862424328 11137743 374777074 108943830 742209097 420257833 474204999 803671252 10342783 965318157 240747762 608348272 163368883 896158547 363986082 318537183 575401053 862809415 304986084 25253586 91639133 631523111 462046033 418737787 578542358 83190486 798182569 658818813 10295804 62189693 540700365 245781265 130629279 425991089 632434831 546608394 921561094 889705028 244831066 715605262 996760582 848809832 177951253 634423239 20756847 321857695 213946356 460619255 765943668 9236582 688804733 269795449 624500550 568855971 602052250 864694153 391898380 691185560 603849789 106452359 617015975 396590983 969168936 625850214 935491331 109920402 973808353 217678306 517042950 311350210 535876516 574752633 15318521 433055348 165725622 104593779 32716210 176288014 146760714 422879266 924334805 862479752 593452330 192412797 825588708 725041981 989877750 175791371 778410776 349326815 505550976 850503375 916520729 583966342 58543017 306782602 325987696 94351388 443150333 987692671 148055313 189242486 853993655 786090912 764059869 923200768 988612084 606690093 634826372 892314613 992006607 949904375 139607198 486514136 252628335 160461767 389894436 802899446 813897984 376026354 151918844 977568434 545527406 256200296 919353643 920839453 5565484 576313041 710802947 603747317 255589128 908556725 102174002 957264014 890032589 304170872 69014765 177452154 961703542 28200957 278339511 323913656 679206200 392847168 415814486 805868151 722636039 360598261 255497975 153859705 332906241 201518043 338573849 338413059 927938970 290334410 334747686 239471111 10250364 245447014 408229673 466451359 954570272 975515880 233211828 180946651 149807463 955765175 339430836 302540048 948443860 523048786 525347119 539194195 801504005 305667720 264794737 766555171 183271722 187354597 922627671 416075322 480673102 734799121 967987179 692744233 176268516 85302877 385517133 539384354 514057519 759602689 385341569 754784449 103730415 654278625 295127237 609294230 862462027 555519822 711089548 365393404 717431394 889552672 350692580 932201905 436981971 441239209 459270139 114621220 348330052 191846160 151971067 377172729 817109881 513666539 528286437 925611504 841334316 527614977 731979666 257170264 455409844 576835117 756675005 281657271 990983964 344622923 948081455 512658926 7220951 424254378 690844994 415600804 405734371 388173838 405150553 117444982 575342885 425065703 660691547 728403133 499762036 385613578 723711870 692803032 120157983 286581174 375949082 806248793 295672439 76820013 801202473 109319089 943786819 982863357 931365976 903202239 58008898 428431747 33939365 237132989 678274994 616587983 57150680 956896671 278267983 278949590 598330862 413645932 802876521 387258335 763212896 490358003 903765532 196658684 869911180 277692331 166714548 228257609 356419394 345164967 365493761 216047304 25930529 485211648 142137444 130438836 498005275 38268044 26714235 360945300 855454949 407307971 483734143 389280428 784906504 378914764 833698262 27198825 917487438 252267617 805188716 165415975 600159130 826776894 961950655 187590726 294681435 641182760 501130208 832650546 477156978 260030551 730348761 328143070 147033900 67175474 153211108 41369974 604795497 414805794 527866492 92896453 699754339 35105853 242246887 64097985 138850193 201256172 707499698 678126747 86446247 346738346 849791585 945897178 451873191 768101651 30673667 414538109 207433622 272435661 890262389 649266798 346615205 931334856 593876366 687348827 639564576 186699034 519593677 692300196 132577281 846728536 128899197 678211188 450042395 557968952 869049623 608281644 110358535 918620904 609743314 626501629 723678103 420441658 689965445 838917080 832114861 35844934 779359590 240896533 383014043 669340396 319767322 542408866 155895984 319022307 88716960 56375222 693359226 318477350 401223273 116612920 69525952 205971161 992285749 106296160 785113347 447894971 380328109 599142432 127624791 443583421 564783370 665980520 329905744 337361344 338258990 774562153 540637129 907032282 695895637 302534500 800142856 425783924 526469113 23630670 229115690 100197795 371879924 551152912 143165039 83766975 889188949 347832485 752386814 311988340 162985533 450080140 515055689 595186566 856112434 149284520 51681134 554577867 516610913 618539497 64774685 293616885 881336031 682133685 93358882 468571100 585978488 62016919 210101905 629240430 327267894 607445399 436083876 260274807 846751417 410029569 645007943 181675989 876068448 930256999 871210337 362803577 231044981 656799877 21694957 922235951 766348373 282701685 230346930 370248025 937175844 692699248 557155710 816910504 668832217 703884075 140545303 511889403 258318661 295995293 92530233 70490807 945167083 272079054 834516611 963290288 24541530 75037524 655320435 220120130 497032502 8182442 314283886 448670420 925565640 524958222 300830908 273409752 901396673 349322461 304967121 678851083 477449580 430920264 627918198 682082995 296904985 693548299 838823674 160236553 917701167 266202475 797972662 207229155 10034740 792202749 208828350 820330026 552440114 836487711 385117346 42717918 817282069 850159452 207956514 233483947 481831566 411468142 482687912 601464333 669342475 161529668 357690709 705605053 715009179 644278365 743291963 784465290 727012581 650921157 623351042 315295689 383082153 702976557 801003781 537505114 245513460 382971341 106316943 265626198 107937250 912644930 753587786 223928896 341260555 430931350 805944587 78780898 503048675 222786488 460691870 328930199 526260337 827493439 347398816 239822898 992864514 714538115 868780305 740190017 482029424 292986577 710997679 75112186 213111902 267079593 914067835 750462675 740863491 808126789 13668676 895426180 386429865 418052328 789668847 838855477 441146169 625820813 499582729 464033495 129558131 273745369 74467209 773264252 175541431 61589669 743358336 583094799 557634323 382914934 129555898 521932885 250484521 762628827 659613069 718984199 873885248 706532865 613666955 659945649 195535488 623881565 786892147 151382529 386152098 46068383 742711800 898846092 249405606 419191656 580687080 810439610 83940930 934731132 360745990 467864057 216934801 11951771 45538888 759157039 145226684 650413665 521190007 771233590 605957045 591935044 812269416 147045985 434844204 789407282 551165933 548099496 689795123 535798580 295269662 663255798 666959181 274614172 988151804 762161846 434492129 109824678 458877298 473525196 213172913 609534531 54606923 603765087 841249324 159543632 782587495 166000312 747943155 975647424 238665864 659405272 191713525 256784832 680477196 692145965 254898813 970677252 923433192 399510986 709090550 990642101 653108687 109785005 880231741 861361611 879085774 62879313 899020584 554058605 665202369 865897074 749951341 151970496 995690137 284759349 630662482 854708344 289250417 759482465 502359618 452467411 609958704 292860915 779681667 144117374 17453463 550563507 496029362 147875702 182435778 344168916 949797294 110407177 180409764 101627105 345482622 932071594 144007687 146381424 887615290 636369111 739130365 170583709 534789567 513996017 306248620 373036904 869121391 353236081 940285203 966835412 477963301 537993591 514777998 216779350 265094467 892480722 576827734 763172739 579186561 501907457 782792814 677293403 571208954 133238033 307773306 87980852 755286684 289739892 821212543 493532302 678453871 809166742 386176984 881590162 390713375 548313971 303907823 290872224 952653795 746824515 7033686 928480402 274435937 777283452 53005500 91500591 363833993 908204944 95020892 71503236 446973230 406712897 697240479 513605052 98013936 847902575 45378200 37894789 380869827 406428380 433920130 176471598 750875361 639614882 398873529 601208652 297464016 891008672 53776226 972075779 636575668 353644527 305930710 649528668 389889996 353592266 101320657 348147370 244285168 110824841 162783037 387874160 955548306 80314342 104625203 548370796 340875852 753717337 77939671 57834181 850171812 184430946 618125441 833812306 104913117 873877305 144225449 805726963 378306674 559601416 299863827 88296598 889486389 295537201 489699784 146641707 412982778 118088468 906967231 898410568 942785439 980111076 703148882 873971887 939118628 62802978 479104041 437013912 655175748 523230038 216966548 132668691 769532754 77703981 472785344 824558554 838671103 60235518 103842964 594599019 109534923 894648161 683651351 480500285 251829390 743542549 165182246 935791385 632495306 805968453 230238467 361897662 935556756 874306070 772689496 543645170 7289015 186744947 883868671 11905378 298017081 281178535 499760405 460359440 859628808 118524421 529336061 803518459 431748505 523475573 867584275 767898501 779110542 530741705 55528155 417546014 975071132 557833150 464094326 610174751 536855168 16494244 853028630 947858901 12020311 716135297 970198046 693243209 251648608 786696826 621011359 934369368 671117668 591931506 581960599 107591231 451134791 392368971 297028008 568195055 596458673 802419868 450203095 182480908 59610028 737522394 703927919 605316966 314695268 233653724 451123341 986414252 443045314 708642279 612738252 991334806 255126822 401812469 743594854 903403618 811108528 224255787 767279844 704322485 729495179 677418152 691876761 864608707 547652671 573222684 152364182 157172765 838374543 126947223 641050825 31273698 323653625 285578311 414504207 188862355 393001768 100340364 164400562 591293076 826041441 521515912 344584032 314650003 156612451 300673117 70703414 924220056 292840408 658845524 467743202 462965907 488968658 566659441 805881963 2304149 279862908 698206416 349518193 136302217 841788322 260822465 243004560 291868480 915566112 960282508 251789701 251342094 52510635 481616189 890380466 983265736 108675111 594089287 95847872 306861618 52423528 398991638 150009459 628284860 317661567 192029529 237849893 935912293 404845892 65649585 692266579 575436783 315712601 95654157 482477701 877648906 580031413 486911397 609819247 394008604 275521360 717247795 298477251 251920602 89177104 502412002 849014943 283569322 217126412 373467349 75659559 584332028 454782948 890370402 7647827 965110589 89151667 655783780 139579635 255756838 262271292 945025017 769042635 43263600 996307455 854570817 396254844 583037236 713965249 887920802 667770083 559866620 989953468 711017525 757007707 930317609 213005861 448865668 719331881 150621757 685124639 965361758 606491366 914919768 232747557 442081860 580030700 682717881 102241007 697446680 189917728 357733683 251182170 786425849 947064382 994951224 176213490 147271479 239019340 990504365 307926732 265372474 931369650 334556629 228830538 601950367 988041151 8393804 354162232 486550157 69142704 755103923 964111048 175748085 78808616 547100234 291468991 395768843 2582685 204847312 749979456 804350110 718576041 121848035 37637752 930090787 189585401 214519650 493164584 242332798 676058807 899478564 800125914 790980072 176929217 919153378 359401758 836344262 445980933 873206200 42426921 79757507 801499741 839527494 778436329 443890891 561706049 96247386 934184397 785256640 541082544 123026542 512326124 55156333 347500194 169814563 749872134 540262877 642949909 570372294 894002782 33112704 193789412 108949332 822106666 992082716 882564743 247226522 30527271 962590338 153028281 59040676 45595387 378671681 698838124 983338291 362365487 848800987 634029473 416392564 228004647 846601119 900240349 737706619 359110135 728391818 202997287 201852177 953179449 699405807 110894526 773804607 797493252 620161243 109909674 975289777 383021667 517108097 364425780 254637390 584045502 373645343 374201323 295770723 268658869 214454971 429314369 976730932 796333343 522484438 879928354 487486407 395215663 228739122 467426640 88175833 92621887 458607034 619925763 45245404 799934710 299607346 103115378 283967692 769400099 434722796 482218501 245499279 451465036 58949572 654094722 389198329 777998620 322164867 507121082 391561056 927202953 794505665 254291679 290030897 330011548 364005086 88611029 39555167 914866415 986368249 400321852 912872540 951680090 116291756 603742561 256097744 209629881 876536116 282909882 504109007 439828960 53755361 120435809 477793749 924118611 648761679 765920217 799347829 8077679 144140753 593999026 173140835 49983863 570659925 439525817 263725852 906860660 553421269 746313741 855648309 663537904 125062894 270389226 54530444 924599238 514007475 293914015 909071928 906106361 640842610 976687560 735808786 937526078 106706702 275266476 230981819 543706880 315651849 457576456 659678402 529690812 360379497 203357015 674815005 995443688 733773915 713015555 799337192 950377322 167558401 238869370 836061339 316709193 697358749 977262070 384155970 142930702 152814328 331521452 971944002 337809265 74742724 777931928 584147317 685774361 281836975 859989863 135173525 111200669 120490370 169157302 548659239 570713749 138807443 79865708 865161297 892552705 354003393 323711138 283488427 702454707 398240932 985487840 702091771 184401110 367932621 41742548 574790414 979767331 634829647 139195787 35981523 322029620 357879297 111908877 88229929 606915814 460572030 779188140 878152787 151699480 572929182 948435683 707655513 648908671 441264874 544750317 893223320 278996675 848155160 439535835 759828226 604839846 603314900 194707612 571992905 626342446 388159425 649938997 642690379 73653990 663743061 411796832 579719103 400327432 425906496 78565549 201476431 55409503 20534227 801478332 227936469 488115151 987745068 106253918 296115501 190413148 625047017 35294942 158696904 782744069 363473575 410744533 21267113 604148481 344477511 981100264 25331182 639394683 455564772 823921983 365000503 694588026 378803027 31296042 516876032 688601298 98020696 746119461 182191843 571620277 62376222 283236196 587803629 587475027 430055705 341349077 183118246 501051081 837124569 9678958 342067975 140548738 184906086 608255995 636946588 275603622 135857484 584514409 692804766 913501094 993856475 630107018 799481956 524786700 497772184 925676381 204758236 32122198 371049090 858012961 915713320 368707780 560162213 921623385 55910527 540018971 786060149 663837897 163134345 711238306 495009901 763872154 943044315 523418797 2732006 462840859 552534580 669190528 223098161 921050595 486651396 709629554 656499308 540972144 805695992 339950428 30818756 369987470 914500129 484025230 738536703 514794633 579178616 470334559 507364075 985557727 279019983 206093478 895719314 592343875 481273485 54248703 136494224 500216182 9474079 466734834 359150006 515735477 926183724 613908029 584215827 614745640 62627145 454016015 660240706 624994434 916020190 405357409 603436703 2815020 162417072 512142503 476399104 957289913 604896209 621269564 314606948 8676123 943997003 615739695 293909985 580730603 569209884 181578584 479306842 650398456 423284613 987367856 895859535 802600153 839052304 111423929 460142129 225849532 206220168 25754864 210279738 692491436 931337773 621021606 712556785 304301980 702782967 263585378 446931575 99397372 145879348 365138078 485239756 49879592 688688909 806114916 421995271 351437728 382308743 597699967 652752424 891942782 38646739 552093023 826717634 843777826 785756267 670110110 136551865 195100686 981153361 74988240 404425416 229037064 11842082 314836730 946246326 118119464 570568344 844941122 744388499 914875972 807516565 565777182 885705700 114426114 843792071 71785681 236455958 129125755 676318631 809435997 880039598 749540356 953573827 230402703 216466830 398352715 68326003 519002451 812755378 546527993 50526797 152601657 273576606 430475343 194243218 999755583 16251405 25685003 88957471 551511541 618258754 556973435 994590426 730956871 184866625 232359037 234803890 442214984 186639974 731898962 99140525 699842373 983084860 939926618 675903751 118782497 683132410 865944248 829612963 734646901 586044304 855435507 132278415 863922559 716237256 570506317 327886743 429986917 643397352 907351781 468165132 558170953 245909856 786302345 882043099 416997215 632064479 474283005 228383338 478334806 437346395 617476265 883430612 733977961 226885147 425775179 962670184 464390254 94101618 343721279 430612597 834299805 366955055 917963190 547154332 448355183 964721672 598211598 20940409 414202396 878205993 37931840 326680822 953770508 797981142 385681547 794105091 816117737 592242193 196167863 811238780 856888019 539040003 877131185 1376266 297024824 120970619 449287852 667157037 173063244 649074999 601855595 770849318 634365648 711523771 166389298 548112763 772435006 652400090 26101662 991507429 837388055 924864505 405447328 891366971 898829303 688952792 920153490 649788002 445349870 19441054 710751445 740979556 120431049 311999792 407534110 848383180 229225888 829825910 927937037 594082512 65462306 535948725 996679521 791619166 606523051 2304316 47203452 123136245 990467600 884141547 504927666 75355978 648577510 913857654 856116871 847461294 431747170 622492938 184851058 881056214 349830718 140830537 498511291 853502492 820537923 486415058 96942724 707227654 245802726 563708703 429472732 714529129 874622342 49522734 199185035 923931972 31370377 910177183 345633025 488383102 242681432 886948525 26106793 861285458 711654607 672438179 313738504 695459005 564644343 951040746 50166721 316825743 923950853 599229466 681720659 173568066 790185672 931938781 664723943 579207853 372538911 979280005 668804677 68757400 455325717 963082312 969670704 480964694 357813641 497989186 353934513 155479128 884169433 474413025 350845915 362875830 280583391 63982292 458384570 190664961 480330801 89303291 957831306 846768140 312838140 635872638 688209947 820862040 334525684 73726585 91318796 501042162 360524025 882971997 535083870 47915864 286715014 962184703 533426539 631500907 102716537 674335218 703722866 341434148 972196611 174387570 81284252 944942819 973899557 845483727 173761279 127028892 493728101 480729034 662025232 509157241 42318221 926326677 622963477 826150464 755302217 302390766 842969731 556984470 655394971 570291989 334503277 359101807 672280965 482302341 823731866 12316417 584507498 356711014 876877487 330224219 78497700 769806751 767945786 355223336 905307713 818871430 179400045 802832576 323795555 873214004 966621704 800243728 518568 131350091 921887833 648497314 869776186 752103921 739559384 938480041 516730860 709507899 845759137 17695694 75005073 11919518 234040398 497996162 137248215 680031043 81211742 970889905 715566602 780444873 209783114 186827808 599819484 855149383 235924810 986918507 386389934 787963555 899280750 630344581 255261718 847078436 534817826 872706436 453115490 91825555 562737551 944118263 141555617 911590020 221547643 471688514 893786088 929524558 487575878 400904909 290846769 920055399 612844939 496333285 537680769 727419368 849512834 104392689 63638286 438311873 300297701 414202431 285395848 644528596 336178723 698353462 836760918 291670637 697878738 585796364 560603345 577716115 786977391 225129822 391651378 927610081 305462557 861000090 768801232 134968691 738589920 594059517 345646467 298494980 342667547 445492827 615689089 768710181 843145111 612926153 215231127 317622696 563157205 704748128 303350540 771084265 392731444 301827084 839718179 430562823 31248786 312559033 419631524 255510109 739496087 219833280 831051532 107597803 927247557 412729386 791488283 142143271 179985576 164627210 516787383 515537310 297552918 992651203 315635144 816258038 842629231 785222437 72037422 133835447 603221496 388803628 107500730 423500587 407811741 568608664 753392804 14147041 991664091 803917042 806622019 174893682 438305996 846642680 591231452 578585250 86198561 488370779 6444049 326322276 535199587 392757623 827603071 323550228 99193687 146693545 574707200 142112161 593740256 520365591 752287032 450530917 304537840 354481732 66877303 642362329 578480140 244642300 416068347 671262324 268868244 599154864 325623231 173515325 682659241 653095405 62132999 997652013 150375814 605282777 268125865 453229275 115508749 592023761 858250297 613338888 81636285 290323760 921213130 666216013 554465370 132118420 358361834 619685406 789946815 261434341 296196832 305503199 488885474 760892647 516142646 181916969 606283714 601787200 356916922 16570875 693947797 953244358 664550276 397976623 244177850 84402394 578249926 254772758 647572457 919986436 95198110 28250275 994320344 937009816 134401921 636219522 671718800 460331837 651167712 399365132 44235394 587940590 685049042 906747692 650478380 600667026 165037361 808996013 773383858 57434312 66932823 189545424 367304843 154522826 850425557 382256232 364681433 489098652 887506316 235306068 588476601 253025532 668921656 457459149 592824475 19602050 238467736 999417052 227017665 813184059 364876881 788239985 781967290 719813332 253314637 206933190 450033147 794683805 676282048 186468733 963698348 163186099 970237076 730316368 224631123 207547172 676977498 909421078 546819620 915530672 822979418 699392849 628007232 817273846 565820215 580620517 238411096 900481413 806453157 59534109 729955566 253236289 72559111 460466599 654141983 469320543 356564451 971080859 574712647 202831996 472712682 559039456 802840875 128391524 973960965 713237262 392017031 210046728 520121824 565183639 956119803 481985543 569210448 595712930 799421235 853923488 984928631 916874941 730128470 753674635 397744521 937404490 468161858 921723108 155998285 899391750 227784280 595575843 987913024 967506452 246450782 671111405 72770315 969959359 926393074 599350148 49568513 478866554 46547620 260004449 527138890 203810600 357400404 907085872 849104670 333480521 170723124 284776987 37457146 486560180 341200656 277658570 110033163 401349896 649449950 573367601 181777016 104420359 566637674 135522197 179440738 950439265 680535558 72362142 558397342 617451650 199040870 70639538 408312853 557250465 444162562 937454577 238398600 286167313 652451483 436386209 776247988 858651030 344215585 305931343 413374764 615934466 654832846 305396980 973623171 674281991 852818618 702467098 199894861 736750777 593960897 882166939 445746367 301157937 50216771 60210425 948304666 53860757 22058820 552934286 103563419 475290597 418590592 391767527 899683055 399612511 411807557 761430312 895112414 469026135 801356784 186292051 840222588 417798991 92260106 859407806 170773279 42490731 411993391 7248286 850095730 485464062 355685984 518243907 900395457 949648664 23648118 865445446 774623821 596730842 597700527 912481222 202845759 344987620 989999027 181468680 974628180 125864840 670056557 35024412 325035725 354516694 751353699 195126374 820591400 218377727 974287044 207737322 832976945 878437349 203225260 687574767 205081321 617009134 38701870 108079471 364335044 561189396 717552841 396771027 124788198 979689754 922143532 233200093 677584971 337999023 910874827 903465438 732572413 222404955 259107987 488806795 695607881 509120481 820587570 982135985 738228301 271731374 986615143 100271804 284803785 403903507 484668324 422550928 466811004 978939597 619749627 958070925 244002010 369904247 277682648 59249320 746204395 686536568 621344291 465333892 869021221 300345603 500417179 161601187 352186977 251744395 342485132 241042077 49714789 719164349 931428985 482147400 136678098 427913159 201100476 301705197 516885120 584687081 225433505 220869106 940732005 324337069 532921521 111164961 171528464 110365066 813490378 389659316 191513127 579105155 961793364 524060092 341026911 960765149 168769761 128237927 367044049 308049950 568854451 879915818 403617120 87013040 890957195 490658505 767902702 219660810 433258292 501408931 959574988 504383526 563611099 896996956 423297464 574337129 498178026 889245314 264326828 584354577 968025009 239109010 567628130 670540996 26653492 269342641 959178442 738093328 963352751 973277580 138393593 895835417 156570379 841291284 411974698 713121685 203497683 14177825 859566821 796030261 694960093 644669013 678003853 957347228 504491252 229791823 833913099 987561029 555040717 591815848 179713313 764280830 471662772 475273715 737169329 912015971 401048595 136317666 287804721 236226264 327621872 562841189 407263224 363113049 178843019 768318954 428301339 460324648 313095200 226424024 589362542 960602045 486822942 279002279 394227896 641408555 802615937 836843622 829894917 437772294 998252996 836417134 414575234 327703717 754374050 216047789 766116669 358634921 430182812 211825840 664198565 548289722 691072141 856540408 62096783 832483490 475661203 424847280 613672954 521500347 699076713 491360677 615610981 482449139 456097501 902111456 565875438 801962466 786350385 673560943 484034761 844567699 931656809 995525675 423101656 9932334 526300226 455920005 255312004 858223439 111445025 709683414 643620016 393165791 888585613 433457142 17173882 489367088 85538905 667892379 779191553 158747990 364286262 143126632 547137389 747736151 375111374 91345361 585548147 122530008 268910198 439897610 800627707 33303213 392933837 42670575 260867274 571016809 856588344 651692215 321645958 178499168 204703353 814564158 671392035 151675901 819555373 221489457 965332369 498453103 378219725 726390406 778112263 965032826 863311928 985539872 202454323 133332421 907583663 334473424 942199190 64645312 766205398 922551942 178345260 982703095 873733674 514553444 348630715 157431852 743054762 707708724 81880962 935616215 606339508 451473661 685972216 174958380 454726599 131306873 542823799 600589671 979920349 268678596 97988402 828794606 386789518 200633607 444341925 948335349 501062111 792913707 561616537 826116578 305780832 79985611 861215192 191301654 289722323 83151305 341638223 908560151 681215220 661988805 920980476 954756301 233219779 774228973 641426983 472663238 658069893 28604499 406363094 896679441 14506998 716079673 744130650 588676299 631848428 292525559 887548514 650725253 8989314 436212000 257716641 983782235 54231099 350079063 390311549 175832417 386438659 738154074 237062402 126625956 648080719 390162109 72084376 442153012 993561710 670982102 433365891 796442318 548978598 797849333 998084159 147864078 96080588 205815949 312810957 898221950 89545451 614028278 560202534 310409672 572737008 992751576 651558303 957615313 449831605 376433433 435794203 770148470 404663628 571980757 616683555 990991635 310532387 708446533 263070219 948011962 155069907 529837219 446785260 426519708 751661458 27625055 611948001 933553350 769916487 60562157 748972985 515087059 458339211 950937466 15618069 418387761 883442839 531180274 774448721 792577903 397897665 978022834 143446181 525112628 85717584 930491181 392637053 879308696 913426224 756451692 682651112 629910706 830500353 886343812 573137994 332414110 900290994 969111698 434617925 365018256 834505812 718610605 163595195 235331123 236550991 38013847 683069427 983968623 351305388 697516488 333868399 759961984 568305635 522092139 753207730 406419996 458690724 879879500 18268492 250893849 856910114 583541341 966058404 244479441 495008271 566714947 951699932 976936787 990308246 492697531 381116993 65673552 366146955 433051156 409629941 592199574 589131532 473494898 514554096 925922840 615241269 911547700 942412073 390019072 15398716 819964554 396035139 73070111 79378125 637586894 896537984 698186869 340912658 830087741 786709182 303396064 621981502 969288369 887140165 971827485 169653134 958559921 828701615 336914549 193118176 460856575 679870042 414343621 88510069 408246808 852887816 521782512 825604547 695010861 982757697 969887780 682964809 499569878 546485627 901590014 145936164 370203666 876519555 266325365 691437982 982456936 648059223 440334431 589833747 331909243 289013731 944253810 560390939 443427064 664715023 274846167 231027577 522698829 122294473 367518742 380997798 694041616 992960611 601823320 255356119 266543300 117504570 603391688 107852792 612590706 401203397 441328875 94171980 407216602 476756038 381827243 169857659 106325363 720954264 379889258 461078574 629206995 219362479 117958187 774299621 954098050 11828854 682490065 658517166 407690811 382453519 889620824 253241311 425939174 825943769 404406792 178035907 371728814 355269426 422418263 75445983 455001922 967018033 862446025 984220548 802427614 357800053 406223715 999250489 831500605 305984303 209686109 70970154 918193934 233002752 318548854 588972957 809309308 885438327 466491533 715180611 598374173 316796792 867683544 261855727 106987964 70036320 153273427 206995858 714310553 100260502 8223 81006063 977952121 506936369 16922137 86501838 818573804 476914790 439422786 584331507 674778310 848792162 865915237 326920014 946785919 172851101 163086488 773967880 16766001 778101767 316820962 906108503 362967360 762811069 362935517 622789705 472352081 752165214 248695367 414084425 320516450 346943271 833041346 801748594 364168852 155723389 602508776 289143709 691227061 93907540 289300132 764182370 590617625 932681208 383926464 660692549 60387340 429554011 765509213 116300721 793881520 450666792 38694987 608832102 300937020 932832299 140341353 638263169 729835361 797908704 666335411 942543567 788414115 142342336 41869543 871024127 13190546 331816595 175054541 889936123 845438644 949018358 7373653 107045990 314507775 312547570 528211927 552026110 9478470 502956558 639518038 73490297 138491079 471731165 135142623 300779576 37451655 866827760 145071158 690761344 922612841 677012282 989408121 472168275 517128956 908181905 508924960 421473721 700715072 334663960 539981979 491962211 317234061 756166891 59815293 987608076 78700084 781469871 937562783 757860225 917077186 694833570 675512711 107408410 323338638 268298583 125301842 651747140 609856106 353983900 400645047 748002100 958039255 470862541 884394163 230432034 476835828 984042523 295932460 338069117 446813289 998519472 252100821 142665575 665514734 354733451 380157687 70442712 320400147 421503051 923660601 927118124 995920887 432679377 952106377 651919871 773052819 763794070 119891024 606831499 179961669 864158424 805700023 737384477 1633323 65881924 624493066 977610981 85872767 573544565 939240522 974357452 654263057 751018175 470938391 3508393 408147627 791245623 835832557 545067230 290969269 298343829 1074587 69109824 25763648 466802917 19618061 499231844 570554468 183067665 665583864 709741659 83977424 608133652 804726993 150997397 947530161 266931722 410270991 790058321 949675241 32107234 695359848 189919710 833691788 143164669 841643338 411085663 298328786 764969801 829853525 461489751 755526852 319309770 821784701 244537590 251026494 152754814 381118655 381157670 249492410 846363137 642757668 674015556 22099259 513065719 856444348 137136098 656291008 263433142 679072808 284518274 83286494 96834912 241196920 23478493 595838089 744450551 954413479 967800379 440651649 408899527 835647676 419007097 272439580 770048918 493504349 937835438 969168538 851947117 226108945 560099740 786668283 761765982 635375019 834666194 533268060 638142485 696459657 132204736 938034014 192212259 325243098 43869296 42107951 402546416 700918567 735825823 23428037 782615242 305742831 205895568 923088108 123545806 408485384 986617284 936036077 527713114 137237770 899000835 48644927 263728485 517212246 309485670 244455191 761253108 151339658 995260829 523705692 13757293 853182592 254951875 654812138 793585066 942937453 779845585 381929762 512843197 584919173 110927782 205030305 985625760 962827393 497095757 678880646 812620657 434733612 702275074 734100028 919719324 581616048 327776524 91092905 380934429 650179477 112007082 510045950 595672165 109146372 723909859 491797279 197428067 483379840 78210187 119457853 638160644 787603931 963110629 100548565 860181471 425796638 754726594 802233501 556963954 404167432 128532916 66984113 163873442 540532946 454054886 331478725 826935701 535544346 858783537 460202189 774928457 341156910 136568262 505174538 638464858 314049503 19089485 310635810 989373194 344657541 107019433 136783993 635392874 495236254 379201382 103600834 577268631 613074123 988321260 871995758 439589526 302132512 600431231 864033323 621944893 614313418 63595081 501823270 292524503 778044755 701823455 346044556 844695628 430177387 548773215 536159734 720353085 128990936 786235585 719568655 582121299 114912490 51965554 103756017 192039735 57076565 452616450 409306938 423008288 542075893 252647267 64163016 708624925 748052899 465444133 44615826 654567808 834782687 807614477 917213293 323960683 313313664 204100778 160001677 518404236 986383016 978810420 842200996 261654278 773149730 910720077 992143115 265724867 955569133 814433295 81212474 92078743 235250511 942332349 313115515 674803165 361001776 810346067 692842850 8687621 420497716 81195288 744944333 460052964 857811537 841098512 777770138 938123644 929704142 697815920 20092149 116883431 51410863 27860605 31166693 330502975 214993052 157644732 808803527 678791196 854231939 707107726 625176781 999573543 608215308 670079452 187489826 737497675 660157248 334796624 337004681 760046883 483449045 539124034 330454919 467332190 622986283 188906929 498671475 250412494 13937027 414801850 511776594 187513284 739816268 134219798 308305494 737914362 283735447 372612336 568138516 244564946 435855073 276825326 301785124 238208133 180554288 567793383 155101880 969068797 455419005 994226195 983934999 4085304 923637747 737128408 493936367 192823535 964821112 763149341 693381379 879495048 853404644 47859756 35571710 171517974 968157249 74489806 728214567 752214864 99272677 169193541 447069533 106095698 681829341 665734365 381603541 139295706 984987462 645295238 128778079 528491273 419356034 367668119 360113773 653113117 563309451 393326929 18369193 819804883 195556450 131795305 341069743 223381721 577143854 543972504 17140165 146082979 68455057 256152199 146201670 353704028 848940873 483834222 825875185 290819129 925463116 170893605 908683681 722843697 873005411 376627762 871832783 440123626 11018563 677972881 519257835 314420009 345376620 490158561 678969623 510032032 371509605 217776111 38537382 372831357 121150779 160662728 226664734 539425611 911259216 189092659 109542923 7795437 576775127 450113084 997438304 725995096 843928229 543677671 473374355 561811312 946663821 158019040 301907257 865363791 339703885 286696619 360235210 176882477 837567377 648103451 466571830 889883136 620828620 202679176 923081290 103799712 784620857 8239999 664768948 965781060 319102036 903935791 924633727 391381244 493321739 24653687 351761624 193105363 595856407 438484792 562962944 712652893 680970477 411205330 563945695 673151967 423187558 979820747 128712500 201268004 336588553 755231288 341874803 661865091 175226822 821254789 739713397 147709632 603640310 199563270 736054425 266736739 640710745 762083485 446162273 626884689 162354502 979411823 931209257 275728070 628066213 112169987 592880909 294728572 774937312 658149587 217983461 638667296 504950958 485598710 440802577 861474758 828599166 198883792 585193184 553921766 445583077 54067643 95257702 778139172 937027650 45305995 881458952 458002883 351003722 558201508 231285333 188350762 405570159 52404828 255538711 119403418 380795287 523965596 705310361 565421311 155904526 303492026 273446701 819885764 299634222 956848009 843930724 686346478 195200276 131218707 848042080 153542105 463066887 975364710 630912266 750436451 374061364 188151757 394084397 467521744 210121805 236408125 468595162 911110624 456814334 843821954 630012375 370152283 941940481 707231288 623005693 959499882 628451070 101517627 734047021 33044352 521689353 908887780 268166198 229366238 503042991 952411473 968859051 976310815 87299764 763576790 58509522 946702207 571105427 411615193 710888559 571605666 264460979 236377986 238206804 239725874 496029992 54633313 617613931 435505274 802933285 560607192 157750093 94158705 485589377 128570506 890908143 44825968 181334676 142630476 161511292 944424770 797948183 128578835 522008400 675517175 193137456 666517710 262381972 146832682 250862608 218399935 666176832 944714306 859943171 597102235 440539290 818169990 357939232 522659982 37846886 535615942 365409419 474492449 924303752 487874124 967408590 725325828 78920234 814929678 24921589 538427436 524358503 865131500 285065909 301645375 374677888 335026015 773459701 852267827 757849517 96886233 11327536 733917383 76447150 43501145 835307153 686896501 461892608 780862336 204341528 914320556 400209816 957580977 410543788 278682363 896642010 786980317 825412688 774805961 376095608 957565447 10056416 468226670 781159995 520272920 359800102 655263448 664896585 707351523 409335800 674556327 134886358 9696446 831560088 262339613 175064257 97100326 95771916 814206732 838569783 861777447 899141980 438856458 724262591 615540419 397109335 183158981 538629801 344716041 892935335 886596027 698345974 825492654 942305485 338244942 7648243 523020845 357534378 745389241 653714652 193591910 435936913 918480754 237024114 785684439 410528746 520432502 235440377 671720429 401499635 261577297 946075581 220465312 819002774 29633913 364824155 413554708 879290345 946162360 462732743 110015839 567827327 972915739 117313845 806652963 639134869 649014764 577780745 743547604 420775450 664008442 246940640 341008861 888286977 952850371 315341368 943347545 360412629 382753225 473778610 57160320 337153879 870640732 932417081 557935090 359148570 707740766 654614831 276465991 669744032 259655379 837401352 289187989 5668936 596402744 851364032 36037023 609830321 674717443 146078851 836409412 543316440 164621295 548381899 112252323 108148834 793584122 866093859 844024035 940841841 977511610 610616117 202842576 177408436 75275952 917556637 239316036 103071783 998580541 314115430 210511006 355375360 199283021 287258946 708213897 774313399 823743121 318497821 4493616 878126445 260630769 18293004 26786159 58197029 74467833 136980439 377317095 408842727 567628765 139776466 760034360 345203875 525615073 146896263 461508691 671097438 934089979 645553120 985564069 713119628 390577819 151245811 697759368 481240657 764134704 538865929 715762365 255039180 452949955 356871943 280897729 861367597 59515507 450579453 942313948 780439385 957048026 638272112 334958500 168867091 612879507 519492041 248482108 974579576 476404766 998752123 298438301 297273281 654029081 84383702 154165710 46758300 639789265 562358900 246963062 574847382 51385700 725101963 97060387 792030554 819931131 443498658 381521574 138623332 637425362 738388218 237088805 454349844 560036390 76952447 947237554 374272103 218475694 671980669 631219393 85733882 683088512 219339125 69435478 411563513 932589707 152597477 614522301 952137266 793383894 383875663 204036604 434187990 990833122 128498421 405852363 228322749 717857507 208331560 715246871 22161320 78093293 668994380 978421387 136621258 619536670 648520506 291998201 796585379 36559839 810543269 269058403 843624200 309662672 754689665 132149372 209627130 229554051 935674677 709290359 614473156 459307938 200517689 973308682 371826136 61204510 371849059 199657110 511735831 291750681 988653749 737472236 54299085 513759384 687037905 381636267 60920351 633203579 405610608 987387740 443349734 500339234 107868697 645667489 505699812 90861035 642332546 449479259 442464804 960849280 657484757 541719373 952664556 811704519 986567977 4095568 445962237 154771714 289179003 127920896 514554135 478505927 429412793 516459967 626474084 477057436 882436702 881375930 770771478 690053225 952034518 926984011 983643024 944022550 221907140 173119373 725117510 451972228 198719465 539674351 342358652 158918341 969769383 358842328 587845960 380650793 452550325 759553042 356164534 727495050 493589961 29113149 654436238 951010277 69683099 682515864 617881661 819188433 16170195 761755635 871623999 564335955 475655273 371448928 174318840 801168285 780807699 191020976 683771193 966308739 663373722 552083567 805332204 214381735 404280756 240672288 508410777 545983072 395213805 638656907 80156955 984640449 538811223 627220680 95525833 501605596 845382203 88102518 399308698 725372905 398714732 795929581 897387587 392409256 609620364 561949099 357286372 658345833 764553121 384208136 111708250 615583435 92242176 487158628 45568358 775807038 65060599 856442430 260840775 122604983 279615934 139009840 363647619 409604405 915252450 698194726 888735044 750575493 932543682 255763500 531253253 87482206 924660781 630610624 739838647 194945 464208940 23708930 910864647 534191812 511131694 630721948 225828120 81824558 227875820 521630806 158573172 622086824 869277025 803145676 814682469 200789887 696776786 928308442 603142631 745669171 868152205 724092301 7114293 360555037 153009803 331955287 821959706 87256389 71606188 50955012 593815344 758138167 754794566 780584702 760408590 684648877 171356643 301822504 176572303 807902458 183431407 986112392 731592465 546833862 316773623 267966952 406751484 541067501 469526341 309935182 570495196 822512973 364597622 904255823 477072082 408743282 964889066 724305164 9550237 789496656 215827012 531007617 806864012 820852283 619606717 80196253 36698104 364467145 124138217 152552825 396423097 677078441 194649024 439668071 849639700 152424929 323152411 408134801 359491988 739550551 982900522 43621305 575805093 586608690 527797729 575364666 490155996 687274286 843157214 459115791 707387713 238027428 155574615 800439925 173024303 128275984 631492596 56254212 393099920 695581031 818511668 368725153 994435331 671763023 663616287 811671001 888034483 386106265 45166894 626162935 475899630 221679561 384878488 42928886 349119012 205083432 640009716 418797400 504609512 668117955 910215387 402412248 979622891 225715212 167020125 777515260 540923550 988609507 160042848 621826702 535004610 607230639 986204240 447433472 370628230 741498790 4906284 595507383 40299613 572837196 932588743 684659642 934264473 668694455 551740193 66262875 107852581 403669071 508516601 62790150 497198881 478415175 564113422 983308388 950055791 125581334 489144031 399689918 346314106 355103023 75033853 703802846 540367443 330891595 995960398 790985243 209789700 745756541 593440236 348401080 975101556 824335284 721283201 608544818 945685557 923221651 195559297 956481215 807214693 893373429 133048055 518245904 700886454 459654492 247377258 417372405 574702829 356601692 574627146 150992639 914358884 584997626 174801291 122178616 666350488 208529890 809473461 557566498 381298097 39085733 74113125 348290021 333544223 393693391 709248567 145019762 816880943 568375517 363419723 84136863 560232078 201785793 128725295 686283886 710190175 716950285 498084821 320004644 100983624 196892072 150815438 492984370 941515816 263581748 49975489 931160193 772746619 210352174 697976908 162561249 514088681 936579750 728685518 955547127 156356370 118067741 595627348 196424626 137623880 228981418 321286408 424442000 715840823 446434126 695035075 170719742 532554068 797555838 957071225 576783525 458495389 270677279 594342899 220323267 398842395 558227601 888392765 801860885 686480553 217476792 643784752 605063007 39462384 634470414 38996576 253786597 79706008 940555048 422083348 193001210 245551035 543110014 843433118 93114646 475011625 927219617 630601180 261770862 558569096 166342196 899491024 958787586 650867836 271794655 147535263 328256034 454234338 435152444 557995977 189311069 823950880 987505061 599510181 106853044 231307298 705417852 25674280 637829558 933703152 510698098 747133313 811266548 326473246 694185690 998088668 820822617 963720728 671083018 330651344 650305036 806317932 792742818 106203490 944302060 8329534 421537982 33243102 397851527 371607484 238662819 650434824 14959213 842186293 466680589 542370701 628875416 66582628 909618027 315108769 258924293 76084648 44949699 95258180 241601850 748514233 22526360 548689355 510191239 186787874 448289984 878974999 542619146 665814492 33460684 797898999 764805890 506116336 12343442 719071778 130562018 274996805 709906313 255447310 162118499 536598185 47684946 830099548 909908337 397243230 734305574 84875010 102008795 520584434 784632083 589341714 920932214 166822805 962993359 865133359 418687686 388829205 336326399 421067889 597353149 121974779 70860571 980588169 587562466 355771016 911587472 916185001 234600104 389993862 724782324 494663647 58110824 373582074 55044318 871530137 189275055 87522138 168711857 272159447 538875312 952599873 975114993 92407257 408968163 529997746 217161375 477623914 166559852 956993095 542471973 401098002 345300427 756231300 467404842 792433291 991561547 804695523 803558401 649080983 390764681 843995430 57751759 98516360 212129111 179134309 459436079 394968841 463524439 411954134 926270546 653514732 713998633 629924730 151322448 492407325 20220119 139598371 614150801 798756462 531885038 955460409 3407044 332365007 237982768 214866330 368282067 699389084 947049867 602799269 723920234 608442913 287341458 681157086 499216479 360968845 95068729 787729447 754498880 822461297 585793013 461418904 822469423 467227751 293354623 595201917 93289455 388774067 107567644 867930901 690313146 122647636 964175523 561161662 79562735 26802338 232665199 97841992 857460827 799754597 942127955 426185619 211087011 710461375 321600300 894810213 716357721 333441822 418004589 130688653 219200611 185930294 430025812 169069119 561823934 690135725 370295885 352720551 82082236 367833497 704823108 638160238 232940828 427474054 840070969 787376585 869892448 86035678 881601563 724628173 376543811 160261027 605245220 316988389 740051925 113922978 867357751 156715445 551031124 820222438 545554388 628506917 168762519 436360963 912720524 611704137 977828779 437820695 406779558 278971666 264748893 561229111 247726281 810877123 985129153 282946475 961145846 967793592 219458713 318729483 544209381 694636860 519962897 292871089 524252676 76450636 33335310 754146490 413079462 270653415 245685873 805588730 933964209 68442487 190898554 366575811 475911503 538761968 397054046 797172022 141095007 4734549 287389777 76390580 255682997 809826127 163623645 662724821 478655459 498218528 887853364 123483112 853120412 295751330 66379068 558409760 250947101 714247850 451680081 122882836 995551591 102431003 7109373 865194885 255785246 59057069 730604746 761569233 844763302 194114099 478855343 292866920 655750352 951410179 430721054 158455824 42626995 318363989 422775618 933675839 334591963 873111362 564745486 925922013 765281787 832975515 320068118 262952289 583965957 615506890 934352642 643356576 393464826 808373599 643150140 60054536 602893776 93373492 5120739 491190793 414845591 411781770 103935299 556840539 865854413 269594829 465971595 468091982 88721717 660805178 689597287 446569146 65512101 799048666 432684428 625407537 482365718 945370516 54670753 271902648 769445249 49906861 32009511 340209654 976429270 95144099 589273640 631069031 759594770 132004118 737582942 72437036 740684983 246584647 488445857 87307667 903810610 660548640 750888264 719770781 200211490 896628366 322950656 831240120 753703187 416483024 144539409 757468684 278398008 234269188 836068117 650140471 338555087 24144784 226503542 840531102 852198344 975354140 128522259 878535968 960735839 848574896 340242676 774598444 557734646 435150792 882484586 582105220 300271419 711842542 752376131 203241956 568045949 870558787 556501517 73619318 557247259 996102696 683790814 444140435 773302893 442539672 972137814 230314787 496285704 772474898 749497417 420500706 287044556 536722342 168740603 60853433 710330430 592760002 193871992 628733804 857721535 306318481 158439755 330215992 278071010 681389595 683526757 81099027 32464032 688976090 814333995 273811151 978863837 790626941 328744550 357954375 498167857 99940765 100376225 789400717 387084828 501789717 962063786 717958499 988382139 923170189 129797987 74743136 855955306 272538190 628391069 711184325 350414485 199674014 269982460 688333789 471247379 494328598 812030422 34315498 254533810 529686602 908283558 88281 299646995 344083636 202698664 278501554 876132923 470134818 17993334 493787772 449716486 79136273 853124807 925360772 341460238 36210816 826501628 292179601 824379525 264797847 576598417 443151992 468577783 848389235 17590954 590180916 669922051 422700241 625062403 723180039 507716493 506658784 261659968 624477581 770652919 568358979 18749461 871862159 921250189 549694772 236088598 446194343 450756961 422991673 748155109 139383674 811577832 64001624 294009481 864823666 795658204 136142375 912543272 734621575 839461337 562297720 888737043 115513087 670763202 868905368 11770320 370274623 17361160 682148133 381051971 924611491 928986257 609068368 979855966 864780390 756360036 791537119 928607868 973810844 967757050 914438007 640933914 24964655 942491703 512547363 759932893 565984553 727528718 399654567 601444744 701293141 420185963 450466511 893097541 147211456 690176437 458300400 520098880 330069666 846149436 846098015 59615242 621671170 974273222 76092040 315435675 46630663 487780327 142924115 253427003 38329709 951670562 757562040 670136944 442212786 997524162 899361955 562393588 426500069 328401623 9741007 405951000 825843618 839242347 957272378 182373264 452324630 313350209 649311383 397161102 388750891 784338970 939779428 304264535 405090602 295033687 345123352 393715215 54050918 617398960 894826893 802275215 37040762 370567095 535833639 57844017 54365784 125802706 793122490 363557816 623185608 585997994 183552483 89735973 503178452 502084336 606198882 271604069 689963311 303042997 384832775 727284458 15633297 654441046 136642829 933530663 570439762 897297128 230163572 737475367 969761246 831068800 77921457 791211595 68157165 978097123 553379584 345951170 353267553 237221569 40541317 271910111 524379284 141893292 8446797 987099792 505899506 996983380 330733484 652276443 514227607 789468435 387786083 653205038 805801074 240460574 202602711 517217093 706021106 152511567 142726317 798348173 424690417 401526502 542465641 434554335 410979665 489706872 136889438 15720383 289765487 991941380 20881849 503062210 576819588 510594484 441939582 888882386 793589121 404105659 118424701 653746273 172321097 227791831 702783213 847231604 708757672 370522054 662652846 995706694 619173047 430081524 105609154 453387198 207507621 672399617 63695196 206293790 367611629 781329329 24534980 700527244 144667406 157401698 390927 743502167 289128374 207104987 379735929 281010338 775839701 721613332 286373037 961814138 193962376 834886365 42333674 899299811 365409613 97789611 622815930 984721206 538131424 385307379 521505301 914280963 138145203 767579891 523647339 270733377 726803355 146988925 773863981 532872626 860624915 622180593 186914122 285079749 479804080 188544610 850696611 794419196 114801479 808767970 466144277 577270429 431367064 781464215 748390285 324886226 298877958 844771320 187646151 165023892 944806476 743399133 922070571 317596214 812594603 709725545 959623663 403254563 177955283 941296784 934403127 363780065 212996804 436070849 983250556 958001616 251776994 740794197 536233028 121174906 565401548 425745821 164164900 695046064 735788871 808834590 107676364 93755687 593127104 639361108 688229188 304395460 159480477 376356149 64031061 428300328 244084278 907242608 296533588 356583029 51198208 801637803 175369005 902546523 44435978 21249388 918181857 44601992 809424255 764075024 250270 387582283 696933797 580863333 44510305 487937442 743762083 210205430 894513443 903320014 344059445 458759873 924750301 930356544 18914628 49187503 849406396 564591949 704249878 36747237 635583826 829618535 233381610 553015545 151870837 696108373 223487580 375844083 600373108 197593909 699549169 811548889 671802295 987602455 426321475 60491406 945335547 371862556 690155630 12525352 895225522 844006071 377532403 666625350 661649275 521555658 508987691 18637613 618447415 506781058 516522451 320634876 440713365 800282353 49717999 660844868 812645315 266034348 234295119 125400697 863243328 271895288 333650480 718626491 371690293 794234801 687181309 715259383 783115137 278567492 561634662 106873995 255573013 404563142 744596029 196493624 924977990 442787487 185697586 669190423 807999990 242361409 484109378 529707976 736763538 318071583 82944928 919417333 69489677 704032183 500895567 624616296 990319907 529317852 177415023 911336057 916021910 671211338 334725642 992724814 880957715 183277713 52824032 950559604 615992654 739080439 492933132 657871647 809531767 792608709 830264452 638995694 671706543 408852413 746027181 989744443 831848525 424857239 623329386 147853592 107039300 404378639 502117476 640527373 341779165 893081937 633165271 361577523 777169825 742230146 775140695 145296838 602055709 184322409 942404213 480450938 640589579 963005456 66476934 987613379 34314820 70942999 129881778 112025284 324517256 493505861 244140666 743197713 901598854 100342785 757345649 618211825 855043728 491205817 669069755 469961678 476103891 794007726 964731549 135131986 362604249 17816465 955690339 474486279 648577148 704234480 458270550 556830330 246743976 352965167 739198915 845697926 358841 603878223 785056850 612321673 626588686 12213603 793887324 543496134 320008615 962138327 706853319 586169052 255980087 889556291 36684658 772392463 967083353 998482426 62058648 299719490 823062637 587087888 461940989 279505014 802342756 397067753 55932810 353382523 70032853 329564588 930723160 499602174 878352809 718871924 701849751 334024765 862761899 524747769 127557891 166976296 698064290 936543575 109406976 688015476 317534746 567346020 67452316 332000055 266830537 778860707 265450172 234225927 862812144 799190804 665487689 399040320 841749506 551054998 648809072 286404835 605725919 120314372 572217610 93816165 151381721 960934110 441203360 839901710 125474769 334537256 269204636 859126730 596860750 687631899 338764870 968095724 341230763 421358603 373447164 778008850 736301548 398105659 869731317 168034493 647367877 195701650 595625576 743286258 961417153 311188353 79837635 712773350 799320800 78994721 564000879 979925417 623890461 937670088 896403558 168795863 788795834 253970659 413132815 548982631 95058597 592798923 198114203 264335759 713155376 992550478 226780543 824653992 636253077 370470416 318197458 244581239 693070823 490560223 46927443 477292736 502382237 565172218 202959233 527444909 257551305 222748670 413188158 107965429 222618708 227815190 948526659 133898748 503791174 246429758 125486193 776323021 662233629 816151444 240660503 20247602 775135785 420952822 293555453 49876048 357486734 970975210 432490469 250943049 36253315 505631525 216799757 691681098 859572375 707362949 608140659 766475687 144841103 984657825 704368950 109148135 992564905 831704171 106482259 410552562 977555982 483148277 528430781 222964651 429705674 478198960 546997789 468715507 891955892 662890626 362830350 1080606 66527304 430831179 980795394 320931839 405242116 977510528 972572000 536324338 219727176 233570199 647635802 285123647 906437240 781325702 809343730 520766184 227890475 731036311 272951484 775687983 582102004 220200743 22551127 775774613 395016884 820058536 683280809 169307274 673238729 801477368 53065642 834362877 10109666 550283395 998134170 273298750 484320650 288658302 340492270 595483905 196270509 801783361 996655168 481938275 583057106 564657978 256320520 211643144 100284888 269925078 809298100 845810970 454443468 828287378 13885564 194431631 328359 238914852 847333230 226302551 871581676 364347959 541208470 193862479 208903243 911555741 186196850 327871186 99620911 748988593 599339452 258010957 732505993 325493478 470583636 205871675 64489860 212063027 776754912 662151524 606593483 972328878 35021512 440409898 318141080 671536034 380477091 126434419 398116889 353132533 650004438 14551782 845958178 671030017 551754921 42575405 714914395 128583674 656727924 672214992 791388404 118740498 978996241 581150776 304128292 335035918 351491273 985063432 508810497 719501859 502943335 70634835 799246792 854282298 270134143 566584739 681918784 30405055 593981271 533565468 691053810 161873327 48441897 821743767 304410972 688457793 939901649 778600905 704642764 256003929 531315004 658856410 653235458 390074409 129466482 557246159 138473388 867076696 476013638 769225609 381552748 108389306 188219398 931481872 797986956 632627301 558833935 644581996 975461386 238583292 143365880 757459145 617486292 460129230 992574562 294589767 71987411 732807680 765615764 374836004 615649118 762828963 997289072 550185714 251196725 846763668 839006478 92992841 2467960 511073361 461400824 45046269 89175661 929995418 77614991 225241618 349513094 855360909 63192329 887814608 391646475 689187366 561158726 120544343 715283460 344053215 130910622 800264387 135845633 218363691 571720823 579301548 519276744 293908833 622605998 688651144 950670899 53531613 283887364 399253221 765690806 354627649 472947016 701160392 131180688 858001279 425489 701060935 760553533 613068869 695642697 16071270 276164917 272692149 475634626 887516637 942306574 628806603 464354782 535798314 433451588 857837882 540278487 357306956 170347749 285260032 324201408 475257419 746552011 726443875 743660174 102659259 537930444 665995129 434600168 218376009 29635493 882100135 972567768 18392348 126666267 491168091 948919882 586487929 833650387 471040300 84864854 162397686 670410984 569260721 426897588 69619597 374796546 554435128 879445782 407739318 889836969 709429100 711836610 273324843 862873373 930792211 483074071 253072125 742563026 871167459 174841829 861018776 280385367 916295528 339523788 883221235 778646000 588730748 48648966 300943462 611712709 677070087 985284237 940911383 931304226 224902750 831539221 600789231 861893333 884680354 751230525 437028991 624564753 862191564 348108518 162514725 268034413 252484195 638974477 880581316 919015707 424927583 758862304 641029706 545177495 787497386 67299786 920646084 649926186 941888229 660647482 271873740 368184657 807770122 931053002 536146691 785894109 975423528 963694599 889189338 39859690 386509222 936329750 152593040 893891903 271254968 153825055 345540785 574301306 772882335 397604120 314773167 114074306 169181448 735296442 664559597 825835969 658353680 5183334 742537934 655286973 582998524 851918138 540228697 413854233 374155091 936642932 497640407 576894382 202763405 345070851 816165905 308236354 86064068 888904600 598779106 163446567 697074260 884747378 410592403 765940769 486789029 768568330 564970914 264985962 871188625 377470072 111503620 463749584 611391003 603000326 55073017 318899074 345180538 662010522 36837063 844582980 590309326 467666856 346687039 14694073 388812114 690787959 266718650 64979670 792983506 620667341 48844908 344053219 604126695 670927267 291117814 497229596 791187719 287876068 732973601 314178028 100496259 888498113 128435200 38444296 243308662 967295998 928928069 298516022 47176641 196672346 599795762 296459399 403136227 30942066 83025026 760234507 320436372 102829751 626937565 737955642 511700606 370765695 656615492 759513214 876077391 299678154 852328769 177766113 211514865 203181969 382501942 367513932 753104017 522878636 687630581 179396659 702232294 277724385 805921791 564854356 675105213 167243980 987893921 186926128 919724475 192641548 738422460 298397981 515942404 96282002 227763481 980656252 967182554 799289035 836200000 995588966 660708899 686506492 981183570 333176339 745196334 630140176 872621337 75517924 928869198 823944657 351314414 534832204 809400789 925328458 681594930 862486266 585109608 392557604 861756142 3343058 836603387 954157983 306669770 723299651 247398728 688862872 119587577 471328924 838994032 239379357 750308990 675569089 636637142 189457341 866993852 439629518 425339881 772861417 97820076 288644741 583953569 844833736 639877236 283442743 713479800 767010058 820889533 932965284 412551123 65017267 498053032 484362458 789748246 112925464 725026453 502072123 445945601 354585554 770714692 346717231 87627480 399889323 151123015 268361977 257085304 533983617 972589298 384949985 206241331 195886613 689891830 150221662 751819492 896092902 853708882 376098879 282312367 657515462 323874277 331425081 153227397 810313661 984173722 322307180 184268058 625899129 975955187 481335468 970882520 370568862 653570813 964989967 276853239 721109817 28181681 301362528 806563724 785469008 242682348 766600098 687307112 988029926 262436367 618483537 366944639 674802502 424561271 971439902 674334151 584610116 9141195 183795819 640227663 184578006 343191481 624822169 56156306 388140073 846852737 853025406 187867287 406196523 37019025 199685697 292220848 358999224 86642492 947815623 93568821 298893487 308871731 142790155 237987880 76849007 636467476 427372488 311467557 341360603 104284759 775765436 71807865 363808960 390067022 324834348 882271025 806169919 884116597 862285724 133364977 596684022 594143668 867095356 552395035 927156425 366142191 305277406 102329433 562746626 38774350 267570876 680048273 492352083 649248719 137377474 924330711 167448426 733863800 868825588 331960644 143640152 765928422 507579194 380688490 742444296 820941642 741210256 344270944 823362387 175114203 359485265 901624808 394959160 186939285 999212376 484570905 153587118 774267549 229441205 124154194 282622001 588234864 452924356 976911482 637108608 85335535 739655622 995642963 839802249 729253685 452434405 172918361 493637220 935200361 815523424 173603536 494455049 198902009 553775969 341173233 65192074 529613787 425003865 315440589 542858057 981946384 244671792 220163390 552047494 88649440 122672427 519472485 847280527 109165174 213849908 321091090 778810330 409967475 867433845 504649921 517788064 545220029 439264302 404572741 762338296 376514072 778402189 60462088 788795665 861960061 933446113 226380024 155552091 204929438 885438122 167407102 384415027 698758196 772066936 407986379 588038788 141065612 92195881 868248767 244816009 649171794 551080948 474842209 393860205 592762327 125165416 513283815 42828353 103253095 913810595 710851561 922397954 500869587 533199329 318740870 402317089 553771742 268183196 866033543 648189490 953710982 585010285 402451674 517061334 182623433 699596443 122994528 128262135 1466120 855301355 613348673 438352217 828489164 720644563 959786455 297119492 574231436 505547923 650074978 163460884 91183458 31376553 545462994 589415290 842963404 830803424 388217454 530125813 173209439 255456236 604810524 252686803 544593460 706392148 671393571 864891004 858069246 978087615 762882159 472909345 460651971 260241617 270023176 470526306 837463364 481558333 508228417 10212390 731966790 342042612 48680547 400209231 32225617 874190989 145857436 870716526 160840880 665244975 83867739 990936274 68713796 642707816 979315031 892258256 45465177 708414370 914964907 352557259 414904623 624990508 825027862 639029518 279600014 908241817 730536051 252050932 1663073 583615230 184607042 153780822 599743658 15310221 323815080 517070605 158126937 905078160 645406957 238030867 641459846 484753884 133828166 564460857 71510372 560792546 412095285 876253603 981452442 546211723 148373335 89064687 201048139 173168059 401295071 31147904 254003647 130058302 369423671 162704169 204020225 277200539 154395200 101658154 669684738 579809428 569125708 300200186 350886085 196472130 422346043 905129490 449375013 256550931 926852046 480190408 598374217 648987947 378142041 560482120 845339756 935424325 264155396 995801790 22783515 961439861 269257007 469374235 475699417 991008525 554941415 956920031 906779490 988094178 595990520 891468213 149029646 539791586 578372425 377226956 369169027 150066316 132804215 16809164 156003681 336303166 434287469 307711952 704597807 448847288 88006163 840073179 35012771 764018998 564697815 210374967 377893284 260919820 602134310 703256287 549386910 310823176 860211217 15799109 596175750 560050589 226460659 929060990 791106234 494217637 927104110 889953409 536606794 614633721 481139520 588152680 864006482 625467859 944220105 573619008 339130737 458604600 722002391 713508336 233439676 114126156 804059187 276653837 751708629 75817281 573020830 708873201 267869348 61270510 833976397 889664523 695074670 293474731 211295658 338206246 148192102 971508782 280926436 509097119 759120151 241929117 909161240 939652234 512271494 958033039 213495114 767720567 562760916 328682103 477293888 207844431 114600626 707560451 866953504 496181921 997121896 577779711 269782374 385353084 403365574 166441638 479292869 497214987 144229308 816085766 977400501 255062064 716268989 745130887 329838300 258266862 328931996 83314035 801909263 944691057 274952297 153573423 727568323 58360949 302902147 65050428 490802300 898325064 296906349 941035524 179835324 184850867 371708313 496395095 701424153 905963755 985444220 529046023 30943632 486544521 541520590 166438394 322016945 320040890 978111445 809622734 337062400 642320383 156736387 802588922 762575807 264059672 336670812 684733406 80936611 997170831 888674541 950703271 602163262 438956217 387498971 674408120 963615196 865525025 278597039 520784094 760324804 857155048 492197087 256563246 124476220 747045923 308161719 102548651 641382646 108416324 754723925 658016194 864400526 92701970 263067254 902744414 350124166 920988598 218923772 466215819 732991350 440560492 415060317 120830702 71776418 236247213 696895973 642172941 535373701 439356700 920560716 884456875 401699588 728958726 555519014 690680936 188034893 106353646 202243599 773920857 952299366 121867807 429023560 78699740 140209752 726255297 874113818 614741648 535243443 276614272 145141416 299258097 241539807 4767005 417559504 559455225 964486437 152531343 995755327 594813435 182822408 89333148 661517962 717099453 886682542 918522455 257530194 424534723 323692926 851800281 946574469 773668128 136595858 450863536 979771124 299141001 405001754 595054977 386181720 561307108 580190784 756010657 93088565 796093130 956055845 801106584 242968185 921583111 419614342 122345855 340872148 135096157 349592698 251408639 392531644 501574196 956952127 836914625 157108369 75022861 37344274 573527164 543196951 489624910 928274400 899124843 743088756 935589396 775007730 524256149 986608008 654665508 509271926 58684241 66106025 764748457 943530165 617980855 134007832 36887371 687137458 640367309 607212783 819912090 199371382 344623616 685915549 239228533 263001016 652646822 468435848 216573027 665168467 957956940 989534160 434544125 598897931 163567242 698550591 626992669 978425446 375103872 211802030 43959541 647263674 810195720 370459161 269977003 475160416 493800612 172205096 92928099 338614688 353554185 108100435 762461608 422695643 569183677 156474916 733322276 442428343 714870116 724386726 743489734 945577908 143284094 539964837 204522192 886841756 697430127 549943914 718314244 165769975 851842127 893856888 868391620 467677779 874604738 860540249 181161248 952907944 834350053 817078423 274042787 956426914 837898825 960950404 536515483 111570134 470331133 795435599 572757533 690091427 50842757 533441712 233523776 657400185 40192058 682893020 370602394 774526781 814527118 535269149 951857763 720387163 958764497 511374808 693866106 730811043 877026612 864247650 774311710 955925756 26793743 410958304 387827568 790279855 308440799 186584953 337761842 603724003 222735696 712993228 642498857 731380813 533699009 9783173 909569638 750982679 418005337 227967045 232472054 692010237 353938130 224848416 637804072 65961860 59514381 427617333 15983197 39094999 984911952 314825472 208495653 769746360 200796277 136670879 944793614 52111506 492541294 786771945 837076740 162208709 381985975 299278696 918154398 693238050 967219483 140511504 584123609 221368828 106388003 997679750 519078042 48682915 802996566 271724206 511697151 218658313 805356086 979090455 190650252 769469108 731483762 694946521 885538143 753086422 812667057 122316618 591856759 603944209 245393737 304612029 390190494 188673480 275018557 292887698 887963947 144555049 106490455 818920277 43873607 933970553 75762651 31642654 141795442 417592429 916929609 821047457 33613760 572379572 443206040 633560188 905409794 64298893 24830094 756404841 642515659 662591202 740361038 464376809 377594069 55311907 637040211 297821084 211922066 3153754 134787098 990455222 98125401 301556817 462444259 483099937 632439389 602621127 316407707 273520421 412973319 567721421 352804919 581745206 977606209 122251000 746676415 370949731 447693882 205922761 872318946 999215640 35902846 258549903 730933056 399922482 375359982 85991667 353734109 636398654 3325337 686906870 371929069 571646158 109156802 256852897 833115206 247430173 520692947 318223433 954077948 463151546 731656361 237735277 111110441 905552010 793766222 789562685 250921758 466435639 937013128 126311258 101229638 159512209 880298435 270967248 2241542 526542976 271304065 240087667 728357557 385405416 873823031 474709364 519548694 287799538 563725051 892298467 507253745 9873890 223546895 621723098 972467842 800062041 855884719 447593067 781825157 944567917 381193274 349491991 324712664 246574831 381017937 948651676 68913978 26283382 401843628 400898804 990639022 520812557 596782646 17620505 139985137 235094480 968981697 618944299 520810700 264695253 770309844 173290656 626819782 454058072 373837287 921095219 352983479 631139527 165385153 305971774 676314450 389575015 188005183 762148184 641232253 783203308 788109616 297080791 930960140 936429601 699991637 383857077 53032518 804204112 141527573 332072337 702390763 532821105 949800669 659149030 600164077 109986040 204522310 657947452 250611615 42654230 956514826 774378092 291963814 502052484 450599244 570452322 890353664 873892097 860818217 93697287 200809630 933540882 473451164 21548708 547417481 285304779 139903723 233019522 666296851 595590794 667291182 152542110 312074005 766340947 229726387 701025386 960762927 873759292 745888327 506234330 335384763 186396421 713978089 529295273 581781864 825831594 215098265 638039775 834547067 127198163 40767644 838750091 655954123 982331845 104169940 151025011 835789856 307309861 756464824 149257102 702787391 684626587 576990518 886783763 971678160 298681502 351335594 681855811 708789178 711734506 689786067 3684709 796708256 310553977 263405377 59225546 309926755 595469245 300590730 649515838 376662050 524751718 477320857 520767396 812355465 362416010 244354303 596146505 568019641 406422917 606931972 433391764 98820085 412885818 124800916 372532859 158932252 790831593 293108880 430715408 643859110 331710269 120392643 951688275 229918489 758628719 481408585 890632392 769925507 575811979 243861485 482164528 369890846 586203932 351177690 315385177 237799104 421498324 498735300 848035322 27014254 754678937 47508308 932600972 745464041 850589076 764827758 206676706 929030256 583495674 795283708 897404655 75729202 72995603 103510356 212747712 83453365 143605916 16840634 396400994 58194393 423702308 646591431 860734770 404580160 444234929 272537993 147322857 637241965 817938511 627336945 889847310 747900324 982016527 852557640 595667318 367862141 552615172 804901025 903083753 4524 934827996 327724286 21112483 396363927 823816137 91175918 751008086 713281124 108631299 830602127 122821735 859559871 200231426 701073064 100314003 227011871 541468019 656764635 67223744 666575013 78471262 50789884 674792729 323482137 940612737 414255581 248691710 614878692 936831689 250205952 917839679 626561215 490651426 669172592 333936473 565295753 180033948 824662925 312334538 17092182 107146001 790340418 527321582 231976608 853210450 417235449 919768573 572081402 644169799 140270560 603615377 745917433 809259821 423159524 525096918 263870223 748249732 45733547 684352042 891132626 664216966 13532222 622761208 604698378 207742514 630579778 362633153 65663484 330775226 819928884 760547184 860169261 19891049 465977436 369937295 200551867 92864773 742863542 917351385 943676660 45633209 790750593 820841901 355593506 958240134 489350000 102123081 806376441 365358746 774890428 28022929 914968178 615053906 291349400 430492643 370101235 217312202 929269078 606300669 880922625 847487286 763149882 986657800 588701094 351123345 810298127 233656648 634806977 47221518 455890181 902174725 373456834 507746560 79545456 689315428 752241073 964816531 123358534 191818963 992766502 136734228 810005623 798429079 819830960 897328183 827069995 602935475 520389545 619067899 469610152 344488098 192083196 649009533 137347392 630215153 125115717 145429311 151556757 792389724 432085627 132018566 567963900 589188107 473863440 17792944 442415370 188368814 337596921 33425917 151583683 521622008 809393269 461345069 290847163 58444953 358080350 922542463 544146638 660483901 694016465 584266582 826698550 329445238 615437640 524953320 315354003 921098610 573072735 602488700 339050050 375712866 157709957 102505847 671630313 189018990 6752703 380029368 654649275 738516728 278390083 80938611 154323086 996887847 478587273 431088887 577789216 210371094 47638717 334407447 480531470 793699299 764390703 103166853 573386404 540286212 772876085 215385298 334374103 929240288 765330258 402059695 693867399 812451199 460237384 207595175 443572643 807541456 483426286 19739701 544858691 432557164 60373340 425187776 177947621 966133798 344116392 378463154 841929224 268651711 512304492 408321770 175159861 973896389 363308771 680143561 428759926 97870968 878341844 661699652 832280419 379985814 394871297 509626120 125656054 919896814 831127307 94229894 780377674 737148533 699435220 36483465 922941609 607559472 981918758 909654506 407351993 60348808 467924337 816279664 898403303 258498932 429720224 874396909 229769826 230304292 638385409 626048448 886239768 379395908 7538603 19664337 542479947 379475747 807153156 735604289 601221495 40815275 582796093 180456275 268025890 696399119 530158199 581924604 304638412 692525776 234892190 270578367 960253042 469080670 908096393 217390571 887196738 123036040 371219081 957328407 744019408 263670357 325708883 511137371 561822190 46082300 440232864 884597475 460018424 654686322 286393614 557077251 328733956 623062627 972663540 645692997 582437483 67598484 400721324 299257588 891709540 804360841 481170354 146075561 651644303 322707077 805021535 203171352 385241898 14329707 417412732 160014286 72426657 331619864 576322800 293273303 659439395 380592597 748935829 245279241 249808133 146146742 872141413 144051442 960847317 255234940 303083372 570677316 872237028 486504914 841643158 949866255 433259396 934813736 512726012 974784730 90687268 107870851 506969059 293619710 831160861 789237351 94745090 465495319 100433658 311711346 144556474 834979150 315332837 880114144 398650553 396743903 440131815 493797574 841430399 61042988 170340562 643997453 361244915 452238443 654354416 366049024 917122204 872165449 656571167 275563068 793843017 445094738 378615206 620159383 373568692 110121321 555539384 304374016 366595958 614366506 342718889 506483819 697522321 294529976 151274012 780222869 96223488 512138971 403784449 946355674 653518848 233977794 670518678 665463940 473105646 83814645 580297741 994583026 877610332 280849052 936560623 784213045 954402677 955259038 765468754 560826316 820429109 803837152 678999540 654214939 82144114 113699366 827818539 747126184 559750639 168705752 712147467 921781560 380915573 396809238 102520062 524917792 904121303 949622443 891442078 333206867 519132038 248956321 77163117 748123582 112330695 875521965 668240582 862357195 736226204 230243908 123109340 81272589 925899755 581726331 361847253 603184934 487353257 332253559 721598296 194146548 830525630 402716164 521185104 290901817 670845315 393694376 955618668 629187185 866781636 238151323 563022913 283406194 747123660 501830436 433611244 701160909 816601239 941272344 500724051 161998741 129084485 474189966 761902985 433388446 432386293 373479557 108265625 483431634 167024312 218637726 945878179 322235604 389029349 238439006 440696357 237165516 9673658 331605610 349129274 371386617 353951897 258792605 635647454 767852190 69983068 975684807 591391223 627662102 949160958 740356549 53487417 727390536 335223085 116829609 592025151 297249068 802222022 525179431 111666693 115096209 553808815 365292116 135731627 61756199 947893903 793771057 899469337 121332601 567484293 409123104 131213710 889204260 639047287 991275507 530726230 306091828 442120392 532128544 321265322 134439323 155100010 445969015 857749532 483124537 307604821 932615927 240863167 664588019 300256807 712230889 653372029 469577720 886297640 679621437 540527848 76638542 783793770 278362782 517838576 213096282 926661721 971753487 117239712 451236590 996128494 400735827 587393184 453762008 664800164 158078001 309012601 585620452 278463433 967413431 39351570 265128265 968886238 586703641 503705702 425968684 958397372 882964012 785482811 818804752 951262687 288484252 801027667 126543485 491238724 384498135 745868644 315077034 264385363 326814211 394594232 761024368 636696508 445119284 147156327 426458904 608434179 73293106 912449924 840145659 153345951 79859968 942555002 565828988 820483042 693072079 482031980 634777665 400081782 619504908 726116285 468891458 797029205 531406599 438066849 279001639 491864658 670876850 772259563 410838327 49730474 962596540 232793896 185965737 566767038 253267100 564836192 592031982 598411091 932722358 102274444 200962088 461152424 318458238 877454067 915751217 110565790 734830969 312395230 724377195 235439294 434320567 144544056 402692298 660099942 950729517 316871317 633375510 845152232 925865928 55745545 433564933 121467486 988128662 178490145 904454683 407900098 315088356 166462599 32118106 709834111 442268425 340541471 256034185 711873674 614860916 498251857 333587971 995255292 589510964 407401076 52999803 838355098 357738116 813390319 878244282 69453302 784237066 233333522 825356763 388698831 421049670 206545034 532470027 927773763 199274307 185509158 25898234 685384714 501829486 442992785 70700986 702887816 691698041 652456954 310208063 791654010 156312818 799273164 438985108 641240465 355672264 505960655 451933856 641042531 411287263 53446374 576200264 875329682 621277522 857842672 647033771 896855975 907885200 963865047 598409713 39629918 524533371 518043437 944351847 767156666 478123166 522131669 588056700 91693126 976529907 33601157 416993078 367140788 65132339 492268997 96870985 627800829 225849515 377859026 518784661 479299675 618761360 210293237 809276915 512848920 333670577 493052463 730104271 88113277 910360184 894092598 796674447 70016045 819494425 296317437 929780173 547567377 643759117 345549659 361857244 510757379 1735679 285997939 906469251 501175498 576633253 605795204 872160099 146265130 720091354 564880513 132191954 404488221 616479232 769026940 631535920 411511271 400901223 568109377 964151546 820287364 975884458 540795417 285287410 914481922 983408946 692383384 890044628 229785310 917956675 581084211 603071407 124309863 956474325 342615015 257782367 672255185 542939661 83657332 427786575 576956205 47397331 334381569 450175665 929548431 331814428 81271258 762865336 848902101 637393641 817104287 713952515 703555914 913892064 233220169 690583595 815369325 410579146 796770362 809074554 150715622 113403837 250140871 473656752 172309887 457994290 451470450 891773537 297209544 542319347 458259285 802828796 901804664 375576668 287019089 472029830 471361600 765092962 722766475 626840439 919751580 835494730 695356400 461810917 638741252 508164251 230894264 796315450 983919734 747034423 845813280 920904604 864361844 987016551 437824961 350380300 20298895 499100784 820624556 760963224 52870064 205627380 707684968 168969269 983824112 532431347 387161078 23486695 835072357 450204720 807114804 612956068 770230372 311896502 314311571 422454037 693481754 147156628 244520691 344806340 237234474 193123888 799490663 272196273 105845822 652584381 174455002 778388954 429782817 36297009 585172523 551704595 930941378 944288095 120674252 762192998 664680446 702440957 948427880 340325288 311539481 440547049 364489951 204084929 758814223 170936533 424194721 548555679 663514171 4568485 53495406 328244582 911503849 30228256 472240602 546927221 282561068 673595327 507424588 273379014 990685244 500754642 668253096 410191693 252563222 939039735 703517583 179166984 291831880 640159554 574497065 599578632 768441082 802675740 495003779 688507518 551999381 227099632 545762275 796703891 621157293 157891417 908280104 950829445 598043559 415831200 995560504 291205585 18687738 805909429 698870836 141917984 887311535 390352919 664684964 291861637 847268135 955096173 450367845 692152391 921893536 177922200 27659147 310377512 910998468 589507443 653136993 580258094 890974612 312345397 500023567 919002953 114069530 669211237 874824699 129846712 165550017 387443682 693759837 360942076 901699234 556029974 232770708 983077973 892728322 193866660 968202067 500515832 133808836 160314146 434124418 843609894 559239960 969284678 927021487 492837408 948331990 863270935 202492439 643850752 302122991 572002065 565626640 858630725 299855136 450301537 799449109 113463656 236612171 169106815 103295601 531543741 395522614 571594237 158971437 412126169 559799954 632247849 855760432 489040304 412772335 431383564 565953421 642364299 661552448 983056579 160950356 891480961 76078475 443623569 994576812 989967873 470955350 145758165 655716572 87416781 914156399 894381170 809280662 392566268 242647884 681867362 339567136 328534594 922879590 739940998 172680471 583811213 908496273 549445849 741250977 790557508 803918922 774420476 486620447 601382868 392989469 379228130 852476269 288300105 768573849 291056108 162918500 824341305 465836629 192948428 277822959 109189555 496033236 74356698 260336480 246481171 518083339 573341735 528475126 751793888 280151276 576152002 7576541 640548485 831407233 110838520 669301494 142714520 53139709 457151060 854130370 163656456 980486626 768044161 268351336 849378361 83493885 689348619 532029802 831860716 274231732 639975341 952502201 548271786 204683048 539628112 192918836 399690868 464758525 40950812 611432168 19751380 563264822 836851761 564411973 715894153 245235044 383434600 747219413 263409186 742736524 150593542 392861693 896034281 117478187 492562701 816486972 24083287 319860315 475944660 101492350 384397949 506871729 924735360 696472460 957048546 24718575 623462453 284617344 169526080 73317512 511421813 946148406 151046640 191973190 798369536 397434895 505379671 360793899 785163710 102006487 716492414 531891670 4888575 17419553 148470977 845471107 765909318 546452276 24468577 987770412 817966703 436862968 432342991 660377651 744595099 350077453 67603007 247771540 77428358 449625041 642214176 998963509 861338480 711038580 459997612 348492906 101432544 773762373 104303219 985136330 363996391 582057914 267673775 169052406 230931506 30806014 271042042 161695610 291773719 236063321 510939877 569320313 820164672 263622623 387042481 153522892 543143927 717137815 528513142 465936334 864269769 39881872 456472147 197304154 417015726 237010484 617739037 549133279 770698921 163201143 565258303 139834060 120536221 529745759 732814372 37966582 898075805 647854090 139245103 23281463 859257606 660439196 704879078 440591645 51579874 456923938 268509492 985262132 678339255 127400399 952783873 713673068 963600650 772747313 59604989 512222020 437821431 672486533 846905807 771892441 934535979 644228045 295437354 965042290 858344752 312103990 816786436 468056982 415185964 138204704 603063145 289731026 195792448 722333170 896491530 79898783 88643939 592346477 284736599 362104123 672547697 820659226 892956281 44917418 451485565 916757788 147808343 489753482 450100051 895860645 799992821 203786528 828963187 994593436 984712513 283472308 402730850 489298696 362822321 547042954 254611984 903134347 796604834 379913454 238674690 439117436 985361724 760798763 196136811 331987271 481871002 520871213 94882711 403762272 254000943 775683220 581444495 793138565 436260775 318161007 302000213 189227169 358953006 494201080 420496583 949933798 876074250 110159683 427308296 479617377 168934303 862019522 943344765 139297194 756563685 778507006 128270220 27273325 417310838 820581741 513667305 144328307 675251758 413260050 689826598 33364432 426878554 251133847 954884015 581537976 46084173 977303187 578183962 880970217 500128792 972152230 607750619 913821490 237885572 154870847 132860738 201421788 882755218 274978817 185967733 865062914 962929002 969610078 49899159 262764275 151952863 375401965 386595037 868551272 607605582 590502776 561283702 59071541 231781777 452630106 725522982 909729224 742087946 173052587 644281501 197157387 716900244 223243520 445597872 726429476 20717293 404504360 797233722 653819702 771381078 67599796 218127185 166406872 142896594 451250653 261275130 39820249 863475944 443583002 649520430 724937282 866815730 820943179 222310899 538293971 964510087 114475658 810464837 248233671 266989670 417577631 354702306 996467732 184335507 449271515 647861933 597801294 576747693 592239733 239939982 53005000 525459721 101630643 884421024 707828913 180758937 807696006 988847648 550743643 59275181 416008214 117743594 433154597 558468479 892685213 926851595 639755135 77122312 281480086 82447538 385065424 265542474 932637038 367379935 694618506 682117616 388097516 401882117 701800049 562870917 79303303 955629090 960092020 695010950 559059362 217649851 876434023 64705895 129704448 624247620 276688727 314296954 793445720 733254620 536056285 149557790 849370804 94600244 753644083 870154877 138378677 622047150 558352945 925557384 817153041 173264234 133134798 744636376 30790265 122515857 450612020 586443677 651801215 296664870 908942539 962894398 695489790 242903493 770696273 769964242 182208334 563647679 654439143 45725611 141585496 153703211 904332947 579422915 28018208 357523380 571771026 545182655 326443272 755221778 186497906 373688519 833763800 152956591 103060729 98523748 922542498 865992474 159495634 493902107 846340240 91432143 851581755 513613233 209496047 786695800 854624223 553632708 556961672 589204975 796786828 648909681 817694557 427617114 298759008 86086750 417223110 54512299 341803512 767537415 745527940 178076117 852081817 826383852 793513864 931508028 657983568 115028057 125910500 96441706 2944905 613777254 882135239 482363001 783870755 30660573 808232800 28860821 904326615 763952647 944987749 987339947 458267512 702076454 413597147 328390758 825338514 679497669 429868468 238432222 452143689 221827626 992685647 262808744 153330435 340005617 960612266 497882169 601220776 702654930 312467587 53232243 963512558 410023132 964998813 188139467 95241783 689942757 274917822 74442861 71779547 481090167 253890725 970037865 814427705 402330412 411894176 722891329 915722452 956089917 921060893 147895984 842234230 476000076 401915498 537638369 846155183 30401047 859103916 331848446 605481177 124379877 395172569 191922801 490992848 155262823 421623457 335131226 975427002 658252154 793689493 948122865 12451787 939008895 991987135 290497938 866890713 149467980 97984355 730908688 608166366 894203900 778455152 624784865 956220106 448981240 411420652 518642221 421430877 741290119 779179713 491247449 447537063 730107748 55130082 686592993 261889758 726854328 296157879 550861731 789836345 473808655 76627643 286810521 106283347 444312183 332785492 592762387 422385475 88636693 840843647 181021739 63795357 798433972 388272129 601713222 595430659 675542190 689650940 188942562 413648491 322789167 232957773 577896718 769893986 63944515 342339224 80026447 951103764 241377251 807118541 696409133 737495516 922208820 658024016 932967538 198887102 575173605 606932264 795694542 38469078 8230504 610854821 720511621 678861143 265353071 857496499 2254668 255402829 983780411 913911660 35952655 3509492 41167042 976801011 338376537 452857310 566525033 603713983 927376281 670058216 439082186 218430816 487185683 423719877 629896994 908577804 498979960 129595133 842012382 879193760 402872302 150579096 781507687 732093329 16191216 193267102 454911588 704865932 770353534 870459907 943035969 889844425 15605053 932554717 984952556 334306651 296001205 453064540 820523243 474060418 846419568 739284901 523978931 46845140 548646524 215062430 528288470 329313747 310577161 451362895 737845859 95621904 819201057 725593994 651117382 196390990 58448796 208320721 924529011 599420397 841146916 594026375 970861175 136934133 655992303 112125025 184052239 154908985 379357328 655521792 244711652 820715243 472957693 936476411 951381023 892046672 677740193 162759410 184576375 585175290 630754563 667448667 264785836 919735728 540408716 554871317 31790248 838357408 742112758 644169932 54056944 575603380 115953491 520805978 437254181 542281647 231824293 566570533 361372818 73388124 117491829 474268611 717555309 703085794 617936781 641573431 445308383 517045287 11175101 370911122 83044275 812116640 145713994 518983327 258333720 856048468 827041223 555193065 637779434 378113109 867980518 172371424 125273872 393197693 983902502 117457233 651965436 453858465 553115223 364038679 719944315 632778624 115248945 379617347 388332867 968275544 823334385 830811576 577384490 52546187 764419723 683002464 247492538 292193452 659051997 656805805 748458425 238688195 230029290 138492372 818258801 749019484 548995825 569017678 944903545 244145360 51430082 523784312 418346575 476431945 644934528 986940242 572099677 771328718 524256248 371044275 276041557 487700618 52731116 823062207 723358029 304665693 176680586 588149843 660034407 800686895 565843956 555343985 785925723 791558341 739238334 258756 238341052 938177249 364595023 694907690 222724773 85416599 103443491 273506871 676575679 631689255 279300039 49012860 477158219 232241508 276523170 3192456 99230341 501352646 661915500 476673842 750700292 667509030 760372717 113034246 14794115 371010831 138104609 176590752 521683619 435473622 798919576 141412134 885934362 205235352 3568662 454972315 898267763 461293834 622970618 316951616 526232676 73392531 535254557 876644197 474458942 164436333 126249605 559705878 565897972 830493807 96160174 149632758 159951437 910770673 439691879 821497302 890785105 617155020 323144509 837042431 266080055 896599410 21600393 605834330 149350673 909751827 690826709 734747639 845670869 272653842 50564436 251659998 128310631 196879682 596937861 27518670 581893276 400998143 552992575 638723343 553504964 330630639 731591837 441470698 638956878 795139270 540180767 889556424 976731635 718023455 290574684 718971863 680926043 10017857 38259209 29158424 250472137 85910674 91109683 13234947 951531534 830378597 437131203 645922448 855560010 336774454 519009055 691076547 382727593 591845604 833995276 855587756 148588386 946956301 71824298 917443427 73293518 933630691 199893946 340413590 562218322 325002339 484629155 520506190 480672555 301851465 677092787 468923100 303902519 218559990 535085212 266261428 465787006 759683677 995960757 943544749 997164882 953996023 791316950 211051159 314571749 572116495 366888706 642612990 4508662 554698970 654388786 181965826 243456133 247167055 481865862 506635573 385592789 660545755 763292811 607508350 17794162 755435703 583200588 823363409 910056953 912396955 224444729 479199296 651258486 855064748 28662532 896755010 571437805 595944490 482269310 915895188 441964411 864695466 121978288 434641559 941069620 804074301 23273034 375775633 694077628 988423655 468758166 520714007 660152545 101791896 508862573 229248445 73825071 104631718 2488155 945496769 252765650 172705044 781429882 28142508 227418510 137258429 233504607 427758045 491215925 296193791 889168589 234247913 265160367 249545597 827447585 832111354 776343153 240648039 660019988 667421701 959417372 584290033 845191047 525984456 818817110 300210344 932324876 941339498 196980117 842334342 864526091 169766765 645244672 536940535 317193088 805247119 282220488 546472691 243608657 441847141 230753771 900634436 458126961 844623808 860274928 738529714 230866393 215832874 835868711 44649571 536109169 967437514 141107288 305725931 41604236 964740451 800505177 600141040 883680787 109128428 639664488 777605728 564261163 178636278 675796000 552145296 324393917 104739155 895980101 817141856 715894214 57530286 810067243 54547021 548653711 690508585 195185018 521630090 804158103 4055970 499461680 662273655 598934503 195381307 651364967 192583981 423328261 231756801 607994655 93022232 701813699 626309703 131708651 334307304 777793524 835870803 65336920 35032585 693695499 559392946 655207166 897831216 158596337 815236540 696708998 976939948 395891967 870610122 482600231 564083117 49189357 102664510 825512837 63327206 517872624 906721995 833555196 96759455 60014771 728229139 514972935 304683425 277242068 435791861 306697293 765445017 100970659 221232572 764482085 761485810 479071140 511151927 509451796 903214790 693943463 770417300 251107242 831028988 688321987 632518616 151947644 654940740 272212757 345634134 737259446 505651564 676323139 438653698 40054055 928810841 128246521 645448161 69834497 1518098 991558516 571354962 449251996 60029855 460566787 219574448 231770714 940855142 485058791 942795872 882569853 419113914 934113947 411368572 511800264 226935817 801396927 753233671 315355935 412282043 110344049 685617257 60626749 976952418 794254185 443176731 731792305 224375525 417645915 221951976 467263106 295991116 552502840 77394285 883942796 306197609 252937548 158595291 851865817 927759163 145499113 385868566 192292948 978779175 476577275 985963892 729528963 883841299 538013453 941959095 106321826 938088308 925630738 955654061 81307603 116562794 19419006 990301928 769213798 314273692 700309297 703278586 657790539 853132784 982633638 841941932 877158222 501011230 566593885 837457123 712009697 476339901 915691308 490568427 321674330 287552880 379933651 736856788 879058353 75711613 217389377 495043038 622805695 493463437 18643404 485307737 71823755 188006387 778399063 725224697 881135053 237529814 405359257 140307190 840607951 292911433 602402204 443631377 221811644 756027271 578985094 457410285 560128891 883174544 870093633 194954185 24506720 363571144 155798569 509093891 680399779 856137007 392954063 61993693 785786376 216343348 776053670 48807502 613509270 145695461 283471292 171358002 287339204 345671531 83662526 105174153 180027489 774793607 594870849 601508996 160943412 15203148 163728589 496254273 618220246 675728640 716892535 118334368 233661937 211158137 818506176 53411754 179423397 939360578 28856926 39053630 839969056 380239987 701331068 746464041 405818130 92182476 931888407 77285967 20294355 101536881 482533399 829545735 877806150 280753562 130713894 238030487 400837508 113461632 364585617 703223899 839732909 928160456 260573816 467930486 441189405 379781312 286768315 245890582 395961387 989516525 177326755 525207785 615118923 665533254 670121562 938371254 842049932 135690174 689385580 201086506 518088954 333120866 983587468 892916485 775470205 784389572 41483903 510999188 354697946 713403303 867297239 188308922 874539690 243170319 50514372 737397352 291909848 323038348 34194720 908430004 776538760 122540076 147945947 357248656 371673062 314250695 721547929 334845748 36269614 539006763 251640998 728188097 660056470 462266585 288236458 58663128 791314897 713847467 981630729 231216839 800422981 415293485 655093963 212198135 637567483 852510224 1806002 999738644 53604620 980420394 684967714 669283432 34841571 381330932 717148057 103525632 460264644 647434776 170842728 345413000 809906100 419012820 179534917 397041761 964477971 430993872 16110113 779541274 162054081 883942351 629817470 613823174 101109148 224052605 859505723 871880005 292571065 149490709 77279538 741175531 441674923 66796167 209311208 333501476 53446384 577905833 830335371 531420164 20682735 646096720 697092684 426866641 688986707 918107915 503055350 659961034 888788432 319372655 276512452 496304912 14096227 745515770 534087897 996206921 353787354 820730862 579530822 951486336 403906848 158359592 952201462 551570521 495351843 423341371 239347114 378342703 382229182 732655423 454391292 390457852 138174354 395365093 911677637 965183536 834859274 764857895 539674358 394068793 445791554 773807031 424893700 747516368 673049035 126862543 470068001 136446749 701829312 708457377 566830964 168765846 153431532 587789674 394153403 427439428 228698379 526896883 644287671 176230851 304853915 796281102 968117517 6349515 380693054 849660995 387317301 370354805 599324025 675937352 369127688 93338797 240393496 117817179 123952713 563042101 370462031 90066470 16885582 834929037 364775096 652591651 62054415 49921621 278229909 864340954 747799216 601220826 987021080 880542652 969215480 713985422 864170707 315551260 789065330 798094847 613534729 382528227 732153708 481526730 772890500 230425464 90004130 465051858 244685796 857844495 8269540 964957560 659470841 969245384 391756209 523094424 643451127 688319190 526490477 196341790 860983193 966673243 685821418 93462859 395572835 316705460 254636996 65668811 665023013 123860452 991636377 289317316 781422585 343028926 809345653 206707985 203017677 986795232 196684039 386448015 762333127 410545733 578123184 329839676 431152885 471091781 838343806 685817380 521012072 729378728 959186568 388647836 732430082 964128445 545541218 94405355 784497724 392916696 557744879 686527667 511339958 917931930 703165356 463462636 922259749 610612646 555460661 649048295 751365889 801155473 493660160 867382438 564189398 710393279 962829777 311660463 921714483 303884736 200227176 301257698 700308819 95944686 585029891 71808928 243453732 918157436 213815936 43893307 861894269 803469398 190284622 840881425 659067625 400723237 366943448 615181443 966774104 763890647 997460126 315429977 653499581 809442921 488084340 678819938 584626851 674517653 162129552 986625036 727590461 207655802 224749942 995500305 643624506 486273062 384617736 789090065 388074009 418858929 490004281 534216581 702094165 39898069 65992996 708518681 362890593 408127081 536950028 770731617 701793450 460866378 432245460 879889004 283783733 753835950 225057330 156930625 39591344 899446399 284226381 357384981 91882053 694900752 495971443 802050965 674583518 548087610 469573141 840482784 326717755 952930616 295182738 730659225 691285237 222300532 166174861 66483173 154669361 831364500 102878510 55645631 862639683 57837428 642811789 294261545 387736866 826382125 832015461 593310676 17312121 937067264 390146158 511717112 743958759 610007859 879620180 583437122 845889825 955986617 527050387 997031437 859681603 870266286 800939843 354098437 977865040 658471136 801479089 501149453 777207747 334957795 55814473 491145059 511160457 901612470 338360037 188829051 279649976 70699724 64488020 910026487 922845681 196063293 774498140 619016512 96009897 837816068 513379510 524053752 554962956 894568823 272582509 436945282 347759229 565862663 177692489 55634770 267616685 49400887 159962661 961549593 625608527 670950759 521635266 592644205 244747646 24605870 952653394 477543894 462820531 255343751 821706991 887529373 81264533 157595882 264448730 145001417 604436507 8717970 661063154 342317002 536643858 642897256 687286632 823909747 865957633 581081541 69945733 836359137 820963636 766056132 462300223 200307284 950873739 111658410 959280526 562469257 738670190 658283807 51527527 735860126 549772271 271445275 862696485 447803422 664686202 685110029 861079715 669405129 56490143 918697325 576673459 586595248 135129182 80131686 385981702 798482428 586681022 760438735 165891763 879940978 584334470 191674502 271789181 123590184 987703805 776187642 727360700 672084326 551258391 436954269 567714037 898110767 911008240 99030746 89513662 6186129 496344048 862577805 170559303 789178178 765404243 924168980 132388664 455836869 689189064 53716462 932464309 103592874 277031141 433313784 311859509 709674316 750047327 47382877 891363530 955299974 631092082 367907090 291204936 244474916 911517908 863870433 377530925 668691478 772633619 924684917 567314830 153561567 666331787 546180859 413129789 880167764 94532786 734657913 436587702 482931485 810422348 96792799 622083778 601956747 975814413 281693345 467118464 489118642 50272062 950714413 796931564 28359748 801781485 21095298 318830952 260332926 154663064 139706008 95638275 609617500 682788503 101526043 243940570 581592964 675812985 719577492 497672176 596810701 229065658 773690522 222530016 549435284 812362738 451815625 387297143 436308805 635114149 178248514 450700161 36091124 997264018 681734309 841264947 656747291 621133509 459238176 890574343 730125350 315186643 362972400 833749162 585424991 673213379 281223217 521388928 175399262 785601747 53792729 243405307 27661538 48466163 127238066 823996711 12336289 149300405 919948454 879545226 208864701 759823677 691757377 644765192 739527575 350047704 107274714 244854808 888749157 352749360 994018853 214399939 253767755 355312109 374392015 785093917 575746757 86173033 681691865 363150436 278874696 790151337 93377785 928073229 439504717 417525410 237591728 624677189 648970352 35038103 9804392 530229534 276196567 981286528 639779717 919016216 991977204 649625101 112939245 916482997 622533757 148712806 920075949 24841844 600638536 95832547 443252078 171652958 26711575 638326519 542779255 291002976 420293417 250881558 610622281 52985571 510979093 9674294 430774477 22346916 57600014 852541170 621591805 984902921 883783226 195590465 766378119 840451291 544366456 892798631 146894386 239411734 883803158 514110605 244532498 187424450 614315863 116763352 467343289 793631936 898969502 233731207 336771673 769321729 819816170 959345260 640491339 359979643 590216656 69062722 343376495 862727192 849422694 632157608 660090735 556524048 265451654 236659805 12528879 260536608 890249307 751205653 66861152 695402675 663935832 388195940 787716635 692048308 369678501 309005596 607191702 892117760 93480366 967315238 854039642 438657006 188860154 493327231 244077712 797137662 79059094 408997260 713656209 628382699 416563586 103979190 83431332 539903488 835240688 941438045 432745640 595302327 943919031 447771560 890573543 662950745 664540077 628370939 234090288 311210609 258169668 92357581 935729637 5521435 28010390 202627518 108273862 913251364 842243758 386959930 420941156 105020200 468618167 404777546 384992758 251972818 981085780 422503024 795587897 294313856 613749537 294910607 523356371 151473845 160407701 75005155 872516338 57398387 869987314 947806973 805890239 719860224 503474461 906351824 919289343 742208030 400963093 604396190 595770052 442366559 641492486 361182989 894629005 405637401 902308964 98002043 302103430 309547615 460090929 923479766 737105099 409205029 393045635 806279278 420193343 552085698 876415810 491166261 42240625 345579558 68876711 898236600 980276080 687569124 207943602 126415939 800007759 782631098 429213991 224920293 807635589 549134378 233021565 115143857 407572764 450749440 881687909 648718880 108362341 668923420 680815064 547254104 699111490 594634224 329117843 484350367 16612850 292602022 147243617 467164826 928149375 972942934 359238069 819651906 372210359 912114515 420373660 712532585 929765768 908399340 606695875 122759444 28760321 314656140 824431862 665088925 917603898 821543379 569638097 699981010 868576172 239717625 288674614 385458562 159264839 380184063 699383218 843889657 296958556 425765629 989260728 295686314 931258661 360802329 406362916 497590611 556594064 515273340 104710597 344550161 976640959 978382714 782729909 928537992 964943740 795487839 944831100 449774920 16306220 499243785 794541143 198474654 342541629 170185324 939962344 373476384 536597790 924959663 518211543 288075366 768226497 75940140 73795492 379514810 470409364 319511039 626737621 832905746 704005419 269620668 561982389 227383908 717336628 95129431 708479104 635666834 6183026 327190688 573513210 265573228 26798169 361096089 614717908 322049746 258504586 507066869 550065643 829886464 97710752 589333204 8573893 858431694 598470044 736881873 328668981 237339869 883467863 513830392 124223224 953199528 330402618 75079360 314811136 925227023 367323059 30179246 161231489 706206057 881060299 208593783 100352844 506845383 600436160 225993375 165550095 381348456 54834529 820088554 471678191 62780262 175233679 303872362 168495103 716194345 457680681 977207080 783949148 4933721 617949847 390669967 914322048 289169639 185211586 813586076 658446720 426373029 159994015 764067482 658721678 954800425 510509537 225716031 660823498 741921023 795747237 132715216 333235403 866365235 413038466 16107314 206390724 612009844 880965925 840160232 711938094 320327413 600712017 47550404 681316431 645758649 391763615 40586530 738484171 481121912 864039865 364066741 991793838 868504217 467816599 495662118 514346133 256332156 915018505 352895115 832761133 508196680 775843633 975036272 758693916 472099643 293854498 444144533 552348110 641076866 917124958 846017372 712017277 273395947 638471301 6927259 293623520 495091466 812076367 205536774 237866537 419124075 252414130 651066743 482961092 983789627 266818881 876395838 964636937 107540152 882058720 374298236 16014881 727457179 117628791 402644004 484063868 519295597 709336999 498426158 943469774 325971025 893670635 550586911 290022443 726091522 346287141 269737165 652440931 254549584 617894061 411306439 142211031 917675026 607167175 404883632 55800172 54597484 302750669 141971037 672626297 707416471 606451271 889366688 59061721 686917867 405083161 928515869 640434175 319543315 458099369 546542685 597028234 936327898 398222118 957012174 34836226 55080957 902866521 312964344 450940910 234004125 86427534 914309318 417276311 770043389 938747626 24105952 653589090 720727283 527029605 389939499 865918348 359921471 275953672 363420994 688438121 865564518 49804281 600317414 357877709 461071963 135981072 20799868 277775261 413765184 153007551 441743909 767313619 146675416 839692463 825130160 746849840 922868274 508892448 32901425 35633405 506897383 30550698 225656455 555804301 120179434 212308139 646659079 810642954 347475551 785813223 282232643 160048139 20309297 144769969 299587307 205874874 887085834 316225609 439928853 603078413 902531840 602185739 741204136 401828884 584486298 274211307 770459169 100046139 675424119 32925090 672722799 882748295 475309878 203942093 737164718 842070879 737900540 412186854 29322248 380457649 967990243 135819723 946233180 807551614 894191862 894580233 104852711 557655550 429438501 492676234 560370240 416935999 338819995 778661340 177796636 369722035 887473186 49542344 724856847 134519465 458989194 389863311 591739414 170486055 162982010 711183418 818551083 967316693 354326494 702484553 308305656 299951808 5655242 251926269 166155874 678183898 265435539 398591125 63853899 219121464 536588964 705161306 950705949 783536296 805983569 695078477 631928606 499170764 89527602 314370490 578535910 12610728 709601412 266703179 897547731 695116714 847488618 483730673 531959857 313669264 712923839 786044050 616204272 701804255 972921038 596870863 106718587 945916442 704919734 360631039 717079212 351026353 784775483 364355377 309590872 417830066 561118688 514188914 532678376 682681064 332860271 261891569 902928704 112991348 220503961 148988898 685323654 269552267 606910144 236721843 597105515 231601009 484379745 321905466 811099048 862297617 173584569 786943560 260097334 824233058 266170622 157375594 857430278 341807470 134468624 785536526 604885372 636397724 104258570 838470559 776800721 901494814 925994244 169481742 581286792 633021459 415439215 25201149 989462214 539730910 557204419 36762144 352516934 242603874 562221066 470332565 225800174 529066924 842218708 857221193 433194494 245809641 45005164 914791767 438697801 615783393 680842987 851439301 135047665 538939480 466215195 90687259 882691247 211093141 570267662 318659549 79795871 520536710 803203374 673576843 472540512 306200287 611187183 443750606 891608868 964795124 588775188 879683623 736345534 820992537 718072212 800638439 688112975 622234454 625693860 262050374 26003482 290867066 184400297 551156197 922466396 140598767 768558142 547353680 817431814 599054432 789365705 301852312 515185866 142560272 516161028 396896764 163540315 600517310 534388344 355260901 912424599 724898099 517482590 818779842 955740635 445720711 186547090 496108185 884271652 939067770 164082014 216087831 374586478 345138303 68997470 824163913 912636739 632319890 627736684 988085930 331389084 900725301 833414499 506511521 967401236 790930346 362634275 687187132 19193504 63697751 111635429 75309896 508360124 983109217 388338909 648648324 883452848 480598770 610945412 812324391 31329457 760034864 983712634 448361848 628361309 864360051 516458472 839327943 570927274 228250483 187904188 631658191 299809281 151527189 567790530 888388102 793935266 767309601 110041335 489465095 961175253 127392189 484527095 465056594 799193285 874986330 131357226 538261034 878170122 637304700 981808966 498589720 162084721 501298992 453169956 531344912 145791547 310207326 66294600 971934092 679001245 888422325 611828792 898343942 699985136 809844441 768241776 719848787 595269745 928108494 576395620 945385462 473000291 550031167 704336485 95198785 545729844 839583154 900761883 469001527 138825847 544353207 718366732 618215424 447154128 830013109 332426261 170973263 339947877 521284782 453587512 603967337 934572034 773703882 184354684 239436909 915544235 833955889 22164483 754907577 983665668 532057714 274920972 528814379 983350252 531073973 815961288 114627110 42773902 571347567 613683856 718888735 655015318 781566633 828957920 872153028 679526250 788394563 5188404 830435856 618163519 516889986 946852707 872066628 97485913 860483878 997170109 375034150 436879001 875710925 379445217 369375289 737981702 533479721 219933382 64741872 446615234 959825913 403464380 439971470 379038726 159049302 103985304 1485655 362892858 24250440 449364755 263101798 198810790 898698837 218268934 802403368 768384431 689129607 646821437 61054572 103564865 9033771 747171869 797225244 288492500 960553504 416891040 955638786 802467665 732746344 84120146 750504182 738881989 853675337 38604294 127503928 851323120 452722953 459300761 644605393 934230601 956680802 203160428 721867432 719403816 884825674 776360362 410344469 886976239 337568790 450864514 895921386 672953145 781237875 884644686 336224702 73957419 272778509 773459214 832371525 233346497 214030897 901038169 610591283 657339921 755362782 555792395 422368621 262657440 63015044 518656424 411394140 642727718 164002207 412525068 726596614 713547543 535138296 57785264 614469664 342728813 106125410 757052027 145703830 900187803 605115340 344262292 254271371 186899237 738682278 797572881 717401034 709136122 513562672 947208062 239845035 41875132 879356268 933724389 597910610 951635642 556201072 958394487 689016255 400114171 24148171 17241998 989631664 632973428 746788960 660278425 661974445 447810464 401559678 309024494 221424420 834588533 364144061 415002373 733617902 169067868 250582366 230901658 103065197 88397382 486947197 422371724 745402945 761542865 766225787 268752340 598707760 361576315 70346769 134894363 153317337 915021435 716805879 451079724 621280063 866142367 273682533 287822468 946217435 514865712 843349346 777523565 696906886 186397689 688588362 294541073 330424636 856037837 555563969 393410328 303390982 834821341 139455646 393249386 882617749 845901304 987051893 126598254 363319716 272219165 976150445 763546812 123062022 958653737 428407788 166971288 309987199 135764189 943258055 539221137 166535074 498505120 358008212 164118009 766447736 666839991 936172738 622072134 342861756 21329169 469689601 722672696 945006404 935430201 331933337 346086716 350239032 801216324 180900151 720272538 44830921 467507932 322524724 282760548 321340551 971131247 94811272 867052333 707402869 338427276 24909774 304460639 883388768 158230016 789349972 504739633 18510025 847485532 349480232 17674120 272925103 620326076 845035128 440930879 979538914 351891283 590094326 773839219 83449363 106595422 815888889 816890135 628908954 925516645 192549715 640473268 939973695 463835523 140496883 485664076 212187122 223316647 205192998 678626928 152559614 587729889 98394716 736001085 204910669 713599971 294464874 857123999 14503292 922511635 867751815 939197242 431977053 147740786 403555731 128006898 897797791 96455348 382295829 229241599 613579820 603884105 631681106 689614140 498902132 891164540 667899069 190820079 69415982 892738896 175260895 71257721 66249938 462001427 681821003 821514046 739443425 707923298 540839867 760744449 200731785 891845048 90535303 106036655 971837709 217810561 70616799 602401583 243978110 869324064 699826520 338600109 922018769 688227742 213415244 744076135 865475367 444598376 435630095 519945467 347760087 529726390 297945640 989788799 121293406 81394381 658526381 553624834 498952091 826610699 692039156 245867673 108004973 173908396 36529044 513210559 297519055 320215900 31979221 324589794 180188121 867405749 377049905 822737727 696478359 222594586 717801671 477803507 815094625 152432941 43075896 872145041 590590721 184719592 192189430 965085930 749921132 928000990 700521934 568684290 358434855 354389459 98244842 883406887 393379222 242508766 96683225 9232864 948953508 549005086 943694839 375960314 372229586 443186832 658329036 732894712 424966472 508639622 241920311 179975308 155237996 234096607 639946372 815445265 629201269 722238376 338225727 838535201 770597370 786896196 841152624 789945327 870960523 725373804 737898069 994484959 270252015 808533034 721664227 618390367 567736861 238847731 425251404 478495926 52663455 841147882 129786494 150180934 903212377 343366001 52566599 459589555 792138400 839095981 231208472 341809229 378934644 894650940 810139748 413571097 804789631 543118221 302734906 891056151 480766652 357163501 568385558 388664889 275897200 882586722 284114393 158200888 137800908 256651526 67255009 961157320 959358777 896583159 811569844 561201102 469832023 400236024 662344815 993160466 190546120 946893989 749717105 822520895 120611807 549972087 748805533 434519063 887801601 409931180 961132947 244096465 367207493 323523565 603990182 135852162 24839270 797340466 987161177 790650680 511144653 293169833 940812305 844365081 731920475 680498296 940170822 639891160 584799352 863570669 265052647 341573398 980493639 421423021 115083235 100625870 960563535 826414371 561711616 909619218 786374004 972536140 508834712 338385540 660213835 699083646 949693039 118518200 803963092 722990016 152204821 417017839 658257911 42518783 115440283 278982265 914748956 564433688 232943029 151505845 424468703 465426604 181291158 423456203 917593413 370052278 995267440 563740084 176065902 162183701 80310257 919990276 823859357 318057512 982578364 547039121 924865503 939349696 281767392 196882702 407853383 441667436 255089266 484669366 811741807 518188897 125362124 977368571 324189412 833384541 166066398 586072287 557054939 271795235 305909945 341402927 575695860 823301112 140644081 605177412 47042339 98707051 27477313 968054554 125113045 50638971 399454407 720871877 264124408 100490486 97615520 138485622 747451739 916296802 706971410 610663805 846681441 114306444 891000230 508351240 438178789 926965002 981976336 264315873 192984522 597007599 569067143 916385368 421057654 458424383 175282288 930047590 966244091 808180476 592488508 990446997 575964566 520747991 79012256 774321741 360307403 106050619 11695538 560305037 379357722 237550245 268223210 829339104 510862575 574517852 344779900 377836235 634005976 602640903 255900744 510630619 394643174 193483670 855742267 352959552 764255538 188212611 356699354 577925452 919195038 534716198 575874353 229049905 635838465 19654201 746650255 696615387 935781861 181994662 132163108 968390023 741461133 528205953 452110902 680178592 925356925 329241832 613237619 218399833 687653352 69706129 990037995 195183966 283674002 126250604 421183682 291088936 596226201 154402758 520653849 560804018 192505317 760679417 816896812 258089441 266562540 872913352 693928840 102396206 624109071 947021294 512176049 515984937 510434532 5332369 485249315 300416415 538601674 5340920 614352349 818934947 349389653 569609661 794636102 291084183 168912684 425181297 834006966 55165718 196118591 70339948 977409503 978615818 387843104 522658968 638941916 712197353 214666978 938148229 737186362 40805569 112137479 987153630 743723456 901945652 343049011 591888047 298652904 837298614 753157036 186150486 72457012 191934632 876670154 583015928 567095304 859743300 661588198 27502861 153340746 574001833 775557773 27522290 676412649 385883194 834921696 77939578 469658362 62340174 53044252 751261779 330167514 16514423 776139884 700324004 12970619 659443264 215866150 802109794 734487649 824248820 59711710 379427410 399462703 220510383 438342582 745447228 675031226 676317495 997713268 407657290 27510651 15420007 62126080 942523658 610323033 270851397 93728935 285978528 422875033 995509201 441525726 203227552 798937929 383905117 109792026 974674030 175805703 783725187 653418838 672907296 201615932 942151497 214372795 232066338 716356810 530748325 470104400 538103851 62366682 65859691 557204129 71493372 234116710 605803600 163753723 963881999 474005007 235634623 664496765 564991358 540714288 163735586 743665449 773798872 712432219 383932179 529961474 636968727 979375273 207586568 5497816 465683380 408653895 28342677 548806511 387722235 964023624 775459068 939265138 835343902 61949301 12490947 223866605 392260055 561889680 696567594 886335206 194950232 732832068 697190869 281050998 412310120 771037835 874237322 421599830 11742790 94133023 106055015 774840737 867376354 542008212 233086488 978255742 502337779 345342182 601819683 603894358 79718411 948661908 523592003 221368053 436235446 346960662 139289197 709183789 308178460 91861880 249862087 60527442 427424086 562520162 889709085 497930580 929713479 179970506 229139242 498801875 757546361 797371750 47609983 744818150 681369907 41698713 785342637 810940841 927007241 394960537 349266587 296079319 271676613 114701759 40143778 443672721 322828438 620239370 653355299 339641915 517481830 602502261 136847194 948759652 731602025 431893787 239412548 741448543 523933085 324069375 153611112 884897754 311213270 506029205 972460240 694315768 527740348 645549007 642383825 922847111 961913974 110239809 959960008 655621176 258432997 812715656 723360660 708012720 31727846 257049236 794657162 950000288 905229178 5940902 496226717 724046390 13764337 21296332 479017552 681514193 274000125 7104582 345769190 38173759 803138772 354316702 594923082 567176055 857236987 710360258 239872889 766294722 439785762 603680283 764769744 688720444 459400817 180933822 24756731 40722562 184782144 608292335 781745115 762735321 577880012 372045837 802381193 343631443 700238359 18817555 479133387 744615109 263452605 514154835 875995996 153076662 432361663 280704327 565224216 114315030 803962400 835931680 694482240 419412930 162604926 73077809 33066409 485563387 584865909 329726205 50864379 340626491 348920053 17017308 490428196 289018880 504571859 373700063 145709201 789650658 483693536 744848216 877321527 984990670 92456962 318076004 245084490 422192850 707876794 632126541 528734948 688458645 198626538 527849749 896531918 215817115 376143873 442834683 558042379 818608412 997076981 635325850 819505347 267063138 919718407 468156097 448717873 634724113 63204758 727792469 957686386 105143560 593267425 645416250 890063968 106452413 233207018 41554239 221009761 401335819 636181263 928452410 419291289 326807827 104556747 178743278 898235355 508632053 438509246 548787621 408532761 90652182 878795024 528713347 604546677 493202108 112834942 146533386 765479612 754649578 340264286 143260260 59600822 644998127 258042041 995198018 897885494 566564982 85911974 899142167 180637253 286802721 846624586 703958751 829270810 574995425 969585527 499667785 462752586 722780569 716689739 780668073 490489385 569639131 455689761 489115641 867380141 316793717 5605382 441164236 358242868 30372208 335980531 323127389 223602946 248021273 377209698 518101828 265981234 515858423 901230273 10717831 290081035 907050037 798429867 369466656 387345312 756088877 12232067 975800815 702767381 671454929 343987885 418221264 958398925 265023910 532518378 86743484 384790009 625125235 854537048 505447065 326906979 843571520 54999727 343034641 169999387 678216788 273172860 152192810 136791661 708280530 544353672 683524497 636887255 296157712 622532159 606985743 900182384 716719476 329123501 248790863 861801238 127667823 103198002 982762978 894780904 505505995 424260418 199438136 766428429 62900452 412447245 267093983 563987404 306389782 475337336 165731838 779619315 763231243 702863313 839750475 172883200 927646174 826777557 237410144 153269316 475934692 694744800 14499514 779834748 695809708 995673984 186621585 4398246 404108680 132241796 203691000 713564798 106581716 547123774 439184894 660010355 86847387 803496285 904115814 597890895 356364019 593330255 659852370 976133451 369011572 743920710 651757143 637776094 83910515 656886794 455171240 943699849 119600665 383659438 219347490 378328423 469431317 820641013 475273286 691079457 826951178 298760389 391650632 722431390 700639744 172536233 172706873 396644620 407122223 552167786 766795509 651524005 727849291 894646402 993438118 685210553 782371967 481932515 938459986 905157357 911373950 119554573 147155514 306322126 92005709 942360317 780814379 684703220 728559848 670132882 767321303 770106132 354601623 118725388 267805755 353697685 512348055 585557422 452021686 666282515 211540766 534648228 625485570 585688402 587167088 155977968 735366559 386885953 95809615 814917268 41422245 117698379 939118391 263974887 448416629 150719195 253088904 831342427 550852928 264820530 609671261 365878282 68157738 90017014 11552823 467244480 424070297 143614458 413863939 209538404 62558590 299513651 521656547 307835054 935561280 578560246 309395168 883650325 555548286 320208365 23142471 99168812 899189290 678400544 20396964 173294488 610786753 866324945 552228323 468860589 822503189 975293029 481914537 477392802 855663418 138358711 416892168 146963053 387955299 616687867 600332051 973916162 840325905 27950321 421699389 209183982 340599110 612824741 629194676 488751630 879870733 981967373 218996401 666082324 504265279 572862503 394279098 279941456 497466724 647341720 693413768 509933876 607975407 576192516 262216077 787600162 931888904 665110563 680701826 168215219 665587613 421976003 181667567 720483637 480090778 791469118 493292531 33481445 277242953 483392446 111181875 595224648 856532585 516848918 342919804 561419064 53916780 273509366 547144569 604457814 737223120 399571230 252100675 582264768 448083095 904608597 100892903 143572563 665992338 111540892 14879760 857119272 137990121 232543190 78589428 575438566 468520702 280034867 353800334 831898927 664359631 325964867 939357046 547878441 96407702 75592312 835875362 689897142 744814975 321140081 303946106 122516280 674400602 114077120 387579547 98031907 668078537 897205235 126788662 828263925 59266804 906824341 75591589 820816246 175871010 812976693 733311853 183197519 46214833 769805445 680161078 275760558 719479206 45745862 257487490 968477889 44883454 85106764 718345211 559629709 825146866 134064392 481701511 168076546 512504096 346735154 703128741 944837509 304461724 478460942 172035370 597891000 835824006 612870617 288842780 165297146 738933202 91019996 526513557 374673434 799677623 964067250 716544839 112076044 886127185 721628593 497102472 396132389 892969554 387993594 276590269 917792751 730810038 45007044 290601375 827504863 666840154 471848062 260394052 547713638 315423639 779440978 935894773 729805460 497690523 486506774 259632086 171084676 670785129 73001959 871909926 456360642 18542180 494227250 479814419 501671634 437726614 661394953 377597666 965121707 315897318 635502620 498427271 73891930 361184318 626743106 984835597 330635410 942217969 642354042 383904616 45439895 694071585 471912851 911902428 502413102 141366098 436432053 795368427 511991086 730984115 787042721 117916415 557488270 631113533 812160944 941775686 359090380 104335209 52786767 575945540 661965352 320575845 482386323 693629919 459726015 175683117 428315499 935377524 657392830 288651861 275620155 266825365 580117284 577940543 835264972 707109245 251632731 805023486 196964970 108529750 211027779 543790962 75408135 399897110 805433124 301207721 146283892 759647715 135543637 432836348 952621784 169509157 950960709 30624251 746311657 338351767 623608496 469129672 791909032 129647443 756610362 297492802 988178890 784834826 292363449 347950539 89047590 516490390 371846382 301732718 992396834 118205593 443005522 337502932 980779672 732564302 803235353 65279494 330265416 243889842 590377238 698229290 877805996 38519151 788505520 774780293 214619834 165707563 556674789 135779875 10649891 143430952 201857092 128161549 735557377 970321407 240389655 763216063 492189686 629842667 181006442 499356532 874569368 342897948 144028392 811514331 665586732 160279501 974488180 674466050 596558833 941934461 361197626 693770695 311103025 763845946 752887268 19004300 828970685 170345972 961310736 926214931 597930187 103542318 835519054 5541317 874471741 902287999 342839338 413014753 801722987 389643936 839783434 753056454 96106377 265266393 516596923 270618444 761944376 162124001 483174751 457416885 735205562 305966659 191944980 569889130 644550306 410074341 622815544 461096572 646987875 282381060 836819713 797995683 498648820 462673921 618525299 695862447 579695016 185963318 412252922 917486760 31244048 986968684 82520158 799622586 108264600 90120473 268113967 179280049 232373899 275942275 675987826 882317800 176054292 830097824 978983159 793072932 484340433 254423956 828294041 94955755 40789710 230750399 463061306 139381153 645876026 453813997 570291506 432782314 277148799 822525240 150238075 321674113 45997517 389674328 206600833 56786925 284471890 444412986 702870075 802272308 484938972 970515813 768694894 229369363 341821768 810579465 190762615 679703660 454841741 199853818 669977879 872215917 529351624 296408590 595136542 684277007 79624600 186308442 761802543 136428852 896497491 490077408 182336099 941207215 163852943 71216123 419168837 950943307 509536515 241611923 155785907 937280281 987844887 585780907 978026110 537608439 925622241 980599213 782910013 126825101 483449876 862108531 634127682 120092834 228262476 659011988 284330329 58651057 646200615 574148797 404078870 446798506 324675086 878856806 641543770 116959875 436691391 466239323 139281112 173253698 382379858 130832630 590577548 58648602 380935411 901348856 460665138 460974313 570670087 849261547 166470587 197724133 176434525 231849281 347674539 473787436 652699254 941248183 899157506 179352012 608260294 945902950 576059690 814955449 616531713 90050486 299968303 125555459 372874672 602709898 265982189 29355550 160406116 838684230 443502789 986917733 349091560 832118001 65008628 730760824 469434476 957008020 970425378 75016212 386275263 17036937 764861973 79179132 22253099 651350788 659028376 50412134 444556836 965850112 333075946 39618401 639466700 932956411 472343684 527952829 682511491 413110169 349005633 677500570 709036630 389154636 301147515 318094818 763643279 266650477 877484548 494382504 937570538 396415303 502646482 631495625 169381722 222986015 958900066 922924566 571432460 955704855 427442377 617843262 661155566 856842975 314469548 451143842 218508402 449027336 813240493 481347660 87625771 464294734 51246398 849727687 521526121 754598964 834422197 813516434 588602870 475090932 767714775 651893460 349374497 783861124 601881308 663118973 816347098 521638978 897598544 861983201 554032143 696671666 502462108 981983017 159630038 388941385 254455300 65322238 693421414 141069385 644221808 543403040 678371286 997433413 824282891 811169488 948071720 932510790 869224814 329506027 342446474 738340452 136380217 775134298 268967434 817361095 440287649 984530030 907350840 694385104 304253971 106798218 961605042 364423298 562657607 784715750 610219791 389804395 398701777 602420879 854296425 546847139 82577864 233053025 231786361 728295515 841271701 933454948 894959672 323810510 65126558 654383481 897740303 373165604 972662188 764407692 395713476 239967047 53039835 539219984 530263180 889438080 522473102 159980475 975674279 534798173 417084214 62037850 227023398 164395983 454437194 943536866 643742236 24780829 201082976 948644103 35171403 276346473 882392546 669571620 206052272 496106218 906433446 770829166 784865044 235780325 96324884 511185429 269466198 739825633 958351867 618802327 444120089 228878715 559974684 848395350 119367409 682697488 276842268 296759356 682342970 966703406 91289210 84385428 903827159 366993354 298456453 887620414 916871808 135832757 440696988 205241497 604120213 281243017 509731846 905893952 251758633 561270598 591977989 117881938 187541401 617800518 96734344 430995523 934708491 112218141 384706352 694499309 654451726 166526214 498633893 606778154 231346104 991494562 642039733 187174097 388465331 404777252 300180504 601234706 958599037 468506141 285809459 552029118 616967326 226664103 708699012 349687410 609542091 582517377 822915967 137884158 803243472 167068700 976630816 912595813 819521212 178467334 129587758 228128596 650049939 492094132 418871155 192828994 488550566 900827498 826456839 771320146 21428040 688138114 88574460 697214113 654853752 921713281 908842366 737082006 762063873 678487839 644238953 195979388 414462003 635894840 99347707 762727777 722283766 575614910 783012760 779382610 965742307 592033052 456785360 245631416 774794941 825081167 398329668 124509745 961638691 844590098 304697579 419602399 628835990 423710310 950834436 992930668 83281663 476903830 372844065 633057294 338821011 665999514 596626970 989914197 274758379 612652968 577955233 923267167 51957902 209319578 109923125 61283560 733128469 901290757 588894339 915777147 426783157 559745346 55900396 514260413 341290171 706352260 672445902 918233709 516865741 930042813 314759064 854341372 167508912 872738630 193446560 794409346 9485568 428379228 614369552 327016060 904516915 489137752 596012780 359898704 794643728 31185020 326181379 162960179 581616297 567332033 83747993 128679122 320138472 769610084 813547131 27565043 374977424 480677548 436586747 948510405 757315030 464955094 173149742 759859355 278121044 219676609 485059544 359671460 837180219 891194312 442640708 17438081 493736955 740956546 927916149 205790135 95909234 375023286 773566872 410515036 690489588 772797192 590088114 504092640 898017714 983189726 180719000 916493619 112590009 325131085 270492694 646588023 275130130 644014025 397292857 591865733 614021978 513372728 869765428 581697647 120866687 618428091 473088834 302135752 37675836 885559518 9727291 83876973 215153576 895893331 238274718 672279321 285662039 135713194 735974730 15144671 609114387 372166511 619742442 62227056 268260720 768161159 39444535 700671162 31945141 510612704 200754205 380548919 1688819 74760066 445106723 390961748 900793672 643059112 495133639 417953757 120852246 141373776 572486780 937947324 199998831 740623685 717464591 335527751 339066232 25990436 193100031 333112390 82266740 318559880 338715114 851751594 214753058 664263586 137491595 978873780 294615537 819455501 354203194 899633671 335639377 28358012 647251252 622115039 152980755 552444332 790579125 352461645 426794300 64286779 526127872 108232373 120559083 46960976 437842106 207448785 884170767 679081090 391766487 2005906 898580205 200530160 422731085 992030117 248285248 769448166 433617304 293286289 541794509 689663517 716496994 309347432 253871423 601020323 203835848 354672126 444126440 688563178 79641094 756161111 206539763 626201050 280466226 201333673 308948556 929541199 659223031 762794537 838830650 15350608 187734021 631780187 502876085 274985045 855014345 682753319 313168372 815519459 213913007 483766474 770644903 646935985 60792742 521605625 909941736 151790240 125746408 911322885 271289921 654378611 382068945 710533903 845041185 382736029 379094184 636599925 588031169 406767974 618802379 168580498 408229644 862284132 396926988 256295876 340072722 778603758 29183495 245990869 333096261 735458429 982482334 612397359 508046778 494310125 72960021 748529313 215932292 270821430 837331988 679868267 296677185 180364493 672738806 936717617 730721878 789017558 791454329 474583957 225719757 774875238 271233090 913672306 989430383 481609926 645525719 204224076 29228624 863514814 382269859 42235399 252932572 924971642 397281713 179259049 420757707 120726828 154948694 930728809 445508628 651447209 126296288 944141415 879413298 418075255 127719100 581880587 788154699 944610895 727234124 807547064 798608688 109143107 128739367 922156727 107227145 509467585 655511440 707043816 66746967 406772897 800042841 74111034 803462800 925248880 646281280 612609347 171370996 490472882 215812098 11775958 705945452 259118017 878859531 285557617 176273781 503160821 399908252 125657961 790513441 231722078 591469563 306572570 670762336 500662480 77999371 343534443 436401643 135468478 371827543 507412981 794518838 837392989 468943298 714283697 192310291 638675405 512204932 16211809 794074788 962147422 665832295 494160510 612289337 322828551 711626466 652185753 275663243 392653151 418166625 459435871 600206166 549955928 18034548 66092046 211478010 912594455 146454095 813883676 27206263 777549173 778369056 68388065 380901638 782602990 382288429 28710053 426394216 719100837 813853624 232412134 80657112 659246863 519457627 799007520 343930937 463420425 565216015 651967421 959159885 857783866 424848443 537518032 254361197 153061630 987421067 135459947 70246846 630790842 578579138 44793722 713631302 737885331 83694376 888616877 879780039 975722313 841312985 743418164 597756455 899212804 750265911 467087011 11983847 583706901 50171135 934371147 752704974 409842701 306434209 22857546 560438904 132476030 944169012 136444883 198349623 989646381 233376697 868844571 295771265 791283988 321421403 179042433 219776545 623488204 863618780 345631397 52337112 796275062 28557292 6611334 852711711 162318460 6501631 622312622 949933068 267058472 748761977 519007076 643240572 972406631 929392937 690380315 19175504 696065765 18385711 88288392 402733530 123241492 239700638 496510459 437069826 724320915 146055400 780823744 270866832 929705089 626396102 507212249 944157398 176975763 865909232 939404531 250846373 155585896 494772874 757243498 844365982 488974202 435566294 375066929 5122368 29385115 803830233 113011615 430957402 737574201 558636706 601995463 193861575 334041240 460283108 363361964 820389976 473237623 115345661 119993365 262890261 133618958 130388789 871679949 206868537 165690579 300803775 488502147 824404935 832341247 176054179 447336376 153852839 136315882 334513489 171266236 212975311 816424113 749476056 695769360 10008934 745697445 557898415 238625740 705726798 347974423 100210152 480308037 938221993 256657089 605887839 244151865 791182476 116640009 412138954 954007362 145463289 466276691 983957766 215784295 941125073 439534250 481973605 729409605 419323103 193341319 62621724 925129828 300637054 425977380 902164847 37841548 27501692 373213556 689872323 619757425 317874186 321591596 71274759 943543658 130225406 656874918 693005133 428781000 557087050 86562959 834194268 777129663 75212126 8709227 968682426 235202 223265104 795668079 405125630 175516822 931691655 187675355 804905440 374002031 40192926 167685551 902689539 7590486 834077350 451494133 182746969 758812729 988238606 273310009 67533460 361039588 16208512 86962682 628346244 729822371 641535386 815386078 889931868 900166139 962248099 89426336 775734233 345499358 510213135 19255968 17833696 719501074 363918749 348103758 651198408 552099212 58028514 464494657 304201439 40270604 716205304 233170529 657935068 277453179 427269987 920486383 992044400 853511596 945910206 654719414 772093170 910211730 172988420 10115996 927702570 569128071 448084793 176407455 980028594 661839345 267387258 180511546 434030387 446409519 620311935 131604998 946343121 745011043 552760505 869987902 862266820 803148139 768412152 296136840 885081538 523484528 858939877 656601042 682736990 465323956 701949247 962970480 856591399 515868844 961428289 814508225 498773255 421077045 8732382 697758085 353247788 799985845 883409007 545218199 475606925 119260503 836582553 219645885 496882325 378349018 663552769 660952932 68332796 603522889 208054744 137425237 256124976 917306484 744306141 92067402 811299908 394901691 140474672 551802501 93030926 457666329 966424257 262087500 742303648 687031761 147402202 545765046 435192302 739557021 38026916 234678480 623737986 672744848 887574289 911733845 200370081 787931883 754205860 311500645 870205151 394058893 615230066 879093625 363075512 444154372 372542661 811661945 673329056 312155539 872969428 792198270 297907577 753302716 901149853 472820011 61625308 956546309 51796091 868287173 994548856 146939326 958558073 610283874 344195182 807440350 789746876 577878403 813441285 772754760 14193709 969386822 786079856 418605433 765875351 229891848 567157675 974462023 206185196 4039330 658577793 791786833 409338465 720935492 801710409 278518964 523958828 25062912 665115428 657710133 830461207 95017225 550132268 879241840 389111744 722371349 602705266 694041863 841273258 380339111 501740582 812259327 766248074 338044546 771558239 153306579 14308304 94084424 209829026 578344281 848505703 812747293 618892019 943464966 357639747 447278607 472034553 19472083 81008381 5055911 852820728 38538017 357640800 86126496 681055493 525469326 838585291 418411707 472362223 642830144 902150867 494213265 885051692 824069680 417099570 37216635 333494814 648628428 406774678 144909511 769425037 62775898 786992572 294393972 615662360 346362159 339563100 640210782 417037220 698658619 230678274 248452998 510782614 603196406 941318438 287986126 187458169 986604531 789007536 178772216 748684899 269410418 353861481 391306 346256544 380091942 345776758 401743627 167329056 320706532 910442257 453052559 416069337 332130901 816091507 590210139 728145192 230265369 27703006 249912814 795475494 64593119 47605478 83429326 497841034 486469920 586224419 777260910 738996339 296864442 434912989 111453711 845937513 641291334 431952617 662874469 79606211 709588917 21380386 286296877 781577456 450705725 48533737 244151750 832865430 731150997 874724230 87020306 869723396 603151875 582535371 906207413 903143408 370248072 638507677 461516795 130204165 938169848 781527450 580784448 915572048 749947289 846229387 482912309 436231831 450967739 434075113 967308903 380931126 992959989 249365318 508936253 128176867 786684648 341749095 172230997 533443154 747861329 246002079 708058738 895804858 160281018 518352944 859265525 806629931 121289763 749616446 381027245 804288640 432532029 334508187 559160921 286888801 125411067 611322476 864505992 626285304 756883886 31187115 122789802 257277802 477480197 878105068 582720226 537256086 371181864 427441120 213376245 267555962 434202174 648278916 148466676 288789952 171896146 616427013 59185854 441042903 130041388 433149288 28938256 748374853 727015332 203237610 393232743 51976209 244495291 376586619 42083643 972109650 788557555 379080415 329677460 463653376 879981786 615254602 851385312 376132383 178001956 920280423 843278366 363649473 39894466 856085925 952983096 907612316 936434093 312639783 270037950 704389912 544380715 926972889 550727093 596647381 311738874 958036903 180154312 976133161 365649999 714826267 965191670 621583490 43535123 203212094 333358006 797537211 767842539 615353741 240544959 420940062 905296651 795379367 719397159 989086783 539512040 145980980 615806054 467507190 745864893 453583671 404389488 306150792 630261494 989568735 313322109 787410744 831161538 708858427 83088583 192103699 218132406 128641831 821524536 113591048 119719446 368410896 540325658 948872725 750424287 904771863 598176956 356347038 285016427 39239802 201361697 219779902 611502396 260096821 664054950 981922546 494775092 732932161 909710371 12253866 357442493 206154218 89858689 478325538 798862428 146227593 561936893 48785500 78509817 856496426 649690563 774422732 755815906 269870497 829465518 949679437 873890146 902129800 779651479 479621348 514358732 982852975 767041896 623815107 988043249 79669019 325345959 599750417 754612242 177213408 404039406 994914582 485824569 944359892 684906663 755291829 999722164 418604442 125219658 953196850 178288119 303093501 298721892 422997818 392315468 852750127 999485733 345822765 291730179 680819660 336499702 979722780 140922497 601501964 775267310 233480610 28451741 700991234 265473930 940683559 244016882 135669154 538354124 792336516 301902345 763235730 100763798 834513747 541264386 8616648 782559591 747659994 846078592 556304019 512954089 386849029 669527680 648660147 335292815 752427597 953339968 746130974 578933253 91171559 995345083 474204428 619299237 280244248 919514896 486181461 915904205 877605981 816678760 271325335 5107589 990042557 558687311 935981233 956149831 298079273 488992350 15418674 804185124 640225077 103767264 902655818 926673085 250214060 397151622 468593633 621579899 907615803 983767557 264436125 289203163 659273288 418809385 605786517 540637309 361180501 95820380 985093307 686745935 77404332 364719671 548553201 70691657 921770004 837704862 887614156 312469458 493515735 653878599 833448443 266606626 658209742 11937685 913790892 525547525 670378150 162897656 357758645 701826239 360593296 14268489 654762530 335891701 432872022 67109203 144883203 957723436 41063038 867843366 63788157 811886946 966386649 949238960 382060344 68689105 459631550 598168691 642800962 973042363 193364548 957297431 445682592 198141570 813582534 493573023 239478901 458276905 67632591 967394599 452122885 189067458 228774126 924967080 943075196 830827538 725163738 223830220 419221311 558040734 888578815 557969110 87622855 446803187 110067656 794099483 427177697 222087689 901453141 473050796 211248617 240384081 297600711 299726145 707242777 140078809 730757729 408122791 301393468 911720800 393183013 10885175 11211161 608997613 695736626 292414617 773094929 681845670 111084366 770068866 990605109 193765716 865905206 486461456 140540122 234600827 705949293 266153297 835470109 549783514 790788207 662501755 708620842 980410270 714471602 683687201 93464905 16732193 508316864 368937797 775685157 480661071 796391259 316042893 570860548 637480719 432325194 785982671 920877831 174269682 490095316 552170796 828972564 844548151 991637898 12312756 18212712 378667717 183798007 842778159 672338850 37811151 398689123 492425596 180491121 44984623 300474540 664926363 661547694 239038447 465297444 209211270 334584756 81789366 444923081 754465046 711012684 707389040 316811570 42465455 176911704 818831459 348154329 258924018 465824723 943969663 527436000 671642569 889381894 897507377 21702201 53605511 438107573 238889946 290798889 150896731 987794417 890628124 483345925 684442049 357857843 680759189 546626008 142983528 384659629 781972088 152091503 986075294 727957627 612970696 821949878 755154477 707652971 706280196 606154 138817949 160431651 870476053 476760410 714468258 101220002 710522090 745041444 201938498 825468036 321430072 562931500 82767800 304066044 674139800 558515978 710766064 831956118 995987516 150638370 520163710 306591139 618086305 806583135 247632057 333251730 435559658 469302832 240157290 195749119 995665612 702994283 604237422 515525742 606645255 90562746 616487290 7927634 329630183 585868701 119066915 375011984 340017947 960765624 577325847 359137122 822392979 926896989 919757691 137839413 693944150 308903521 341930509 545227310 257086957 723336500 184772683 358773050 336441697 93630999 707555165 869646377 287126226 898105809 801802812 614749048 382697059 680553524 235369022 617381208 929465533 147215223 326512876 570219273 527203633 692913691 10167496 171486889 493907561 628631882 778197784 950332598 992237851 133428887 426045800 952654635 320132269 375421781 847553296 464529558 636132791 96199878 41389399 174827050 370689436 623426213 99919698 874587657 74591545 765551977 931124447 541890946 628225252 536314626 443214120 708627702 957338337 879476218 50017336 549230833 212837255 792446993 307226375 366674699 758042992 445214421 312873178 8779515 295947922 630914882 526058815 18915422 87680383 445589647 888660881 193078692 78762157 281132193 261696146 587376479 679254911 36595385 714549906 658992558 90206109 315436940 571364856 248824480 725487566 462318001 540048584 988122565 621117335 2512915 475656489 514371257 198315964 920603276 929467406 481170234 591935196 161285293 505876443 495460335 694566267 41527898 330569747 961806013 731794082 441835171 226398673 363557041 90794091 290501339 363956544 617108666 193775216 128387458 653229126 270708126 350565688 905601216 967512929 360359138 304568779 517227576 163616409 250502819 880042251 208197018 863507536 984519683 433925144 138104184 350433038 12715790 872828991 39364197 912065732 944374032 691531141 637404239 764650537 498117558 915712098 539490732 623334727 105326160 989140132 234673765 203437574 508592194 233705560 902807663 227234399 6629653 37750873 240373302 205890011 982025359 873694303 90796568 334119107 521804438 602620610 671479156 165237610 397727326 837572005 836646873 279765840 150258775 674918318 450648129 381630655 641671757 76070628 754579315 653288880 558191447 307559427 441931811 834915530 183373577 646161706 316196052 161516865 813252766 643649011 583317600 541017951 644481390 536616609 980248101 506162191 767025017 875946327 817447515 534526556 308489296 538392559 589663208 503485109 927803109 954882410 994926379 873415824 644852822 225580157 205944626 543720081 409671531 140878609 553961833 653932692 20603763 240118810 705660909 756309835 777751382 795735979 271991529 605144472 915686163 698269445 339737682 765388518 425034229 844661738 698568922 98003028 821458606 539252749 234706334 816994544 935584512 403548801 105623938 561266109 439455656 673346674 944095632 742489465 879706925 952271753 152525943 650530771 584233818 681990686 419928171 200759521 360340841 975987990 835660978 674095022 899747526 982857981 694335066 100884142 406492278 803562876 706015599 402015698 70672120 574292904 714889836 642494719 562648704 670780629 884782943 247077577 134298035 16921001 379056512 770416283 163386402 1622306 737111231 172259818 627388778 944919101 60370354 43510129 275391019 238036520 939792229 814623310 148896325 347961206 631575649 865924923 694552188 364712616 179653222 436787015 533532147 100667818 715974292 226240306 669023313 907245235 596817995 305069537 1441796 502402775 953143657 919044707 668893547 907624282 542799434 85936358 612468188 494872727 782293413 388713317 31589082 558625342 409006033 21645870 330338554 167731430 125640402 649654420 469856134 666971315 791148420 617803955 358924965 750610407 468247578 615910872 781201686 868597457 90198137 630755379 426747567 638099859 422015840 965352608 135442934 492583868 862891570 402267519 579447957 66917193 400121220 517573154 321656781 320330419 820042666 483537502 892682080 487809215 292493950 193253077 451843266 441657324 927650285 581568054 274583748 819094764 652277628 27692154 635251803 58919355 388548187 418862915 386455760 738182787 932105565 936180175 251840273 175358897 324442134 927430329 123592005 593810966 805989726 166348413 783666379 841989194 70318846 649869752 523960313 513815836 750201701 206299613 35951302 776604383 112584388 931729818 217646056 533064588 33285810 378508444 611342040 475647148 705683391 857436812 236701092 550767566 411763694 190950395 84397894 682159350 457393727 740225706 907532218 980893408 475631924 263833429 455584432 641603559 656467649 779727717 905922250 984387779 802702741 129710057 561336059 745946941 699952638 552534986 431468362 601707452 513599696 951707615 407694993 347454946 692256345 181738497 99463920 108710568 628916210 839237914 461315028 945959997 526767049 615583792 641609366 776788916 381428917 928556121 122785118 221648903 699473954 160161548 340853869 754663615 751811539 254790951 765040306 782144704 33046481 108761994 74480292 712872500 306012273 261418053 584155742 985483133 621343082 931590857 330263501 727280410 204034890 616251171 528860906 4787996 973781996 258239435 342839251 90749820 543670635 594715518 724856151 786948345 220026207 645775438 292113911 209500752 270586059 77665337 628691664 204657161 559604998 933543291 373044976 289213230 201383321 412808853 719270357 635205032 550826105 204573453 236275556 77581661 863115029 414135838 511645913 146019858 850259003 447225115 477946557 788501934 707658737 782377856 710042957 758237188 13323730 574670323 35268494 897556153 748306205 580489688 363762500 795157598 804551400 595267098 704776704 666529039 549557256 389577656 159353019 262173950 895459702 661552431 101834707 213676679 534326347 924421280 464974455 953160537 257836608 771989542 185775455 175436540 578116051 107536609 904194669 341742388 194521910 904565599 674740831 93710775 897940599 369815460 133012549 871875412 243130153 26313101 392639973 322378037 426797410 992978592 452467477 261124785 139833116 487299027 483762415 569192240 883309424 741613613 156344534 252897259 969668399 494662224 387218242 449947188 817461102 831147364 811585807 278255061 212931418 618730919 671795667 546617596 283004646 886763640 524179922 38379769 362637040 458272079 428190207 798671749 186369794 70480223 85881579 958146941 864992607 599781181 363331539 156787279 718487656 130986256 284291895 273338814 35968461 763084538 368443436 42288288 120890078 871325674 102155953 557284132 52129366 775961617 415471656 479860443 587324816 337539812 283989533 925858341 250747171 341628398 798303674 990756991 446629141 252464535 806398943 714502242 412615050 801915804 731549462 694633594 461420831 590114210 885188680 465748705 967724889 876611461 105032403 111676061 153148177 382930547 537399321 539487541 517005094 810615748 935144485 462094373 952314727 587353011 992548470 943232234 913981105 267881097 239687035 625296387 831752192 346126939 947045102 50263912 883888385 547720225 72578099 657200035 747896541 395159829 392544083 238479785 50840180 307715696 157293014 617540148 191261965 316661351 73513117 859178498 826351879 594950626 633724035 162286321 125093218 486127842 398584036 628170520 142750049 891594958 436819053 942967095 200196140 62420497 131434462 80615437 47078131 5107902 946710059 793411687 601397751 216594831 77195014 826428458 831150712 421053457 141619297 269299675 414520904 845111428 968665032 364869745 801901388 997739241 559648530 221120656 526516076 938001317 51109499 522645787 620924934 717711567 814736255 729728468 53836589 342127323 979190080 354720868 702300189 999361623 172891844 900290741 543726588 586114864 393380408 766396783 287659180 764879924 60566225 850794086 262906391 485134912 212389841 291905333 449480265 212701694 23006599 951035217 181679158 647873950 459107743 354128203 726250566 865191555 416793595 377389542 542879196 642590502 952602146 839113814 628047774 502925400 505597376 570561253 864027114 894841918 832770605 618252801 35534695 409643482 592687458 500553886 217076961 367878160 167014189 906994441 497823150 258135493 795271451 341590902 883815036 518733856 675046416 915924308 370666368 389442699 16327017 671945637 669968364 124508816 866323337 135727994 776935028 878891683 297693124 492430274 930337840 242118861 367125213 522428584 478739993 750621835 374505686 859237153 387030205 888458232 907577239 95421616 807490997 716333036 373714894 818051754 765100114 910538338 769876629 591366821 331524913 931337390 60026610 83162134 827414426 372679702 662520230 961790881 832054916 526131286 412078333 779712008 934209075 286799074 227005236 283245580 734233151 626246657 403711259 258597172 615367367 359800544 711068392 447079780 178548940 454006953 232063467 915184213 390109281 425779265 147539144 950533469 199154593 299597253 227348489 899739258 639686811 137605827 194022383 107329935 152408285 983789485 439977725 487641287 954253780 882406463 997136639 336367807 41157203 847229868 629630473 396139121 152448651 975917041 897771500 198085847 462615338 441541663 67525643 548100658 206787031 936808189 493165839 281660546 490967480 642472778 680094915 998892735 407122612 699473934 688567743 271008626 576034325 114331551 267649049 125160204 992535642 25567085 937151726 356914929 84045109 149736331 829878698 115099812 320900577 877408311 22381977 944585148 215193045 256371922 708262113 237173692 15287134 915890298 190556501 846638872 51304944 216398177 896363172 903072308 711188375 39484311 999339787 239774519 905634065 449853056 462816999 348716496 127221715 959496854 396728148 511195208 190615861 892284995 649522490 538111283 256707446 952615343 34200678 24316409 996936126 247586470 844987866 105773515 13795782 786033996 248653668 638957889 192635752 471680842 766459738 71761037 729714001 518346639 460522068 322657293 505154840 78244190 783813663 632469974 648176160 45041800 763928919 195251147 729052427 352448247 241896337 92871310 1166322 749545637 138580613 421463681 737090264 620616611 697634503 682552672 887365501 280292942 794860786 409513035 268680971 526499395 995909436 35474273 164406004 78535859 718744985 250467397 184534433 352404680 414415646 300675319 96929186 913018179 319275610 534305410 268697356 710533038 44203310 743428975 137053450 156735402 610633594 159067054 885281561 258065817 438119052 833704270 910679023 744752334 660889994 333761448 329612718 224109919 665855283 779794881 266087860 302079490 641042053 194579453 983861785 277032333 135780553 563732408 624833828 524388895 291428848 476581756 944722155 523069497 811825992 828337384 419272905 883783330 688054897 705430063 253000629 410664807 956075558 254278385 111982825 274068238 509818372 512382757 833660782 326652309 536443089 648749292 58750138 523460059 93303947 449037617 771107686 31939508 660070068 74399156 26735406 475997220 921840019 241818932 478107856 878797633 882292446 655473922 987932517 601334567 710872579 174576733 232098235 297254604 137316792 792574117 143914235 378919359 917170564 719622805 921228703 530948084 407070145 943511050 636086882 384408958 66442254 39741494 892047707 669794274 772798279 149838954 449585480 789926684 974673709 513381923 310900113 452979931 950494740 470871811 901140976 138411305 477543675 802745576 297408360 831765529 398342232 983005371 190569029 270144436 636387621 936838369 315473176 69715068 915705804 682453420 542085928 156086545 154267902 286862918 326032539 416135331 8470101 815690205 709059599 940010424 148988172 264166823 422344295 53808197 47633715 627910098 905539956 778656996 714835200 121603654 390147276 686763918 164196946 84511811 961477669 317107737 66101200 523801234 732726354 981943326 305278950 227189804 381417434 761182839 672486973 639195174 610613666 573353975 225997721 963827718 631940551 980853302 611941138 524888026 59944086 695663964 121898146 776008454 344739060 342664241 60896347 344801077 463777185 813630717 495765365 526719050 915315440 587454101 876528442 2984219 172207637 252802428 575363555 525756209 5945686 782542774 162508762 349378207 820461233 16521245 254579661 171467557 151600822 653994292 19269706 896791293 655345258 528570609 410042737 959024006 170160542 853339473 185823830 494814154 507383737 576182632 51223610 728192796 117784419 5321435 761842668 725525546 243195406 799576518 639727401 577557475 860184630 549998728 898191973 301655782 177656350 613321986 521416898 805575292 900839152 691715011 718524024 160887411 912991972 226730793 997805150 466569741 467429232 757829204 621481010 431807874 853742285 135837198 247790350 244928654 586135202 539959581 713008767 40373030 70720195 122723261 745564654 282285541 418070967 383286558 596777410 743629567 67771332 748602904 224720117 958539357 390654614 299080113 773540084 766766522 351073635 285380888 660701889 766189263 205980686 249179294 135673774 121787802 914860078 922287380 768688213 425052688 193391711 439709272 677788889 863884662 544330707 397265458 403164147 492833360 896076485 707044880 889201216 986667367 706888297 384522922 225451454 975089941 841157220 29294457 24754735 751029114 891798169 293400168 660387206 970662417 50760680 519688989 814200876 878744720 906348567 676790220 579656858 770270692 476488116 964682747 289931772 468779067 537742049 669781459 624801525 872387921 121877299 371802231 934535211 584871769 850961047 911820181 65470006 389724603 620488631 112172135 604326179 941755919 124016743 751532979 559408869 562839191 690712119 293757646 298799319 285342917 191191109 729100297 230849917 726363862 497534502 982237944 446160815 503418666 198924623 157402267 170082453 51241633 773949370 363773030 232393547 362078668 458083140 383470603 922353080 272529805 704383423 532950724 963679385 79558540 543980046 302260869 17435327 425893329 896541623 56436062 721446068 796502868 803735465 969305770 949186489 889675021 757081716 726304566 456316444 746131798 897189293 108609636 470951335 485993128 49941867 571954328 580963655 619291761 845703840 875898218 349076605 222614266 838566550 407522193 796654438 19275772 458180031 870355276 728532635 166909597 469921166 536523900 643240930 10701949 848746952 196473935 262964201 640164374 415176722 824434686 873226882 302765718 145879456 521216879 459419468 800061333 79241245 671409540 858217743 612387129 941817525 463547378 258667618 181844414 659645534 639627135 1129650 736832558 516972404 446289094 432975978 901505020 391542578 442417769 718130707 529636557 883507657 844358912 521511499 595727275 348173504 767730752 976501697 682936198 66179528 799881859 276415672 263041759 155710402 998505840 681258864 576971737 340802725 693421100 151208805 348288802 349535666 23931330 353263001 567220435 270832712 704298413 221404356 885862259 564295613 418534922 700347183 665513332 826943127 535431725 36419536 975149532 692327968 920970563 102231470 614611553 835569807 210782950 736460737 473840044 932493084 793234656 959189834 598704313 23779895 256278148 182092097 950805322 602897649 155045799 68626579 559468580 504627734 231426122 857751502 124018046 353164021 159149744 273107717 267662536 901491251 370037874 401233314 378132083 55799730 716004756 365919729 117180971 336158958 409264941 951922460 204688346 337083107 492290257 144485547 593238973 916992201 935636929 806735611 321201894 301684331 685117665 110320613 931359144 633129838 383850497 302317039 370179616 974388237 278971232 924869971 951127452 227438502 750791028 492099891 38419329 114524629 740403910 367403527 48449381 27307035 557359634 485658261 716133441 686840933 511620591 889325731 477251942 314820037 528293624 244484211 443927303 915423934 370433149 745390238 637741074 482211545 264988195 174269476 385171834 498629109 65394048 102219159 165613127 145162547 772050937 197195364 425920451 265160420 336361721 237373055 394273299 62749368 846472584 257921029 143367149 169491714 304427967 874968644 333236292 722770613 933697943 537325419 418631668 57719590 347228258 460291655 316453006 896267372 762328391 743369190 11047984 866735911 192365569 414043164 581624230 884752239 314200219 823310351 718652865 577655498 672274745 511262538 18187340 408856232 323298761 974229032 216625070 540761607 856839844 816985184 547826444 586428145 472999599 876885462 33891088 278013040 57839053 58133923 261992673 787759426 428749498 808213657 505877735 749890823 23399879 762817493 875351262 347157836 140047806 546192764 666655316 881923926 727543996 874769688 224916391 805137806 148754467 232123377 192264133 132564931 131165057 187013798 845496631 990804817 683060587 872498249 964619703 629445869 590246998 194482893 513630680 934701295 341198543 697303405 224457257 431743361 841311364 555678332 752508592 570385146 37921827 291341930 748438649 66522615 578336599 683751883 372109942 704467348 496306680 530713192 794562381 847442134 229084588 783665616 19264505 246357147 31511609 183345936 922128560 590833543 887494844 967860557 967268675 737043283 167142462 792007168 627251416 610971546 225671262 776796333 416173782 897690820 211134437 741873637 173020070 149564217 747522277 232239688 823592652 932376973 450963139 372353055 126844524 208987900 807682018 963800788 17924043 147594359 188948171 291158777 14337196 341253708 626575946 212948268 571368472 499313852 428932845 651815520 497804228 11056710 459079167 42073100 676150010 516328699 805505628 721724459 7132469 533023652 686634650 300487296 341864000 550611297 816601070 997884058 70759119 783125704 153511026 456386299 656822911 219561322 362780561 904971652 800852299 448430747 483745317 683295808 568884206 35167145 814034096 590645836 454421765 53992289 918379761 80658025 321753463 319199224 278930231 916244986 946866967 298170994 403178521 51617258 329647095 78749203 902077538 120108363 888337487 185811557 295211163 973657512 521451168 545431019 476183129 122477826 283062055 325429404 77467763 38600545 951624452 803489439 318911890 256552962 382113405 940707811 281935884 818823015 152939685 327949435 22806158 944469463 17684122 54560956 40281121 610353076 444218285 207105117 754978613 484765149 574441679 195644514 614117137 657069245 776566171 897442263 344710135 113462661 346410653 553778198 479844705 376422190 601349600 707166725 284085155 859221721 8544189 215152847 148395748 715724958 124683195 958767382 184799449 702662089 252617346 995625466 309209397 476399181 940578136 269898274 763390160 59432841 166896212 696812107 741632630 935103493 120674780 836136917 979146535 395873600 821359986 871258478 544186697 156019504 384630509 577307587 862120560 715705666 218287503 61830932 655902174 436427953 466961235 805359885 323344290 748641907 283390656 126906133 899795235 471120149 360582995 755710368 618139850 478381890 856981162 928934210 50459498 779615861 205576765 435250787 570551701 205374341 963075718 161362163 189521025 588157479 482144688 884544535 443974006 576383735 688068557 298418356 947681045 44982712 525751821 632281117 306449861 305791078 408045688 521335545 918060984 898630094 165138966 138093754 75991571 935539997 711121233 973375008 886358382 880522033 245132498 356813926 17623575 896634023 93852278 404070754 796851640 5528650 345273489 41787711 902696252 752823657 579086702 627305081 458939333 490725783 138959436 863818396 602312814 732932258 443433819 601196319 178080192 675637021 258434298 730616098 330138948 762297184 708146323 486699806 9083313 601483790 486296756 505064149 424415952 801331977 870724020 230910226 890963614 960555876 844144283 924818534 849689379 655815596 320012369 763280910 7437752 425880707 445944065 956351557 58339102 916737193 7892797 310148794 175932215 427049604 194291796 263319234 662282560 951734382 760282447 263961827 642980877 390044732 409100525 18463844 890020503 364164725 420224066 356438860 321698737 438614572 633695188 663294165 494700795 670525673 120241900 848059646 967826320 223103883 662818231 654190301 87887424 972791155 13784691 170058516 919336733 824521408 185676023 197156982 751879972 800815253 625257244 794678839 309362735 790554316 481153203 154904502 418927543 674478894 374542112 869567158 284239220 427434756 169099471 208597644 823340645 506905338 439269342 14528642 861226741 590190252 697476674 479679278 887572286 245472539 643599690 491080043 784560456 458826883 221743942 416540726 493377970 374320102 845165994 175046030 222978096 850785039 595604500 654354326 466367935 873628581 404898157 315651531 518670201 825835186 448840987 753872126 13721014 780470074 914930626 329566341 523046596 552724083 276332693 726881065 487763213 593972691 642453042 936918059 365333899 77219566 199640130 605664294 949292718 303968762 711717318 1460713 569680942 904038813 363103126 212398963 704869715 297109958 840308602 103765577 39334750 493499441 137159901 639636026 483319732 797942850 37890571 134984620 410160379 725151718 714543932 515900870 794504834 41706948 749714725 38699639 208309016 187176376 416843811 224933152 896619205 962353117 913912827 812830404 306846436 238247340 876582 638332067 483194097 339918697 823951718 932093407 139356549 294638829 198257279 491997158 740810318 349765967 670343778 196493681 207287652 851622779 410744275 857462885 541716871 923589739 217198025 936526501 512485664 976705541 373663550 840998381 446854237 694257475 525967305 205986794 726035247 165830441 312742076 142877454 370005508 486615471 145716264 333568661 745864149 594411860 886912823 62426746 912386014 558599587 288211685 487353982 411915900 861394245 611938201 834510521 44991814 883299554 644773934 779723426 761355861 844198678 394943690 677440098 482344456 785074152 506206124 101559277 322091374 541271112 94806995 193351070 7537324 371444726 469396592 626701373 186207878 216355970 898679953 365930541 819780007 950589404 102974124 767301781 711289322 34971152 623395871 838182700 309466604 237682294 287493767 117956323 652002051 782536755 44852906 71537141 411935810 502980446 636897487 908583108 634199134 555332718 537978954 46413763 48739001 315049926 244874570 565767607 298031192 454401516 1037132 570579441 13059101 633966233 295321404 21987873 931123107 387539649 911118000 401162661 626251108 560928639 544997647 175172424 940149376 536585291 708142619 621772357 550676627 84673295 68193158 80055796 535437693 244151897 299739117 409490148 405742446 627547732 92684840 396760423 172050567 935508669 212899726 372124635 829221348 440499264 938392345 104267319 706858112 230206274 647936370 421274067 12210079 626481126 216769100 926455299 62323658 357368003 21395890 968604233 454529034 124538883 436227175 137458431 870126061 79212459 691256453 149677589 609924354 837236396 702958481 563037905 273075936 368771890 246015803 778197587 205305658 408721406 195833092 117850679 389691390 498680397 13892020 365117339 762925508 573830662 13879646 787483122 990642980 770541245 414599502 205874863 802214233 600244864 586047040 969987432 305702387 270811843 270522994 964626982 534333527 357571167 348288020 739681043 201363816 649122494 670811165 239190764 678942153 264595068 437016632 29691797 744444059 464091090 799672523 167698733 96215858 391256006 452025531 167639880 746697732 772555828 417663995 827417696 771284761 91828906 564900053 202018311 333138783 172520762 345695679 168444814 626214862 69531436 148172371 337249541 646969741 730872256 91160281 277767658 59652815 100807568 369333265 281769822 971989007 882524845 398644294 164094734 968205208 330942577 11362401 858666886 257032232 736148365 414162928 972294723 813155016 334079856 417864682 600304602 140203591 499208398 906555025 904064336 769462700 494556475 888931616 715898059 302292794 424506895 498847017 456553968 564626861 369243168 749569520 254179988 956501806 379640541 265973152 481269597 783574439 826079663 87759760 958846127 871412680 882270760 460160673 382860090 776146395 705428976 972846391 945784616 917007688 854205919 405090011 223455462 708245060 83166759 369018282 831159482 706978968 901860435 591638086 355283414 900574316 319744736 453101478 802431074 191534046 143152406 437137507 156281812 733311684 717157008 159494760 969009171 5352670 608125880 843694112 398065312 143854486 310844091 922181379 429452956 540295320 700716784 797593306 14380674 593392190 273268124 907933576 169723933 746827408 983401443 409585059 872934659 120576927 319850591 770680284 162155430 243387296 384820982 481811370 923557138 263245025 495044005 24474492 587752604 954830371 584614936 122070781 980359952 598427920 491668736 941435958 1388375 887245607 457546818 68715410 797955481 337571435 96991908 950256829 403205096 457867118 895928864 197566311 35794969 305776999 446092929 102776874 746865224 423690792 925286291 207580643 446516623 304411502 263807343 257908768 459356006 602548862 540751630 838605782 614260204 881812084 565377390 885704049 338066759 951859573 129930335 21148813 905834542 541671392 480632922 276039330 441126562 123596349 595491725 66873345 442649510 200003504 660590246 659822709 759273790 140292605 445609573 813151599 844991310 958703379 601389481 503149647 804712506 367570694 408727771 990104169 40554331 598067619 364139415 176028500 400469336 102824923 980250158 978412050 425111256 458475154 679278900 607915252 622629170 106649658 387767399 583897739 945064254 292109328 85900059 756587658 638483312 542702403 993619434 913652999 687211046 445537237 460278396 922470623 100684153 967765941 728249317 467800356 482495907 36838303 45611339 453596434 849340184 331891804 585230154 301004629 971662217 71907466 619898422 798042149 850337962 792998353 806347668 121597981 721193841 868741920 694524188 134634862 848661626 264950269 490733090 359564351 496837253 382578875 418354135 49563649 813668158 129706029 532358805 662510402 443229524 323563679 359604845 375998378 183075572 771359360 636010585 173554160 893614568 967511271 419673160 674800438 627870567 716692648 527695250 681506466 556769557 695863630 535630652 831529086 21151562 304777728 166333923 611671220 501479836 883451202 286033127 893159384 258262177 692300379 876644471 751901725 212429529 509027727 833759144 420992236 904414015 306388032 997704728 203737583 379012350 434159942 627239746 216100069 896986958 740873853 981933781 498867131 316335136 944573665 793534383 96598377 606257468 608121781 154044783 877095241 429544264 782468237 646131988 301788114 166007190 786932793 541507675 102332453 454738619 696734202 126487743 427196014 17379397 619081311 230047937 805756293 586662808 348456121 949226351 486416930 766559187 343610252 514060229 965566098 683533821 736314895 115291931 727481845 92446444 841562041 327630630 737290399 672741762 747238300 300017049 470993631 711436275 314525166 280376364 637952820 675340053 959821978 267952549 215330093 700855413 209605335 361737214 586438435 423635759 889835848 591655325 865125766 808551316 511754208 15303300 78894276 831889758 820720787 21571067 767200219 50204748 154842131 773225787 808174598 516349231 897826242 204496054 664480418 745312432 145794046 787818556 964666005 115705390 72697873 443914982 680795692 516956204 390883976 48203409 586766586 786779035 956824724 523761626 929283733 652514703 452825493 617058169 633658640 416323479 274982750 999275498 55800726 454491834 612946010 153623472 372214953 931636288 572101244 668386092 931428194 847368 562286545 348385654 282772554 724581143 928225720 86476523 505541280 55731445 651255596 403558250 411956280 907224431 117405247 227740735 825174772 811349836 34732528 666730977 37701985 942529879 136344048 167004208 579056051 504745732 465521121 9641567 192446053 534519586 828579440 909184624 113871869 881155135 3449391 640614298 720353655 193177723 260119359 229114194 10452323 718609566 910546714 613487934 483204383 491599126 802107715 710381027 677399482 918532599 27980214 630384993 385224080 453672776 941725239 485663123 4264708 732584826 138820233 812464062 152958612 24114505 573724261 673733877 122215973 882257730 447850151 117798069 894753696 688913468 942471380 331099719 627752696 195945915 609010891 118144419 844477544 334781990 263415609 804068218 351271488 94085968 505430318 786171712 887203014 825233622 120728318 578822621 311759042 743774338 556881808 465456351 339150375 621328422 438686012 484002227 402840096 69654737 514031336 937866105 957315135 407562056 162086175 80304000 852593389 90355397 754586073 579338955 225726036 43102573 85771744 72742883 269195120 436647077 852535824 286424393 630006778 826373461 266180554 839985824 130890044 780821431 631738182 3203213 479941616 293652304 924317493 693876485 175925183 581879655 522402695 728475167 661272472 191508302 759818071 792275036 67133487 378250595 208836147 42503774 839031105 405569650 491207850 209260611 218396655 635212906 56863291 269049392 420484210 898989081 678335130 321368665 68424076 815646125 860039440 351688753 388019978 44743844 323615273 564834200 950265488 967187867 716000992 988367118 89264868 641485568 397032121 147113129 372734300 928723240 373143145 402249166 178287604 21577099 454051004 16056683 534944572 767358703 364135145 611379198 525973030 128378194 358143184 542875358 662209073 769047291 311819974 24476929 572488309 530017789 365564450 90504356 74798821 869151780 563727159 840081466 924246017 354427297 655556520 777446860 279346792 367579311 893850244 247209056 658892371 614947222 531436435 687774667 523608729 485934076 332041835 764582260 623767985 796785362 530716319 712012046 309249199 129410625 605533350 601259895 59222602 750891374 966703964 610422963 139059465 832128188 187056662 722599504 445742328 862392827 94714239 836935084 349842817 129216531 938146494 376160364 101013099 495483317 269737890 865410848 505327190 620664327 421741447 303278477 336025100 684719859 493567977 963928292 254722558 358555549 354684745 447786582 197312070 933970333 49847228 677346069 164524206 153131382 504307820 58086831 591484476 650114721 927427419 517994180 61561026 77051733 148557540 444563923 377481069 404429362 508439448 20309785 43547850 518689344 165676465 90718288 713063491 221030678 36611841 542036869 483344330 126388007 508568865 359312587 977806150 248502057 365990883 246225989 645279598 512411569 926668831 934209199 706686685 481496317 671800899 66297029 787456460 480259073 573409788 32828145 891417216 685855965 185102581 440904721 978191582 252614686 977729108 112664281 72169677 468109113 261106064 708335456 281762389 879684906 61005308 557390395 258641432 860107900 334353492 759555307 804664918 910250238 356618539 251721090 396645679 835821110 724452307 951366445 292556232 793422766 937231572 791561163 443492470 424916102 807214314 262010345 729075252 933353697 309886946 634806101 368228314 693939871 290063646 265492169 498333237 303832103 957343579 201564093 385026600 367549328 583020335 136882704 775067769 153975613 984709955 295827204 710917875 498123149 575627184 403937763 668012192 844341554 502760580 857461864 748755757 45085271 783639422 654648425 516154831 596990035 227916602 225622816 954791253 421987017 629370103 82034338 228292879 361036939 960666629 538231951 751500879 671934783 859398552 975343084 163870039 113548252 255346969 728223779 917637190 437011667 131362677 731083786 864562313 562150733 861590714 653326716 992691953 92391511 11693268 853161804 245328768 727064489 368404354 12168124 527117383 977023269 171180257 683184663 909338696 410678362 547620957 898179134 24996108 470960906 550032805 230583081 236272012 56440499 996378715 529523513 791335655 220552256 174994230 74208250 120516878 503924168 382325517 228495224 339881374 85529255 677665376 428067494 343305055 749669209 948678304 919849272 898923851 504466546 102751652 178797234 202331108 546202659 27408809 196346393 16080473 999638103 122983778 161362867 774242641 49305391 535674544 613130168 645007250 970739177 214951339 45110263 776027575 82197689 460668767 472487790 895558610 174135821 717973548 127999067 616271475 773203898 875922773 866969042 131862097 172524757 764800198 450565322 343489272 256187088 149476376 580175910 37813396 849503789 647313095 399173270 869378018 631261163 512595327 704739707 980721644 377785724 407547542 382901378 783031119 439385655 200680891 159810026 286885921 629042722 606018402 202507603 813423145 978598868 917472463 482625531 677898204 399934528 419576443 808339313 646611312 439851350 397555625 519929701 466232090 489001277 377670409 895383375 734510495 678244396 594711196 467300444 727416528 790346745 765722022 273703279 370109777 596867708 47574224 521069057 779203374 288682725 890088605 12045958 859443196 345326363 582705799 811311144 266227907 833580277 909974753 38328982 547425982 838416647 340898864 275341508 223785839 543467766 834150524 651279576 997809306 297650429 304377402 766005000 519587042 210213617 822748862 113744868 350599428 497094162 273192195 462115755 360931797 974853440 841232245 776779061 154337765 543820735 721689250 471981284 26642087 325056790 685009058 135360359 17932082 155095242 712523772 171005334 499122627 954898897 212423226 75973963 209864560 867111443 274549081 525861631 541727475 6072259 74637172 842228224 42062927 326874853 657875740 279687888 229956476 452088644 716003708 53912494 115360894 853486172 957794359 556364818 405782537 234501345 523044622 708898796 88201282 378679019 198169173 75860031 649861337 467419807 991101324 433865057 560630909 370313801 646510048 47892254 175032038 997584757 933586082 539021789 301063487 161486157 303315889 140261654 761670712 678451775 61969131 792659891 113233216 570894143 751059894 856755091 111837914 930943170 980476801 253030863 626050861 436305194 101431824 708382139 571499413 558270767 613302681 5002113 167235293 340419117 696468971 740771221 803130466 541142283 223468752 466891561 434765318 665086124 161626281 213402045 24750949 453458095 749009119 975122079 88755599 552832723 614403473 33740487 870935564 257027764 173040278 336279009 806768614 275091050 326554778 961573694 67995373 164718492 432630001 15833718 183222743 850659345 965639632 86835640 272136691 387950509 575378332 273297322 599135589 289579273 26511568 633803246 129954016 758139376 719722009 215621734 572264150 730480599 809448496 642716329 475969723 839560507 516365428 350148310 680960513 140960531 933564175 113882638 857319304 731792370 295883854 621939707 994009584 592290175 811597476 211777205 144217475 192611450 440535018 374118568 674658218 121234295 458475556 509545631 275876136 702541476 139269873 9174544 914825475 909412283 843046587 452757598 267191956 981473537 773910886 291031831 898967427 477862739 495948932 392480173 165247893 369929772 902532497 991690648 316594000 904940998 62693846 187039328 73773631 770271934 878130454 108840176 139208532 431204370 962991802 464518706 342069497 748458437 646157160 402488897 862586544 606964087 7594402 891253750 526849183 474436651 852812897 385772854 970049057 230636995 473091340 137962352 768166984 814063598 603076697 887068938 80365 245766347 713898024 558827746 475040411 93477048 324269299 796993191 21924449 66007858 307374564 534933320 894673983 337858148 799775754 209042690 531374799 503523503 928693142 719728710 247449884 602610527 645557505 74542016 737171745 469212294 413636337 62404596 188674238 866693617 693800776 824521805 762375868 519479308 375757871 574216737 541465324 968000398 829389713 212013326 806682393 327965807 764560073 502279882 910590157 987011164 41114404 288227754 597065222 849832629 410314003 400007477 830194510 38727680 966156460 992054998 673644948 960052699 276035636 608759579 744449307 414655049 631415609 752750921 129353889 398460837 888605811 671311981 425285005 934856710 299296810 115886353 453277391 972984967 824039439 516641121 382297551 108934461 167345186 967055423 469132417 718725822 650176525 559857709 161158834 526565736 730227132 239169449 230677129 269047301 234489103 248698547 248000994 471202898 199889267 934633430 626303364 449238162 74022119 137481089 475309491 90354518 540622325 307333328 712218243 966344684 204081545 606094485 901102487 955341723 325631028 296216147 473139506 2345391 8349605 779013281 61530291 147887158 69313243 184096999 11537276 211897044 386461196 14702312 667081933 334288849 849497367 700426026 507833998 786478428 890471731 510231924 817829902 439848511 565423166 868485560 351829651 204801783 82953527 976129018 79274224 515988694 239455654 47092527 271311730 936130084 561540927 377728385 964965610 440024087 389416655 133847117 306424129 981022213 683576876 90718018 680493870 988280529 463563103 15272433 643830953 733966666 253395647 437480385 641310220 762458083 134481765 967604255 400999867 773089605 660332593 779762251 968256356 800582454 745336922 297842090 698123121 961481072 670099415 3744244 391041089 559953639 396517167 667450092 322417308 974734581 624294281 66884370 200417885 54219928 440331790 882781084 700510970 575030955 628282485 355949329 942840231 905648521 445336754 432974355 246656919 717509640 891873821 130193602 968147045 442174511 790904809 191152190 525726645 387003505 97365225 438796536 233351346 793260900 815305239 900500460 427776944 29033091 998516892 15790562 845124382 889253596 687010181 443179698 863008230 521596559 839946598 295743846 465815481 76217513 651876866 284661766 634598103 693314794 330519813 678356803 425352404 766278453 371707121 62371065 474874401 154854710 475583103 831338978 283790077 955032730 444299672 198200122 254664760 958105541 764524492 492676243 764396749 325762126 517206537 489058380 890281559 489998249 493031506 494731835 887966092 231843111 49225852 714367866 395675658 329542068 239360607 742794820 168856767 383849876 807477693 880422366 546198313 320593812 879189400 413979411 67806203 401398277 195668269 778925398 940203546 617823821 72647349 241688996 208849804 986087982 563416035 424987104 338952052 20126488 939558912 719850848 560765865 361115559 507219863 880256710 920264784 666663241 494095656 680993241 839364500 500252660 114589863 821487132 786959387 226013604 408589659 883264359 262145121 561578477 713846545 960979047 260867665 364642789 718185069 894910476 799872617 721227598 908784426 626178869 417179723 675969776 682150722 665774476 109990633 418121542 824849036 656835087 14126055 45529459 699187992 365559862 280089344 589139639 480357498 141963887 319696897 201937482 561568600 183738866 741347369 970306423 13830950 233259370 744432189 375284947 184013297 927552105 493009733 818676658 944134349 475204149 450413688 902276467 326580763 118124677 814739058 767917935 699941799 700858062 673292350 940407722 611045350 170688974 33372536 56266464 420445204 775828366 886290877 142396025 838921716 815528952 956346148 433874611 193108304 324431708 392626093 472813847 317527282 135081859 142266526 967926936 978585367 373153139 691355689 872425569 249024081 525767314 274829105 562452237 476215171 679428138 725077615 705896526 999869544 802808354 10359084 308621570 913252316 886849454 14685104 289235512 489116510 189513751 908693294 546879458 752783365 55560477 646361201 564620661 239202502 437297499 130817777 895876111 660181612 932958577 814297316 977104457 448485690 608847180 930449360 228932713 794922574 649743297 622206265 606128439 946491311 110112186 147771820 503106503 751002040 985822258 25183982 650319273 913067864 892781320 738812820 620010185 810863874 837557075 936602314 740358968 425364763 989852621 281694914 219850764 853945160 825943899 438364711 611852094 352853701 422807436 905907498 237006273 314613434 598314864 551573402 611748620 497268377 329402787 99366816 272147747 907352436 197556992 891578955 996274162 26637042 991214756 19000252 188384010 283219752 860651847 722834107 762995370 751676031 212116749 790427548 725007919 483146364 211501852 27185497 831052762 684692291 241621941 659882078 873674672 568627246 580984510 618481651 971134263 172369089 941341668 346004394 514026461 210269056 382886401 220193277 678865683 885527000 911144022 919091010 948331503 496988725 745256288 907199300 30365712 673618531 705759427 556753706 460607975 51043854 556354229 766808853 287132712 783458362 775806119 985645047 517490072 937093499 546540584 936326320 318774270 282356074 86828428 530625910 541032429 984551846 900351367 959703336 867746469 216617891 811245710 181681807 898381182 378054880 288912137 754026897 198655354 599403805 786025202 572958707 77275042 732520165 857099742 26680562 720495023 400639809 724515066 220498872 77195003 242437128 931947233 137425393 840808032 801611712 347327147 687301400 556872969 979269591 352632954 505489634 682416331 461699595 317338452 224485027 115069286 27858112 344361881 834103382 813995502 979410350 452145116 917584925 363061234 601190064 786742529 333490035 618948555 971451118 343380332 432355206 53151530 245783040 243099347 263361533 281586812 249485677 84722070 943149352 10596023 839066455 484435901 122069190 849126791 94984984 206677904 49644649 410341759 577218007 350496618 323048965 753332028 93993802 624412040 370992135 756645695 452442878 249507553 631723697 488117845 90285171 485065498 605248474 653757167 833820855 610541618 949752432 145995979 452342306 241453507 990351873 339721003 955558616 937069552 290643662 224737025 367382445 896987335 573348554 221025935 375838509 693204992 896950900 481624672 736609745 950735055 181265115 662204565 962493380 856468463 475177137 655253364 276730145 108977318 956949889 547974046 76299060 11724566 117895728 42489139 537106795 937696734 708077356 979234038 461920451 646946728 937622790 29124658 543745519 198714159 475032804 886534445 606954005 395179482 650416683 11929366 835985278 194010063 931080743 755398916 818494206 847754384 377778025 198920789 91929113 854708469 447590890 226177123 809060166 223964677 86731713 108925582 198418871 527308451 800710365 984250767 505342380 888858028 565807880 989267762 30902496 175633225 44085147 654892151 985488488 128473012 988751138 212403849 176028419 960395502 497631181 340181091 84073387 247403248 239706474 718735673 15156662 569675129 979540621 93073106 673144388 624963652 345175063 74457465 240560903 175178627 735419207 997962959 842282326 664538938 61368841 460733425 210425245 408925240 334326490 27863677 648758105 608552835 231697922 692197838 930945263 543930015 732300945 401665882 24891262 867109343 370017394 644656772 955736075 619858471 114101009 415582762 348316936 605887677 382531426 236847628 189630749 958699455 714806867 900749939 502392256 333246601 975150285 249747880 197278204 52541026 802328442 538997491 258762765 620930982 78514669 207595738 9353801 174644466 503378967 920921094 340324112 439185329 553429193 984525480 572318337 269180743 542236295 950613120 832600203 354194359 418871176 28078031 269274819 328979840 550141472 844415639 267772288 440626740 718984416 229529571 263943647 965430559 343655347 130983732 246819633 2650592 69795804 581130708 120141472 229990146 343422957 773264843 457979760 740140260 140399222 481127954 75157936 93286283 863750987 163714096 687820588 151316591 12855926 759693713 243596028 800965777 935374257 534281757 447975873 230613157 6624053 277371395 489242850 10537170 915634438 772549188 678000049 547917659 252824618 933645690 364892929 858125625 756442817 933928507 148993637 602463793 586947503 784468294 596049465 866933468 566623964 929410609 161860294 588667299 112780893 439128995 736338813 395777860 339545064 792753911 637752463 141166670 514470119 46991631 404957698 661583002 368999680 115317977 387293525 116130392 248581260 149927696 603791130 154139945 361023908 363939689 307122977 631691406 731928855 148015149 153853990 864459305 898671218 405862431 149354310 411898248 468512235 716696424 642459828 99870257 860195798 783154689 383461326 864131235 985082811 682605611 279372348 366444288 917372344 608086103 600936218 252960551 536182497 845679228 487360416 87905799 889659651 687214937 704386833 934418698 788090988 352890111 661196961 175626817 274068305 9155809 655735144 109577937 286450886 714323335 258737764 554064807 229273628 961173539 970426727 178960788 762330955 977824689 250588920 13725452 574528477 974214407 339786113 18332013 919943028 85238992 719254455 50702441 561470480 521704738 859964711 864739030 10444965 268072544 519534426 737919731 333814909 306048418 559754697 127392297 514308530 834968425 216217439 474114511 758660644 196154516 885430589 478814581 164879327 921052468 834118454 582771689 415343714 54291528 145610791 63517887 627373794 459471107 136174773 324891766 530486396 637536674 583672916 376532885 780560655 869025805 301405273 744772154 317903362 357348333 126577786 683328493 200133441 542788785 878329134 424477317 82442180 280314010 250416152 347229350 983522583 997691968 3026737 26376616 181762332 328184533 452843775 936391390 632025445 859345627 535337275 57785750 565941307 163169905 929455840 512470793 461153642 340958316 150527221 906385747 541049744 496195153 579733562 57891847 474908675 375665530 441820692 251542675 973620673 542112192 8436000 54661333 378223687 474796445 56771947 707767830 650339429 201595731 306788542 867874635 36349486 274283154 104053613 727196329 877119387 679714698 296251376 652208669 58843462 485711524 674149777 323368736 50614313 903518994 466209402 857144782 922657229 335873246 86348726 298563924 599427075 85330955 702973572 140477421 674360064 614892330 340916462 279308989 627506397 167958094 266444168 906173764 969214585 615601903 670741843 276873470 565398287 197996321 577168086 678534474 379372446 976274381 46553830 868557057 251272384 123779881 357065024 458790295 472789919 182789968 248768943 334583559 868095464 77676945 525270857 599667125 71090065 764449721 973667828 752436533 796869189 738664421 302555639 60686577 224040848 574670319 991641847 59452977 718438035 539281159 523979335 717313802 556396036 814296162 385822889 833524753 48132640 869568930 734899352 600829167 590811535 934782835 188638746 319513382 571854894 241310479 627590194 669206190 190940321 699130742 248543231 38733804 364852682 755740600 492673525 74630414 222683883 919206629 407206899 249436588 569449107 71379034 143113905 790691051 863063195 969430858 445586396 412119426 905941683 404721495 184242375 598692353 346250834 828951428 794863723 792786846 481189817 236631375 413638166 868194093 906486398 840525195 50178313 256996508 538868590 561273659 690251135 103822027 87947243 761614134 18842894 591819106 156311254 982337113 872059285 196091833 647620212 82461532 669221191 572681383 338969013 917098314 81005350 802861729 845217069 17518136 257099734 325535190 573686244 895200378 177552923 20550001 814963273 761582003 803455260 25610283 962350195 225627796 760421817 596731386 240022774 162929187 365615405 87388068 832897445 173239120 729153621 64918057 79302263 726698996 624358444 779909971 858900848 615371706 740443899 607241492 323203900 864545615 611274968 247679872 699975772 606023668 23272472 790497922 404794254 543244848 168348326 673468536 402409972 2634754 858259768 857968797 361859101 495062187 276976101 883927858 532991765 22750698 594066239 130031640 4811929 661910407 448106661 155392153 765436736 332537676 425140354 663989765 134633765 899122903 919584653 20778615 766172251 456213610 696590859 240342714 618403271 82549604 958733812 618153594 305891657 773847466 598438255 984509695 801026010 761153757 809127843 753117892 265762915 127667775 400681090 739361226 265912832 398612980 973497646 757445850 223784725 212567715 450121117 430411920 148605735 555625537 788167849 306551873 824921514 840242480 472097351 307942352 424601605 955077853 321875116 57388012 250234131 828015325 694944730 671562638 705314409 154961673 870634389 894668101 463940418 834986361 154511772 309253589 252952052 393752102 826825768 108783609 938198910 566447534 358416320 219200101 18192793 676262295 127712474 49456943 474946496 389425147 952552484 488346351 503278290 36570654 455475056 135661510 287120862 50012681 37471428 388854368 766592792 218930405 158108314 806548242 721941658 333881257 404556192 974581259 551355562 144717899 648888121 544166271 211380273 568464647 491066522 586183947 985648411 389351677 40370086 289843747 570285006 755230392 756878419 908788907 402807110 614311518 547969892 714152233 720221297 216870262 746145768 826436047 965859121 883045117 510392967 475585682 553867321 506599017 931682326 422431725 260658803 833751986 893296550 144338085 514750613 145081851 820310418 797795462 285571273 553995996 21517916 648706240 608306257 462239048 353065677 474942747 802343369 263827340 136921182 890718880 330870310 84893592 903025848 515160316 588401592 282211590 44599092 667063707 668514287 690769275 502721604 994130932 179776540 636920775 193253406 896071669 573210937 601187676 990098983 886550669 131458548 736426482 856643282 918172490 127071515 782413035 916811287 379289561 660733989 153312453 671668298 809477825 185831210 481720193 617204581 694573357 353029068 662610945 136301693 125228849 507183245 164002946 483961138 543848128 594378073 796933901 141741393 469509683 646156609 624307561 559892946 262729557 755636407 904807303 726622622 644052970 849514003 554399574 506233322 852547065 256414025 599590930 101995116 231406966 966039388 715527354 595935975 342148647 943372328 475122566 823618330 288488861 598529136 728894051 764282299 907752044 708461835 758672894 324498159 664330602 863968203 846503837 810983002 640101015 928947869 718562076 263660692 343805059 464021841 318928823 767719149 909759195 90067162 791332318 117385691 508901232 444051606 83014748 652949314 342525236 752027532 319623753 264407460 960999797 671487324 436490227 92279326 860525896 284718352 685873290 510904116 712775830 928696592 243013997 144504579 79636074 749185472 564123959 468128040 667856505 374633236 487470514 452012158 551358186 384987358 605911846 689328165 770878098 918886519 51027261 195086581 306002674 713374936 958044076 64687599 923835361 917723099 67727397 633428950 121663206 493083351 417729759 464807764 518923278 560880907 755570681 192765525 686612497 334877878 357929933 554178082 303650402 588595154 947949963 401371796 153892114 440520767 676467700 500154567 109347557 687437194 184969372 256560752 940065883 650634997 740807197 508004592 1087789 585011905 768381981 470436711 573369907 73628406 820751935 52772839 635181477 384099788 389112101 931853373 734007762 30002582 876348497 668286159 588652077 493243016 133293801 470077641 284245878 245251162 12102135 348962713 958640756 307972061 337060410 493950877 456207487 427606688 480562338 745617523 319454891 338189555 965402456 132108106 961520214 660930949 417833935 366024479 189452733 722079700 82190245 815016832 995660584 177251330 41328480 105528799 861453746 986950828 3005280 672584115 625337083 348691647 768309603 290514860 713430524 828304333 175247588 633074153 29055747 798076533 864389252 183341136 384796120 54058282 188742448 771234336 534776595 483870925 277564256 977150951 852021883 484593486 69742136 850022553 276587182 309592524 906373518 479425579 249530633 943380850 2365778 472926742 644242823 337755443 614159645 884776665 39594477 547935817 82837290 669412014 210741923 590269490 126994265 162960656 361458983 859982909 219883962 116255474 519898732 684679420 581567185 908982827 784224267 349583833 38904736 774044941 796314409 441946773 105262682 246694315 535263924 948657008 698184274 379765151 491157571 101862031 579981666 454991784 508908674 935463712 469877496 617840271 838531440 724532842 103937254 232877339 675094637 75605677 930304936 895171538 404772716 676874862 661728092 741134862 857658075 189778673 80862007 393758867 317449883 585992867 323759974 908476603 355421928 666620162 230091818 921065452 559241257 612351976 642438267 458125433 650247031 17538101 619891207 527238992 160279218 750882829 79679655 951618076 949652693 211607451 365561277 22875441 864033051 309355757 879508167 51696086 581608455 759350162 931132987 330858746 697802991 924453156 289195757 615538574 804651634 961161986 955453757 173921167 428070852 916611082 319553012 734740237 991826599 137504372 340288963 872650395 559195544 975601941 795302550 985511388 812488116 774113100 57417421 372586387 299191649 86398505 202533763 711597072 777850081 287328215 993105928 886046011 608270964 182164097 463782232 911572364 85939600 819528768 977260199 617278689 140260916 255070720 137333117 485702408 352005244 507549884 309368280 57073039 383771640 712768457 166333363 213282679 903261577 425901410 262130034 571133082 597364418 985956361 269998190 789113355 450708112 598381432 887278268 821994845 46859055 801279271 505698341 152008726 891684291 484415471 942320023 103584754 571108398 974628538 914698586 997315548 192389141 316952026 36379167 478362012 752208643 805749247 316742866 79522545 752700430 320805291 710103956 250189088 496963655 278331687 24180080 885345033 899898674 104180780 831679275 445763591 727820489 839927270 567865024 517976631 954914558 736745362 213059370 476287237 889078333 141283430 839936668 109071577 440567933 29607241 835486895 413157770 629888636 727811401 948590894 647333234 349128420 971812644 365959406 104417551 977378610 420939742 735640883 333565923 956645550 68044452 50662280 573363252 990788241 461686757 807623347 280879373 225054995 115256254 124263755 477989920 734437748 598860110 476659734 689162883 518202848 382213184 314362809 805564239 941653165 175498737 316914200 138175530 961310437 208334587 739766347 396288905 177010216 781754910 318700111 448554226 394672589 8978878 735675026 401474332 830674839 304216640 740472887 950242969 359360017 939731152 131103973 291430627 178322274 185529000 598263310 936772249 978412381 963925656 438916890 193629312 615803971 880618053 448913515 244413649 425052928 460858186 726952908 744783333 477098298 574352858 731294112 167511344 130217731 769211298 497282040 940866566 711504125 520424596 980311803 870458269 899918874 461444206 892819422 194540983 108815571 938844315 309196955 601582632 86931361 62007192 152553034 853391202 587782735 404645786 947587957 434790541 100996411 548113598 384677990 155382763 966645047 833526041 474135100 233254201 339213631 71038701 351898782 394909803 15742663 949170472 719198467 826407670 630164515 363357939 35919988 941294744 446093840 118814304 198242924 540519732 889327104 866335024 406671146 734840912 700250826 503764870 654703271 952494912 679858849 897933248 339567256 13004243 942095132 953196549 989358435 109684744 866899774 728112878 150209552 283198144 679193846 505564209 194373035 835693473 772393857 957100798 418655913 150212626 905441820 764385410 519272617 183751464 108028637 518706927 792417922 175110059 848378169 806547674 348313487 833046633 881481609 631867190 654160328 582533006 304608115 525557084 54540644 953542054 348668872 629477281 857089149 318559319 273619146 376844816 763344701 726066721 301487631 962592797 520912 487307943 405149338 862488324 561888730 739458626 654386710 370686612 571561098 210342719 453434621 805830635 192565142 750999990 375810913 43469817 960350993 316374180 925848466 145325329 9365593 222884795 590243806 469985048 950572498 412177094 488989277 48015072 767738909 249134739 161418974 518121537 114142700 145849333 841744588 997253502 406815014 756003113 80722389 411934549 463571393 696253003 281416434 317750891 531361921 634543838 995429314 390197895 592669230 301921 753229015 831048728 556634078 294205837 268954338 893348609 996831719 279579115 876543615 649922253 661302984 94800678 837285888 578374717 757962612 653465083 219411751 233345833 39949462 2639665 525215080 745018964 293259407 220900755 818100326 357774119 137398194 523227117 955401004 937856493 76878037 153594813 413924699 406994591 396243065 849027016 154662174 374905193 154337893 110505215 732857302 257073439 195734685 900412574 450155771 850943574 900115437 65531790 477971857 871528958 689927495 205887147 247138501 687293571 531148544 760310677 497206706 731639166 599639714 554702983 413205258 732843527 312585785 722569833 486022007 336645831 948119419 494782655 927337399 855287641 730292832 259890437 791683931 217937355 34190325 838332069 874927052 832731564 480913195 708084814 166919707 677527591 280499048 745882832 38334918 183749944 664267821 972487417 396230017 322104457 202391395 519443110 265778405 228928737 354515098 218850033 504849721 460212969 826420156 643728395 290836207 948415598 368646082 383246753 770781868 598454013 89691455 187935311 486316502 581782936 5260130 345599857 744661872 571469642 377374621 694316722 67695371 344208318 695459237 42395833 704284294 163769526 79116320 875209796 241122646 417138325 644776949 264096579 482892225 129196297 419796938 58466973 788503294 269714640 581362333 290720914 600668888 258274285 131610290 648680529 61253219 637773114 316324304 690065485 214678500 636110608 211155508 267640007 427410670 624884768 787938731 43450592 672013066 50477854 836578690 217127107 133559694 363143774 529202805 344020409 811256132 247817708 664985313 872455773 841263436 149055578 948560285 85153836 17131901 599479199 99158195 229527465 229772994 121793017 657357375 587024711 653015433 278566032 267288700 188253223 625447246 231107527 197992257 431392812 757515352 353202672 428333805 134776287 558447317 301108221 506580240 601269634 806385807 328435858 912757719 212838422 379165930 721971668 445452642 197303663 708414158 429027821 330270687 426652945 124126842 305992413 280699845 597248512 670635434 587037481 39800620 714871155 300053584 159321406 592086932 547907881 258385637 215110474 579005527 334248212 837438407 391448044 255078411 979310832 345788985 107779019 228269418 319511256 637429842 458945131 816574462 306895608 455473836 762237052 868974636 695760321 474442255 772196608 982336361 918101764 937100877 180358669 621170919 655035336 630178640 680899026 609568754 514777337 19361509 649098117 338039023 435897231 792169708 630186152 202460897 420234461 943958066 626682542 144560257 76046623 725169408 747956207 231452968 271008919 121820176 997612176 344847791 684543332 614542949 273691607 933670986 226428842 449422785 123110534 991677311 292898053 831939191 692407418 632866283 52431137 327857979 47928330 168320793 312187708 20839148 964127846 641664945 581519719 40248795 885136286 190673717 527706347 479200680 808134748 510666692 163777114 658183836 139831019 394598746 993866132 60357911 813355925 958390729 730953314 922945060 243479226 379024911 45037352 23320396 338701484 451044920 410044466 810546075 870107837 602023088 120773927 502440414 792681931 812202249 902467419 769870815 326643377 740022084 391718471 327549811 415847256 356005847 257006583 808437540 739823136 587738924 806813755 853629473 75526850 849531121 828937105 769918343 755325834 468212773 300568019 424210160 551610496 713638207 600034165 600802512 99687643 916283528 503403411 424439310 600822500 847998410 504805966 495388070 221933420 281122712 662652778 426250017 238318282 159336899 924603525 971895303 577061180 949881513 68865871 87261741 286311156 215392963 445721884 618830148 345691211 735671543 201863666 338624369 969164996 8048267 416413808 358438721 106352770 659956049 472774022 795455404 149077422 512142447 248490149 748455824 516341323 195353749 829403307 271280386 54154242 747477773 102754893 183347046 155867671 963451767 421167900 741690435 572297420 8442941 41456713 606187272 682274183 338276626 778212582 576347208 128602944 376847893 196866637 24700925 517565410 25044184 789969780 377370651 986354237 355003598 183933312 171379145 719318422 740694576 234564970 149613703 402977205 197537501 389325411 156003871 276379001 930067057 809808395 675026870 988283166 660882783 933564396 821549369 328789787 385109704 796903441 786673177 893320139 851978597 508455270 274622834 651460240 330975358 620543174 998585839 527637000 35229425 2252088 433563322 595012980 118000533 654523274 438650580 791453396 175768429 158759145 410308074 220999201 779995770 23573442 614273307 693311797 859956370 289236920 415848378 43459793 736763629 558449246 986315775 546452553 242011668 519026371 815210815 48593031 855085997 315168838 618308156 463192768 853201140 890716437 466578432 58883232 907847426 359369478 556600986 57764190 101475813 45300945 643742662 573378986 643742341 551916258 367741408 285421295 914599695 255202248 434085385 926755241 745806285 104488562 928238123 978964651 193471368 526159886 474434748 419419025 647184360 576077116 688095466 196021587 689958591 744725169 152051986 238946220 568726852 575400385 261692645 135236033 972831277 558038300 873654688 155643366 980786977 391351682 853425984 774950512 792728784 471818288 12719196 745980925 522381962 372892435 734706404 955523410 731424266 780709093 442684065 360612809 989415097 716909476 565114248 597612335 34088712 72164888 438775777 817634815 845981549 495493951 896268029 651311558 369873783 327374839 219184817 747804063 399456153 545555963 867041834 488799311 633528591 933535754 496909702 131576749 22745914 468922751 936745504 323544781 754102429 256038162 519094622 336182067 329540219 997435402 193632425 599097561 471296412 76144799 380982860 89717998 287082303 724012559 868625590 541537998 871725734 342954141 203639509 228985124 580202812 562490293 252861246 692118159 552983189 540084551 532806034 251628502 467397317 425568185 621090257 825428985 201052244 865032299 715514815 192890041 390838597 45395681 420600971 101748438 796827772 951260969 628193153 644920051 487325675 993120501 13341066 508736012 282906150 508191277 398758424 218050607 368185884 611160687 860370586 224859620 286672619 223649237 135341362 33111322 568944216 810918833 642713229 905479887 797507724 367333170 198326321 166279011 67461922 822778785 473295657 145064071 178695388 398848439 82625885 40490313 40312324 816288807 222340049 332373811 324901682 812840035 746259413 67319882 912901787 422413150 904108358 792228349 958554454 983058046 339478936 17056580 395567870 173677443 392229550 455673870 363970044 881270007 548810647 740577222 979670483 675903848 479288914 901140360 494634617 504382240 819632843 837929251 794910792 52507509 577692703 52640415 295019073 433897802 346394077 876250575 851964229 869064980 480686994 853903281 744239730 420612891 124825676 895815324 890445917 446506662 267929135 46065337 454581489 370217570 96687194 495636229 9843510 832054024 372394884 986454490 816475665 371802649 971891028 782134544 566397695 380727352 819584524 898477828 826567573 777531468 211447769 133011456 367758984 194171439 161933371 981365413 299858375 667239708 399578621 352608665 787504220 921216129 224901109 660033644 521347411 61612759 617696090 884278950 713255050 259209822 945121190 13402932 252343444 710055905 972711343 179550304 650356293 508421036 678380966 597986711 174582108 530489970 93964647 189758622 758507356 299138621 164207438 862928007 63340471 842687251 620765767 723353267 101577652 801508864 282782116 166226624 928399521 422356766 945601123 226548266 18577214 42340694 493854751 672984861 818663847 207433236 888469068 759049519 924854427 460792496 656550287 921510904 285290883 199064039 795155608 209034575 68590989 911556863 450879213 934196575 586400054 62949121 320374533 21290326 643838445 31019316 444096336 201832139 357953200 991392552 8074016 826777275 489924360 929238441 975933135 131442655 389052590 204238838 324595992 63889123 558539716 741032130 623115728 455833092 481387325 102004149 763117853 433339674 291810811 996058447 148764279 587521580 808505808 970625371 33735403 732885505 229275186 117426313 860289246 281702994 978605279 889542534 635842881 950597219 39809956 30435685 145500423 949996991 91221330 903507204 971909149 437951622 330737512 468686570 435126206 211702964 836395803 529896048 278656779 922076464 658238637 408620701 666999298 869530798 119968155 137033724 216397776 95341504 892681299 669792331 192656468 419753132 436239196 542256205 103220298 499691361 876962493 434487179 791865602 971693997 234251227 605963500 309082771 665511858 695462956 381558837 614366377 933067330 553592031 971507913 634547382 887972108 926564626 233151984 249933011 618304029 329844949 501143266 552379790 794971960 750952126 408429173 598284188 583146268 622448548 575019335 559268630 590026781 123458688 502343335 659293899 357952188 991106563 791555738 276759899 67521446 121696453 592109478 753581047 156461184 234907717 13586481 657311532 961141911 179256303 7680024 953410629 248684741 902026209 901346887 462611585 815602847 611072587 682217302 729135626 233012514 629442741 79697966 858406869 437678120 437895630 266905843 459770441 641140218 753550709 993859181 161349248 554229507 13899248 790787087 563766425 846219062 948375893 720046278 338044552 539678557 394733201 915635343 125787211 643689528 867782165 596775012 562951269 358015438 49493737 446594167 657447916 3825160 697815683 917500051 26117519 669030889 58372401 551024540 756096919 861371375 242853801 719806737 961862980 175516472 800401501 633066564 903762204 593517727 856202849 154834215 497032005 723037501 690779289 10094456 191554829 967678886 495631205 846301918 621221632 834775507 930665214 980939106 237890986 400331439 730121914 675440054 471656557 977619251 868369528 245150666 812452425 749561998 235848012 145552042 590186564 287427143 804938598 950849690 516761136 765062481 311425226 131798142 178742964 683012246 465818012 462004308 169462986 503013944 730218106 171585768 594076132 812967676 289114412 268095542 939853039 160925560 733910757 955533405 549110836 4723642 501827370 398713966 1220621 59523572 44676457 623449821 903800581 544550263 992261464 59423984 463352728 547321685 886611859 216950928 508653787 515629174 305056445 275494846 479946270 374328649 747198053 406656111 190120802 416703377 134809003 159574896 176855262 909453566 225857653 649213281 673180959 152857007 536336056 927000928 284315567 11485642 986964510 882702974 96642700 169392187 820456324 45495595 608664462 154638843 712148366 81148580 136146422 162488704 966619601 126253084 894123987 971986605 393887826 210415814 522882996 942532252 964456303 1856142 640994526 178579021 65930623 191120638 583977516 312451673 462830896 635994648 295832038 571652176 209463110 117832384 56117573 757001853 114063626 437700086 903125630 620422473 31738540 452982814 159652331 815831678 246234230 223543263 515220765 653438156 615100173 277788717 438594585 808299996 573588498 627928234 435595899 575537031 302164362 372197943 403990478 998817243 406541179 75512243 840480522 280885112 502670622 824882266 380483534 421050664 953493256 974614659 935346815 620402053 552579082 795699068 975335521 104522098 826115846 991121497 764016687 303617129 646474920 470236879 909556686 462750585 251994104 884674931 326099209 665064017 188750263 347551787 593755735 708184643 195634814 675223869 31834908 352108367 469285104 577131752 672771289 537946498 353001225 963824504 223251170 765053497 996470662 594699922 932854212 78383241 476503492 893306144 642483911 281295404 15926174 491572328 228727298 944834769 220196772 973416904 849473902 356190968 566445443 968058998 292702386 576653784 20891287 713824103 333595805 809688434 290121365 378076943 871555547 403091460 338186498 991749092 896362895 26094148 288468275 813694953 512319064 686513452 993693607 514890563 665251919 348494231 322340654 323857183 702234708 899125554 426599998 126112878 180799441 275882235 979725092 629755186 141610071 254934413 84599501 244827695 334900232 9629808 678022377 376430933 856499951 437021584 768355951 662568428 284604678 73987270 923353034 403925199 913779364 240608030 846852711 475159510 518285495 85217394 620685612 738981749 514274278 945371453 889554471 120141054 998940416 612088715 400575175 391278104 533932418 797525745 508646965 335232949 430253739 114044914 990531031 60670719 252944280 616301604 936016732 644269876 939055963 293303716 941752329 457832338 170650717 582155772 607347583 622879824 885401250 118260388 961891851 703229377 173344213 230305494 694661512 953131949 312867782 557413932 321283479 148100443 262524844 698478996 37061878 41168389 300649482 878787380 136399101 894544192 430263565 891613371 484797987 64703567 384492157 858577067 33647321 852272243 969129046 45568915 476999058 742737221 540387801 225331753 496355492 48353795 31368440 706929550 195578675 818957763 159766637 686271406 28473567 995265330 951343878 581804065 279346399 176400081 270269868 399544524 59464427 159437473 671214034 472494807 504014662 96478630 336855446 894894138 652210238 602025532 190885960 220470759 219806649 956172126 346948120 528324017 674400076 383220204 43943031 315470159 689150352 430662793 588940993 720519393 254352109 660083446 282824266 396621088 134498130 823650675 763443825 747034235 740501675 396719567 545400760 241649354 210480982 779839941 281005754 274059550 117856274 414166912 570369243 693350187 709471287 705718884 648567631 94908466 817697399 33991960 856082141 130502548 978496 814512534 976466122 926155895 176146242 520712536 439069396 121857703 752098640 288615137 859771640 186309303 157832493 672427319 641334071 730723697 822162192 249892097 241834092 557289519 979077410 720617202 208729697 819632157 861651710 696935740 308791945 421614777 697334901 131177815 87624734 607833633 484850676 697072206 853664410 263714016 410040205 185487353 146844989 140108592 963113227 401087671 475836916 911447757 995550675 136663598 629616910 836060509 868959671 814578517 120955227 80300227 46777365 672482972 892232240 108927549 128538917 984100452 96158923 889899093 584129801 925340881 810390269 260592153 172975087 681331970 290748753 744947329 511347230 561985330 964991562 175600310 673553367 324197812 609125067 953662381 144072056 10460991 386116286 163213843 417101879 110676345 862562720 189357974 188906936 598548518 73597741 383180065 292133580 248512707 63813909 820581051 559787874 214451587 318806068 175776717 30667608 754289471 178000750 618910222 580115901 758093475 737498138 949309768 136796552 830366832 180805248 516767378 301470319 699734559 842744261 302359065 631647022 753310153 919061742 338226262 822283637 170904783 920902260 139287138 542924325 137972710 765059537 198516925 175780096 261819322 66514140 374576498 605804233 488618945 192959014 956157341 217647996 426177316 774208247 621973129 800932776 698399930 93387341 359688565 163987533 201948793 557225313 617681508 871250191 319667018 886854006 945144938 125385079 945706155 30477092 210648832 656812023 566880326 133171029 446148480 650961074 73285588 263264306 668067745 545334471 88756883 686317423 277021959 177469626 876549743 433823677 286482344 846514671 771202407 679006139 547436462 35612982 921398783 692795033 350678414 270002135 174790009 421461054 815239311 31933794 243604818 698963001 405134044 422444062 156983398 783580389 515918800 468031871 795865486 516259218 899625024 556373075 595339541 618167699 986235774 22646582 503150066 875683740 62200698 606153127 189457154 634105040 638572609 544008310 753783421 50729865 380238333 198516118 322005627 646351226 892106050 335314419 282894257 631638997 939194193 72235625 191848927 978677461 767446794 255802923 752328649 139969555 181852220 88073399 498389855 472080622 460552890 973371547 151783030 190776149 304150785 152105523 60099410 815719729 794754960 634696330 383685006 732896741 455779856 400813115 626719667 209473941 60990635 86416223 71713411 80134063 43766444 437146297 827626401 991308147 323669048 408170327 221288427 806172887 524865815 628150563 735719209 120848703 124949047 247149841 983237333 859442708 382402466 324271319 978149057 922906489 145876443 942147179 697244433 788866706 763810952 191798130 501283924 762059038 399520135 32565572 333998114 620058250 630745737 578415472 978611706 693256285 882549927 956970555 981977057 395296203 744755883 949169041 880413101 640445006 559250505 72248822 779806179 146309068 159702447 292995861 104468407 159136120 448874536 241563333 541127296 307717177 692705432 893520146 898210798 671429176 213555905 879821177 999366676 926965818 439837251 808522367 758285047 998660312 306471306 238983175 157490742 827835637 61477045 69290032 300403763 110650575 63127832 69549639 633601962 691869751 84595008 300847099 65846005 431118564 900566697 225708240 865101771 35910848 183399937 142895152 303167460 735986509 799026648 921236492 991821336 921626960 879878400 667943290 254559941 64633389 615897845 52279975 358723284 387198833 219399470 60341375 93063529 853048303 530542864 939022747 964908534 611018554 528915539 479192209 340473811 76504614 131436139 516577927 900347978 178429348 946352416 47046839 505107408 707587728 226935161 28550014 90799787 565021704 570848479 946352683 695418894 349512922 90619339 55946243 323205097 893400443 537720059 734248455 296902241 919445118 533295631 937453341 990943170 180451744 571381615 94424842 22290605 48487965 381798820 912327309 334356996 179722356 635345828 400023141 163542697 262779627 753314712 149756483 899656720 3252337 649482943 982730014 709273223 653340520 819596103 801675489 175888997 569375448 347257058 983806171 297554702 942930452 316423428 397619989 969524144 970619646 94808719 782732827 418898171 283094545 253051442 79444803 113348972 33566902 465500243 14663920 99883669 197994399 129044481 502562255 897612703 827230322 997021809 979974757 424508396 867083047 708560358 132610792 773739697 601147347 112245913 969042784 53490048 204841937 208920079 159863425 817621858 564357412 854966373 68089701 182761438 203469167 308343926 725269133 912372745 946829518 138867460 416756391 601719931 475609542 494023754 514607425 252471456 700347122 776426073 937412644 809332635 658717264 47021617 346025864 677322503 194689814 886594833 804363140 773047472 59170346 332919879 423406464 844302182 538573905 795024197 774366753 753535716 70694789 783865645 628761564 727943625 669633522 12120906 291650256 569965309 432523509 837123840 796837006 139424936 83294388 972139989 936835602 710510000 356547523 806484447 498649680 164380293 391985223 460486984 380887160 260114770 318031695 649459816 987635056 323759088 427197092 420769963 680336470 720786610 877919250 266044136 275156088 87940332 496434716 583909509 864375155 279434360 884037118 404837534 996025992 441262674 519949283 409498224 774990222 60049387 391809507 450154746 395009132 757354777 572937841 693422414 750652378 770648363 244202165 935156309 425562801 692896632 237092964 896669708 800146669 567703456 219479190 855057813 8479132 637948673 411281770 202002192 3723535 221419686 802609396 96563797 434472018 748999438 430831784 895641512 352716955 86619319 556713473 979273801 492947885 29483883 132805869 433215141 535480955 116063929 744981278 9713781 945513204 405938202 232066719 125573967 754710617 875297803 295303551 106679254 138572979 52461927 521962890 838462622 134402153 650347110 642413519 596119819 603931406 350360448 656711390 131176832 741369508 24829202 699573463 456059956 801731418 784425058 356492948 796262196 224893750 607320429 558620635 815870933 940848233 802208604 277280925 162352162 414589117 649562989 870762586 173020071 99801671 673328651 762804225 719671125 10119750 945226224 249701104 837401269 359258925 508618241 984183219 258137317 864171000 222701552 815708104 540143644 201552720 182502117 445157798 787566898 995814434 619895628 795053979 916697215 969863850 174144634 156700493 691199107 292998969 641352860 318878974 374155035 785540509 107424158 294491954 744002635 404594297 985054505 519844478 235400467 566964851 647710438 585478758 998422142 701991959 602931507 882615560 804345982 927278114 950773132 985548777 886014827 195458051 949043528 357109893 506067218 585283947 46743711 59725067 834224091 70136017 563212185 189693080 283650153 983025535 214453296 416731580 293747902 320046847 153287438 114369322 361972416 102835617 645004647 597312602 436685524 534927511 101479204 331382293 527683822 361808665 78873992 682367830 678931453 887832151 146629119 417772119 633032597 669534370 939167308 660231260 145097529 237489700 670174180 261917466 860122007 335232105 440739404 730622705 848745327 453775356 886591489 792177228 716456182 534274176 179256362 57461541 4280689 897763510 380426946 994714645 539182988 555075167 490927567 389523786 894309539 238417123 69581575 250803561 718644416 791007831 664013334 964868940 953883572 715116455 141517901 137046451 863954719 6477483 135965028 812820797 861030184 312085019 933108331 764335520 924235639 887866743 507705933 13206332 703751457 731715683 971756739 114174528 159804991 728900245 447476769 902943821 384029234 217929600 755426844 602049961 949749694 26729558 853280461 783681460 169716837 834696917 876300331 863422501 412681017 724335643 932007298 20069016 796576557 587018562 58853454 67585872 627327136 665385881 570308038 21395513 525915792 230672321 890481376 522700632 610158259 239084903 97371017 985499531 444751532 92086198 216170514 387519408 99633178 391820760 721422035 229858731 573921657 40612862 161426792 769288685 446941867 217235674 693961249 567033635 625707014 140163427 459702929 134500333 902021317 855498053 447205569 787103381 700271129 729827176 601381766 825149842 796704429 602681973 319270933 64523 149913610 382521907 451908671 224062822 501342490 925137233 124191182 320760854 27328813 570293964 764468843 569950173 119980387 163458507 211935662 356627502 679397140 931234309 975424306 252257160 540650545 156280925 869050017 68511545 618719175 595400030 666920841 680169854 610360515 982077867 390973954 178822323 425475797 447462702 694577717 512627478 647561677 135857822 959876853 756537792 49607327 71856511 271105994 978610798 844054950 687517316 445858130 284277186 626178791 408350879 244552049 824019850 827094655 904363547 107137196 593354547 361538684 647215345 192015426 419251967 399320584 803646578 670945113 893511354 948978286 327486191 26513868 936760455 292817604 644428602 541640217 753606069 685597643 913199125 68620863 126419299 546555087 981235551 949623831 46687556 693881020 654906745 202371120 251972096 541658061 527610427 41271957 82252228 876776813 847398525 437611827 889850509 501571273 574332252 623317883 944074323 464390815 904121601 199223079 232473315 460878501 634082326 168279004 318175806 880688340 741659952 188766391 802056864 835834454 543043109 804833750 214190327 255655005 508070351 413447626 738179440 222311527 306535854 404398769 986570615 338946425 418868478 749780589 923402003 1498280 681948206 840786284 56296760 626503821 308507905 7445111 51211893 976151164 279854223 219087667 727283506 545597341 448610793 340661928 127701119 215056839 67163698 161836041 419191769 538768568 677837505 21899892 462031384 934855328 399121303 883175721 273581836 343494055 825972773 313486640 377308703 868815129 767134712 596394432 121644011 714893611 189503087 302760475 282651171 753236748 581108134 74545652 109753862 980339993 608602809 565914900 253913757 541909659 677592168 137985534 487919619 631508346 77338370 160964629 567459804 283605672 347299870 927360699 291657798 250629084 123385046 775174092 346105880 33092580 121035327 626121738 900932719 952895790 131826767 737181023 365032636 282903873 391209674 577581131 823201731 271468491 711067251 220298993 616243608 340222299 967360416 335931003 234290648 687732031 646559077 379098963 839154233 16678181 339233916 380989057 716591720 117640173 207317262 214592328 131704550 768820610 241856440 651929835 718573313 524802858 414982270 524271117 603829951 645294351 4357157 880723431 349645694 259603483 60232831 974295048 861365827 599602408 365515741 608840782 81391024 733604616 297166010 197236411 863997500 438363713 124948528 910674282 547840416 860669710 400057531 604081695 733655381 851532182 61420496 325734250 794456 168446735 494068573 329354219 910313514 210999860 222746124 347696441 672559564 594713880 388303534 621644495 201141620 583337809 994789350 678526178 564787611 703873597 353968403 152197017 751715588 856306843 221423388 706395897 795076458 892742058 627396924 846712348 498847705 28290252 735717862 673198651 234370956 46441581 273504487 365198760 102977097 562457105 104849672 150693546 431080918 127223742 977020753 672589057 345770413 934082315 205199538 628400111 31619900 751668340 344617658 980681405 490688829 978751075 312631856 994747635 699315728 714810028 787446975 502415646 403147801 379144704 408178084 754197744 603407391 322909605 321207836 293934582 698948070 608502276 64098811 248301345 427939944 988635295 4683308 454881961 575086840 609108291 930692196 615695760 932741112 741211748 757493997 150380764 353081439 205528156 1123140 166747240 498546709 257846261 429737669 954052656 875988493 812206597 429244986 751757489 9644064 209974389 176588946 394565212 129110960 585054054 263376553 562940898 742124762 120789793 693970802 476910548 46999865 740444067 18916063 552338881 713086574 480807474 380127368 49423847 372742998 710224930 768082168 248350254 988182020 49938054 6551355 910468213 391852319 759525445 449864420 516159175 744877127 315118027 736045980 566225038 83859696 429416959 646278393 125175188 691871928 146321535 838485473 421368656 664916203 746655741 348533235 344717666 26996705 397534713 197633613 686236439 411793574 262005474 390293465 773850360 471467678 933357605 567616736 712942721 81503160 857148818 334995518 312011199 700328420 815027966 95182622 251360957 322652560 664531776 550667493 800349339 531420163 978122654 978848342 949206480 652706998 376824004 499037028 445170961 100136166 544963463 990193717 37899106 990814574 102522951 20230331 865496468 237218721 280772541 513679481 577917067 822274281 941847702 337771861 43813070 396579951 982648805 388240647 429806965 526139067 452673453 692434523 761599837 705281741 500621111 899641323 103342500 645162140 213915699 200449789 901046567 344358014 727483285 620856798 645931762 307421443 272556201 635386073 427237404 803474041 101621377 477207622 966534875 351982725 4887147 837420735 450075883 734803042 929994591 227087537 681659846 190916809 264514572 518277963 459278533 456589400 791984882 504244599 635599009 60367594 660946775 648448982 733755866 844454747 467138638 461495491 531785826 548510792 314916209 670268995 99546535 140389933 699064751 358111652 403964896 567791283 774168108 303142160 611248573 694584731 397675804 68038690 19520603 892165759 405773598 766482421 438339687 32221074 655136844 556030802 751423053 121254918 534422695 594435922 926786779 713510200 689772095 540577556 628771465 449475885 197687231 613013754 98652653 74999919 166303057 897699729 470161441 458554834 805454917 832969818 922033348 273105628 528032244 4832471 269019102 563043864 285209940 410795146 215884350 920537075 809109897 657792758 851192898 784744506 421659487 223621548 58716614 396608210 822831055 869134971 986310123 572324158 852774045 928502540 157975579 766826649 125096473 802406446 762284290 322175046 124942758 627541400 250489694 514186777 158654616 965873140 679788030 270972285 638091723 921780447 295155262 592627413 679647755 395779967 753591653 71599994 284441745 76514354 392350947 968387560 7962787 795772363 785281426 26919547 94770265 529870408 361482704 451192752 125988998 887289933 774377121 597660710 586080030 317355709 395898063 836537462 215977702 185653373 551601803 935299909 474555687 64054063 672572524 446881655 506810667 181607056 64222457 962381015 728131420 995035348 643594623 537029489 75563339 922236148 28109141 97533653 79252307 525070257 862561578 338766328 706251458 130967439 664197993 886419722 242895075 785129938 654011024 367166050 417914340 119866125 804450928 465210017 578167730 285832158 708358259 984563548 320009221 287191946 233995216 172674031 581636630 656806025 388285872 849525630 168222007 284689008 624529636 567593391 999697067 317655350 282239809 821784346 105838523 983515382 538960014 924694524 142887655 48776704 292383513 149600536 27683468 479668513 687674212 948647336 566004133 666218411 595611586 590385580 367735318 502895893 363940153 183286817 407835312 645512296 575837280 13767772 253688927 642409106 517143390 384549256 807914 89263049 433695673 322317745 776854261 536850044 266661155 977037281 683070893 626276910 268843110 213019432 281908529 779452604 699921556 924146033 286506070 771013160 277692463 135869792 955780965 525898895 742187821 233990275 886442538 304129114 706791624 362236506 958563632 164653645 901621904 327434347 590342873 439292758 449232790 661635507 281427510 767686187 740455644 570790515 789592915 450351007 220840015 244108061 219230431 142489722 809377949 965747764 260466361 919516720 718899470 478016344 901637101 759138503 372243642 277919259 112347156 684260832 156674055 391547258 27648778 199727802 869294450 124851324 199991622 344463032 833098067 184215336 571192887 370572628 35392563 496415523 532884052 289010886 303746127 956433828 537456403 61015489 475400074 294488129 531067758 910558583 84938605 838704904 648373149 706643669 943007027 99679579 193666689 919347543 291871547 74744450 249977092 964143213 801975211 768046526 869317176 674467150 483881914 299911125 118146257 187302821 517343226 106636507 231130322 698688184 148114304 134383636 741460818 98832138 764389908 899301273 339364357 646643559 512574358 419861615 881302667 423265374 386850261 972862335 940624666 771610887 407397448 108153676 74943446 212167387 620369078 542729081 664117841 653827605 435357293 214119197 765399331 852033141 712206813 701904677 77064348 304769802 555968875 946893828 121024018 82402637 80282403 730158048 805764825 168894211 431280809 318110640 443200956 353496940 741100895 579373798 785896738 734845723 714305743 513820317 579528821 992253081 896437170 201808927 314320941 741941130 179873375 248083170 669094542 116220120 950941615 947549764 242272886 813764264 484542084 719688623 842479762 644170912 266578400 545598079 301039297 125172872 290530770 566063839 38384530 183136423 648196162 785711608 409477487 173913767 706666105 764909185 390902807 744843278 139222113 422347662 875272261 549272378 311701586 896573915 926890069 266092662 775949775 648810167 678628908 296898324 665362579 565597686 234029418 427429562 914186035 273299058 95987794 605771644 131083352 887835859 47573248 639363511 255119342 388940559 61545433 171830017 686023680 111169213 901757245 631021270 572157901 781812843 748997367 130357301 272693793 740991376 248906447 672933162 298198711 601145276 177002295 274490439 105107542 794248802 607315722 888524437 304137376 472629600 254240905 535619348 860539393 921145493 869046356 231864360 815464928 819919360 484239712 199784866 601736021 327776245 157358139 523627797 593882073 575204897 557452967 228449919 292728849 593333086 50523871 218595685 12210956 686067138 38885459 437511794 345585897 781447472 808232779 837399204 196556324 231170580 742855200 890738216 93137599 733826229 372224954 322505530 156670559 242856594 443875351 969367008 764035087 460034918 506712742 370804686 412197322 140515999 753995476 405904305 193215787 363871206 278250528 472866144 781199009 246715541 725856416 227986960 485192840 149200818 614253237 1616396 647106551 308587225 581317747 319529527 202744987 899898738 237543962 602561712 431674599 157140263 930662225 91134977 733167018 426593120 313656091 445783451 319534341 682121186 964715807 109197572 424971984 656689571 186906480 18166563 962181628 376256634 891939367 99677806 729181570 267178410 804650328 459337439 115548081 188607229 807830358 14586661 699284229 647922302 884939535 841042457 666778076 47691743 163830660 283305878 502952798 595921546 183004153 661423596 647980330 655821830 576644958 675280120 940374413 850012707 872768433 538321065 722286409 57615017 661154005 524604373 131086696 212265858 953745216 808152291 107276771 253715395 826237696 821024220 320915745 307251144 118160102 966519386 261170473 937255288 634601006 968458117 356380278 357782140 839687101 918038897 869166438 291087458 436905843 881458514 792455265 800453139 63076858 666478448 468647307 195924688 364526837 790093287 535768660 68892653 166339509 886375750 28602759 585846853 839929521 725163632 48596791 74062666 986297437 543708818 612350167 421917267 576556820 627389961 586041052 513681538 100792270 341115838 907887623 677678049 711220535 970686101 393295323 86348611 256167608 735292627 56769888 923291702 333825119 366102682 436045586 865594657 735640557 569101699 272852465 892884995 467901858 37625842 561485493 872235555 706674911 620658449 677839446 478421779 634159592 442068240 553217317 783605161 495436912 929470345 97736155 841678188 837122733 537306070 423071418 561262100 200098375 960682019 605886626 172579792 458619905 343215451 887518593 5108024 657865344 636162351 799320522 323257339 242146724 812806289 382230075 377904465 446248532 543802937 463797906 769881997 528659009 376697342 529800110 644766521 523178258 237804808 806035850 813919569 304352147 539302672 176476328 832594549 201487312 96580832 984770347 862264326 362581897 99457524 621862214 713628118 103275732 182793655 509623076 451433574 52843343 753876383 11632291 330472318 285499019 762652976 59117860 815881725 262500024 799425454 83915153 266136062 642741552 806713657 89136653 481379508 47125326 46113007 967891549 792623415 223088186 600696784 167792266 265523273 107859389 966644583 675652315 745119186 90630280 170622525 704931310 29861555 140784928 753952425 949741289 45081866 687305739 565658336 752409778 980559100 715433328 108643541 68097592 719587376 817245969 130959479 986153498 474195577 203010920 604019903 859083894 933524380 253077390 176638234 890927052 722739717 296719533 446418066 39642323 627791226 268838219 98910789 29413410 699424832 445332183 664408666 191378001 659179773 974860799 948212796 577738152 842319411 195294685 498485953 338967815 16054099 828751309 166107674 273599671 599436909 580729817 578652838 915287432 853245167 869774189 958557275 443939274 972957252 931313453 638881458 890757789 598949431 677693371 93802311 661931529 371616661 106806948 259906882 317011430 651326846 544699085 698133295 547089362 54137870 844554093 51109375 648293029 648110526 279801929 275606044 824339770 7997026 686693111 98692952 5998571 985182529 254049183 263337274 922585432 627987455 387729294 833527682 278410944 735971997 629942009 750905981 46015405 749596862 858510416 109388369 588558877 851992534 3409125 35565738 941162460 995707259 230997949 428437248 69211604 71411512 40808369 40783681 317597374 560470173 629935222 789331568 960466443 183111920 924394009 616184997 60748857 186995832 21013439 581252508 377023649 769389335 872706145 794166887 34888476 890487478 719029700 46675863 343854962 228782473 657332665 794026322 523324365 266193252 870651780 470927930 574543724 329718319 46072977 871316229 278797104 912198706 416692756 797499324 224328182 835964584 126980434 759272769 11190876 639179627 581283799 947852571 98545250 777331562 168953557 61331000 59478847 986306987 142796696 646391412 274482013 465603585 897437769 101267054 253677512 69179069 703167997 152622993 80682932 352990783 787329542 584672494 295663143 337412961 565692275 42239594 921355673 825595713 693108796 144527821 380666880 12533344 660191232 687880789 53088083 102923420 269714452 36327823 418380311 981369064 338843405 295065215 454496038 95708862 744074357 457749934 920187833 198673914 3124336 60921040 944748421 75778721 203639823 9358595 374847062 171296550 868422673 156519813 32916908 524006309 887974733 758337114 308870328 202153397 174298986 555524374 739759987 46098616 240201528 785417793 54337480 164136720 768822511 161155457 405010937 529388348 778787343 411775595 465269639 926082882 318642498 432557888 929762912 734654283 201909158 357017815 632535592 46698869 286931873 583898778 202734251 302668914 736800974 208893068 355378709 51293031 188381555 265831066 488029191 593857686 220724553 905169656 531469496 559872786 426006493 677659998 772325204 804260739 743178592 497247717 216479640 211680677 759449395 957811520 928029012 928501252 716347939 903881881 662810771 589144341 831116646 951334848 368060936 826616919 534093561 323667154 70968503 103609618 685898028 610024151 403322028 473885228 610283867 665395956 225854357 186321108 240895104 64767014 771197876 472861673 585969120 711828846 324983347 108097568 718152336 659362612 266040873 705417580 49349862 439082080 531751166 30644865 660445107 621829966 749350362 999124890 82455467 708104169 101131047 683363888 845604770 847921272 210894861 532029599 416068238 268860762 189017848 322427535 508055123 676369708 316287239 506258300 104858025 826936662 585531939 561393466 904178968 395065558 308377382 981128372 93338225 197116172 144713433 889783095 338137902 633170324 400635323 264465396 72754800 801849813 749528158 299263840 261112734 623423509 748041288 629974379 513158043 740659091 690959154 508751150 366793922 993786730 268225136 561234802 527579215 381424770 330193108 194686318 502951863 314304725 569727480 291916879 169620502 570478108 213699578 268700515 409429964 297522597 265738241 448196564 735437915 853657387 657812064 612625468 542436387 467280288 641067584 455230137 754910141 927974806 990894945 36232970 439765768 512135584 234591197 829942467 177034307 579174871 786001001 823202026 83652923 520132811 732799699 351492411 127652724 633632181 229335468 344257950 231841772 621752056 237456470 44118249 846742692 754819362 544842339 655328358 196184829 702165088 390162835 151728612 535255258 418937914 310091086 695024472 682207752 132762096 961211590 897204993 63048583 66318712 344385581 557974279 955996859 717027757 54398114 96120577 655577028 525123388 75035987 528062788 751460585 477077688 675725791 574341020 13390174 457056195 132753446 971291476 324522387 924667863 684127945 549867156 720772425 322900978 283805924 195787210 479083959 725595065 478042259 166306289 874340654 79879453 842076698 410582930 972151783 998705200 473892848 415023805 453558493 122862254 370498618 814172374 860453114 180772796 797996706 617681598 631769379 811473797 106704502 965496980 613166774 630082371 121549247 821979519 225205855 579107882 516235010 517289484 301631408 269871997 427075850 394850288 98797189 923319403 469798466 792253996 964125523 367475811 560850581 827317557 15502405 262047623 862517275 593414605 372219306 532985048 717937851 429726865 310000038 185309627 748501336 238541601 273269961 322039223 558613083 471215630 38916510 645350960 107666544 268780972 466971061 51090407 114269844 990566567 829993333 492010946 437105746 461989833 146263217 467933934 226819463 985749857 857537202 321490944 29168640 384775676 434764630 468213095 297833085 373474534 326573428 610356752 187593196 633397758 806428771 460855645 740339481 116151947 90892950 543329962 342711413 430876000 937471637 944109419 728345640 535878158 244980990 740643730 538615881 260361062 637328274 634090367 665501934 631560227 875790119 690692493 241512038 977389159 470011765 334352313 339812748 964110207 556337750 434955910 437503075 624278255 33839580 237565778 974300855 15048869 636430063 368198982 950788808 187668100 883829108 953971792 769849054 510790217 168147518 138842407 389310974 619433031 370091068 489804875 782156416 215142103 353438021 710158922 270729638 861579529 456189377 737275817 481455421 535794221 395041828 494413097 469034173 565593352 142779228 428599841 608107615 568993508 671002410 73305189 886604662 407636832 573116627 899493820 195199489 750873412 960381965 257415079 914666638 742901904 681351667 275131877 280492223 420367050 31000986 30388299 392043272 307219938 174333570 620324905 263125442 359279116 783569532 400171129 557365654 274541759 551129181 437970705 517491907 237952004 976681468 707238172 325906095 323775863 247627999 300612800 349088696 453663463 285994611 308153974 665669616 990616806 930242222 425748819 150007793 66051281 779461023 378340062 813416794 643271482 416904585 682553486 934845908 891295743 246781137 538625619 410346733 843264524 978146106 355930139 52718009 628633924 197464681 835728396 345107174 320982499 350208799 286940026 718523881 303982853 249597 640228859 636927018 21491525 973486992 626445305 249044561 983987367 886587085 173799347 651294025 643862540 776323013 311016130 711156949 155045783 377206564 16483936 826530178 342507594 143235261 154237986 65163751 146263173 762494407 995115407 507464171 247139322 69750842 55149587 430976168 297231326 675192241 696980745 390435917 194792427 281777597 590874866 954128902 703376263 949538618 395378273 505707440 707879361 675949329 243142790 903278295 562506212 542551989 776243474 703687233 397307463 232022301 11618960 329021358 584708080 287475805 159708429 25292725 334927860 463468245 748256382 71745488 407903996 107612267 506886880 547460715 964013688 169536323 32811282 297222756 228211505 642493461 262695420 960599296 52030377 478588833 872527128 265270533 559017577 336464926 433421018 448583729 17259637 905170186 477602982 118237356 174486759 302544496 561324222 371385922 250581096 639936482 165574822 975806693 708635850 979174607 4951148 654425354 679418859 958232054 479157061 230890505 749966522 345683487 33236312 129983232 195932764 323327024 950321499 83846420 994458349 73150151 24433196 580500794 166642093 118650946 345424735 666089598 624839765 350295619 725309331 37806436 968523619 911625507 418621851 279198985 557296889 695989921 385371802 587607780 648845201 239860448 372423876 581495856 632283292 547623860 325580871 659874669 186039451 862038429 583369958 743144280 269405285 193337269 82045653 410624684 370818663 979332129 465595315 49894860 663772720 862269164 743644871 637266518 91725172 743533318 588285204 17210123 976179141 206482056 786769575 806600705 998090035 895636487 881580659 827268333 264353252 537912959 441429563 488126763 715365423 563225075 513461712 34650835 602595615 76995208 767961603 342088089 607330515 887646459 121385470 384725051 802520047 576147779 477763132 923580914 38413717 417735782 892739213 601389568 310049889 141847856 338807911 94667780 288421943 639117765 916650740 11662021 207576523 9062916 289263654 144934153 283946744 648511632 653262558 98500121 998055254 67088255 448249533 70662503 735869931 113464733 956484135 429097415 324183931 165813772 110708707 116576562 503806745 595130599 486163308 646833292 173187147 458214144 105134749 507290209 125389769 67811176 20818598 487641447 206859546 190614152 878736505 104453944 660920927 127803603 642904009 768752145 703977975 383924344 93528671 645200144 180280850 547607936 523529075 558832309 985311742 932716477 914491866 894994690 185339708 491829977 119462630 527078278 246493648 908274610 349969202 240989478 879043904 702571501 67873233 841966860 118389499 308290549 863244230 178501522 719768155 823281557 742454706 45327617 968305513 384157400 942490636 397152713 679920688 511619584 408248631 368648035 346967282 182496502 534577974 717420855 318987836 414427940 561945275 165069028 385103739 110459454 374239696 104881527 366800260 392737732 584631383 570614587 196460899 382596158 32119222 674888588 53520414 686988729 495082113 199064855 813240928 607658518 662316011 387959957 98051136 638754795 429466247 976342360 941924489 631794179 189521399 105987805 128018916 806268120 447982595 554863339 834388338 563342285 452508378 549371892 250464969 900340184 803155913 220728020 154341730 671700487 99620647 922180106 877087027 234626345 113607735 868228342 738114344 175587198 463994667 774278739 23160924 667361523 505563861 961109127 435812725 76082016 225884683 722374075 408611608 523929372 790935402 226263513 842079360 390166760 972962750 524645110 962206536 119303017 45722346 511510500 635855090 608898882 661598299 522429190 856878842 445270703 621699866 517879904 954103955 895307280 25402712 618686809 712093820 216194560 387731487 502988278 229236132 258849290 978956942 249026998 994380414 795635559 10221355 964914470 275440371 108237147 39438065 792286500 599318965 751370543 292552547 191101943 421415423 599226646 571040806 142033231 648786251 14237620 955029131 119257364 567184006 575701953 536325645 110441656 272361317 327151375 661161123 381242235 697737487 816899758 821051996 43426845 664235681 960589319 325589044 960024776 449651648 478914233 327073802 668872537 115705411 705856619 655306804 649885085 388764726 640418058 426604661 711795279 760197295 835513799 75384591 438587396 711721415 370355617 571971166 491067738 308899843 783316410 974865770 680018517 823351857 151787975 516449567 390354180 45950698 140270516 186782189 677979078 114023389 385387726 263770328 499166711 186344248 730816955 205215077 353270258 733120156 613551514 741741930 801407163 915389884 114942424 312550865 897240654 567512767 303374824 394877220 261493182 801802367 321068607 16115638 128233126 769474647 322913466 130938071 109619023 776583257 57428928 362576843 29525479 864671124 923391353 320877180 484158303 995500840 581824148 341916479 507993527 109245354 89520436 932329888 77162959 802607458 158757721 481879863 167226798 915107510 170817892 609148259 935837895 284978673 601287362 225710174 27557163 219207429 577663218 841157084 809376031 575109828 844636535 937911506 810911797 808606656 914132905 643996935 867287504 665812584 439561093 482067228 529372852 539151707 113742246 511928278 498396457 395147145 784045675 305670642 385196978 487649438 864907828 956923106 405917964 23513787 89797041 337924596 393465441 827668052 518941212 289385283 892712743 491742714 959686246 751343598 216275178 678429790 120121888 785256831 848716057 485827289 437164255 146939250 37170255 896360410 959919029 499341194 32703781 460943342 152961154 775767621 222265710 464524738 175718559 967699427 751203291 462088651 889320253 665058363 274383021 380025220 180768275 448645597 785783612 58680710 925037682 162857498 26900456 867754986 131130899 316627702 247004391 125075365 927525201 793138534 769995500 139131092 1353961 278782885 22856604 405888682 174355792 939670277 239593020 647634063 682838419 4196602 409012713 980144115 836060145 300182135 483330750 816688572 391527883 894211555 692021617 567775509 654789366 143702175 572899578 846190323 672162607 657348875 610068615 764462111 855392901 278070696 569046111 887163529 760429291 807178514 620464985 55547196 323217492 896169252 953547991 53682522 54000653 767310809 101831334 40972251 710409796 846431141 38831579 90191136 258898392 658862393 135748339 436233131 436886998 289375829 705690568 23256865 283177458 530654823 807377527 37002091 946709277 344523559 349673181 101893042 433506478 417758583 586749900 171898202 454352145 703142230 428756063 715955897 179242558 760477469 137045345 207393895 856809182 884117873 809863503 940612857 896298204 856676384 812797402 415841636 542586538 983608873 90719745 436314120 570228938 528985037 944317450 496201914 634483481 837894891 815525907 47469111 87199327 832513986 403173922 317188178 543274967 620940579 277008666 918804974 587197240 783280990 888286674 211036351 227463552 439446395 698689608 323188330 385086991 882360471 433076831 458966916 195032269 394255940 24383898 952449386 897376479 717539426 35794012 203507934 352041812 349418133 440406988 63487117 328284172 843919982 35597148 308567300 982393967 812153442 888295770 650260597 743908102 18670043 181522052 974818625 996890575 454691060 936638756 700142782 251208733 509094219 564409445 589699124 298344688 746520675 288282869 253129793 156529647 949242488 728865764 964594511 133926394 305942439 491471744 957092231 696410058 283573519 152555537 655015215 142108242 601582459 695224372 297076550 111800168 164261271 317829568 155289874 306028122 708200077 571478683 395392453 856201248 314076820 439371914 861131807 491321412 924802629 499242674 474929730 395780966 962968312 956978615 476257495 722908943 969599591 991106912 391449835 6116681 910420422 821830872 623231011 851723615 662437659 476250341 881025256 202819120 323490139 811001010 399396920 628382303 346168060 950232833 801757985 42611720 99219517 957232136 270752702 561209598 744838855 28037103 735633253 646512636 680579807 996577305 921220995 317949699 909993262 476394655 518405270 809866840 67508211 313515985 700687308 19920528 775718978 823101593 981756408 231277913 948588790 431173542 97663202 128255716 660462449 501541148 990093079 240892461 56037428 716977217 453958253 615732262 651462743 668645992 740631256 365355557 150041384 849718599 98648032 880229952 157193651 578695692 316396679 236566983 515555102 710938096 760972861 809917614 714304383 668620609 472218433 92676870 990574562 706862166 539166702 439486168 26241488 352031274 786403966 70828330 886987908 57368797 185700695 503524179 693347084 159719448 604464207 720776732 301831257 532357805 791859845 149964206 91181873 8065441 734744555 483386477 368594110 875252396 140752800 147712224 989202852 947017613 301825028 459359453 722878762 681444613 529476553 86144893 352290515 320457651 995617447 373272456 141248854 244391240 592527219 696718019 379321983 510784329 146202808 190461325 400951952 345732675 49271724 427541511 609633094 272538527 25048684 178973858 560503216 969714783 533620719 133258587 224377929 899054608 419693111 130425633 671032838 94655842 696667089 842522249 995347950 637812851 609275516 648683181 283991662 134801541 398067565 456754995 962464732 975355596 859760563 169784843 878601824 94525422 619927364 77136153 99227801 980290175 950820977 139944127 556104917 559690818 635349889 636748496 660491072 834080785 599422241 124465183 981357329 344773785 720541713 478844026 341102517 417067251 17122866 258528700 333131660 698325419 652392774 925375724 958531584 154006688 457054989 834088368 361597343 467859922 541306235 207464630 112428608 339422870 310002536 745605256 872773500 791691433 548160833 742853999 731210566 814056391 240989849 744720287 868485335 656087494 888897032 901595436 294231496 929632498 940553370 95167776 547644998 753976589 903507515 707591809 17264600 395372977 55353108 919115908 304583303 289544158 564785042 170426657 804259872 523732201 534190316 713105467 863789255 434992298 79508987 820594894 134807299 594002855 104110378 807737247 788813684 545969334 506520779 21972830 783644950 524882362 368264985 322586492 280386139 991152174 19068460 24826580 736169880 701021556 501587446 33562139 282658077 429664043 591732997 226146279 317398660 903170429 132900205 608516429 610923028 683855729 373054792 101471283 999618559 639999657 755963266 574821646 36233223 911740589 24131788 290148109 272909087 354725405 985193838 328284113 14255063 743457400 990810343 587158460 991017088 949749460 326680199 328907414 348228206 673610165 72481985 475917262 388144890 671240318 699277676 509064104 824214622 3039785 690078867 844192435 484985533 840380732 432748550 49627768 437531627 155459 653335347 669469353 807115204 370393418 851436203 364823109 132038150 62942362 121629733 356953716 192118295 836948693 16264003 667016086 429466990 237257367 434776826 885412880 102232185 297179116 816958609 491224125 83393026 648727614 470745029 522868978 568054904 976516884 743348221 25663075 359951288 34705928 246442252 396892689 314846771 732660367 342935195 946278679 782133357 968966686 82702866 703081385 774072681 780172416 345271105 192590266 929569381 156699220 110103805 830798690 152708455 866421269 367904998 65422691 412401115 781394176 981198148 746472439 528247207 64365524 995444716 935167674 521609262 56011101 371467956 426951259 774972263 703511710 73047439 976280416 418553263 119964776 112730607 419803435 834610358 980175440 976418043 656898024 85897775 296781934 397043524 829794534 582909568 898367207 352171551 957820075 656378075 448643148 947343910 578691108 736372150 661294574 181915074 954624533 811938475 620181344 439788590 219307293 787931552 722063451 329401032 821911822 141476387 997826365 876794984 677524638 62373161 950939453 879137893 573609210 386710080 663899005 886952953 342861356 399330245 484137018 529947795 875735451 573366851 716673275 574031214 985561772 708448926 104353833 404793749 784299876 188959584 350389055 781914765 372447837 979211884 98616834 55768658 969309743 536804456 158101856 88851514 251812678 135626127 230291650 211081424 307338749 791292477 589066282 387501205 944522152 479759189 790444421 920607391 631881816 836959753 128073957 827026142 565882230 984199122 487973766 213473749 517443671 887719839 64507941 214485521 335785706 35041803 151689851 95111341 41504668 640909645 175116544 781903401 418343784 739509976 562744863 523983039 386133904 81849492 493953903 94289694 20835083 426852530 254479988 203043092 290129878 66034781 786134193 643262207 909983909 364515669 660059251 238572176 761609154 596448684 841676791 283109105 884719516 900272918 742502871 456834001 742058333 268764379 155966984 280479607 614004718 184558224 842454591 569166878 729972251 781942554 847709142 951749014 816752865 426823996 768646199 836563467 898546794 20692496 728559924 62527134 438466559 234442819 579285411 398098310 972739187 918750904 155208089 863009144 125328167 828335892 337996160 973978439 386742249 194808667 487865576 104600108 501189224 22109699 954283782 690332220 979231449 313383066 251249802 133414408 8759175 160053891 663988015 895255293 185584143 2478321 332644762 753932116 226854726 169814900 317777738 729907250 897954285 862151603 93999575 358012401 609612066 517800634 252614431 482788617 559118846 690780952 993325256 280693273 114488814 658278964 89520712 782180938 974272464 485632376 582491639 534212999 29953347 620459786 958879084 298747035 339337961 580808923 451638440 169682357 398646754 170413198 911977447 899910565 364250334 415851174 149454680 192917460 365691026 795871178 195698582 439339259 422855584 379305539 856406316 251266777 479471788 289265712 139327895 843649871 289209846 689005830 787858780 919350926 53908363 962096965 126772087 460039555 923725000 919113662 506651042 551965487 52771076 838619906 425679195 984422851 776926318 321935388 90095073 771016698 656915200 330642313 278703344 289025260 367175691 897416582 924031885 917815335 33714937 304893376 815181720 242877867 114419829 831983709 642435077 226063117 665843262 584945288 977220527 288782354 359986641 884550137 67111864 15810784 632074813 889976818 486400577 962481730 480752816 688316554 165167011 488184044 932238902 9172686 953841913 976031318 37338540 720593062 307584907 750409034 184050886 776050166 672765277 355159482 436306094 696014241 843544327 240411157 767564256 270169713 280742565 482543913 719621181 874795123 985728442 565697979 611355756 308073458 766633772 950527609 365277665 386015727 185976927 653866870 411957923 941405626 472546983 355603476 178584150 371683243 972055875 842496563 470655888 498048997 699233068 984090121 513511131 76758152 394951170 859305679 708027209 238784836 78654961 147044542 343372289 696648773 992851573 396034942 70856701 141321480 761454213 76364521 60307280 138662497 417205893 572139648 80706598 383575718 117326442 80310239 182888451 851645328 483805622 810505771 89266453 890392566 497623876 389130376 672521337 453928931 431827822 611862688 128688979 88341153 32677152 103757536 783540187 347653469 434497760 998340369 340364053 814224882 981475619 205912003 868249551 622591500 321516531 964747080 428932459 471913039 857478768 978660778 230871288 347093631 138800689 130718681 439528657 866626280 252748920 491251937 973277898 945266736 626221022 745478878 77559098 149939281 719661725 802247398 215440 682742542 540917269 124944051 343012824 930917659 376275325 122037233 328824694 493820899 224186474 725672449 847933158 180043536 273291499 298403493 146215683 322405992 503841364 662247553 11231438 506952946 414512143 966060222 742117423 809536721 553705463 546026678 222272035 638706325 21920611 216919031 347352385 32463745 13535451 744308017 616059341 825165325 357041122 814270041 247174743 159664368 402636537 848799702 722556194 631332406 314069525 544755995 464052100 183524719 896657461 529047944 897323469 180391924 769920494 42422714 37256897 166965623 464464261 790316069 461914900 463579226 350307992 886528742 460170686 961123146 344443152 881747145 952822885 338797545 488044150 656182194 520669271 766300422 861991608 754657197 456488527 461561313 805019543 113438447 811273944 178668430 879702648 44722842 447811198 736769074 44965587 362815400 790678665 706811997 425887958 493031987 701830859 682683313 98673473 714220219 134677668 285313897 631586726 221478373 282687926 314590261 924428486 887686854 10537384 286652263 931238429 970008433 143212727 558957137 334229603 261111003 456891759 562160887 845351579 149785706 862081873 460076808 272267829 898529042 708288550 955010838 108205200 201107516 198300068 576033527 315755873 636340993 370276588 631882630 141601046 913910273 481731321 781356949 948108028 922694181 532860005 894034893 784993616 605586887 706278808 144307433 966635647 793020790 20397766 190606782 804384738 359490601 357998466 269906425 953812950 875241907 451555591 686750451 517748873 189324651 803263317 353465942 840855299 909605781 670467888 425619405 593193332 364091229 318866116 597966908 828536400 419781054 631962412 420059937 643862526 838224080 143694137 769058196 231360278 961592293 681355313 820018519 88314126 467619506 54324180 715504732 970207423 444133163 407635061 110490241 640464633 127400486 114593678 529044134 167663927 617930008 314039537 750013133 737477738 641835187 685791247 150894689 967603976 688096799 757227502 716598951 956284136 793457028 957886358 949144975 528003044 142382818 84371614 620103376 444225737 680105394 274666935 525130175 800981918 237016736 231421475 776911727 612540174 531263374 358493258 986723614 407432999 89872890 797971269 418127891 37799462 124604358 828031083 421810436 979936652 765154666 638333590 838623006 214875726 86962765 977502496 118787775 708402661 864236682 556572987 635406766 650493877 40797811 494150487 431034999 90567487 825743253 159948191 636610501 49283310 78554027 340085682 415617772 16355212 161308771 846419972 156263846 520780899 548859745 41009430 192680431 810995556 317790281 289975065 999242709 666566753 684794376 822580338 456093574 625552257 351702520 908621207 898316716 680465460 417028564 508506122 459835562 565909916 435110180 288145974 222994235 562507989 433994882 81429417 909947501 81056011 160464085 578533346 398188822 776054135 983937047 357550391 549682928 923640140 995644695 695774539 396259736 29908721 705567785 401264729 874596808 745259304 811609635 292836715 503300445 902656359 996279874 121657577 588046940 520137774 9970662 597058939 900379806 183350884 744269186 36724545 128448388 772349616 551799929 118572889 484762741 295124700 707077206 354398987 594884176 424855648 858171584 998463888 982672883 80125126 821424819 270273797 373640040 466407002 478525850 755434159 85955603 970970729 57489633 683123665 197138109 493200611 955772909 13107402 406130487 75946401 297312527 58109912 314298195 37978016 292732975 209774442 903451870 322824940 207751697 769114191 263324371 794309856 845062886 97098921 920207118 560610647 505098908 547760604 814076025 89622171 938147211 99521416 350433262 477224472 506135525 162396851 93458245 76166781 666662286 358068541 695181135 34541803 827072192 791423361 786557411 930292670 991276822 952650732 911459173 331543066 23027249 561863401 740784454 840269358 621471849 420819340 601964455 518659701 126364635 383487205 64843975 569974671 587679408 74264792 608512295 88224902 512624436 436434885 180854558 405467469 400450210 944264726 974562152 972823097 971644138 311322958 78400304 611192061 893430577 14988037 421936772 149585873 243710448 464350130 293051145 459557918 87252562 491798336 76409894 994924411 642031605 830332300 41100838 4052851 923681864 379447200 20699125 601874770 913817078 187971888 528633285 703829321 216906507 192994771 594790922 154051848 676033171 239658990 586170796 908981872 243448790 24808581 409559738 370699386 838569721 926662516 114461106 198568820 507908912 896377310 769925307 278143753 264679852 790443460 257172306 182181450 872458559 755898980 323320795 437826405 444069044 875961225 482525841 275117157 71289399 991858587 56403849 960815048 551989726 421799605 434545325 684518770 468186630 781410992 899015148 662199989 500994791 312669950 711947836 465690873 802746195 182223690 342783842 624873939 96527853 96153588 782985524 169823414 240356643 393394594 118737937 187406772 344406761 899635239 694873393 609593879 464886785 902184013 267172035 570791833 5765980 216306363 596760570 398632790 256146264 721626871 129713937 204956456 973749128 105619997 795110990 156813 469797571 669768207 570576525 577470923 549626224 710424274 935967413 45620709 289601056 306273086 978064917 496207893 141016498 737778317 957101950 20654459 723095027 44696490 471872628 195153558 14910211 568073742 928376421 279793061 545163977 799309579 145259461 5578418 88331270 817469064 476253760 161025261 225776271 710544807 558588836 690915548 71941404 274668857 883973560 428157589 414577921 484071378 296143841 281413408 779657516 845819162 295330270 654926361 968312514 815446853 921052147 174852834 362897322 13899742 398532225 753568098 809351708 978594943 995181447 781885131 552906014 468866391 139144382 366748731 149641909 179074797 622612573 409947095 429551751 441443411 562586197 111182116 647989340 827622704 966056548 663065167 500716754 40641254 549443886 612858700 954308122 410437681 934129856 197746644 70136375 739948484 428408057 879895252 313289235 468727557 980653915 503118358 223197443 115948424 464437609 103887590 90056278 430866887 732794063 623042068 268178799 268074598 988263493 117998903 459603860 513253127 217547966 107271289 887548002 126630263 435318222 471387588 160727479 506412902 927353325 229806488 218805287 593924024 905627464 299970165 575362349 612595520 531349172 569641844 539819923 315418084 269779360 622694642 104039549 107682438 75194731 455571298 760659310 841193894 187887291 454662519 865783745 13829143 330147714 897918275 612749415 589726540 161609493 814532949 755629474 932978104 997783544 843740207 615179069 953584783 789766303 763980132 800405711 53076431 442050537 516979820 710253691 604986794 481733503 233569302 280889116 758474020 82260047 448518641 229010103 163819753 962961307 399016476 819881102 828306686 214976146 571942393 113044242 772299504 657973834 524383762 432954129 199339230 248215418 98165797 318774145 951806385 353264839 195232735 345757468 804353944 913927036 298962522 216130226 161324019 137694443 483736058 155579457 522461676 974779228 479339826 376427803 106709479 833983308 650440168 532278663 228677734 320499840 494393406 483785848 231269328 471404271 4872765 871415029 71229595 252758575 171705077 461192876 969780374 943488862 255847827 821364624 340741164 222838292 106611058 255495796 489840532 89647499 840918315 442992953 485616338 222219387 621115649 874007377 654425652 985116361 887986767 136166293 241959301 280061848 749183323 793283342 776190137 441380147 188220879 565080517 920848765 624118073 794783745 598648127 991778808 988272386 360347610 618770861 673955304 388335874 454918713 431231843 575257693 611684294 278292106 23642609 979728545 126364048 810312694 719051359 192309086 93939301 634708575 264433294 47236738 802626881 763594020 880599231 657936708 784266309 90325853 689191184 873469967 699717540 654221110 929042749 186903667 447348614 382273251 634287915 787533155 838496344 233755372 875320985 655034243 522097778 705502820 124214400 108320776 346930044 249102796 134738232 660736035 797211918 917740608 533346637 18025429 8096949 869251912 561825786 760205470 589919536 298208991 1452489 437954174 934252721 843264078 895834775 964098259 398383070 155259866 955270332 394616775 391244993 671522097 800933493 246276201 126083006 830074710 142752326 486965767 920165762 456500199 371545402 314568449 819790251 228744323 346945134 23963453 52202348 103740675 155560230 173298198 194955423 773267939 290039923 344052216 604452154 211453369 962287811 801495603 479818376 648343795 500686812 456695643 139230471 97626411 273157876 374178059 142675283 187438484 951198801 909392759 777592491 894131530 378896538 241019714 644100431 517891997 480481130 755897684 918942809 518803881 433824579 615391178 28587083 71498166 230588779 189883875 399115442 614918047 850563915 731630920 544658172 434916110 124359810 478177453 861728510 6867190 533329566 399607771 304110159 278165465 812225563 891203548 579795125 444010256 953914098 521497919 356870706 525246151 744102118 243735842 775965712 186838944 747720441 423383251 357718506 495922802 845318781 192982472 465667502 935062962 218190490 274688207 844749074 767224206 247277695 810656187 402117148 281663583 520513369 918926324 922184056 350576795 685679946 782276842 18340130 700773513 447256199 933992749 194806364 669395055 779012527 782045892 312681932 281529454 462627762 733693240 303415743 129683597 741229727 530654604 342315049 738326375 195854725 672741063 373000887 605329744 337300847 147535299 56080048 824750773 126968772 522679164 652506525 521466710 750584862 313424810 629096685 663292648 176285117 347392407 918467719 793319624 902305719 794819123 892953207 694884368 818310985 551708072 847967376 123888523 242532455 535829061 477952248 654707126 529466396 707246765 215270207 826159215 879653212 210688754 438442382 91101652 505530606 37938032 175831032 125598478 150754426 609831241 819996454 182732851 412520562 826521121 379511366 860613894 308245128 327967851 573955048 329740057 262837309 821880721 221466985 244255507 235350160 856338144 4981431 883681909 328350521 372741744 983848920 781869794 33258418 668358297 185112109 2119180 56527668 834084036 461035292 835161151 172629852 564881894 888385438 778663892 606876648 19669329 428103066 223791876 488573741 419973060 274437035 260167005 399360614 732580234 61335517 896709313 277384192 222735377 729383700 134906890 379282938 449227400 598729280 950375107 938505687 323817832 674718433 335822269 510081724 650566162 251048453 292406803 741683544 726496314 366208124 899321911 659493464 851818070 321361328 217978443 567909974 156929814 478461409 522432358 716816483 952797571 849782966 964543174 171088254 396917358 84322301 378513258 231789912 38396707 971293667 996851816 522956938 475754114 500468732 356746052 579499824 837382008 974089329 972126840 990797833 485755211 288372475 945479621 227866578 425497629 615291159 407941352 495507444 177416829 865173194 979418869 130536083 957054644 516567376 280908437 605955122 819948411 807866913 519098319 851964346 120941046 192372185 925491702 837981872 114376748 413716317 326890917 994870790 472578328 494005790 39066844 678726538 560195650 153174771 624405524 564907369 696867856 532282001 723018781 344395412 518466977 88853764 379781629 262272940 930813888 95653499 499289697 792765354 265321952 967733387 190637932 433698861 915414091 544403122 106174567 590404155 142306726 875759709 479630537 489634902 139541561 464509284 165786129 93759744 719332359 77122579 966920706 785296128 404353539 909736451 633781650 188050083 858891327 57309080 930602734 476664302 512105161 184609315 572071629 158735610 239694643 388941627 977724688 950713903 752244199 435596472 434986315 504583025 985842348 341387727 150180039 177977584 703310843 471835500 164717258 979673593 645125803 663356820 791678191 209666724 12704396 917416347 555298756 779618066 860545513 419558758 171072875 794959479 313775607 601259168 249544732 353484518 619139507 74857700 373926781 625009854 633934845 422827976 677586706 516595977 506866150 899429000 489666437 271756941 751320689 544955328 8273292 271789687 415518376 709976706 235604078 982675174 124578516 411792180 998596186 424025849 481740064 936459157 392574111 715144925 515978414 985767312 720922670 740943079 882004649 971904550 503839819 633784597 331944195 825772952 2466904 141031769 419759927 728442939 764736759 61880439 954854435 635237275 889870246 550310354 238346342 751643637 502679604 756680986 103950216 466709611 80306178 216031556 846300799 620645036 141603878 571538258 110473625 29117408 489414543 8411301 978080658 50482280 821145926 272477952 395535179 443379352 846401771 545655922 618712079 737409366 250608677 416279189 316391406 929346537 41910385 732872619 923426145 750457831 485475964 458590571 271373145 791405874 224743206 535693880 88380771 327921861 222329759 205779883 662832889 294525301 229622890 428454242 796418304 329280970 136051980 480074416 232876942 604133097 413170238 44693498 928146348 977369761 652491653 897578571 860809163 494805756 813331964 128428243 612747943 938098016 517735752 588920403 283011849 302787 437279511 618899270 292179176 197532283 265146769 749146191 11299813 494390015 527542482 57226365 746898648 944552225 824826904 454487967 319278337 703990168 74377997 24436772 129594853 235195609 68748954 471280813 578934153 138465265 455642040 760878973 552576425 333494485 778395272 413374126 279562494 621439786 276575431 946410770 608400243 983829554 307681320 717145703 302547521 444017959 614036372 793143753 683307953 923610274 637306272 351269139 941623430 806292490 641096884 542324436 452625742 196560680 490016327 73061446 539405010 560104847 283369884 388510161 354816377 460452372 383500201 895771750 464842809 521692213 840991333 217049174 443470238 352732169 497948139 866536031 828585550 636951932 377465800 724885722 269566325 455013110 65550054 989557058 822374688 256679339 671334708 483287958 182147405 448384474 550661508 427691410 453499989 319455827 907973586 844645719 785006732 877778759 135993949 478658622 81959439 887380724 131080777 644034344 300178343 25838464 476621208 222256430 451826795 854190404 268193993 157145510 26710162 997542276 86772644 291288110 436572015 625677873 931372599 355027085 172226995 821992677 852497487 629033582 992368695 414726128 903638885 730838525 228487010 276512584 725205953 54645366 192441419 859007718 971054044 239098013 232342907 565165748 518141546 725743453 585387329 994389226 496268800 488371045 913566030 725333163 460430194 639604318 417832221 485912062 453523215 420199422 266100863 977221416 182662733 4366574 412219317 505920708 940578343 325668991 848707151 745810743 643790827 662528983 108366335 817559230 390114639 918841672 888377146 599174613 728591491 518253538 227546194 696554766 63155636 29610592 95194204 455884957 585856471 85974755 217239341 81755705 645268631 38448557 706345967 943025733 245626795 859948200 281592517 435502575 244783820 528263176 296829859 854157867 795552149 247232479 725150202 508013570 713161045 423757122 748819665 386566048 750016143 603241315 79645012 807037061 291218873 678838580 209929863 984808923 940353062 290271988 681692062 473118349 871992314 524724291 661825910 182789191 204450406 62938158 742085725 523458025 222449357 303720394 294531756 843055369 345937118 345546965 685189172 537655991 936152166 692716325 167689714 141895355 78347924 149549500 927540835 963010385 420652185 869722180 651453554 643232409 920260536 758675689 918823081 239043378 490290295 251273546 265576684 989904353 72951274 544419527 194127198 937616504 666649759 240407518 534093453 618925368 847480648 264627359 576601500 953514152 952370534 250503880 944266284 299552548 534889762 163914241 427402865 150374970 313990907 496082269 193354668 412448058 63192911 151094096 105875569 155693695 525302133 238046368 312885994 692846513 491154347 130956725 540412741 892507464 924910253 745025740 402969408 341717175 80940657 185615635 429456716 440507787 55077662 956589956 588053391 644746313 155157813 2908314 812882016 755442866 465897841 750622025 466420634 961954342 411883372 820249350 372239626 370452429 954600529 250103384 800483414 484538073 514994544 927296826 384211486 787557929 958816711 355662058 703395019 319457334 421491331 55456149 439097102 462391898 785118113 631498162 181331780 628918352 684782852 76935942 712554373 21422258 990813517 254482449 823174418 831929539 933524643 413242722 579737669 562008425 288312290 803969926 89457045 693136609 542715638 137650059 855540639 19088415 438980454 323053809 165265610 925207781 983009360 615694471 943455771 494417797 803208039 669535989 708531444 336789168 61905687 245837615 658571643 46291214 653696541 465383483 438482563 709365278 995115533 738622244 617032887 856245836 502041101 410114494 281329414 200256859 33049093 193360361 236684730 570239116 364792262 763594021 686707782 274152116 20391020 954287573 224032021 131706828 218459537 91403305 179983161 734938849 297014996 763520353 523445413 971910401 447924820 534724238 30808532 623830161 923070500 986657328 907079220 76513628 579355971 15640205 351528464 486927038 55365487 972935038 884757899 421262424 290057130 68009045 49075826 295191101 207920769 701747929 267439855 909790400 489194175 590524924 933639785 46519744 331686199 492500535 456625038 829022652 435205013 405962451 62153129 724615025 645109640 613146779 72406726 163176157 193657913 281608637 939371305 605708639 797867122 845297427 926598969 484729887 569420696 261746065 799533164 23426317 862520866 676812822 870813603 924685461 920490131 930950545 578337006 805027094 342808908 663477822 927020580 388143049 705907493 678322772 376340416 688326541 606382103 266386604 795435456 115183390 893278235 587154981 842806813 58152843 933874420 348355041 891023731 922976843 394468320 67431210 447381255 346065174 398275909 403605046 972856320 910391156 871308979 137574378 107985494 216074801 532748750 13561249 386798421 542396435 183107625 123241203 240314058 19439234 806830767 455240498 141256086 478276287 764778968 215034973 881544230 130963274 288678917 419515042 840259423 19349023 541057106 865020822 43620648 98496625 466673590 212362989 163685201 342882459 223001041 893988693 720133872 356404392 992778637 525503498 522319715 475330130 954863563 584014562 350491418 845578798 749579412 407855420 814139149 990050716 845445431 355227218 815768402 134032792 272216510 944400421 144188945 499687992 968073774 843715250 41442218 917787490 873769405 228559682 313867268 332552763 903095191 134097015 369425114 786647063 121345273 998614414 447635225 117369626 774774122 230775792 255376631 937136675 283386791 745223973 865491878 151960324 169396930 825455120 617124919 22967872 11283537 624001663 88342019 906372376 838113083 861650766 572963978 368090836 819863211 79774257 294889819 342305180 240699824 401063626 872551630 914395523 512946865 212117431 838816617 295718996 323277872 952164464 751980758 31552354 232096531 533830001 614971522 256985896 117265098 758728817 700166061 838631645 925407143 823292624 713231943 633997888 13748688 341522365 953370288 949515623 154028062 941477344 613865590 286640260 145207745 117352141 804850404 896724143 408035537 874756390 15860310 644394220 703558050 578784312 502389431 325534109 551319167 924324269 956676145 2354752 342546107 343560975 17433148 664275689 197376409 172612418 576716235 930385101 388044113 373661126 555156597 331173675 275379807 233677328 502910263 234497240 887436921 510537325 798630006 882050467 880906511 567483387 491591676 80969827 701773557 954943679 981197976 163860111 386581094 151211640 642859328 697092401 400083123 563717275 172431063 893378589 337014568 62071063 205396282 976688094 95238718 736996776 433808227 42080003 517965002 976646165 141274778 927827902 832380802 438378215 940554764 299265553 400734035 36122184 55692256 648280203 960060487 296825530 882157461 262159108 491820137 306486190 356393718 881693690 48097639 282441825 263649307 367157114 677762132 740840337 420592943 263576059 730464506 458282820 258904699 401573654 691802421 934900182 536644102 747135202 225190107 113573171 578943199 750387946 232554383 203235737 370872655 461581229 991291610 372054603 109280480 338120159 741237806 620258968 451220572 819124581 318664982 892900676 635365764 171421950 786376130 648767862 998143281 605757238 409064069 424320613 324219780 103590577 613779704 644267305 221184072 289370658 141535739 309174635 967636479 994717186 21350065 953885660 272931983 565735168 156874680 633408359 164335570 513051563 662989705 794320537 393896310 995857547 89747273 463699836 169896963 860619172 431553498 445483613 726479675 916707598 285528118 219584216 274094211 464422193 138758562 152339465 236388481 915006166 867989362 876509376 909078399 970791132 365132819 412737810 541521297 399363693 385576206 121459319 157139269 98726430 874320334 31281599 613465982 470898490 839243228 578867688 503123319 24239588 666649615 717392108 978939057 719651345 339610700 361905795 380678197 929055416 519482192 21169452 291561635 562553771 875300642 684857578 166336847 214412651 731592412 227460296 938766245 940019262 33044525 58104582 854479048 884868499 258309801 785358662 121307368 800200818 87115670 255945399 995901275 162041543 885970614 525841422 886465577 636678776 268183034 269757141 633025260 176853252 350293027 935590846 153920183 209702654 956835150 763950059 381025759 986722073 273686785 753277849 62010531 337809962 165890734 645288703 877368032 712770445 578652468 886360243 898218287 437045813 719937387 475721430 226899389 171158696 979721069 742999781 754471930 689121177 260762086 818029717 539703040 478429201 371354378 246261916 547219889 500299881 546029094 960223739 216937586 310623648 331083061 970153839 235416088 67982851 283890081 923691113 60282928 273375131 174090053 874745746 320942971 247620794 361498065 370174472 781526994 427551640 223016591 663605699 79136959 866346898 762129301 786341533 692559655 78986138 64929713 880135873 711159526 600762674 700480129 268975095 25380259 800531626 845840933 355736106 730436104 198173284 632345949 28013113 457321251 629253609 318234474 232037248 201421714 402581949 171595252 465171069 882485705 485044907 86816927 877047216 158432276 5409318 121671529 879934541 662433246 768999580 270517150 761989564 186325104 49734021 239664147 195428625 879976057 843797839 60066269 149249882 189573561 998545837 490479851 792563305 100274730 55729842 52424318 753491534 336625771 839806233 610400168 893040498 741883916 550268104 593178991 760617555 363327017 73003384 297058708 66720370 551206390 502648210 587809830 241886563 676693437 547048168 500202697 190901166 636889266 892310971 937803887 852445746 194776000 458074048 831485925 480848485 566069925 207455999 378779332 865045721 504496435 684506317 154053429 910170405 932917461 828745996 635402453 347753429 726312075 707058116 419124867 669837378 335447786 891615290 112209203 206589856 782419993 352134499 445386607 440659803 211531445 363990575 710276775 696855016 126873365 872306273 277740955 31549891 384057314 930496681 503506627 627078823 152165916 655693112 511413843 502717223 288487386 959228426 966208313 179524175 899453008 938350047 945831898 567470919 534740540 439811206 155796033 773168220 105808180 681755224 680173665 500935327 387461664 345849553 129131559 724502569 733730735 764150148 894235904 385867488 20198118 515013474 437164768 124926406 229814687 175877370 877671551 722280708 224016290 568684282 916974717 422961033 531982070 28188525 382906716 342491856 500990050 66348840 606095054 852551811 969276900 79591323 40320383 176838001 782613166 970939566 429111931 694235024 470341527 133911228 910851011 63002635 798399909 72123390 298671647 742371966 567056146 30647279 684295739 2097489 118676380 849354377 34047559 215304537 23089413 600307784 95211024 563493249 243975156 49374054 114319315 560738295 552034879 145287707 398350983 939917386 191721834 384428867 999386613 110165736 600758852 427064970 427841196 286021988 718537718 587641128 298060562 568862549 529838912 642279309 472501524 20905376 424416596 929390688 677602902 935966610 294539892 761249966 607011601 201193212 936577069 711430297 321137421 726401082 990610122 602441488 320858315 800187240 111877743 971167296 949150499 498594057 773550663 95457013 834025657 469222698 708121871 735911432 197522010 433286048 936751699 340866239 577325619 283241939 847011675 954436930 721720573 764858834 998810843 328509177 173188162 856644675 821549637 363022184 427765305 470645966 105770920 547510151 323324320 671397524 554007796 808594413 913536583 650560935 967307125 687809681 279577104 125895046 178383891 147978033 822545338 815653806 971212645 334785156 140949944 618581153 289964590 697993147 391170470 50897508 555053739 989463860 86492981 475585021 336593082 317083823 910692295 964713308 60358779 645889138 556348148 399313318 688428094 535948834 50837275 995450348 369541425 455344366 957751004 571608200 21035269 637022549 993093208 745950790 965222061 412342308 397527276 839666836 817093914 784577546 783613392 122659326 91204116 524728968 93496911 151578519 544626475 208123955 764917913 66171608 607535545 486346138 536604762 809104562 117880355 373431355 9922310 93163939 781269521 480034180 460407789 272664893 117471433 95212175 862464606 433788014 862860217 838112474 725347907 997699319 747513123 640744704 363415684 406941766 333306674 592118480 809409240 467884536 440493940 409000716 712469541 921578600 350222924 281222113 78086896 804243295 703516342 198069698 116238576 751312019 491522072 734156335 258131273 547738077 963731372 296657273 955109392 97756334 281802484 170819014 619663007 551379864 161005572 710273413 535771502 250732399 433958224 375745476 105500647 940529563 881683820 85482713 555365510 245173921 80559576 88754058 910932217 111037685 516927752 857554086 255964516 155191384 468964153 863126481 388713587 810208380 376042908 489465174 996568513 299754475 153696165 910918506 6856012 376296655 197468057 739738578 891257620 115663859 730223784 742323406 447870820 78988111 447712232 394550779 843407399 563604490 188282863 257943628 688356191 556469344 770240761 115954901 445103404 765315190 15975241 848035525 268225381 351865435 919978737 814284723 179814814 650940346 206140034 583142505 239992640 953815588 56953759 302284767 106874608 733423008 615635349 2447796 875877416 558865788 394675186 64653157 177323603 790193011 131286383 752520265 580392787 377575191 438970190 151002130 43690273 941489541 399721187 404343958 94211454 388895338 684138917 648899159 609633370 712720326 721769043 649409454 656373053 400975846 459756922 905990988 883160423 769560499 631903231 910536460 357968913 801965380 16528466 564416106 841573544 285180355 22870647 835780433 278122481 798216705 600009304 637074277 120402755 818115136 663447136 861258714 499071817 770849876 651515734 274030698 687801111 849759245 504184741 584771839 387291053 72876253 918137407 949843168 125835415 192945442 80636283 272552349 164092123 307908329 117191413 513150877 514134099 842002680 392127532 541561418 847278661 591529113 976210982 957899912 160612741 225244138 435061889 640399531 91552137 743882426 948187290 464809668 423385903 374211660 949766474 942318654 350748484 135237420 789776555 908199391 263215792 772310249 380118233 516581949 374078616 775775719 788551333 195412310 751507457 161271266 596410115 400563724 493087090 681081462 599081976 215736623 792673556 796065737 778594082 369380121 679508629 410591894 176379267 895389431 949913528 436829433 808289476 480867199 802813143 454972689 740112836 380136756 511398348 927444114 471398952 482343421 976593049 259126716 101968317 850868906 799522745 251794706 290753042 511079996 950612466 988911251 149146846 583533651 32336071 365928169 113049052 965358607 119581999 3916216 970908500 179711592 855381710 774665653 476325393 964000468 703407397 449863462 973797297 961729113 378564733 967060482 828570600 405775641 442626275 411518802 129736798 628712889 599634312 757639706 6958390 416144177 34512597 250420637 21574351 609987880 495439462 436671394 239662553 348208339 600475686 748694947 969804348 359940939 710522421 29180601 135690187 573115292 366633435 110003236 84691553 58013202 673729048 60900874 548280093 34971205 535889934 53706329 257726529 320761839 632352296 229830872 111715166 824631725 138673567 116657650 465422573 702596580 743309834 622285437 986774452 117201567 834525978 668322977 168857654 100483352 190603758 672886398 665440750 944627297 502745491 686173545 197067581 599870051 769090353 384687588 629713056 707576416 666204103 803110826 955370340 168603357 818077469 154288972 925020620 751246391 45097171 860440228 113973893 973304810 814156754 473377146 744694340 791175939 530665425 500398317 607596313 544657001 67757742 3658007 457426077 677213479 446559080 925384082 486804076 142277402 685803535 152043619 679405961 700091908 565757847 666706310 678148021 107858321 183643299 428118575 910821185 905821595 12766613 546528676 222530287 461355121 800896373 989566568 95512071 129985110 511274689 181038403 281534669 151298130 525260178 65986419 514141586 19512962 676281496 190196653 728018063 989377186 959686812 607853318 108997741 23455678 146766478 160740353 956710218 11815700 340297431 673254021 656224212 215981772 812167079 269124462 176763203 583764295 420450468 699878035 490680419 82406620 900247935 975041357 323891035 847512975 295731790 56139311 743520844 418297858 627586915 313914025 693135278 262070814 873675070 305688754 826322244 119152737 190510914 220003590 936739046 620376938 172552400 6546880 594871725 933119267 428346705 965528084 292997165 23164415 854427281 991791006 205664037 427732074 187018022 216523452 715074300 185174408 225805397 615615108 800460658 870425865 114710185 261077433 182395974 623657832 719555195 129716988 516482205 18516859 352046821 498819472 27308033 501767219 654309410 152133708 693575392 818861756 106684185 430408113 941316932 900747916 22452495 890833503 310899915 184967733 727831420 939774585 940997612 735282031 320627769 135241338 987846201 371813911 825590177 609704646 605167685 755760701 928655781 231980787 267641812 939855966 128562710 561255452 253298521 271330516 724781689 416033072 787778496 414969743 125320708 217096832 881951489 728167840 30194857 167202954 657436108 957830525 248989503 508831297 493054849 174781088 830937834 708258230 638760096 31663450 737315839 687807102 332374563 477669241 937007705 631511502 687003263 260315242 464396526 590489931 580935329 141854510 868586428 351835952 732935560 643055715 91953575 953497479 681101323 507681332 975701158 114890489 922009166 598484338 863651375 638595948 329451120 405683741 789453912 126767953 5213575 135272517 14246611 231558188 241674079 342072777 951559521 613976863 725070071 701600008 767314842 263777714 4154682 294750427 193228354 744858203 734625448 139847938 884487740 819430168 172474807 689322491 911737090 940779777 149238805 962818751 426742187 506711475 486583439 753384198 539338547 178970331 345172889 652802840 890045617 724254008 290521599 830601835 40133978 673229916 398487466 983828089 93998985 521962741 528859069 659952538 575771573 153878941 609805382 824714589 878146743 366590240 698186303 908705248 54946174 241176728 997509549 784004962 205593196 280612559 843379536 4466751 120398899 637083346 912264562 361086792 961633960 224948964 953037233 836368427 325173253 969671158 53617443 434503299 570152645 346847533 242881717 317711106 424991435 427281463 637977961 756742522 610647811 627183909 774122923 981897698 270309476 725587657 408247685 276605612 239224246 848056260 707121745 647377492 191034619 479886496 478721486 433797756 345622450 547776608 490049718 705789899 743513530 528673504 195902903 738309954 769474447 401013738 584050810 230839063 679623395 749229257 454887009 155818716 317419567 684954442 555991630 725565341 317281248 183541527 353889110 945463648 815045663 267399912 959009911 165174809 931000985 895179405 393003913 602409396 791346723 64644855 527309937 915300214 506669305 855673799 116023967 968974203 221714230 619677665 811854506 310959896 419111546 39094069 62973073 138840904 765150780 421652292 614390720 876761190 58217565 272333625 198507340 209090417 604638649 56240791 602120338 96912760 939227094 940948123 252101188 558903815 808165750 193389897 241406325 9520991 795069980 727794624 217016532 842810838 172676580 335453175 75384100 328716176 624882438 428564729 484145146 669302336 464905721 463485094 21036551 203258765 659595690 877446193 773701045 212435205 117987558 186787639 875342202 793119135 699118128 574099883 967580936 641530780 485014187 789292524 556250435 271931370 495683580 557474011 953238900 903946492 671432676 155290445 661208016 278676631 332891175 235537883 725369645 728683307 11153533 16711392 468164119 275011706 662833617 330616571 963731632 164009012 648015023 515535307 552553642 436825651 686907065 943997164 820567549 629747679 346440215 728826448 410256 483304610 598967001 741067052 725743841 891096902 343428336 987651279 56700851 496790490 84150654 24108540 433541330 602778047 719434839 415027349 471476218 108690241 339818465 218380388 662779965 22292073 514913698 807180900 812416598 688226190 351413119 36068919 149817948 230185677 800371952 367167424 258630636 526011675 11567987 177664540 802606632 734328149 910380218 752176549 646865987 75187251 417980444 264155470 215056313 728386669 318952299 400951828 924869738 92161644 324370103 375400516 713495130 716507190 964781556 796060598 835437092 172543185 359158492 939312069 882194299 93075542 825417385 142904562 72073595 241451271 718429826 198142280 175455840 520583468 581391059 795578628 994966343 769773004 932942230 10628703 565317870 513758040 788967501 324518830 590650439 773802931 251289128 938728816 827248668 725466072 718928235 919069849 952858334 946564005 636398593 34703311 230873074 814775700 172048104 642920257 638121925 767639151 356369599 798340786 596509942 720485717 961480324 711635787 88415154 792477168 792947789 637064066 559012802 429236370 552325354 535313527 86362808 686030997 871452909 677125829 82316936 979162904 106482898 8201510 474130327 344012258 441598523 996512326 626288757 703011379 489718584 18315919 215665232 452821108 929226238 685437333 409152249 623147038 719487515 541976774 937320281 653680667 862776304 739027505 166021101 180521479 971674961 895055341 904765208 47149428 43744410 907960623 105735257 115601039 181378007 232524540 446407601 799361763 866755581 920554768 642599842 592992788 778473294 802916601 496765656 527081798 479293331 980666068 508770557 678061397 16909071 818248697 236167663 317193869 935123768 742223653 376999157 11048405 102891532 842230159 948841455 698487010 798059532 769112339 818685805 924163181 724711493 317245980 303479997 900359756 908623953 420964307 504420277 46650065 644121477 522534506 334083921 316494832 429721805 130428519 87049888 927760167 369288797 829775609 580081708 317426797 820634817 899125602 721871510 910874309 613862129 897477087 294627001 161828932 21800170 608809780 156899255 589352297 935081421 685609242 966312244 373933750 254148764 709419375 955920092 495252602 721237319 315714988 821618555 152160267 741197506 884975435 615064055 901662757 657898178 884022905 117128177 735764854 427297445 79056434 778980047 928980223 867248234 156889522 544067736 434318024 45412561 442119838 844713878 495863384 188150831 614771000 461044530 596174678 65730103 696456338 666028194 811988843 942101061 344434579 823189704 41000973 529008320 232106866 33242174 331237666 738870869 482375652 676687125 982852986 433439732 971259576 940531915 791123822 111706970 709502144 716242211 517563559 542037883 722457672 933737583 346898759 317645370 949205086 921705375 827753311 20309581 13966510 489121230 470987369 29747093 773359557 101142857 884695952 972868991 791348739 468337302 931686449 465713170 394964933 817783963 378781674 906513124 481967317 415344189 729733587 842151574 168002985 69290592 644169869 387012439 118658847 274964568 441760902 261501207 866297975 339828860 919386307 233953430 683536278 162102131 472905294 813361897 883448132 714814660 625595310 529263081 19194026 452526507 676567736 676589825 245242953 803966029 507683435 228823310 839350647 488579144 740718030 340751974 803382030 347233427 24893841 72311733 220236735 600341748 517539338 630139950 487285376 598255706 89885368 756641737 624919401 435629786 999105293 128206754 51897630 198109295 997994399 259525180 632105511 434410304 76627471 447260909 399171039 170090190 560158901 515575318 625818979 15821629 992992115 236499010 696083211 87597876 863826361 937338418 809188132 435330827 656516359 404152813 692219865 412939156 822491132 659062097 692664293 362826537 354541051 342160876 973866507 780915956 685042180 412505114 25002860 691422130 427317740 425500643 934859552 895728677 671917228 613765104 720015502 512378161 671406032 309835588 702868189 392850834 26934971 288257243 768342569 76298478 772255442 659738504 953882543 503670808 758497807 731492464 567954491 924207206 568598879 720618358 67345298 144440745 432525418 157607321 249200978 720275920 426151393 896293419 641111218 591416818 533874296 5804861 876685298 813891684 679284609 992414169 820660495 15532066 521320740 236088206 103634144 86474240 677763853 194911266 167944482 654510487 304221943 24624612 248531703 631189208 40405380 137996303 508414270 717476250 489873200 38222266 981066191 298261120 210021666 772791023 706360539 558973874 625226575 217320477 813730510 840496081 81036730 77880318 775293681 630365925 730921391 25098597 283610058 164639127 824613694 789044744 656392218 264744803 503842987 119574158 851052484 655528392 981202594 568402898 759383748 958877707 776059504 420321170 669148813 16661919 714237283 78051694 15542033 741916235 348870147 672266482 124659265 57226388 530999858 237903546 766087826 275599772 972123663 522565217 761777945 751175014 394190789 203794870 784974512 619274841 626385564 143696661 205556080 179336316 34715939 459888882 632812239 408644116 761183973 729452468 653382150 839639558 29392061 277637002 606537496 566670228 178605399 106866679 330358480 652317123 873532360 855038009 632142887 59748229 793420570 104716450 866130570 535801956 672396130 998989009 524913147 516499318 930171627 108233849 901687379 225636097 528987817 448532416 162113110 302443642 541286247 129796881 345171312 933651589 758375597 351594559 336642899 253778990 510149805 505970480 658769127 1003016 709587508 156692442 95482732 567716934 701158478 393452326 30164916 391859457 593649319 623312050 340595756 253835280 430706027 671587960 579750448 723085093 427841857 613595596 124076028 248492748 304108723 357578523 649547425 931418182 444787722 78695682 90330106 14513395 70457964 671041181 289708493 681532618 769829123 566450493 414051236 399909000 885009111 952716086 284998654 276902892 561049159 533507333 35418662 733140584 520493657 360588456 78785638 101051364 714973188 706376085 169068856 696947859 229227431 783263170 246593990 585403661 88327769 722985079 428916516 198758476 675129870 239465992 509075946 536949253 474088291 411325856 919245833 244270017 172724957 936284581 488331199 316650641 301188578 887699845 733158232 256739615 752496704 480857165 710503988 529047931 678863297 348700482 243006707 742166299 271974513 468888391 788642037 400204443 820111877 761051439 161737954 602287360 842676228 613822994 630029075 613682641 27136077 279937978 481848051 222646617 150730667 409312578 676063190 829522195 427645281 831842684 160623747 977588423 352001998 265351825 699847833 67291066 518849851 700071925 692196274 13841127 239252831 844850943 546151701 463386288 660809313 761606509 119328119 878632657 27002245 252055497 429291212 947425485 447808110 260489876 144574182 789698722 759105013 452857658 213974279 761452730 367828569 691572982 208551053 780436810 672035599 682049810 350178663 415203834 311820115 499211860 204743999 987129878 241806639 566690991 418516096 339262023 447380552 994111090 294148493 688544355 197059511 839244515 480091728 613856745 431790765 835731393 466887852 620947615 862521434 364904390 471019144 578894535 719814828 360566708 819000945 192754286 403003900 235515254 418609728 632134455 432346086 155338647 816002806 52027827 910503268 629596708 472597899 713174056 588294747 841312104 650906094 661084348 541537950 594668006 241662515 490055420 335314346 401859241 733980483 25381314 470126672 663939154 84045727 115217138 144086288 879433675 706732064 286942724 782857995 721266945 848994740 902737691 846070625 138242564 728643418 293975768 105217176 538027816 445099783 586903226 837064698 728125203 717125845 735649452 587093214 586003325 751915367 111347455 958644798 150468934 342760301 458363059 48612950 871249505 546740327 813445378 610209413 953890965 219513554 402349780 568310657 777621442 543773524 254818081 808061047 148538061 602845381 895423356 420163060 995705219 621777053 967646004 893006579 398174570 129278711 806959481 59147717 727505994 941267829 712875669 157928266 1888983 906543268 465903880 44139891 607035256 132783208 927251989 847676257 487653444 679892571 212827161 349645261 306348966 484096678 911657610 56813397 215628171 144465615 458101923 687754742 182911894 993834071 40101983 935497414 927012691 603505884 333609740 510192325 784643929 868066376 541006138 773463097 702302803 97569511 456060128 147102285 460850019 107304004 40972746 67121178 851996959 369289614 476914628 174888647 533042611 992581179 776992365 892575775 85501487 301479871 922376955 651767267 430987778 968110828 235348817 401749484 456874863 403660101 958686972 631913606 963441939 114775350 964123513 332938016 431933467 774818760 655052029 161351839 958303126 800708116 801409639 676922954 782325550 211158389 516316512 298274215 594265720 69275470 398423939 401707093 680158789 684570810 199227439 476017662 875354449 14571538 812674192 982155967 346076626 989265364 291343580 644197308 406894266 441426652 63573283 890209893 767276145 180708736 863544867 816325713 436692143 38904705 53762742 34841756 796894664 979464391 87496279 282693926 467097930 773312990 278372603 729913562 704655670 73446601 576774172 702288081 964979475 107358133 977753647 52831288 116948720 507342138 132528009 727830834 627727919 360628284 904351317 80782710 949781493 788674843 269312645 822634179 707235668 711266506 402084502 794079403 760703122 753096727 448927128 443747737 884497568 530750820 475017137 573559523 784345914 643699024 136970166 189664253 146267020 359102038 882118257 940363849 790396384 295023287 957009016 907526457 445935134 64724042 292115029 912924598 491527854 674766884 855174874 871587241 344598660 243166480 735570326 281216201 602253851 786517017 750081743 880224443 485997183 138817980 896365817 845533230 394419772 829827991 255282181 430799008 238997002 578115311 656774027 106232447 102352094 934584616 887023669 128979180 919464786 738061823 522491711 27329574 154971892 186754109 363104435 984658308 610009147 977803627 804569950 897180047 155497295 611547291 933974616 670248609 318595925 962552196 213670128 756046831 290548986 608436622 968835789 323283676 200719827 830816500 710638016 333759117 639142581 510735928 274583654 28638355 284908746 715360279 60465534 71204559 666636712 184946064 112209824 192129662 848243337 246663563 147844913 761791330 619660184 21236298 466416391 345262369 925348726 961320828 932587835 485371144 644605179 838228916 108149032 238515007 476516921 919113054 239980406 807036772 492576031 514067708 789704897 888474021 781785025 943065337 632407585 235899966 492455221 296384620 275446326 500092888 289813041 242372834 73409080 12600520 247010600 959386980 52874170 720274121 639966751 441013329 676886089 739014105 920592964 579463721 988100555 73888697 705025261 837820216 296381281 28496096 965991658 220461912 567993069 795246810 579326370 249521158 67707862 744004898 502750042 584059450 390640256 230569430 888639480 793028926 750153669 500647768 633302756 49472447 85444159 197271036 848123300 568204973 817184417 912684324 282732369 448853474 203806067 351540831 29986147 544722760 805811295 697357922 979235971 241372300 707931854 5863873 799026946 966517079 65411101 680492037 494626968 893836612 428417008 60793233 500609147 129308784 424126972 698796287 425611453 939394373 244924493 276143100 243081706 83031074 561005983 891642880 410303997 629952229 980465528 729032814 70122769 197266850 894177102 997044015 536472355 756831939 64772334 744063908 857954708 803331473 31276931 996475846 932784514 670441336 331259810 336614791 877372773 334815153 967025448 685226583 311048829 361791303 116784402 267320635 4036170 192852047 13850654 486589200 903861525 552559984 547762824 498672352 5506840 914100425 322679144 821329955 457889953 333109606 369206314 496935918 601235960 379377196 917566431 809802443 926271270 574017789 672695559 260350830 351178206 139129573 142001223 713929348 707863138 505250164 689938919 896862212 116420066 185215003 961881330 234792371 194369176 424525063 595160119 105290659 32809070 221246435 651309654 187330409 211448951 899665831 101146325 676535173 510330041 622666922 264208575 485357227 786093498 411198929 629769119 548553334 197886327 89607812 885417898 278199904 443294599 31285762 996387373 222303772 5595005 456421179 440967283 551050984 775387615 324930351 509300763 206608579 661812468 599486502 749863796 49525432 755060908 124702292 298246618 696626300 54350030 716449796 181276656 584588169 953477494 704550387 379498816 277110061 334390418 285126583 141865735 672563287 128818858 522937710 339741985 169875141 302418077 176455348 686435937 661309246 258028433 123443125 961835589 197016477 363766267 699678152 514216800 872880620 491214079 652585849 221234730 599964886 321080261 802918580 302832856 887186202 765267510 983538164 968048344 134025625 810651994 674758017 248483201 295795980 202716403 42628573 543963831 328772769 969472369 525773433 566808390 917472644 937805449 947003911 556311964 423589275 537376623 667932680 659602530 643964884 681871756 104074665 409931564 356452986 670455165 965626341 329265907 255434914 224627291 438882143 386578708 100153202 783276611 802197801 834327694 506015565 510809945 815535627 479812811 577486257 986464872 672961229 784954197 451930999 280938578 96492839 755409249 523024834 707386159 321597071 642409750 753430658 884624901 985635247 382653954 624422565 451868598 64410975 580083656 625431885 440954328 612607171 280863723 306144713 18392855 261937689 368174855 138936387 68403849 724732347 442125433 594215300 126054369 630535631 675507889 480609771 185922098 886765971 406227318 705168607 249321573 209457998 709801509 146775211 515886608 968662043 213777312 619397682 760706676 997397435 268807320 304564412 604198318 185982695 599571610 422408090 575701689 615191202 441020108 381209397 726686408 610325265 140650396 848990570 993764198 156967805 684396885 233560032 344004706 874935123 646229640 569041976 410033711 831360446 930465576 472808842 237463110 511233282 616861619 955384060 353838773 728928421 909422727 368183059 294073591 325513869 178297097 646394494 846389337 669942626 119163965 888467225 22420502 87858369 68755771 524042388 226017253 738433653 144869710 432376603 556631498 204329290 420966397 835206065 774234785 550960718 695300923 919957596 398809725 829775210 128426141 364767773 109572701 570516347 842470481 712229584 974803358 762977520 361714763 247127752 668310890 119845314 160719392 287809373 251351616 301594583 36291226 886418805 533710226 215548182 331198830 426768928 859483674 522162165 817597873 566662832 252107385 937162654 556839120 973482389 609787442 209460529 425656705 667338740 659823862 463065367 209048060 224356059 525085703 484660572 338441295 86585430 530628573 335024036 877557253 403065383 400649933 841556072 231743131 352057960 280633578 614617839 292960678 933083131 131749569 868586653 610365060 348977448 17258586 640802757 926375420 773831446 726406202 20823961 256509868 595336442 351024490 198681563 818276277 109746003 931203239 239489017 161064170 411987212 762672000 967046437 953610674 946454509 124869380 569225613 907907358 49062837 29435157 587433449 652452418 611982488 687487677 237664554 676684043 76720120 650738760 163876738 896082225 331329263 211697913 48310658 920661049 643386650 193421384 38586975 535165034 723020853 221295916 290888060 6539855 702919773 526690568 361788591 836040692 331768329 951272863 143294339 139057350 111098604 846649054 551774625 802998889 305533730 524749354 779197836 737968879 999150436 402983515 640655337 835743690 519228747 527906262 387915495 89233739 3985210 997275116 935433531 397028295 194668441 246677292 290457331 182029442 609188794 499786271 2872602 689129310 52374870 206931372 84592327 243007113 328354612 304942832 579311125 661824910 311447193 332067812 798782608 139749307 484978052 164981833 190488 28793296 396088277 694905488 847921887 25992062 717157292 363497166 88703089 829763118 643721819 145865254 39299983 398256008 307553992 662353712 918880419 974837263 48998365 49569390 93477622 722815817 943010320 156859290 317233705 444601199 587202609 885678664 235934164 138478713 627271941 323817906 242705692 691015308 273696877 598456712 649617293 420528937 922378171 78153681 559167634 877021975 241180340 991906313 35095994 363453192 145533394 446612850 940129389 807762274 387433938 832967132 638369124 528330578 278589092 69854437 204520567 165824780 938708753 535170429 673821579 201455840 423041788 594663717 691671684 103702995 537108848 922354083 64925803 436077900 582485151 608061867 411939968 478279363 715177793 88215338 602698576 783216097 121839971 185683279 833638623 127261842 961333225 402658958 353684140 711522456 350192647 365467547 859785146 618961068 314627680 525578250 194066209 156819894 294851121 783924307 945048172 805817278 825907859 675168787 486431303 438415419 559115697 234752977 166669454 313934771 727876396 336015153 217946969 686244079 868189535 989698879 658831997 363763396 93039941 313341792 567181224 726400021 115509473 706690666 778332384 928323799 919203377 598438912 190451337 244837325 182431555 824898152 193108924 26902511 354720379 317461587 409194718 913437529 905733640 146040740 595085761 990425042 693755455 831235976 986117168 740807132 357993993 31241830 50401752 115567527 272677551 143352685 31341508 298035164 756034035 890182375 964974567 522721073 426066984 354058728 850668382 193817844 921530315 525936689 826610472 116984207 754853984 68322449 722190558 405957851 176504081 237320567 64022268 419563952 221695469 759894538 963491090 441159681 688086484 744159837 326945024 711189523 729146800 198782618 997321709 635648036 70729163 996391201 611793617 571764570 284171562 404632076 826361420 519088076 261288956 397988065 403999346 312575136 979844408 695131422 390714610 450593085 716548115 671959917 69693210 74609736 5300451 565416447 202728875 515611710 610883288 893286174 398749845 123000480 762178062 774510157 999076067 262493779 252991428 497539306 243087610 243434899 141069555 591104857 770866276 382302729 842786530 367884466 30633095 500500563 924883901 182797857 880300448 929964758 899374362 636699184 707474399 309750004 85500209 149237494 691069771 846938248 562624401 368532366 950777792 969349998 607781888 652682480 398427343 336488247 890461265 6795748 270979789 947288611 701426308 206695664 597317499 393126845 905243775 502563104 880359383 966944798 93556037 615425765 577174933 343594481 680513789 891841769 812295621 266032138 182411307 971889579 530196881 486761271 533291120 976206819 883963089 915379176 904900788 25537764 616477473 912340793 198530569 844102321 494131342 680277311 912610686 985672783 829509485 697934561 133708308 272422218 565409837 892478556 161425796 184567124 323924909 247138274 794223555 913698535 126353461 369317121 643895452 29323606 702335450 577401986 895866070 503598648 472990778 45729245 480506183 398614112 972845854 560177059 388951842 470891377 892342432 597562439 526219559 12986727 911841921 959786287 539363104 586179103 162107437 250153175 315352437 107403767 411667206 489959860 565078135 286449909 217212353 382976346 232497860 54776683 539325578 449695018 491308107 525630405 712982601 183571490 609707015 980007521 50918207 923549046 805047303 610776270 966067791 210340896 929294416 607541267 559529087 930656742 347961507 451511726 708412379 6034383 352878430 295525875 377305826 642685041 185053461 656140986 102939035 951043928 685847001 679916709 401738265 264537479 63760694 897813688 292597104 735752317 808325885 153017059 901448749 902872022 952420852 292910587 900911092 189318176 396824201 433365465 822507708 734369332 592650952 474084243 889759411 570667710 672479023 604354566 472581121 224938740 85885564 39216412 133478669 402057181 273293368 741749350 465050275 539758830 276354586 71030221 640257362 292525166 683170055 748813756 630394049 118422922 830578606 997394444 536500030 707884094 272544983 810572217 949841944 338724714 672690482 975147309 80039069 610975174 279904473 399146699 910743599 819738545 903521889 517835994 752859317 654271135 317792497 195032803 573770279 982410238 826271716 487181652 211506289 5676873 808735336 682391491 749710327 614167727 215775509 752640579 448955845 190859632 38012586 132667072 676623748 384725510 463174960 808026078 423277332 924641053 286568169 13085588 170323242 856312192 140321943 58251569 163479266 917361389 572399189 957876921 915180712 839327461 497452556 723844526 483499317 174337041 692758386 851680470 393379884 527701484 104092653 299881217 485307182 402933190 796156830 259166511 600958016 477769811 910622908 244599921 865037327 406052630 522586892 459247840 977985221 572709084 78833742 653981313 179308054 909047868 680784608 124640729 196903356 474926840 492021760 82740260 282748282 440424425 32025260 639770136 787915930 873791852 251742735 460005129 340934769 821853429 55424116 433166616 98705744 434101155 567597425 115259850 362902661 695797866 433182703 91382406 340814129 851934344 52451436 475509903 819757447 481411791 64346112 468496651 916587810 852772726 908772517 141842027 610861766 241458779 704500051 914665519 517745943 354524385 779251470 812570681 88934800 313801667 861769556 709870860 84964824 663567407 849052613 70970869 51869049 221540974 408178419 43818038 408526572 815408535 700595706 879554708 777537853 77123514 593066569 577274132 377616785 348319244 144351889 156784620 845278236 703007895 696185039 736919019 312665069 302993146 349949921 895251353 453414412 234795896 730199026 257342844 660835979 341654462 481686812 393602579 929058134 420964282 732187632 396975620 310722156 790296164 971505707 253246883 622347242 528604722 983419957 527509739 482145026 16745324 433865613 629415330 26331405 670689295 861178594 49136712 648453072 641154990 957022744 845435992 713149649 540433514 56971455 639700755 441575541 878423316 644772724 604328830 404187940 886556389 535494570 544101453 341177599 852166396 984142587 294854925 548587983 904063487 673110817 213714775 665784219 448284478 876248248 565177524 869368248 499573563 819318194 2775095 240224977 527965854 637166485 366154813 821414990 933252290 881353757 894413278 755454213 391853683 414167580 311361949 691042105 201064638 376320279 759906471 685256725 240790996 33168786 18577113 824741645 928185104 459902708 489931727 116362151 642533772 404283606 970054279 481800909 246691450 429179505 923220630 669159284 212420870 321250345 163366911 201113553 97756786 113598316 809587230 807958456 724578542 803505816 26977148 765369720 700964723 932078418 796661975 204384592 123747169 764574494 584669059 422061877 130810397 554563211 552287030 339272744 197770115 754034278 417374545 63326960 806359654 950355633 53713538 385726210 385951417 277728652 52676999 191299027 735504798 480292171 203407854 917086765 532338461 497767472 217686969 704844035 112353415 988092737 554400768 463038913 561492889 511934922 819184997 888573732 204780658 375810749 381433909 677777120 325693374 24644969 424817533 714363673 4571721 515905410 808779317 47468281 832060055 968685727 838377045 465357265 537506417 688143506 963598123 126723799 121675689 93770456 267149130 434272174 408086195 674658900 228101333 957715932 18270531 859366233 830471427 74247981 566333043 711995302 822345719 241207073 633261749 453774431 372558823 246295380 4199234 992002450 109016231 926468079 349842119 500214240 89235696 418596674 246523691 110004433 676493365 409681536 220738856 419397222 770270811 523827812 379863938 582478925 422669750 226089253 576634243 832718815 351928567 548591417 325224177 597568295 635636472 432571416 138896960 87342941 885994023 120542863 193361342 709132806 692150507 712961979 275342943 157900057 601280916 467047549 766762706 949030181 210071571 28138855 402025668 414350486 737568620 236083081 351450903 227299694 55774625 336237678 257868167 149879642 365166 140497488 306026704 594219613 999362815 548180873 703498478 35731586 11832027 721327591 996302378 528430547 887876744 863026181 965425399 462985055 555742234 901988024 25891971 576744585 678047235 255224036 502146095 946258492 865784543 957535348 990997182 958193129 520786419 233005761 281825754 814357275 806070157 544650200 640371768 634754257 859591987 494232683 775011166 394020698 672687527 817124803 967662903 855953260 247304069 513052117 435050747 589072469 217216144 301575366 403361909 121220174 492913858 211617146 201113013 969009584 596272886 513867922 634182910 483412845 24499692 674889672 12003912 642018023 867566400 619726630 188351457 569650245 907531160 370097363 652607326 827220643 533049425 135827005 979575167 730033332 845003577 620674631 526687068 131994965 534896724 582080782 561425303 926136870 980544697 209512517 114882830 224454270 866193671 981021610 256025981 236476230 638468611 575194520 299596920 787126711 276519858 13336799 13854744 738180247 826881242 615242287 804165302 379779449 338736103 844093557 955285919 773885106 227403457 460344427 380091789 26917726 48586741 659335694 702674503 926087881 456419618 484956170 791925821 687533745 182561579 709763333 593870579 422600172 504483918 590303444 620517773 953367766 951273954 296317204 569937783 787782101 884080041 986746582 671932306 537632523 6810853 207027424 813541743 523145388 695455009 468763763 247462753 124402728 603636445 84849130 261480739 736443253 441536159 519157276 966912556 76063752 341042381 816464198 723350878 815271539 900127471 85790629 388569686 620433704 572432582 973072296 201194046 631503603 89663999 130007529 644757086 907846915 685684032 641645083 696569602 652383673 47050044 251593569 970009801 664751431 239697192 106326527 719241810 949237339 271754367 706774105 525052319 697206326 166456304 909684692 243920790 640035693 48741024 170883214 368981960 565693727 753452103 701849437 143985483 477058758 173930104 270862946 232176450 41412664 77977240 290614488 38904059 841316419 890560179 368037370 11434183 514792925 740453958 679667111 967043572 588387 820269008 708894971 218732267 748835308 467389461 867175316 471295872 517097564 763128714 743595146 773484374 307667193 894233302 57984405 464785387 554443001 265337161 419044275 116821476 267376889 494374254 672064719 927198893 125479291 500083069 712537306 471147186 364547172 719636725 581516360 549414134 939736031 857689438 559381209 240262091 560889283 999369280 355344956 67482626 181155625 364152742 243948660 701943359 192309541 958365472 163910854 43281970 584220143 916283448 402712198 385709604 806599553 236340225 801170429 728057150 449757735 80501547 845346875 113706798 290441358 158165054 594918441 93847394 827786567 3569253 659363471 766907009 913216757 973431181 381416230 819458180 184703565 917182127 415733399 302593748 959884265 314017326 171461851 490547251 628800218 984883016 852834269 804347916 728100475 235864609 311559649 827329572 39305771 321167647 265200881 243253693 197139697 97249596 674557340 354522366 461944222 268072607 762704242 128331139 120192677 423055136 141021341 890062291 940718825 440088963 266026387 839494428 659277428 551968808 210203845 419053920 806118758 94370769 159698219 87736566 478906531 770681054 450275546 601342746 821667580 665830998 954159650 410197076 14075361 577354854 806258308 294313339 426470167 410158343 877610367 87875947 203540741 671734678 194486231 355302974 914589754 254911069 443413219 928468591 378883750 427551335 240273172 934427115 275589497 813990936 605850065 412027628 480496620 384807176 550808154 125902166 524223327 239384557 842838327 859855219 321686394 149984517 242462218 716947282 496512703 280682365 220679923 115518094 476108565 119481412 257800060 436735945 832317313 936776348 617793788 701270521 301420369 826450377 703615889 740439879 117018711 166607396 497312157 4573551 967761012 901531360 490937829 534895805 676866145 569567383 444723185 942594210 500946950 775066407 430390320 184242336 147523908 452818832 61771781 784113891 942991023 641207073 559017079 414413144 383486734 843979920 886600858 821906501 813182699 67716334 84889997 16001987 55079048 917320975 350345841 281176074 983841368 647376045 969828781 303266217 375460036 102460469 404205131 669606657 827909638 321745782 510395857 395696838 873227428 869273178 444379884 30009260 137644265 565592780 684710914 883821977 496457973 999076433 281162225 515228226 925158752 81586046 610879510 378628671 404539088 246008631 72773212 214129275 861550724 435340512 187000705 348866129 664401708 277183970 938919676 9604859 16130767 414634201 665744812 667101469 178986647 889019619 291586820 471193656 703722058 104375996 902347960 60689569 249729067 804475360 119564182 141905788 200348074 159691033 104771975 439484861 565458203 136985291 963641940 67159667 368814519 252469225 72196969 140022319 180703533 715022195 560770053 497457889 971369915 23689018 372628466 679027527 589129594 932729937 851697482 185197680 297189109 100136637 261811185 128205027 171676052 679564822 557593501 361198298 341768843 979743938 854089952 890662539 922409828 670591099 909742669 460637031 162499622 759102141 707873228 585341740 872667728 361382488 774689955 431914728 974289609 241302792 876920225 756688425 993206214 832711685 474305916 92204498 615808644 463759602 99940979 786101128 793189108 938987219 898867908 21258905 233929359 776458557 558136025 962451709 484654026 696987593 541769117 783330003 536506937 986508042 137681648 826280728 819116982 857342112 67654098 950018558 502315527 250070261 572828381 655050902 92978164 253902090 56817073 790026447 816057320 756900640 221087071 346774955 742745516 407571754 548183069 10327928 324062943 343615798 491632068 736634784 9519985 495466556 266774289 503236473 401472526 334048495 649728675 342474973 814472565 439012419 466863433 840548290 934204442 177172974 344868773 569876519 737936735 134168769 711071247 500111098 859448780 916660384 373502747 209298150 704537940 263458371 93458917 775965408 923202921 669153652 244170393 724547151 494714989 297945766 58177467 945500233 504350380 45830374 238566480 756491911 254774804 87443528 605157074 218324531 386255991 310925056 621469600 527559256 70985499 532389061 46415218 33326170 306173380 525245344 872205455 567471471 588546712 212418539 520666722 956075197 39601883 512874166 60926886 124177915 789387456 351729139 741704297 269575826 767481355 800037243 179499820 66138992 754586454 820552299 968461683 435370357 619270154 327988042 979782934 268186864 790265116 340786719 739022288 284695152 408660159 242859224 554204638 505717498 160962863 349866896 877867184 43893144 21400097 557024996 174960250 857190622 335537261 584277465 210054334 877110538 266428659 126084504 588969571 231928005 598861933 480210324 461547102 749771789 184967023 425962694 399060500 360783472 490370015 331722154 648208467 543073546 593409427 2291098 623094411 55065823 733845175 400740992 258374303 606886622 272810427 367460861 172627345 109724699 857831661 164351944 607490317 467673048 136385911 521380858 164028352 746966757 213271645 32237846 511095208 547016264 653000506 451802487 161784185 715463017 208587601 252619474 946961296 513897084 141977527 802484785 318756069 480807913 939880119 410884522 331555287 566591831 345909938 63289475 897767333 244333924 737035318 918914947 4558286 930000514 957018501 41517522 682870392 557855859 538022227 755836531 396222005 857558854 655789743 634153729 525805739 413905493 218218556 262634039 683089813 597247360 588725618 993316076 370205231 693995080 191750270 161353640 768865926 988587003 236853294 174711583 911527261 423284484 529906565 94671070 188449345 951424055 397621036 415925366 270068035 74842778 118376143 236986499 372934741 911647851 122863312 983678710 158840105 788335964 485809501 787729093 62898560 103213384 246996016 349388652 901356489 764806537 915638776 694668944 610848125 708787010 924864104 458730223 259026050 85351834 819229159 944665748 662580207 106986055 893497761 240369313 261554123 986795171 591174969 330032726 138012215 826882757 879607656 9230426 987298581 522603738 947011399 341988766 9162900 58105426 930245330 96813084 476229874 948642017 476279836 624278148 862330310 334523750 339537294 503291680 418810156 524120344 194259152 33468303 298992005 914184434 844440286 495363752 777537672 442908259 304408283 89621238 704757414 644772863 168776705 974645031 265044322 50921352 496004556 194801550 248195398 426366700 528268532 333786336 762913103 892624864 288458078 186056904 767291381 522695773 474133202 839799162 533075924 756062961 952415481 67958677 388126521 868679678 599722796 188660937 384964449 276555710 962606502 367000827 862159904 713033996 355526488 777028454 695212204 405409163 614160466 598006318 770374171 17934331 355562861 453634034 578981467 836463689 672711172 370214047 632794285 191185140 372000367 713917094 799839243 566728849 163593833 975401880 798374055 287925749 415679910 821877878 210400124 880512629 548231301 526437777 640993972 715911786 440993362 236045714 646403882 647348947 219774641 981242444 918998432 590996326 448838239 34726254 813422626 539815380 282698682 239136242 811631950 910699499 723213340 183481413 243463324 214284961 683355096 502418090 821537543 167345278 81921614 958645875 911343648 50273904 484342181 508218255 432996335 791721693 885120946 719191358 563603921 7392045 881060628 922023262 824771290 527376121 414554329 574242725 705350466 112815583 133227576 159237359 133762269 546184168 509769051 965497050 499939491 53737390 943035845 860650400 146358575 223562515 886996963 356782106 274940302 516323418 678190303 284072646 898830388 590289319 545851984 307608919 565953319 57903229 828755694 832786674 923025292 746818180 460880535 335056712 927212155 953436848 125315618 923826465 131437509 295896291 241221840 409658283 368328648 770540769 865279938 793720162 545372522 28971925 458931772 322032500 307692973 284290089 549560948 432724823 578972061 584608422 711088616 642179434 947842363 730810025 835974957 84426384 242461476 888047764 445668678 331051726 854419372 466317765 524657542 879504853 320040020 26591757 505909860 457513796 563381702 960000354 32424255 881740977 349832427 406769245 423317350 461650166 950117997 103730731 241410756 479020614 227702290 29225869 210493765 700467221 293264599 404231809 427539476 621284725 127110382 313105451 724813990 340011721 939433437 519894225 10048061 645799219 203195944 534098952 70691854 676421882 333848492 493779295 894467770 609075431 377901240 17284528 372252274 568833143 839608651 609100475 279087321 325699868 370523919 835380914 692504455 992752802 146835947 973180124 211866397 550599082 505143758 529665041 810226608 840490014 306495714 175616945 168297321 868201785 955999319 23154235 530384549 57500549 710412871 605866782 155330661 700048851 343100393 46351304 35319185 651114423 740903563 135269925 53686316 332780545 657752231 266842012 184930079 500639744 872276936 496138267 203033664 363329151 925210066 253100196 220640386 195899618 153641601 793404351 21174281 802385218 903382390 509030523 299910503 317674667 254052029 358234106 985562070 455136284 295651823 935906990 757616279 194968584 886057904 88944447 262374478 928403299 334599826 717897047 642874152 507810356 198517617 356130854 835519486 14351352 661769853 893798052 613132540 717979509 572810004 953875353 770364674 127670844 138251782 231174172 339631177 306180936 512386145 885020978 662772883 640920347 190228944 236943580 774587615 7194652 828427131 279729832 356645203 285979023 336033187 115656876 756796028 498693033 228698876 742780225 732778165 839547530 119043754 316318439 62250528 840489020 892968708 385170569 434199679 556625611 51817491 258305265 285441164 568659691 366154145 497719008 992985145 441061238 365886806 417511453 488588880 373192385 642746122 435005217 191680416 812802243 201162722 489511660 779682711 21019240 506747873 857887529 775970130 72367345 866749427 116955288 735671921 360536161 386576939 843732924 570847462 116060515 502293040 825662956 241736644 17490165 700739939 226115893 876276969 180105408 983882254 440058308 391326954 17621940 772533691 987182776 541074741 704699684 385686881 667754491 793713478 130710249 395679423 892195736 496524255 322684151 13712321 934724545 947482365 163323045 458456259 616161785 407362334 499356375 491064443 607911088 449037761 398796445 274975877 368403550 879201173 230339929 805742223 202455971 420835054 289982086 548736803 72617493 446418262 689621206 135146418 265108406 408179380 731593676 254057653 496236550 340788170 197649555 546363263 669977837 471751626 577908966 756880701 708582078 95152628 973731642 775098343 220094195 152340665 33029050 308313533 786961110 95150518 775478835 392561501 447683972 711011588 237921447 104611004 616675286 230289197 669663364 13420428 340286329 776394344 511593664 909014534 793477911 613466397 412045731 919215411 245561409 777250999 882776144 654552898 141758083 978786018 914575134 865786335 446698778 750881674 647715875 365935548 570897459 233606838 276107206 457104797 105405521 355590412 600178972 191941376 764558761 674607276 140328342 923929465 857141295 243895965 208022042 514431417 791097980 668594872 672395020 934359470 267838121 51142887 732894785 81644113 298335376 783882775 88393309 164103835 48946738 372494346 365071517 676490474 961401710 693226619 680736332 395634342 229016576 471886418 837430296 104716256 798431922 842245279 127655662 482445661 663360282 441272995 697348293 54115331 123611638 719674976 190078641 596633598 363227712 580881862 295570789 870015105 982342480 724049800 786237962 954669207 697614862 846532656 328880077 805569892 686408780 956559705 158580806 223382082 63526740 843129478 380344295 430397751 645310483 876178955 275809005 392182729 270587579 397147220 831909034 77430610 905049950 38746467 827850784 375397501 909723421 654035037 888979524 366714609 971965042 407007822 400168835 294644247 932543850 385142396 487997095 148090766 736226622 416317854 738904353 741726201 328177576 418879395 143631358 614727039 259788804 230590066 34240886 324540727 55476234 204219854 816904358 365498621 678191392 194679403 203586858 740759144 648114469 189715165 254709552 659120778 545085429 151145921 965246126 568024543 636393373 919343319 105310449 467937991 633541372 422737197 612292048 524332031 831848797 464184722 313298628 156125286 320292918 735896813 481473923 161584724 656574421 878592251 738244101 33708183 21085888 670806289 345173685 454937670 236033583 445259027 381832440 57591364 791412947 403921213 240539221 108838467 627671930 963172010 59118417 687116513 826384201 26784162 398567134 844067762 905245505 649902556 802482002 605660351 824354876 802393601 66393289 650852477 750430237 365627916 397306650 548666278 801508404 332060930 25322897 146017121 346075721 418616508 79372836 36675496 389151199 44247046 624500796 876817891 262106951 233114657 101728001 892053261 487742355 637642838 690956854 84954986 854569821 625307563 975825832 519243369 412601334 269380982 558621126 566295021 706846930 110670063 323256610 173655460 53339046 187181289 649437754 344443453 259586715 446977551 37145969 750157783 840089517 181306531 929321479 337668029 843586359 934381572 890685029 741232109 569566792 76371069 338611861 570436709 802417072 207513151 316794768 728843364 271901774 10407231 876396458 547457794 822247072 192462883 425667033 888585551 297388289 471633275 115914109 856950229 223545110 135231438 966460498 106014255 28798902 111583405 564838142 269795520 562277531 647704367 153033543 554083039 19959686 713503971 598155116 703333305 206197776 53885040 249940460 743923199 715428889 507693791 604831974 387343678 631668637 682318734 577482464 985839415 478216600 408954884 325358699 952755744 283865980 763140794 988530102 26302931 182991509 393778461 247331633 16634790 360974763 228163736 882177457 190738840 941130444 928049056 661059635 42133191 353987655 889915807 487512400 822095623 580812011 784162217 57671657 661908346 859225322 235055138 759561195 710872631 773912324 357101463 716146917 708638477 645834393 208009896 295227334 736056121 630443186 682276499 917273037 142597869 216315413 48675999 284365811 750758141 280225309 533336897 762067901 963243626 67827249 976990884 662446194 732365440 867042630 369116036 133730486 782426378 837080819 407321455 58654703 440316507 388734292 80008461 537713075 730173248 406639188 75070846 567554463 255382851 242056779 251152054 767869189 24055434 828363481 326546720 844777218 814930999 745224344 111512160 643405222 489173516 225302344 347639960 946701232 297852012 870563938 965118226 543348850 803460939 703451702 918072754 875182416 986628116 660102267 991909908 434448793 172838016 959828906 548499284 615044403 898204211 644804963 417804154 612754102 811984257 686648200 351234089 200671602 600781760 115860234 771933688 743633394 517150165 649530900 313323767 236084262 662657456 229655802 844041662 125303393 141605957 384318414 193667636 523955523 316601648 945523391 901466908 381932599 34659221 736517288 819257494 817271368 697982134 917461693 671658925 638144280 671712448 830856015 307420067 819512349 702719202 923988625 523170218 859674402 641119386 112042679 914406276 49052770 727979369 972321323 934598796 92412223 144169163 534004568 524657549 474277220 322121853 156836101 174782133 219303731 647833649 633791602 20090479 183566167 587666101 513690714 294933294 277073980 766132452 476368617 995873427 22762577 686104315 773462326 993073279 885197279 445161269 72518866 115827600 9009221 381707853 907457330 343971917 700529561 391980023 815775130 765192727 42323288 400517025 568779615 981641346 839422345 634127367 335003716 130990181 244556566 411471309 818223671 733229094 415372617 65049625 811950313 476932805 448928413 816390411 66010172 237145086 951426588 251918474 227707669 93365501 377659753 767552989 569068624 922832259 5487314 83216086 149914892 511007055 132694240 566046959 256837436 165831540 384396881 816584295 268209697 688115804 278595121 261173148 995567305 561970176 977908018 844012092 362768463 96052751 418835580 413891049 561069426 525400079 122903689 463631529 105837194 784853449 114508640 769260610 799803363 647694534 338525119 195544428 815590116 262894260 688240047 368020839 216457036 303959475 688797935 413152932 865926752 327879386 429533493 662208349 813718299 950434956 633525151 606545888 583382355 209952058 684144348 207034921 869000269 311763158 829077298 938718981 628790894 219744499 244910691 639652529 903678786 543073718 511540645 974660856 980153322 327245390 905584740 566895389 345681048 56167070 83318359 314600501 834129420 776655345 469328011 750964603 653429760 542979682 877165783 750145093 850790176 833288183 962192970 512493716 48301347 820733988 973536543 897609710 393479716 651258328 910357643 105428822 992250599 718340156 917779256 824170472 47894688 439454256 43057624 738670911 795173376 698714661 363582537 680509238 915257349 493209851 66653803 455794993 354332347 918722108 1324063 820918016 169295755 311208926 601273813 272557041 571098867 812442464 597458801 775692286 817658719 506046250 70669309 407264289 481450064 307249611 490900673 265812035 825933324 850548432 844193160 924919653 232684983 991680550 702108021 926573572 869219261 21684138 363335240 752658589 451833463 169359811 676867284 572614695 283740406 538498648 354045223 251109076 118323743 81836473 709321917 857549582 295120994 358743526 601445048 786835940 653633205 363523783 195214903 744919328 617007759 319326971 643893611 666299056 160378643 626171986 92502834 784311634 671522815 301232809 815268575 929034355 336780906 480683379 985537208 673312164 698202902 447863762 303129076 743498710 205581059 135193167 387663642 691151038 675384528 560080302 167487196 791020463 240610624 801186994 23173954 953918019 289617162 393909920 241649199 599705767 838931915 589218470 634798972 862892940 298175936 600110399 758667376 801890476 830721781 676017392 542189803 88926524 933703277 590384849 518638496 722669442 736323270 372267672 929043742 442042607 710841396 736998009 900047269 758341908 201231059 698021529 913889934 292773799 647148056 280802128 674333479 741307879 141321096 63971676 778378540 382541052 840315358 954888921 602452101 596759665 61111836 195782809 229215854 261533992 864530833 13844315 644762404 4712025 484923962 758682435 919798698 912646029 707643781 347833563 682669344 466941940 481145013 105514546 562093634 343360147 697754556 422952715 842382091 873088276 798171949 838820574 167587435 733293094 403337675 166649037 715379640 936649263 526695438 868081268 908357855 679985648 353684014 290309342 416638590 722473566 852124047 729276876 613470701 128168927 166215964 45187109 540577801 212429117 380250847 5892389 341020683 444380861 212675075 985573588 187425846 793126023 672009641 336468014 199803048 835038526 243603413 258162418 556960896 535685782 880359709 492091381 202118281 970332107 731288981 475548158 908451364 590576329 804875470 212274171 190176828 497223642 55193127 897078605 656285040 887844307 612902028 777320147 879295926 214151741 511024947 522284216 371638260 709624474 695521890 301499271 581278689 185918173 94639167 630856236 788291117 601277128 970655137 752874344 176879902 637876782 317608063 130655372 528699649 386507464 49004731 368620452 287816830 330917776 209020004 457144203 147690879 407939252 900259788 171183103 807743224 682968314 314973048 351281303 552223146 231295355 108541857 295801201 876023349 574991654 185513834 615650314 810185140 410250911 753014243 301874899 847092489 177810210 127223896 926912557 666296968 599448218 425529445 549415681 123964019 883383651 435721406 827347936 467339512 558443295 647532300 873685779 767102526 223746707 863333804 66212464 715647557 265794142 131283542 971591036 635507204 922391715 268728838 52342084 733429339 995871942 662202185 192072993 191480889 954488104 360109766 590994302 824869896 521061636 230722407 691280580 66881387 924288023 41782115 544459501 176875501 401594262 382035099 191582164 759660514 287175960 267759620 153388309 44174114 614339945 476172468 765904847 625217918 337355444 561689092 963516105 60051283 515286530 169779218 686463978 48968366 941212884 648393623 306918273 403292764 962687000 444388582 571830460 253217360 960136494 313444328 213967429 605327876 747890402 351320829 559843658 958223563 676622775 590003280 97432365 595926008 324501763 208717094 227577346 721767149 557678870 27949143 280918087 164158617 26884232 522189515 164030142 293429833 954751603 698531668 584415095 69595838 132017855 324192935 691770500 715959463 280302010 128705752 297959765 731390169 197632418 549973992 606567554 770893021 170573091 605211326 460513160 155618348 317564670 542795642 423782446 73941513 8868760 745118405 392538430 882130216 159725870 879019732 126702869 292087385 143451933 505366327 892154300 796701159 151486393 288398374 321683767 614082583 863833685 448457089 814092125 666795308 885964813 853908312 463645777 873579638 235675115 580689908 357979697 290454880 906803169 236237733 307188934 942907984 372813100 45306673 184748339 105462092 329090632 447842439 306948270 520790798 629121768 339122386 635686677 571787806 483793146 596470601 961320431 509555408 668814252 243630303 36733864 551926708 957322911 208099907 829507551 612475966 688426237 345698755 85251455 36434621 986407662 345582262 867809681 336019484 655673766 85305977 238115761 20731095 106526191 486306625 950480631 350560985 306672504 58470122 114232696 599140369 566271382 884917868 468706135 317511227 60156547 839731052 666236292 313693052 42246070 233702525 615175876 898098245 119514114 40159394 529855050 916862550 816554486 836624189 653881702 592510765 786572426 591500521 901404875 53449636 42220075 886271053 151886812 316650410 221533376 123783756 972322862 358806047 971703561 874803897 299626902 945798537 237774545 8700736 267978707 824301789 167915316 582910093 539347449 368692905 132011225 819004394 540923688 590494252 91569891 955801255 833269783 928947862 428570800 321382601 919292246 342875624 708220447 144610461 863130554 168200583 116594375 647365215 879592283 482750992 517509729 265747046 784388460 727551268 163796811 292327530 477757723 674714255 570652530 66445198 384685382 502783855 324005833 76327461 194365087 786041548 832632540 878761976 505922241 399783006 374258661 901495702 46832696 674623289 903194049 696926489 466398774 273301992 491247037 462525339 38503752 423821695 274959694 58148908 43480611 183797457 388763533 114266759 273238205 294733725 572603196 555298195 734132453 762262234 581589322 627336434 968912064 928588896 712688580 119689616 973156317 817546521 228571845 98339292 330921058 978199263 610725568 793262034 974041630 63424876 16588855 16354583 250124946 761046812 539913751 712321373 294741231 863590438 436239587 330197319 931515343 393863581 834598456 135998342 460274606 785749191 704429572 564641693 181038848 703237061 864360417 615657784 678171372 332985840 844358721 990518160 133937530 510702191 202464878 884878286 342733637 299007354 565035406 390326852 777392503 848858119 420488531 702512343 689030215 444739073 281706785 294146097 144190390 186697121 795773835 285011598 359596435 119259853 709798349 170827882 517378597 926524173 771908875 293963054 181135632 377937163 390170789 453372259 215359289 73275584 101711986 944057796 828334977 968911840 35324947 331800856 170296313 468028118 271453801 480752229 728637041 522562689 306724946 650764823 257077190 996280189 951830068 631020150 220714680 359454512 237865308 333382458 221065640 121956688 239215156 948787399 954132510 386217216 681928915 986316693 418404666 403003368 255341718 748288502 763208406 446739449 835728424 650729060 132840380 37868152 935339074 536208534 974943869 908496115 10355950 273605368 257807710 56838500 632597658 415443472 447188535 295256861 525401970 668411782 877160566 189877324 472804178 828150930 396732553 165277782 60018538 717220820 258940092 519042732 971559250 809790639 542029384 708101847 891071441 756079131 317107764 825445724 182318540 860612085 7247961 163441260 633063518 435450838 598313481 66298214 769085101 404908757 229061945 789827082 628431567 121193455 298383357 395327074 790442127 771976744 858106302 291704373 40637268 269024107 125570243 815986526 57738 223256814 224070518 901963293 69467981 846690949 879897399 495643574 288630812 263031539 205638160 659864158 89384325 246754371 491436801 578738358 298196795 637127293 134627316 938980207 437183525 600835291 291065503 198303147 12192447 299445999 509644272 802231101 713054640 947504526 982521930 976723717 413885902 304062599 222302168 711529969 158276509 257903850 469920830 159955901 549090624 406739188 232259707 432153289 506017112 344758155 293257399 110525613 721072314 697445663 73921201 483062720 749402431 693032255 322729657 816643278 954447956 47369961 691442375 650380026 859434041 433765689 174812 329981678 632919876 902995354 369999145 868187796 485520711 470882726 856872142 318947232 611384389 241925956 13135945 574427545 419700326 600408824 7355340 959029389 593215438 661192637 102637046 746568734 268616552 425268449 749466738 432669020 764523630 458778147 984326152 482995203 68441816 189449201 900516773 978818075 205557456 6471826 147540722 539656568 701351491 698046639 197238320 15570229 905324826 843701133 538328917 556712939 512904224 273933446 531188938 706865176 539814132 566817658 991438320 307588060 318086250 26516922 831982193 368815592 743553447 8350866 833604408 156115436 74444795 66047530 152164956 718052852 283877274 794273285 385013809 153547337 816013668 804468012 251683279 125263814 841243515 408300471 69046549 115860181 874501650 983418870 588307617 534251904 65845798 188690318 530754231 368984002 870534915 408532389 526679001 109753632 344094105 500992678 156556422 813952572 210206362 345185177 690211035 571420758 664141357 672107704 312706139 590459492 303945896 600318960 843037771 464581029 710721094 271716617 156205011 421757787 581506048 908110928 671369483 118761095 435395262 254028446 907676129 325618657 691489608 207345882 892107836 93637750 752471993 12673607 710868364 926285152 408389742 489977390 470680733 270766029 884850362 758213657 69388414 577097110 501662353 75451290 465445150 367259154 368940786 938305318 955128200 463171944 432832391 53761600 640001327 180847777 352392956 782100321 851593334 917019455 444037530 623298214 739671219 513739591 500914902 44279723 8982569 33364829 473905675 163473792 779509853 528159168 690538850 302732373 472206981 95382259 679830380 457985659 560784316 279507473 305646721 100585236 667847177 819921494 16655899 705566314 744800928 937476033 519802841 111038130 332880823 712507030 99035978 97765612 292619038 208874855 611125297 652355684 846196551 227618248 218442337 905863656 87458591 791186332 822813517 532076567 102446372 898699510 724256301 746753192 780082734 747829401 732286937 670545755 859979860 751930978 345150118 625422439 274464289 404053970 227731330 316184647 892077965 737152210 391452908 154485657 427449547 757765354 745014669 473222483 977694122 535958571 215684586 563995101 258966651 404209219 809786583 202284516 371325482 388353541 72348404 931305115 807569619 246178633 507110816 184868965 101146300 193574193 812050618 543990562 271824433 828116275 392350719 624811779 682661586 357380417 185538127 574210940 361973006 947791754 799200246 26230061 547348982 979018778 315618247 513681170 221179387 697824330 159470784 438400071 948294320 930772985 193223400 768250368 749450478 47735126 867570036 236525594 800685238 564424014 648216176 828109596 874337661 373611439 299044813 662771687 137853984 236467496 655416583 997156667 732643192 119352776 351068937 956098262 944746030 259171153 591077192 883239775 783863815 862805824 162343771 506969183 877296307 621694693 104942935 414080851 128478309 478199242 282938254 905370015 538441007 53748858 867533428 225546660 467351962 651638587 294641481 328810349 474648563 88117663 867703185 523953304 665022374 616363438 501157764 168313700 881605662 959007334 10585544 276646019 989896030 199281565 472018349 637307874 370471756 522690161 17034774 986534882 769189180 142149505 205897912 125699876 146155142 482079065 473541697 714159827 409676530 270498555 639854507 803957231 232778133 342691525 428929329 189122209 134324286 728862938 865114342 50759555 608815419 606691710 988063582 179392078 890074206 542210410 961473608 35988720 826152873 147966340 837579855 242265860 566431882 40148666 198517903 236026391 885056423 971623910 968289722 249952990 958521141 394569900 417768102 700705705 28189353 760277659 67057771 72189604 742179974 417176824 763126125 259633346 229875634 896884860 790899571 921860982 363965108 289630714 152436190 627085267 309526750 947428638 948707383 555597893 228454846 629840922 714681219 228149946 729077428 344331408 314206763 124084523 964540469 565660432 740545701 456096010 324326612 735268874 267358529 506171774 235438503 292219561 109686845 834710296 22323028 568507595 157231366 397020544 76432198 543167105 103707783 725316658 102848792 815280750 963816920 226318874 642800081 724277947 643307607 961880178 187287342 277922778 882002436 43975889 36827014 25538686 783822044 316135152 245903415 528984133 475080136 739118617 597447501 760906082 577377370 90417885 141677065 910146249 122603849 459245002 692892256 862904757 39423952 495566279 642455740 407218000 722432681 320600340 910633118 560569843 787356214 441023764 210111434 663014901 360780559 567785238 214126842 649972889 268496255 117651569 449192661 700048225 83184386 475422528 971927311 17524317 795704773 656256903 553716273 935351995 756757283 292844927 429620994 421720245 100697017 527508251 752367842 4831075 247798127 349149028 611887935 386697989 456576673 617365697 612671897 425557548 560286804 125799571 414163242 572764598 851088981 283628721 493568932 995965678 53044994 447790091 890610852 319935523 383521622 969014081 413701357 99663741 98440617 263853256 715976215 575236318 891711100 180146916 745969757 859312561 874419615 554387036 635405583 490076693 889272318 673243334 629481384 249898092 976036922 617214854 363198626 399026729 21367877 415452607 815472463 293153445 104703406 844822242 255080024 207736684 235218035 552088506 757776841 323210852 818888049 921143004 785683072 36939296 900084740 911604910 259773179 925392803 441225811 477645655 941157750 839132543 665536339 987173562 633395835 380827318 312444094 984510035 514012352 584882668 430588540 878376203 620254718 770080444 190543515 430961088 200401065 918791827 575153439 656915972 673376410 616313133 484042370 453244121 171714491 210765801 847848776 595749008 375448157 190297783 26246924 260032557 674170015 651811159 128681488 277674279 761112604 637955943 915121434 142605058 244160383 311288996 882495494 42439244 260504771 753620883 769771036 43015532 634659044 627185370 764764625 334456548 893606316 343244627 146187057 562858401 983575150 518289859 534130620 174559378 658131421 363836980 818609258 503477135 997987163 754020189 910034936 536049518 65203496 633024026 401436153 876009647 965640688 122285281 936041178 819188876 486655263 529758238 402595778 216008835 589585256 35075481 590338318 228818916 402788843 405146679 617884858 592074295 610240963 173934229 738294035 748082250 702212958 153014108 133144725 201004488 958864143 184016755 45163302 211752079 491629507 991868863 546874892 156281795 643958043 899278061 501723053 542722400 997992049 611673935 187910652 568114925 77856021 947777822 947198283 706083811 873374443 7489382 963313615 121580603 469075379 162327701 241516519 75656522 101482484 933379193 974480076 630685366 950627553 424881934 842940787 173327366 215289048 221036660 911065633 190505977 524835984 421563166 608831310 561682199 140286550 821314649 722611783 74247599 470847030 139840824 373648364 920989940 609896572 366281704 260429669 120925568 512082808 415819557 92831274 857168750 338240028 505177113 288218237 347595751 429203803 556254236 641377055 820937074 917080336 378063808 665437967 836926628 592922772 472982552 695072960 805265996 278542054 902896262 820422558 642465063 339834254 730558173 865783686 900658893 428924905 144741083 269704466 673210732 71779694 547646354 550435962 293147547 469862090 641406790 750760550 130203188 447306046 219751590 380903958 797137311 209780254 746642183 652089381 533502498 209796408 288792745 674290494 290029665 158372147 117138087 836927833 362968493 844893963 126430618 556266641 564731445 841675334 307346592 308231520 868805705 331823303 486597917 687391738 542570384 323004866 92827103 74177411 779900465 144563747 308654053 948311449 568209701 111236030 472467396 244656323 885650344 209148967 943266463 505576703 397551203 611779118 659316512 414491247 634812187 387811822 337349589 246015635 396323394 44585036 155927924 717441646 296177448 474635078 593230504 319266640 923529050 275187090 23066826 298053227 610335757 952408056 399198002 320967161 310504864 101236332 665374443 959946060 445294369 998024540 753817179 159248554 313900613 418285381 354053826 772775072 459211489 240006371 202862964 971100887 543786625 350146580 402500535 415395444 445327831 755271545 715845142 54154347 80380896 883359413 801484564 503093905 745574302 894511918 119133263 769574819 402024853 287191162 829141979 487317029 553408806 788517907 479027760 720413685 372004273 324163812 78876988 306251143 256667686 751767884 122066915 84766976 26210236 526876145 979447265 568687706 133139838 936135570 105021838 539763804 933101402 591303413 121854557 552330952 889864817 172097800 214303208 984304512 488156362 80079345 22470688 32454387 484166229 553541762 957753523 788236378 997260803 904036247 924684197 505105238 387096650 952865724 250272747 749933294 96748123 800507235 447322171 147687069 472601375 818471574 813955379 448057721 441583914 548365589 766948902 871400798 97199450 22689207 344085193 822634513 986332570 413956191 117982290 317540165 809216280 408186850 791925636 652313933 910893243 934415429 330854550 277746675 683535839 214155011 256978297 367584503 91155384 221298235 471984012 50350272 852483461 307402494 785649733 393557991 290744403 399349598 214993673 226753872 972400187 543481559 784923934 37981057 78957410 545913087 434557913 309656303 538070037 884281028 96590182 853372705 913568689 316799237 620220346 867891071 528260320 264561303 250655445 184153927 217855552 219884405 472402711 717746305 191158310 448237668 544836382 352061137 326320116 730484567 942592534 850429521 174154387 715543182 73670459 356016001 89326869 686528072 970084797 612674419 571538702 984369549 92986923 200781977 214256903 542927083 33728830 120895063 943376581 728081581 684643782 349663018 338881 258241112 304360471 487354494 224065764 753897228 737871706 189538887 286107622 672374216 274132138 768364889 577380949 379304469 546963109 572763123 988620846 23491801 119043896 442504227 345485452 737245239 509778911 519593685 16900005 999787523 614194613 642118749 270830748 860598049 386281959 112370583 439027704 395526170 755483420 670535252 435594605 977912731 270247500 726205181 359505943 765092843 720296787 871314877 875819052 850045524 327453590 490083200 939168539 814828325 534190162 386840369 185793541 337387859 687911397 213983390 888154812 847211616 101743385 5894638 15772142 904599462 30141184 385475875 311330373 311589033 488992393 247135091 606870382 366187434 335186698 114019776 627886771 431324350 568451502 215026397 26289465 191742934 296607516 881563147 484376958 76508246 678511699 565677062 788375065 626692445 427466917 548603310 226934979 344544486 882286932 67543506 960866466 564230593 411221168 643938972 292064065 900170490 82100922 549603289 617551527 61498274 320606595 193038193 826307429 115531533 530268198 839455089 543788522 496796987 939503655 701649302 888139094 128600377 83427699 367001924 834052218 278471935 343526043 899860316 972543618 558747998 193445250 234390194 462869051 190291646 979354927 855313850 515500350 253768328 81355629 802926389 148793789 208595502 539041486 53209195 30463666 886055043 581533933 444692173 700615293 692566364 773900557 233392154 467866236 49290125 779835751 956045709 520755426 747926936 460408237 712490256 592816861 514215661 103212175 501949341 449993196 135077086 561452859 248507132 45386913 306328269 744990771 754548889 839465876 197973963 913193431 700099719 51863062 227296509 371489958 522169738 601878787 758537592 194109245 791700993 175159695 905791670 549806259 862083913 148877485 877878647 357764551 29415461 875910196 412365926 132848102 339267922 818430804 748108604 613976347 797614687 206701451 567644550 213947607 819497802 671427357 683113443 108067920 447128546 245843916 871002798 884149374 226774562 84217316 697260096 276684201 98216144 415354583 936621984 404547628 569132116 988906089 199577692 170496189 940333132 639310026 303985375 207030774 674852475 668222867 76846971 290997753 93600546 917733948 452663452 21382312 988586342 286154879 499909349 970312581 455431410 611189702 949296367 775113351 637401950 52464614 676527509 993091358 264900764 181406579 303125151 755541380 194343370 403409464 340228070 752124216 186520403 874442314 240855244 25897239 450233307 555988401 550740819 65763407 914858878 809974003 980407410 565218767 683281154 806789670 560219800 285207967 910758806 673794269 662970278 932783612 405413773 507848556 668584557 855539108 307100439 818322536 184678891 456299780 76126714 175263966 802283083 327092205 657220551 940497423 294157103 696989820 807902405 245141761 880587572 543290295 332469965 432778071 637919421 956367907 836381178 142510975 759957060 308712134 390062103 242413578 834267558 363487666 657191407 873513554 330780782 430358799 239786639 509107609 229970137 625746717 117637153 589858422 566436923 258570618 230244969 546109912 491079043 623508817 210128046 340165270 857874585 600550115 137836574 514040407 986664557 443353620 62328128 818148893 82194391 497577157 763593327 493169467 316848420 243292010 188714131 501565911 225781987 470995492 953475309 815569456 299344726 237453516 785738141 959814758 170343977 23974500 421776437 599971681 910353414 142604601 795074384 904152402 764525446 864848935 54419570 777921536 975178772 801029618 626749183 270553168 525305145 986739318 187907023 457957864 324821345 937548307 859234265 110590726 704262516 927659398 897274861 262999067 633782999 418677004 721302111 2215679 528716369 690747103 637601462 270253942 780762808 15998727 615692715 958644276 854788822 93096353 367705348 873765234 930900869 227488656 583502169 280839710 842207504 982172104 652305105 198305925 666348558 825180532 813378501 369961884 831320091 68815426 775309592 791884323 464196049 140221459 132038462 992314405 92961132 276375584 951731846 176303654 424520012 691836516 759870961 168888072 749430398 604747135 626643625 631653942 569319973 669848463 788096352 37653098 460357970 949214271 712518047 766280823 181381554 525207212 44623837 694218379 149627767 789688836 227685972 560968708 399287895 879183429 7908917 508958091 205782162 748577399 733529237 300112023 651697767 489833594 166887047 445106961 272202879 15714995 569809547 653044837 874079887 249628149 325592450 823234601 783215281 182553558 958334335 201641507 484616325 169839134 866261404 876146550 250896453 59976486 777538344 188549316 984776559 104425643 864551117 101293347 842277083 718817443 891813241 346787177 648854063 21600472 172428163 92108900 190947623 788565928 858456052 916240822 556244574 700415892 540965905 602271978 895263386 370677550 598783428 259118451 598820949 285315206 982492962 997014907 436849931 889334847 683346060 683800203 65538785 237800121 82591626 319967170 420948686 652415691 399266568 100702318 272537894 395677301 556766499 107232033 387919631 404719989 978718117 2857850 524788847 768213744 39548090 631328924 237450269 251970564 481763467 381677465 597728523 700697598 10372532 662063820 963119549 448018247 223241092 560101254 107252491 169223136 308064126 626951427 344287274 863945696 240232547 811946512 643556988 355456842 900356868 988112433 678640975 438488739 300386513 675814754 174690713 432363992 221661761 312763915 755445609 623425357 19439926 91807636 350353590 630860354 479350771 254739 510783915 702143200 828278914 662079624 826923935 901407319 550003449 346257480 441625360 484070011 204144001 571307712 74755241 194373131 876979820 718873882 202561209 693350352 154852522 69927721 548479049 78573795 661696166 282227149 475512355 248091113 132063621 582771676 374319933 870754875 498714223 562255355 831045435 19983849 987488267 747568959 756569643 99713885 337575078 82440455 474556578 41023361 76996310 640409542 25911849 110939383 118228596 658095806 283552835 348827212 268612758 141020786 51603477 350139276 826736010 12471280 338880843 459163722 896627922 382317466 349700622 757095826 301022229 675949926 62133793 507471087 895557551 771854382 489682357 359406589 977399535 441310901 452681168 460978975 518653926 591319875 543783121 364799005 361209731 581944470 652090792 188144609 660301461 572110327 162332026 97413313 219965976 801675301 657630499 77352141 995964087 907935314 240443329 742019810 243101186 266277285 148332646 516768518 944565783 345917751 364726378 657697383 212144335 999578670 244364348 577961269 851689854 634516854 462850923 508741039 266793514 706312379 79181920 850640486 929490940 406070902 45946082 456330289 743864332 246464797 670110865 139017344 192240758 637627434 406264716 116471056 549138870 38075754 298914471 690981244 387356608 223121514 707434856 918337421 519625007 72596385 910863365 717415740 778250148 158996785 672798429 524273497 147435292 965914941 274180960 304418443 197551205 126385290 223952257 669648545 551726095 241212179 37941426 753207188 603167767 311583826 661529013 301446815 752057892 626565874 112793776 94711102 286755447 298223731 94000328 975249850 79128718 643229427 737570346 527936607 465051089 730860441 663211998 794599788 885006969 775107038 647838575 823018159 937593418 114011864 631402181 385784369 991383604 651712005 291366820 946689887 767036637 975662256 353095973 154449401 446922826 635145881 37070096 173206199 267578424 379772840 119978456 630514278 890740662 36367547 937195512 536495198 782229838 584285748 982820317 877266452 732152549 27460707 85737245 771833128 67628431 296991856 681331954 673319439 426891467 331598978 981815558 954291541 939938448 384519146 817822191 521965619 344897053 101844113 124754113 188838031 784952076 87298465 920867520 185054631 422557227 454201716 588894094 606277467 178831303 533609678 353305486 498028275 196936095 947687307 114959386 897799749 865873465 742670759 996824732 52505001 606681287 424472997 351021361 758749998 430712580 215632897 80233509 481504347 336848998 32738924 106522491 831331485 647499209 369843038 119392743 3221176 486488247 557005140 53400035 976102413 597077697 743213605 260893295 297177981 96936079 271559667 907010766 808217379 536807696 200632073 688826105 4654132 436076311 821328056 798288360 836118659 214481865 956106926 540767337 324857962 255453496 250490698 887509237 664920664 70872116 969108637 605049165 359239646 603115851 174895429 279041110 2673408 222800439 989200419 268440323 335229943 644707923 590172279 845480074 217326991 413970704 874597695 668836211 170791742 527768319 447185168 986732771 862550519 898433533 929432763 952292968 725430211 903200987 920305764 103617129 886339801 161213860 808168933 668530483 651221095 436640987 342548327 155171112 468851258 158128547 94187038 658490354 48287258 213844196 70776151 496363644 102605580 632823962 92037550 366783900 788686334 829080896 951146766 131893070 869105125 490711243 53721484 478796848 988964625 765232087 501078335 907207013 26428103 665689144 175558520 833479860 547527619 55396086 268580959 104158141 646246920 55720665 768556109 22704263 913324783 930865569 965087662 982135786 230877135 633112254 34986421 955459556 733887544 876696187 185003519 318503192 986139802 150008229 478219875 45530623 330722132 875311 897533917 404892802 830267784 498811186 968702833 55199409 779331493 365078351 695208486 393127215 441522066 80484746 775332839 99003138 958917504 377452227 916751329 823335189 454639302 26272689 431082401 520841780 958591930 386081258 475580276 861228767 795619892 701292967 659687857 5320751 858569673 733232798 228652300 194366634 291501936 900361792 385833264 257433237 325210684 654964989 96163199 948454686 775830844 193813682 63577088 902406525 366376070 259739600 573772805 335785677 592116039 194707971 609432540 910120530 851370425 630210996 336567650 543862630 472476263 382328808 131903487 59456276 455502251 26955464 881953564 649384482 73617466 82256992 712095116 898306396 609764491 417227983 798902913 483689349 448904686 397108719 806679266 826861550 860935356 613990553 250541027 312665580 926829099 648258011 991853868 418250929 462566666 687031484 952125237 444260353 268970980 132431135 501037712 419160788 251093005 753995811 811236362 920418023 255633910 862768329 326247601 80581167 631204899 414192307 12552746 857277431 843816061 693168435 208826998 42783067 568402809 680019298 653098415 934602916 892940032 569374929 799108990 239976295 753644104 504809482 381114556 723373887 417890226 752751992 239158474 568467687 863057528 50723696 65725701 590164204 940157597 949110616 858201188 64298306 784781434 143125723 830958849 224721444 197322360 682341773 889359885 713678943 940615565 147611795 853607102 750223612 365733335 408913726 779458519 511396483 525503419 860139367 724964040 810543142 391824127 888352244 467848806 762310782 42976734 473414575 592848640 221708883 377121197 42537569 614604595 700930371 712388950 36151749 691354110 262392409 850348784 794414415 438510511 709967287 849701371 31888958 492453229 671551310 554466704 167541030 567626535 155709974 98115175 779311523 207455918 195885617 592049211 121322934 72045479 448499943 21775173 813955973 151342299 512633065 560069437 84542295 261033501 142535214 777415537 34764596 593854195 262242958 37695026 195778785 716886678 451784440 980430427 533418999 436248229 133189174 358443595 410449765 901637048 727844309 496042602 42127685 156931744 614447561 543917820 72164880 429962843 732963942 899419645 503494708 901923262 183155964 561733633 480861754 639918792 349189339 849630671 931312190 786298683 758182639 274353615 519469694 656117337 980094296 285511517 365151465 442001616 897038205 166693225 361183617 948387311 270359822 602920599 333729156 512677741 111116515 31002387 877488431 65976188 629918710 188646912 205354016 739645578 988830274 513509115 676743281 399019675 118243021 757465563 697300685 684552272 704824190 80197726 900516410 168169507 815486653 154886620 122763104 506169128 397041417 709690971 202363574 288022346 165855280 465148349 31350394 327660997 744858403 175716248 705421850 341351565 90916036 288212668 584057667 971223897 749020604 231767884 307770024 448114363 188128439 444525122 265079576 215453817 207190663 690624786 291036545 760805959 30186233 325051499 888410549 830289670 991480292 121837782 339929366 645037055 296380602 790509289 326650636 64758535 334729945 242763399 950861365 325748504 560641159 692219094 936608804 152209587 869202802 207770073 836559073 411175010 201187733 742497143 813787251 524262954 55824551 2060836 90413253 222264269 628761539 242340040 947822446 738512014 502158231 247395465 43494011 346359615 11797726 826368789 299469187 706188844 940602533 670099398 925251341 689965399 364536041 148848077 370883156 301797987 916694305 740955359 705788304 403846176 684191622 146116921 409616058 731851740 326642371 422945306 193941861 979108133 475076874 402130548 988181703 61354338 907843071 116974971 385377002 409853945 88350678 574830223 728590192 162679543 960703592 802198884 230193269 779610419 692386408 189449173 255598748 766164613 986085195 400306027 557936099 666976370 821989796 64445397 835393823 780688400 363181853 667501377 38733326 48210140 350741255 462262868 27437295 696174074 956343233 921140740 415242563 176228528 380492651 168174374 545171654 641634220 505093393 893670682 868105420 226990186 627855057 454979662 757399667 173480298 841130818 61527101 875222393 385345427 927388346 907034650 373503484 667216542 726995653 500754625 780699778 606493050 761041348 92476455 194278337 100395310 725091810 47220277 866900404 43959788 869715185 838374671 106386294 354291734 806835456 708762682 713743196 228964653 152917015 285328180 82252040 987739445 336073594 907563856 796443053 482373644 941582629 379334413 465950105 853459714 575061081 593305787 537261967 121816383 446006084 309809913 116840295 529414027 530280908 79123542 249442414 369213290 895481459 273623137 571438279 634807464 200098312 616399943 236586575 482361844 391223492 604894691 337191232 659857872 241894479 939456793 786123638 706352978 269021137 786245348 951313444 753193588 440413037 321478170 681890923 261776608 820340690 213619342 696662639 92484533 616914095 41176132 454878175 476201266 267020235 105638622 499114707 746075737 298424212 598796056 397227238 663886823 377591250 947742539 806964327 427170636 67708370 364299303 256997565 980044582 42690946 508242477 896610887 615434550 995258087 932567770 237289383 689072216 796148436 431401989 329492339 359178183 921901629 202484012 511991830 454945375 235477007 761728943 519368003 672891965 312017883 499454490 290005192 968375339 198869885 677886931 693030218 12313783 237706209 182909814 241218029 465564757 311622809 500510445 284339543 596551551 160382861 509260173 95561911 837932173 487369106 269513072 593373476 901553876 451989812 953195093 694091938 915692733 76412807 154656122 862510340 365494001 923220504 682157356 278592615 251430035 197921442 755996035 80749511 92896961 961643985 877764051 103008623 657866313 436212739 772915549 509672190 206075775 85918990 102483545 250990263 113736420 694491939 636221071 71068930 684970411 812006747 695215953 160634299 15382361 865803651 374881432 617250917 900071955 701551571 940381899 807176544 327787338 328448908 771874950 292788370 259118800 165012551 905442355 521624183 332098036 152996629 516796999 69785860 342233388 114449514 632100929 805799197 595249644 37769807 163952865 817947190 360810028 637467683 802554528 59271197 66484957 692017334 621808954 914133420 244373493 761587702 442548169 904148574 672273487 133397950 691479173 810589286 23212078 720181397 220016598 111310236 462234654 275462494 428689095 487048807 800874347 958005704 195117930 123314247 707099662 383204264 929471467 662417301 234279682 521264465 550749003 624681035 81702329 643995846 212630806 448126125 436035495 167501025 786508366 825487909 115347743 905248951 446123373 702050796 341131022 987261337 793366189 60370044 836583740 451536723 223535760 481205995 927208949 289636797 861335681 352102635 544709682 326227851 175626601 923131176 611397184 943267500 294642197 661706302 798340429 744291015 506613964 805899504 95596481 739850691 305612544 294293480 728244965 109294518 712325236 642850656 906816042 120123472 32414292 698255146 27753261 803646664 321761476 607394050 898586619 688764426 842559316 932545191 307189278 81079874 184272399 970903253 911697199 360698857 868156895 879900052 756622591 380808959 320169958 221611731 15592570 962500677 629063771 241422006 290759655 575927608 587082679 179139474 753353492 371153815 707006463 748688775 657858 272216163 498430348 170295320 598680783 279976362 720718861 359354672 173514879 864368770 782181069 456015097 204125309 360961681 741781201 319235728 358073341 439603781 115840351 916707272 86450896 414035942 48569581 840484026 802193492 157674776 13273070 764587519 821608395 311475729 167893525 983878520 39817597 269824514 898515074 353944819 277805867 165823934 115553884 663201159 857621228 361882612 571215149 752105912 370901166 869287352 661002937 933294327 460804114 439462722 95615523 33528322 966790437 992694152 143428323 635231108 409062526 684149848 643366861 546759401 241239432 147590186 176641534 738672985 986141835 690492565 488477084 553445862 695401005 948476400 690382905 827602432 796219722 796390042 582935473 884076972 469375253 90570894 560034497 643153249 307153686 24192864 304813142 794249025 672213618 648204401 894181272 169966325 423254101 19016900 488832249 23448893 15451884 347135989 806028193 598727745 804754555 218369144 473964464 100989182 714209368 66090611 283055592 180315883 641604045 22089836 90878429 178021633 631804618 346936408 624672681 514863424 283038867 870432422 507181988 269714689 145928919 682289559 906317650 493475392 489657378 37483979 327437585 573440038 596749160 151780935 313401412 836291734 601053106 711414761 612347608 248532004 727352306 952323548 612549949 887084351 802461735 501427972 312247744 391444233 74430410 777274772 716157382 1605861 405537692 130480394 244459921 787230009 187258246 217167980 52423873 873072258 569222894 129826471 667353801 624182810 221387699 476228912 295337479 398148543 5083645 891467051 89728688 560859351 172996027 59724391 895546357 436396622 347167017 36254242 508402442 314564735 184087420 663757136 458009351 791358434 236261708 117650132 147249399 675457213 319600357 490762953 420080257 426791508 215492079 520706647 310492184 309684067 876918457 102976324 361116974 91857546 836927604 670392060 117221349 884400515 791748730 516162254 235618874 356325707 369174530 197027873 281376548 69671972 783945776 390400311 154945136 975127235 719711370 171742303 979927236 679706637 750551302 813124925 139905463 414692565 346450091 787285017 602844082 372701149 625249542 640367199 228974115 255119104 345609968 467935751 580893800 489025004 572636589 25617034 461712639 210272258 334591876 623523807 277992967 957110621 220757015 891558213 48496183 229356262 925333828 973346110 486755672 175489111 666033530 936924284 667441332 147507878 115776587 819454909 155946478 309619902 105633049 200306591 166246254 771957514 681511642 68418974 844971807 994052571 935770700 802759931 146989172 911472857 93159937 10444574 548284388 755689010 968513506 567026294 209389231 928801567 793023493 875884445 675192054 965073041 108157630 656769953 117686035 469751656 411370185 772134986 946707369 546175602 982611570 525194992 238883705 916839100 640418093 431678578 612246176 475043335 178173586 918228596 7256491 299768988 313806453 232159919 377792880 256595933 948806410 253796102 448785245 625774591 738432397 774226775 457149709 907810428 833900844 183494148 332473890 187369594 369368709 547295630 442988744 467524014 341624818 105902273 114890302 802211882 908474078 317355769 273287631 805619169 409782867 295553460 89481101 477310220 445747256 916187928 455349364 580158931 613154393 385994944 589459070 885844858 982078132 539938851 226819666 216982954 885355375 993993911 689280631 301694021 419857394 285278297 843546547 533862448 573955446 765621845 141186896 640401749 23461181 427202672 859739892 476037065 341505734 160224516 884231647 773424886 59323648 733970614 927760917 951991692 662024343 872214017 549043854 380922979 522158148 479022307 789298211 861241755 647215615 733312606 830448401 806946567 378077505 359150316 256432605 607553492 839049839 594878756 163903191 503215001 955892754 212837490 862380831 518820497 640698157 346038319 765375 277013369 744328666 286893765 363997108 30045910 139721526 911849675 916168596 172408633 434649283 819345350 752226670 25570595 756956433 300317968 991738467 377490722 157335784 654979846 135223178 391277195 538125017 678129259 463191985 580318308 636348369 418934282 181075292 655474623 596363618 498184569 926158099 120404789 25486873 66980254 507286827 695539360 334429269 575744173 78051471 772219157 243307590 662181691 171763202 403155801 676464806 85216700 759146414 526911915 108051922 520138899 589175855 146891530 788787244 442265410 149250186 593866705 328266580 667727964 258725905 307846430 951939409 249523182 240492228 58564232 762996880 617863723 533036365 577722836 597519818 773372630 946482350 61533056 348002287 963034639 40982939 925200158 734230842 823075095 193538972 161562464 439382084 94458311 28540786 425562025 426678333 518523439 77192010 961939923 353153459 539186612 408180729 812115968 278426548 595152701 763727943 528312092 561208588 853825010 879017736 153544136 357061135 767117763 144627916 169898068 857690265 621892792 63747495 498645029 119244980 477995466 201934697 375821825 340790872 877936081 888422252 878355658 50182902 58208506 866226753 771694011 459619352 435414539 475214967 927513608 183066818 169752 789058704 692891658 120106219 284856682 162024568 92968362 249998885 881825245 976825165 965930486 854150135 355683866 98299698 410368240 530952135 827292819 9472654 110319646 441200911 586312334 369881496 209332853 986795846 136128040 580274616 455527843 854667004 253060611 163960848 600476889 123673484 667262364 677595156 169080539 2350900 624646870 249631372 905662545 145790077 295126157 422329449 941171209 6938088 11084739 384543058 261561345 720691527 583106803 785800741 637866479 826155279 938801088 236233559 822507089 765176673 777433457 502661031 85156270 941508235 630757893 141740202 66462078 454294512 294069048 236946821 675184491 589347820 74562552 982322742 34821150 942739948 514224029 856428706 32553252 290504840 317239282 669508598 968506059 835730304 538951968 696628332 394870275 605170621 306294189 78283317 633454213 104987582 904686707 917246428 544976036 374434537 505323039 352929841 351744764 26879442 265908785 184842618 164465814 946742603 451967318 51134198 539879625 65838566 296572066 634081117 911495211 795200169 540096794 436832666 765849841 770678427 561185632 83459571 264257658 657964986 224193616 445291294 203403745 946717355 407065334 463717490 321654082 136755378 221511110 994916768 52201959 448189414 837816543 870946067 94805617 340910539 353311417 335627517 138432821 884779206 639040893 520624574 351988680 632427449 596612741 244953069 207978319 668985051 807805120 480669404 112480249 653792299 393047528 791528356 588689871 109128270 751203229 470355960 929330591 281571141 166935105 283385725 639614419 541453530 61380417 708656425 562862675 248803146 350430789 707706821 685105389 37361182 402650006 892407136 217343524 585713363 617459270 558162266 470834498 415627359 479094279 676877387 466149060 554954981 948032513 247405340 367825898 520742401 179483166 749291788 772008645 395876402 935399567 115584872 363020864 929984684 509463727 218736090 937192171 802379643 37773049 640770464 204476529 347115265 258153348 485589992 179756759 348977379 860104370 449834820 202852726 127469289 173023537 832943663 359830991 98777149 106938833 15116866 159235886 730076575 188409339 511813245 257989061 974989346 325340801 914234214 551904029 590983166 757060813 689813625 668637738 418504266 380723550 714421198 111333932 433904365 998217091 870743702 552116272 770451013 822600996 468735904 197587074 128653440 535526330 835344946 811010274 737954776 858587256 615223467 315696959 655627725 589762582 318001507 775492487 360514988 500269713 551799230 550666249 821332280 505818195 415134280 579406201 3892538 937732726 84476820 102298827 493829947 211988139 594767875 481091035 546484433 877770380 348072136 271323180 522492077 766495385 185274835 698693043 225495570 807882668 473646777 502806094 885726701 181420357 193897723 166816687 723594175 559541733 215105509 88069714 7547715 433957168 299229264 491596440 52756574 290089105 258217792 931658619 823942727 784280591 138735897 333861318 76990100 553953471 620452254 294237894 98521549 638973862 301616154 287716381 573184615 308376833 891356998 310800970 887123145 987547341 778082731 182790727 94307187 350203744 286267182 562775312 487223004 491263741 176591077 496551520 316545787 421013055 830084677 845342705 372145698 818961727 111727044 142742564 903575712 811859320 382380383 827393974 816752212 359070497 788624138 500974784 175650845 451579747 285635080 177722262 711945758 52432852 777995517 711448763 883542286 273640542 830280681 611407008 540230885 601071718 254502471 937007887 10804307 812299555 363633390 73449242 67247773 902663175 874074509 633475167 224083715 624837847 268417079 748485384 156600700 329595487 835719846 850157887 701962167 60923451 693060613 126571846 273479382 780725361 105576892 626921254 786557326 293992837 478821047 665481408 209641914 603446088 390240479 426436229 41666492 103641479 135720276 812240871 295994867 386545836 177766039 153050591 698880908 994646717 829692298 674746785 865283592 276314494 310290787 612469777 731088334 454506038 157851084 507465986 419551953 340234976 273395198 662710585 121976362 6501312 252211828 272914525 760947198 846550596 633684463 367519719 283416965 579989396 383523586 692025781 785157429 692843363 357157831 119184371 177507471 439116373 57717846 828491574 656742866 482520923 735678971 907147898 532134738 696639351 140934168 653852930 544074817 223061163 938625201 34793903 312630332 5455515 216463196 173794861 973347794 319927087 356259299 231081359 342486185 146386762 957184254 508951494 640705724 480730174 716528556 454148029 821261724 467064661 615722992 972779640 850475184 651964314 1655288 657729142 997234627 209504976 843638221 958953203 108580118 590525545 16745266 987021255 60328158 814091643 223721283 289180863 868636428 815704288 551148236 557386807 199506959 106694695 500906011 866470996 288353851 268646982 897886702 221257165 646527549 443776091 818190279 551623104 51615269 799599683 771529077 518674046 712722671 37048869 758488834 250105495 655031762 644842438 60670338 703108998 582638930 325941611 254795029 92714657 775907428 322426524 52014120 471223796 448934986 718200880 27795185 863686927 532778414 999882844 822199121 34603945 235907809 26312162 710698002 639013585 430972018 314307127 973257129 977800447 965686308 768887257 185310977 624380114 445597854 521992939 672773218 451965194 235403454 424062653 967443898 425424341 670755675 867945825 802410146 996479178 555070614 148304924 686230845 823362535 830701659 585963208 31037367 28929399 978755277 642767211 704346283 808351863 461672120 772723248 263476209 563337245 364080254 852927021 194407023 86617389 902776751 583643385 92951471 345310707 268650500 288295652 831812935 460406805 701213455 714447787 410189607 196605896 702359558 805814230 387077545 698259401 394952342 422882798 478654970 577975113 235215929 735213661 31209475 100340548 918261110 758628597 488013363 51048736 360312780 583260666 709322937 742948891 347103046 815313734 680810969 192363162 437053629 826151809 415007817 176989996 834952897 154632681 746542471 765346832 93397083 961649470 396240718 982608041 130074632 261509504 436392375 456087206 972275238 875768681 387654236 754123897 388472430 628291326 74025187 714438378 99022565 703436909 54346284 386644779 414156616 752540847 483858009 853897262 488528409 91907854 177581320 897325748 691256778 829789663 494973475 61333742 80542732 442498473 417601376 111723548 986295831 269226539 39172106 929049268 227217149 907156920 878455337 133408138 767970313 604630119 545795773 471702662 403663774 666523155 234121516 421969609 249257289 441036524 764271249 673869943 407578025 818838580 27752271 317695565 247202771 154963763 145283997 802959499 845796017 947363331 336763290 593960980 370432378 582405616 458306544 878219112 889502566 624959742 924577111 499358250 421884396 424092344 1407835 748962799 194043708 574944189 766580478 316956138 379107637 935294144 366112803 708201203 135301192 903500481 706914009 514217618 780331403 917667154 219496059 483732785 468441749 529864895 723015 656986781 679032107 495149930 137646465 124560637 93760170 593999584 232970091 518299349 184588180 933292517 858439935 697698730 990904070 513260896 822668747 55950980 854174285 506663460 33019460 174751528 414428981 11473819 90478253 579938573 154009444 368571658 9212227 432170540 709863284 247432657 160413483 565345186 709835536 662533617 167844366 75498301 214488515 788519042 761070415 38612418 205877621 255890640 798362151 282099349 698294973 904464464 721506214 594892379 193681976 439619355 674042164 246235570 942592285 852902703 496307270 894543755 559170175 860926758 749527354 731760159 973172928 892820277 349226866 349807867 333269997 271726492 356092011 926362899 161330346 509437739 36268506 451426455 828324086 76078734 637651163 408330032 680739637 438690251 968434456 228250287 842717301 590169247 562310665 481917211 380326294 349901765 276234451 91044455 166148331 733772434 630025271 112200761 57841640 992762511 770288588 986773950 254291252 701655857 153308087 896204732 116424627 37259262 880736556 440434469 554124845 133781988 520532849 267322112 630268005 414954030 120911551 533640169 747441568 625334403 875201045 861394893 935736837 582829045 691950377 281630696 187030572 934316414 195516048 978753666 154791094 583526783 854729378 10485821 256633899 462984094 265212605 650804783 491292241 399509971 57447901 980889700 849223005 673939123 352688367 721166243 558225054 518454161 942138429 202218395 369552142 483317221 763739453 262549093 832170454 78610757 575908300 930126081 257545211 366162625 717680340 585156491 886907619 296138212 650611458 699444466 262044140 607756050 830870956 156937378 345409004 73144359 548711586 255929839 548783380 253205031 132133795 261989395 668845028 790589984 666460864 475972375 209859907 794645834 293933502 278549971 191370673 723401741 54292932 175548653 847877678 109312806 682831292 113010077 25332460 317736594 595278955 334135283 90937125 81254217 109737347 836684066 506529825 235188707 437298018 572946184 42738216 304739809 721103449 100136885 242465287 896866098 484801830 538858300 122964982 334853847 223413703 475933528 270139984 42848376 684232524 450228704 489925674 192077039 556891826 421038961 126372226 31160856 686585865 888151736 712677943 307362639 921222075 981012313 885667340 609962095 741696853 320803819 289493905 541105397 436420056 762869919 44920549 167297353 603770996 66855737 72265562 206416176 143616836 972103805 391035029 43321706 103093812 114172982 108077833 647667929 648315432 587691109 228553848 84608569 215092555 341729119 5456912 859645295 963951518 462979629 896519010 600721185 5028036 833896296 102072416 750612406 303318712 207321709 794778686 376136495 127426234 442071696 757769920 80251530 458092846 858389315 723368027 646757433 768575432 469941849 495158474 597494862 689404104 601583493 405454989 313941249 8882548 557385002 649372309 795441532 723820653 200410982 533156834 658074266 10601588 966213050 809275355 50136522 586131690 981283859 877524064 345319014 560450652 278450655 577753289 511730809 463890959 535857854 105742078 780119940 436841699 788028952 374027702 912584848 987752112 686872076 937752764 732792450 873117447 148015433 589787491 120269970 123334741 119150841 838931851 881845418 394420168 607483249 530722200 3261272 175867195 811186270 207815184 863517150 516052766 363395024 74124835 479349935 701936610 109345807 278960865 778594704 434526204 784270869 233256537 728179178 564200585 400752340 327455621 598142293 39628044 686202235 575121222 756554604 452212567 57261006 55704849 159634526 22666150 243804391 944663293 756594131 473882838 616160013 946707692 873836731 222216432 701052516 59629647 893326169 620772329 314430310 448730929 925158763 453150580 84794340 728941535 119900256 860802271 524007042 780174099 450374751 667286896 249685176 898915075 662110378 994167195 405725131 436032467 720201489 89577924 305698105 270240002 232882098 725374146 89279521 449107715 482524040 335345982 396396424 22373831 279581621 889340233 390699005 825874953 617525157 439215801 703409413 934068490 658663666 191380524 642421617 284584749 303219870 117025779 26202571 139503252 277344281 419934722 578470896 161943144 152884427 64125869 896652411 533146772 59763766 682711478 746291985 919304258 402187459 975804070 633037164 564572048 797622842 80291783 219431975 601616390 75336043 920554291 940306944 177327544 842240226 666928007 461633059 556477914 993721445 500172209 162130890 764611524 447212799 744842831 446754185 992321617 19851032 458714371 349706474 59531759 138407405 558602271 560671539 640113618 450464813 688358538 431402798 171438060 998909411 61293354 804694033 945575201 840039168 740311107 282820995 584941396 955076339 304917353 65032510 939686718 101522308 149502851 675306765 269066528 665235587 785737386 51995982 282503991 190325368 338755898 609626928 635918431 700513277 310349148 353825469 100749849 637187252 649955462 490836309 326276937 756713794 50581499 295901663 383778990 247461565 928593455 89203484 696529779 960368060 437361593 304150419 526617960 369170521 990342865 419353190 302454195 599214318 957895835 520863240 659792305 929408086 68833762 116874889 371486321 418177684 631273800 411209794 27260451 494662880 283777865 173863486 931337289 124790114 335015314 90572115 624448628 873185030 148915412 196581004 133683880 167990939 704132108 268980550 255854021 864870900 244793061 579478886 13149273 529078255 100171319 538134695 943404603 606229240 276201470 253453071 831001756 301200367 244173160 642607809 586501881 206106344 389310734 133834475 517470900 942450822 491978817 297303451 666035809 403763585 296854338 922850203 751058527 493737228 254548325 755718877 568003257 456082266 858549326 991036158 468631707 833674788 903741100 22050412 551591302 481986824 391224906 751066008 292729004 494312245 560899159 195822121 747911809 87315442 557878641 567647964 744403960 779151578 146971833 818663521 270393230 251250075 675552059 498503406 486862182 334371472 689988122 574421894 582239118 143380387 394797361 688643330 855083228 275067821 961771147 440963020 621388582 118053667 734734133 354712554 413415461 972926828 571774136 605847903 937859733 530587452 480180069 190705860 335315022 720843817 260772732 520808535 730560891 716534721 117282584 523130834 996754783 213765024 152656662 799021072 994477298 300009346 582144932 485985149 395518712 512355680 818642017 626088884 49274026 307466745 202972656 45841336 73225479 917715155 806027702 135673135 465746701 289757403 714468493 517753289 685545972 841042598 899207238 605351476 422342463 868324233 594295535 853618609 615700304 160800018 812439785 942949456 258356998 14976146 513444214 956625146 87493436 390560848 24648095 495797106 119884098 641894618 873048761 476085993 473113312 555985880 280012517 598246516 33504448 522504266 820398296 788669308 357178322 465665823 912556175 176445677 898631048 274851158 591309926 590726202 419167727 492346329 237890516 358411298 701044013 426571480 502333684 699047166 676491429 996265326 641331502 212773790 799394128 113317088 153515251 152457345 431034413 192724078 401897224 54932548 507888303 262287550 593456406 218356360 3325611 880251266 792813633 363718172 660358934 177559438 432844532 764629539 776379422 111647250 416106464 694420503 790984639 743126609 824710989 20747948 351176959 135980448 761254974 414714581 232467452 372920361 513245695 799613135 839455420 863720123 748438745 66363972 700499566 382957085 599877547 487504638 84069662 102357365 229959020 73413153 476114237 703031831 259870288 554702885 394275383 493050875 910023795 557270218 196590677 890141177 310213858 567137949 284440475 522652292 560595599 507594752 268795674 744158689 821746761 975192265 3185489 484388861 999148605 571931813 829527280 87922566 42805965 679135678 809202251 558815420 268448553 542434560 301772156 540686655 278060237 439754368 369286481 972748314 389521367 413064908 569052959 710073211 292896290 972581089 259565816 380708412 155373375 679787781 249611317 288535031 820113132 597855069 609571542 111585542 238492750 947887782 148362823 406416832 138241339 812488755 438696237 466463794 93189396 2435820 303405497 288938576 826534295 385187209 351375655 141152889 756375875 484855991 227798955 166447106 325513082 335233527 49160374 1680150 43334448 228114852 191073535 249262750 438134750 878136204 399371795 134331884 615127399 475871927 799073324 18181128 197927924 617001281 946275999 992040910 699451673 735232553 348462496 110266736 443065673 384260686 453878793 686911384 194770319 54955368 55973472 703577450 88730447 346347127 986200810 326234358 781313945 727248896 741637590 224135379 8080619 873008965 791087600 137113064 388547123 731027825 348636384 652264380 141907975 475798889 58261621 59869355 61627036 624290063 803288593 847224760 981661058 503523079 346900743 850561318 44487334 669625553 823435993 869549380 523796588 421664498 444118860 509943236 200381802 697219415 729458903 993850812 143350449 76902054 596148764 895509899 262176208 51030600 911072265 861105219 97431647 422060167 409357495 120680612 690659421 266535285 236022034 822110282 41542659 817475281 859133433 57959347 947215895 918255791 890960999 198333409 943118152 620940294 827044291 706995220 604387524 12335872 429917950 477461733 530667670 62442447 572321478 81184674 172460149 328131973 142245489 818626429 583969814 264761452 223867041 310463043 712764709 208821392 769089083 785455413 40133658 573754314 412479827 741896422 463332904 487198509 707193189 963302246 301558540 620990107 588152477 819441526 711022234 248965495 448598340 516002133 527514406 203160172 839597275 678764625 560673724 881720773 408579755 701323248 25281794 453123763 480782139 580514040 954800622 957464048 546126603 434229486 180911102 302005590 807404036 185832710 744541241 557842892 986068850 574306974 972817378 136193894 54639073 983447043 774988367 778796135 621035302 524983748 191520126 665452187 905526737 220204491 94404872 152876753 296403000 234943654 828605514 80905073 907932996 394505337 992680445 640113383 933605994 213340455 109446436 66004750 357602487 14605763 657099068 95173126 545551769 516521320 151141112 705316920 26398863 274084860 713791830 125443462 817391347 620101719 247155209 52989457 119524960 819524291 598670546 949598422 446494077 731561089 503831345 253025908 195956811 960439392 290710278 246229626 479747243 54336456 101641652 221380106 224516278 962459903 958950820 275001464 349468694 320140303 588961658 633479502 31393470 639980839 901896055 457522267 521304013 981778865 40604473 768400089 898597590 435359029 396338823 330535510 692417389 194326598 383022236 776668436 117006711 237359749 440563 237816513 610087349 766887762 605517941 379061721 971043907 975900649 1763284 562696010 942720740 389253290 791424068 953776060 103608249 731063494 882952618 105214161 268642068 960643348 33298963 793442526 913358526 468976253 706182555 55141972 975433120 999190186 199131672 476673172 893873212 107018485 961400112 876966837 653974855 445549674 74703005 381311680 576269850 419885954 59451989 612953294 463528234 132482407 667614403 907648142 44703594 721312227 147797423 894355059 178248045 49774965 781424392 145571885 665704988 232190283 896017866 96864333 2144696 682781873 292005216 985213541 353265515 55502941 21798723 623339260 687429486 114427789 550468215 547654986 769362651 831216723 891722414 18110140 780166281 979443125 277957888 632476689 501940734 826821001 766831737 156665150 818614480 688482020 914931313 786085293 828923917 139331135 764774106 89843136 577107105 207570096 837541582 739250781 647204302 81137229 521468360 451501714 616094773 806902075 340480302 714628642 968733424 384558057 310947642 229523675 303377734 282189143 630602634 642684149 897694639 433635717 733141332 277021230 167604705 247117762 124614124 428851834 484161780 397622596 243947410 579756637 132477459 735423941 915552593 293876634 115157453 163348669 432497896 831308494 523658685 914592546 693759653 75802294 8439875 917955217 984837665 94211419 154964201 402877606 494589858 630812243 915958269 443989432 224446069 517601160 412389506 166258339 566906811 209534759 277896569 885982581 965485264 952254181 741348629 81596824 394142165 534486423 558964279 81952370 653772246 341903646 683516961 821099662 643183740 932660061 397865425 965718470 774508999 308815018 991525541 958072780 138268165 185775923 900294146 525057184 400661970 449997095 729957997 948006978 492215796 319872529 353290524 84756258 130314172 536047718 367867200 170476898 736587396 353841709 642897462 909030050 458832263 439462452 528880867 993037199 650757045 585483543 614825383 691360096 242722153 552889918 155817260 711177694 349909983 495524496 899025649 631208068 301598508 498213142 138247704 373705982 534286057 559489638 114465507 752819494 598125506 925954771 115441481 616639304 517239863 102974822 412851780 444429675 269614015 645777247 549636695 827576245 687779098 585729635 608811437 253922858 595408944 224388064 445111352 917436131 991615467 660895190 602384690 767645506 414079773 884156054 127749103 898904035 874688603 550939142 945862262 253903633 831228033 444360635 616940601 987004657 823527922 329908198 926288 676884689 970951509 635238403 134255559 910437743 258744216 423085423 519526577 689313036 292940411 370975787 340216703 515804673 285932567 586682424 248676256 938634343 481362175 92778042 483897530 374174523 900302316 98837588 397587956 169704570 166119558 737603085 672587713 622389533 206707324 629711904 621815628 933042145 745266625 441264066 349053451 137924411 554168170 431590977 519187645 251346842 15341045 285496984 4377117 512026550 697413747 733441908 165024321 848190538 856420545 772682044 901769897 24868742 210666476 817934546 691523401 526531460 576453058 247986088 133940306 408345071 221577643 256135032 312148195 547725353 983617173 926358512 529043992 339057319 493928684 566531040 792198055 345340253 210405571 444220412 16148704 703780914 842671779 342713159 975829756 832859444 559113989 141025664 176778824 219316767 234131441 171637024 842692815 881201922 256938193 509247098 119312280 27349184 520300381 49011220 964828391 930050212 68759483 247880948 720471251 583138819 712524298 761367005 577022704 950099973 440050205 313246438 399885911 705109100 883274207 622577885 772479180 593535241 349058096 870284187 19698378 61962718 650959234 108561033 558904993 144892684 354044008 569030969 637989809 389225922 300660653 69065199 501813309 82110989 542568900 931736025 917927134 748361252 481970653 380736885 617133954 683417318 71055288 967063199 80104225 963449418 753477059 748930800 795230912 612616756 494732366 415510546 865629541 300224353 921379319 720477220 876721347 990276162 409642052 776224753 286108132 624783477 333925600 256940236 991543838 830665407 949371074 611275129 243537755 126765223 549643107 777304773 490697853 751295084 69387911 343191947 606019958 339322214 769951608 877650681 396357373 514362324 65661723 61643345 15791860 548160336 781575872 561132082 761142840 786799651 70789754 318693083 408874538 264613338 903224519 194981397 952726620 375028160 553367504 50510207 249350040 413118932 711706555 795121601 830722853 752740450 871492114 981376430 576519396 781002451 670194931 458084374 939188931 802937152 976238799 758197426 660475965 557330032 987555878 555840358 751530036 728441337 314502648 396570856 783074341 845639109 950968171 572985830 982639697 709672766 704462639 769420376 63043398 112542018 311307519 828760114 538642165 849368529 578807086 801287376 513332738 207961879 406341902 430297155 671505305 829486430 84978466 679603602 729235807 230886404 181192123 952809151 87320771 695323279 373579433 989129357 924798835 392379718 931474911 395915155 354564482 751596777 326234028 912277070 589702599 738902714 587122378 950230841 368292738 282626371 652735283 482227189 331886292 309123931 442463792 563493046 196708291 306620748 982169278 17096496 735605407 859240248 45554908 711902818 861985305 59203861 164961778 770571584 602368336 132750178 620486803 398229958 440972916 712223848 102767480 10059659 229367226 807543192 826303762 686026055 170592247 745876806 70208903 807531514 725978053 890342349 972174866 603989993 136363245 326006114 41318260 361837456 217296433 527646260 811016484 374825058 302969729 477111629 840664249 547651421 663104161 145675237 890703253 317869382 631633296 651321028 845117479 224304126 435144377 219702872 816128671 4181457 290599769 166920174 424632973 199772409 772183281 714040700 937518092 779404514 147172554 643514712 580175692 811248077 490096072 290000574 680767493 136886327 904431295 580242438 618024374 524703461 518687265 693445839 357671467 545475426 377887151 359847424 684757385 719981853 737133274 605096731 722080023 925941316 218656458 31816645 364680765 19251603 663734875 439015739 22964415 66517927 575875647 694538879 596126805 823685150 993552319 878546947 363250914 245464695 563879195 189488776 384692836 913709577 754025129 388118121 983903475 200155133 468327846 823855714 807084116 763068825 639566369 569683046 767470075 37563191 62366773 966092950 349843026 510033989 270626494 462368033 247962371 414061008 339740329 77061131 636432347 362739398 155743692 502802805 830024608 207319162 216084818 212358982 530315413 833606184 985293924 939551447 898341661 883596282 580254438 60673232 980711366 544770399 253909317 519397703 149337559 805572322 469399795 693886038 412376657 386711519 599248611 181555771 704341594 210335325 47722140 486035242 600195113 97085735 338241774 534241997 268480922 440940610 230302182 279639442 495450708 702371173 128549507 570642288 690755661 759232071 832062415 794956656 869032097 449221268 445281725 559778362 148858875 357360359 925457140 401573282 935336772 292738878 343727734 524730710 885856212 952574783 261184225 317228863 218410381 420328789 864370850 325340972 544516931 899673162 834029786 216664632 355650905 415744515 485698430 148692299 646389660 561220846 881258091 733539163 70019513 281356706 141304117 555679085 599820876 124952474 428897453 115265723 742163587 548253068 781982576 661891510 379784349 983225257 767655665 423920634 567513678 455447479 261310939 293761122 24599348 930496791 191484609 652230958 947109133 548823666 457489286 20113978 345427899 381676361 661697797 762401720 791657610 940305720 981724317 28409200 524062716 729894907 798540100 935609461 192343386 237967408 580895995 977855352 393908035 586039663 78172697 524242164 468327090 505165884 100986908 961242528 866403982 674404751 514377046 902997251 983075745 582259592 231416321 799793075 189409678 956028589 763432974 794680423 725849014 250148350 214225290 249234434 811218810 331141486 221967550 840655677 865359689 832407538 163782729 385998490 99282135 13179510 910266508 891732649 764388483 585853395 587900025 823115925 645014960 240592187 290398568 341544608 805064700 698624003 872009899 302337557 308303105 405806445 268399313 924309421 612760884 230578034 711189079 946325342 552213342 603253853 315585601 530538718 767857851 315758826 758549137 318682559 966638533 70484024 789381363 133227755 213679030 435648517 380169193 91318609 902392485 878475081 905249499 286001854 37186740 297397706 573107340 117376032 425162033 646612183 316521677 4671515 484847002 491373006 831996529 607181003 41502654 964327112 965084638 592171977 909649693 285429041 942391333 525505567 150914932 134455707 379776896 522832419 429160996 66564243 386232337 107018435 225731613 263328264 936362237 127320341 214027529 974340340 703670728 261509461 204966061 619076921 420185927 758323735 105051368 264413156 431974905 385801446 253792131 313764977 205541730 329588732 762175244 94433159 983520142 829869823 476791712 879813949 943708188 528652597 424800727 269946809 685113498 747063170 675178024 597412175 51381487 148366623 719620421 383086961 487732992 143434977 192086785 97628631 344981283 487536657 456803704 822588928 87236406 882264822 753226891 853279424 243168505 848881081 398408593 288261661 809911568 83724521 645355373 637815015 661734495 442856625 887279694 81406745 240317001 304276885 69520440 982316756 478848316 460701196 42643030 855578130 466371442 918465793 727537038 601756794 662711592 569355434 710276596 738185055 511058159 784561825 138459314 675329633 956834948 980156746 119581064 947857803 419235164 716968461 226127460 77816348 374402233 400676996 826766001 688657481 241180879 470233951 408306247 843060326 721957968 813556921 353165178 694077285 127007804 122173128 934409235 131317554 616657172 216832085 110253504 76403313 755248423 404851083 630902410 117762090 959775797 670304760 679083333 248208342 468243698 770048503 786061534 681544279 675674035 745022468 426726694 276828677 452580519 680528639 620581326 995526473 501402820 844594327 227799967 16481623 84907706 488467065 407145481 464021553 799694920 367010712 360294687 583910185 37566928 652879139 736306133 169772048 509842458 5573230 59474968 514056212 394397572 289816877 289144658 825257526 452231606 901755792 594339484 411827288 334510350 320285095 581336424 451988001 931687896 658172635 637610682 385484040 205041913 426063424 206629222 729710865 506216399 172774069 866160848 825995093 645813547 645767449 649673364 860650752 590186594 481630509 863361751 47003720 101834266 504485783 912693526 623565791 391035284 537456364 609786775 390963529 157071922 366261811 288455709 190567623 311886704 805484564 249182551 211784622 673957713 962273662 905748783 947911422 701349494 480988622 430145263 373795928 218623729 521015524 730270849 114319248 633486820 978082195 174506805 743123916 326096157 902515659 634218756 481109744 256444030 142957805 586929210 767261331 589504585 29082665 600298106 256126992 182550248 500736581 767243056 939562637 435883978 948515962 526657237 201317858 358543176 642583012 290554974 137536779 961829682 224300936 499014241 547921180 711247869 171771241 556995931 593324773 514400887 750293175 142444647 494961653 362699532 465981015 388896223 654124312 235166852 353623740 966190138 457438014 372679275 676924636 742232307 463614073 546271693 22327499 537997203 886740376 39346399 335038869 272762004 773765545 993553550 588213573 418005337 350763209 760215906 211500268 925988439 14675199 242230490 970419339 179805914 264762392 970252875 198577977 127656906 162013989 467813464 596598097 684030215 687128729 714409513 475900757 529934896 247903254 472829494 185415921 131833843 337403783 60085128 941209714 606818696 727907748 701232350 369095122 58889303 847620966 720079900 301350163 490960055 960687828 550919310 754841074 709487232 102457119 477959253 364432238 238096403 102499081 930819471 868954215 306746001 85844347 31173444 607746509 457538500 619258724 482110090 125880375 676575934 594067736 318036831 330570297 294406585 761830461 946544651 679815873 974128974 229102137 876990544 905882819 884047153 96807922 46883708 756533920 693169494 291065681 281563479 570323700 869553925 912410005 485842529 831704883 221858109 307596269 262370058 161230757 520443538 257977869 798767258 111488006 618114100 163372378 237244808 622181479 225529972 89920755 647922973 916383337 290184210 576177089 959292293 664929666 372893631 60442876 411617996 224698322 577676775 349731448 444113227 891661144 526611983 307704459 226981583 512531817 37040031 119273463 253919229 46875231 591560530 764431749 456636277 181489929 943858005 513999862 136619418 565586969 201256207 171139263 476686233 802704278 806180443 914739410 115871186 103045817 384472717 21917216 802627443 662654457 870636433 774750338 64745684 850328104 45080668 934140957 422525445 941360709 691955896 962279714 230492624 422787547 25318072 726982445 502996045 424111169 801972849 534355522 302189601 407558926 991570462 967980257 501020827 179491491 284394533 42476948 841592866 624910679 153288818 478445088 788987847 914027185 542687597 136410851 934332765 999677966 990773661 395715455 426819028 486893255 271927694 652985116 222624080 146620405 468515812 479716763 482090544 849561575 807525298 641562255 893605918 200077472 389030528 403522639 877185479 942309942 552003567 606149324 625163839 532467660 341835270 363270307 787806175 21156572 50887809 111969411 177826319 501304349 381484842 47504394 25452955 621664135 196394256 845647079 710867413 435037563 252218567 756101126 583906272 798694283 29915517 687991632 858545777 195586318 565991584 579178216 465497905 727462148 345916733 123252067 281329380 511985052 493501469 98260195 106271447 542820748 529590789 851675618 635357328 241514754 477152743 388386987 553041 20693317 334731223 280330297 129272369 811900218 283288520 751036651 327289335 153913407 388585067 394305969 301559975 385128118 994843164 217906096 972607168 45553704 775944490 438547265 245046253 979600321 138204492 975376093 400340592 196091439 831802633 76936816 221114818 958116915 166212675 558201246 804357838 751643978 499325850 130929962 248012951 987460172 983060931 442037274 223241869 539155965 546265949 33212863 169294017 581618420 805632332 364990183 236247201 361017973 768181570 949900768 915041185 486711152 998204639 32972313 871063058 978598808 378271394 66281716 412048427 888856796 66903448 1864755 791760732 398405403 58370657 5549065 900901964 819914493 985933384 482132175 387539066 943879249 577853972 920999970 5176007 468660921 987032359 410495390 621129943 885907221 561518377 38833285 759910682 878815944 543345662 110668199 802810746 199876782 714538414 810550946 310678599 794882209 330566174 649393671 63294304 916514967 786913256 66114428 88755240 59538210 908896351 543626093 379711425 837691448 704302783 831138372 905811262 601059150 29717611 101594874 814795317 968894317 784643860 980662944 448859499 381338546 30527282 335025996 316223946 389706959 344129489 927185984 91508914 155526108 64534555 429943305 136379277 177004625 108595888 166728481 950210673 577631017 657489896 59198001 552782720 97115479 937888162 582235889 949665583 579821114 96158065 604001562 972178452 223134641 914965444 901163550 331368927 282655133 486148634 356070140 575046847 651611601 872697918 134569892 983856528 86604315 514509131 722514214 938208863 984352642 585092348 568879747 166712004 438293985 262166706 276168509 516665636 724016146 89378374 134551197 329196077 48696220 720578222 749739855 780689237 182669206 416380556 373215336 882385789 186293999 981367983 227382781 755099897 649213096 451909761 199868497 152158734 453728251 137484639 86882322 880069551 509845268 447395464 568791664 735730429 107966450 728267982 757135552 954759564 649064918 499792831 419957913 464377197 578980552 531702972 989400543 564896412 449951884 204778941 336201973 336865461 98017969 513766426 363174476 448622312 20398837 834328579 76022398 163760472 417499020 869190857 912722605 443893906 675491049 926256681 81678548 531993865 806278683 740915862 303141933 884535492 356216743 984418718 415686075 239340714 656353331 670260073 902930551 384221487 629703779 313610865 497391150 34936154 214657816 654733024 437244104 618035418 902254956 759769796 921453469 630579732 363333655 421886015 23578183 34445535 900868244 371327333 26367525 362603041 400219963 785907798 883496410 174432781 113528993 594080688 392470209 791026472 243137313 269429644 520270087 385767967 205224634 431312602 699532768 194723170 64065555 444368456 574441761 220488356 762571672 870440740 657245467 874453463 164935434 820732816 6623378 929978517 953360446 942912939 705938150 727492526 103490506 207537076 841223820 3306980 667804509 93005341 820938753 303590233 768350798 759817803 396787098 880215880 69661028 464056370 226762527 316806068 190055413 896189585 820245805 615282584 180872069 503721142 311089724 859441180 834548791 527409013 877618830 521199965 449568993 449342099 394304525 258758430 281716312 899154098 229701887 710450275 721487693 962174008 469809502 722611212 204984304 682498174 848068930 701499935 310417530 693918617 542845706 725550580 158029180 222252983 889208614 274666422 523860565 773254846 558166017 983296195 395302063 651391151 503999206 528891538 536356457 252217215 117857783 253824323 362849580 925728253 786183377 216438366 239832404 382057610 331478749 353776192 245734419 244828119 757774111 805932820 119962018 449665927 220941749 372720293 133938243 586738172 446103228 742006706 808587078 338545309 215066354 862377261 491364540 794180244 800119842 626910974 347167716 789775096 881328648 599658977 361888106 298773691 480807675 313783578 764925969 137342460 140982809 222870747 343811810 590128506 930528516 813271219 333993743 918979551 181716840 480838977 686221134 80212297 698205485 476161721 64375535 106657987 354586243 684758698 33733357 625476078 521891208 106018047 900414620 156866029 999195049 564917040 438693266 689657853 948392706 345961497 196037873 317560051 838662136 534229013 480966045 790961913 49812899 330355969 88546463 813532248 623797532 20380537 701417908 970439095 737789280 283539385 232941523 992917010 201347389 521656034 878271579 914285052 203482631 683202172 535356746 746272485 513151413 891647775 211233144 824425985 883237054 22932230 935111649 762998070 306989068 839099273 502472677 293920929 309053246 386345805 442739574 307010219 604334367 409386269 98694234 301016809 416167919 182147713 662644263 109900030 547377558 307976455 713039494 24408671 312190343 834058580 957362295 508422841 234190532 753190341 815685323 192392853 873450490 710075850 371440984 799718896 121710012 499651090 998821309 561727827 591753245 666717805 563517590 593966619 335166436 758585736 184719436 689267726 394525887 486904632 908646428 801691091 185771477 224609731 731443428 106448106 284095745 719777567 956656057 948648808 355692178 795894135 682882242 329735622 245643582 264016713 554480797 684684809 77221846 110064878 133068920 594681936 505833759 380795935 817711242 198235338 926443511 413325534 609688158 832362927 362667294 436158899 882102901 590318367 306319008 583037707 260555783 933687079 855834400 768576530 557046204 927578481 520368815 574465737 84731859 462291029 321810 578845563 16084004 670705848 769711418 98057232 260580045 880166959 637488974 111546117 124976531 23368662 640231014 85379891 39516599 102072991 546900196 801426908 787268626 190653132 138578367 847748504 855412408 198916893 890932956 505177909 793241611 303221523 563778997 758159541 407342566 491439389 751344094 692228207 777950373 208133940 758321444 266280459 4132333 625778658 124218954 257122600 552380947 111396118 561038936 756696313 391936280 623533623 1692504 97362504 277857921 741330997 557354919 729490459 96438589 219966918 391197728 893910214 746162723 839253769 996573975 664221310 536141083 783321502 481297307 54042079 499138920 497647616 237919460 317190300 333926934 149019678 853594252 515552036 804307323 148316356 816559680 545132581 615122279 376973581 530231726 838362448 223805614 872822254 298336888 824449342 550653124 730410358 641361580 886842220 915539280 882746071 82057377 305358531 548179194 466039849 664151329 940415321 405278406 7719937 75418357 639572914 247295573 703472317 38047696 22374003 520410858 250702476 927833003 654440077 764097460 107959159 221590092 473421314 321768019 864232806 738152145 758359545 145046843 425305472 350140415 392874679 311158632 443817195 245634657 342856471 781138703 6449252 585063934 923813752 42007467 586027822 665004122 95096320 935177576 407016273 189736282 721240463 771580319 472174377 581493450 168622631 12643755 515260822 246865987 352485184 71795193 749850155 312512782 753158272 620044074 937525937 180890857 258862901 492453817 714801909 33457912 173486434 922609001 930987772 974646690 262460181 377396247 323437050 530165577 287839306 959014913 481913524 306590132 206926104 687148678 497745184 569692672 13802203 729710720 323989733 291387592 789436997 664735595 973178852 85127112 501492612 627797977 729282186 383156050 709646123 45085914 86925016 983816999 153296229 178841562 473976248 245214353 370669344 605044725 597473289 423979799 751562176 266794362 503183 46909653 122825098 548896642 632104248 142514756 578231329 733732216 765892153 249036866 475576337 567767938 723949159 74173245 957905093 123045969 520087317 489891919 760642325 133536393 593804801 304073788 438529391 8325036 837650190 923481609 145592467 178451298 471904073 385148770 885689088 418236863 162153982 685995663 124931943 340736035 869899769 472479973 68349254 417292711 981694924 41698691 103944597 462651248 49483670 979846833 880010174 798838781 360225045 118281007 24156866 383468009 494667991 688307790 571973315 292399320 596864330 873270970 18232269 255150805 3477678 734932868 773003591 927201953 70565536 419107005 344853737 372585145 138113781 11396535 948840468 900778949 827508767 265950770 14962204 794974943 765926386 639041887 817488933 373531410 398652947 371643319 260097138 187824806 488516301 117643566 148688530 49901606 146948663 40098239 303826076 976069172 593122093 574704695 185261638 161301977 591928442 309895219 536587527 234569258 308854926 634915365 671498983 237023139 977139658 429918081 903454103 228613572 132382104 831690826 370358321 835075846 682501579 706325849 252449410 954569853 375426805 345670369 564209010 986289136 547141230 544588352 799272616 673977992 755729164 414201740 651593923 424086531 578945312 791989553 797926587 317688843 375542316 695589951 532243634 274983836 298900059 157494718 318257737 846369098 970687460 997631038 736760554 465299483 236156496 32434322 283788096 417676249 604097645 4993025 682404830 625878987 878599934 735663333 245385558 755862887 400910163 902247213 836806024 726522196 556219096 968889764 709774219 53420012 804548440 244149269 78656019 34308113 696812066 501074544 997208276 749806181 949547405 13828300 444608685 41344990 652916656 467924600 649657530 97825111 382523518 780960454 506294513 764876686 472285991 631764009 666540664 645166335 231461263 175934021 243825870 558913281 623987668 944948029 772698793 278076666 14646283 355688611 127912839 131130887 421862426 782466397 696309617 885549527 396070537 928084946 52301211 909809711 585508493 217221471 386106783 586995142 796277103 813837323 862592305 576271981 413636331 891328572 323738111 16448556 587566122 709926537 353788565 497697915 455574768 338745368 822773110 633756378 249722560 800812359 664261375 424120453 4688396 241788638 450179581 234918518 183817584 496620208 119959293 683375859 19787576 28489306 626423068 390554809 942517841 121812541 963332874 906515755 507729745 95670366 401983114 639681052 175942202 818133840 284584882 414064160 475629989 727896299 791122506 611294726 440806028 409460683 779503783 344210505 582915301 607405040 578906304 532653477 550474264 410901017 416394296 421532817 55429757 690698959 822331322 569228957 231955814 758894362 156764452 342794196 414557033 610730281 526355438 280611371 566063142 798564202 581641542 280796883 113853790 476972439 57131176 356559152 811062067 684068550 854704597 843834126 12332972 892690959 751648823 605318284 876918098 112488566 99439463 49918085 774165009 331220085 403693247 962620075 692764006 706019225 303371660 353008213 163778724 697794547 460434877 715990260 421588698 76770262 627430642 210761935 187876760 189854623 275616353 446387423 176078838 565507488 39746428 237220202 230037599 41581144 216597484 82843471 17747401 533571267 391539857 499071891 662866889 757967822 590060345 446618862 564478106 176084458 106678060 400115398 475835860 411925033 753004943 553619753 938103461 468308767 513051454 740591765 815091696 584409576 764237770 810333283 637267900 984303376 81999816 349418167 734019922 194916589 62272907 901293989 77779415 637107103 120707079 991834785 891017103 882119433 251516595 307698271 887899568 652089571 501782798 728008884 81744511 777679481 472427845 510571973 628163906 582650096 772970003 440772123 539020846 905570029 587395399 649683327 364206127 165176581 712895051 889065103 219284630 952446085 352386294 787180112 141213123 941241515 753408099 89215961 68742875 561215498 407706545 226494189 927929004 404702303 362389479 786185852 253417122 601326522 842434607 280458719 969823354 160882779 80258104 685680376 471446737 422522962 345674789 9789653 134860026 520310885 402467944 112235402 642328724 733810206 226298358 732776002 343753293 248426664 55669535 562750695 696832025 123351131 942408356 997913576 144079870 828209408 521628709 589296404 851191101 957885158 458408062 492579261 591627482 760465118 649593609 747467746 913163916 658651653 750345770 81245502 703839232 251869166 694947194 784500795 225543385 341505904 829718481 907558508 926122396 247619889 923928552 502654829 999382803 526844168 318226669 756289595 583169291 386635637 244437178 621270366 4561671 157304823 509005610 639320520 419811939 684222428 109642579 916331037 121154034 143035990 821753319 555772201 877532891 212308577 466670642 18214531 762939984 784937428 161308334 917299708 182484629 687502215 943029145 971023471 545829639 276041512 255454746 23901352 113401870 386280718 207596701 428822468 679953997 342015720 403096649 586078919 65398251 928497470 764027466 813838874 97436312 204767749 77894493 304911767 204865300 219872369 567726745 433792015 609655278 456700458 425156728 644559724 134004990 206083418 59959766 616332626 27888580 383884956 845894804 446145847 366790868 131749487 974807129 239038057 725222748 33763054 638784985 252484364 945886366 460164986 518347056 95516167 642137347 694886740 748255215 395327345 355157700 607175726 986477159 381429242 339754428 205413740 67611305 494897864 288643956 402785863 365265102 14958569 583325274 649825488 638877826 175969415 68563357 764363814 757138948 773151709 865003862 592243896 973339114 323716035 520712691 766704454 498186442 457937226 377819490 173370687 72476997 356537753 665462795 117614164 817666053 73600197 693932492 650190647 377435478 717548953 455514340 426897731 652559381 518692154 741671172 773057970 874464092 820255145 426879953 842335888 608042925 941271419 503636361 148849232 775515750 742365276 73570800 43705362 608435332 13963119 51003845 881297020 507740604 210729291 416530957 652514785 438990788 795495567 879204146 264728678 533165177 133094943 954992776 403107861 155907097 676894568 183931066 750148253 620183310 432220462 744931353 177861751 432501086 429607287 619458945 754456427 25772888 849370880 899521364 562090932 318241959 306471327 496498026 741788169 620088670 603773483 231424764 790850893 137922460 509110500 845802245 430327254 454132569 922974299 2502699 175860363 646239888 841031000 357259266 882109090 797774500 965457148 608641970 645073899 309472993 755995278 957725275 148172275 126179117 418975733 737961778 356145638 824616182 258500895 781785276 992669174 184823246 879914183 297461909 659302382 867329298 1595366 241027472 988784952 72322952 643124135 816857419 63577193 114501387 985204727 695136417 881416565 432923789 333316043 62894839 710413306 57208633 431460437 821755346 790576906 378454218 136766311 695736212 287176003 532269249 930643185 900302500 166232602 807092360 512058037 92963193 71729387 665422401 738685004 966566824 432827844 789210365 854585013 401636374 641312983 502695153 134144810 564965984 758000733 159229921 664391390 891741498 323816447 912887357 57298417 209505971 80586019 551576196 803667707 888666050 887930046 473260649 116251506 465400892 270311254 44661396 152706710 351288110 330399012 272843954 971441063 350397639 697659878 310196844 91485934 218456337 916273752 327984328 737552348 57178377 127224981 798541805 620965454 326268221 288608285 836659412 181769948 670645113 534682758 47244513 974241873 395986335 704612198 808695717 374209941 724849502 473462907 352198051 854721505 662121108 108205981 36321459 659688217 208750244 903210425 501308269 583483091 475608329 875268675 725085024 873417043 579036975 128243991 316109286 902361287 878892101 617285267 670256810 364449538 198208024 944016518 263206158 132650298 730870321 627332311 74388769 503793473 657947192 333380756 79820810 522891563 593227831 972582057 419995572 719244471 3628138 901378450 375718214 616635358 679028357 225953308 235132215 546268976 443524599 705794878 688399953 725168029 972902014 435028455 278236118 259846563 377385363 145387105 405899711 938450460 583610268 236222920 234722014 657984596 202331246 964523157 855599229 427767892 779577153 917819701 651925123 835192973 618126874 57040502 133250611 335019931 467145706 299925708 5898944 700150987 628282211 875174501 495926330 524960911 721370616 754876675 125377041 125504528 261535671 115146014 286800845 716634036 841130845 344713057 107911072 372462172 876528574 26758537 236993674 740297544 304292190 126945035 858329615 27577722 204667068 378287047 554587075 488733569 860390563 315608151 229071352 320428683 515250573 181234127 138444724 687413063 969392534 416617611 968356031 231497736 20767117 9275148 857219505 961075356 169913711 651698861 844294814 655174155 210001596 96026963 220030944 602661726 984715219 635466129 661402706 949693354 363600532 367457576 50593883 512038627 459694062 371139221 937525416 301426863 853068981 483531028 534344435 645470826 720446692 719267296 153044820 30233045 159201873 376391438 201101976 182931717 184136124 228644150 338994550 426851139 374282295 881074085 891275187 828984969 213858592 187002062 795677512 537141843 774619208 629756713 648431394 221526601 307402998 187592575 847237947 5137566 629981397 933143965 13181620 231806337 559606147 152438546 479172358 423422568 370406500 721608342 452954563 455311810 705533334 872732251 714546210 888210030 493002369 799077468 632061424 605002307 233700761 582998832 363456496 907458135 400049403 281613505 295661184 549981662 700045979 730928214 637794100 94164533 719773400 581783953 822891457 610803039 19457577 609173793 410403941 391459807 170256815 621714424 134010036 485526296 211302830 681763775 143745212 912716680 158889948 265703960 872108477 343053645 412260553 38585084 964687664 166044596 982810467 42383836 856043400 359421745 329502593 924004060 232394153 463526889 672380736 147209262 123954973 591307959 703801919 25905980 85622889 650565057 263489334 18769552 695411157 695650835 480249450 948407570 520974614 921391258 393547135 197770932 256153582 710100744 949323220 805993801 589202838 947262530 20591590 775089154 429305795 809338862 368976651 334919241 384382561 540537743 931840032 433718321 641983177 9648692 420266389 108149069 677553266 498804098 521183230 77594746 213182214 16337394 474357017 900408634 125979108 489885205 553495397 104983887 122527880 122766953 573504856 649652307 453361151 717072073 13024472 75359137 434503587 398257686 457319504 962376184 880312313 477175571 47454634 388920154 529355058 862145968 796838759 731614596 846336842 250046846 117236828 126381136 643547551 631190515 96956011 586035969 358800618 575936739 285105700 785771424 244266462 162202548 175382083 741729104 342485771 979920578 554618825 453636324 920222817 467441997 583136793 884325316 365545702 833811450 275034450 849832862 305797372 251882569 769802869 170591406 411497271 588946216 531067245 864147092 814073717 40134868 887586897 807098611 289332099 577251653 796037283 841442478 451414449 756960487 884486986 21343305 716655752 590128729 51955918 454573721 317773221 273385971 588760685 599281094 328110316 563832609 627455318 833890623 783636020 580478523 385753936 140650875 974089685 913733629 124158067 789413530 265555047 351015536 867413124 597029167 560385945 389118228 76957542 198807371 75154674 89892054 773402539 173271194 85529675 889717512 124281280 147348630 712232415 898196052 691675133 418083724 341306764 240527631 330712759 624307294 224027836 706153279 412548904 744500118 654012425 64155809 885168678 791474456 860261112 383977385 816321758 338705243 336980508 61108250 754065245 383666627 695668241 581714763 970718736 74545409 771426920 298086516 934396400 474488747 755385350 701250736 363194509 825672114 573248894 803493499 979164804 503080619 937670394 502815588 688230268 856582547 261587042 820698316 186993463 541979926 553570333 655401969 250449387 839704209 17124151 562439824 866013650 977990780 153557814 809866782 247962019 587745772 640880249 87086854 723215484 159651796 478819821 105591054 29982372 420730039 343776203 138607327 965083859 166548495 489926589 471470697 52679378 672639401 905602996 585910526 446612077 350922342 496384477 727141662 854038056 993334401 530505517 979000759 742239019 971708 283709862 645258567 193024601 787474570 353753346 721471086 940737863 187945723 725197553 43893522 63919872 403170146 925518821 99143346 264263077 577719573 944852346 472574845 580725964 593084753 127971735 777554412 172511291 601380098 501456758 875782407 115694582 241350721 88772229 877069588 997099283 272124652 709879131 262411150 840936067 883116441 55559638 497157983 419152511 840427710 38263542 364851637 735330102 780577215 775181024 315405910 766513141 852421937 792156517 683314910 169629996 153474463 531273014 474234445 104012933 453151352 122777068 141311595 250274310 353893973 745880297 673885883 278835192 219391812 24828894 789367989 947617505 607165544 618119387 292598803 492408201 19350525 345883246 246795196 701194900 245105475 787561548 772968038 206649613 672170050 350749623 567072268 799154698 769819424 749809850 571038704 326561990 386213742 226198166 609521735 438504669 583722909 289538381 204001830 546458957 390394215 208763859 824954489 345829563 806752856 280371664 939487612 61176372 3895628 584715016 336284740 363439113 28171444 545051990 942312623 591508192 840069385 406910295 171920459 300158722 728076718 911567056 956986392 993586226 832904111 891350611 805023277 985983695 485177008 686090688 265373281 224548921 246614765 562853600 14656804 161028203 760291819 836015260 500359020 810185777 520889645 909691925 51061960 973178659 364193961 638078536 638563017 578778992 347972990 974564661 913928454 979540046 87092820 626110725 396316924 607203194 15092951 99867214 225648837 549295435 188502928 570972933 758969369 245317507 222085820 775671586 690946669 862841242 191729667 145413282 425657092 623243722 759492385 165385939 276860910 751148617 567358931 800764244 566504262 744381366 863964716 861488686 739824328 661173770 462506962 674426946 500928443 379844325 982818891 463441763 102428396 313132234 591788605 424498277 715714824 995354687 608851474 747941280 311784832 733364066 553414035 764432087 797088100 633278233 882108257 789100889 326055971 584870459 214371681 369450805 270681568 597759889 748191953 800653770 142749608 380160721 814034177 380281975 143146240 786505154 850889960 306193488 25374474 6448262 860764445 540749228 719513948 222023118 955832190 290508696 448377252 804442080 45531668 585933387 284264662 510442322 715466931 76264567 299183093 413079323 535955921 718851732 17806736 94723435 473310293 430235733 134356364 652193685 886958476 955659462 136470573 497701532 151149115 93206568 179682579 459418720 594429187 709081730 730670143 66345220 959594595 684619136 427757689 460041459 334492509 6081800 963522131 103351560 951592431 986162302 718533235 114561144 5573634 815555925 401863861 618983190 907682209 720109236 234181406 285149845 422482192 833434676 311307463 149308688 302281864 415395516 308687541 888411179 631053201 499186063 517765968 751161834 442518720 479018827 66800047 532951803 699563059 433026633 147776368 859299857 664809394 947452491 497520685 28100874 506288729 560971032 179171343 139187310 44231463 8782762 997703418 59582404 746701169 278917722 809258624 821126274 731535531 831960120 478579117 250815092 990234268 938513222 716656314 21624982 658763601 781010703 254421130 775054886 594535240 26645270 643897936 932198656 10103569 729179548 119993690 602580054 939267374 360007584 799237475 970309627 671505352 642261376 161609471 872773853 833799890 697055685 889004728 451602565 947204687 390053009 851288683 315909264 445220814 410551018 869544646 492492211 641880169 809032980 774220434 616405689 463399262 480150595 18822814 308645298 656571208 902890747 29839115 573710065 130780636 255708122 791270685 347971795 178092290 494117712 602540392 809008983 584947524 336715773 147533484 331293097 768615489 170125362 56108399 966407217 311184541 149564014 852006951 5050857 750270138 577721149 279582651 221427888 827499192 11252428 568758065 623973081 433759116 762134356 849862065 295972397 466619878 69734663 979071473 747959687 669978747 683149132 383915340 330336835 873719111 551403726 963911572 376768807 95710716 934688854 773990700 185249190 326365217 923296448 696691244 634537800 818432003 595287917 470420241 943429077 435571154 937974333 36086442 819905470 821924308 359217549 232613746 706679039 830514568 580249833 784397343 256045478 486948728 960751863 485856750 656172157 913843960 407755130 824121860 488393342 319566584 72202091 779797936 940094224 802061284 85475996 832847320 173037588 286468917 609022519 219738541 235306318 723068410 30361649 582893426 485954770 779177536 369456015 532446324 914297183 789186547 131000888 693347604 838201000 753541636 383956742 868116899 115456237 724090807 163183538 791956347 813002352 230188358 666279585 550825883 608761022 830864784 761749401 778265244 229423114 989393583 975004097 657708046 808562538 787811869 513017695 802151460 690707992 739202403 726495365 37678626 165617050 451152585 993411011 21606797 155252713 320341223 63553430 863359144 307347664 487275836 573926813 354809101 264153322 194183674 900766717 277978674 406923917 923592627 697115060 609154696 13555666 313185701 812998114 900831350 572696074 400037244 369737775 661384810 153388495 626435564 639926262 901926403 848001827 786489748 554429799 913777810 1616935 591187055 48750498 500756856 39025132 188972920 117340108 275632702 413259779 819029217 35277038 510966175 791328932 640729142 994952945 892877097 65402574 687968920 473814924 10588298 562246790 378518280 351297434 65951435 624980934 988004841 14601842 346892915 710310206 226653605 935778382 515874785 974510160 810818319 757597813 551747276 489585527 782849242 510728606 804339152 836300156 562830029 89719493 196777729 190345608 489068214 627167451 393263901 20043952 582782295 764647572 92216515 113750185 563939433 557139311 530782113 17023378 48630425 548580632 896996073 882182153 362778134 854200145 997557500 470724491 728313040 866055475 958628684 837099776 351421931 697372279 828915124 350654396 776802989 433072715 562805010 599415653 433214796 666480656 786685928 456949886 875950423 96239044 111204833 166142756 510069186 403552252 179387361 268502775 342857614 334596610 91469811 473253064 233472416 425625384 159012775 956313843 589037064 961635695 403283087 363916602 165432023 333554379 912446666 435292913 193422733 98163793 818383206 955636186 812200788 182354806 474479466 234872369 96409373 341022689 233419009 931258708 558589262 464299723 59750930 594974674 180218084 193627154 848209226 352976249 844560182 973357153 252784514 461300501 102706844 718644648 653371443 326399715 757690305 565507982 6540153 34670858 529352310 67982790 454840649 505093582 680718905 984563095 763869152 106275296 954488652 871871468 830156242 183739222 852016931 257265378 934761455 910713186 886631884 775212467 369842152 678503419 678478390 290968225 471594530 965972470 649176494 313496318 849636016 209569396 957248701 436984903 819286326 853666739 350958702 945781661 409461139 906687882 414109855 360504655 219590745 307440955 376382574 617014472 815066892 43492281 177579757 139932145 729641318 712590107 564398198 569221016 339214743 93261957 393780189 381664811 522181739 268208692 314026265 423443192 492942411 606460373 159506543 248152973 963015604 76298589 328251562 492671575 590624414 942269734 962466959 63135739 438673819 567111673 922294551 133608515 712493110 310252449 670649772 199239932 107502873 822300920 848678783 796035458 221585781 672423281 320196586 954177551 882759732 805166675 176965994 520415539 43660458 172597132 956074037 195460616 648652881 859169317 578397899 650671075 980438619 283968777 120187631 364068286 5015583 985801049 907755317 663009295 906409812 700556104 18102294 693833835 782357628 947515202 548235270 593811617 448435549 928139012 88312817 956811863 705381800 239228330 356005245 195759294 707547511 301255840 781446512 593369407 743752955 291072607 731481929 197803499 122761955 671324132 756084263 160792502 844245854 109605946 493554318 324115425 249724390 19768710 166836360 825883426 666749611 707520826 846405129 749142828 898071222 738727175 665257930 146853305 39954011 314953356 842803715 447302700 202872578 556348670 598737310 667385728 657669045 814473604 436454661 663928532 960406468 756550174 560298392 712757762 370621061 586581717 239634076 248480971 882385256 630355829 889687626 504222815 386168823 644437607 283222284 94377977 123834909 559975168 858985609 974338370 422648547 827541969 153944255 183238014 975743399 747158994 121082833 807068456 683481378 149331421 234619652 50008809 395850082 838408062 52196667 498346445 739845974 479463431 426720645 391494036 107881294 999653984 65785345 655287722 803756898 357372633 538096991 43268620 601351412 326220509 729977147 876085226 907567123 110997613 742944053 798931568 564602003 577057396 213463214 384864299 626690749 465362797 407694435 974569192 784295029 897203986 250234789 225516030 181736542 149569616 927292174 199015628 503155748 535886215 143777212 641883845 84435092 314235452 446474810 771087902 426118981 85945308 622985651 945072011 940434663 962497724 706905639 360029834 613127966 283478416 328391176 882430857 640757852 553980232 701818917 597951639 25007125 370917281 278650648 766431124 473505597 411683211 933826857 489391162 791439366 1927293 652566855 981931361 847059709 875002268 515836525 981027644 421885206 671259275 28726919 519987497 198214858 446847335 456345181 149120054 149849913 413972514 683197478 105473982 462966842 376452113 343787720 936854972 930783240 317956283 782816957 772465538 78747166 130786481 879569504 719633562 989346205 104961000 238081444 910495281 696472344 259602629 470966035 186062582 71082778 787710412 150968034 159370890 666137652 260660963 125258713 789676523 680076832 677075920 583453441 272701204 484337717 972532657 740108299 358658201 224003691 892384936 966082822 885890968 274391708 112840465 118345785 329310688 728008446 341575764 975913789 718855714 50135322 241790691 393513694 709111056 787955457 922322393 593116895 133027284 43026180 723553877 310754222 704499198 894582833 308768908 931107604 864733334 291640026 352880784 838202293 574491797 45688781 492847907 600401676 297515942 569564769 348605238 143504042 151468378 968153741 912036333 882324188 782651809 416406352 899153982 799516030 238602241 756085498 199411602 157212277 872554401 190992727 221970392 363932099 724849370 194555486 178856714 931425612 809542240 26561693 507197950 577008288 540564957 999463121 96943644 354730259 194097032 781555248 963049093 80201311 614737237 834275688 261721026 842833209 162068433 614158664 678806792 734244347 571788263 689156463 954127609 982266671 660693482 952799512 970586726 814401665 522385491 806471667 92333157 32753704 254959789 434430888 386350599 132273595 988393028 174853898 657635792 856951229 827545662 614492083 393634191 62633694 240684746 155695622 648875450 351242384 390142988 424694020 938140926 445720994 197779146 125636902 585346997 507785383 380223431 439153384 51969915 828984826 726752959 567858040 865584901 742482545 294516914 723097998 10633940 586868099 638366122 155034605 855057224 929563733 131128851 320342350 103009118 966248963 114179137 131589313 454454792 449366940 260643884 601622677 708324191 76759673 781546218 352759440 787582604 128712611 387576673 962928898 778467978 475233503 44887846 949688813 971058704 495120501 577719604 273379080 76176675 621932371 919604361 726832227 739306604 803164997 127144583 886393885 789657821 457611075 695166621 985060234 454313885 468569708 625732157 864204835 588762424 736628830 202876666 178793062 975608017 725605137 334642893 594561330 191810044 463528202 959257356 226953431 522519151 112171608 765664305 173549483 845323159 852627742 438831481 641552090 383646857 419572155 962888619 417255459 223762692 696809007 471515271 622514929 305212223 227594013 862747075 384376324 351761384 979286206 135971882 124715728 839245406 241655946 879263114 379558820 871658038 813303856 700757480 698749349 171927032 993950171 848699876 188095448 689725575 850891875 720738999 775958587 133793681 738685412 565866755 72645327 753860474 441564738 216806782 771364600 274230089 335706033 318692731 487947920 61647129 842855180 503803390 637099177 976053318 498160633 613350762 564655340 377365415 196731720 655393981 772456270 346240098 404709727 429822297 354204937 310515704 99477503 564774335 961852898 149914223 931515320 663770968 24195652 139450983 342803212 207863458 631626494 35065410 802772972 453166117 618783653 150212744 673818420 942093070 856603627 110017755 914987109 99965054 373282931 781326234 851631792 792503965 314680145 961675370 569196436 386253904 464585538 762947408 272765233 881952443 708162713 49917843 950670079 228345040 735039161 410083545 516264921 494693501 391280426 213964643 840059154 957208069 103503345 899326355 372828558 505889784 831824903 559529954 486932153 586274358 826889429 526515662 978165196 731749969 282201568 101270015 226085685 700091851 806895164 829358596 44597786 153209436 671399100 438898809 978120669 8558882 376043368 957504947 248857934 839667007 149271809 876048002 362359495 857534688 108047743 623700422 945385595 272377350 342604323 793461567 460392716 905683775 272754594 92912724 593816336 434696257 457559853 576590857 243206220 166942040 614027067 896503051 370241283 100019467 14130058 817556559 271224878 845482221 654435607 205933493 727755160 767473199 280909356 999099779 760324627 981246283 906538341 741450972 597640431 540844574 73308491 562002901 596165803 578652908 63636193 959945202 33811644 673177727 285195142 570625167 321761940 420156211 20879068 771717114 507310145 767215312 143054467 883046676 211568135 91501518 921691571 323675055 76951888 827673363 27808769 996418910 603058188 14077324 134800339 481472751 586707882 495353663 764664989 699652215 32751288 304436692 149859714 204251500 354495306 711215174 115843128 509891326 226869882 554462359 726292297 159880890 751293281 251992648 381792032 56399356 152150447 325442793 966134174 638703218 481503776 229600573 248675189 876412854 703841083 547727358 8394729 70099349 153556306 606535854 592100782 106694174 405619571 875938087 702741646 610685954 534408163 68196721 781719214 84766196 960793757 426054202 464576023 69818411 248415242 372056117 695972062 701823062 531215657 149143727 552593614 99809226 569733800 280302413 246911067 437891810 590190691 617813554 939092851 248408338 43149294 464803463 559549648 133800692 294218420 117373521 493028340 363962755 81209014 621695354 881873948 34548205 461911684 989805634 186603953 989917223 408819668 581731416 368332574 641260521 684410729 799139 765389169 486495166 569077867 495103238 311641977 484996693 648923014 899741068 429921388 258746659 592450660 657135413 762453491 763037165 591607979 42139874 424925548 900366479 916989018 950521668 977039553 497799964 768940465 687036028 329564772 312675308 194254930 389109808 337038444 17201517 954252974 339443395 422218358 875796565 724668652 652530434 309207559 311021020 376572484 262383603 397377862 401439199 713155863 90587980 221402614 85470226 477277883 262929138 6211200 16467796 126321967 15110089 382212756 286329106 615295006 231689826 764358786 591943279 900691137 10866034 17838563 715436151 64967264 500126055 344973341 302845249 613665696 609732762 276085030 774252297 86224679 251187355 876595269 532896693 378591262 208803410 261876063 135090717 933837749 967406412 524021398 660721461 428680934 376496587 903238763 410835755 490803330 327702450 856540352 640923223 289472283 299937165 431316601 779951321 840341441 680744951 33478141 464733414 92846794 641889684 794622113 874596346 455808027 748113597 424321518 179525496 257192414 815616774 60448357 190625269 478513772 116910801 700337043 307127701 641569403 392113727 717886883 171910701 603416456 776438040 350465039 581759571 735197761 128629593 363554762 516219579 243809420 718240591 459554348 520291748 895578085 215805151 622906116 961821640 501610179 231112716 571014835 669257548 762685864 637414842 389184259 616828751 634196789 754715797 163550721 195375914 954217825 229927878 889431563 412367611 845977465 206076378 685785804 588909330 777637717 24473958 599698448 812705929 558900017 480273211 594852078 756627285 381694701 834090989 69969486 962428276 604416086 64120658 780313509 955863240 878303544 678313106 247448193 598236456 7319449 781994923 194422688 297661801 74624569 569542560 546426918 259335889 125577258 897399669 518380816 871322029 379013339 761690673 204130278 780556754 641754071 637292369 157944588 230460519 524286590 4623047 19332236 936445118 604280433 265465375 47076985 457304501 46274828 323814323 925133110 372466865 930531148 742239252 486269822 934186569 76726683 560857821 361909134 791909380 366788250 768743248 843386323 368539855 282705504 655774726 59495121 156899262 484096156 297049330 382651319 932435362 967959421 291111491 644668316 138930014 418358721 833660407 942433480 328403620 270580903 565539038 310244927 973251747 435620170 750668171 408729114 444292095 497772878 758295643 133080864 81506904 725153616 663555914 828783589 287242037 313426017 426852006 777579979 179575190 554468882 60338984 237083097 149907281 578889481 414060563 265656066 727957167 948529679 380431005 87040711 360551709 900078211 840696732 132192781 322863597 695227977 281715184 623019256 430786928 436781163 65104950 215349897 453861235 64424632 862654245 334104846 652623858 502516209 866391017 865525560 739519715 427995846 191972582 200950273 151386461 903635624 272893005 442657625 406096368 47839566 944155508 737125864 774037946 908679210 280324294 146709461 893393097 585170390 156353950 576079874 52272816 862160271 349812792 969150244 667397638 25103135 153365605 109363414 173020328 671168219 195486032 921635642 637899926 939442149 323434504 900260775 795128561 16644201 410122814 8467825 124473759 729515908 289688969 903675893 160188196 793292185 688728106 610685874 318745740 321946251 63875922 508826078 837428858 39836968 729976134 4799405 66203037 409748357 376261736 15883151 642502254 370230310 98027902 926241658 244829920 594045805 90714964 599510906 18596132 412166379 722023923 200203068 186757806 824214456 435130852 92289695 213303799 605980335 548390901 773270703 459595931 916672613 140373572 637761174 279628702 450138968 291943765 506144747 498104968 854371944 793533029 889191955 848302086 976276898 600123651 167412159 316106521 819835129 461401812 732113031 639909173 499774712 454668973 476596817 396569834 954078387 819963834 307175078 636125051 787094534 196287261 443852710 887966559 796260839 132272082 954250919 806532192 669131411 418914057 653784718 254518156 577490706 714826984 473187773 205813147 715000570 727018501 791807395 316127305 983362718 186691571 484113676 238539635 389065220 291499196 806346261 603376499 33478209 458273996 153116494 903776652 654153830 124881175 258700216 511825286 779118546 950485881 388910048 419245614 596600301 354039399 171437041 778053210 967233217 155985448 350262912 890677147 655028583 589919369 682130904 477354628 33579352 950335364 856269928 290215056 746272279 56536267 747007207 92305629 405659800 91260473 307971955 21681720 93221095 326894880 741166698 702311613 342386464 395390834 388234165 347002674 31591978 573426563 400508884 99784513 886049618 33278745 119483354 906715208 108145079 969422124 52195002 905396607 869135726 547059117 888791625 597184749 544186890 430699028 399192186 311605800 215790442 273489367 941961251 319825429 602198764 345867122 550210828 852382204 480533953 278592724 448848280 418708680 762776795 865421395 175889373 62288770 985735967 918155169 625449615 180166130 346326834 948372180 224951319 338509783 356873038 35606637 793793785 48414778 194174600 948242136 194526155 193636989 989451516 714320700 236109598 577688897 114174717 723962126 531735302 195146843 800772667 730077730 350107942 368148792 537908059 746536976 264938019 722596112 979623540 73004258 697555841 446530987 130083976 968329980 637849563 192494961 770293768 256201962 560362396 630593287 917911572 504133770 364570276 519197660 891594517 325842739 43477383 437727116 614023633 31940893 696216843 472650810 671516155 945861674 540335834 653800306 879956057 634778475 486322073 964792480 334712080 101785647 400735848 594821288 782399174 142628701 356472056 350459842 530845630 55534381 952862337 879032136 471651294 877695579 756597543 892855084 940633002 169599866 117663254 273432492 368669347 89999379 544086283 80344858 711737037 890670567 456746466 444701200 266450664 669330003 210054557 532697369 372963945 261511390 325105302 923014283 602816826 846401395 310874755 63690491 672331168 518265348 81481303 640442648 800052316 216209990 963678433 282321497 4481487 81752733 828684010 182975729 898231170 97114122 329112579 28472789 522640363 180910616 84912372 557225648 472115445 583497089 962719444 210308122 663041579 664049980 673369739 770629009 693595092 878916974 830816577 313218195 275789364 707229634 682408428 477825963 51690275 609612999 10900378 839747950 689571402 255452457 997478443 217464140 299407437 110860901 479074026 283585499 673535806 159763151 212623069 414645950 229917429 979080152 511499697 631841221 643599942 590770575 821007878 611211144 841791310 94449236 254205493 393657012 450895818 85579398 948297375 312795831 793874999 712910467 110128197 414167854 286860412 613027055 721405581 361092992 139738226 868369211 784830824 484438516 119547546 250031541 386421084 13074797 637509372 965979532 168271258 276347657 112622302 945622737 757795755 297838981 966670817 714991799 394638425 759158715 642387528 247745851 213377128 338955935 179301952 333253428 949165542 291390350 140442925 467828561 23716376 918769266 341477835 22114452 723828782 269911478 664874350 817045513 639398644 408337552 55406299 393305693 962620532 74174517 916882355 976094856 344713200 356164282 540521047 96754521 819538505 120359136 694152443 875961599 689092032 360742021 355146673 574141858 335729130 897655449 538316212 668599961 668321524 902326598 727937015 558165573 241722534 229740377 16503856 609535384 851113140 412530943 427893037 787002213 83153984 621391 395613623 966011590 458134009 506847837 684426123 310176676 163346653 255921702 979459946 331228530 511225136 940594712 753745165 436539624 559724824 968418898 224924951 781779751 987135132 503215733 466006598 901996572 940764158 381452272 787495420 505104100 739963526 637489756 882572441 432493993 275284165 939023826 771431137 660163920 761883509 662141894 307090748 713209004 441097643 477980446 455719109 417370856 507311305 83531842 67301459 799797569 163943602 720220148 308185669 947771777 419606765 942255431 497370841 82199884 720339331 419386339 270827915 935671844 137644103 153742093 75163331 442924421 46653126 870047550 745775833 909244534 578432302 172535875 717512552 295421498 384376635 660562307 825942074 505427026 581474376 990959546 906288034 350851450 983300568 320263989 818374756 752002432 271727365 170697716 28456381 758621571 898864080 6918970 275237185 382473133 35080868 622803374 319996904 708578944 93873303 551594633 1964982 787334708 330419549 150196121 452348363 361314634 668767669 536745493 740109347 624538161 218905946 539043620 416038236 724514570 5022978 873486101 797610494 805659213 157746086 10341914 531652341 266827769 18293561 318742575 203453689 244927830 972343530 547446776 677709599 867586324 820776161 73182809 255479677 250994585 764145573 854887318 573865998 234838292 52558693 6734609 712268963 938077147 346942985 872757807 64494782 519145019 249753051 756274129 814280159 128055096 718941713 370212074 36080636 987556007 260991686 203418911 321455891 373824833 437539830 606070176 214403809 124165241 2323256 930124640 499423257 290791681 806692020 403040798 286669578 1419368 314295202 618750210 84583544 447054461 332517842 662952302 608314792 272671498 786299788 570801988 287739808 968704619 774653891 262707645 487748637 772503344 368892669 323924485 244838150 633593190 844719318 261360493 948810731 857968409 499050532 162193873 359296159 682513181 354138841 52194282 704725111 845937193 281553679 114741981 759723905 26816316 7935413 650036695 682785362 468849027 904945963 390218728 613847037 268454624 702126848 126659331 643631731 233841051 314689202 128085046 424419650 601499266 904704500 713223096 296089434 99725153 877705909 610958510 36543765 517426910 403701067 610085730 96673612 168262025 629734529 159223099 831536293 165288832 255552158 302011075 989336892 219709254 5452652 151065696 161926243 317828093 621563254 800605260 362502710 53505439 612025633 465278862 167717025 214312826 385109415 634364603 716269749 704157809 166099758 349282456 165440041 165870311 332233272 198938833 727563469 347162732 226495387 371634313 717007329 698482715 906138031 751409748 724513271 555899618 149190674 329679024 262459778 107492923 163165468 903819878 316383354 374603274 715764470 305161050 433998694 539430504 260103475 537573566 371686315 827505676 340523750 833395316 421766324 849433525 367044780 879037569 531278039 222734530 298695141 231784199 226935034 941108028 203397584 29740142 783997592 881075344 81931067 604345834 984437686 359106284 335086963 421418506 574761334 787866801 524669137 26368425 124620980 428185137 255141257 621334223 11306765 352829839 784407152 139375333 987282511 830582025 998548643 760651174 417672511 835474971 142132660 977491260 518715734 60619874 372429471 780276960 978529362 687854901 997449835 38064894 740137320 111505586 266953394 705430335 807649658 363790619 735922085 863910794 641822715 245562028 828649834 925591574 189443673 824502731 196390588 884040715 928404428 694393892 292007654 277216528 273535937 289709048 633862347 49744439 274556301 714295019 527745811 754669275 759822674 286606055 455781430 236301891 186441128 125911132 624240736 320237748 479211731 855182155 430471130 285798165 292499240 172970389 290892668 706250587 159483114 769126107 202138942 956431603 631990473 301020666 764250573 867882408 111923473 70192404 730938395 931052902 508435195 549409683 291155236 524101639 449920969 326669715 704985368 361314454 702121315 689167891 833397943 955006418 651464913 24380123 519488392 208987720 410777244 365797143 234735929 131327339 908338144 241175554 36114118 685583779 409973418 255237488 463717722 528155351 50245821 103209329 803985146 764358871 194398441 407484136 590678035 619781261 316527715 542870586 383229398 4762049 607800928 149485973 641134458 899526300 399646806 82403964 393940789 754922146 672851836 407860359 737262656 98929608 435822723 588828243 769022148 376269424 749808878 441113510 979271409 185347377 85822091 787182144 195334522 468510286 509243966 774286194 848042642 886495167 37291750 955253039 804416348 964989255 267546896 67559344 760568938 482575525 900394992 595046591 930787264 94528748 404443092 462347183 482332715 45960646 879623134 109753429 698631864 725642101 270184323 841332460 501083505 524344618 418634000 406721246 266844888 83955525 149706292 418082539 372785311 347330287 62968374 889280257 649185096 577285883 213881554 269502350 769121454 403037159 395923233 590308688 435392739 7695646 132021482 167454361 622725499 303366077 726070917 558178890 145797836 409992653 969614951 334669031 698218672 252457745 733354659 440771433 456537153 559767198 365168091 519191568 203066007 669722480 897790816 284688606 325866566 38775800 701170316 296490221 240447549 191278889 156187506 667435091 117425008 289095494 449903626 603799251 102581629 514305449 593947541 737690945 965810084 672942885 173755189 15439418 650272856 842599923 975731483 762895360 276079853 669146261 314827062 295119762 587481631 159574964 846417568 665817706 815143008 246999451 82111668 621448097 459174789 208178551 266803962 92299954 192630395 368518338 496348466 987273690 38755840 870500881 138375831 261106162 72827608 708357453 339995591 726116632 521582083 12374795 302618950 941731859 851600601 542450885 363943906 178127529 880244538 100411860 689430303 724661683 705710921 11304421 845208483 769967038 467868419 51554995 592709035 44632836 86597789 51291304 245520534 341933916 498937307 846742061 287077185 350359597 853107674 528259255 451037772 747674999 89171733 611296501 471915988 447954114 946084222 824220611 831243774 58538538 326922472 20073421 600588069 105823831 741435874 303727118 860347633 133475730 958384464 105624938 132334487 238621436 462137120 536419172 392466501 574801118 932250776 610478096 757274563 650307346 832769580 448607242 356150043 356164938 628189613 190675214 631756992 9221067 574896625 77381528 375895862 706101030 442308057 448929641 837985172 740049189 581060259 516927271 416013313 202156752 833760659 116280276 197542572 433389841 556782256 791593047 735669342 717984328 733101522 149088502 115243296 255215891 668223912 770091389 841827803 194798837 499790281 992463854 539115414 668412393 14969859 996554880 350081203 430836582 75148286 924866683 164580329 272477225 306766443 701886131 261268743 372978098 660159789 716598798 930750065 937466917 786590399 418373054 989897675 60135834 286067197 830793203 574124425 991858820 20418196 841123118 52222262 99517093 890139031 499336168 46216516 460193721 622109493 339552355 141942736 867269072 35897733 620987851 953778049 235738025 209942602 983267217 581960000 737555875 602430197 100424541 118059776 641634979 173969149 484167777 890465896 576575402 572972400 438863217 218917901 846707128 973540373 150226504 256251753 727046839 258963127 780908459 415162603 269217718 145519635 345075907 811068243 100546564 878866346 841523108 36168214 473590402 240672799 94231929 704391026 599793504 104994627 936509267 579772433 976785204 719126148 939292228 317099266 603653718 369131811 14593924 703023223 299721615 470515298 967180235 398352118 570106172 202878191 198335779 863232999 885040667 494722467 866631363 443943511 225910702 42625110 32393443 921542679 215780252 440174791 649434800 821853549 126052809 954731286 556525338 392462615 577528602 360338507 422004516 505972893 928998964 306569536 10864135 938828644 899918956 81322167 286839028 643332014 74972423 343733570 466324356 598772424 667784081 595941094 471079652 601070247 704818724 605317857 213667764 205976636 525521888 163883921 517640254 363620266 613643058 408984211 514222356 897091829 780467039 364068664 136963073 898533684 446340722 159295073 535849594 811187856 527485535 556335685 518776526 211335309 444827228 594589192 995833452 593936873 3120341 168131235 707608417 659233849 335877920 147459012 793218209 916589810 32887184 660685812 122335439 520427667 978369889 424266094 612825770 757016360 335200758 762776099 261840821 585904137 642479019 367258443 153373802 247777923 525766036 344752061 697319915 857113654 561388569 334322592 658522606 565224108 324072562 626881604 288558171 586825650 153067881 816067886 243021776 58286827 276225182 425846443 873386380 612642017 27210768 76645731 175886537 275653911 101889895 155836956 828773935 909742242 618280759 195994197 907044652 265290651 522957211 206583113 539824723 557256945 560356752 590716455 696091093 303083095 67968333 608594852 239855950 835468331 94650186 399016391 366067363 3611400 506799185 810512807 73568491 12038561 43926092 984226304 39968280 631644901 498922462 274172591 722998183 277052679 162968504 313800556 396516119 655213274 89217682 541964734 261924444 565228296 269443927 526532940 318001575 343798806 834610993 291523838 611294006 491844032 143966894 328217058 864056002 311582263 744919191 923090833 698966365 979147850 851908676 159733992 759356710 313687376 868015452 942229112 652971835 250694937 326736916 856162242 280774271 666794549 473735278 707902356 886201752 481028567 799792997 646669939 353609340 50412309 391425715 294500891 802570799 274018470 645158776 255791529 352984256 38753407 634043889 842724702 805188977 566636110 195541607 628234114 182037478 450199723 433804760 390939018 908612471 281210540 763934590 652868755 568355977 447500808 216600348 784516302 504738694 397667675 59349570 250249676 267945574 633351784 339265859 224680806 516852578 903627538 984768970 690826770 839524374 988984381 483731395 744702906 998945408 392463808 526199492 35451356 648749765 930961347 475907173 950122454 200511622 64460740 700810177 623797971 572567548 520148099 626527800 978166519 259969094 40481707 74694151 199805564 764698511 992479166 724151663 640143468 938019198 319683257 65314204 359267824 78342389 541655089 824680412 852742980 982525148 16473502 471557099 409892344 808369187 95438071 186703004 480587188 980473480 701977954 332118498 996475106 600066590 394179782 638358008 587432746 284821371 805182979 459643610 67142655 798927980 145804415 665037942 512100606 764356860 77722167 619265787 746248199 50134115 416018635 337937146 444943568 113360001 133137829 785915310 557639834 923867607 775990500 770686981 585998477 941392743 614691951 355121510 80685421 129061399 347601397 570685870 955831324 477008843 178312136 186133257 696935151 484098013 417941838 459922355 573648750 811896991 559383313 285754729 794023592 187146609 101871696 926188634 508745362 960514346 268164086 231612549 929946740 731579114 896889613 574340904 124254149 705007398 257522502 557763200 57364692 734758820 369968560 924166474 156695881 177826034 517031975 21132101 660193111 653611888 488198899 825193145 324745390 22973157 444831191 53571615 617699490 565487723 383874409 879790181 451800894 560517206 49656061 320933961 904868539 701996738 224258468 233457708 586465099 611425014 806919099 496673408 307823670 750513181 627406163 615452403 953355751 828754583 222199456 448515524 983979083 215027140 158655994 939563973 282003327 974775662 566365795 500296984 446920234 57698487 612404268 182248485 511860282 202404104 727844890 392907379 728625010 2978870 472566410 725147083 18924557 515263816 406379097 424298871 105680851 194267196 941171367 657622413 47434046 636359798 366720555 972373508 377109320 535144249 36136338 599307407 259034782 898276150 266096178 7275395 879747406 54513365 370262983 487390427 82630392 831612647 285199870 587384994 763998534 757845068 936143947 476198888 899588198 104919628 880196329 280533699 295152339 931299235 730009436 37814786 466216458 191840111 460476401 151947776 717605868 443665227 196913049 25782951 162939917 112125665 841656807 747229282 480201996 827763331 467677394 345670477 620227329 137509458 444883489 159851712 62103437 562935344 815165551 161699516 195369532 104919440 102829313 390864016 193235276 195754582 112063248 314574625 257502286 640741907 896069289 70854536 683426352 177551284 911570142 966663569 157945645 302385290 888926884 361232964 424623254 212600141 55732131 931504030 184776104 600600437 943926947 576620963 987016944 934254737 680536026 322696772 793171617 714509663 826380893 281393054 560956453 819051189 397201291 837173641 863328326 699254492 616989742 60674700 718182789 953625305 360694979 301206920 62692934 154435771 362413371 824897245 21625748 890013416 92345168 326997238 496695470 842112362 295047281 433661273 365801823 240880282 743482558 685331473 405838373 580497057 387517372 127903450 336446200 261897433 694189561 799585821 437698085 7921762 262041531 864114138 495694425 753550721 737680465 209892792 570750241 575722839 942497389 360293588 350021411 490516457 189107223 849527153 379675625 459234297 751180258 148885370 562132902 442130788 266681457 410886095 230469091 478205057 265867245 465865509 857104755 170512755 840598337 492914385 888890820 563840858 634788996 151613586 623845275 786024484 579269953 640030025 819406203 666112459 866372224 261287678 884176823 25285921 672243426 950782594 527941230 707482896 474792556 659774810 20908450 605823634 473510988 816425022 523909856 216704316 360210486 992458761 997746315 668111392 977344158 250711924 230591650 964286548 130875791 79890514 828783433 164651870 500559458 313082406 190529568 729335817 517102912 582678638 599165657 956322068 815131954 859164147 972558905 747054467 925749837 569928011 546381373 129135044 460837428 685813015 452005582 489436568 994225004 105288061 288107047 765890049 230110591 605520119 811145413 538162443 620075544 458139130 275998558 255055095 559948186 165496389 495943095 749065091 63100947 693970538 6324359 996954420 831898060 728768623 500298179 765992290 604996210 478819377 449941561 589189859 769778213 373970684 811721432 281784243 994874665 134893557 752571197 215422422 709576981 177042646 833604571 216520514 767697816 449246880 646340763 384665390 650795502 191506759 99433503 369513858 982646385 257455149 353884400 706448373 336984949 985718408 622323500 265726446 958570768 59162469 46638625 726980427 112821025 634154059 290272130 755719029 157494199 907385761 553176829 984224007 486016677 650635374 71134737 364444221 227400261 802670255 300735490 346302774 979244828 832068332 885341854 163446119 652333401 731038375 745138590 92247558 387675749 869616770 541298322 561512783 934260840 540889888 851263526 991441263 224001830 57037484 86319862 220476828 350303928 192692799 505621795 391459182 644245308 44040407 826980540 733920424 991889634 90010116 170140795 10838079 889019768 202722175 86772194 425006266 642093831 662209225 749607578 472291727 324238066 976551875 909213860 495768331 191854486 834507495 512670235 543920317 304186451 488813598 509789428 813780768 126980579 184405483 842004312 547040410 432300209 22809537 736466444 578100255 598653008 358732636 840214941 222490079 443725217 387714188 959351394 619861807 693239575 412868298 100898257 858261874 581778066 17077654 569807944 76780770 500442628 439942146 360388101 227620744 122180355 885284292 798197083 694746130 671986668 506666912 749416216 26943324 258564606 479220442 90366121 867847916 556792013 930460468 194690728 438842883 977431299 531793891 297431481 525647750 883079937 659408926 178480808 953636980 85739531 981229783 324856310 976823101 650095477 869205943 544479733 133365256 376670901 7228998 845348564 351606166 841239422 407770182 278458655 283143360 278875675 483880980 400375544 125837755 406727056 505780442 851164909 61843164 883321049 387003778 786811381 543240255 741550197 199343606 714712968 206628705 953801380 201815222 176551389 698125931 255980235 23108290 996581930 368750512 645248988 890973184 200094567 969329217 397561728 500385780 679573669 875628797 203337620 525092747 811212841 72769088 686848858 604843244 2723018 416235436 537900017 728066680 234239715 673775733 240320584 472091340 86127158 524360392 806728173 68930888 465338721 699298300 896155238 453315349 779641910 427420542 343481699 11499578 792898881 449582797 986468242 507615529 277581384 875452089 942913429 647053047 119291420 587482860 194762384 355915192 668160924 339861099 188798321 403253159 907275614 607095855 978659716 678176193 433018799 371359663 751036958 851264087 694009610 935525705 819724185 815495070 383249685 18885832 184438547 434283118 890748411 758494265 687186552 476738652 822128617 510880302 122404259 48441816 392114590 276431167 933016750 981532964 447613889 559442486 681913515 58615224 397455159 323222023 406695473 410803711 703570836 528536801 420656858 382698992 727754515 289166865 88432589 24783422 547962770 565277830 529963793 310131710 985037701 399063609 480907829 336009356 370496249 593404381 863591603 479666886 366311605 629725391 92105831 352082215 552843258 447928643 408591784 798955125 468575159 974637686 682195991 258036656 230284424 226369368 411482139 438546193 77032597 420052149 788269024 111616228 672368081 614768866 123153337 438657622 911852665 201759180 549278099 821217853 495659948 41723829 116594612 634263864 665817682 546158436 535589684 477069674 109547604 191428248 972039737 523352427 30446277 149707617 824485008 327718517 134039658 12876299 457541028 843339897 902534799 834659104 48041062 287210658 525334728 653510099 256730952 310507202 86426012 231489608 467776195 115364867 706096534 242067793 567754608 472259630 328627870 464869326 370299067 635152117 510269424 84183907 661087417 151296297 550374594 325930252 352298829 132044624 885894246 80797914 903242859 123257624 282072144 836759827 366168440 221430421 796172654 856525436 440788524 518177787 49107034 287333444 651793462 823339932 564468807 419150930 287438923 375555938 939507973 978999478 188586204 645275760 886846763 279356302 785096189 837380956 148443472 102092031 496303712 978798496 561614879 731225733 543394244 283049415 331934820 297409078 50612047 860712255 620199435 706482755 37856735 639459794 256736035 495640094 419178995 305220579 311828289 57233356 946416842 272761786 713124017 371006100 405077331 186564477 793970704 537160594 921839714 416926119 429182390 421965146 334929385 405926287 510253907 641982311 442253248 935858927 351872924 544676838 419877478 659179569 734380022 422950443 313387651 576106598 819191640 949718036 881161917 414740114 290130668 650267920 747295665 305460756 139094873 648581537 964703604 749037384 343664534 100724316 331201758 48554388 231316693 977912198 190402640 539670341 870334967 665210906 924884155 186620519 469681100 368193211 403816081 629871560 802177521 198986412 3770751 965239928 792249121 894623565 771501646 99689384 144572212 608422846 106610361 369961868 935038196 580031244 720795904 221051214 919397737 917277321 828447416 562979362 403374484 819601126 699794025 417202295 723982345 758538495 272171121 128625929 135435310 106811468 620719861 263579185 104276011 891298441 133705371 300815252 453446963 493525726 244400784 883442127 416099772 782073036 933989936 750498372 662495374 778159292 762849112 297817404 313615704 609896952 424755195 312554901 321876230 580521170 273790151 184881754 840406139 117393960 42879105 21032194 3669845 79909252 675951582 3241143 645446729 805156838 348719656 99287410 318031392 587320321 335891462 114565236 605984976 573916563 286032543 887174949 593496804 398197014 441450190 923762813 871063796 824127724 492115418 858880569 461752797 271105654 126284947 914283363 764662821 856633065 894457294 605645168 810489240 539930973 215892923 853870804 515830165 139684791 770850831 489617622 350904314 645550267 30603593 82046999 41246498 915990772 219696115 957511998 682711244 534445733 86588199 461128364 881653415 983003174 650780919 646909889 11504909 456390040 956716458 828262564 831441698 105073233 849975844 801885738 119027441 543441647 166320525 915380872 923737207 291967141 429507339 524309631 21954380 153131118 80367799 154215256 910517435 873422505 559325641 468413084 579272510 470829377 109837238 241524558 306044498 178198773 688211568 313284274 151190039 341188274 233669627 969293554 999833413 315012368 946928100 301797774 165821386 419700238 281456365 345746119 577673116 18657802 664640772 367675944 165348260 680517647 14049291 985403921 878667708 573010888 806487439 401399800 92705314 353517095 170450038 70049458 132873472 355436569 952715687 698065543 477320869 58536711 151913071 340580991 290462479 998008533 410967562 38157142 60721217 659982240 51054794 354950058 855326054 579534652 897995958 239536499 82765884 842201728 502834662 739619524 829481914 391684525 609247819 492290030 84383900 997075769 260038662 289619979 703877648 527399438 311411103 917860719 947738729 1775111 421383587 808435102 735839091 885205061 292726859 530217547 657334284 82436486 706358941 734795169 867135181 395435111 493363126 161211560 893007167 90187745 415957632 539051317 194579676 986341720 445017404 702934834 389733352 481080864 825141188 94957737 605362198 352722165 614535958 88799197 800979294 659907639 272039950 220337545 956804613 363034964 990648256 996915177 856206167 635144464 672488803 317363970 18620637 118137732 683839559 987204885 859250481 107039181 500437714 400391967 136285093 76789693 589705697 569917112 556890772 360864426 737980154 300508017 889226900 371532574 476149823 653878536 143188899 625475611 459614045 180536360 274099194 728127305 99096537 850800863 385510196 536093649 106092179 392205181 144238033 519987114 473848982 967233992 624586863 783824455 315635617 291053736 899720952 520570695 798700916 716710300 443725671 508834739 219716946 522577151 463128304 539703510 656324702 361225071 191732156 574585512 569257982 739844486 622979692 685498886 397385126 608377818 297428474 743673398 159088848 384552544 307362349 928298129 485702783 904560160 264158260 38573339 634597782 818051527 443959108 183543687 264874590 449179903 837762346 703762609 304377637 599010757 544054277 197180186 748540702 429458350 744408067 876844775 213066574 443965181 637692920 271794630 666395600 291192792 537889539 546505933 780862917 33837715 484053477 192634928 297825869 254045015 357287625 484040897 250975613 516150 612528008 23043019 601863557 997758589 198278221 291170577 256386683 40691294 845774467 269297522 345787553 674232425 829507440 895120921 494243186 36563213 661475489 847913844 323137709 408409588 239517525 100627707 624879092 465988595 966963258 362933988 458389299 446249544 781897920 936815020 104762809 688465851 604715864 561109153 516910891 565248847 655574954 314816075 366629835 258872111 722799854 201961262 913276874 750631249 413449926 808447862 213989660 475001816 918380688 576015720 594009503 444779077 903402445 208377752 463272109 622297141 588572572 774998282 81232924 882792490 584320924 982637411 547737927 839679710 956676594 854990196 366124950 427834465 445634768 415000433 391232362 544560163 91304649 272658194 136479182 243734769 855645393 890470351 875768357 475970596 831742711 233307732 440570337 62815903 483110679 28185200 970975504 961369166 87467166 717736836 200916290 968490693 730584688 654115103 66900631 246059550 153196011 202006301 381829510 681502923 394672598 849393884 886376073 95364149 562023741 807107706 933248953 409144220 827565693 963656937 23707567 186843170 14903675 698073230 187934948 516338413 649620269 44647173 115903225 925973541 224584352 850112616 626305318 975020810 236959408 921144576 146678989 272228711 87938367 34154072 781965382 98570202 100662357 928475094 188470873 389045577 514599319 112976513 723149139 198487662 186527618 250518282 396984977 35176992 657998368 513733932 555208551 567349233 187513597 262341903 489671247 697591217 858742086 812314822 784325292 954906165 329449106 278114983 282892933 899089202 965847695 61710912 453872028 310256530 126246346 269309735 937597467 292326891 928956161 595138412 312742282 975042301 312724943 374418931 304917199 576674931 541995947 818705078 123772331 62268652 911167978 766723890 203836767 881266078 37393294 170715868 173132134 895537194 422854223 257442585 326675477 816841681 720990823 603958770 356647041 144226196 988205127 317199910 161389627 736649437 167944804 596796711 879751842 969212554 637090965 128315185 672391341 643321368 543461010 522737378 357528061 764867587 474388819 443877624 79389938 858280742 513301382 657261040 994866975 701737154 78479988 814889026 843967927 491905438 915995982 917059075 201477190 548192669 984215282 908556488 537260142 259121815 879195808 89706843 238750488 990359764 604305098 778991275 953369567 413765004 373261336 352802797 916178832 13440419 169782956 723508317 705629342 167732287 802930633 657789554 733749296 761764614 271792397 637135854 337372904 207299007 373374350 297374690 851369349 884797878 734026068 137316300 576201689 472199230 258471066 786628609 395029015 781508410 547595220 409992614 709913194 678753871 379100838 952577797 589185257 698026603 99085519 236134617 63487057 198787748 203889785 556128732 857163015 266908699 414141452 310889933 410451969 582632435 842727181 149911859 114010210 959530339 845602293 881186424 381072614 156394724 801643302 712762076 196545044 546794438 334934225 960051634 225911735 639628986 62953055 32990114 614640457 586598412 252678863 35686203 118275734 927400921 902044021 971145993 555730599 429983591 891218578 863270522 989604314 566805508 748037347 3160543 94399790 11209619 520557697 1003330 244707319 967105338 630132405 756632465 448342368 645134665 166500851 378506336 756405698 820576571 926720927 835042639 392151059 704250808 583973979 110390633 899455035 686095554 536285840 77975259 996288182 614315469 258609249 542988043 445316073 175124096 179331858 755390117 602175762 788200219 903892260 967662481 555203971 513461403 555129089 807913394 101021506 910177857 581479182 519390868 776124853 312123395 955960472 626068024 663591328 408679479 868121646 264608272 502465856 990029267 813735291 181032713 404834997 405787885 282163206 942457731 387938618 551138846 692606483 117098417 658034290 461463274 904438138 4578959 773791580 116087775 833487024 976650978 861106228 926521944 49843001 938013310 483578171 613230414 521732841 147137745 493813930 642412791 555355392 751614481 239661115 941609293 972721019 437833373 216607712 113677276 50269926 251726583 678361862 872650987 895248970 323658877 799563049 918546802 233878742 420735953 194960730 432048909 983732789 185939896 151437223 278120812 496533828 189924012 35257573 272912428 936594614 483680140 840994471 967082489 167068119 588480794 875685790 89065299 470819860 320453493 176726702 207645008 537019117 237022571 467246199 49418960 947257265 949930972 564466833 493224652 247620204 657446541 2237245 237470111 358275196 51279269 67362456 59027612 559341709 763551854 893606878 136997422 636290136 431972895 186305846 852809672 371919508 180482662 467258155 364734199 719991922 718484762 56071562 760637133 623019833 491026753 758446871 327819539 589233141 884836816 159129438 929234634 921871522 929915766 809043179 770969439 640572585 515992554 934667287 382492105 559237800 96420170 702500302 178729083 517201163 357029316 289005377 193051353 139743770 203967004 512844685 206865938 10660443 875042466 236210328 873825341 995037412 832398121 587130465 43499243 176724926 587847255 15277034 368722459 360971008 986982415 888336635 830180688 852778385 29148237 575334648 291944597 111668088 682527177 489384222 530995407 283120380 320979756 368583369 95010945 505481674 829024724 796186629 951678620 622090921 120767092 747007451 414976825 838302060 939685752 502191159 520355664 262255332 869564232 990343764 941263570 828300670 561250641 692412659 227084668 954828576 94674215 482724776 679371824 597164611 669898418 79536496 143488955 748571330 895545156 790056571 401919211 946855338 970305588 484884992 466540288 316270587 306931008 767852962 315256401 892344548 423755298 644106786 193663664 433794005 812810918 983361845 268240920 742295281 157065923 419708245 169772453 140659187 463092547 782348025 286477192 883830834 846033584 841020536 956559719 251756862 967352564 606948631 360555687 927377550 753305351 654966952 780351519 739447417 980214056 975310296 371329495 618360647 850666297 11517702 846422130 797551908 83558841 660943855 713406157 365258936 204160947 147279865 792893470 67037143 44695514 358993847 281353866 32493595 141678150 953306864 486608821 533564881 642599629 30942009 819163561 330207803 135852513 50721397 462733562 198262322 142480145 266900598 677032400 823138818 72962466 666411973 849272876 926132727 836597755 578505439 919348901 491350923 345549448 956158591 896495988 760185866 534212819 869149649 125109488 371207152 584709773 792156864 717963514 410297162 412149875 553857413 832326030 435474931 105503879 598281473 601818932 713302738 272212907 206573909 510437316 240348871 13879656 297072489 652858102 929314133 560583795 566546755 593443398 260962249 441262525 271578788 23323015 328806791 622359813 738343940 461540502 803417091 40713417 481156786 371034459 598938128 43768275 329894422 97647949 647055042 99455738 585453298 247120799 277830694 408313913 198875013 872112709 881206125 579790776 383599769 67719714 500885956 250957541 118353031 337554827 554183778 722635222 204022595 209073774 529955892 508924726 750818826 179365645 335583341 180114543 991140605 331918338 559751518 212759318 148702137 261686257 672501411 590088699 178272111 581151072 137704019 15373459 136830612 654293694 788451778 345405115 19650091 969743766 592144950 228498320 676887709 332434196 16611998 717024761 103921066 646215136 286276367 716708267 692809225 666136096 950212094 364485617 626590972 543350160 953913596 592210914 136940342 567448872 461158962 798424464 296701371 721338282 905423074 211520993 663058290 929070321 17463823 579764350 152206390 156587802 702362352 798468827 850863003 998910179 998661653 291390595 601970372 276836111 332398876 104267635 371817342 119057795 591663972 983466216 905235528 308410940 56868317 20140513 244115504 527843611 731565477 22775541 314825398 204935692 50414227 330564246 523992072 773518047 118903875 22058414 867276864 404963524 188265331 130691115 617386935 281521314 758462571 353311508 296202681 483611786 553384931 854851156 918942259 439669203 322585448 844558684 386573095 246597689 54303243 917279662 322358073 131772940 168573196 753563671 507370638 485414426 869739842 885789322 397025343 680907620 456860649 429390673 851485779 607467556 106712319 34845219 424419578 628771181 585687085 989268048 715921912 190391003 832279639 698270245 524723102 828238233 991122550 909733338 217161189 590729591 187071778 618216518 622318860 329435195 596466776 594772427 349908769 646494253 51732668 459696494 629921491 953861601 308895082 584883371 522789718 686944297 108670335 401431097 686182397 701691988 809886833 637629606 870547077 215542034 161135028 496272490 876556592 694102758 33107110 131207449 177270989 887964021 840757129 157938634 867723718 850260801 693525356 19946578 558320302 860441201 760796004 58997728 770810827 784366565 921115696 442668401 380061133 149993167 193299376 285034414 928183140 781278324 517803400 512780361 896035284 361828857 831044551 93478834 541923616 957456918 746107736 111730496 702784651 250373582 140481443 690036402 18861980 120116325 14974234 416142083 864165630 469305069 769145245 307648491 352436721 613150504 678844731 317164556 831363589 92924355 805649823 835960314 890147611 294850755 410935079 564159607 622545075 292782185 239849159 872464256 175292850 404656599 905594280 332346061 827158304 879431711 268957580 609612135 674400573 16129996 310506816 82701558 687005831 584007398 843872705 467406418 11693493 539335400 100635706 152382589 684795507 789532354 973646209 39134816 708375011 348199112 389545929 223145334 946358877 753914098 949215268 442548479 319005809 125655020 982464787 480383610 630343701 971767261 727986012 54926877 625758469 935722668 204088984 549951094 806158942 512199855 961162223 238737994 366250771 166126521 570195006 436556749 287928573 608279672 348986652 530242801 511567116 454860213 477462498 696477254 875046065 37667493 354040799 750931117 585003768 134281869 871633659 805690251 669271545 647275200 324426676 954184118 397867237 180723475 325748712 341769033 264516574 830090611 97024136 550042514 110780366 767774932 457560349 300735890 102189776 828819499 205922868 102370599 883267594 997372816 627993770 789671730 350472555 754465532 258883344 191219988 22866268 684187556 458091343 887638435 106800358 458360015 441472004 853411880 322980029 2502973 852945789 32451823 971420560 58926492 731409026 239936356 245089194 203931202 957292740 170908982 315540590 993704584 535144171 206373130 280943561 464947004 914032312 587941509 325696346 654878669 331390513 976929462 325897599 627033776 572840079 996114303 889732537 835105082 743599794 382791812 823237372 531909026 276081196 630742004 728832443 807355754 744903042 447063265 464437356 411839329 678698830 950110075 283927328 312115197 392311316 723213932 394679215 601689290 661185567 567497827 259970760 290421846 389565281 646246004 83567430 603306105 308393125 849882425 36720115 509254100 478325669 141984967 648922311 428215023 809042188 499017670 501064341 384265234 96183343 463651658 174223957 433865331 991353070 274141081 372686509 164406089 135504750 130594778 313329195 106510512 2360199 402090003 224237913 247390882 612635151 313496441 233330877 913450498 611130701 944984445 5181452 458794844 943983283 990077481 834236241 750305391 714687019 373014615 209161171 107698004 307454510 885331367 541319423 593971824 619127027 518479381 606888817 741787459 30782281 603159683 378016122 66242374 179275415 385227553 197524055 570924795 72937818 393450871 722745785 274935790 647509336 510338635 78401649 849427531 652211886 30037654 59734806 598068000 479237345 338046672 941710760 615475052 715334019 500329753 631355698 195060626 750198296 157018553 409633106 37351315 664010730 498959010 979732051 678553440 255158880 645250770 148048471 964605777 636688575 850690801 17383035 277780171 556271769 791190408 829926798 955981434 918153013 801644777 640860996 645754454 482797342 254005664 11675279 962020365 368914577 792962059 929962949 974011671 62908718 342616612 794753152 500868822 849635518 350867719 845598281 123042900 661450236 64734644 410620209 269042017 317195621 641222936 373454828 71149979 959787534 741844496 167115439 10182251 7073109 598652881 74482623 924860582 117433525 716652165 680024 961767886 454105571 67195921 811658552 700198651 464231618 582018242 175858576 938301947 564927099 482411852 194420540 785796766 551619195 97798360 64010804 13108734 409523066 553170964 358733857 778941549 404603653 109048740 908924751 867311097 500712408 538335850 358978630 651355419 413278906 470045390 782622134 277010008 820815216 820838147 70759808 26222103 180596434 888881325 300070650 130416015 201089879 677546725 995206470 612179348 667709653 257675761 96986249 484144597 709208938 251417862 370450039 170541809 801127277 538068270 361624209 178776674 111859357 510211410 425358727 134937448 248480176 803562947 499010338 751955885 452087833 197918014 196404176 404622788 362742316 703738438 652157721 818734392 735724440 711913765 607262521 473025900 600644677 814728749 551567391 870592589 779712541 988130923 1984732 164252617 869768315 918126351 594103578 263612617 289697284 159074135 581794633 156285537 161595110 947606927 120976896 939243533 95513126 968220912 424417958 620351902 348405279 301715949 192350738 432431173 599460706 188104025 232629882 602324848 32475778 422351034 73239464 653034696 176463787 403915324 21762233 397979645 826324343 828984530 653909003 604046175 251740824 454198481 775153048 208060279 579517543 905350626 873732615 521078991 817532240 825551423 612181724 701609273 529278089 342935587 826457335 266470036 186426125 952989542 375462328 660154737 221350681 234522158 537874370 403833081 10385694 393125356 373992484 243881205 19828711 742659186 667943091 433373324 471107502 172166987 975560825 513233736 371345432 546087070 61275987 710494016 609008860 172110733 22214788 196818978 364943243 306702212 245276699 829548519 997212559 901067072 242537589 284093562 888260235 540208207 912908258 820646950 509435114 655953032 524026152 961606115 663081634 465829719 724694321 472433869 626924791 781869631 569599505 965016689 662224075 641380816 571410613 152342765 397057029 563675085 402334273 478676238 96932038 918618597 592132868 188961577 869070708 221806197 637625768 706657309 867899968 639520819 782145285 331744003 689844408 348921969 496576324 963358525 797116473 843817544 384788035 760344659 890693623 497122644 650795635 693855487 449203106 774340307 203331947 330519942 589971031 492105006 136536621 756855428 942224637 138531594 276027392 115675015 769480666 146232336 227596383 152322631 928422545 300131619 244358389 665527496 303684306 388116368 371123946 788503705 694186559 426621475 494425275 482874247 263558138 985972254 981716223 848265298 154504876 254601344 7732254 98535133 60164630 806025323 862676555 518034525 380016259 338348355 960686907 226958729 935248272 796723165 997113066 252521991 216945808 651655909 63641266 119967534 714164972 984635537 560436704 308100612 654667620 664754195 924929932 300845829 709177814 895145950 34145012 920303007 989190310 761450981 236391297 970400583 305098638 700636039 254281310 578027888 392972861 593782324 315674816 669310940 466712421 874113934 669282219 688583593 698425144 797010033 677764107 456948967 439460746 822957800 30974092 871169713 482870351 583539450 995478952 657064523 242607830 813531573 837997941 619080682 798706180 244990525 773155875 942834306 471852864 230735230 6002088 434904850 816771046 971922659 9874532 756051388 889620024 104063112 324773833 219086078 762103726 548052609 19811020 853137319 824247422 737963617 58281356 818629325 87066667 211522344 399337043 105292208 779791197 295659068 442972615 274450251 573790630 212016964 741399134 988866882 997099793 560264686 775230767 111789039 467863419 443132513 113346736 102353602 221081407 510719484 95124688 501199079 303876973 370000752 330245869 899300005 399422400 360582847 935373995 612848771 100821048 477070174 96722542 713379279 425709643 375448174 380795802 836045110 869431869 995467928 195306091 598342078 757862686 481808656 209695178 176091000 244336269 343441140 683304521 92130989 986319368 281162053 558760377 211754432 936409069 627902056 862335061 388688963 897925731 900053944 196365258 304569834 843268305 179462928 368966570 443254922 802068159 466128650 149254742 540860091 83791103 5347665 518675536 89929068 875117932 970791535 811413385 904726702 631509762 792958165 307556015 311293718 526734124 872711434 994937680 84583057 856887618 152020893 865788149 307832915 676547147 229682544 134907750 59715684 9513033 360567366 873914744 109529537 922383266 408066092 947008715 542522632 654149211 3798110 915178001 65827671 189366762 484012583 471924583 681714999 680814585 557114719 547047378 873351134 746073961 611549032 431620157 486904089 580288496 97144851 206189956 373904140 734398802 974426653 565037851 499918620 947586243 398105456 67351923 146472096 387644759 728749895 765281482 524889501 653282701 270848238 456200941 922050225 661868786 402313445 4642228 743255144 815824873 115642088 614878808 721503630 75203059 135632421 641342542 96988124 198607537 353149673 124496434 658489762 623659126 249393213 357559496 196571765 891419078 37152564 425921411 854763455 205085605 286556237 623317980 481974422 456735946 955634508 759189773 5858390 249805975 871745857 114990571 392510881 565391770 567421657 367100961 938568758 716793639 994364253 360171163 169746121 64008388 808826730 630162701 204356279 455993520 731725029 801022237 361000777 495512462 98404134 638289771 828443340 702169437 236889490 420891487 427380872 674194365 941549911 192730833 991097674 475592772 886573100 374900417 834913497 90790716 472949806 28369467 381309264 870197259 91228831 88511135 834292430 806358151 855263266 882260306 991596472 932506113 78482739 134230422 235136906 495186758 536304071 635885558 214944121 429646094 946879021 410787641 269308906 156676569 473995342 968067469 369091329 366883397 557135402 971904931 915010606 680744238 268506001 534901527 590925144 174101966 878799988 25804663 963450277 452399431 897877955 356479235 474022779 823884639 663303863 378852635 586143586 939324236 267977068 573382103 812775122 634812991 419646130 353159094 707282786 734846190 57792024 806377332 568067646 899116309 264552543 733894212 746842731 698052694 74143287 669350790 862161675 575426353 655991341 436230596 420856873 345384677 398530981 865661393 874976323 298118120 46511697 870100645 41408292 798891166 231489191 528746823 98342074 156133816 910363138 242743942 805649132 484527374 72138618 610318286 392818203 622735537 495250259 705060268 813968425 765594903 515291917 880589764 568237575 284107579 121870419 873738962 206523417 124009045 22562222 888357345 515114536 460330670 192289978 970218502 622182452 275730668 583951102 3550580 65369137 210871089 582365531 848380695 501451261 476871095 992783947 862814505 311579994 563486454 876728164 14887709 24831773 818886290 530023747 632232234 214061799 740134059 584308530 757476591 5989296 376485269 78531788 904122559 71255164 669648615 832161906 891573832 262353363 192767491 260274777 874852375 553064439 319974196 884875582 785371526 902135481 226315488 948261408 781054671 665640043 993912832 896938832 914472672 876868923 394010032 672605442 968417419 532719592 696645150 816852122 938376335 660826545 16708686 97129503 337718148 262712793 551187994 899091773 428546711 341263963 563757077 573063726 349751529 20287081 156233068 260545502 142655231 407982217 473349416 748052719 87680600 547306959 681454525 33095785 625947598 942072418 994930012 830947841 922382451 20681159 762675694 352422137 536708106 771585439 735147030 846830796 181649828 777912944 586111808 876575455 834336786 407536772 400614010 954722769 25204371 526669869 19169627 734817278 583336322 638050515 709896306 336137723 41767929 509636816 132132216 92639998 233343337 81874150 872964894 215256677 436919542 205462428 328366621 173380864 328432019 764368109 851716348 578936354 41222338 204128942 6962343 651914447 620712557 424284165 986827675 934462577 185621198 433750593 569613284 936802502 599315363 656491124 162786705 922868116 678967627 97593401 949709958 880287008 420616362 344987751 249946371 663885504 886445928 365096852 963025171 939876049 577550549 886423780 928573114 871166043 66548882 81473758 155396887 152050243 143584552 893491562 349551801 124900470 679428068 159977393 624328722 153263407 261279416 574217693 867144155 123698940 371035568 232417314 479661371 864935847 860177014 282304458 689117291 459431957 260415862 382841 203625537 310923550 181276659 646025874 890321825 486596767 239955714 965378638 540156238 812613355 980380256 489933443 245058182 662852621 560156199 381124787 968812444 955886448 514924941 601731819 532971394 275009294 93544311 876764908 178521007 865507578 442496662 873909678 794504773 446874620 275053223 641736338 402531632 801482844 377096267 997697161 159639195 825680528 909206347 203059524 847475813 64025678 366098646 610952748 725006812 244982040 903899117 304324253 578698805 903669104 76862134 339876938 350723273 870651105 844437282 928163967 456943015 457266081 325686157 52494986 166036082 616751011 100773620 161439389 472867627 842397776 871286719 53389193 292997833 605394201 330778424 237459316 865661436 962823368 600891583 212669301 287551808 416475214 962500737 572893953 572475509 276868760 973675122 640096535 281790602 619977786 835539043 438911188 928460910 925789297 894798491 106829147 902606583 215652688 702482261 29796745 229102447 638421391 350392068 562481541 316724799 321885326 342248686 127796931 283855744 433757116 325319600 112099790 16478216 820643123 162545332 919574906 769518282 912026119 976776861 616192641 707306854 157322706 213105901 304370223 451322043 744830897 436598416 733792179 112070030 561361334 409067771 116055216 681164208 869810762 958332174 285376737 107750110 662370151 347171252 527197587 543611652 743949580 35071256 159819000 751334918 780505502 906958081 511011356 953369338 799015280 887692947 242749567 618103246 569598394 189715859 574597419 658815406 932901555 997799005 48055273 518188888 519559996 692397227 977884968 900727786 761371712 214271259 44983138 962580077 589210871 370470140 356877047 756619283 446677028 194667186 39488493 589061934 166312696 558186589 778367202 861866672 618083611 188666699 479052024 684928936 348055297 543929294 236133456 329513330 303445782 725344176 127078194 202178593 337652531 689978051 96221026 635620472 897940852 198447879 323404531 425870408 881332742 349552173 5175740 252942027 772804870 950471866 991508692 744764003 376293322 916214579 636298840 962621671 16872048 223639036 3724758 510774099 276490309 465579659 659983277 290280422 142539733 314436597 748472154 681498153 478177948 352668345 476088880 713797548 805864301 187016283 332687150 967774502 649373732 876587816 238740692 899527146 450787884 200815970 938864822 85941105 112846814 825499812 318175233 360377896 907638907 645566837 798136894 549853167 141777572 44969848 858064212 751562610 292569590 209456120 591555617 341317448 221422344 848421517 78012262 666945734 472534047 470017463 449535478 573508534 921929304 304046833 829210155 82586719 545320573 73726967 558893615 876325077 519151760 858944029 186429444 959745363 794275260 899448277 47682717 235624022 944067670 777742283 698083191 568948400 701195002 4718785 863970088 961009166 942644906 925424340 548338386 438815142 387066687 963063343 793057009 227107819 946982867 779797354 566763177 225799889 337307877 63485695 361559839 318572555 376276071 403996575 36916149 691260660 219892721 9774044 27368213 889101188 295945800 415315788 88230828 393249800 345011770 522585968 586980115 46965660 759142315 407684912 93803134 716698191 952471884 391831428 461745612 4583311 877352669 958945671 602725275 304120478 105856500 377521738 283646741 750912564 846131584 251998776 679502076 322798446 561312879 174428740 928666511 222930130 552338329 866888561 478026929 1494481 126809815 134338895 807347390 688224678 706012073 111413540 797711540 377421747 823598614 195445003 350241146 140563709 117152772 986976530 956686259 385341613 434238309 944068878 45364836 160715720 769257914 379544118 256339522 47319369 739721879 657565286 3948577 988266735 586882715 470336547 505225530 481246365 993194224 164098043 593582193 865430231 348324929 38869576 990249148 438426531 37647628 774067704 356565469 762526380 671997075 831316283 463681581 766482983 855752120 204099973 875941018 21299362 685932915 640736955 490465262 993245264 121600722 411544560 924174161 477143477 432240727 680678114 291073910 369662576 266499607 928374232 251345374 641248499 204982401 457487393 146062751 180031934 737260367 795440143 716425145 815869169 617025599 812601064 398745868 320166876 613713707 936960566 946925241 374248851 574375848 485468588 417219635 168506451 682799823 121467286 175969261 175702154 972512298 984294049 601961351 138579883 362739116 12897144 626691958 936261359 29269478 892708549 219349554 608322574 870347804 131734899 92981182 643523437 664029716 75155746 677054878 973327713 187133022 112891439 969093402 423332865 360543681 455619339 332607253 2235148 603447415 91944855 753643681 771389588 98473453 845569778 857841337 904737162 882624989 919756102 595849312 107762142 409696998 351094010 890570450 652415570 515515251 485329858 42789221 636466535 2979084 358958661 194329581 36707310 901331061 996506007 326894816 103767409 583522588 801795485 130160779 400080500 257581749 730164798 890871490 703834652 868756916 869483619 681915292 254258084 433305409 667609237 888596737 374083480 549388426 742800934 149614909 460778129 667360222 172633139 657216143 568555471 666813797 764140005 220660882 693457428 505961933 265110060 436145088 650540160 753104712 695112278 328025702 823971116 876788052 178090274 777796350 831141120 838955354 121133432 196493215 838714789 514387663 263083965 598854191 406189571 748632790 867234499 357523151 820736454 601909389 989841587 158326301 157100917 216084406 160347336 505978988 447751233 549504527 861340018 653132256 658144981 823063631 527179959 244728216 922657337 842695489 769759468 809748290 222583382 398033941 347734358 6970311 66824338 759914683 266977549 311415611 404208023 746784581 104986995 665377093 361882919 312385035 427889981 685118106 885040424 517658075 185226845 399097697 677517749 801883789 288785152 482194225 428346191 389999874 473984403 62407398 416751147 722254081 464172288 823230621 728360786 41153538 293202026 588451297 141851279 285209833 908626107 319214335 294847235 49874712 163139938 539767201 842088781 220618581 914555950 717987256 547352747 537269125 633526610 198901701 396775318 95144548 843707747 802171480 826880349 409159685 354569094 733060026 39318972 158216707 239021171 451378196 914604271 889763070 148252232 245502352 833712668 507084061 638841060 94133102 747507313 838876932 450972181 345718792 547639 776716070 844164652 917097003 496720683 443485785 143303944 459647036 229841300 822749205 733693547 485981758 747257189 358979414 835435185 40767826 105840247 962231674 147382857 323655591 233692457 870863204 422452171 562298067 481507056 643095719 192037543 371420257 843555675 640725970 67504262 819145694 219040935 108597231 935409557 701787002 758681172 772706666 403221756 38364549 813306607 515661694 585350632 902094625 179543214 74396874 431396529 895772153 930544468 802256216 439590351 554382195 124741926 54351444 199015174 400700240 170507195 123146941 731170470 175439606 300407903 923507469 282256622 118895503 216672639 578019189 212220221 596493899 470813824 379287713 808524861 263789007 783004017 81209938 939251909 903501887 244960011 317593546 994349247 330224890 339927843 943982488 871595648 227778413 122019722 302040796 299692995 682181895 142988876 11702032 776099541 148918744 850826932 302466298 657838213 603667804 871517855 220382828 355734766 219031751 528228376 578476079 755419352 591381564 313855025 445572929 585618861 345548602 262217925 161325183 209870847 531643901 736006756 941195267 408767307 840923891 728080986 809749049 289254987 159261981 977607975 685896224 642117347 341998514 549180477 774928101 572813232 714881731 278301666 927042237 862966234 121777113 416164560 497517987 85851252 825858981 451013766 894877569 582709101 954618816 309658197 685912769 498302377 504382836 1873878 615567883 898306475 787404671 507865291 266043156 676990858 27509993 467095666 835850414 389557535 644431305 397705754 503307900 735861160 889452174 52048925 228928604 372448171 702424213 581631949 565684261 973634235 444987606 715450913 518002526 871067987 262727543 46428762 390277788 900108453 345433983 762725289 504125355 149535640 74965988 375571567 543368038 570184335 670835840 738269324 81075750 283220976 28400854 363549966 594571042 358903239 629210217 981617064 539697999 904099060 630340884 319090507 266632543 281838191 931834918 72681826 695055461 499675667 134351661 461615069 714800296 930830682 877378611 529495762 683278117 351946967 380012988 362389095 674954290 863690563 848893809 634463427 805566156 577547658 515728885 166935451 941384254 12075956 777055578 844793020 589461932 284522583 392602487 760930649 319492013 133615534 993892168 598155881 258301361 832464528 89171714 501560861 285334354 204938995 900370510 994356905 326389797 184968608 838252950 648729339 127149159 158156195 674638762 607138259 461930406 92904679 139560774 751643884 294440736 89275829 119249839 529018085 142338589 505537757 23988906 250086531 978797376 950796097 786410505 633439294 540243210 971305792 361297509 684490988 83576170 104196391 830426983 597436813 806469947 957062667 473770232 955270046 627092788 285754796 432064097 120256656 611051980 701625691 517189089 715806012 377383327 931822540 286627309 124413618 745770209 607771298 702092484 142639508 290131056 166236830 126623780 480689581 631766899 555588709 628762677 634563249 102333491 696547847 863896609 665580205 159457024 657260480 477522293 159620658 836691800 35968342 41620561 829553409 958913899 319045236 118420819 751242955 906809815 754978190 732169264 268957656 645473397 974317777 329717890 464383894 530277196 967910300 541538391 350452539 687959151 46474415 936705694 604013923 577086248 646966243 360176379 598322743 722203939 867104474 442849979 262601309 652887782 660741147 83687663 645549274 107880455 56036772 909208315 619215008 753158769 10398996 756834420 592270000 488625784 590049620 726396902 754470978 256608119 163793466 605904696 74344315 633681407 293696931 912343198 837416953 788955954 225734678 631846421 33081272 280442076 168382972 419220605 7302150 768737788 765555831 562873262 116638121 171675130 95794070 867701963 483780412 542494840 358894316 130465202 920896128 314308106 671963927 490152096 753343560 457396571 788520551 5333844 44062668 9004364 316939839 328174956 648355598 95493032 496309803 234288483 241307862 210093723 11087649 630159726 842863728 855611939 838172032 169579560 884390247 847215546 183995324 875617619 273262128 490889386 685684468 796247813 255007824 973730583 169599997 792130863 250480 94923874 182321044 882475109 895893517 383893547 23779841 641474179 513076031 290337353 492666459 705106902 958515237 261452328 397984042 217626436 955798609 236453331 405744012 625775423 869116440 186140640 340439022 668309736 848079686 296156628 481003197 579320485 504190986 114901922 682812324 574893810 237832351 38835564 989825107 963436425 955956661 348246808 283749789 106382210 454830313 923767431 636648970 882655946 838663657 584875892 493426899 981965328 443081240 976176435 949672142 123798648 834422309 78111877 259691026 214151541 841661935 711260629 61131284 128005968 92052119 968143435 297787231 667744210 658451172 111759396 232916566 944287952 346849190 150114785 794929229 289472309 863695787 205958998 33346136 585541115 561226406 93462996 465313595 955202273 442410618 926615777 412801238 894350108 740243037 420086988 359036019 619721578 788007308 781522521 233840966 123818313 372685711 952794034 526135121 160907559 296573515 178799544 913616641 705932706 726625429 586840015 868921172 364094190 919357610 825176281 170831920 24566974 120853582 991954761 433692808 876982040 884918832 141375974 776641911 130746063 986327876 514169928 762899315 65132353 830351417 483362530 717151477 201315974 173069078 110598155 699398545 255859370 538576381 915843272 67424309 119054899 744147248 262975266 854231755 504522966 878419599 434767249 377486645 702647374 901667863 506766429 425065006 779185811 917886605 875582575 167655493 871675898 171418034 319844153 320787952 853316909 371972760 891790595 149020248 991273288 137547277 373770876 73697341 684728371 317397225 325800376 337291888 786129855 387273862 114652447 777592697 90452937 106606779 810870129 411982671 842653056 857810878 804486512 99874208 932393668 215107535 336790527 664704590 4428938 621289979 529194121 60710707 963092214 529741526 285781991 292495050 717137390 756394274 322210951 811489568 741039414 67931511 576037099 316830739 808169147 85459862 215268138 991775191 538109744 126766167 650250342 223864291 196835372 139361644 961343556 401270351 102888692 63403712 177441306 501671725 169652772 787737362 208290053 584554599 342492060 807136627 800400179 961859650 909663538 866375927 80529884 431385316 112732067 172496323 522283256 178976215 765323920 623983092 243683709 140572415 182179455 632269373 212604386 261404828 32822857 811345067 801835242 868844987 681059463 957777371 369858204 632643516 769944478 961751918 165211800 462310416 883482500 108088541 430522870 48753978 930451300 741195034 953731216 46112419 415464682 97878235 67364893 281804592 631955947 397856917 166291777 581669336 572227663 144687930 964352201 819868972 742139881 826534388 808643997 181769113 699087820 849529217 238617046 762316806 482461124 314066268 274950578 438560663 550236844 585925242 282351120 198016551 203183865 8470425 970068475 619678674 596748603 510814546 798346723 40325149 990024345 277447227 264198676 502872559 269625303 139233148 525456962 256163592 866002138 51294117 806996800 314564687 615475623 578802805 340326353 823684114 1384601 226332100 739456593 297957119 768145334 143511426 693412435 941524975 422938589 790936771 174830536 97252892 213107493 503374260 684223157 168462942 279385517 815551659 929948217 503717230 939012842 102343803 695388731 669938830 265412736 750567713 736942063 214055482 309325070 777377495 2349717 850266065 575708906 279891122 857479526 643840884 739337856 692465507 764799 850351196 444283274 556007580 997090054 538587643 854900774 689892546 461686657 969427584 275246135 837852329 920301589 232616248 754332917 617246678 495240768 490746742 472509333 286582979 366203835 943611851 490329050 5984584 427859659 449730236 808483440 732974575 636314432 168203605 677938587 25675321 296207279 44371154 998495147 359213563 106459220 250373652 981770209 915474250 309850844 304535186 794283307 801589020 604936189 353114839 502410704 760604616 285153384 438995797 54199528 388152133 373986945 410990469 950452467 709676379 324933580 354982504 862492188 642556248 474465890 161367909 783430816 657134852 149358167 173256383 997495721 230715494 695783187 638599161 605894379 619571272 94390373 184320157 68729094 800248716 639942234 69417256 469742238 607886998 145505345 316978808 727684760 126267144 665126680 35371848 772637809 180064187 936369418 336387215 268722490 155373664 794501564 182654568 801951456 830348755 913643729 692868141 853231078 61310336 946912338 606825667 582601026 840552761 992725383 950730322 441617801 429417299 370843533 583658580 621442330 868589980 739731686 522214681 216297739 323094937 601266358 261853063 19439480 198516162 561780601 382591433 326841349 301615175 422455136 786847231 132256877 551006777 298913870 979574550 60244722 545344122 401557482 841726011 765892825 749089668 324882181 506464221 132626848 578310638 295577146 205227213 381079175 475915198 951805218 800516417 312831841 842147551 794277128 878984330 191517779 882146377 243699030 61908766 690982743 389410731 631732177 589430671 22478068 294798477 28488507 732763104 4801834 861358645 11963984 582302281 724674817 451392686 713771453 530108868 242830323 485955881 968682683 483617843 168562697 152311296 505385191 650679333 863474972 118582161 108466950 265228092 112720226 880257539 412820522 395793405 938970434 241835570 343317024 706106302 333878967 889980758 736966899 967521901 200713887 855601607 604192430 535612882 34831823 228481797 475237729 122566905 544647645 723778819 311608707 563069184 31096170 566543474 671372802 885841035 504750115 496359793 808325426 302385065 885967041 139746329 500528202 632639327 480132385 847013392 187672203 143240989 8575122 897183976 275188884 779729062 107630471 576586635 246518777 739134049 789700979 245389986 876765742 779285567 825195425 533127044 526235725 695139241 530845281 673623639 503960552 219313761 231715153 142702086 613322078 620056035 353255029 133741978 337138034 640853359 55961696 712924852 928616245 50679593 609943713 466896882 176948059 433578973 892222127 307871317 313689940 995504779 239503026 456921175 202859149 504451496 246669390 529045359 103655578 979001736 694089280 152277841 636472786 870557809 745764582 389190689 26883396 466285283 927323447 196580457 958804464 520637941 731255227 977224323 946615671 206985097 483508374 659528660 800436410 743752757 98821871 509841490 264687664 31841413 47966990 859220816 230079908 473825013 611685158 839712829 767607755 133028012 135368374 71505560 135474590 243988503 318519127 202018234 855953073 731795018 478041298 293935442 741712711 385519917 875220587 236097561 394850459 479845555 12311571 328568200 886376085 992550090 138309314 7272810 960770754 936117343 73878178 617849863 35608939 717070380 961241602 662723121 723790658 861981220 597441773 747913406 817032070 889124071 4656566 743320406 960156077 548525893 673929525 850851672 932973554 225663545 793058191 506473408 215700683 420936715 590869045 312453454 440441332 323355408 752715395 923657162 156185684 150581129 306377263 449822447 800093151 41454745 340822712 174629825 480520264 328373643 594051625 169527150 614454000 982905749 426625738 923367501 521094141 976370163 792818579 272242468 112794672 60740893 923090896 172695118 450958342 72295736 988303353 178284582 319096067 532856618 300266036 668205927 752595967 53699564 407513239 166577330 584334331 800466444 627332709 233281934 344694694 246307847 197730888 335130678 454314363 31288265 7052912 77392246 311319252 865119167 203899406 523995680 82058350 660228035 653217980 362154344 920583499 687510075 409201071 736675591 423206884 332125047 863530924 838370588 88127441 164537169 777025195 143259688 520178131 364523547 38289927 961851427 269214325 313807296 914493454 595890372 851474040 11254014 443241761 175821417 870324680 410762497 827723121 276778747 955748004 176489135 358227416 797234438 255456408 139621355 979777683 93612678 601781078 768388865 49491869 60194532 496559433 882789894 802943903 230779562 267972368 39680521 631047311 527597169 563982379 824253256 839981083 70649337 957099223 149425771 859062670 762364578 10699106 981313332 193698404 783628399 870441597 480298640 696638660 948463523 307732968 382003764 487378769 74838686 167013983 652844276 797977882 280929044 495037190 91825682 640272102 885330714 383807839 727611752 669000723 514920581 722587163 403900776 691481165 255667807 463070351 378926324 225063750 21863887 893958572 911526050 757869211 481765427 333393589 158737783 13949227 324564131 456498654 368932946 388014309 615531525 89349979 421159793 184847147 375215661 12412661 682877502 465695103 52759026 328203216 451133288 862377817 300226683 111693972 522370686 98399272 245826933 15655078 489423279 537680901 387059760 183379633 49413214 865001796 720464188 969136221 339196060 449173895 916739951 312047998 880011002 633971206 30529894 520793926 758619639 65645533 593680848 81691364 583408522 497743060 471033296 932277220 347187533 448093328 88841549 472221001 233448192 432434746 413434005 300089782 984450260 537509061 585003030 890527688 159664593 220226335 625169099 117229606 249723182 31632842 545758015 253966606 573701090 71585584 796705692 801812782 80241943 157608384 191773174 641828116 202285269 36923129 738005778 839229815 335990208 582976156 146964321 716400368 684535524 92024625 755325552 704345546 236590325 801121295 595891490 59627475 227499467 227463500 666720281 712111186 963375524 266005333 476737194 473560813 936379188 69353233 665491130 874112710 250485312 660982951 777655398 519337670 659777538 54460868 630344883 954772266 939032473 178760185 438075924 170658894 746044965 30763412 608923843 118261858 432360608 152975663 484119093 527964733 60940510 80010255 473653073 535851397 173559078 28655094 379937451 601212647 599916172 684564212 255118311 558594489 889915698 592519590 30411803 577790673 135586782 511254120 149917144 329473127 124339613 663163900 811741301 886506814 627852773 652714830 865172523 8031950 393087766 735015189 333723401 496564690 380534826 408442213 850074302 740348999 283112627 303782658 121320397 551653966 852936711 967732325 781450118 383146209 751573782 646282772 270673429 3285326 991007523 789313182 684424020 574301282 568039064 21264467 377802133 239357067 112395680 4670970 4385631 37562218 520054623 22752007 175954224 809769143 127076457 585179708 902700881 538119652 332648075 876323184 904515816 980878468 927282173 843975917 728205246 720641065 399669921 224880641 240273321 602053168 486110376 420568914 694517557 176112646 947129000 830307070 294932840 149831809 104797739 967476844 409644698 130779106 32026186 203644501 709393836 846355282 616174199 332289858 745015815 308366774 848419005 737544254 569942158 602543869 377555680 389272043 546928159 881857322 159511535 140560999 761365394 377990991 339321375 259161876 453536404 13448560 392230226 111224604 156482022 735143512 507634293 38822290 746206250 219557193 523564761 309676088 804817264 177201999 500048171 955360237 261892118 296534403 795543071 878827419 931601026 215445572 566375429 659557464 499298857 610468967 197602664 666743520 931196229 658772210 991044735 283919902 6793194 397761901 948639390 472640550 491516861 477047383 139768272 400603168 276203942 313947803 619390627 224421034 530744872 26048099 937054130 336690622 487960518 378209959 874241757 940794175 119069433 759730903 436400732 700600328 116650467 401266442 119673028 37829932 133688130 729882491 856477356 596902342 163752588 528953681 148905460 836005256 772102948 972939012 746420507 801594579 329167328 988268048 940726537 902865606 405739013 644034181 184302228 637637042 150555380 763594847 746978525 840548514 845545654 826390315 255102050 523522478 403058718 726843857 662397230 632437373 301237660 972557900 722566033 999540423 905823860 606726324 569961129 553763251 422616260 128741778 810097546 817449112 209343279 271593187 405800455 338392748 543408569 756474256 440177466 108618691 523627598 412619036 242094069 162389798 72823154 197201471 94442532 975054921 203680377 15899799 469492399 695568242 184430048 556901064 973707952 108016074 958276692 418874461 362218143 652345333 918211187 512531635 272483583 336770910 602113105 513836867 410684886 360169531 426735000 386316315 310170127 255318676 741221779 651089558 977517478 753626235 106247712 801917378 881318550 389161714 615186342 376758629 220617561 333504229 914431597 464068639 995707025 602930108 406341761 174853360 613304346 931235099 560351021 820499271 510129325 427503188 10397145 286836244 907845135 319677330 303660155 775029288 418022820 62452986 584530497 68360913 414233574 481371978 306268441 935678028 787098477 956950930 285196282 997647265 395734776 862418806 585779484 457601131 766374804 525367924 147645853 761145264 87705395 351529121 269360901 522496468 327079208 605731194 327810893 529070519 999659984 578451955 816512649 120023607 158166928 163059967 960989734 975797606 977901859 971389913 147189396 439715790 764851592 229357619 391607617 873493150 526932724 476485733 968524015 575543894 929611735 387481563 934082513 11613967 684397143 579021118 9906538 935643145 819009922 319322716 554675563 184875106 660816012 812804468 542437621 68110 923355259 493113176 878008543 417696363 987613285 706214712 574725633 830506302 515738585 619822896 826384790 123177957 417822499 310453427 950527755 238235546 196597652 358693534 804145264 887900379 585948472 637222491 215437499 485678523 867359264 251526695 899011319 522931440 243005256 640383466 628237709 241100230 545074685 439354941 451189255 455688964 835809294 165193958 85353997 547230888 257839694 142004389 234727297 760783910 2709037 336229887 427409717 302512141 655684424 118776602 67784842 528710550 671605816 952095416 738330475 104909061 502442643 246226480 180333975 685448186 616956827 225674424 885302765 738854062 724558516 629549286 435923265 391248975 748973069 967111789 597440735 483780921 11518835 71915121 580499466 425231404 611100399 117284390 328111062 27284007 222635991 876299810 684603833 785164777 380807431 787061234 968861507 155416383 448690894 439685466 780273595 538117752 322936487 793269806 908292241 21693882 450526556 513216752 484844386 732364892 243621292 859823087 520979075 580877722 418931026 873673215 882484231 372574645 494857280 798814906 511837910 40512377 291903145 777747565 626941423 883433991 77685527 85466649 668087928 628067508 702299234 525941133 182600213 871839921 180817186 946282434 760076276 28938344 945559496 322348837 991239069 984119312 938718407 572365511 892845545 863935824 26871140 4236961 127520615 494206455 285529244 239552376 811101721 104832831 773369051 661313010 174439630 570618350 34119581 855625542 271699645 679125926 815681413 798868707 693811102 418310337 376897351 306996579 7354363 839447402 953278895 812459265 882216928 721658734 730205338 434179356 533808578 420456088 402435985 520338576 419301562 308508119 926206334 702504848 91601366 754141951 52544466 51310645 477708321 841623698 44269620 435192642 307633585 673546731 193441593 242765659 203096907 458079578 629499973 158305535 667064999 455784495 521863387 707097331 363578627 189580523 210337184 851369565 144865699 481344610 582631198 597663573 859995799 719914778 705092666 158405660 735738951 948955167 237304876 101519023 849552214 795473165 217208359 92848537 332882560 416748804 454010497 413801048 994044749 718155666 166688858 298358982 346058940 555206513 445129920 691684015 656593665 726868622 450951127 304069724 311091174 997073171 563534167 523015421 297895779 653704983 765563 629588460 130464040 375263914 559432172 663210594 989682268 669606558 513017289 306744954 366330436 987044961 249598215 208340106 540288226 320687018 263686162 346134297 559806447 498235647 949354635 41564138 921786502 459166320 371886238 421280340 85439612 334956858 547579591 2195968 545374954 408275476 724952448 710157843 290047681 27886013 401274863 862591440 380485698 857994378 682010912 371920664 994507370 89640858 192378570 739475068 5692254 533836425 752835675 436919910 253579699 18386132 802573150 416337423 826643620 6597863 572853186 204027406 157176547 816075267 21054900 897346197 755520600 774909705 96744680 255777868 847153503 385910608 948722804 943183987 43625734 851793449 814936928 24056477 185271547 379821268 386018357 380953944 549667645 862682337 80067038 892761370 76260644 720931666 354993352 653801108 999192509 540247971 755688130 652761129 3594255 549039839 132346629 403555826 647050759 589994529 466471724 444844012 504214568 439469446 255261653 233444870 838336453 524493908 676846768 34197296 280302155 4462352 471531683 58325759 472428324 927606152 319063113 189192977 300686636 947814454 56084400 971262766 907093259 245528597 591496576 272361497 84592685 741129894 634146704 226752492 512210529 262001355 224858927 444519114 997407153 24954370 277197168 800364928 608264938 972795217 330219216 917721845 720184140 519540255 192960888 357261735 701455839 799584623 35716419 518685767 606374607 940377305 511267482 698358797 306912060 567847210 603990159 40433433 241428093 200083469 451159561 947515619 449368311 577226690 773046324 345607121 850428306 5003113 445275682 399359986 324886550 402026809 282031042 353942029 578494878 118427317 391856549 402025215 817604083 101733728 367357883 552234037 236011533 615148695 983444164 428226519 279798760 296868389 595875197 139413645 946089725 605084243 191741545 389088287 508710068 352851079 847912190 903401040 156573125 986965700 822573148 80823526 157689930 614190094 363447705 659521483 705423096 468817586 819171859 109446182 893452996 839328167 716667838 417970878 744717447 181974942 721018312 198671548 3672610 476692300 237567861 352085719 754752112 426832712 98209095 906726651 326547377 864242980 751361424 564972372 580430347 879996649 91385517 178310557 89915281 738489556 196689206 668156612 864078515 859716359 839564600 811927436 979132371 956863828 156352449 170298138 302398747 574158085 415543858 494090484 688463307 847879343 869143037 875968904 126937208 86127831 740912961 355653077 32755221 728254707 952477620 753844666 970367084 923708171 397391608 808639847 309017091 80274459 238397324 232909081 876475799 147428556 504865755 820376296 860515466 860823791 176113439 194524598 720135839 827818987 693381758 748954041 626208743 256125380 464825598 693462902 546245436 738523994 697340376 481654061 312988263 980102135 375119746 640942533 400891828 703496526 236978177 784864333 765230005 188509713 9211662 539587763 274322759 74614664 730422314 832240445 285664288 969507877 342873930 918047123 231412261 498202550 427644128 435670302 413842442 390946668 709841057 72883217 640520185 626304147 800298759 103783833 349303782 4486843 135282829 805635418 939212766 110298910 49851655 323781817 688664336 747903435 219632017 336382715 245680481 259681959 586833272 437460015 547238740 676426940 749947435 459801554 911956951 911211169 50119128 197614056 659793426 235781934 385155628 706470023 296159239 514686994 884479628 538490565 549237995 496501320 717441145 205529273 840146443 414924039 119135044 462295174 224010982 909259348 146942834 755994342 43331627 551174723 919303189 345363820 839777475 93859202 251371642 984027512 777715312 388561834 485980611 795691187 280813358 722094225 758724254 438961747 70262111 870570189 179263536 674476861 32681824 937677241 520604106 739547801 6979298 204988361 31047933 206510864 878859179 112770946 627439911 853660253 290271659 855177319 90421970 263833189 488440281 555158340 165267833 366999998 183086332 559737076 46874461 125622541 587457699 461252814 193462358 68361146 944861168 624524719 309967486 311323790 165815444 120408736 913297569 702649282 576442992 989756032 938018212 934769217 288220722 784582517 728543600 732591338 360871499 155132639 987127740 850567518 835193831 374183221 283938400 165143303 363383098 469268735 817095031 953240621 795224512 849377553 942896851 42269248 245842610 177810755 358544755 509651504 31690890 214744275 538429858 882515333 436015455 301654169 217473646 519172483 69282359 977181441 489918264 800651447 964833954 364956865 54402802 333220195 398293016 585547048 419943956 30561404 30291992 723948120 147866334 756941501 538673160 567625908 680272325 198701458 16505852 444101700 732706358 890612297 446528697 92992900 769329862 771073091 768265555 970318617 313234639 759390247 270186247 626900038 893385552 831140736 656751150 202707359 767023697 634162046 892728244 409850021 957153912 350891037 313274980 629068985 492843635 73886064 367075687 352848508 26630581 643730355 798109517 585866237 893851 949786377 537914711 587787344 69500701 168799771 831964933 653842992 545766267 453301372 364079781 641550696 129946204 221981068 84710306 852234797 547693531 724568985 511778973 637617132 437274793 903143965 564578598 959672214 678826423 518315196 488675263 740460759 130379401 373100424 278918950 626231608 192294889 893686819 974018668 470685109 787192847 65548397 949998468 155824143 809279031 757578659 612243585 880048112 190323664 957962911 294912413 876546246 385788570 345317163 594607850 472162649 353000721 80449114 15636578 856380520 180098000 597751027 840151611 588598025 384466090 246478839 684270861 951904535 702331619 329360990 725083746 910655708 152998781 766380528 41602743 361788693 170182870 816709884 207525908 858907335 591370789 174807597 820564942 417813438 938439168 54383944 577833245 921192226 141994378 848877326 806810990 744239971 31531123 986542894 570328850 792702719 70315233 298065381 26232107 157920661 339099416 535058653 271479370 694232583 69436581 837782628 173124529 157433801 159874323 812714486 138063876 552177924 463657830 757878645 716133975 231249962 553012069 279331718 770102878 900105890 417803465 797769815 146084509 386839658 783051457 340283690 204862046 566225475 952316695 606729395 345936439 26907595 67270797 890292440 606703276 146912597 218200658 569674833 31190682 202954312 984232345 829940153 435138570 51271306 148745001 837580842 983691420 151226062 284813829 731338592 685659587 860683818 327972769 427403941 195834839 678894204 447570110 585050126 154544215 748480249 271705106 744039417 952174163 909872096 855789479 188540323 54560971 224447773 530258406 755796217 195246174 359942449 748646766 819000420 571025583 58297463 904542555 482230336 674012541 705156715 35132482 640153006 774377061 610013255 813382381 413779362 47574459 465450806 460042951 892337545 46469754 334329694 833999525 3861522 181994470 369133991 607050643 979596769 160464678 582371666 212569779 818642142 493466865 476899391 734218256 695385346 215099639 206233220 221569510 187741967 646105549 35820988 60906038 171004738 313000552 782529072 44583396 41983319 71440838 926435398 223169211 835873201 209835208 206618550 644751294 561738864 349759286 531803697 956893876 894109302 901670218 553583527 423112670 772038685 555154512 560633829 900382402 807901362 242860238 163459617 738576379 772151805 72096536 191453146 979603966 857887013 52349570 391044057 765306554 36861964 878595629 968206992 396133915 414965522 605996925 77396631 437067303 989305956 194259865 763309434 599466683 958515421 546173669 978592223 53393640 707162183 167209038 108360515 867585635 352572944 90129391 275517519 879997092 310084155 589335720 750979495 824672763 548380931 121036388 626107880 630403215 619278900 653931682 840461677 703140174 459133913 662162425 272404269 422972584 480808822 129375169 215362411 770686359 574846973 495205928 219082586 754742674 616589178 30148038 985375839 670166601 437810332 728594544 287193452 943317067 808579166 874226965 473463519 732711685 1301663 511899806 818517607 60716118 914585711 346389123 375721581 77834093 774638681 737500947 43457936 166712799 837660012 238321530 674781120 711603995 892389171 618047651 809437724 590695247 838452777 980562553 710328008 196422032 148323168 779550599 150558713 27939043 491954383 664705265 404465481 880733030 190270243 497280086 208544423 635236713 702116120 651459780 296911909 355155322 26599140 615741584 997506385 932863568 811267716 532726108 738481075 188765322 254329658 367718515 395282242 237551844 974692989 858318897 850766754 992708350 819280590 311666675 916652828 100880947 502109347 151600181 168010692 180961313 821461104 854428271 971997237 252671143 72043023 21967681 636604748 386416020 697376105 448456569 202959596 930959791 786032250 776291350 732485261 697443155 979801131 816002113 554072385 893620673 832656375 368934413 36439577 625749861 622807280 481037222 57647507 273971572 797388038 292745468 288795258 407817437 818461071 654134924 541815246 296961925 223069684 623758304 833648142 257085844 412986644 712458277 788093725 354266984 346545777 90319397 91454128 131140070 142894735 895524509 409833340 536396657 932438608 254106701 379237627 797688956 574011100 142310213 706691424 865515590 8458607 29765667 356011273 426394601 151125845 103254319 726535363 701231520 518598347 229563011 59231316 716406865 224509826 961302988 24561502 974410596 376123302 506192703 70002915 836060924 466179017 87497939 354881192 392650919 338143998 686443087 583518454 924955992 152451527 127570635 348317524 166287528 358438648 224778194 380235189 545708032 712493560 738795421 693511363 420812912 107082138 370641175 534804602 249379855 897889895 701170655 210297463 876558834 792006625 583214612 319486759 739635178 380637983 924340972 337641891 521212364 294719298 760874220 806849069 74379914 14223073 166401282 735621323 559816830 866868062 941083892 334251355 109493003 511305884 513331567 828276148 108109536 588760182 326964101 878667046 53755690 642771118 596563984 202150103 519064797 748676412 672783478 10089538 607245285 777789576 768799388 513355214 523146125 128294558 394416180 776372203 522010788 194702011 513186607 115406118 794839004 345563148 521948743 760337251 168511617 233079140 588161245 157964789 586074212 42918443 204794336 373843868 711892668 719251987 168894257 18905392 440554060 858312142 502685186 703787646 668912930 830813423 764081566 844908547 969168134 279976165 529205229 585166804 541169060 948571139 904948756 205139609 58177035 702474449 759608239 9137573 370060366 531507336 808143659 605289348 609367180 16070496 520536988 696454376 769298934 652657426 645385728 206007580 392847421 370549804 779054796 697899275 266622007 557007773 502294077 293347462 458818703 553530612 119548770 608273694 158287494 349011406 291038719 238702623 306517992 959470216 680567408 249546823 759248784 655630773 996023319 785037756 339516308 320152822 233220639 718626981 941431627 117814737 554431886 601152271 278310852 629263841 252830838 928040153 59160429 697687991 261979935 850800847 883466886 289586147 304014867 570060733 697310579 295959945 184119978 580627002 991887775 101708479 304834773 725989650 666664114 828326572 541936677 673587881 215696781 65222255 955296138 842481523 257323122 872140964 73496874 312696290 479977271 546237510 496236963 363572654 302515128 819344717 39865552 327604289 359786601 218993507 409178061 755506627 328589931 658867462 49013605 51516766 390048151 254106431 399313673 856193806 896903246 761141995 164119423 855911930 836537199 109488330 209189613 955458246 385396013 937451007 389272622 153304596 918979646 620157018 778317017 449462543 845035516 655024658 214460278 357529793 289521067 944855733 226203668 252242100 878602930 701469152 393979273 567616818 495919677 38718884 417614215 427663050 669451124 91221666 779981836 59017934 819600758 820958291 38542514 77603579 592127768 40032032 556313650 282712183 544760470 380622000 228437318 855931944 80189967 4579875 316147530 239765616 179609089 811278432 435236007 146362453 385358682 538989095 855407018 460684416 734495961 330708193 469210745 756436240 160744503 630286760 594066408 786690453 889258927 357159673 518559832 403856580 594395197 486048096 790818052 687074572 627829314 104435980 225980420 356262453 747430155 284086720 103192351 157116454 97752915 589084435 953193701 727765601 337437264 227965072 775489496 114091765 449767276 931159309 598657657 257646380 570420626 701586117 535593895 358098342 373454689 382795568 167786084 685565207 345082960 327968564 678444855 598024334 860899687 836453459 268871563 736470579 434041219 104387347 321230870 920744894 632355110 497386947 479584716 553051094 391112100 609110670 585213917 85540729 294164280 127583871 897768801 188065132 154328855 106882184 94968079 241285579 753258066 127896279 821309028 966897421 656397861 145124612 585312386 182112466 184733341 502368607 353427667 407386571 369895245 145947935 173921465 387272191 221317502 111836602 716942060 36261310 679446908 145805982 695471428 630823871 748229423 675870537 721874557 560872571 198640055 458673623 158002695 419432665 272408128 217389508 277379203 573198677 674430526 823381619 807513739 591125537 420077281 278579525 284801272 305103084 733361113 560634010 682302725 596479779 673695418 952535426 529126674 155354037 110058947 816338134 333277664 98838802 39278094 947789634 696156208 740448816 228563259 819831713 67532304 631584924 809012913 727487992 662266266 672029320 582432405 559364658 973028151 960064855 862218214 652386851 349764035 500941328 636636803 957393394 88383721 925644316 124754755 459915746 34345320 274463827 487933672 520351662 396017387 311929996 358369701 168971782 489846887 875166970 79834447 679236994 121939173 877962367 350651533 943659745 824173102 104294029 516020844 342696145 230288360 932643877 491909395 742378600 485315157 510798490 300068618 418337257 79487787 890994669 358218049 395640066 704571330 635506051 300798136 829964591 436297967 95053512 897954802 708310510 754235677 292334717 86231739 513594508 685104678 468862071 52869438 86201865 783001453 49507288 400763517 628234729 735761896 350432042 824211372 262542256 437886112 732278600 977918893 611223595 109556070 895273175 327955520 363714778 523574388 820890646 452647575 346481721 519241360 839972286 690903685 202347547 936624406 222741049 874596051 843705217 848791859 439754142 513709536 731081190 515238546 401499967 27893328 189490281 465727908 782581374 890881756 688456415 689104728 168134343 963114026 124847596 23592491 157889433 956435353 713163883 652160158 978193649 368057715 522065304 841032982 798485998 667427139 939546509 819330165 788827346 881276402 159700003 549683764 187237849 970825382 628673964 841475764 196993298 536390931 412189781 134487728 866581241 757310885 540137373 871639472 106305953 680674923 429918041 262915942 14692597 729926280 885554087 154954134 653491114 309794138 982376701 536009871 246143219 614447531 211747563 627145478 974928090 231281286 143597050 706677949 470649933 376108614 827309583 977233023 536151462 971999447 149915958 494784791 816799360 428346560 448411983 982658840 463902777 463187290 163938739 431309020 524035632 647869119 225156227 694288818 170945911 43733079 645520170 431856241 939657596 17966351 953621436 807150446 700467349 594621925 120641563 548760020 959277394 477403162 612156126 400101645 828566376 923445430 508849762 774465203 33083239 22660452 272261736 470516923 660517877 61030105 890953040 398545511 92815720 607263474 290377026 914167195 320225788 590350030 565423903 826207549 541703049 12818586 445120929 973749628 596500155 678340740 516685796 72333530 490930571 214765853 617087971 401659605 921046383 107177398 921814991 692664925 283862359 763084469 946236564 251788427 945503180 897115232 622072476 821028939 357457348 756959149 201987497 245851482 277136033 238581163 215330467 385064347 283445223 179374130 303704233 336769227 145441856 503371820 276318937 992309437 133883234 964425427 17332481 664250944 389249186 989192280 271686503 565861863 296561982 89043159 53504326 180987213 848195897 454934114 643584242 919405988 346465900 785007697 249369350 795871233 645368634 900868187 430104500 700109496 1616154 943636205 91557076 189796306 523969605 845816682 14734118 137334233 737830069 852496635 906012196 719723655 521702413 687028158 708530811 264285764 367469460 450286870 759850220 296191027 526276511 332077298 638473911 60081491 156044923 7136501 105103917 111802442 475037572 724582237 910002502 147146890 858661786 819859483 844102265 687614503 447842828 955692853 77205435 944508610 93518356 839889489 52423294 728278132 727530133 278691070 963020586 476019422 48419019 790991051 949827965 70687359 907937058 699684007 398072951 846084578 974839180 570188458 878851940 455955753 240218990 720587001 281022516 871165309 825315277 423623710 575372969 554703276 913368391 524489281 451700381 839286704 71405895 27282994 413096900 665158404 395954680 64398691 364708599 815938968 895511310 947095444 51791298 521729820 677765007 143701865 482408129 928499586 318271780 749074411 530368531 50908282 352336730 839191122 947594310 623163817 531407997 85618013 380667046 619253912 213849129 733561555 788484338 725535599 748802647 687026432 217311900 364454613 54255256 614584640 11131753 304860574 134139833 386100478 407025177 663942330 409586871 960038513 294653611 595460947 143663336 919939567 758048856 680345108 73059366 609942474 855163347 516441417 109501553 331476024 574610460 883014452 709952831 753294543 837851472 11337123 362104312 635849972 83110491 422684393 658177498 33679983 47373067 540987887 987013997 929783808 855018444 506581521 947865299 552330212 834015824 935266608 570672005 892697631 93122642 900573683 545991398 234647015 215377709 823243403 208116236 458863208 584276370 744777935 198933965 479509164 593473524 339452883 889106144 660275415 210910357 201277623 218216311 533967139 377785949 798528181 392812613 71943828 995682787 72834467 185078292 390960597 715838296 443471914 324484590 502937691 421674910 43901464 872942521 391650910 88160306 901296758 629683917 557285216 481680992 462355906 615937672 173416700 992071479 508898602 678136067 870740459 476216981 50085897 3672278 292882924 450762714 31716915 298039977 9242824 922219042 712016729 304928284 907663232 615314725 591613271 384243916 612842633 781686136 344706011 994441972 237507793 92577051 69352463 402888036 495241352 947704688 338226420 225347790 586189871 345575223 689333730 983972760 992095963 184759601 426945753 442626940 767442703 36064285 787480304 740113104 157629429 488228226 232999517 278184063 52629367 639372428 70661239 380604298 367851249 269179603 610146401 419590371 352420851 83283484 710377491 100483558 315413094 917155948 50942471 486804747 365301873 505723817 672322663 8797393 61211344 728234063 65894855 73052564 328950074 272877574 779073262 985253764 375686031 13247117 672171466 792062709 852041581 537203048 436366468 38417674 763111431 708273575 108640262 869522166 924473297 420158322 76251343 51571644 812916834 845656700 104517984 740760851 146378142 338384914 361920311 545650177 770152078 293108596 690476065 377235360 959290898 273604128 956171525 729620798 318172408 313920095 674400976 371669422 451608006 214853239 666281294 412783028 834614206 485055466 399680171 184482010 246661923 622007403 882966842 395320491 730327374 764767507 897599197 620852825 423306142 633285500 113486812 800090228 843339880 367708766 333258857 348567280 276504803 404655677 504553652 432562679 503712719 986486409 245567293 913639066 813246031 523277009 268928465 376033905 348293644 840822957 330419579 744776197 195968068 973465870 985228309 268274452 487763522 12561937 348166094 961494119 797930760 661105717 764956541 215099434 555686466 902026339 71447802 777848042 652163849 382810423 447454427 593415257 386775124 211031147 683729742 414092658 524787377 70845731 960851499 886373991 868499832 206391523 977591147 360835414 100343041 479250260 741657722 50548396 146615300 582006048 817650188 78405639 464070186 661503782 524174199 475659387 567738582 40935012 972609845 447645238 699654244 387150027 563822198 923249944 861553082 535749116 895332165 981526321 702410960 829710094 127419879 219608272 361552814 657536215 108288128 67751290 217698499 23734194 915914587 744413093 751365242 532552031 837781077 860989763 851680796 233505721 669475893 399476504 329532023 951487854 767879506 160695612 962414303 370366735 232871985 843640836 702729189 66620951 865925026 413811205 247562071 330553479 598402727 482677683 258114012 168737843 493091147 451422595 675352471 203624575 921424354 761301929 670550268 169552281 531409223 846332998 561925680 827537714 220250227 842707206 560367285 7395384 872037636 178602869 852316198 728741285 319037239 968805227 531515359 726580082 236860252 437917356 394599119 565206576 407475348 365315417 464229835 548412716 725058220 953047114 224396783 612763786 261657865 378448445 4954219 552056049 848182324 474050713 215208701 496669154 489332373 97234919 51287975 610044681 789973587 109092170 537482273 349083480 887278364 222035974 940474918 778044312 182987685 401322228 356659391 619347864 226759171 79517424 210647245 27681396 311891238 529640645 789089179 452700095 103397508 52242699 906355629 855130773 59641574 212910939 898843919 229994576 219350204 681621818 242567646 53361599 515024170 345810975 954971445 99733848 545407481 428079474 745710519 18466950 205003654 879771312 213577528 66642158 982495997 591692268 390626933 493715945 887708920 241269457 535573961 941452569 976703525 44673599 875939941 326527316 274455811 434948848 307552602 583143352 870789525 287614115 786580153 875102380 669751569 569404255 999472908 481803369 149867761 669505744 7692017 737728944 653219962 14300689 723569418 471089133 209752644 787660393 747442280 64662187 43898895 725716506 75549669 621242016 594078312 607531662 511497895 929934302 774085331 76821384 618247691 66222619 303961248 740112918 978894667 895817718 529650426 904726591 622692095 504225664 433272992 688670040 187747671 206232463 376843564 737162778 803549986 358665528 288470609 184740160 400284004 131501230 805282264 645134831 350600156 236736086 591489772 480688784 676586585 354096492 965116942 789913639 663464540 138846292 925844543 301739155 930407017 255214044 224066351 712596902 265510211 897792176 521897275 764979737 94107662 901714158 818741010 522882066 885466169 52458795 296212287 553196350 9770695 884912140 455724172 41660745 771037075 97818945 501827087 508950510 983158933 1796925 739961421 20919230 105862989 701442738 599113542 665260583 440522008 384315251 184189082 168544081 352029422 119285666 999767828 377804869 581210004 783080506 670010659 62406790 185992802 448458917 581425373 55986282 110489869 736447577 177023591 193000908 809622279 781576063 734065977 772139261 952415605 113071285 169949425 31985442 179735023 159953993 901328352 968687915 698377336 540847704 73374769 889856144 914954507 474733043 879765692 649357838 507420898 170944009 832642325 22965625 474748445 42366226 252132391 647040621 542495944 673761631 437096942 937397703 884900793 66796891 865527663 681530641 329879035 148528454 860538026 354261446 443936316 703616313 402904348 510437807 269023106 505533927 687750113 529146658 186359567 540448781 794187707 396478872 77815400 303920816 34819249 551063545 917313699 255989578 532227402 901819126 624251527 21638085 763395263 156103837 667717228 490104628 920082039 656677847 43256020 633499153 56134950 846550593 88621625 567191878 586462689 719522262 19015106 692226383 643542557 26330879 532676455 350349793 698115216 74504495 495013513 375868638 263189259 601047547 393041890 770161057 376030804 585632630 173038877 777611747 732574570 978316578 97269572 403804752 437028379 608666823 425774399 252109795 623957459 755002097 880406617 351940750 303825197 247828292 17448974 87924107 214568329 970119927 81644346 3907298 179473527 591789670 782051176 910363338 599708701 193007071 186769844 531507323 346439641 353364566 630045415 268473990 10382371 268016326 175187437 423697358 851831663 397873101 984435152 451453707 189455350 377011226 296649908 394002198 427299873 675180029 76315754 788574064 752317756 371217300 767669466 502480834 5178539 589213399 204261031 204260034 940727203 177935698 627598261 506716752 698636814 754728277 860402279 163448070 938476535 201577947 960647055 643344438 908294192 31786893 78762379 559849478 946864117 57423135 367462996 661581608 987949013 55690442 58731424 564210277 1295897 485127440 204306611 760495304 799585006 140707326 740989761 293534397 191532961 120521467 680052618 811060398 971738687 189305277 684938697 209103380 141252997 493103600 902321624 193629169 567343330 537688569 421060101 789983480 818457291 19374290 270606163 720839254 759139385 418857055 155713209 508406712 563761960 347525474 32224 513717004 954372075 723810776 900652428 684820946 172768561 83412143 522030946 182107782 951244784 675641765 174830103 90376101 903582570 790829111 502400547 896981409 787096967 106664603 218687661 984583104 779595260 682924018 641075235 263541257 641419669 342071469 353616847 418268606 991969807 890484238 4898625 514091793 891775630 968658911 23545422 961350887 740311896 125694967 155846449 540037177 516568564 247184828 79519548 865877524 14650398 837589367 270547332 610121332 836954971 268415109 897480015 651766996 550562098 677414839 165709839 624512372 114712162 313489856 853041408 33738326 671183365 247281907 700703849 593872879 563278646 316118983 959546577 859857654 828657069 231125655 857847972 748421766 295153434 302369035 883861729 827689844 727351585 814408831 73436000 377759081 997803047 28860824 595019322 708168076 71106584 958392116 61851997 443024800 319282492 815638400 121269967 223501602 804368319 749823995 544043603 259675257 956241303 881526762 878738860 62213847 446871897 889937485 953437617 269929603 941758867 348146466 772767207 304636889 387959620 243110898 859228301 367062452 59078717 982886443 492625320 825775993 692015756 386190651 545293804 827610798 230894561 504794271 858682107 840673907 937029794 760082880 599742619 725011103 447670448 303306372 673111680 672335372 215687742 534948436 380710307 129870312 4967995 316834933 327775406 187180489 485086958 858190691 1069341 440458248 183724622 384960505 511833279 305100521 506705750 284722504 152815386 585200862 213273800 724629392 351343430 453562335 754292507 789902713 538519049 145724860 697190634 694151843 587270378 431195592 83855381 450730701 611694760 408069755 432028069 197560562 271019585 598068103 219843877 577764771 228095245 731601247 503870219 542108803 319272251 762166174 231252473 992678710 419029403 606188740 23919707 138604985 547789284 64957965 889578291 997690082 489584144 383429629 602581511 275840737 777452978 626153920 589738456 394708259 396313173 313383399 54222347 972739988 415024710 832383276 884871849 215784178 932609755 269435417 597480189 165255955 840962639 749815292 227178480 959803851 877198767 430818144 604676671 228046052 60799150 342711805 547417252 496973070 352402985 262425 225525034 455173252 84732298 490627508 450034266 278522643 600037234 562525062 926965506 32297725 519390096 374979254 467522517 58289695 897230017 913657411 871545336 129360390 529773083 547912891 612427635 79294554 463798265 212755839 320311722 385944576 528614008 341053858 800602527 579330357 186146963 569785675 30378424 137910573 348709629 667956717 44132872 258324215 193143666 78175920 670515788 90443416 821403004 413897301 831251451 311891954 522642482 730191533 896014442 643426826 220822555 360042131 354933216 987849978 700625272 177997844 256397857 31557108 295416137 654767005 661769756 530429586 283976343 107699201 188199560 8024151 844831537 826331083 453998971 178998527 552085826 881060264 881741671 629425259 855425851 231748498 657348556 909678647 662602544 105937796 829827595 829293465 587631146 709362634 453011576 753290617 109805120 427735695 526404742 720585145 486185860 590671335 95912351 805058151 648231040 963344538 888829503 781172796 961347627 706393290 221440336 731349611 936086841 532100328 257073551 120649915 244166042 541539297 358549332 421471529 531263433 96421764 311468314 354393642 588041617 55271742 122021346 524117209 474565335 178205645 141900464 743656717 831568637 102065814 340593432 769080625 885272245 256252914 272886846 307987710 918523694 576496531 887373585 809903994 79973439 717599421 275591774 717011517 239015076 514011264 42817461 574210569 832765120 335792323 803198965 164546179 159411968 311488025 148975890 717092376 257722365 417911697 760551844 344975900 7395868 725630222 845518343 78561621 218628692 455976071 403377950 933665114 341249786 463220332 322327272 739651424 963032100 241880534 254368496 90393856 288162544 754583532 2932115 627814298 4407201 32222878 189794014 451288846 736601197 345568437 250156665 816890260 620724718 658012665 363795629 211502293 415998503 100148526 561043874 88239586 642569606 842868269 687067221 181504390 779373972 371700123 23859379 413212260 545183336 328792304 675445243 631641332 214092035 544507025 295409430 514929513 740518955 262914751 175450377 744378409 374188251 790811555 553718129 474527651 221803271 314745478 47616671 245569352 872925001 938855142 290435412 503724192 687063246 832479938 46534140 512702243 474765115 822574537 589857036 107852993 852642931 925367040 122594969 429135272 384339513 617267941 977014639 121840615 784005803 353984289 373244436 682557214 731576397 576730967 332549337 508720366 889105021 93723607 404384938 168354502 250069535 86473290 433573687 245842157 686008447 559172440 598816774 246827110 920616801 692379654 153599914 77531530 741620899 561205326 604877584 936450956 224030612 159532476 579829520 386876693 239488446 739301006 386915085 895692062 775966751 383916115 734808198 982392415 688560728 542405574 661159156 346820903 517130904 791634001 483011075 45878109 586412856 545326755 471030798 126087326 476222590 992138074 994953293 63966719 429237165 725130011 421156680 752796744 791295144 339676079 506671970 654094698 655294790 975192456 146878936 279508999 423745763 390623905 649074990 881984036 74626929 664176915 592143326 481280654 487527564 446910694 585923590 971714007 654763256 345136465 254084297 835573605 842758553 675712579 198523256 200334685 154696135 453000990 650968651 913342023 675301997 971070454 751001826 930490308 471802729 795022405 626530697 757292947 596839222 661536701 359984538 22607205 583817661 615683673 403379110 703942984 393207544 251853712 10807416 38355218 355597319 344893059 72069727 384405704 501737996 576381606 573404670 881473202 135776177 226372308 948908618 167665778 331171089 171660818 101278640 997678587 503818187 71523987 126405262 883391726 970203302 379968134 998766163 771473374 417219176 770660790 567347356 462885697 388399761 524655436 424232992 136427512 1892710 199693129 653890512 10854097 340311443 840208055 551646234 110749452 44204455 622777835 69386429 818795295 516603898 302798190 767607209 634830377 888531638 459428037 931319636 331238663 200281407 954552668 420247919 350987006 249562987 799808793 624212173 926825847 755275370 923883565 431240593 250386906 284741573 389073163 941648422 550041811 423108969 115730533 363904429 866211812 81692195 289768073 409878157 903651799 766080142 300141930 488257864 573187753 249566566 713094502 394419391 760977203 850278297 697062569 924235843 743444234 95711540 254864365 757408732 881608237 32255279 869883188 161557771 370794700 671300139 595812249 960937251 986543550 789868461 390991240 360055142 785636238 106031844 580802904 578990922 599144924 82524167 66105344 523017327 117906029 26544153 92104224 106635248 14524478 516451706 96344971 995792201 326889623 197980099 813526615 774856915 853333359 871315262 836190169 777093666 348145678 971829442 222518834 873165112 97748523 319689552 563150565 828144826 19939424 760358974 28626864 14732732 180314530 821279411 980346389 504255614 151658945 89714625 555299461 570705844 833678017 644706268 663290933 475132061 940151863 355022330 435868684 59579471 74369192 49099129 20704476 615188244 146285022 989957546 614700921 907654240 443884770 504027447 843745075 742481892 341553280 564382193 163435476 15212196 725145071 57670085 435342535 193888421 740547348 506413331 589235639 37641557 278642443 735493788 117437831 12880361 366560807 850395687 447002083 82733956 1065252 747777155 650944591 458323859 728709668 628614278 768631468 915661488 278804074 525640038 762818140 594928043 357644850 880029081 176278979 436005510 505937718 241143050 69425480 861925685 357942097 924920274 73874604 53016854 726831815 87904088 370843934 53000919 670313457 323368041 928247662 387653664 911648125 808099867 837702884 360236330 209549976 864363136 135195633 561715417 471111750 108646797 225374813 394541633 843757353 48800432 477236587 923952933 549711279 432984643 433083737 450112601 471119973 767668923 21961492 741552327 928766431 603810853 13919093 10211921 263776056 831675398 508926179 322773581 581564409 891776174 484981801 556967480 225316361 788936251 629155381 798005762 22813155 765737466 21199824 98418154 30106593 138098944 690302024 38546556 897427912 497266455 715810205 794377738 879675044 548393240 311880487 734304712 860921974 651756176 259537521 641427163 380753426 776547383 617435105 839575247 413475267 987025877 61943018 873998055 275338793 157715345 594939954 294933534 338071752 567128432 488530156 379990941 607064753 758093018 152654114 685437465 235104456 839311420 607369150 155782422 132033160 801847427 733823963 84806599 258242540 480701248 249719417 526007971 144825599 607413652 914747416 8086497 867314124 691391115 757252105 505950643 478962395 615790782 754509310 754671548 827218897 198448661 933820560 965560519 427668446 268925105 766146814 297723441 897707211 45435111 780330039 382463737 876222323 919762161 695128634 732123085 37038813 794889709 383396592 178755106 248477033 902846586 665344419 867532306 171206912 456129677 400684515 290692065 424558729 174750820 30525333 548225766 453983048 255717273 100387438 571927872 389613705 136662463 186634247 132899035 172282787 501108099 377003023 702614919 554715901 639427463 397649458 537466249 533467356 13211317 656122409 487048248 395999645 766569965 126497759 607343462 816330934 838807460 264195760 896098127 385280104 119933223 759060884 48272438 157914940 460309021 570295387 606404190 451546555 69007443 769058068 352244779 14808411 203465593 994512523 336750478 42857802 399898270 422428352 365868842 83250790 156709777 35411161 919825028 753731787 754857834 278254921 337997603 610585349 253700544 831581926 18904032 732780456 743248584 577919016 471549218 803837052 222620440 715363577 883081293 669330107 888978797 926859719 580914153 249038788 355171397 185771643 558067808 944832774 631866915 901368964 561275080 756116926 705167199 858832283 130692635 961885522 258246974 893519308 248878098 181791461 24655822 107464915 161718427 573179721 299513487 446862622 45549123 130869170 137020537 341532843 636954349 906826124 636860401 716170208 445046138 438841679 709669438 424123043 363272990 826389021 626641359 80534481 978767799 742500847 938610405 331719405 558641107 835799995 230188143 293915949 221602061 124584551 671496554 412901411 646238721 457811050 15074550 258546253 694249884 564896410 797574843 383775671 653852418 578356229 816125558 983444004 65347734 105031518 933758014 709619902 154374381 877380423 105734682 911693284 664970026 21542134 969530175 384703564 702490277 474968318 37549985 998866306 191295496 452858883 275510813 275878343 739138694 106298164 290493483 152309412 465034062 783830910 701753782 844771147 978282568 125420636 567243816 481681549 945069391 637673450 288424951 309585460 140977667 418448376 66479148 332935451 645746977 391113275 309194944 518083435 345545088 619474441 361942696 842131882 630854418 553993446 283703234 701280955 61919659 350698537 908399852 718176611 286069927 924901318 529236229 386142726 987112963 537917595 24983463 169048482 457570855 319030602 112625023 474392226 472704401 641486357 28137997 675703177 702981128 21822654 344387571 481462476 170761859 497966319 409357586 300645796 51843942 730608620 827286445 712734878 426294508 4679639 217167484 648171152 71325799 282048418 32439507 2453784 931727445 780746450 657790223 194252248 129929202 297836620 299275030 812739439 653256902 272994213 103117713 554319302 367848314 248061853 761174693 620381221 84831340 155696104 597697686 32602207 477063980 582979435 262757328 792344822 47476268 41887765 37744365 260876301 806245206 714494796 923991230 885698769 800984116 934821094 48972288 660603635 976721523 750090588 25995913 93334800 216010122 174195780 227450001 751607448 798895304 134907159 996162062 844463256 571561083 667557939 689082632 604520539 149757947 716427480 973077657 918225962 671547522 162516710 545637276 797939589 809942091 746126291 646296694 524242580 801558732 979667192 761348989 545299811 664147028 736773783 530954946 327805015 959199966 682703340 379203549 452416464 286360740 181115182 484997783 567901459 882995209 224014233 591200649 831679427 225920984 271848464 977332932 243533844 471166626 285488676 603580513 834601715 837582417 66990728 435543774 977430998 591167554 855277556 61437191 41798313 612780728 903685643 29699872 680326313 687439389 373911667 173155711 196405832 391586959 989532620 978561754 945918441 682986007 882077923 316358643 436769167 846550505 444099680 566391558 239289561 180901017 105054971 692684544 969377819 588532505 225543278 538422845 737207558 73936621 895030980 58781549 650669529 609339542 937045754 659055458 106031149 61463762 949292940 461277897 131572679 496594913 521543098 68701828 680101828 362701734 598614265 864263722 734789217 748552767 460559655 271976613 766254434 765848370 974479574 337354250 139319395 236677615 274396335 545015462 595019194 923995855 126812177 947110614 383791099 440176866 192298081 897849985 660373555 640398706 593617602 891256544 622846733 380252002 959747152 734514087 188376592 591251509 541244900 910474155 660602292 758963919 171178826 951937851 291436507 84883600 602852069 5537528 759202419 947229422 645032606 379813250 513717916 380758035 718203631 733359888 599207824 291222146 593371641 910520766 233041327 566264067 847371316 417951190 804814162 510965550 210853362 287575337 513694476 359318381 138880429 931707237 51702842 858778454 600837434 670409604 193217119 258711225 555553916 459783337 397154471 676419711 426286982 883222876 518945454 453786550 313042395 681544579 357861757 564329126 289204488 446678685 983610630 105322317 230011983 992781350 216716743 485616297 821252364 348158989 182800695 694407761 804782200 650321916 185608354 659794353 687347293 278675351 670595925 606427273 163738765 532196100 387862158 274662616 613074330 291106879 177533430 655449324 117425607 447291519 913547986 585823486 5431559 797562854 851259857 804686261 414950315 322650964 627860646 81497085 662045895 903496741 833523755 14141912 653722544 766177540 237814978 878778930 297805452 999939856 586621554 855902767 169130212 753501548 854516388 328065411 605765457 844811593 536760309 605709449 81533420 721107588 473682134 920325806 740659690 445691562 566252982 465410451 762221155 274972231 691479282 432985456 275409771 366725882 268883348 968191005 214583414 172893249 36486798 66280055 552376449 689632482 546488659 182010855 185397840 652904034 299490306 687397916 350963296 975065754 700229120 351505196 809013029 972902302 746602620 411588279 135655090 603562537 271470748 603710832 471632886 79025 547352923 221704157 122301772 245060762 145088945 746155982 61102779 189768563 294563127 95326972 725598239 306232366 704754022 809976114 196764570 615482529 345181703 854507698 199295157 366566993 972684223 525940290 1052900 244693473 404735278 997130491 108912286 112470564 977057679 739213035 336223913 72904870 428694795 583123762 78430485 980259282 150248113 373963150 521243050 952351782 550301949 924988358 634556471 171459261 119734353 637337235 15453811 921950562 524585393 477667937 116785650 975428429 910956358 801647192 698008733 175051386 928893190 136858450 135897570 792917532 657042917 849267806 452767726 551827699 896675067 299519522 742979093 590149533 829901995 726754969 660335780 517532214 360704232 914381774 600593962 101893011 700585745 45566857 315898431 942616996 497778149 790890670 116551159 697463645 718976358 830724160 297460596 936579269 540425417 846237689 145418084 842772266 810064010 535000177 657872746 56844892 653461656 454034588 777262448 193590166 170109462 743435253 963432259 366122414 566865112 313148570 492745319 855302599 899633874 615324224 925579793 582376219 891651197 347489418 17409974 402197682 887739105 243898953 526123595 419076261 555298289 398123202 458284543 904168987 959318219 949592568 778047448 112967097 326478879 160234746 544901111 894563040 820203362 134834172 401497232 421461009 161270682 663180905 894210797 38330203 201484503 873066502 899757296 627381615 841087801 991663604 708771607 88508796 276311243 653887814 479310742 230065112 638823975 938183828 890555136 21618501 348222867 205092267 10949827 665532977 669015857 443547355 834808390 61402282 423163681 240338077 672117329 331766093 878530190 736789254 789808535 238717679 705818865 237718275 196445177 383652545 866024361 170901129 884589021 74732364 717543991 360475041 200766969 24075347 618341299 498657074 903208557 977814410 859978806 627122097 527089005 586574595 775198537 700490048 970408837 185347969 526457427 780862610 15918040 354985666 511543295 58370366 547816486 226028626 758059322 360032635 784123698 442970525 802094275 391432000 405406568 502871596 718012372 811810596 638846986 815174856 989378781 272349797 310879759 139677794 806998271 631442961 413081338 412377007 144924995 10561615 710517170 854505572 634041185 300034835 388282295 214442259 909591773 279073209 494235579 791301227 458586961 793558239 561997026 950813411 673022455 552126197 829652455 490933826 724907224 460998116 459395966 691857730 305970248 782710303 870204690 451069764 124228100 305265260 930208839 714327785 811346567 81356614 946363928 476479882 98958663 671159689 368012699 466739641 845450661 185121125 597190612 804644697 207574880 791916581 211150741 502870212 174580801 107026816 151541155 676449525 935083034 594330269 606643075 495183888 68991401 119245397 865096714 170908066 995257400 520369950 992808093 861326879 488596414 325880157 837639750 135343474 399095950 260787059 788848446 333439494 30003436 509521513 865845422 862771120 124446964 188804862 922255512 45064202 764371331 696858406 675079869 526982160 992927166 454415410 259992345 227491783 308627074 70552229 478384431 736440636 46674582 773831348 773044014 520903954 715128079 957781626 963366186 421176839 480407513 5351200 165262669 188043262 256803093 161264823 665409237 226853946 421508014 748950515 817056074 21097117 379570428 542914921 522544739 259806483 593377647 455362413 479695575 300857503 840400448 848608614 296384057 208289687 570853206 51621219 562443208 311319410 261535179 344586935 576534754 33623434 612247824 416609030 625853114 914750263 2870108 584406007 261847235 718693491 249503511 182340914 262975564 334670527 784648134 249963756 51916818 824928352 906661740 442765262 938764111 543799879 353245555 921633351 185970953 612395199 531776450 618666426 275810702 760498092 283895056 365485036 261415538 644465857 433931934 261333857 657539660 968785712 677688580 719290602 943417411 288714623 789155408 743651474 466650977 552063274 471144550 422697751 779089002 14885430 684492383 831088523 492793854 396654091 305398874 932110209 270843716 996949965 834790274 158041300 711509748 357033737 541213925 856589996 917983824 234966673 535457497 818122158 463453190 698096925 340722146 77246589 822379506 335699410 673284158 600826729 210254521 807130143 903888219 322025451 429280149 180808641 681978832 857126618 891623019 783310430 27388250 139466288 660798723 944657272 153219898 413229740 734243058 255609770 123274068 144808325 545801882 988587294 397824089 499693805 850549700 82874866 42755131 38065258 240625158 653478185 809764343 950055126 850548396 700521043 944228201 959712001 172069704 353305675 272804192 564710106 905755085 65474847 807631935 873281077 66289261 277753668 591800526 523575771 318464253 8266549 839258726 412942271 360726278 866057076 403096918 5401866 772015661 429158027 980394653 610430305 594198403 486413036 923219050 569750539 359872785 131622673 820394148 591826092 893269152 82325569 578788421 893850425 595406095 862022291 919066670 91850935 840612572 431655686 426483368 933500783 159021011 33900970 235809590 467731924 701748776 146097835 243816470 123979943 22968883 120833468 913232192 161379489 682128506 109905374 920886629 222351817 294600211 450643855 493503410 548663937 453231718 568554128 162938123 780307949 42975008 879897510 914986249 248604664 567723411 99668391 88267999 213114045 794523235 933065230 730665343 587280377 298850716 382248403 54906869 356577073 701577069 633096505 49286328 939010236 582070484 412443307 294926160 382198160 561292951 563923453 828989343 967838750 386227114 852458486 928566425 873661400 884917761 166054135 669146637 907873060 526552998 434857243 160303041 835020613 287123144 176359964 4608827 457244084 634045553 663451632 981315355 426447345 720430900 204758397 73150857 782272234 605389319 315831825 594607595 901238031 546096187 966968842 953458295 481746833 11470685 951316173 673746470 878656650 822214499 326848997 170007169 401531717 498757614 834040777 921153480 978114736 764230592 519721373 25393096 509776163 705997014 437475737 883036955 152207655 815170700 336189792 427303612 932881730 390175312 504078283 820922170 794503268 271968055 375307283 387472390 191406695 522954821 829134912 827231174 890397772 84275439 191205840 711882165 195953006 416757665 49976457 98440628 859686419 412583691 493983417 612211951 244208875 338826841 782889335 749305326 120862746 599973886 648144950 627903111 598739988 36617361 373924759 262403154 398911466 989011204 688148991 20611422 202038870 55836283 660231023 759105522 478550812 240356636 863748499 190488634 736856792 994452017 295665533 77689918 500501893 482715836 953229741 510013681 418747315 929955204 488724130 301013026 458340336 296198488 298949632 845933441 493412942 194316175 669201862 287392978 309343906 366045999 651216694 643028004 203255769 575133694 296936323 205090542 969936065 118800432 829407325 97584348 965137687 7851759 85712032 371917332 542678466 442950646 628966587 577661782 423954221 595799177 273903686 497990780 330887504 609651026 145359700 541594239 642201463 125610661 528128862 273314964 927957264 864636038 302654361 161431324 633743417 673909734 507152676 349155110 840400827 384374663 779438972 89422967 865108366 762465546 23068594 23503078 224161821 887495365 297617173 890802399 625480185 779171190 426534035 664702204 283275910 713021945 301210635 642788725 992802500 874574951 148591377 943254054 938428366 61830120 105565514 744199985 775052303 516487690 798956550 529627279 305674852 43345670 929773978 186877416 230866510 57107902 186708919 651529071 266652531 710119649 335521817 797540431 475040082 264844905 198377477 909549508 100657627 518268846 383524192 522024665 537623028 649708961 300376683 452458180 164206476 758271675 785176065 75357081 757699921 21550683 171812361 393901221 871204505 492508130 21969608 186823149 383566500 551992778 274587509 375143968 759589383 213534600 614199636 956404821 228627212 851769592 319937016 12769341 646709058 545707200 670648497 599813583 950668612 462897093 760602281 911158578 296674436 640615867 712497797 250679984 852099984 949433238 327058318 274670396 10703447 427210963 38193090 12918357 990468608 176266266 36971718 831708706 160708036 388918957 897425640 324541519 322189346 647595484 757526495 993903704 157579196 672773661 744162202 417622908 369603003 283233843 344762281 303822964 963478787 174915421 93496878 664943718 261130483 617387890 242259318 696630662 353142312 693992070 524582887 178653310 126849911 212999809 612865481 787913151 418517011 808758177 691063457 239745855 3689618 912974921 124493041 680600629 431614399 668099383 258793487 333561532 372381005 11865357 680890337 311006861 146347130 374682992 43682212 7880825 656551072 624144016 416580492 760352506 546121806 941305132 196778379 75913906 146215204 983195392 359174736 946500684 696585029 460833875 215170941 977799834 851947197 466551059 377167689 93793773 307621069 362030135 755526743 866751512 362846903 336564828 870702386 29880064 683144266 553055461 906408120 178198756 729891098 95066611 536563799 850056436 464883810 992444214 411696547 428970184 814431572 347100549 387501632 870002609 654624484 386896349 988441257 906359477 107962971 600551392 771459431 517366452 583458930 415433555 382115964 423714923 469945719 589478390 911551673 711262492 863428131 823971110 312807347 561993161 120221372 152361177 642075024 938158494 465191150 958342139 48415332 737812302 708343887 700486564 313947900 394816386 936023122 525112648 644348205 850985378 686733741 417256046 360518610 967484416 124648572 394130620 687790999 363025853 64985407 169160836 948377269 586393256 710508379 953984851 475679997 659001188 178422350 292550846 856827639 546398765 810081240 255300215 126737059 696864845 908783951 636762853 573619507 211407392 876210345 35059899 706285665 712691325 224705137 516682718 911052512 535891029 902155626 957231417 268393321 717036855 998907684 676766643 212398044 941862656 92017430 762559102 755362096 735965641 417744789 858636853 966334953 469468669 707996120 103982912 198761402 544820130 513079965 896047247 995413093 921772073 343220882 931114491 520249437 608241247 738473789 532400506 803561013 235069218 677777666 53847425 240628349 44119678 965054940 739413811 427151963 856891299 468674729 381868229 702143869 160298150 291204521 751034881 386429387 880547608 165660538 142773650 800684213 994215999 390815683 94163184 257384576 124125345 403275162 696381151 160500873 256602906 563129061 40132338 568218105 655654236 6189947 933101550 278742600 778192498 792166362 772493598 788109458 871449446 579970200 947016876 654391050 923231066 376696758 372159453 843013526 397618135 734613341 487094953 830711041 257299047 417261020 659717363 326012991 514481108 698433037 424314055 554460495 230567196 175423443 704092617 170150464 190394639 706133523 390004091 383820602 69629291 751609465 829717606 510332520 796097952 271940287 900736454 635372452 249762763 142578034 743137945 379307437 604560712 804476540 227776561 186582999 741705661 910280566 831858836 333102447 118829963 534292519 37683148 456488140 201918896 306634889 155220653 91253948 28297265 87085075 249194565 658644331 240854504 91200284 426707982 184103798 52159177 586982188 495061773 852316936 560104296 128169086 916962719 375283312 149970208 677476793 353056601 865076938 345636759 790115698 503741023 446014085 616149992 227762505 647801935 33930127 562285536 224402913 187616797 571210353 420681502 690844514 594582928 564840636 614241444 529668417 880864076 406105930 937426560 480630967 47408570 975844971 867356909 747846879 29280000 818870542 698014172 452306661 23545541 738869200 495950266 149286369 586189894 621549744 899202674 854921069 664860033 793056963 406352638 682694214 236370272 364657483 631961815 271544331 166874422 667651127 916023737 259302323 185883800 598333356 993434342 801110798 833672560 408757319 75700870 969867646 586239753 148470855 598004455 611979426 764633276 353990978 41052215 429002190 225070274 123013882 77323501 302261149 530327783 713445486 896408774 189204324 428158114 441357589 697472651 597135462 924796243 651249200 182743693 804036193 808817531 190455986 545538788 515275204 36818318 237621816 856182232 88654752 16377921 136661960 359194744 348963947 902629154 664429726 476551914 350854225 387293795 180355098 427306447 589837531 560500969 366586823 666084856 127868051 97070459 715596191 455212689 449146414 581942850 294632856 895042355 344138838 587057655 925025990 500631408 280010130 416780677 471510404 770387834 225816315 299011396 455465930 223068950 432915442 493840865 951870169 45065919 735542381 287904869 743189686 818257866 680366151 351105300 810928987 392911229 781246239 975554480 821465915 226279055 433941636 82050183 734507358 222309556 399254749 5248819 746611237 493334770 763594002 752807776 32916816 495770059 545175787 886065964 738189245 786139191 91935898 105672729 450667343 655133598 506237858 779301845 867718570 86767790 336739240 576864420 892411076 11487480 669633620 198496847 11877487 743786483 290791731 37963705 6786992 461486902 324309914 925865506 366261026 639009802 295583398 889160346 132232348 331644834 674832414 656271263 506118873 384839753 478163389 942053159 402255208 820269403 260988463 877467308 409299123 652687620 77340366 868113722 728061652 88795034 488663972 873933974 37744653 721837859 291259725 276699013 491277318 896720937 246787697 45070998 659470195 167015163 381385597 923806573 125085858 229312852 646142744 288218055 765945030 335084448 873913616 13497350 504791674 930515096 821179851 683171333 749435376 165335037 652040752 941671425 56877678 190396361 124631829 7589506 369358873 291533510 99225556 309099078 111333567 76749195 438442912 525926012 184622696 568513100 686686044 938968901 17462556 201761795 467410243 116063251 864738586 496589029 469101817 62506549 843027912 34247993 146085795 426532809 572967558 82759918 384738304 758533021 74613330 113597034 25961859 9906503 755046688 507741947 514857802 148032352 93835885 981974845 592798942 655372021 899665249 223191245 668543162 441432932 177773204 746629865 947919567 527147971 909203897 716478588 894537915 65972401 106214421 305234542 536492342 12443375 767083508 256822217 876291130 943763000 196640456 197474252 173398625 569549101 844995486 682554314 185547261 786659446 333619882 946240035 795582430 198843009 618103086 489557470 134232761 975274269 567980658 804527801 100805464 958534327 229101010 77577188 299512685 128181859 355582471 610496795 390931954 245265473 729823459 652543427 581800526 207716176 617898254 265008789 330253177 925307547 823337931 763518124 706013977 637524773 490681587 353275442 214703044 474548879 29952224 359952933 829689541 385996999 993421821 914697874 10931162 229241832 645612950 31622971 83029993 404224003 591952651 11259520 746645430 308710207 911456627 281951030 91391857 295672314 798007263 830417852 795424825 439231516 635775034 563400455 575923442 569444584 150447077 447221815 260959494 299908999 787693374 656226228 871555507 175428076 705931280 584584537 184962955 833297312 239314448 7109088 372015996 822352850 552566599 118097315 285032446 366284925 361333952 617696879 560565991 65146888 624309287 498505190 735788697 200605930 820099411 619807307 588850123 342252853 667213202 274752232 280662057 298828040 141277817 801958293 268021388 497313884 11280134 762334544 394392828 499267461 28324915 111675679 767697781 778337153 968619019 789205050 157684256 54312023 450912743 597857017 873507951 172594530 922711490 196213400 850003233 702792073 977277201 802112922 364354608 939322413 959032599 945153041 980965741 916823058 879831510 437699684 429955570 498979577 887497690 512935875 418165053 31288015 669480262 388162131 329685025 58203889 538322310 509146853 581163170 146209229 715756346 496901673 511959872 539636166 885810733 64355343 758412244 309629359 785947520 842231828 648567270 138414810 787764706 338483966 892790357 919930630 58764424 756104375 212271001 412687941 213213250 765374638 666400636 52646984 313933596 736134683 654953977 228440518 898352419 556786445 347946392 689310513 862905846 823794262 889676977 758276907 628800157 895669722 437125771 302808467 538998797 600881729 555520748 825768130 653684377 95630823 457498883 912012541 868912134 688617941 500440682 262034553 272786956 178064539 623661624 778813743 930220596 329508671 4475799 672213723 743007238 496536767 371074986 20906864 450188426 397611711 780690789 120936981 400302507 4333154 939078426 539288822 307203566 766484114 580225897 871108032 918723427 640482150 337462063 489851480 898326953 822873473 523348481 849353333 672944220 781404574 34846246 565431126 262220273 781793498 77351102 462965521 672269335 169793215 270629372 487868549 691703 298702299 3925822 885677741 594630870 753641784 313000289 735909259 319668110 781414474 620626722 913504043 331308041 363644717 445741871 245924018 299682121 816021280 135036961 224103064 630405191 224574574 744016304 723323715 819675754 524477641 558668407 176131940 930203170 971047261 250076316 130975832 915923980 717617122 849517141 426862561 933857766 282075303 229654411 13470521 593659224 26061985 478390902 445667939 699879837 648350867 745686953 109341911 185828190 863063138 907330775 356342697 897157939 214253021 975057112 144880885 729233443 642143436 682062319 384108529 145246712 783357813 22386710 86555784 126100777 664305976 53052775 849280110 853447323 796165907 995005133 584779399 19804091 573855918 733715408 119673983 13639017 998766562 487572586 390004921 597320332 415575209 889029444 753890671 380360917 377149288 27774914 109603597 153235714 938216897 20091673 359199206 46951250 331053297 39368373 96312545 934108557 440976229 816811367 18059809 260676 761299913 986574620 326915724 741634416 259097980 18023383 347278920 787734691 843309182 557131337 137994238 703448761 127283156 839311990 912387419 625686066 679277467 738185326 940660023 567996621 641900018 630037354 363381547 282860723 481809416 310159289 83419600 191769006 79914475 682789745 291565896 642258685 715877523 670069272 375141435 225588160 301815303 926614278 327038791 279747520 539957002 194306946 901941569 973657068 383341516 27584265 642573301 173350058 858189742 513526924 911856354 53144181 906051712 849527312 142999420 655932270 394634093 594128941 378251151 537413950 659544708 946762220 778259813 82800632 877347925 427251291 674256294 751393501 323101850 388803443 156375236 992790696 289131442 494619767 198432387 40964432 522929677 550159942 99069861 121210108 23144464 667468619 717497154 509999827 418436184 113787365 56879810 914301812 436621664 952154793 535661391 19194386 115620542 382343649 653981903 523064462 533845853 367040467 148000910 552394685 621406582 905684403 927911558 622919979 942529709 826853268 875019337 335718377 345772327 906574627 616405024 507821261 258062293 831847617 354408595 700361392 787113112 461243798 290115724 408330691 317854047 801429163 878165360 775338824 788079895 602071771 894356268 916370415 125484800 447842573 717571276 639216104 541809752 374161674 10923835 385953330 95410379 50294584 211004353 604482119 603697583 260224127 5568741 412835985 687065479 541407603 234881846 471354109 852852228 583542334 267971618 65335758 258849492 705331148 680782249 863156177 192697784 582886498 453371662 443310424 891283584 915815360 989940823 59381248 450628447 815703028 946726713 602800648 497621118 479093018 979490166 276524475 494324842 637559108 510142964 694008306 202682502 961239341 484241025 857357907 584407433 524040301 552267014 389928983 586055701 159315953 930460257 337148815 378251907 23833304 97533281 769702267 846569582 671851712 613360727 633976618 917736273 992718693 962520156 383586842 932549373 382815481 873303401 440758828 578160132 99307323 714013958 541615537 77374052 244113948 675148216 386873776 767103321 348252997 185907566 254561930 332546169 45203235 985092271 451584127 167900461 563829707 40716914 876039324 369021615 878797026 591084470 462031580 65393548 407080129 724376973 55266085 997761242 425326167 935967087 516898867 435739347 955403143 166358487 631016041 328614565 926269355 240350545 329127364 553581652 655846008 757531778 721389269 352198279 904773679 465179378 301321505 805702429 766077717 967496799 967295735 945346213 372929343 923511497 177589529 725203803 522983738 275984204 663685894 850595252 482670034 779144684 895061152 381144530 58006489 402837850 402672228 574425599 624757187 956501634 937051565 766924036 937671102 251229275 537195628 893532200 266727895 502908671 113750809 183915870 754345599 278687694 675053831 97449147 701006261 162984420 847000008 568837460 75766171 658889399 939538719 379513299 316030023 696132158 564645812 380684800 319913833 887637283 553147834 534748533 198624137 331039909 2111519 460632610 78306245 19689850 148083489 390152243 472295545 246810762 918434912 766007551 290648414 636732970 619966036 756791920 110064857 471617162 341528583 590199039 947179695 502878961 927402859 501966767 337035198 701180185 587730026 565654761 616091572 856281402 102983405 203114420 635794289 645520219 125480973 474879797 82570605 90110759 983569510 239796646 868142759 218096996 447413152 130852849 148404113 867761899 951501344 283957692 114240649 924649113 998786539 691725170 456367425 863079836 147153565 125127534 92332038 713965347 994330772 809244426 190640103 425327872 817519006 54123642 812258734 199432333 105138027 352605020 481908354 689738929 995828958 663894365 153624542 923074325 767337886 779077570 603900942 438506651 734691915 694703624 646970527 858916630 832105285 612789280 854259787 757550128 514425662 624977458 753746686 120850199 205795857 284086642 747407506 342402730 534824733 325975355 151189148 264350633 856501843 628115601 667593467 221739123 675955729 961895074 437891370 644356635 61155838 246964324 4930192 963143900 556333491 474108475 530587819 965833713 29264287 503982727 11556347 959696238 599499262 342995850 733996618 275631919 353245374 236980610 776781666 90067700 434355528 374818971 164150000 647353442 810709906 591809855 219557561 276159590 122053084 674161344 327064209 106228449 933476995 956408818 68138751 218712219 787605022 346936995 479977031 303148552 364865085 315701341 428922313 257964394 613568837 171600354 392785893 952495633 495909650 923514866 482838085 917831644 803839000 536993341 469243502 794966797 280448360 629245662 764113295 529889853 400011472 916942654 548333563 192800666 162489634 378499017 368854858 689212858 274813138 992080940 409841699 565751046 15047655 96165931 106885272 959302877 779503238 524554025 32701080 653562412 831846607 534604424 35420919 720680260 655065672 409273571 832752014 68629822 391826191 268412469 842445647 30059384 472780765 813473927 302247505 878212658 547523200 758949358 922534127 647319148 82831993 114355809 938768163 433553503 667480654 601765497 861803154 359067845 779481522 407920764 260661839 732058578 549472614 679176168 307749337 134400256 947963498 591433383 150472280 617404590 126249028 176342822 789060342 133048863 952240086 158266881 33760143 33726997 365607024 998119219 756619928 14534503 443086405 881996868 622439705 496577414 792255607 973492287 695950899 506675517 402696142 918590911 513935309 967762476 117454741 94772900 325808212 613799573 306629609 678908975 357618465 675252466 833455929 991515933 838603836 531171078 71247298 891973746 244067371 572991517 925376552 91104044 934024934 736169159 608586637 194535536 412133243 872480437 711295950 856080315 898217870 583004287 125123175 446810228 849368135 270006199 880393245 30000651 221192057 844406712 863067811 791631834 117368264 112648156 917766508 165843105 654173107 95481487 318856762 441803992 637755291 154696252 352051433 306162842 547432283 977780471 449892623 149346253 684923890 603022316 840879145 464232136 259621661 71726761 820801901 600218697 641684915 609749958 485595910 990823930 64856210 299558200 179024942 439420997 556719120 936795969 91714606 923806810 906278122 854213278 483224393 684338958 348728477 43228197 951752279 30129186 642057827 567139551 259231807 111102540 421641455 1803908 585784341 561564809 205769586 976707981 792721460 18474092 558338375 859525798 421692120 500879778 587666465 685966629 267389495 353740610 778313241 233142710 328314223 794918225 467787213 959003761 583845682 351141091 194575191 275351720 218706535 507539337 718138652 64439009 410354747 986572428 948989315 761327937 451616334 29584055 643878249 329077857 62305627 845958053 736951074 609842910 48241647 443095736 871702963 931368097 825543879 627073193 319724788 975965805 955865605 402707175 950088231 317529424 170844014 112139015 176775893 819564211 340592917 826684623 711079955 111632634 946569966 692663447 58643845 348743212 875205672 282953316 132977315 681919534 50145040 980831606 344189049 992031218 3162041 123558252 208982013 841772307 233480849 926284454 770154675 834582914 375046677 166037551 55857663 971622081 457358471 944510974 825434933 858521827 935030799 733289593 918818173 100674270 361839116 400617245 100058031 928492270 674018909 272838124 657787955 904822049 23713828 183480839 4572973 154800964 790014868 867891354 939415918 276207333 445350229 90779727 192218035 613317662 965886089 458257074 508617470 589957931 612481537 919556806 704160828 21294649 811386387 175832726 542135550 573213429 362397752 853713605 459701231 942624517 843974389 994807934 589616063 5492097 813076591 696073574 904016612 237283204 955332888 155087845 38290505 526851930 751503706 882601310 655396590 836654900 437953840 406509550 206805066 668022976 149353868 68141755 939953012 154673005 252858747 607609250 612115386 370068965 841309589 605665518 299781442 524154615 899100440 343312100 844382683 445838375 163055428 445744922 854601402 42520469 886152791 465540896 917526683 753554360 610283593 945189369 173142310 77835141 784839012 544366315 609413378 547663930 703793065 150866067 912216975 456505308 43076323 92590392 803950857 157449000 505446368 187484913 412098082 803909801 910512729 635940380 140367139 606762004 763434278 259215855 180986997 107087579 769041675 448605166 804306380 672742897 723065009 263087579 684454645 657431355 834575436 973693798 314740674 488084495 924078655 190972282 271857051 20334478 686209754 142687245 772415457 402055385 563367633 303555824 939680790 445860414 855950979 619663792 837408574 672764061 11638100 772927333 773021183 903622460 531388751 163327426 619228012 934822019 479212870 233275560 521912992 479913779 559351555 132993714 832355054 651600763 304137280 571444626 520140436 735669326 725597091 935892140 964172833 536595660 793472430 155684454 894100851 770204326 504465216 216532621 777135704 126636957 756909134 517914568 690438823 718024267 594769752 865049331 321986052 388501389 687715899 540242533 197747750 626499506 564785303 205281918 288263206 639712846 682785853 37604281 443774646 797721097 185432718 680478782 971188145 759337108 775461458 957442073 309911610 929048272 894794199 156257946 759724120 509713692 153814362 952259600 132764879 862847089 740629282 96531747 447643247 931113683 470772360 156342327 508750706 302667076 297948051 811440228 229046196 963403079 649029185 366666354 75323703 190220543 825699994 300588646 77762378 980202957 463329475 655793095 258010791 489647586 84159394 367361472 851114704 727184949 285729457 570357075 671681668 75924062 497838701 72049743 728626762 671797755 843763318 693214803 769634911 424296875 363023758 102087 127840433 79453743 673035867 928094142 88153488 101530351 518828440 602738557 455281534 315872345 37007065 518755642 239776680 570662320 346144366 707009968 674418695 579034212 759587606 901459732 606259886 351051439 491682367 834544930 808326923 289529678 296835903 60504803 151834144 525033248 446611657 890549752 939200748 572500675 481339073 908030907 391626467 707784790 244822695 894581145 873432419 79324405 30953782 843323617 123424434 456175468 885557113 66420784 491175110 339840318 238263683 884520040 448974198 872772481 537068771 695446669 575331029 544576049 740552189 87284338 149589172 590882413 780576296 230334429 567347779 796080562 365948728 374312945 282660411 659655985 932402308 426697728 930964296 324343727 171336664 994443379 722749716 670876660 271636515 316325139 175678066 360748147 305969514 966359599 69793857 961921024 993458645 403836098 489402686 783590844 630290226 920805358 54952205 366932543 12277658 270101979 884610893 833603721 718066764 699923438 665376549 286558114 480525938 473034324 606619663 676225022 737241360 652862480 314865858 828100594 419101748 431398778 561612478 662420505 903127665 350446295 520976657 904527117 241603676 279788925 747980943 647499291 408381723 82122955 673654321 461466838 483168969 215655820 425407348 417482178 384769586 706580203 147534500 189428032 258755854 717177826 385702010 364721616 431715136 472793711 164583195 137892231 484587197 715218542 879385514 589109267 196407027 656322607 180552639 784081635 444988926 114400254 616226656 360366716 643833530 449812425 836094653 975320128 994563357 790151520 917980784 366650705 291227942 359361143 313727974 590233819 757945192 464921123 960291379 667154187 329493104 259106373 266850067 11168985 714225601 505199245 845493857 838207998 739743655 222420623 792329332 371708101 318578435 817444355 22199712 99131611 552414729 385388083 963603628 873610266 843240909 654085785 494890930 272120420 656496009 956031477 762072525 161226618 926676918 987502856 325908043 518880035 497190375 600048745 920068736 698305227 702521093 166271322 471975380 75903887 647646555 691687573 564116601 381611614 87613421 109379548 605376193 846982407 728771094 450287192 219305412 319852081 935659518 73805611 319600281 520757759 867185073 7070242 923714367 944986937 742923144 220377812 231536775 596153090 148153500 718804097 639998759 155549468 522754107 274211774 540360797 211191156 315969128 805234301 975652090 294499215 118951299 468362654 921762280 408468947 631758593 678191156 573108445 77885329 215729114 504149788 1748799 125862479 317647070 47023740 107302360 170921990 549485585 137895075 958594337 332279562 787708082 699221167 768105441 996273869 786512951 198956307 772012349 254922397 219860982 420788339 822418921 952597114 480318645 541078160 903221605 747131430 998536192 42056177 325654869 312265910 536161259 539052800 273104221 754758906 24006562 116888247 692342363 955687623 284765563 638894876 897647033 897008817 133667253 525081317 312020114 821634625 71903283 203454396 575181007 611533414 361860550 170873055 459472903 145944107 238123599 375617006 342150160 454067252 831628838 563922811 283274004 162097542 12726007 438600066 344396931 333209597 401292184 439089821 126461755 125771878 466583499 496719327 73363504 293967939 408544967 286089786 514009017 482385073 183317549 212291955 827319983 959944159 306183083 381156214 478932472 888655617 546105514 420650554 318726349 530048903 890576615 520323359 782826454 662428404 565678703 54521630 562425011 685854185 116020996 336860846 743730750 8090704 644758014 848685535 921147202 574397527 205786799 927210012 608166335 804133524 984491165 906888161 760933944 170482527 522985912 186531903 878870540 402520893 272735052 307492778 991278702 910295915 803699982 714521397 946429983 118275800 986584685 45478377 465984941 860276983 511600348 149655001 398756855 412645363 449968500 298961449 771147719 990854877 650803208 344771370 314509808 327218885 479804711 516356879 812696805 237430684 740690929 684687490 373009200 385679290 815316801 238395158 581864805 749931977 319059801 675822931 749501565 653826006 903230529 846181652 449295029 129755478 534731021 599453402 489265972 712937506 259716954 462929842 757650635 282414574 122390406 428537156 26765270 177080986 763341165 290528797 924065091 906318430 610643709 614706823 320368441 738029420 443307875 569232829 391031312 91508642 237257552 168913799 442897026 104602419 131316014 101731238 226225714 869980425 488112036 276056484 678901801 242663470 619155607 514848765 751226013 10889523 915912443 892193725 707874452 265979242 695397127 802983452 30316334 58263000 514728951 24654807 84897783 677359890 912069596 33561438 239111419 205892270 630965031 533166591 209649724 939717853 605127613 321979721 819460272 601602617 183466108 190429588 513600699 256094989 679568662 6273584 142088558 601525805 271120290 421049986 889744760 645406605 685715076 830115258 999094972 945469895 188889036 341094212 687801959 649753425 930028056 558141256 358650449 59006801 445761238 882517411 385151897 406006147 583333213 753477687 878284085 647388303 561752041 929705345 790014894 347617773 216328812 573497261 453937435 449081101 959092275 270738657 789689801 133590579 416430532 672584309 275453457 783599844 505972849 740190593 637639648 344481887 853685615 902710977 498837740 455740596 638360924 132544786 872011399 997141235 703291797 995973203 347123986 627199908 966012946 743598135 469050934 136918387 34776570 229279699 756275532 729186349 198085667 67667103 975421191 401076766 371402352 929075967 681602827 840312818 620235612 341546458 849779713 937026719 790193637 717957852 760415754 800366730 114530334 324465381 953247753 547082573 937645267 340224867 232049658 685024789 320317381 145118032 558484750 749815923 411474859 329004700 485087753 964391818 484047229 885674082 968087578 656194576 858746665 737332287 264273076 530418453 20222296 564163949 265643205 133345890 35671548 539338252 631422973 464246352 558959966 708133625 692450577 321924563 713591271 585596160 140111285 590098493 413280592 651890981 567834201 469713038 342188670 6480504 946495315 513892620 941530282 480913474 909859032 2354248 207621579 661392010 907130956 96538021 820844624 39151935 570476023 129538744 661267252 947893437 321098661 351096151 377847853 200584938 208790686 496803756 414141017 213996942 898555983 232284934 315443492 964302823 898558017 543431501 363087464 76793222 715907184 331069401 340283468 574674240 806177334 997910850 98716972 69861507 784172242 462033079 509429149 59026071 545377193 217192939 751956795 41867589 475231034 851466677 687275417 176891293 655722256 621120247 360994747 995964616 388361236 553391016 25119556 213305548 375723852 983869063 535761555 844288292 299526035 740666289 210965099 811308647 375007672 24675221 854725925 335186510 375985802 641934268 648800267 104917579 523446166 72126400 32619974 576889974 18153921 873361453 723860898 323908274 546129507 20259782 569282089 434467837 574277175 360868394 819299796 521585537 743292687 457740866 684788263 736515153 104652582 182484138 604174223 898985355 741176034 919245889 618053065 386041948 218505828 682188836 804404541 311874957 184285782 299782527 616519829 457946658 308286898 339085845 751831782 309602009 737035981 980504596 156073141 537697088 825011611 331211455 313558438 792800451 487733501 768680186 692238548 759748835 657532329 182682863 94757693 374854450 215678220 909965209 932941473 118088615 851074354 646400366 121590625 754043480 840149776 755619564 440113901 196605773 638124836 218474591 545772557 536616760 671434481 239656502 463230826 827681672 700473823 706303371 388133208 157002019 280702952 511506414 251486774 308483757 924818170 741026567 224567864 337119016 269630272 397688371 850382361 428980790 310828093 141979933 601345159 261220208 785188526 76959557 859206702 599916282 803522037 779118005 489065496 504585395 207908429 259652039 513388466 873725965 823326613 142260487 726459606 303654153 258474258 76741203 274549805 241224026 408895695 595881365 74278228 835032015 177252068 177078224 567394074 34592934 858697681 189058330 100606125 502991305 935315936 242891335 724083841 9206864 440405554 468229067 218177455 73930759 69531666 764504209 989394415 778983190 719054358 75480088 488406799 814710671 2369173 131513713 277712537 956332422 136750596 141348975 601893022 965845827 47171678 252998120 721434695 267159259 851258669 296458666 535471662 600445954 748746288 218668207 845033091 295282307 867707453 496896128 885904230 544615517 926570824 493350578 866696314 88975860 877960260 985605642 219953259 299901184 605414931 870618311 807128305 406039278 981843315 303171892 798674047 293404790 489174611 960963072 134792315 185433761 242928572 878943989 323830769 386533624 937933791 23245681 311935116 752753979 45106977 334617461 142840523 912249113 386089238 651020706 647993300 901086959 575339209 881858972 968760812 632692491 419361888 327675869 971059010 782379674 294869267 15752811 188343154 803607672 458929709 549490327 330887388 492571700 583967570 633499585 605381375 677592799 631193742 508208572 186058618 386682133 379525305 380157800 753495006 237315759 62793495 141110863 246905100 405195501 33535347 930923406 101004891 932295616 167141535 916264622 778996796 148887222 450312121 161242766 120435389 873693305 527059730 68487681 114408627 383998743 676220773 650970948 353511778 524034225 745865397 314495106 796445287 943121470 103583584 702505118 257892930 405644241 313715431 717389085 64618966 483122913 200738897 990987450 44117861 713856645 314310964 996434206 618911602 395240634 546019221 680044475 776466414 612161457 711970182 762096932 725975426 654494719 335435407 64056748 14509393 134178797 153176923 100042421 691435600 165384164 275083561 409260470 898775979 447667595 111431461 574777837 145899430 1442862 216777207 128761587 244197596 376524816 395679268 868206807 333343013 919143964 618262328 19650033 291954765 276558096 598434026 523139126 325697982 424390996 844624008 940910144 159706830 28090528 980900916 486822995 843578033 633862338 705930989 434622397 587753493 453398408 413252693 41121116 542668071 374579759 328612408 916960358 220572063 935240600 158680824 945434199 145603987 921046882 914899831 240816834 394977494 477015957 493404037 491550450 102425751 420528152 835781938 730995902 477279079 985723037 427429044 594140106 67025377 635261328 361371130 783464506 874468418 854689356 385797982 64440591 865720112 106850200 99191611 728949727 150912357 346896459 818007189 603536373 611677562 393655215 11202826 830531190 378564116 183408875 851926026 433858124 312087574 646376654 888625124 591578229 743418259 897411163 144193222 639458995 195242503 186612696 141122373 644755572 213958228 657802511 853474595 836224821 173141428 107383128 93460240 651789952 100703534 663469514 862583401 226995788 793552954 945338629 201834678 325405807 712330347 554727325 943561124 330199456 751051265 296001166 589716478 51830805 74273742 450049887 674914204 576737053 180030265 841800266 893724897 334217934 451011982 721925778 946386435 23751025 976054236 658373185 98290039 253858565 524991698 417660136 799471092 163275282 220732770 508575621 133437805 805885843 600780417 813489051 383323109 43782115 252014886 75993386 404655463 119703792 458597354 313620992 147442822 797778849 169102445 96418908 543848305 829506426 930538240 1427682 93454072 817986897 779194777 606037878 244062056 401937181 58947926 754230332 882029541 531592674 424470985 12009116 920490954 425410152 288391232 375078918 993640605 966821029 74363232 138467711 746665210 657326119 617653768 250722455 479170365 351004058 626278330 427515229 836219829 204675724 363502136 409902615 482968442 110909177 40273383 755963431 821449434 589889849 484118499 849903637 562435904 767974845 900704072 259911535 158098249 47511792 839990732 41726112 132551083 952021151 463620490 77355003 284242173 25267703 817230747 796308960 409688621 800573936 310140097 751870599 979189929 35701272 927632360 719627854 994065771 908646462 747021357 112805862 838162087 485329867 10554341 209949167 299142013 378340504 187754595 796222960 36877703 831883652 172891347 65998882 278932482 826523133 578003582 285670528 107899345 859806639 459983388 596629431 771761916 430294628 322574213 873008476 111210239 631017960 95859516 234426903 701446545 126546728 732099798 489837386 611689603 6157235 639876719 806839 43729011 830468466 537203377 87331073 480312412 280889712 376644873 298276404 248785047 642862350 155416991 447260613 347750362 583947235 577033644 863937181 875790841 752923671 367217616 717166843 656888703 61816196 618192921 133576477 44371213 309046287 480600151 270627898 589018196 363384632 261015584 783476602 189041426 172021274 634139102 738814824 596965165 548550113 385641355 505497004 932984383 297444877 85337348 181563582 621979109 791787553 949231524 325913522 508661424 61999227 2500448 919297554 857369252 182724351 259807260 725775678 304065595 657158806 399470257 5026704 858312465 888180719 87299797 612772083 569844587 666155504 38031535 495106202 809258370 826960269 30567651 906205321 901169662 743657587 163311547 857167260 300269239 478233901 220659336 715452893 379008823 109726092 945146529 706821340 296105662 826069806 762149859 877999958 709849075 841347357 466384967 24812238 221502783 898197779 54257172 646500139 361897830 344967234 689327841 109801730 394446171 165512381 248288687 980805558 687923309 303316462 218026631 90295803 627315067 113893697 223059286 654151524 116636179 531709665 291963672 166400698 161677429 561896512 10592613 974718685 39758129 820169325 543483470 546909684 164104149 86177980 764402581 644699985 781588774 701241729 747874484 384054691 968373115 285928971 991969335 683436044 180596688 302557024 58739611 981322526 636050990 44501445 562410615 530817631 379628520 565270426 817354264 218747389 636942155 399960466 887579255 115001853 831867888 761036536 700921895 808385915 992139221 791962655 679299698 686801407 353508399 465202278 779981428 652676346 202022435 482569518 355032487 124990276 244211263 655726133 256595608 419655033 62462100 773776100 430124583 677240114 675258223 547358080 339963359 720734554 236613001 359036795 996319480 918476915 393941422 638633804 824279783 286921953 148226198 246223568 209527854 203086814 10251457 184490518 566192672 879445803 203975567 548586201 59512068 735760841 62038844 233362183 290839780 744114460 868068958 237608155 340992301 99483592 679735671 706070957 686445034 800770413 927091463 895717898 4663171 426974758 530995056 177327074 32871683 697775506 514043306 706817633 61351617 597551716 566764703 923134989 685656669 371143960 491139983 372135954 318738243 363378937 624984136 836349764 441165659 652263108 358049537 55763925 864514487 382620222 671302992 621520191 370243168 909809225 321782534 483130778 916757165 734798676 836838649 385007607 292570207 960466936 291048227 861638206 964148918 200664777 286550709 566395072 307322440 642420403 934010497 483976275 230242864 589973049 813591938 708053727 450185913 859877959 855403387 110191428 178630972 972410059 790609632 865403680 282369304 869327641 620674424 553588720 776166045 640438808 700233352 297514270 196367383 873433974 161754029 336376888 280191019 192008734 46451300 119641570 483744564 876485461 898587839 995742574 121319879 559245710 262199771 134603114 690837845 543792166 494722839 781409964 141427428 368606983 479983059 316645000 871375103 853379572 381305433 123405488 129605882 906940757 153265437 820863846 363189876 531381370 683997573 638024175 230158651 304381779 355990590 125334470 486364767 449360874 646430153 503271921 13698636 16769384 901077966 308438151 393692206 96227702 127097792 369978375 958812480 323939411 988364314 757002390 94943928 251656396 110583862 104485783 484431249 247937835 993321820 709330419 766587735 847155616 219279766 883443017 363462062 292703815 221266357 450414661 243208977 886972700 782591118 115244950 630270031 753574478 450543467 50793717 717010286 491460480 377732760 557811089 652132226 195871891 165712889 343752975 117372292 32219577 69191026 212570768 327408968 870816104 210974802 633267362 807893262 285662324 271674299 137934710 99986391 782134340 623542279 919501841 984973788 983445860 453241837 864581438 484680706 531544708 680952228 101575881 378607561 593427796 387068513 300901098 642617131 864849984 885446585 613239663 11394981 400781774 966694887 304675966 544157500 52267297 685402667 858808081 713761680 718943145 550703392 498534432 831289078 359509299 710034985 287083554 385966430 444328237 128078548 580086604 109218942 749043159 690300030 762870753 499533664 704272171 705548719 830786075 943039388 494018208 96519466 520895710 122497444 388842681 347919245 425154800 158512987 260297744 337097778 220243127 201589182 877940716 430628164 318447538 513867482 616481532 43900105 895806122 215030479 453051811 421055961 258472238 505323989 934570162 848678848 418152593 643749948 791751676 256509952 741646688 884759143 821533066 491692523 279579239 236959601 34222116 177471877 954820661 78040535 950874050 417033798 934071384 326328404 785582025 332041206 833281175 585470474 935878391 574865086 804649074 743872154 26229269 706609282 505533714 748090211 652079509 46710367 330833069 32843732 95747011 925392800 51285600 704121394 771433260 416633136 753097275 453105821 522674457 105389998 611190079 230559054 994147092 120398301 283675526 452888340 801744623 489143937 234009368 549572983 867918708 128227802 534848748 701066586 90240183 461395220 932248023 320799536 16076981 619687222 824413014 175152313 565908341 828350778 803755576 948611028 493921411 360455584 953066865 499828251 80463888 875340414 426804091 539443752 703191284 930446882 278498835 757881424 150504898 102925305 40368457 51283506 940403148 166578858 104331200 715605887 236990846 296686223 112327311 115328988 129647736 275047055 973408343 33625188 392722560 609466379 287166503 352678173 483842516 348198027 98027917 371818472 888937503 427657490 854272456 26036675 678043254 787382379 603216892 223136420 394405442 663336946 145393019 919447740 443319832 388459949 579529319 493612569 541295174 219586790 535911205 317403389 353747048 431176098 95129326 445760244 401459637 837282325 559715816 627042801 730432456 887814488 934037046 492624117 226401874 808631623 313477863 445321560 14149361 960684421 608827445 810571667 502832051 513985733 780994528 507608048 843776336 493364004 488017097 535383664 437027936 291297319 9098359 796770512 404154132 947898521 604312600 719949752 101226722 42607881 648942910 806620453 108613167 490520725 820486719 123816178 824404173 951844673 111596600 627531031 542397407 192387093 399358633 683596210 439232639 745218608 177169582 401898038 360664019 833797043 45513066 869058825 320695701 603469103 465317241 648820386 736205255 209643778 360830453 92004335 494777632 781335754 494327044 582557704 26767602 52488472 914902981 358111633 976288866 912717746 184023885 321642530 34721025 655280749 679351181 584504198 334727928 238738150 360763971 328636047 536283892 601790128 33198397 888372963 859557659 220944721 149145261 388334479 825481596 443209941 941614292 807500932 921656503 136478030 774319157 688472298 559982845 113387669 317744671 843941125 334616701 450117789 141449168 392336160 743985005 102387962 867029938 613919956 535689742 464893173 505917177 604745743 826770139 898381914 723971002 966406616 470942703 404634389 586300854 722487022 90436963 418576764 940133103 996398387 377740782 951600221 810759855 645633599 92284559 830413352 718453453 169609132 694562915 71270634 404693985 28820653 364991159 72770452 917380987 437459364 587123034 115111867 245409347 362781704 756938448 167676176 317498958 481735845 820939981 889275130 652129935 284078364 325753477 116577513 67882736 883632109 616438990 71253944 481056346 517558155 822492470 933043341 429368914 790941048 193766710 745811726 666090073 46001727 181138705 784686662 500803151 412707316 990933006 724045034 937294949 402051666 685915621 217198561 965746014 828322576 175275117 795612662 374985746 746996477 26676798 484098815 348095912 493202529 589077614 522223259 383470446 504319772 143359521 728739586 234022110 467007183 748439591 307929836 576937723 860802702 720916613 205418678 905142625 907466383 170769187 16372121 173880313 431025290 552022294 560852460 888817452 835498103 849205029 710889347 559679864 709928941 516268831 984492778 390189934 407420629 736325717 533096005 837666627 742216573 999927176 24258615 629124680 202090502 310499751 471759795 443999472 961765376 723671389 464885359 710860127 422326541 34842394 556919747 828288543 35786577 202505904 112993369 711822630 404700930 263643134 87034682 666328736 25736567 200012806 944765858 743041992 742851726 339562416 552882086 923044030 700915001 613761259 698232615 557327954 920963609 53613184 853111696 55693306 661979384 198760321 37371312 91840394 233255430 552479251 440309267 260896252 220239276 755663581 320563656 273344283 334416382 942810504 744220066 850328508 637232514 250145761 178994599 682941279 540691236 345462555 766149023 138356805 180004330 457543352 522274755 425820136 330064941 434357906 943012915 739579600 375611825 30939140 650929627 728935942 721944964 556354426 719585595 442778551 433666634 986176188 758289827 927139338 362275168 147058253 55307978 739412208 884286438 234869095 941137867 104836202 491930387 273911271 143898481 31872949 875089978 137962307 743335001 246107385 297068031 542304412 661660748 101739820 97672041 627440521 811409292 681234690 185008412 979294833 981452491 77186919 367573029 925490179 765285021 107329241 182849385 628374165 254146946 231425188 300647937 585519927 235358433 16906585 435076357 574276043 438754973 69107965 344746487 500309658 986940121 801096376 647456157 949084219 888315500 354892057 203201430 542478539 856022731 823678714 523734147 631469258 75779072 739975799 371026967 440098171 972426697 584995161 488113551 156592548 204080672 683942853 448515545 459354579 979060514 705613745 507016601 949169511 52616996 797541963 143269396 496815299 519063974 473731648 663916246 361970581 348986085 639890757 34610501 691910144 404757515 679176536 844346757 880138588 802926006 972661137 364243010 977903706 968298207 191344689 349633328 96191784 99015097 417673022 492510765 487861058 295815937 563299457 174606558 453055439 840801703 267403854 380523167 410755988 791745854 406245570 343640216 271513503 545116493 344894164 549804329 393729298 158044106 442328561 294955653 348309446 587738520 31272283 196949161 875978738 341915255 454893410 37813361 376336925 914799993 592361959 305016755 564640202 804045910 629407802 641030147 456427567 231940945 410138831 576485001 88028303 206825443 313303293 935653947 103107043 545892940 79335304 844954772 365767409 954916144 874229291 514630816 624247499 828528243 598054163 254820726 227348924 129661962 6247038 41216707 884727944 504670072 816023093 915900050 376943559 637096970 93550837 947269638 108522588 887967255 404045595 268232248 853643365 784823732 59393089 395724723 330786778 971061533 993514362 781754759 212092511 867266288 919819508 335144496 213167566 693704160 356776458 189984009 504119769 981544099 963922145 448116592 878994581 528140980 288731056 447058152 926703815 565737887 811054434 653928026 497119118 173467556 463178511 946856822 473809180 656049006 330637586 904979467 686021102 133239624 777947834 612205951 52698152 810175606 195767770 676918582 102467055 28170580 228483676 108669939 982437018 163475319 35588492 507455084 748371276 509282580 449652408 216342508 319309745 8149307 572711971 128152691 818086651 714579591 238560600 293837944 553417940 550416978 868193002 742981609 854152656 612018872 589332179 871930870 34464718 501965878 205351997 352668627 409673314 809384380 198076973 347651665 693493423 371241700 121072713 318447677 487982962 443215688 712742749 822176927 165782197 659448987 74500203 112665450 401236374 48193850 480824053 766933693 553004465 904217229 240850673 677039811 839473390 291366010 672536845 139140481 383052011 114912246 970780195 825649156 409917806 81411177 971196363 441876081 767144145 193854834 153166214 215812795 25990652 708034178 888338960 835994507 249823883 234307627 738548235 79845371 289124497 624266628 953653438 394141631 788300825 394481826 77437437 71913418 278886693 655601777 566822271 83385661 842369398 323908285 495555683 758231534 977945839 784750515 695703837 167222237 935199774 383765930 859763554 531504539 661030880 758646901 316837857 602505664 247439770 220945154 228995509 966193264 520106029 136579303 102028506 367114607 68925886 851670504 204932914 542406646 626051991 263333530 764896958 415460068 217245519 169434890 987569381 79358148 587870255 852246076 765093911 744965523 219966703 474826237 885016237 399666327 215767940 774570562 773858205 56159275 947188649 674351152 211453390 314747870 389637934 524151417 602082965 100079968 717428661 329307946 138565578 70312863 296185640 354350337 220293481 183780382 15998445 999230619 376618117 842878992 459568888 537525049 836200871 881839117 992676568 917755646 802119113 388454154 91311742 687112469 204615995 837200412 65525493 91903191 496262208 957145254 258476886 855237098 347459490 327370772 614712552 60158926 526778410 873093594 437181423 699112249 674233346 968552558 112478682 458930408 844943793 82006092 223209980 280594754 330859286 339447236 945689208 624205992 302119535 871280871 373292964 828950338 920426361 256565903 528188365 120687376 349327837 132337577 134031940 550859576 350733131 842029609 437179046 635163847 89889512 566473960 55993541 708539612 665515223 867943403 93858602 412492925 359494185 310012395 722713871 430738936 916156630 867413127 625314540 107621347 146637883 129434631 162206285 190685156 379016923 147980427 53039208 781568184 696090907 64572346 40715103 188336683 402654743 484733000 945865871 359222391 679142166 424066039 633790279 971965747 650624161 570914784 320006742 574740017 135350660 146173355 180630168 530107044 387499512 133655463 628284834 508733859 630706639 520848199 725359129 611414458 232336835 101217250 817147359 446445517 66759924 263423298 733878224 773384882 136225719 701914102 193284970 517901041 492702819 833174267 166702863 245735594 106335672 954386828 356921992 77752942 908074558 60781098 322829369 64699505 712314744 808544320 620527300 732852122 834987176 476546081 913731695 478494944 524867841 726863632 820554341 12358686 985394213 823825042 983158069 730836873 410978899 904572695 70916164 197085986 822513301 705286583 796723358 451182992 511904610 211862514 788535644 759069221 383731220 659659924 716664720 251554138 679846857 680087083 298613379 141436901 483803400 103126051 526358669 195778283 929537316 678034129 733773527 195654560 319376244 999241409 650156410 486626291 154963086 810426270 196933792 522542688 42500502 293859842 543350368 289467222 121729143 508336047 963290224 515186578 394289541 266057278 717657019 318278066 536795123 777471064 449993913 988754123 127496279 400785 735160763 47430911 488132858 730035858 780226900 735966200 555871128 635170021 680015826 255696633 239376795 411978191 483972231 728538546 158081677 236489540 835905565 295354172 202186217 135141479 67947482 530122569 610636753 322332740 20108666 471651699 730498639 577396991 772271275 688437322 873829028 249789418 850067084 375597010 732865872 878453803 809562261 266294093 502037728 287615146 65211606 594915667 853706352 198644263 5983631 719021616 880381627 162883629 492131345 312120489 841816343 470245335 396956723 335754978 768644994 31486075 52341044 552637162 928071638 497687822 893636768 79299392 120910173 299381267 733801056 631110287 851517359 900684934 81306927 894196856 44003131 543158509 573409334 600340330 580699505 708940864 123436802 184239727 971933026 224055936 820727559 933363645 609292567 874342903 662369754 428093990 815216555 384678212 262013211 697354003 203359945 961836287 109734195 961548424 296493015 800067506 430442126 472304459 293452191 736899326 696693197 954729539 121522010 102913724 386325354 628125329 879874124 726476023 693447654 401797742 687933371 882840030 908586233 825813447 497251931 268276292 333079858 341365764 369455517 327115760 601349855 265526870 763250357 341410887 413462531 396776888 466385298 949456524 311029685 36282967 353823571 12618793 409451455 564556105 814148067 917691369 764949605 727748838 396645582 81130226 641316526 388946057 539251496 173544466 326640939 352627236 468464749 104324616 657638310 586917708 952068290 90126306 472610722 58430490 335821764 683449345 428248481 422967083 653035960 271046012 880227234 311808328 551727202 768920306 822878081 948034251 150340536 754814552 797553150 212698803 606074777 946859288 674314111 560245386 221920508 886881804 626374714 944978171 725077464 230265238 625733292 925213479 139011598 475978740 680756334 985453351 490343830 543346520 453034810 378415186 701777972 371433353 636207414 569255476 986104998 743457256 728672664 404019218 352472784 79858631 299618464 504432304 546372768 584310279 454564442 546117574 781851437 502450564 215721156 365499626 51087466 649683210 362046830 907215625 264594896 723890113 706110446 532064456 468732963 885687486 295511605 79503066 206234112 792360489 947099683 336927660 649745858 486808243 210495503 47490155 542383408 456292969 699394403 494169666 121291790 825562802 190225203 743180461 919652969 306555433 154489136 29038614 420812703 204867932 707892660 945274265 581579583 504748066 568975181 748130392 476513523 909827005 939617587 147153645 684216310 721207602 571322198 820538297 455801743 827844858 756775691 826024569 533663575 729106414 505603317 374863187 861719710 839566021 892533658 104549384 352304493 708133749 868030557 370458197 65259852 919915797 491066988 434839788 822732211 79572668 334636011 774450097 583494939 733014673 321262582 426974982 261703111 78178344 262953299 258891349 508883249 579191951 511508467 835913106 501457832 426523348 925885053 606528015 559675869 320281815 808071744 942538585 104216570 437674359 334426144 72549347 410449592 365761162 80578447 609629930 260028858 963243303 887911653 504919664 528362953 450742568 195765632 377811618 19372854 362644822 179689175 651426628 201174253 867200605 635543897 614745068 165502849 948340690 610208826 893953638 315621003 356053330 861518407 967908093 112837614 387065442 735394819 964638020 559203243 570964934 728344064 801981383 742816621 199593786 903236659 894942416 677182450 750419381 198381483 52065769 843868198 813299919 602924597 503371349 757897519 150342675 396298599 381645206 357697410 871065243 664604111 506556235 741964351 466723314 549250556 278788965 866083688 832942937 774770419 27617859 945512273 912330842 407561359 204352829 5242760 330881230 492905058 588461484 701446685 499437757 725120098 764218177 121588902 289593788 829313278 862691816 83316658 482512348 40997938 216305444 986607460 344642117 332920982 991798069 911366461 596635565 310849392 149713046 169040016 104866578 480564051 986476594 589330771 415426651 350525468 328003009 793809778 129686692 705586120 21214923 384937164 358783109 996963004 9500354 400906099 204683997 7963914 151474722 848298249 734600879 148452186 252486629 58897969 138660366 255590608 489047391 425592595 432975135 676836302 464097906 930569949 648501472 67516569 323775282 380608481 582474661 632626390 18375158 895239771 186534738 992288186 877248603 858043158 444812549 288704091 712575986 301647137 426829022 256870209 872623097 432625431 791850225 81255409 548076903 236630244 309885400 538928355 62032568 76220902 122445777 897378009 793551743 396385624 875967882 916485082 679104451 63583404 411338753 307099628 746328568 522921218 57913610 837196786 858610793 792240587 708682151 432274073 233558102 133978884 531184356 934992936 192976836 966720916 291695238 42429058 704687147 141943216 562523139 969951179 905577210 896097449 840876937 981638120 624574158 181415985 429828803 527450803 914945670 606904822 454500807 416745283 729652458 80030618 787917922 282071660 798971193 458530029 569626720 160964068 822867196 874527007 619200729 144816281 560829231 467423365 719394494 969035634 104553571 127538142 789084915 613920149 759790385 939955869 247307074 939181881 661971929 765832448 60437571 947194883 498652612 124377883 56428190 596574884 602589749 578353338 957053962 682407202 283902104 273465358 779231964 845475401 427836946 704304935 787995956 149869835 206190673 521585977 455917903 23588971 64628459 24144090 409743504 927548742 54558019 194093369 482268001 297446068 187376096 40691321 444777305 172041196 414964968 759816796 520178911 256018796 706046292 763976745 48501754 763283998 245668217 11187948 372009498 762743416 830344536 836542389 194398659 882948858 164187486 581120430 806018119 540434794 26878316 242020637 247699644 908914245 155467826 35004031 974091711 118564360 136046818 433912619 947476043 892503192 517247220 683145051 615552085 172258976 518975539 917342199 678230838 245841743 177752418 168372573 842969173 45529727 406032332 198459776 348336761 837753493 949195162 834552087 304197167 809493627 988850306 616443531 595769816 691604858 203396404 261389790 478985219 859020472 791265610 50294784 637802155 469486024 759743128 304915236 766602706 841418891 748869467 368216194 486102996 360868040 89395975 419892078 18428219 804520499 403789847 759246959 440891364 345843190 22331088 48190088 208719921 289322285 41176174 37340661 678048808 696973188 638576561 923538569 733337891 282194722 634321346 598001119 284011664 251430763 531367726 814394562 845102462 93057672 686919145 947428409 55625788 987072861 104026603 984930129 282775029 235864191 829549572 846989035 563228643 421827322 643467389 671878593 409500626 492333411 34159751 28932846 467465711 636895935 545889053 571533977 153054881 600576425 319043436 876833328 542917856 874315731 175525554 199561035 283663814 328742764 70560110 599381648 245756820 843408988 630331222 150486125 716393937 74542977 940666233 445899938 567405195 757230373 34051838 968286896 987804017 3539234 100397103 648218584 57003495 830150019 171391914 11410687 404301007 49156083 613753826 976583218 837105824 752380232 350093484 308242121 768264977 723766539 506288767 599265437 881649878 143044995 208481638 324304852 823547082 689467664 591074037 941039168 579810167 15606418 538307794 765385235 333944821 437129908 401546004 662047198 784622833 957844619 677331114 797068202 524685775 116285518 224774452 660800033 264084671 313758351 888479187 468222523 812782492 143717243 601733333 338054644 599896132 899602491 485371041 890997077 570683803 739865082 548722071 51727175 780730424 583186474 325532015 303036916 630778230 145315771 291332475 904074518 312625863 374634511 552576925 13500195 859066498 328938589 341763947 131271484 10193722 587888957 856393915 468139693 79974211 419326379 639081461 640127362 746941922 307132633 673994563 111501077 955370344 279946165 113835164 317322226 390365664 100035267 680697982 591739809 132345586 60301337 609366949 539686384 135551201 705367079 329778163 895111038 622097046 372193074 797017915 555416850 515024419 398836415 155435869 394983122 27321456 815961040 153362068 444989973 9834172 84634266 684114801 424371746 128758289 371470622 749851283 947938746 620055176 421227543 162883522 992329354 11383524 553279761 867705 648937041 721014814 158948640 343272672 735347723 578319781 565805091 339598987 504537236 973189568 945360765 418892059 615106448 191885007 834037148 796540101 152676781 409840400 188091987 128115317 334187104 4967153 81069072 810888558 244104853 351119878 295796447 986035192 364276311 159202461 39929328 203861725 419671122 304442572 722131535 628692194 865635288 400800917 71503547 180855080 267405371 535750258 318487647 681291192 531174988 610296922 217573481 189090832 994166572 178384866 107532883 744961105 860518847 809307027 355145335 356497973 635911148 584654528 22284860 392205506 311379483 751088617 715934090 981481020 737291177 746991418 969614385 769354561 501400542 27989522 745185545 841398214 496425475 700086714 659742534 2344719 449243266 706800073 866451228 457802337 837386551 795961934 581826034 513053014 122361730 139151077 362249188 833208831 482123462 403955076 496691536 410522453 112747455 58794470 109253129 693915498 68465132 575278652 620168202 52372766 452146043 60783358 166334489 108036980 32561757 402451093 645217346 892928846 45938567 945547947 633183578 491523939 61311935 319463697 70663387 203620081 821767620 502860748 902889879 159302605 74198271 781174189 983247109 144311747 443983167 423135523 208464398 504470547 298144232 770494656 690359945 677171284 266482526 279830198 978378856 889325130 678420726 47875531 87924191 290730264 107969136 949907998 902375453 599293120 121114287 238368469 750689549 572972119 199463140 91557794 82719225 438446853 699443720 768137720 858904896 557188494 336968809 185697885 294132631 595938117 993893340 83552804 110678961 304497253 615807653 555111721 631873049 234018497 151340206 885133198 457902745 113059145 494084359 3170653 172905350 574875242 451391868 702931802 210868304 651816452 703897491 881145650 496054055 447500550 399165904 544749412 807548873 906237005 661259200 957655044 962189172 291390951 730409938 304632340 119071936 357077174 688467143 137522357 608261992 17694807 198141414 871687717 169811811 136149759 77577126 601352479 876549360 347556336 972208426 220313717 583355048 524732975 642049929 446155220 57318931 977709198 485089789 833477328 315828226 744450869 810868081 914817738 340995340 260039346 671547669 585902095 143263014 790471684 681854978 270622428 39927607 780892014 122599163 365358721 664716891 744789172 652715814 78017641 265669549 183100216 27425175 334290799 274363145 249243251 254433511 527118568 474366327 636860168 566674074 11822626 799835251 43672791 963350360 612152538 923350182 141551007 705045756 734726764 288796018 674417614 644014309 960949199 206217877 917690721 159119001 530785102 285587376 755639054 395896754 336722811 642101316 678146304 818848887 146272963 374240642 413631235 407246644 870192647 818209795 951291917 193998416 608660223 97182697 225244288 517657925 485477726 991487977 77167141 580027332 12190078 914600575 797957506 828742043 927428610 16319542 100349735 444657278 493100468 49940607 891343309 308943943 973778565 138072238 419004875 401316798 509705082 14551421 570033513 638345120 85381461 589008084 163916992 436510776 672930683 603693693 911490404 93533197 474018788 668976583 417980607 943213610 134755013 324092633 584106905 608566514 693411803 620296754 350147927 545239872 316018504 499842346 245765892 612631471 24349463 913516141 149868388 313545529 233300931 169811614 258778279 962154435 909728348 440224443 947106590 282343632 255182000 405957218 113237900 171696671 317493700 417406241 283960684 8649090 12814946 331705605 336856243 371379207 146081618 524448398 668683118 635382724 795824727 605894142 638054291 594517129 545730160 563434587 575184075 370413721 252961173 954282631 760701693 739574143 702277454 694777353 746526294 154572845 632569758 713120427 926564283 904105421 950014731 322523166 467016410 63187426 503403496 470990310 327079177 597350977 846509154 881112361 390406165 332492133 946062110 246511766 950723578 298817633 123049439 35552054 251756718 254496878 842275904 830439349 475421841 192870137 742254564 776707414 90844145 959758438 367062988 786849265 19289907 880503758 601768352 361666616 53939505 652600687 817064404 832625186 131619924 606840001 269779119 518205827 613202871 818027430 559382887 899860794 940147256 335088183 947797733 84756336 777387426 842849091 858918123 839661665 186075905 214583797 941411777 215377289 237262777 468128789 493785067 18213665 347986184 262463967 659722400 275002897 451639798 895693904 553090540 471520796 750784114 996628902 256230194 211564030 380791200 950740310 84158060 472473986 866646190 440084473 418208347 592409468 149860286 689442836 617050623 730992900 879204682 380393964 593053262 180986812 996172051 894398416 819025053 691796246 817748192 14641819 693221021 306672784 921297016 547685888 969780442 870981349 142952556 931849451 875723139 709045782 849029588 555697823 76846181 770815135 524225078 638677407 300675414 154212376 479239429 317824148 941955941 58523137 517053721 993541992 179465760 729593171 751102813 142663307 57228670 590103322 200375960 844672956 103059087 568917519 308485385 482443611 567663552 597409742 533215751 732890513 490112530 710915115 393246848 903494472 519214282 757688181 289852743 795053800 306652984 100249681 81687077 98977639 618358124 500068243 933504220 518069082 676425885 270135125 704249189 41863662 359238641 814923216 572152256 588710261 890648791 164167888 556325904 773672470 406694158 271694450 629751427 494945540 231734930 425063108 969996805 498708745 762347023 736835454 474783827 731896000 21383403 272494572 403868835 269188685 551808963 969320256 484166321 774741628 982261596 67261035 961237231 72575748 987385174 91775883 366495405 612586585 168971134 612962405 721468211 747417543 144037558 443479839 71596365 661836546 890201888 262489932 947614873 123892630 566237377 890161058 607070649 995057533 187978397 749285980 57983362 236605635 149780352 369790111 586484620 58277962 249388672 489423671 709882392 317724264 22115193 909671259 533038332 202404459 811643173 572391963 491824715 246255864 77388011 856148440 501031010 306270004 588657422 148205877 952527372 264897212 906553073 595729976 720891799 831957029 205934824 615739018 179921369 101478730 729169165 442310519 229000370 988182375 569318523 537068606 562964357 581861763 124636380 185295043 196980336 605238420 312622677 199879156 207894541 473963851 20130808 273347257 986492137 889559004 920187082 672423332 535537216 173134090 532038396 307620056 297204919 981136155 385067203 700546983 495272397 49144484 750932412 726649190 496910062 708202958 49520407 729104104 965345830 463765993 891498410 355645893 32157017 936392335 752185532 799089903 455434770 723703017 863249800 296465470 397370578 234543807 448133197 407777728 537178708 466680630 416498324 989365689 130394079 569992051 706204984 718612516 864550801 917011612 857891053 741362012 880963135 544502063 731301013 545185952 570872729 891701891 162833472 651885809 82751663 673417304 711563121 55923642 694375367 739109336 958122812 693970973 288684600 568700998 740125041 844956919 89820511 341029295 813310022 969711783 368969287 884050677 274704576 285761920 736656782 291484742 974944877 996410691 529435865 270752679 151202150 510450767 305142592 739541632 972677745 341665214 438377415 656847819 281983133 962874036 298432223 932546074 202338723 375049568 729053525 771059966 599767251 518739640 481061076 526690581 977301168 428520468 476750483 123331223 602156306 225684938 258229226 267480772 400854480 423199715 537205993 434726186 396863819 565756839 900188250 334697161 80905018 595116187 423979761 282727754 813286068 605585246 373255340 135589276 905320370 321437553 144733621 577104488 807347854 417016061 710473201 843235091 575093739 326909987 293499935 684628100 166059270 209227383 950001634 166384558 944684757 256627775 200596344 489931413 4129741 835770605 50929287 819687161 255845756 724046746 162471826 394993976 319370466 269010553 745128832 786288811 501329387 116781240 844822054 525738602 90135038 726736223 225416112 666029518 56670386 325265956 541264551 455734202 195853381 238821077 208903561 697531014 198210651 417535792 551491487 575310968 949063833 578501295 497115690 942885037 991232432 43916767 685900221 333432120 461838251 463760961 873386897 917876625 216509633 768601963 180684790 749328999 44065209 226990646 892076378 196062496 758436665 739746824 449755702 800946717 73330473 634535479 933247553 260721527 224390122 874803117 580558189 235691258 930625663 37779249 53961234 467511281 89606313 204983748 509739637 954355917 191018443 406522971 15937363 178339856 733343825 143912752 143346599 484410158 732380902 231875609 324477380 331194961 281155494 791014692 780928151 759194878 873690641 470523872 507695495 248621661 614629475 590019954 350046943 73757152 63190296 159612997 85925746 144080265 107048640 959124443 963075474 940345101 448176247 44423477 32480482 818069311 712038635 811842689 531096515 199444988 21246228 994638019 915523677 876684257 133063851 656851069 935040353 850168422 592951474 671514274 626335534 738397936 919076084 991000968 301733528 978331640 23463675 180095832 753089210 301272165 936373403 723308089 505505339 171603134 42629794 668955058 657672089 682653358 876169101 689684778 761748453 374003329 845298692 968499471 68222817 834939532 931983760 55852932 844846590 218417186 735298070 709998621 743928259 106546349 793602420 496562577 613948084 966105590 613711419 656922810 180294518 512346846 589783111 128338281 425738321 273923871 447776770 316899847 348551246 589281897 203608417 243180414 854584556 473493829 987814837 217555735 696508196 928751930 401954478 282186341 591727728 171980580 385377259 262761311 113608261 180966847 168201303 50985219 959661379 49582102 405819331 289093223 352275686 770155471 960313881 852522941 966087581 661674670 929370474 960962396 577705056 259623908 122674859 64301055 214104839 242289228 530428559 856121164 214333440 832952731 404088077 119765997 414620385 263735542 895925228 298804283 993910566 917478169 799534910 350576669 915429125 19994713 470308183 705719446 121109161 159794435 53795137 368094518 550000277 150060255 763043944 399376563 407391308 579162151 459018172 87830139 744978453 253737412 783579486 926803396 476253642 925602396 159413022 84765158 189469519 488246404 655739804 8117522 109182457 77076543 642977834 76491037 786090109 839131080 783215349 529653419 974257438 122527165 4685371 162004632 159384958 285201693 515823367 103482832 939232310 852730054 97913238 877525083 365076701 703492487 745960942 312305710 292634166 709587893 886363530 796052063 237645087 472168151 852618591 28755428 925674787 847936180 173969516 832104933 756177162 502439288 663026786 554900726 707241540 190379725 445909500 688895112 375260847 77715293 89213787 257593979 378784500 197622392 431105405 245625828 432742444 805907815 707050668 819390963 523708777 523577596 668032873 404526856 281227517 581431907 954887785 644431500 884591683 344967911 653893977 386051863 174439054 271998492 754312070 979128597 25500871 518502124 338138927 514224121 148682906 317186185 207678790 282895581 721210910 795880427 626213704 34748475 100474453 316767557 908006010 297100481 890329004 289533 484066500 104703704 581013298 203214885 931233728 732925274 378905595 910711507 69837339 348462328 496476207 575807817 721329193 405865423 759487175 915336050 624314649 455384684 711149056 717920451 872697292 833289368 225985949 808305008 692091267 150420445 248566207 514799812 795720924 356245716 12152320 693912192 523113688 67674192 597352120 291472829 581163956 223680472 926751290 608042604 87558005 814017412 292082784 904903006 41797368 603972969 288775246 976023347 154077868 412128993 38883820 730839222 944354605 46688454 15243473 520046829 917210581 858723722 342700851 235263682 492858131 613161081 697646594 259449242 272099252 836466504 389179800 468697986 162191609 725689666 674578379 330280716 204712173 462232848 838148677 509023782 953662281 226822734 27336685 544214322 111597572 147781645 786911416 690172231 983645376 732223521 579795507 69136306 19327052 587170224 642105288 491663069 11802331 401330930 44781793 594473493 401675544 534801205 742378941 907935350 407034510 251689635 168214784 935937949 245424119 143060488 578035877 698490754 199624078 365055388 158463785 186074473 307914050 58328407 875359562 651341415 162851278 482638254 263502149 915683366 395822359 653513528 889043238 356012200 914941061 674624057 436252286 607768356 718827696 157173958 473465012 485918628 838653344 981805399 188866527 428628833 665045501 560811532 768081794 610676218 160522040 790437507 256376784 485395930 665979803 540354074 170830342 767199317 962713830 172503059 555846700 215120903 740602568 270053695 547684631 964106698 71209785 105589440 365877962 306645981 663467720 14828043 197351687 506875761 531458798 580083148 22949784 952988597 709803950 366702148 216165667 116357312 192879409 170305132 335892271 284534964 560738564 660058890 302161607 636281770 76059865 520478838 323619856 160965845 850568845 758562481 97723869 451053079 917493296 904112698 350237838 458699705 744852438 611721295 623238766 301091184 717820561 63070306 100866519 603477032 953690514 682038087 796982187 301104807 122506439 25880558 484948900 198443851 309604367 880140666 696796432 568277414 23179672 582993897 869990313 223143531 497724527 747859511 337883387 245655733 830264341 949667279 881911606 926035246 24699397 685962394 258294953 489306020 206398944 548340385 996014762 493958337 444696701 990787916 519697332 715513765 943831278 915539117 287071567 905198162 356257549 429870940 362984331 171166008 250557144 375559712 328383906 387055660 159532438 617634122 422437245 516925109 307124410 651343283 769189285 477945439 845888133 761207160 796527340 56512212 615787874 394818433 683340043 417832667 116550101 175422349 716388833 964930757 177300235 424888139 387632243 255748800 916434979 43351422 878322882 609650879 41481271 485647928 930965303 390289361 704616412 229095091 334907648 456286504 636162471 363094998 413329486 234625904 124883256 335848878 793445193 322326808 106893837 730641314 419822166 556419032 331805727 2221012 332614228 634798299 191434570 810590465 995137390 128498445 768838952 289726743 386550151 988448610 419972978 552325304 483015289 12666185 537371688 101950015 500916813 824393616 541914716 983578291 14528506 925588937 425341752 232582057 897271406 573902704 596461926 134614347 464702203 307550710 666843547 231613202 323447896 792236901 751472098 271862261 804980407 126201260 169260712 944768576 236402445 581437813 460826155 294299407 707481176 530545639 175823228 444288611 185516576 196971827 689923603 390393862 530800919 577892038 678573136 751975204 154834377 568898923 421695170 313606088 655928056 688467337 731007953 186774108 950036779 303978145 21945893 2768988 602238680 999776069 161719672 454668433 346504001 220484588 87651194 574025001 568246689 732801069 905186298 617744662 416025682 58048120 453181592 565516034 329495396 652804762 293856113 410509383 829933503 156329057 687537627 36734652 600149553 850774668 369724009 811267706 586453993 830012843 201244495 280277541 513444373 398618634 223074776 587772567 336895267 601699505 655489441 123492123 132810539 485071616 664917456 388143810 483477738 174729175 682772870 630726189 632332859 585801082 877637647 460918287 806158945 22756975 688389354 530271497 139513771 574935157 965570814 634643144 542249634 784479082 915096157 38220898 492135603 697475036 954001690 267900751 285882901 229224775 208976202 474108402 772622161 523506203 664836566 325953131 316420124 118590802 456135501 710911609 615638175 195880102 602421422 162419788 661053856 162592119 335123042 582471963 457002712 790655333 524277751 849112798 102803526 30269266 890182020 82216315 399537102 990394993 209658524 401783048 900012259 392855060 85435713 180179632 875698166 466231393 108878875 252787863 911657449 873525954 765401333 125826531 309562768 175598354 367940205 310473128 321540339 915636380 83173993 431186744 161342589 348808285 620722997 221976118 113500778 906652094 743856080 792471575 506739681 201576548 157639799 776610240 534370277 363634489 35407485 888285997 250105055 3415158 375437508 445485326 889205242 527905745 735148460 661827274 470214249 487933543 391994684 343363045 471270832 913333578 71416725 888512331 901295178 798645261 130475777 54246518 583310455 132094737 229995871 181590208 137681149 34341435 912312662 757314826 246753638 509517483 133240892 397666311 470731679 904774078 970446037 989856284 325600775 213706419 107006719 905800169 988764114 386591778 185850253 223536445 657197868 790485024 690974257 697718631 561313591 524906018 554709278 53992756 88315529 424371782 338218599 851788097 403898851 949156635 20636051 200864715 71028513 863680519 874266954 216082926 895333939 150188463 725163106 856767690 144132356 948134814 820222559 284120214 410516070 236381639 351196904 515789077 458671416 319483444 570846647 687860564 827415066 638531178 642195527 572903111 772599146 856881587 83500260 63646069 809956145 957791937 645912731 992758305 131245516 471850284 374927086 881223311 426575988 266448592 90859412 128813496 384381879 380558161 229771383 109465768 132308571 905365851 572833566 44319839 216084374 974090543 209248145 691391012 153343418 564934713 253802829 157991146 139064811 134587684 793183231 556942092 739454606 777234042 162657277 290992836 837144971 710404263 285766053 380813336 610617260 873845349 531889666 766940823 157230880 128878642 848837532 836411241 141764603 356324331 405604853 13073754 468959419 805775487 343241196 361820669 293702850 191009717 525329917 511371861 82440791 446764357 366979956 778517138 205398882 225049237 586047724 672849737 996125947 669212335 695573405 788944968 676721849 163632315 564994848 899178019 835074271 474173576 927784164 486611869 370815982 750956660 88037182 451972445 959386673 938847998 168970638 183608072 536380736 14797819 839530063 992549905 504539831 418475339 558593793 220832644 963183683 996089646 372745476 71322682 4885828 895388110 713858942 337272833 255650495 846777872 46021425 492418721 259507233 236402365 177235703 239152975 934256913 789641080 351159295 551695695 855396059 828505610 657386760 468095187 863832394 206000420 304994185 409361155 924799411 671655168 474953109 828110471 393708860 859242764 64058401 51755429 669398688 731577380 973341784 114562892 71292250 875176220 719002063 504483199 834126772 662365965 450590772 765193007 586947314 68155141 994652107 310505350 228243813 845151326 22339725 80718150 62647765 482233176 294332682 81303622 295292669 671714087 99383544 47524210 798794637 148245973 19342974 485311388 221633284 575657925 411236326 598433944 666753290 466858491 394314998 330442483 82169646 352799979 291600609 833770973 569255415 304833781 412131879 661970366 743283799 109119068 466246561 813404583 346374107 675403750 344359874 576048448 981231437 416070521 916150176 208116415 9215045 259731900 187846328 169968437 890296550 552550727 755854305 316767453 269876092 138913506 307023937 796540117 789551532 134349046 477353047 481199359 957038613 770599081 139545673 373971519 42992530 547923064 301406177 309145497 337851561 238877425 668834663 300686931 994260410 616421504 519023102 456329547 213137874 455816571 198639390 334776008 921634689 986797213 435572723 725998855 359771357 614357439 834764340 2164036 314794458 352590485 586409220 712834852 798090259 143631602 840601939 566765971 196312087 15231994 282450127 443642925 268846605 22250397 617901538 988239863 633916149 615998988 314772891 201035882 250745123 542593980 56778393 39971294 666077332 422043121 173133998 717038484 348508440 613579705 118106448 700123850 57386059 942757153 768391210 878650471 119189691 503310909 119947643 264551997 535837533 784087117 117974406 825503050 688953956 353107422 819090397 970836563 588121078 580306637 863811679 678253241 455148051 672180968 484902214 439086824 646617592 739444617 237867371 864271447 793888143 24822291 442127741 887223596 214609854 778725137 346423178 917242644 988613185 667658476 828561231 997171749 275523950 176781053 71173375 922800107 723190779 293816198 965542550 170905105 834716191 958416897 513177515 697995006 729129005 536665808 176958961 886396298 279981460 703436863 98640155 559498897 964123851 652157323 18443613 550762956 811075598 679614221 639934862 961552360 600087903 213384190 670344325 48018797 24318260 380403935 805174929 76678142 122788117 850300778 494613366 712526926 259779192 976675261 683158888 662573527 229932524 755685013 217124972 983031172 166147064 70389624 834870905 644716762 329323299 270886476 309431518 174341006 892097149 117603007 787920633 537830036 25852588 737904283 109087973 813001497 94237835 920269340 495770128 36269288 416554318 834544142 636167592 781277324 510327737 854461329 352133446 607413567 123096046 859060955 501790944 592038553 8431830 951591314 878843227 389919715 294531894 571894794 105588285 260390341 829928663 18880336 708877379 12249172 508606236 245849422 983143207 959573742 622853214 575505668 476130208 398599693 141708712 982232998 968133593 936553778 91512584 174721041 265481753 312376430 760055637 520927066 218597404 422634509 567432387 404211646 364423528 983786097 302165451 291528115 831643199 4532748 682593272 925337938 546614090 818683045 322378878 595491809 508199565 653375062 853481511 656915946 833166638 694007570 10423918 111676654 231771284 222153766 778260701 6340035 39738425 59152606 552707602 434582204 811839732 496404281 604966843 278005694 360653076 532555750 241196862 173448903 337464034 929480934 519731377 782533368 661820092 470283298 408427198 247704667 833705619 990694043 523373133 911134207 871863853 383860182 542207312 92766713 532605290 981605716 139090552 334080557 878808683 179865703 422731340 125682702 213921432 99483183 707422410 15360325 899192369 192277519 980819538 408547956 303904944 198824987 150517612 14808049 756884677 286861905 854798833 106523939 104397998 820082732 835518875 103125298 538699181 764802946 664556042 544872953 79463279 142401262 53135689 820903979 142358648 668999503 590673139 485109177 369302293 581197704 317539403 26064027 265861616 779173490 554532801 89771206 239756455 780136418 288297205 99695977 869180348 264356010 715212748 158174456 944292859 312793922 777772307 282973533 942845893 367622264 470093506 727302124 574915041 280990966 389245009 207116397 663481950 312906339 974269493 605268575 728775451 396506971 180904461 691290006 242249548 690917326 291955180 744732345 74996948 274531421 143166318 485530980 547413060 53776767 459745036 487370703 720628785 877135797 272802779 23693905 176865328 46985440 349548925 249727480 820543769 73078610 291663981 854513891 383183202 877026659 671662770 768772808 250363057 618094978 777600603 272461311 463998904 721815349 715358321 526472162 741889510 310111676 192502303 440281597 63430847 701756295 84016423 91769739 760298981 858553568 985287676 47233789 294281249 625661475 34575054 736828021 569065823 881000493 752831224 594721647 227780735 476757974 957348129 988213610 682935876 19935711 230314380 370150605 904141411 422939889 994519346 265229152 859312758 785937709 934597279 389794929 653980553 563040453 47497147 673696127 909856412 304661969 926246778 411464853 102480287 780253488 710947408 163736210 930517772 722227099 301363333 532179479 863147146 17920102 306243549 239075426 388267601 4027265 788142371 404388826 141248844 366196080 629809853 213309081 61292013 32832346 777058734 973782929 506661203 995139749 205519065 44230926 283877400 378524500 803416951 961971688 3710586 702048483 872834582 76811450 463423126 953603699 58334103 363505070 952815333 623233568 469768223 770341966 264026354 435169888 661322464 226216559 48275991 396818911 946854333 278809380 46834501 368164719 634173176 887149169 589760726 408897184 57863188 625745239 998994812 356243381 507486088 258023699 131152117 840879493 949347879 520510059 698153132 69305159 146955271 815816623 10551045 118591143 58931362 816625169 722867233 27772663 659187914 61238064 735247334 465227715 131158495 182129911 714496239 830766301 632469913 391422566 927719998 575468016 406575494 281524189 961055944 45746958 364004332 108407465 796935092 334222186 842221761 951479307 113757137 527417813 772441777 647955806 38685063 538722218 324125604 817928524 541804678 489252278 760904539 455155982 774495058 211079309 249457192 489446935 568570065 343344349 919377204 194483151 719594135 62235280 866694760 353055608 839314856 568126085 670267629 685946195 425479592 861349663 12047789 345528296 734448113 173172365 259285475 297023824 912806185 220487807 640848631 426036717 764459493 62429191 93274544 510258092 119928422 238752064 492084132 855638373 977884051 566474479 374538653 223700087 365207998 526030779 648020980 174912100 512015096 863732016 767073723 205133636 411237831 118868473 118307279 383795259 653293976 668498253 599279411 567118916 180008519 13268717 414070665 562847045 889382315 108741019 704212260 158937753 1550083 818544135 545388852 639431993 893066853 474402275 606254268 779694245 42296467 822965128 74750637 285989149 748577674 703234419 615063648 770596028 579115210 137049791 577506709 318993577 400228037 735516216 696881988 396583595 382893066 957529388 355169998 210280792 811504380 428760723 272305812 202786855 535943113 634254790 786079516 108928200 641036610 963801216 677115084 20777930 250021087 657759502 545761530 676438128 50532069 772211128 192566595 692994394 534051369 360279727 168690973 311852370 275237043 926561650 161885768 46450422 944761404 682343627 926591428 536068684 364775570 146147565 747614405 150841051 616548776 707519199 462903373 370161553 821643236 406398543 779187749 142743260 398334899 412750710 32489718 480447440 694909813 864032024 862290631 877731341 615611602 904908229 526041597 44040582 254789739 407621865 727482600 554206766 961418028 814327356 215851588 263507361 815929535 134924204 433100265 667354484 569274867 772348680 816686875 599366427 995849887 356130553 894267080 266540717 476501316 679569684 821875961 820847167 437841849 370263355 823569889 893132727 652837602 664894867 940007942 627985644 451580652 398963888 41347337 926583067 535364122 627598643 958071631 990854717 271745714 475961990 340593923 621402072 202886069 680591669 913851892 505654815 791620678 961338273 669027196 461079602 238215180 597111457 625689052 670104738 928100309 415472168 531565995 570251856 936483601 5242173 971481105 723891236 319213637 566005042 537892747 377894102 497931268 202818146 514660725 81027813 242762892 783123662 152525967 981088804 525219915 169967521 623666226 484499432 868156149 724868610 26024351 971348972 858339016 267428789 832354691 949332524 202735443 393267145 403293567 892175442 654108737 49092863 354091520 750004951 703307048 249875142 719061273 589539963 140563528 13550974 357434441 901982772 86638955 782129554 581592177 480167219 992923981 140775803 782319482 197912408 88629098 499415219 23827216 643800720 843768367 442375385 457105913 226175634 490198723 432893279 893874713 148127537 942626599 136585474 951090910 506657779 437205540 185702872 158274719 519798251 834587361 690293435 249232303 890912464 654665141 62584627 200331295 322479156 10510178 904050756 956641723 525642654 53328800 440389048 337296311 45181364 643372154 551795187 224532262 272914678 818150515 559538207 927364302 65539045 326524727 778653186 435970594 744001804 293669027 569325623 517311049 6312693 270758187 887148331 808872634 292886555 248367853 720459578 218256784 880306118 460474653 659861747 48655786 39947354 589139999 908963738 467513885 713469871 588530335 422924989 171406812 934473850 361345892 735960801 500804465 286213344 92183855 963102886 2384814 615049352 385763478 113163671 754123057 258046408 994555644 411224412 269362027 523463028 906243686 886440901 846844797 967773192 386610824 630244290 986108093 130387696 665926092 175904028 206678362 251836942 434216846 699197902 56818394 390539757 470096407 846894302 890025808 332996841 631180019 247226906 203895382 102811202 741306120 670257576 251415015 759870445 283688249 643273535 996027900 354375613 519782356 124512527 869685246 694114620 799561099 170261695 919020843 785933433 275738285 684166362 159418422 569722175 223776344 567344648 107764500 305271324 930877221 180280263 312854835 638024991 69912104 401982498 600986484 976511992 19336109 100657627 712463657 709129214 92862688 162744130 489410186 818594666 282430735 406627870 20092710 990441041 151977073 637560414 460132590 378585481 923100692 868840740 899378526 979148254 943509147 21973937 77294500 349453548 938828191 417062725 209873473 116101441 625771632 83899185 519823831 664434138 352980622 7551800 570996907 256603045 630852544 179938322 110176745 361058247 321702585 10572422 681219816 662566614 53156270 818790697 483476860 505256542 950684450 760439071 371958675 746960496 72833039 592475419 542179675 588689812 559647657 102038118 568822145 794421949 494429094 927001698 489524327 116961542 935311031 874461105 569952661 377864337 844122074 922925782 517385706 979452792 608681220 484349959 849634701 494248575 4284070 186120728 220100123 577560879 406982968 138174930 870543870 70031480 473296994 766714166 888424667 487404464 236418740 742186101 991295018 560838408 884458135 917528001 942500556 287133879 179086650 502810579 261780899 139940390 354798353 796254828 692521152 883249466 426188865 712145832 155623573 945173886 247614431 154989368 157315512 168451111 142753439 639861364 201644328 279321353 688725959 946696202 150295902 466042617 863017342 771855288 893804116 914710580 146646950 15246824 977200478 34832358 680593517 782714139 901408207 666329626 922056510 609203955 919466189 318158450 207340909 282166265 24373615 447179298 892636647 54542202 242183374 430230741 10934721 603901274 418864282 742095209 82134393 99196126 626057936 681747958 888985814 693143550 773645202 571940511 640578638 381459445 764643074 465536912 393764965 502542339 147355799 430462996 23505225 168656981 706909752 107365543 761606266 6458802 614103188 550653194 474631278 36227535 146264483 870059117 61437945 797262113 185730018 939444862 466811399 191911819 28210628 241796055 128040729 565549437 28406425 124588052 248755239 24719758 924425636 645111864 824026507 808603135 679366254 403439614 467632296 601366076 763247547 634114778 901699398 760298210 535259752 814891827 882279093 666492994 48836059 966930649 987215870 865988150 105999190 995500144 759895920 818188196 437182522 94493946 470641430 157252159 110029655 867488733 326689329 598003549 306663516 881144602 828274282 761941882 73066840 961243171 497027607 305651432 314357407 436772313 353827832 600151487 874674782 900584766 14049396 801880631 866966624 458220497 667012944 742305678 587156401 909808566 352813092 689940227 758683333 98174838 948061196 934037814 61844102 38492137 765932409 468733483 717728396 270828162 789501570 601624596 534396 59439939 279268582 561020341 562033799 909272360 855926660 886173150 84553797 284836672 98182920 772232504 205917212 215636311 536683346 445487066 319691797 191811790 481395834 350561059 861677204 646592931 412874034 931904523 255724119 138298622 763406676 302436714 242285860 706023964 946719394 124567137 439215953 51406566 565163967 805806426 797516826 824545053 710790129 565187067 242446424 551429587 556365898 110828193 807866369 493835943 756094333 250798402 56720624 794512953 363946577 341809076 528660433 258446736 326687774 344723454 423864295 121556400 491117230 362648573 536994555 570064089 52161878 107467580 236150438 655926763 569292474 639806636 770131730 542387259 916776260 31367954 736133273 840759522 815667889 880187706 889191216 240556280 796991093 184420518 887395343 638829414 920599736 339843386 957475546 912642064 606097201 141637069 230088705 797934291 986553013 426629220 354644759 247908836 308883761 593282539 532235666 990991284 427237792 611990587 294457952 807369201 241183827 112176365 805641620 434832919 323965729 141540489 372766526 838878144 220584608 287448890 810683994 769532852 441035020 89490565 229448032 817804776 598039637 589779175 952524661 420768943 406550393 864486635 58281876 679295245 611929168 850343507 674918969 627323308 986326030 675393129 582217076 52120387 810596796 975661051 58708624 938696712 522655184 906595292 228052158 745946080 365001063 656014140 977525873 369763069 223884751 131460376 506099427 388452561 736714536 343638255 289040185 514551572 309177014 401320064 267521664 805533457 828235047 149440718 666583524 854304981 992743376 884442306 771432771 318055104 589197167 882016956 506482810 834843330 58198651 708422935 902316279 800183044 600251967 704986538 197060390 715509188 215656856 250645068 247940640 105521879 756913823 306745909 490799056 730149187 591006429 623412761 943064656 361866843 897927109 592254342 830960091 601647544 203827933 648891159 635651195 230281304 508728797 828672363 546123127 601881810 615103191 983425277 389807622 188148231 702599517 467458667 572136464 997076592 830415610 441922690 495480428 349051504 505909553 535709675 964309016 998457438 174344273 262697737 232548238 783151145 691052941 961083411 228346516 881297671 914143141 754516213 192646876 217112551 900429618 849557440 612470853 664844797 265815171 239592115 183560850 98596831 496701022 777930397 652559019 55546986 574700342 438992368 828470265 87031191 203448991 593968597 184242514 623091270 30155140 638829435 149482857 713355655 262163960 822123745 948234379 700749902 982654552 967187354 693523596 387260664 182661659 152743536 177682740 534146769 891245136 385710919 217864038 531319042 120026875 325586217 510850450 964701783 103428602 849505028 638454823 300749818 445652057 308612354 122671340 400916824 987309656 920399524 749760016 804110354 817405123 3574712 399004016 139252817 436998197 322961866 146359651 230258838 583038929 771734402 301074095 399391193 784793487 980228077 920005878 826539575 246598594 220450800 863108100 763087673 428021916 957524354 685944008 278727714 429367406 661032114 683306496 710397732 539168615 70947535 162832366 509001523 769183876 962151960 196760406 938212556 735398868 498206273 337271413 430890931 201866107 789123200 202029380 273689129 87423994 758966488 427455748 697778817 788564587 144415241 50488401 824746404 935022713 40236235 99322411 365142970 245568111 187074093 860951109 544121046 974185643 845504739 5351280 500572067 237304762 48500011 344437761 740203888 156510294 83563235 622458343 170925327 287828529 720618041 157611178 240854310 872636814 415703862 438476006 115767352 519210006 540231948 278346188 223112664 758332308 916906104 66799851 630707416 37424152 247124829 788684438 960831702 383456501 649484105 275191075 225774549 735325296 670795195 414983190 235569114 829023583 114304845 407382048 332462757 81556193 798337989 610084439 755968381 387916802 762030419 272526320 997384377 545057514 816852075 429810061 26538095 55233025 723935019 693051509 659747991 152137086 651715881 869207455 181188043 749917632 927743182 339767147 123015829 650542945 370861531 816354777 385187936 573868750 511832188 547956600 310338769 455690796 843024063 413289337 998098275 772408879 644459887 932287348 390620751 975186836 937830144 585717360 863141451 242333695 300707614 647291549 678862028 433601408 554805560 752355235 501386187 318651340 865732314 142708496 378727829 374640730 680016307 705567860 350774002 907753478 454097527 490533299 103479402 16891304 438189130 490349229 798239140 413583985 27809825 376704205 96907956 61904578 440962315 300241027 421518991 89462530 89759519 984245544 704817352 367298933 446523961 102606281 635181680 952419113 206635114 765940184 633530345 755343738 711714648 953600716 847547797 622485864 922469984 324797041 912624547 876106119 177129733 954384687 955975905 729549404 361675280 826739165 680564638 490814599 273410519 174170675 4833826 674671365 278172127 751388168 972884750 731213322 699705297 904024372 825454526 429459304 348099007 54207101 975324892 476634491 316002305 37751955 55707186 867839829 355596741 466027297 832148594 461322572 584136318 465006706 688263742 869064955 897725038 783071093 402758630 770852692 634209966 678796157 111797013 886939679 243856997 971145042 138191110 6208005 41819565 885560932 592978649 17814621 420912967 476654935 279041402 764060514 132744351 668730686 782880868 675736353 835925873 766889122 86531034 874577159 756842811 489087890 309886811 455392486 785383474 758789306 362940688 988822478 628138567 610745390 787373872 466658005 695881494 374281236 407140652 375135533 332559607 417456505 61540952 94922664 128363257 206995911 234490842 211115725 768645493 4247553 885647359 223103222 603476027 504124445 442721344 520712508 31322052 887876755 517995782 45209314 654459006 636442896 490118886 422012711 796723992 141940197 808623436 669989236 431854377 571749738 692799720 189287846 330039205 605857038 698521666 817166597 8830566 192852593 685252211 419166705 804957864 73949575 316734848 977766456 730908805 549186698 757616419 750397647 311419352 419029671 832234713 505808566 381724573 208402206 421655493 561707440 359138243 508420479 933768371 622189122 784156745 287603549 360591507 183030840 399557428 331373741 280023356 153095057 955240148 739620277 62928047 77313111 690369335 902257768 812439251 82170268 186759940 40438734 510912189 436942429 285187817 927861847 875806453 813499639 882689581 157626937 166929116 540922657 981094825 552724532 194496979 232058140 37967844 834509310 752354217 34008352 12884109 629903515 202051269 601123488 421317967 798984193 831618818 903568884 74510474 521927417 87841081 707833720 831017691 574129902 764968910 113555426 638937886 357629411 815627823 979183780 789776229 227771627 239934821 608170317 869965494 977097330 31290499 451761687 501103769 881331498 918465488 529046798 740744202 632572534 48279876 891598337 67566854 481341361 86591259 945754220 138644080 417945780 592266305 669389591 755617846 567060739 206929815 58583209 114159924 56061410 960665306 378418972 306087931 413714103 808004365 684591169 635694259 128816944 328390350 103440263 332513758 349990294 553231182 853161786 928538302 404281710 356359073 106558387 839728418 155851812 555185730 537593404 732854986 306231608 979243723 493870848 713148942 155917282 653817273 690280618 834334571 823541888 131644257 862206577 363337737 571369325 624977511 460816788 49538491 944236621 519540770 333434370 874857902 542482301 401417479 779449105 449310533 659396449 950474440 727194218 732423460 6919882 835001033 152230932 175438077 785329358 973577801 21056995 790623778 536906871 776327163 780071595 16271112 593240970 291042808 21355507 670583220 827515627 938792021 542862149 294510505 684620165 93271398 503368754 82347868 900866255 953123601 284920480 993629319 819946496 400900224 515381120 681589533 518691178 834682683 546832950 575244648 551893072 996280784 325827343 246381336 339502013 226148873 362162967 720902627 428015881 834324472 507367395 966179152 165312578 263428347 737325420 292338462 368924320 432819947 708380080 108447269 778651751 195314056 408093543 468699626 480961142 663259816 713205756 392896896 576639168 103910201 17763134 331318795 792178554 765354888 712260816 460922126 210504713 470454583 121929688 158184468 564725420 435346109 775334220 519057969 181581843 605797158 502804776 481759639 91033673 774933715 305755435 320010058 970556886 815761337 540328873 983070734 495053258 524570482 943637840 567143203 559417307 798987686 14957649 351640939 379706724 683666410 837039743 752634513 759815686 383000403 772746167 963126023 657281953 761890359 860207527 352138440 968015485 359629328 424543699 287343204 924284900 753171236 766529503 882650801 941679745 881642520 100964257 731977540 657002801 315461831 886936151 628680899 571650218 358274264 733233149 201032187 734509995 885342418 303761360 791909815 526622288 523721281 651216427 116666231 431884033 217335294 236055089 853995506 146564760 141573490 513716730 459509369 548290505 697896322 934384791 443530242 961233831 261918999 446962036 464830264 370349504 130260061 88359760 50059739 774831705 176159803 863788926 221483697 587895245 750323788 897283988 231049161 916430526 757626867 652089337 273364083 337375853 981991705 286414253 163739779 544679080 338825751 319137741 883874323 970873333 576102798 523694391 847832921 302357715 906645250 860523459 696438963 184740646 57030434 705851353 919523937 302561407 137698298 843492093 572764234 331301561 464138311 499176399 686837348 777695115 171402570 223284041 650117986 458205969 815288336 13936329 531921271 190626051 234339641 695515647 492901952 921907377 587581041 569566021 748454075 291481931 401908504 342677540 954965049 78354919 15562360 660081307 789729060 816724805 372780947 456004006 558575911 611218466 435296872 114058180 596996483 819554719 228102862 787177440 613039144 110919447 931837397 540360731 541429418 721080949 683026215 834740254 31586667 358259442 176598072 249878767 746962784 72858895 336824066 259925560 676156835 711951120 255374154 781881663 693351440 866635369 138470113 947743516 769757623 100071447 475432035 319664639 318916703 648482960 458784718 981699005 640961509 91447614 705048294 988782005 730801804 762283873 673899287 771577292 972020353 22564122 744221947 936070984 531523748 513248330 610136327 709912068 274655076 657030824 181448343 344100465 143639003 196313845 686309850 511876956 26700691 321520870 645977003 142124689 378297113 469528957 913483186 743872279 580346499 903332551 696465704 510938710 937124383 120632681 677760238 734956054 274397965 741545014 704681456 2599784 598574271 125771352 836137184 959392708 198082783 110923525 117331585 302012303 878699790 9734302 551996455 592626167 582386028 581412751 899812242 996834772 933259542 319912093 972822471 852675833 155417399 482912926 604294440 705943775 190992058 246075380 143845387 401556280 38048044 564458952 778362262 843395791 700867337 205986803 999592959 250907896 652355629 721671458 622378142 64267256 275920694 104929062 579020019 281553029 136429069 367350743 963534340 878464006 863158569 961437597 56945296 962061003 910232827 887855960 486788417 812987422 498862435 899311089 740319984 601787335 336956559 458046437 317350742 522811177 961394569 636044242 798630399 930965020 52016836 441806240 765505140 787178091 860818892 317322051 136031566 758606959 970138878 82953930 683732792 569111107 501127342 419488637 794753092 913509729 628699251 58478433 784574874 796526529 897157913 634398387 472326713 597942108 215054492 989196683 560663556 33231869 337955077 185648158 861337462 917451224 926792170 193823466 130968226 851964466 424746884 607872811 80430105 561861103 825717955 646674497 974385169 753206365 946305280 648296584 349320332 223455631 788610988 978316253 636516435 868038925 461151650 302075580 671743633 539090404 985533460 495220546 815156108 860629956 921635499 169393583 997351261 748021745 170157251 700767172 706075240 288455932 554536635 690607247 828221774 990781943 817996480 193867519 105122465 59446172 14366336 978663864 899262100 496443556 592742732 391940605 66167891 548005899 538674840 504391633 181768714 348400051 881373039 71211604 584926269 250913291 632032799 455743147 417203368 328569640 726113838 960019492 649209240 614352920 524399888 816647566 447673022 844257910 710501791 536343357 656011818 234722893 616918317 662941943 391873007 71787742 697807003 414960653 959900644 857316303 370896757 263924990 411982535 305503685 48824533 600691820 571514787 98508813 48885776 666530866 153527952 656766244 278836977 854457737 646744464 609421053 116838848 244026182 101461442 971719726 280284666 332822611 169774296 572872707 65425920 23575030 188603239 731062751 377896652 440618396 285412712 895937048 156265833 816957779 36597271 493261100 558317520 130198837 393537013 523501061 204599034 863002481 250213349 720306030 552103611 529672461 631604680 558326383 181807546 68763673 537866476 268805036 208890595 23257618 295889167 422834800 198301228 530650452 889125025 344348172 400726560 56198642 303819449 596577796 536810029 544345448 995794546 648373929 555215748 461055907 857843657 263291918 310998576 808826801 887900753 96212920 242237405 132362532 857829136 182602464 546973970 738402539 322535316 439604352 658466310 493731703 492491582 273577383 916507574 386232943 419088193 154821072 550608949 400853106 688158409 542085923 17639847 366581128 548388990 80010638 962126731 208237763 708015122 773624951 340332636 510940763 676733636 975367574 719395735 524366316 529395333 20538673 171456284 973762835 256706569 634254168 657344386 696313974 31062043 123239293 377492092 2654985 921306119 584081759 604245931 796678180 592619112 486926023 339829687 798095074 269205620 192386037 242352671 667523164 645807086 555364780 242488975 715007662 805944227 103401096 781616999 845995189 39314806 86790117 294507339 556087624 138051968 173083885 383010464 407904762 834260938 973084908 626789965 386981907 338164136 699103653 680394268 998304337 514707118 801637301 769723354 593681931 671264622 118004002 293579107 699879627 242643330 433296512 532070091 868177714 691380517 610066691 623937942 879013395 867586913 650636829 777221610 414917245 785493728 868327525 477282672 170120830 666293661 909809148 156703329 543036498 184930661 112224551 482658078 106112973 771225127 591355939 125848714 358127792 625710351 416083069 480682583 5473346 524577243 258496867 797660967 434285335 465135168 958849622 977895736 359442489 983067405 214242868 723958055 628951589 787900123 730041739 818763339 710244990 930412077 263763617 538801885 433796096 22031007 308986772 561340968 22196832 931385149 40138251 767356271 226740848 375145399 734430022 277943197 993837125 431891114 794135497 365620322 755633964 539955161 221685214 272409523 470240576 543371985 637106452 92634270 936467030 254561075 261765807 526546549 937770351 123454216 853055759 212820859 836603218 46472108 673409500 427199946 309380053 483728426 388325424 729009424 76645495 946092346 433158396 946681233 746760863 931776077 704130724 588477198 228839646 344782755 389995198 743547932 43535189 436941467 414016688 590744511 661496961 359282115 732145388 543501154 357858869 109328924 686063106 36338486 419080839 718308476 887257937 487840474 742857220 72180098 392771963 496141440 412915372 491244804 948048252 146151610 637619158 173315254 728542680 2881060 500435708 126419896 244453484 858460220 140734635 974630869 199159836 316494320 401260147 216991501 228805085 576918788 637361843 838419612 87225087 343943783 565849177 829161005 122387542 474909178 436385405 643735749 822213379 255567934 107639212 737796963 988857141 433185327 293972585 923720070 869927714 607274845 680345290 327406517 80121438 903587776 972708225 525520740 754310202 980819089 763535866 922101768 207020939 359697802 821212113 428932305 948624451 424610956 617816414 750274350 824025723 302380967 843197246 637020585 470050834 955595998 609838829 427894468 412251589 177216256 230073383 258047035 467257467 376019787 620298637 320128384 312670200 146863051 940394388 437409650 12896017 493176028 921036525 32859205 648699335 465382877 447056414 32949203 911637760 633032942 981785547 665026377 442229679 275650885 776602287 269855232 120239411 266847034 402755520 234479397 671839560 971662102 742911035 102610417 618783010 17183458 695922802 917643598 155014360 396335098 690681099 672749017 578941580 764443856 240640346 908348158 686362513 683624385 965871064 253468141 921032572 95948635 166139701 194673484 942818111 228315684 250679357 557072883 612087037 895272308 895189493 19696693 179086510 901118761 964960028 391508845 360444192 483298556 579786286 204484933 431164939 210179207 309923784 771422679 2730327 230677813 844602724 87395457 48223313 385554316 15340024 898597816 162030217 896682937 719148958 917134745 259684575 59859119 559846412 971642413 658781957 860991067 278777540 906207341 233930927 143799192 626657382 889853671 745914136 727446709 736646031 155828831 724533914 566707097 135187240 352667803 842080216 213846516 543703803 683558046 696815379 249888472 545732020 538767847 863003921 293488958 645604807 956107662 647084770 699556979 197775918 332598387 869662288 277681381 686913402 818119082 264619520 254687289 431205741 82735033 696676246 342904330 880754654 703302556 42939185 961165994 24883595 699844836 541456895 829976237 857269833 923562348 902896551 495897029 98475796 47959431 955551357 306312045 733206323 667476690 689095815 637909086 885523827 757232261 42328924 960196209 913675162 369168575 906528492 17445558 584178705 397104863 833008484 62571477 37171801 609290350 794067650 372883350 419009803 146492921 713934286 746016863 983485978 679213049 150402579 68631862 837499766 730058601 682379513 582379957 842437066 570348361 14157668 663290478 974218826 738390 291470475 870204085 646515895 821179155 773200958 642817045 6576305 246830005 762311284 805884332 862736321 93302986 837671286 746138217 748267987 483782201 153096241 978172918 590574219 331461078 204890774 31090312 651564418 798149961 662839504 359841593 209417207 982236578 953465709 93868174 637127357 388036215 777050620 509072139 172896097 308817408 336408800 475081232 829267490 632559196 828671982 642347922 572187011 378868301 314729767 404679810 415847800 93227480 386979374 875868659 558387225 555295751 646568933 423677548 964017250 189163948 868870607 640399129 728152975 36579558 232940618 820152823 360404956 292077453 545586292 114218281 426355740 871567638 870799298 717871122 113490893 316682335 926458962 997950218 894145929 331736338 936698789 806243846 181804781 435276378 311299246 732103311 485414739 800257126 333811383 899036865 876456814 250179934 486161665 927604741 968059175 859795563 553580039 849599489 164429975 951122988 175702476 934792404 343940055 919679747 367731347 819109907 956787217 356273898 462054536 597403303 940876393 706014463 66515581 23707419 176404770 811321767 676271672 765980661 281179978 583546307 822847494 987408883 676595687 456591925 666158977 744890626 793045385 303190424 624710357 117348425 416006833 509789065 23708627 588103049 497617650 52316715 761400093 296332371 495275550 549398335 993808216 509014414 692730979 902859994 612425340 733560912 767156886 875407826 938727491 859773177 481043472 139601605 23757551 800379016 395583643 870057869 940165666 857601405 864973423 63948354 730210702 13910159 856845500 945261949 467109876 596589076 798389816 739418048 851524111 995743423 656785363 822756160 181669619 621046459 295533095 67749823 715779834 161203590 553353751 758367079 384658871 733140841 289668786 679362411 414887769 92695356 785677979 245743749 546111585 296568487 840117181 954490201 430896972 698771193 496298276 11721375 153963802 473196181 355393800 580204336 313345351 795805518 328313150 606409318 980707515 144349755 184375161 96438370 177506703 948664457 851439204 17178355 728674909 28356936 89662479 303849407 563129145 458953878 253952024 900674716 41999171 400649581 877511679 97480664 938581971 328156207 304452216 134373568 351563576 390604922 593578443 902771584 950630012 305813921 371585070 642743599 230059777 272929331 807652929 746610331 685586872 222318891 228636110 826430387 836356945 467731568 206852485 429323538 823895904 590044002 416824688 988497522 201923943 336436328 236611797 298953497 908784555 785389861 918058296 112970830 385378974 939833983 890370870 786958584 844403127 6079487 711022073 15347857 841978309 26889860 317219950 271475326 419586074 28848769 44460949 105795397 179427647 127425471 157614593 645528639 179010786 398499927 372143006 872573524 728445459 875863894 336694273 703961555 655819190 414364824 459145940 484413222 930855454 452848087 877525825 421921785 740405748 479453819 620412452 688898452 783766827 654305603 346386637 681995141 104165231 920746715 898387984 953235116 857476028 212220171 727022182 464237140 144667358 171561811 700072798 943849702 551599250 461066248 557893026 776587561 962285532 291064660 369071255 991939033 50633830 420769634 502924978 577004066 257220233 374326975 98891079 572598375 574996958 242913563 851377204 801548031 755732293 888172121 994704471 588300548 404071829 958983290 764863142 197618678 436808507 223869968 699383519 916227330 947638922 329504516 229741983 173981696 781567864 864595462 609020745 419441921 756816 339060324 788128772 653918739 428102160 359690070 785967612 606468301 373665349 208125206 809884300 515624322 896469165 414933656 137460076 275893993 215890660 588107249 427945061 852852216 516525195 960858347 892140537 699238185 114641040 459210680 343810311 542900260 384605709 162211500 154197038 638020704 389579694 475546323 382785804 903853237 442211786 35034417 520586569 736611522 921723626 287383347 460911979 132077177 237812494 802890855 975705988 864964846 811107041 245074347 987850583 371010411 312396350 345419509 583874577 443019482 650757077 372689958 189760955 306868013 514991999 603884063 873900369 837365314 565688702 683989479 810122438 941491178 110215610 906049681 780076209 604335619 449079153 519505546 323930447 561403297 283061311 525932631 10024619 574404083 713827606 196334883 951244440 591205091 973197430 865027611 283175772 607104240 697134889 928772431 797591957 728876828 299741935 636697208 793636922 481350752 276631772 52814077 817787020 641891852 1040068 939416637 40864730 789637584 309902389 461506861 103062121 437467033 387762725 521641946 976003670 707088306 712465784 903397314 229905389 594837269 911446292 197471048 221489564 985462479 829954732 160401789 442949828 422049982 147560622 705979330 372041843 454321210 198484446 811849704 115349825 965405815 469058112 500688972 550595865 357350382 682832956 453556420 793941743 68748965 372007509 257673784 753696140 661498968 926932819 47742930 704653228 163442425 589849371 57789068 745007089 504731722 106478286 747691420 482189165 67054094 921155266 680340817 406916977 483950453 75321614 161191530 609742002 400464235 92821295 854231506 93758884 103491536 587077359 869676146 453546829 833009113 363249062 605778720 717468130 254765015 964343553 869399884 773616158 144150963 993044287 529244040 155319258 721033871 544135877 847196009 840172041 890850140 913848409 757691843 351525622 588977509 468552519 274402131 879847272 136445484 995645099 575445347 981764527 902979323 152442390 993461069 812285136 392829004 19995181 430770467 766060537 709848929 64032684 945694889 128795792 672876755 255044847 957388985 839194498 855351677 38790512 444736894 433768979 475960359 865574356 610829654 823282205 581119534 25332398 194708873 43653888 253265417 709895033 4832456 903814546 689053021 466098242 831596018 107698081 92461684 892141615 228181923 380710318 306285303 644623101 686409186 554609998 585666072 333462869 163101284 449932111 505242931 11104581 511295878 999716953 764956947 715066318 414868755 636809840 792690006 192902584 448831412 66124989 494385859 470627904 361616629 495681441 626066676 596713428 177938388 431704100 677125797 212351650 306913046 701020726 16509301 750501563 744851978 6996451 526293042 316185113 660737640 454457188 802119778 254054501 548537780 525194563 939629475 121659297 206256923 999429209 665150643 183629547 259812800 850066518 283310811 301430149 478208753 154456510 79221366 847998995 380381126 206066635 78800631 433269252 22568854 495369387 524770762 549709185 256339196 479136546 75327830 373297142 287330749 719591173 485546938 21345687 979528514 951712964 514717024 652985021 164974275 574699618 966566848 700162624 360034371 937839693 821469041 954330119 501879110 25048095 677359979 420721047 46585528 811118702 421103356 537266456 653966844 464762995 349788795 536446974 358171307 129972271 370152241 353580775 581092206 758473887 596351955 67911004 698519947 152743802 320867726 692437190 501773200 206966821 732186375 294444141 393071789 44878315 962389204 13989004 789530763 207421200 502271183 946025871 601594306 139634517 526192826 933539383 862811677 772703167 190391047 577735054 142462080 959798834 488504848 863438099 850964517 779252137 316138968 464664888 499753609 283570515 658775221 542051758 208601726 778625422 828997100 162505767 531945139 642885579 297589417 315291697 239203128 907366573 466210613 461305706 450568466 432169189 450731464 762760365 661708554 298944877 915796599 310014627 967683319 350234179 292436766 379527083 397225558 800612376 277008409 234874838 550487728 667393122 348087631 380906503 440268432 169098362 247743892 17428881 481415008 244627777 762748019 216890256 593788874 931796277 414874074 747774621 568865080 106490603 623587203 278109846 7807246 953835803 129286928 624476385 613685551 929297839 674755308 285937109 116434674 613190256 524334272 279512875 50158815 951986691 484137180 405357580 284335000 168012641 392144105 897869075 136635703 261351785 797689383 347391145 32598738 460889059 663982677 644794840 58885123 895916133 593077820 254302730 901058735 83583203 941453956 981173912 110561855 272582129 412284509 978572613 790811982 727691271 715294504 977405290 823159637 624379422 101488809 413790734 737454781 806756669 480216404 24111641 900488128 481744992 512325464 499648788 453020021 532722137 550252689 100287062 570705170 703159985 935228742 647678549 271242626 310647862 304535254 860951996 935780627 562620819 700838183 741297612 882984451 741992529 530557660 991736123 472677783 885609267 623874260 428778155 20482728 392595818 759768824 844671166 745202296 718853336 87736590 190507439 812917070 501982852 901560459 983579765 884766361 577698425 541360695 717701018 774140139 329911363 812898743 755866201 709903896 198582621 516274522 990541480 652537873 615688281 177695444 667094796 291025540 471110507 250345455 391529197 874633277 847624042 696622624 521922434 382561087 335012040 207286382 698729432 66472332 111363347 367952676 457191603 154489115 683056373 689109728 923962503 620856068 616763939 8976130 490391818 523118996 815523202 811136691 39192751 970307023 804734537 431616753 814035092 469245714 89703735 132491786 402410373 831525657 527749024 492758634 903687978 522996520 61102029 376683826 215944589 281511648 373830060 522921592 319342161 624525032 271315654 884380733 865728779 423457121 857751558 511170249 67342080 90411822 598062839 359973609 837438918 924510995 412758513 932143756 493621566 634724653 672578555 912722504 410095029 728641230 125905600 377110022 369350158 554718144 289030397 205794022 243428409 350431690 787544945 671075103 884337287 710251036 780970775 956985003 481640870 401699694 588530419 194408684 450643585 84311075 608269074 380822308 351115330 632445178 231336036 864894379 591074086 197612567 747498441 480030215 184755812 836590902 456690561 472143287 534548430 890820109 492789330 173751107 44335665 977297657 942505744 390459348 95273613 65938840 316554681 567620535 536673751 586189394 785045742 226709473 534417213 240131690 415103129 785682842 684746484 778752000 580162279 308467644 293793934 210210883 843407857 249786880 423334043 798463306 66075459 320807421 443212141 185500132 728477877 982099968 288697244 31304043 438260073 345224244 793338726 408356039 266556435 211480677 226359892 297259112 198493752 773818153 693822817 117956912 942447922 509961089 828199319 30187609 424537371 34385182 978232729 701177096 596427009 371682617 645146715 907664537 611662228 335929051 652759508 482369365 166666607 381935073 760228337 914460523 235749173 847042726 473616869 939820887 757203392 629588929 623185792 788205272 998970452 261808652 673697979 321963540 763701137 50844927 686406911 444569881 691814045 418538818 738129764 993606210 957631368 134995342 72208211 4461664 764828758 959763542 541808499 375987941 506062127 904414794 156994766 441172460 571215134 363626596 334143440 205176797 492716725 360050309 308901239 511813344 775903423 266295173 820753981 708310067 401698575 837881557 281031092 303013245 392935048 333296625 852302757 18215530 731635056 64024540 9767636 913195116 29280836 704187601 136487258 662995283 580537057 688214025 160335827 960237451 472233630 559900596 949303499 177641987 210177396 677372371 16746980 155997857 713262319 707285211 660777758 173715699 286772502 679979577 130674602 658639641 90527607 365132357 757936120 755530058 357715460 947973044 299457277 333329713 652267102 177040081 356363647 276521053 720944094 265457052 43887016 499903999 728251687 777997427 44054012 406945568 593130394 361093409 19917524 637195449 87909350 623723035 47225070 898591367 538821802 143261960 635321257 812952516 327291003 153804847 83182783 441732320 284113634 916105615 372917913 170559614 503522929 168062360 698619486 522368698 308367938 150070867 14098578 970543551 369705953 597533462 249546203 480319978 703352310 439263699 800060782 393834118 547658239 708934555 246670762 678310371 303987800 420080135 497990593 460548018 743626586 143164851 318550031 793929684 655149869 327063683 828781664 814321740 109034439 217485491 172925589 757965359 159402484 685654373 949325205 179879924 722850117 196400726 863374999 194580770 392550473 666917361 875590559 673201393 586997288 517410811 443974193 869359403 882755067 136230061 878035204 545481049 914647334 994050651 68986707 649661428 174220239 718685753 80484999 195635698 144078197 45713006 233348539 853531060 719925179 592968304 472520908 741337899 400008 469027551 387434983 594071034 988814255 289913696 505885686 186612421 313668260 453347885 282400095 151670070 224468161 872719682 56872739 228430387 269308868 960624481 770926708 391179962 301112663 52903249 219863741 740712116 112205687 378537278 445937055 643887216 729306550 707530332 592843173 402560514 207180895 691896065 250036038 325865082 644500898 317411875 626891723 310852804 325203381 311389742 325533317 24564474 108174526 695594157 109245240 656116547 779885104 849955755 475800112 204902668 341194177 790166882 273187941 91464796 265851617 705632139 728944873 299894519 514225004 235866421 362422750 520738621 278585658 792615408 71184166 413808342 675163706 606211854 164970414 965690085 131192163 751557179 417467375 170847208 402356854 729630253 968390886 596201578 442979931 538145759 453210810 505779236 661545323 30517837 184273433 8906179 294595172 682623863 220455213 826199521 864841088 432010942 635248296 911190518 560742399 391690634 97005484 615888743 398886438 64218663 115583210 720346932 662201554 750795230 313941580 264465170 60948221 170709871 679930394 886004303 158106029 686330119 37698687 525546888 738894491 430843260 45695834 788754999 480879656 200050988 914130274 633059822 515977793 408781642 444236368 597510986 764469112 978991522 979600856 565692088 911610289 1737734 94224079 100221166 595339421 318307570 839082599 299447835 639079036 183044502 425290591 34937385 272270287 476366683 28899230 268095169 151530737 5552439 118481926 578104582 206941351 487340574 175216068 469980428 235896475 494934304 687402193 752236852 875224963 515956158 727819988 625380698 474458350 376355442 538672874 452558627 358299509 663104938 890836050 947827320 272364460 406859533 808238972 895154386 307170368 640989417 680684246 617004292 56129764 65452808 377850954 490412390 692304888 566316144 151114147 927585610 172490689 386028515 129229594 206232243 785788447 878990342 101553980 129585349 148136731 279026008 351220103 940815996 837718264 108219457 877053987 542158249 61313123 58639535 923686336 671210754 807974493 585150140 37111763 450233370 94953534 409120190 519051162 941974111 825803805 972737209 126914974 16635659 688212420 479705658 505486068 889370453 209257623 980040598 616104474 854569550 732539094 50178537 162100429 60792311 611297304 686799787 147029462 486750665 633947875 970926835 181546126 871558584 106797496 994487066 911764987 60185836 245874328 443431668 500619467 766162580 510924872 98565172 439886125 607196929 144659194 485700825 864186218 594890001 405572921 618037315 547140092 326511276 166592086 230503388 685567380 430961058 848269804 210811691 919406701 520899216 480896988 886861774 451727236 455126472 586879076 982897887 549298723 692449559 1539603 150207653 266690199 161249737 242392424 391423548 429026800 147279998 633137032 836183191 380840745 435941219 30864415 252166264 89376358 911452353 533023240 43705396 341320584 221335039 785467006 822624353 219780730 402351606 847360908 794263588 826023352 905625566 578039839 728558656 626472412 568597030 186987446 601054865 398043533 455386983 737065823 915862609 731512580 962948807 247147703 806096383 523278352 597248310 399651298 903884025 416965460 78353130 231840710 544743089 468036023 605396206 310672723 35768013 739757393 386904406 788099306 30771950 55156599 434387060 847090304 249879984 254307225 983971663 594980804 612687370 8758545 849486240 327760005 406872706 998778191 995237621 993883503 696037821 338817522 631061269 717268064 724878061 978423115 682531863 179782480 983119789 105178895 837469005 435741339 191733026 45067456 110586007 62023744 956990954 860436696 200119427 976207556 965649128 456702283 36353367 960653557 319657343 989556312 367759615 937450222 531039684 86558879 68142993 245989438 692730896 690763681 804550111 728071547 246035981 380178101 322117962 820715484 540484130 422952833 644154537 128526419 103888169 136231033 135320925 871282146 917157052 313703789 181550842 827683661 821028288 667572357 750725557 960400746 533762868 904525809 381037872 451937092 941747272 792944900 165041604 475807034 859128721 211552519 403091129 196169730 387385628 649028263 231815422 812117907 664973875 806996252 181264894 659785596 400916331 681836473 427552561 289553013 651743038 255713241 685812002 964669352 215080786 221926137 703942285 841104701 828723371 284894097 358738915 126486404 954024234 179010666 679851475 870129479 395087987 743968450 803212892 236600462 963943189 801877565 224624013 541199250 322499991 520557907 332034047 616208204 610941958 897258997 402387498 412260572 190294512 532085825 792435070 781806465 699837081 695921678 408024684 467352496 913862057 760027550 434239225 28849564 850260389 420809742 71790223 766909501 961712612 466420345 332594416 786346716 667292982 90075560 610758127 791613019 800448316 647184608 721746268 913838301 521545351 318664660 292658673 821065641 133200915 730481398 174007320 921490176 726114863 889418709 684750176 770233890 906884409 352844128 930641024 510117520 691424788 718943580 908853353 123858149 168448615 741491624 468645681 7656482 924832292 709430751 82277616 941424559 624668487 945737136 452033684 189633582 49372273 625358250 87455873 854033712 656663790 66513431 700775701 635973582 132630759 879022055 220214690 239409809 46751646 852154722 914201337 466876512 146224530 1454612 14557805 524964895 904838453 56848489 188820636 186855667 504507302 784821149 283871001 846704621 608576757 421876555 623335118 152301244 958535802 163320748 885949990 939826105 671688781 93339988 433307502 97461605 435622432 995661296 168897389 116214486 673332211 715731409 560676571 162481477 466410827 322259461 763122916 381394580 208434240 663276376 865033559 389468816 675927820 731678883 920452642 760207237 74978610 707294648 458724973 314804893 671903855 515997765 984939536 715268026 336786647 939670568 223020369 696457882 212869215 991393965 180492802 204199752 741072695 361160647 861829821 170789108 585895777 927436195 892885378 380642019 727298622 586230641 3726744 767069984 154189355 111278716 920251311 939473462 125854363 19561348 738847580 735430690 496440933 667171298 440054930 250300941 550816605 348654639 300450275 422352255 934869807 811953522 873909700 940335562 17283516 339416254 71958938 528682929 705218069 924535698 26005368 647791291 824074172 82345796 259747734 689008614 379840059 334205524 845478575 469274520 811125494 511986797 888141919 908708398 825680025 231429601 534378987 83776900 692747721 807481750 14833786 525332647 427995482 607448895 905914711 780567185 925837730 735811596 605811870 797902850 601993630 798786067 964100695 943907883 885882560 769835064 151966211 31534084 39583249 752784904 396072787 454771893 837652844 62603127 201543440 277663584 920178177 569198204 685464439 568958290 315058253 306311124 62642515 464025129 943782780 711205879 126157006 328066863 322405153 661560058 538185514 33391912 210433965 85655029 900404503 802414027 925385420 795109222 703823064 999626407 193637395 935509153 634503459 793723094 653039147 581909078 494224018 37854962 511862750 607303169 733113271 73258662 965571503 869305847 746574031 54339311 722842243 93587362 494738348 126434852 979177338 585362691 173267052 983851319 898345285 616511203 998635968 111947680 657605990 528327157 652264890 593061725 73291858 372581977 50971147 185626547 112755931 546355911 347294474 167920483 248122531 15821605 69905934 690796449 828921222 966971916 346243714 510188539 530421030 614937539 835435729 194379344 186655908 596117355 563640895 311870628 577870716 912520143 702819369 494360794 861762328 466748680 566722914 439574422 630337196 908083769 880368204 136717548 187630445 211797875 153897200 745855750 969134512 129384677 577162061 81525993 625066028 471993478 335075571 288806976 698688092 113559831 545096404 574321160 277671617 338101326 873208480 408228161 233686314 60746748 382135627 633797272 327929025 262822871 647407015 178959994 962561572 782238466 204082310 306083423 230518560 369595222 740302762 170570705 957403896 442843870 642292067 376203578 662764648 779999139 869729754 700550333 265956979 822443507 511029089 588804548 256595558 200448963 500199164 279147413 678725969 292049046 781690727 232924109 283515143 259757498 72644361 173189880 33284156 782292958 579192732 178708369 353193915 560732169 465939801 150687339 411443202 261929431 243251676 532811296 342565661 64406606 520286088 719735877 377055687 35998264 39066971 389673604 758089610 332890264 236624402 199425218 495779586 381756331 292760877 180681066 460883629 455809566 499939212 981037198 843883696 254092298 610864449 827108561 932632496 427089611 119207221 858371225 33391608 462589464 176316607 362969734 308006453 225084569 125824770 943815083 488735753 177382605 348611472 586277306 817491611 346712400 357193821 191619059 314570235 60770902 284854104 145705229 140913596 406199214 504300944 665822995 268853773 799364304 875497733 593060233 651276348 650510182 179912055 457866229 507355163 119841122 947762987 538959236 350193349 425444136 868453517 274397078 283517035 888697229 35960188 297559340 963255180 819641149 108149491 684265209 554643961 814880192 508398947 664758887 739426217 964708259 298673723 483127047 572991555 518806185 59876742 612857250 286661528 717480065 982654906 231079673 764016338 252504862 513320771 326645680 998169737 493440188 118548612 924243957 559409909 210287192 950099845 476305398 815504898 621376932 369280752 783933575 74319391 62113345 816301923 643184591 268023370 573689269 818312594 509797977 663878420 203434246 261427431 556508269 978969233 329449585 176725203 290296797 796633751 388320825 475028841 837443791 328424035 498051523 873132849 281046005 54803862 535510311 450959322 396958498 482709844 492331869 797763255 338259669 551317350 35440909 425437826 941881580 221846608 315804810 293495762 96350253 351530575 117476481 809613518 51284986 95159548 986550489 822676869 987594296 950329611 841038249 902259251 382774646 304981986 770611102 365305900 985331860 314368271 883082469 822284493 785831511 47678342 948182903 122970388 857302582 812360853 490365306 354808925 66812101 314308138 339568947 868377113 770302416 828210669 761824903 172845215 868086054 685472186 69658087 382256123 813297030 429145274 495780131 666690938 750714952 568717827 131376341 817682080 775989478 299736079 376118591 145255867 237934354 214467074 841703903 17161979 776322131 704876226 222503741 315431323 973439417 675518991 265976575 324708194 991436491 824049639 447180887 55914672 973118589 63885328 659052891 219294316 626274812 475252515 472346672 537760473 60859197 690778176 985783724 321077587 965717423 880456462 77181724 949358173 823564758 211722404 86747469 98594790 423526096 57009421 96829745 699864602 714588162 947610047 154654576 265134986 604807057 148913581 431895779 217255745 123967513 384459198 906054011 828699778 15379834 236219586 896216130 975134478 458060813 728622987 481230375 395508996 728268752 516521934 459843542 425076395 952048177 603319433 78902390 361249632 983345470 358957192 371209088 147929787 489445983 790757826 604729243 121187385 477248227 504968819 383921081 323701078 38678880 739357427 512881292 137997344 573002128 725456646 604789153 419897441 229755569 423064495 721203403 974362988 537540977 278394897 930369291 176977388 764414246 817799185 190172535 581353964 678591054 126457776 632548806 540308103 956493257 240605757 289657650 205131698 600724341 240252371 437576972 624689890 289070236 256007331 802057253 637397956 536555832 378948084 41986828 152797158 382766721 512962309 289136643 192579944 829808464 140159650 488177720 278395576 884309741 239109135 565907990 72989152 763035389 226014440 600911546 843068338 916018535 274076179 170379117 314804563 986932884 423546127 589455365 893795757 18957528 240009693 463251081 528333314 453275048 869344995 16664460 768187055 109993581 223095297 776078766 739685340 606922382 753442772 102656060 652066446 259811505 597523066 499888529 636290027 116234683 32009285 139500820 527640233 989789650 872433346 865317990 796761836 369777110 377912161 668068052 926320186 955545503 911749860 430453531 731191254 280783722 933142695 805687759 90392418 855680738 922524247 154202248 327347431 81549829 537221946 799899246 122902434 814827291 925127649 311998422 728954707 897399807 365623173 555349341 283643830 672624581 354090284 577759484 895892396 483882130 33266050 544114871 224015017 914747661 670921080 740300175 420100753 997950826 195322058 782522260 686303844 236322560 998280870 781510241 656551458 890557322 625938911 162671889 511323729 262462671 983293548 23433536 949830142 706475448 123388606 566475603 593163354 265944556 29402389 355840216 573719432 335197383 114757502 95605987 93088516 674291239 504063926 956676238 227501503 880751359 899494821 270483391 516144100 630595934 541726805 637472149 968556857 974650451 151077536 362872622 770920596 829243775 818837360 970539347 288141545 956761283 245918568 727940595 262134571 15083205 540539945 579820606 842213623 185424238 768524251 917670695 711856399 318265271 842710212 687389114 606083274 50704049 401879571 304163019 529203052 769708995 469396218 62523526 294181039 445555104 108106679 77649067 818762928 715663697 991758518 820831549 344331913 322777632 458933343 178532380 729552863 648283892 118793761 309274334 685588572 748258818 623829538 698532897 524086660 219126410 402585634 727654945 71937172 172906937 93076815 788540558 911875271 853039506 378159770 808095171 788162097 978375006 931546202 379898532 368132208 587317759 809673014 953134331 284591596 134886943 412897010 242958966 723750692 311939213 571123019 317327502 733008339 141167392 808152293 649842882 90580077 782757728 988741323 226890207 96504046 950208600 391001703 461802406 1878989 199617457 137687768 880652458 513127283 547451141 456113460 404183732 317037905 858810334 70759228 873217011 46625401 637366438 39953792 479233371 645118658 400281097 685249684 599944852 211818565 479738294 656901783 939897393 854789547 81803031 525716418 882197700 853528656 154932762 759691931 555464309 770786089 707814799 152187865 269921563 951358608 371907340 719511223 672529530 257255467 215850295 704912006 608345679 720131208 595498807 34119945 979135917 610481509 588947870 691768061 41444266 359395719 512586096 410152850 692250934 50632080 239771412 135077828 771897812 833715051 726985188 417219538 153376178 932586569 631340058 98896470 745616802 202160881 268626614 591716551 568085703 279907416 208866833 20178192 888474012 234265480 785238739 8699807 328383400 591804715 263294838 646013391 430203829 287918019 544458777 876086903 412446730 628321144 745649 117073582 475248162 155283190 597411352 403435425 668474442 594108544 817448044 772306745 435549650 306553601 89024143 840930287 424236906 316148380 843436761 546027013 964389576 478673158 935053624 472966248 570148182 800891070 512370476 147628142 768378018 390267052 30116600 471657309 947461293 404598185 240546453 942348312 460401045 286345815 600411476 181979295 242430910 178035852 79918777 651602918 295530543 838005084 261284130 565113745 12126414 722229716 748555378 771119554 427243602 798723108 453452166 149676585 330499049 491740721 927085174 462577067 280738970 534328861 265559556 873558854 616886597 958325048 941287600 576200920 598715315 654199918 668364970 192554748 668607583 434615720 28534120 147005429 329416739 664763673 435051004 156610278 115438554 279942111 288895723 895570162 503928557 149288815 153361420 50088896 203719515 313720087 236313368 916472564 674455780 64640804 522372195 251385764 424358766 498757226 579126093 366029043 539988840 957353246 899933370 304361312 464254374 254846974 419804107 381104481 584680569 301838455 422732602 874448650 681408945 540272814 567240026 418745764 946021793 987527614 162078757 623910740 748442819 283388468 86522940 456564704 702708589 361096184 106669936 185249517 607373475 129588908 89721897 506574086 675560391 349780039 581542691 419767717 580161403 78302294 394335077 820903949 961426332 588426818 937867467 2205766 512297477 711966104 90437987 804145670 653498635 330471298 624572473 534460163 809972040 981139125 497206567 392531379 932167640 205156124 959477821 554363877 798854820 328344245 222424857 843578271 394105510 186544186 116831070 269987885 961575878 746425606 475768904 215758624 400786596 411110653 434713977 104969555 810355540 840302764 561356894 378207594 241701866 736573148 572635662 144430405 956145111 870752600 626751602 1006198 101749130 766923776 62293782 327374225 880512243 808610318 118194731 529057452 568821579 913578650 244044431 513108842 986700013 16642227 414889174 584488194 74974530 892512673 180069848 744462427 307206671 458966357 584471766 641354607 541157177 130855451 612243525 754007924 858243742 25454638 230607396 635166295 199524617 308247013 857444916 400053048 862246140 963894171 443867455 966023830 455153263 997855174 131714190 997784688 650053436 786916906 409276337 503668253 54886051 952027347 326311231 586602719 544815114 786376123 132096324 460331575 847769126 916036689 742420833 56325792 890639837 629926661 6802271 716370446 718163427 642176099 453550470 599700249 272809312 560431122 398132336 306908692 208327502 353690750 496624937 284014653 996694468 122688030 543841414 743531899 801358679 214901284 155031919 756452478 89496686 680306769 260550529 747119766 295028789 703825450 676937859 134015677 901407103 769655770 666580672 653531181 92896576 3718113 173138452 940580222 153124836 803414846 11493242 789123651 772939840 770061630 258685302 506288522 195514839 673665849 955577143 79887806 36997211 365276548 548470122 245162114 258817435 577153534 702267412 326118952 110778044 897027026 973887036 415329454 621007342 43978168 752002686 849774657 42091811 890588682 336690390 924532532 732446836 872327992 271016562 928996340 55562584 200266194 650974035 427626763 421272224 291149235 572683358 254810486 887370456 443971766 179609458 311280690 838485292 748105525 723595584 542734132 914180562 807929220 13367001 673226184 52016300 177336379 326739490 349370091 454630500 302867807 467636946 925215633 99792931 570601016 110523053 975167082 848155354 557973879 851201609 435701671 154507915 822113492 578539993 682392470 834418857 406433627 71693845 147027821 769994610 423329446 895422135 679741671 824529865 989660346 297344947 570578460 688776892 51406280 318440941 649644769 24104156 204765305 276702037 172904361 186810486 543331711 697215196 324381653 816587157 690172968 466162249 521680867 201357165 295711883 322061810 182453447 578251255 49586781 994266196 44547154 290455558 93178640 13895227 125100849 830167328 619000867 318949423 468220297 496387514 122018008 967416299 142832581 424177756 282092970 946864481 725448436 93603051 485627605 787340743 229329202 248667301 979438544 851175979 205512265 105694120 87164613 282435931 716743843 936451100 584196928 302242485 628274578 840034882 955441694 63896644 876829295 935874896 730018016 549151686 28229341 499305043 424100801 102614535 953616952 852469665 829521190 931897576 738070554 641386297 827665573 959009126 375479926 216332869 844717351 49502969 72023732 748648381 954733565 905399185 192315102 877509978 837353328 753227758 764954921 996871417 281655937 79581239 404397990 360613971 725597999 841726512 632311679 176216616 235712203 477406221 952204715 627393155 913398245 320123425 452703608 547562894 35705875 143320577 596809568 32146507 77608668 431326176 22631417 135188144 328254048 499227820 115534601 776150204 509824245 367404399 503349994 45706063 808291683 184220152 933313448 433984771 70456275 851094585 461184481 105105516 528148349 603685851 701506595 565951322 391128830 94232345 273147713 330090024 417654242 597824464 488062446 501771850 550273728 390681816 143028330 283856025 686067960 664035101 506464522 392457909 316107528 756175105 660426360 642618930 163561110 664124747 742274781 820752620 261271962 296226460 856119585 118203063 873235771 79066033 745777710 786301832 441093886 553697029 386257538 722320169 836329870 4877270 511107780 495680760 968814450 323273173 699760167 601486303 294791512 455286830 417684925 22584324 211130180 794886921 510708619 119513335 4884081 543442709 75724049 636835289 15724570 614322281 584091556 967663438 466644826 427110330 922505663 302578882 493837697 671664185 708011476 733743882 19469110 822322930 978378686 387702627 981670297 748740021 993417530 757747741 185119349 790411495 156466430 183618107 144139324 61720734 331332822 375078633 742197891 466136649 237062364 634594962 766389565 949172304 330563390 687425817 598217557 291801511 138551576 97472688 256941118 247767342 754368292 447181082 453713589 338269077 615642483 279936097 237372594 991933607 631522142 255800106 898175476 362480463 658053572 364089208 465165025 710752681 101773326 102380551 735756665 247246092 928941100 363074380 206420433 645957415 748912290 586005371 260247916 541094473 94295156 506267844 101482456 919618696 109526976 420189151 33552335 157591728 440520421 171976388 153137930 746542695 156324330 498882798 929339117 86900156 409529336 943952907 620035114 10026096 496479881 902099442 611777929 84508108 895113455 468799976 967752581 20632792 995851713 76171500 953055810 488626266 650772837 803332022 655158013 103278675 783609235 278452857 870161695 142907413 949705913 779310831 19079519 113878856 958208526 988591269 712178125 996771949 611321523 604971692 787845104 209978064 797637472 852197085 18666928 179625872 22210555 140089481 530604424 834614909 584773621 355388081 278256294 922486847 503674391 364912718 602719102 737052186 321834766 738727432 191838352 787253375 763421919 144422773 275768909 85353258 429327087 659998971 622705454 486561962 940420280 298518582 279733632 44936796 933109063 517097380 411687453 625669210 579897971 243257570 429980437 498609725 356086517 899522403 176890106 412838054 880555575 523853559 899930274 404261446 251155276 605990079 340962279 651706441 332224404 524772101 748799849 364074908 676946742 41515739 476406816 102082492 927647045 9512419 207844740 730421443 853988644 289260617 376735757 277543324 980488117 614468244 584286746 920898273 678568405 222029318 902172374 650435421 756737743 929993045 227322045 901354351 71296254 684485255 384173173 535482704 476902178 50571811 900588056 570855582 266295151 478543349 465583154 495224971 571828898 84465946 757421995 419012828 575070095 351582561 207675915 136538071 697751585 477272634 503865999 181819687 762750883 61793496 59790925 368285074 152224534 738359328 128556949 954177239 5678571 315434434 772839530 710055174 819362823 413307731 559383579 197249614 742359565 11195018 612912330 508809422 87547228 907022821 79608276 808534208 653486469 724643036 287442041 760763321 69999197 63041323 204551305 210936635 955990652 267884379 786272933 290336067 815182873 454321313 734575590 143759265 195738459 332763988 5914800 165877264 111671932 674516589 227254406 421642074 728585545 240973670 274293201 108703064 395629808 645061851 733986829 845707889 295361308 507640362 495928716 211682771 501740577 297293811 760191835 586786061 320673673 357481551 618946042 582758319 105556783 153502031 638490191 450804003 658729653 404055150 600241667 48351337 745566729 817944100 890518886 473331579 207862213 545147856 499436151 286747254 619017511 73074356 293875944 30952177 569413178 382906953 520268158 521922860 316990308 826169971 218623873 133929215 383846344 833179934 745029890 989106744 421657958 531002408 334871321 797105427 90270806 600068537 844420451 913112129 636137157 405539749 668578140 893893389 886259742 841304192 141528137 950392787 784090781 834327046 871892084 620398547 269897569 298721642 14952289 31074495 787209915 479768473 521145626 916753017 702293871 80091553 180470685 194415297 150545157 647572871 407088149 33293593 270083535 534166479 448554235 199855123 460667293 482737285 667851704 70569305 449395908 800614608 865202404 931511922 512958579 751457988 941384660 725501311 932305677 557763849 267542489 204862891 121353622 696728769 60216938 43315322 481686438 168281611 629433359 235378053 554909951 599080237 301368542 152646807 274496490 744406887 517996479 776975216 845107854 651505383 581835192 903875425 99169161 432987567 409249830 686189009 913164108 775541846 536444839 196203367 467327047 600148201 355869831 580261236 693922114 900963482 367631038 31001852 485332041 713683166 511784813 135141006 650566353 706398233 284888200 840457595 518293676 2459011 646462594 872880939 598987459 790398448 592820055 545564421 329684599 570229234 708798421 576791836 518680378 705770395 214504214 11068162 727957997 224985604 426843599 267739210 755409805 681265867 933919242 69774238 163857777 955510035 324725385 332278553 111061704 640020285 486611761 152295203 497975429 259902267 252602138 488903884 195826632 983429443 541802228 190381368 923689752 230015547 98888793 147699226 884509800 876947630 646900227 741383401 899162655 995837069 501010720 770528308 662521764 800984044 569126670 924218097 856051156 273450943 511691295 85851345 841844401 190283003 689824768 607754389 604580049 231400807 39886140 63873168 465412427 548267312 259534884 285242671 99810466 424757615 996772214 720031426 42160099 551438727 224984636 919802625 992334909 402051510 238921920 198652158 830527060 867155210 435451351 725551695 804430565 348004917 534823127 591843135 334399299 763983052 219920681 730134734 425511308 265284712 174619959 513345906 925639728 804388063 296489457 179864354 726542835 2065281 566036884 737015820 649431503 490727287 180499337 520304115 518549848 578455325 294836999 565126218 169768954 490486798 299309657 197109673 484884956 783777064 787672708 56798528 970927943 698367706 165030660 234568590 597300388 59005512 664149356 576264184 434308069 471861099 610840342 581164284 312102345 220196067 474446851 431004214 484356311 798281218 652158917 942052048 152013737 941760123 352284523 676713716 260412081 450142701 450214009 401608772 119631708 578023426 327102918 186026931 487012290 439526970 677420377 315547435 109801636 924785345 86407823 505677402 108560433 893089018 638324779 598936923 917171634 367990040 535080590 505740580 335301822 329754942 134428673 28401851 427199858 582515084 827187251 342771161 903347107 204614784 289290289 586170878 334507587 70066068 997498431 136799709 93236711 890893114 886361812 576897482 630480002 352933909 912325371 746282056 266608318 889313716 25016066 721992701 282264231 994267949 534398305 955579090 593973189 401042770 12174295 136535525 868462397 413315444 165599969 225651617 933537920 536639846 775869506 833665458 476574643 305948791 745931040 881814163 434654101 956087923 501060605 107970825 662249193 477292275 858963364 700636056 649505165 117038045 493105572 342473445 74263379 370945895 873849660 896411453 600819498 644992822 168013630 780794209 749184504 817876159 500657312 763774686 265779557 4249098 143456753 567085582 966456550 129573119 934290158 884766963 608338609 562799357 973480615 330179575 802794971 184980266 788165906 494540082 183439306 164925909 530066242 829596874 423044149 866588299 308910133 363083794 796279431 327447662 814520541 520050270 455190610 389028467 718822120 702844536 468106320 309217577 531894048 206796367 558000966 314899298 905934439 19226069 613469587 587649726 733289333 208357033 382728105 754802432 259740202 471601074 684678473 179672886 298606299 809007440 503514470 888990994 67479321 961197677 254071115 408399958 904407090 186338653 280685601 597785634 371390320 543614251 980964967 698106094 408942205 9023050 527299645 828437753 320363178 704945885 625024215 745401271 734748120 748601159 639993555 329948342 662232742 412833241 88461726 697140292 29544931 118953917 262508118 283416384 613461748 431799251 820536005 828699415 826703092 452087153 428498922 683789290 582263214 532132289 715011977 628611626 332943873 435952496 136797065 777796731 937691 380217017 885692145 85446156 932085308 425401215 863298933 150703317 376308363 219696549 38565509 306613297 154592960 291411918 544616271 896849158 700223167 906506806 310880669 721444299 575037670 303438450 589218351 545951974 249356691 972948088 357181637 972103283 265315853 766952520 807403422 115817313 801340539 590527882 343958649 715320098 96648726 674733043 512432840 679593700 140071014 679654321 552737800 896527447 269927416 144139096 208258632 563345467 950273568 87291643 491354665 989775247 716425508 984448294 143567174 431265341 900993633 999882211 649051476 661519972 563676001 408941385 336925255 830083591 145898642 12914278 49268403 283471699 584023283 147659302 652287850 946628061 368757985 744158942 14574113 878658352 495419381 472702130 177169586 231418461 526607927 558523644 603437533 257019579 568253015 273977715 658204473 988823884 890802072 502990520 817013392 99117226 389033455 858749514 489282022 57855692 108119156 956019260 216200153 256427471 539883006 113107437 840260037 671689581 985269756 825066633 958477113 662655825 904108227 27508587 800547322 23138842 171657875 805236278 148877410 456837061 651922343 636770746 43427295 379014688 97822786 647490533 945921074 478534891 883164708 949300277 273337270 483006492 892270992 464029740 47598491 271811489 991578671 437932740 302894982 433964247 503819312 712060883 623507269 582282099 849969918 442859407 144251312 187891719 380109532 399816986 785828305 930283959 215099367 507873015 136256573 712083913 14620761 181153348 882854847 690091993 89644349 736032589 898532295 424156811 465503004 585148136 385016615 913534830 783115061 912323200 294476401 617469231 824186977 884222603 265352786 78044674 82857762 962327056 553811321 40775904 730339558 31724997 698506347 342963940 665603003 983405636 602766162 849433181 934850607 335350186 598860071 441847363 11581165 450467823 936395895 445938670 736098402 596611648 261807372 997518516 48539897 943851503 957332950 510835188 179544990 834139497 14035191 868967647 543970714 385223789 751921100 950479293 615141586 323605496 838923223 792345896 962453888 72519041 13509932 96419396 746832237 707558297 948381632 269468109 235319654 397486187 864844642 659685089 611304037 929396030 534185484 348053805 163165250 865427239 275731035 793067688 919146745 432346134 597773591 541014899 999609311 196708626 764810517 954511474 475437955 643128852 648642486 431705851 894020406 632713085 955805258 779938885 522917295 177408276 792099412 973829908 801734282 194448568 396644782 782282409 784886578 160960075 251602191 787079279 483667544 245302411 362097197 483979619 625121282 256168961 367154144 718887658 914554054 798843582 184452370 282499432 252910376 738367024 852427379 916958519 670623916 609808460 354025616 678459541 884447778 384646662 119472231 427381192 160705573 499850693 826136330 582342258 767291797 372556831 66283073 628150740 397249406 804106086 967599198 525544764 503256 707207915 812897565 871669726 350992773 396667846 57269543 268604716 703756789 987793217 611362788 341439939 661351723 276315060 201870889 718642476 573007543 984946569 155153664 289447570 771098055 1478910 900290721 871109132 24603041 995587123 618556238 74203441 451849606 500499429 894047720 546231262 944433719 785476393 324464816 628907324 544684922 388459800 813469927 1663272 843379321 227902843 304512295 468887425 327868858 621247702 386274089 537280917 148695269 843171304 193413831 783364131 631917264 165389235 743067195 943821087 296872709 66953346 560703951 319007028 525489689 503469833 724111439 683502353 62891915 986565573 130473748 815668470 693965030 580278030 824214043 917139233 307933712 75016204 514566597 206569250 94521997 439389787 34636017 122959318 294773152 660873463 934680394 420629670 717540525 276988518 648679535 661537380 88617389 963639393 605574632 751249521 655789453 524025288 854255058 834407053 600616352 735841509 492274541 313844696 615094472 657885199 649874700 181672228 519199453 912148460 211895923 955481158 45121258 674648645 425105190 235956649 831828033 655712471 479609892 540099043 219365357 965278318 459797793 448873718 822100663 155760991 947875641 314668014 844925561 693570549 730161709 627079778 757584676 654234526 797836111 940793725 526372443 35083827 729276482 963122392 982941767 999474643 179737145 435534567 853712274 163237301 344455282 525748450 872567183 202449645 150017372 202937287 964428303 936898327 371525264 4446215 234430489 918719184 163041296 212060898 628374316 402982167 761149534 293819247 479830860 481943659 394336401 611220137 237838320 512930332 348651803 332804884 619068443 351683756 922159752 506709364 668835872 599293683 857410623 353560611 698345558 38286145 712205998 735445501 144753425 722370401 530936975 889188766 694027005 743851217 885340073 544655045 814781209 187642815 706386463 919748226 785893990 621026768 48290345 721579117 144170861 678518327 11887 405999409 57519163 270589632 960239566 741568538 304685445 621774731 981400989 999519098 999484489 672320907 444426329 513678295 143689136 698999032 548760974 142425065 52724913 964548538 723378735 539763810 274370532 756321969 51310213 918174118 667142185 191983072 974892818 483939472 475434145 950552530 665525372 327773626 364634951 886943099 385945837 86945896 412512284 82733981 578827353 807957985 493118140 29260283 200712962 67586402 123515480 48264214 388604655 609885156 872143741 876803867 453579640 118794315 210187990 849023783 41072689 9270540 731030177 961957702 284254443 915271656 733404109 410590804 597489512 878321881 226674438 219795023 924408558 80717225 488520972 791385948 663246428 59708834 764933704 172631999 474700201 562394246 108671819 676661221 580530396 234003067 598916864 652277009 622682511 323427320 807462439 217826841 299384189 195227860 273331738 579837850 735346155 172423729 144114709 275610966 53964102 796968922 536009976 556130702 49805587 423174216 228744091 559442697 166081035 954698651 579227143 534840256 29464717 701386530 303351578 541360516 889540586 665175073 957403776 223273814 121524044 284435076 566014148 789560288 676217260 194102320 899720073 210094159 652439129 751346153 391213387 263216135 274214429 895238984 202999450 479174851 42077143 557465196 932816189 191876100 468293833 445324419 201110367 339668602 195132860 925875966 691547479 998967513 250348381 286570728 862828533 671381 613330014 161763528 767700943 554816157 116515156 211257590 785248566 98083579 135082572 358911505 505529798 521610722 397457631 342471837 477491645 308696115 79447633 408655545 310203824 636272567 162639380 972823071 322793330 258515455 303024824 116636604 676260064 660946907 890940310 887046256 669063146 621353016 571248114 770964889 16521242 641899616 470955963 240905993 797060794 196124226 563706100 911412384 139922266 665513967 744730489 304948566 63846848 261552694 416512365 621426329 762642289 653454534 421302927 60176679 843565506 215152506 881273747 954353305 794933100 765027448 127394599 937738223 718459043 236002621 483977295 370379028 437571244 353816528 642883207 474888825 30288822 647896241 759179900 339043531 545689122 70567035 540773861 612375439 915860285 201838322 156339405 564510491 187462530 647735143 632304477 347273605 885170706 226351906 617287489 850920645 546821459 854824516 132356621 447247691 862686901 340041103 255246358 132288523 283419328 593522046 164331783 294844519 748876399 762057443 148301346 231368508 291262380 999148329 934843209 434232171 419088609 278756679 962312032 794160041 903387823 683872344 712862897 122542695 844153489 388153779 581428211 793942754 276508339 775843923 601168029 82174208 989662293 805339819 679048986 216243646 729189979 398893053 496075301 136261820 822962067 261869466 635582751 81336705 181760646 757380682 75348566 245780681 870145726 696432761 188544097 192712898 9232928 166286564 202550990 818206648 245884195 745059180 481839740 148296408 760498925 369142899 622724294 97577397 553514529 573698191 819925904 604034007 110406945 683839014 763584308 845976024 113144226 867154305 927033717 389062713 303958119 629077453 604745546 595467623 348523534 236911220 895851752 346198932 418683684 541632096 391932133 807523413 187469100 368194387 647799689 710794031 772444319 376411986 370762459 201572780 383216131 55873423 390823258 408862708 416140789 233329511 688862619 761928641 142535553 974344911 679812310 490692262 73460639 689922229 965215525 287219769 417394624 934099277 309474464 925486028 83173568 578690514 921883857 574588856 724666282 212748550 628703087 592235044 297696273 782920849 775803497 184934057 599429755 432226067 289253198 789815940 742725685 73865066 727241104 347675813 830125798 303094505 69959566 562920109 319231221 786120727 144372698 22636519 156649032 756675947 667679909 223106825 152560470 358999422 19077492 318300585 299094065 953810478 179396200 56234032 709066899 18879768 689498555 255680179 321477805 737775048 738976789 278930046 271348965 85039068 184755758 994073709 335485360 895113749 346904373 939264787 95859402 576128351 365176943 78417911 150458526 929750758 136969669 99727855 486585707 221320339 773438462 193249167 375496624 794804559 811482575 731720937 558478592 788817099 301286470 410333787 464104855 613403725 972090047 222991131 864568645 269774826 130411233 881170305 856077682 792988019 412970339 539805419 910286701 746427739 845092225 549361382 665063505 788742088 259478545 177217576 663056077 188081076 265332930 417068124 43257431 222610825 557808374 666301359 516039664 382586526 386845160 552417859 688761037 925769235 985639192 147171401 369628531 204215572 796124293 37915863 121098570 249617879 559247884 550183299 463368925 748063617 356093063 24988854 433957455 759615372 223502219 109695723 202641059 836378803 544150105 730771172 895469938 991126967 121809282 888067254 413643862 862340889 531286220 664674395 415304330 310633397 92649417 579291859 251377680 982671703 104897100 287011316 755026306 258049789 664253057 261023251 439137293 950181922 428077130 300614199 203799576 76998676 575641203 71006895 657691827 489968989 451542588 454262377 944996719 957213525 196094206 235454846 883228395 522183866 673762941 836499742 864306836 125897417 556769285 496793269 251875214 922342773 523962366 225846532 623870530 963167587 486653226 70451743 395529574 159835212 630894578 941660216 1115112 64394609 589227492 741379789 445958615 533750142 778675653 187595665 125894363 696211144 274570738 447016405 954473605 907736834 443859799 265665287 911784824 46671731 788693542 791506495 948580991 830659932 316230639 627127999 10374104 309077529 10111341 609013913 500127476 784918902 323408559 413299950 372437432 576844199 643111717 154768789 120608515 273817131 291896407 164467597 940349964 503690929 529959552 787560449 362809733 35502830 642657581 777715028 590153675 922836754 651418637 463540055 902245808 423152606 885956185 683239521 996091480 367844365 27973059 358650306 541608084 813069927 427382042 927440617 760080506 671285880 723714396 84748850 131704586 421404195 238648362 761007338 122173082 472284854 340019658 992883073 135376219 111353439 289683535 551432416 956881403 493619364 826090823 191193065 2802114 567879164 472525937 733073697 77495114 711346242 617905837 9848459 287871004 306512592 416142530 958332192 818497179 858976413 798084239 943359011 777027127 460616516 329292978 455316179 840209509 584834968 281105042 319496656 55430412 360055844 446401048 803282721 473992783 382804413 235171793 432654717 204320193 554548164 463636792 418272284 614391131 86536214 473229563 899278532 673051656 111751007 564735014 134460962 777707297 104378153 835067914 254765792 34022202 909300028 674479186 304017008 19891239 988968479 237852956 409921846 712731300 72351979 302095341 715592300 344024662 176437250 639864963 323541656 133033684 746608943 689224634 401645802 444990330 136237895 516672181 721597386 186119804 506359180 343111566 95259776 533116959 802632599 783579218 582272210 944857848 380544163 822037440 181451139 810654634 83032015 361944670 186156385 589576416 456547366 516242911 199976687 142872872 396548916 296901790 212353483 962382927 701457402 463310835 727826719 730534743 357749748 957055460 203175414 544705499 830748597 562785891 377867364 800388133 940062172 299501657 236341310 490444566 443163886 239799230 119528748 141122917 750774734 985788755 709111761 848618595 37653163 763827992 469039557 849325086 680559054 76804281 707663177 308556538 375134042 5643167 196992756 820913133 693069072 421244506 764173298 68447228 445432080 729829189 438859205 301085814 173160007 279440292 469213832 958043637 661771087 597372641 874377612 247331416 633463062 349994080 511507592 232677406 273709297 846986538 817960979 92329763 959206249 945946569 704516243 749261492 865461193 775278776 928477872 722766913 60888966 523892162 987391788 501475371 902015362 205905156 36615555 765404563 101702263 222327927 678420718 402309189 280533846 148507393 729116986 561908102 737649026 57327568 315961500 251334774 607231968 814839353 41054749 264236220 824175209 896504809 617823493 7495605 695494456 703432591 89952266 150712321 591662350 114328611 586839108 851629833 383996081 931408791 175319544 714461939 482140956 361538510 785581305 168742182 660294913 355274008 927114232 684234768 259446547 462518730 449824432 486127744 699963225 236309261 446886384 581042307 878066942 867326818 210142137 320080451 824071467 116089692 428268766 195969707 81723327 633680923 754661388 139892441 399540115 726545336 762909954 966266113 306144264 196191982 253366615 452789914 544792990 841137254 85666412 134058289 488782430 340466594 667309719 38542338 367810138 171246328 929345081 885471328 890216752 266090702 252074086 612913505 135115093 315520276 317754366 555877923 122448494 569948184 481404227 283990231 933273358 983420175 926763337 474680389 688411689 651470199 294012098 304968894 171661757 653070722 397562049 189697905 206151808 103769231 317163591 846104307 382246696 70533831 677416221 521913746 173976414 430757175 62176103 160091796 164853324 385235906 9808491 118621969 448514861 637654563 124705580 125219415 349956154 39299377 861534869 360664991 434107428 31227201 179789506 593850851 288155723 910031337 141195053 146326237 930790372 169174503 837445015 173631501 218476536 712771193 295991922 180987273 818493056 821168440 248383903 929104197 645731709 35679315 372669666 933360880 430879265 43248189 887386161 913531511 237279722 28852976 834310944 813886330 373232139 181387757 785712359 543211519 933642381 624928718 859484451 157101921 267343457 650680760 282796190 373611904 726552286 709580626 704675537 28253588 259557521 908609582 51300453 906626931 673165519 32818327 100275461 524194427 786649196 224576353 934687552 409203920 518613764 599127993 645216934 654041263 925078302 862188388 885562682 685253596 864010560 47413537 620926442 651067434 568692072 618192228 17995478 248462274 658116932 814095795 278862702 651209351 946691293 800538946 667396533 745425295 333699979 414714537 947035709 970161248 977326318 863300157 788773573 748918052 471523135 69031208 750944070 7313234 157576552 260573226 853376070 20835018 513813855 18773039 286244015 221639336 523090437 971434152 54394809 427925722 789322617 56855120 827061961 86797778 508584232 507227589 91157689 387713766 275897174 944091221 542718279 470450147 973155020 315634418 593016539 375060406 140334186 450105077 668374439 443297579 219107036 890827219 214220091 400069481 515164754 626910330 800960009 74822661 748447589 111210291 108062967 739198939 724574871 929485002 107331189 10921449 389045177 608708083 899509183 953423847 164692756 654634840 917739811 685540387 51727080 68141241 488438282 901991719 500668973 923267833 448628560 631947238 163600609 370979604 165798569 926502943 935036442 349601057 714945926 747626384 268001798 853359140 879870170 498256286 595723366 909975669 217605870 837624668 389106563 242129751 622918753 411052804 473202600 302670441 614181137 103975395 29682164 593636004 383663378 764747458 192867267 69580281 316506379 762241869 581121498 197297517 151292753 618886709 806056454 725917234 571469693 908705450 22335886 243144513 442024912 805821234 287648359 221239127 53870400 883103001 70090560 235583870 826516875 773352551 870137983 273941023 327598244 625528970 244035824 727664360 103275387 801614420 566090418 659651851 218421973 779820304 671819132 309458806 839835343 978622765 736344307 306432541 921876615 155476163 216772643 863400427 970277989 860560728 40471694 184889750 412135467 48875694 292015346 20159394 324157983 365844543 778450715 175656352 779682 717503433 336650843 259088250 990359895 226529704 407466980 214862521 656711676 457354168 166939692 622527170 501931122 784888871 648739122 30684430 599707597 141466558 680563949 746636305 563541297 491193613 587232245 337339658 560011892 355434780 607134355 382285018 607083641 207322614 699482872 993553072 339484268 194182551 525518183 615987656 409106977 226585411 301639028 441582762 45097917 970127745 859456585 302078447 2098943 335613582 806494185 279684751 459149931 915276384 937813311 683805766 456290624 234523020 572956928 423298105 962747956 618718883 36805960 753649838 481431806 977433979 948741909 496958074 164634277 107235523 871101762 915388356 577250967 223289513 369423226 659517044 237593394 740173192 246293355 234098308 495579424 422305670 83707862 499883956 290151446 148104966 746590840 907061821 785979045 315657522 478687072 789974742 946349693 897088610 496863555 129699949 225042191 959361092 425848878 159983174 199761574 694249983 855008850 342497082 956308289 962826258 323862231 927459421 6841330 916103223 23497110 24015660 736476169 427302208 815804480 155676843 898207476 803110199 997018948 653290615 182241351 277408820 844567358 9172831 247842540 256554367 500089208 199948353 315283060 837845247 316257588 144502105 244419635 739347421 733598069 373115942 288376245 947072313 832283113 755715469 813527129 13752345 629265941 158422908 479726886 644481439 605541057 695957309 441107772 979858304 636303694 173363242 116012165 249376505 641068034 104747830 673694361 85558272 784826616 837174763 865905085 832713963 898807900 844054364 373182141 91810193 509671684 215010860 455983637 256567057 408266114 609337767 615456188 894936965 186355234 557280010 363048959 668399802 284509755 938818285 837644846 794410078 173400638 503799722 642862872 293152134 968064594 910722274 352761295 915864948 195027926 564173773 439560685 350456604 78867858 16926061 688339865 590185959 865007505 720507537 795813867 717180660 638511682 945905363 727853422 228517905 777818180 434890956 423398941 709888937 58264462 605598387 574352738 474052438 283700852 728721302 31220913 159134830 326085444 660872513 752522743 892940610 542477780 243238979 905136321 437197515 569857372 385643820 905312371 11809843 978125141 123599158 948436209 583288338 994971794 451596638 694288749 871712 302966680 129139426 131125772 783784312 577750952 220472450 607532852 589215668 454383381 84637583 68943214 335001146 382314801 482985944 697440138 461658766 433958757 25374047 299137639 437172407 144773728 44457533 551346356 934994908 162048640 678500206 491697054 964583674 829800703 620779199 505532935 510893621 430504313 255271526 608828192 775538492 697574834 39016867 612068059 595102825 506461895 413450473 228489815 33148374 507395194 759010151 35899829 499720926 469990156 197486511 78616225 419108725 502255905 267326439 510751455 191764596 499153338 474547859 523476887 753920025 115959050 889869157 203819868 972550640 897016841 791033995 791389045 97566884 522994968 403107391 394810180 558401999 943137147 982452127 172413445 273609631 683898584 91793434 171531425 729926035 720759244 714059617 144069412 489607280 987559648 42757165 18630693 484935221 966755853 92663305 134979192 8252413 391546491 693491566 63284255 364801699 703824142 650958255 581720538 740846731 212982034 697346202 465092253 772203425 589488480 152196823 868143170 921987447 621031308 612848063 153943172 273816930 144310366 615219083 965168748 350334417 339219747 87809427 151810917 425645789 230866420 239147033 35726932 607319814 153559940 323358063 162468188 960239721 875307854 53174971 486938492 728955953 375222601 59855302 299130761 569632033 422825798 321841832 149633186 168707488 709951644 251125755 531236281 538577809 742938934 461135358 73765137 495698339 428670288 179798098 325096689 731313667 852142248 154641847 964022864 451491985 972763958 774596956 777545002 244774540 81535352 596706034 769968978 436650492 247995550 510092533 273495904 110230609 931852796 506772425 55327417 740621966 323162527 333939062 607928716 107195932 707025102 945990470 352491567 860923148 704369090 434342015 618071233 565337816 877798248 225258374 139531349 633462622 773835408 803643780 58161631 468625684 411184818 921869824 90299956 738781795 504350793 681751348 781830352 656242871 474051898 690584643 703029411 943399786 47957552 992723794 613080006 790067042 19251098 726724858 692833440 915599295 643122867 431667208 467953431 499866584 283228967 183682690 969792481 323195616 49083077 922893631 568249765 930403130 302887688 90340754 452878002 232729417 224317242 561302097 619632754 131162809 562366657 729893049 711708963 670053083 569453753 853216571 487884089 691974230 167108846 393143065 654308037 526583978 376261348 164795584 624897270 292899827 537355040 993662265 739078126 813642698 358229012 858597296 780867392 18313457 625259443 327394208 565225271 911553430 110601533 977626456 325930107 540873595 244878706 904066582 838729753 694164848 441926992 540899647 17607754 199251675 255311631 864077401 958594739 377901821 404305069 544906905 94404986 579322338 221455118 472049696 562893891 49176960 232113859 50625743 292995230 530026576 660601322 69842210 437133817 938483061 686095462 424806036 720736882 752524766 480667284 867268818 182051985 691745776 653538651 575015279 453763000 72845166 817657456 599992204 320728897 554190001 748311010 23507246 256275352 402743420 350872960 182851779 534787036 741888925 418363911 447868873 574513546 100675551 168008628 323389796 535777391 146028115 584566868 131203327 180316445 225607928 45901206 342207688 288343911 510466274 893771151 306755704 108412704 383162119 745273644 361602790 897574057 468642255 68146423 179267099 920135160 217844364 919852636 568426498 72805264 433378446 502597784 637379494 196226901 424464664 915096430 496815903 368725201 518171007 257194208 962831250 92876003 460061461 299427024 362681141 243958215 516305608 294158141 341086186 145296502 134227252 422320174 909234018 770914517 382051837 53752993 681310818 464580091 977150808 743553556 49168356 630301744 147443633 320569011 930009150 463351883 266560691 31117468 221896691 678093013 241016020 842938426 21336112 763791341 163385433 163654651 489980098 81655713 717814510 567237740 944240340 834047133 822336306 576961404 273142353 758053927 151581024 507465658 316374343 547582748 268275995 571467349 884877102 235539260 425364461 172118675 287352739 681534872 106609786 689999245 280529131 660773427 181466022 976930805 723083843 224089667 291517425 512921874 724438471 688810351 900500577 874888649 745486619 37245102 470080461 355818012 188196702 118946478 740167136 971205499 436103436 726041135 208925040 729911845 16630802 535006592 536883906 804338372 348108360 135649543 651978617 688385245 483138774 248331672 214724360 95514462 535721740 622648428 545939225 770764918 514528490 699250281 208370565 446347455 103919685 488533541 354317861 538680739 684737770 604936358 693831155 587899342 131326294 436671798 435679074 441951487 653837518 6457651 689667138 786808016 953387900 604066075 471313424 997615433 970907666 662046607 378004311 695988797 920887985 20524912 127699820 692379668 549360526 96395161 365878781 582141836 494913257 938052013 451476278 371708529 653759995 561834605 130623204 955073203 724456778 854934685 773575166 703381592 291850995 678805287 33365213 753801331 424140972 579132846 267474809 561701741 861195206 770545481 362313435 315411749 697677272 192188541 586111185 784764711 1344197 868725261 902659584 802242670 87065819 4116365 509125774 462668299 60652552 155252085 220735142 470577888 544678489 246247477 12219327 187516893 522653085 369356487 382866211 303589585 559426275 859744674 402897332 160514803 305950400 930243947 533686590 979596726 617907240 761226106 636847280 590077670 192297755 991272956 285920030 216915744 370082097 698073113 535158285 690258586 595213784 591998647 891363814 81484920 691329362 652254995 716192610 779170989 212361569 903446148 139107068 428353677 888249210 559889680 717865895 755942941 331219710 788181073 778661488 308924488 388552657 20950341 151317413 991783430 280358304 297168208 405451464 248314252 758595475 320744763 27557031 496069186 967585545 391702768 88495428 315374120 210801938 451004252 394976268 770677857 738066936 837170671 727415055 345401712 895537511 934068229 913705149 876325706 415403870 632759964 404746005 451261350 897726723 82468354 101260807 814301970 257995264 548746790 996044371 940679468 362798597 349982472 842558655 463184101 733232587 264399173 825161000 352841074 829981156 776652265 858306417 208908997 632946009 735042082 196438456 189897989 590332519 898994111 655967243 300779307 407881032 843346386 587322598 222530866 25696566 331961296 591396463 723595345 950186365 282323010 508452690 57418800 31527002 184781078 81113065 500709963 906220354 692259678 679366161 992371723 489536071 931687258 580304440 203988595 803489313 118525673 452964840 754854894 569500573 346730282 920723161 133999711 571946905 655099401 733720050 145210709 563442998 584899623 481343124 941195775 977015460 538868001 936277376 721673113 982740410 735889403 708033388 559624996 724685599 648645529 760848659 205916446 684562462 614913296 437067390 608017792 500460308 247061369 257059900 524164000 835607652 65053829 231572849 762610548 996085342 176101057 177184010 115386193 636679772 237313327 953697368 788648459 243407468 982250588 925230424 336566519 612002499 466134765 23586640 237105460 38012234 610014604 621903322 147312875 168335585 638416977 592228714 463210787 513763116 388475995 751398548 685063436 451423075 511557778 764154089 720972952 687260979 427470738 947031186 838885934 94539472 405112719 368782684 794202855 144962397 993551875 756634222 82443918 922415155 163287046 474131447 138209645 53942747 647525676 795920557 41472378 755090079 557870550 926342125 892245696 527646079 488572292 467895654 103723295 314797694 695016300 250771877 84305380 413229484 173059164 436550371 564834779 829540114 924193511 594795590 33747807 775714577 700267016 699839050 44931842 479842926 513237306 310766300 650620028 446540115 863308562 979254774 785214887 803615951 939669966 825410167 677737297 60361796 564901441 795572002 45013355 958923476 334887152 725487286 563445749 380731678 710142083 725427434 57627142 19482648 61623020 394891837 920373339 509511270 886243379 431262781 842974117 509477978 117082348 989923490 963360082 668394445 883456369 726330810 255241463 154248459 204104529 614855187 457649845 596088461 381261507 979070089 465453715 987954195 471648999 405209442 705721442 761802808 907820871 519204559 901852991 72341119 526557281 965204511 619895895 856387472 887786702 304148464 930829982 650570655 503812312 805851761 374236672 726328592 641149264 831955042 446635344 195088361 150833578 145776515 153503458 439738460 370714875 475885778 893376107 489335821 575815613 192655179 433903972 91879176 137082515 557071511 536805931 670416193 134886512 688904740 812466334 418702244 9116032 782823059 92426783 591088596 755373682 706312212 846603942 438521329 820633710 523594835 231790160 625511307 536341352 345665562 604350873 943227035 608124083 521272104 922702435 388472617 352397227 549352979 578549757 17091865 187863470 317878976 263668832 484724929 392257839 492862314 755934059 561241565 739485583 449741115 787673997 15500595 491863980 860222424 596734634 729802216 358267118 48324158 593761282 961899124 969205524 15599308 144018222 315468251 940800863 505900733 389679765 538150079 108402061 594535967 620042652 30535779 688348254 590266403 233502206 181579610 645706030 63225570 727421966 287784712 710810461 260449756 937588794 997614737 328213328 213470775 393805030 102877998 789971812 60237397 816094143 979903197 585647063 801700987 84291142 118247362 100920765 250571382 917867885 721225367 717250312 626289385 79831607 735261621 242569899 388239446 32592628 550937251 531629899 469852554 315661860 416780909 858401299 627951471 457641776 31922673 981502135 830067089 191438208 443278267 159799144 282463730 924854086 257141813 412539331 81249848 895539718 477914424 806609120 887454675 100102592 756976731 436377810 273965077 743132737 143237943 70399500 521022836 32638556 517673833 479837396 230214598 805318429 13589153 482412127 172822206 602915809 699779645 917257914 67272076 906420995 524616470 351421361 136692183 386840230 114784254 58167415 689508052 412973055 283870175 160143490 221829947 395750966 129503512 560150742 528536013 382788587 109305059 766247318 955883495 479321545 90731598 640542725 196425798 803831008 277274834 132424700 248890563 41500180 507501539 114125780 312305142 842021762 701229527 343545481 381494413 602891283 965639628 645361282 156765170 253667881 208960384 838378347 796875242 353357582 122174562 33921728 117168003 67665848 934224113 767439172 914073059 856215672 653998868 477438547 804544530 791048268 241792774 614993783 201798454 137533425 304104575 670792652 342027186 950549998 573824830 798733348 264614744 273766453 752284002 173032799 733519986 711935917 149548718 127360248 35071206 579812507 430130630 819399521 333561172 962718786 195205954 536364400 599659219 271571593 407197478 123345596 11811950 204454920 84389750 299821144 225690615 782150174 867979109 915722139 882139666 922273337 618091813 67177 566456034 46085804 695172358 530764769 818345632 334744479 989508838 121540388 724780325 951389216 418845569 975212917 880851617 358251770 462640317 745009170 866009174 659416622 226288654 343360417 749323840 521687214 495289727 579066461 378304540 645385152 548759155 617290045 762418547 541216638 790162250 698803897 242941547 72970625 8521862 40357978 601766017 17540073 963565726 905542370 885607147 404387221 809706722 961325193 327661499 288176508 215598997 610484549 567848695 773568522 711284011 116128913 44596621 602814588 465388018 66476267 864150952 968394248 523930140 18552836 690638274 227966088 31913220 528850434 860017054 921015205 652573016 582256050 503333466 4384850 485786934 626856963 849992795 781331875 18439842 309777992 960185694 742344098 932026042 515305168 756352919 616375580 88205553 951985377 567362574 80539486 744374367 697714541 50441367 791541242 960698768 516551457 829525348 591608399 244634398 835309992 434608832 406266835 615456541 396202843 632854569 490220278 399859686 825104318 732628594 889072172 956764195 518294190 457760393 48348180 347127844 80551651 455199245 291987300 80526473 309800175 449167025 475201128 558653724 130404369 804885220 645532410 754423632 152079708 629056120 449558206 372247263 142392051 466416333 15695627 508488070 510937239 691710915 466738622 915893969 885662144 820771394 146396520 304192293 415339136 283940889 669917179 385921385 335909370 784745797 849494011 792969071 260035147 890969989 156073376 396901538 562524520 45351348 147414670 132507632 503087370 572780026 910134272 248264032 867238213 156119426 36380295 720014924 271803259 979315463 168047046 199395518 63775701 909208759 465198226 881641299 32481432 284733442 457426011 518723883 566050793 942074510 895831471 59336037 424393270 335469033 968399433 615383003 382798540 621472865 122257421 685003366 716609693 993956388 174390453 691937692 641338190 324454671 845147215 811101869 410405816 141493074 81394094 81159339 896835221 197101586 605882785 740462079 808768612 873285859 12352987 577781547 598736414 53758156 68879874 894539640 729198851 742221542 901040059 72960527 796619612 884136671 342715612 715419697 237208462 919523539 162684051 86949974 738753518 656455602 293283164 154313008 502869230 967494205 363330266 811033962 716925643 355129229 350164911 894999320 830054743 62482257 664289324 196572536 849657930 503634512 981585966 327446990 591672648 124107860 451656523 516770267 265343819 858663450 341579807 705256847 698331074 551374994 951468867 529106271 825035931 808467574 287713622 11649429 211101453 594766528 867464687 120888157 839931705 121152682 526710532 465047526 119216415 136897940 939176977 594691042 921300913 490551085 664358283 745873267 851569848 793102140 839929960 353462101 485802634 856039648 222591299 655741596 245806537 744734028 211789288 146237793 55226981 291794714 481841286 30638346 656753560 336792028 630554765 84931539 589395346 575322052 796357791 448551185 287073696 988979208 309370048 199321221 847806545 355085606 622993681 198269250 101310790 184930319 841263813 181514293 479346683 666755195 566972872 560478896 580081926 520390317 108915354 476361974 784616241 956562338 421270083 5648001 190176743 233346363 128032962 466506743 474620283 310133030 496673047 105919045 536593999 263969576 848519399 401217445 668894680 946911182 222673 711926711 299205114 983651614 296717446 794310930 136856908 334929558 172051706 887107134 863448882 336816929 385318992 327658733 36114538 41415338 555161048 568171347 315153024 949255608 176939676 300889690 526398822 813420912 982389442 251176426 177455287 267925369 958629048 512254849 118746893 323618006 183781054 803563642 725922095 65500740 575208648 402962647 583040076 107851576 829017730 662621650 400991113 96399445 214872687 177908129 329907692 495282872 815602094 328348324 617217645 897465801 367198261 657046929 306602516 30326971 444906967 658654156 166889275 974749933 303834400 299524468 60090652 50904669 730537524 173931171 717617721 935933491 442758563 734379966 746292218 152513686 587615639 38156616 153750912 417208499 534424213 105405837 27729504 473447859 508924320 5559849 415083193 770661643 46894343 349261241 38155493 168687297 194935058 41236009 473734637 820119816 753081259 501465434 988648784 16455822 696454279 773820666 912596968 572860059 488002346 137699531 315881664 784192863 281065231 802845862 529284527 442565172 279543134 139539258 761764469 493021169 518530112 147932423 311052651 159969851 641719265 339744025 166050310 621572305 172380264 962103222 634052 54052716 739626390 396082451 585388672 655750646 47243656 667461103 196947156 432131803 584486477 358754718 701747355 441919048 244798433 645410180 335002696 24913881 164465001 813034533 370302093 838886929 865173736 695501584 610794179 515582041 664611712 47744133 375475920 811882185 202530141 116314570 581307920 314914544 546240823 450432509 962137835 181092612 178996830 370103902 777379932 44347208 414421420 830733011 245062903 548568890 101659246 145584726 326447822 612411533 68402238 258126597 453479132 154555950 309039281 310847231 38878313 268807700 700347091 240687416 753524314 129158163 797270719 233795843 394618658 770660715 629922127 792573881 661929982 203311418 717457300 196597554 925351498 589375313 59242518 440978529 120555411 47307705 942848694 354622917 773625719 229577368 192921873 819319457 924502418 362793531 865838805 269115009 471973122 710265659 85023422 402640266 393329398 81327468 760778395 46376921 41429709 613963520 540048056 451459424 711782131 978709894 944957370 999685746 317543549 99644851 18139866 55311274 895522427 599104905 622911025 611262478 692745532 318498302 530031458 108927686 760794307 826951094 687119001 594779726 459777707 989073702 586874247 500102416 264450181 890139807 976486613 27799219 928146540 321780354 212935027 340610079 724776708 34383727 737290031 528421996 174473330 387042539 133561933 487240073 230326124 594801684 153241359 315245215 48806101 91628515 753681537 672422662 374307731 516890714 99886839 885257697 414690223 817778568 157629603 18945444 354484055 889895272 268403600 942088241 134494844 885979543 453843927 773464773 891966279 485438822 683062144 123987454 824695803 216422276 488108784 397424466 215110360 669624307 593943328 865032432 140845845 824660645 697498101 78753224 683526400 641152240 421354724 42474412 815376874 582346346 984783918 747032831 77445020 77111823 433765374 791470988 785392238 379984173 958981194 770926982 107769422 628092751 659283232 591190751 195551716 176810453 655806731 800353571 845906710 816774300 282420552 823913808 172162091 529333463 167423363 192457623 236013768 413418885 328930372 50005052 745852521 617614039 326480248 623544300 129370016 89530979 812030802 637399043 808043798 564119837 677349585 925715237 940450417 398413340 554297296 472519874 535366848 106303901 122726649 244167858 464813493 379162434 33214061 77235321 7734149 639284491 483805275 570018546 983581403 575440841 182674150 824860158 747800049 492114589 455808683 630916609 799434642 77186387 681568854 415442951 291167778 237901916 476807835 893771201 543857855 365753683 521007185 696048615 929228773 881819394 901647892 175260500 342684829 476694961 128694976 416830771 147341756 844846735 469307576 10779149 219524030 614895986 315265724 786603535 388303940 705479358 347931840 901201573 728239235 102686157 140386001 928367407 897307286 596639409 584497986 838305722 666933 763471783 120860506 980403152 752598395 47208117 423177677 944542465 362469638 520335806 484258532 204925634 379509267 892979553 815093836 271049837 395274493 971642958 297805790 363842147 385083173 24959466 324312062 413815438 727333528 787135780 571277649 564853287 265556171 197532753 856876613 618210786 263312815 727222594 669393873 944165069 584874918 720181685 232054221 45189941 985397664 289729928 974085177 25480964 322588612 673883420 930619165 981801877 251427114 86911518 32240965 425410453 662198076 482129898 890903630 958754093 295975759 800281758 31080201 778317940 896695632 543066864 534069532 727368137 320466955 840101634 467446710 170779991 88137374 728524897 908310489 165698644 337218392 42409900 213743600 430273914 339886626 248397267 314006660 638207848 917848504 691833076 1677272 10618463 888233503 231255238 236521048 397303778 936913535 726271666 885677379 871867715 492625996 582735475 847316583 503331411 301248652 799917234 21295092 352922426 581576012 1129530 999307108 17854545 889753625 518193480 733683692 620758588 998341437 217894694 793740504 209634574 238762501 501066493 189969914 910320069 581909800 36228841 263447586 539972932 963466755 587879640 782320834 292626313 344002943 82791505 380060419 433029477 545603626 399783948 940006217 454759132 318810799 608325393 554806134 28162607 548769015 400564114 590744507 617837758 381878972 963202097 545237674 607823462 564045126 15503381 610144627 227353612 799981500 948411009 675164671 189251137 179199733 616914017 233936469 66018400 560646974 14206384 613159281 709745882 775434293 47259521 842869400 778530907 99061946 645865465 489639972 598830831 664641302 455950580 62251483 747662769 412368712 529145849 245330185 751503848 669343049 544808876 980958344 591014396 976267757 139450033 350210750 968106580 720008841 549004809 962008021 805182934 499916693 139557571 517438909 551084356 399066225 673125247 579499922 400265434 181193976 574821159 124283742 343609945 305935230 782029137 796669029 420181943 432888096 615105223 290498408 736195347 499264682 85745453 588241307 509700904 22348138 46199039 276413015 275627581 699052984 84862612 118629428 985381843 391895054 902408358 376414778 832934842 64841078 790669912 977199249 510382653 730156067 988438083 711176951 996119336 156911629 170669817 64163902 348455838 844950988 6684005 91764994 853728590 714748648 636972932 769919136 862551177 854900180 10692056 506577765 682176408 423506047 512036806 231213951 197083811 586325348 698996555 19263055 998983286 420340493 254872764 209118803 608591274 530648656 810923356 423379366 458367504 784787363 144412521 550236457 621160728 474060329 745456051 687511910 295241894 94247418 925106334 624417806 224413869 308220356 899602442 865777846 73704906 237247200 621400177 402740948 506201253 634521875 216365259 982361339 538574946 373915466 241369381 749235972 730668854 503953036 510607167 419126361 666875118 646058151 856519646 355177499 418332594 533429813 70308259 487427899 596993078 719352041 438074074 420622749 539729947 718354107 180840070 412729852 740741911 249147608 217647945 12468250 353336485 597745882 927143728 560411819 533744677 329794491 103417266 508258006 222961140 871044628 557716109 141295976 520136245 698482521 765014726 575715218 636892155 555547936 689883657 469354618 86552765 270114740 565724508 725953941 587426024 198753879 68577002 520569421 66805956 228070351 136757273 18655351 258915690 257827544 193207228 956871643 111307106 779490083 270956756 633489544 449476020 10799509 349367616 504173100 922394342 835909182 252294912 485948318 673627050 429369769 856840001 335692859 358479465 482001960 109776911 415552490 353416133 86585880 654936853 82404189 655986320 138915910 398432477 245166217 976614750 493221535 803574135 570216394 660655161 425302265 683823306 30525978 641754801 678041340 628318448 962492636 793943274 768489281 270052830 493751756 807042426 698805454 28355201 350438532 851164939 146154209 255663711 979283543 723624788 741335254 820161898 812906667 904737688 429957531 789563073 976788765 517994672 949641995 413960538 807831273 533269044 48738492 751752280 259410983 137375968 939515156 25478189 465803333 786194853 296246744 87154644 474122790 905576570 334394057 237794097 796892433 279757874 127424525 26329953 28299397 944788879 747501013 917878049 121349310 723016001 324454845 859377894 253052460 688302874 335684547 178413413 137000217 97534273 539134558 875839205 883959812 137978948 200944059 277672284 734114977 710194612 410151120 251389872 440554010 6118992 235262119 271959361 559790820 964393929 991379456 282149764 938762250 755505587 102384416 510265528 551406132 270175974 930068377 91707102 547220311 415514522 569504324 607890736 831911957 373545055 686751994 879004893 53794613 630001927 866627747 184559417 25298512 940596199 658198024 750553915 428791022 312838702 574354243 231374159 296324700 284295284 793546088 845179436 862042227 793257067 283503802 170230743 817963191 505784411 526805631 9353674 872264193 545242137 608456283 91132451 73118836 554891064 645352166 948334758 834560680 635343250 182479133 866479582 819916900 504273093 944671385 738248200 464060675 406219804 24843433 637563832 850284978 962147357 655903051 625796361 466166379 200484923 632080959 10465182 88604763 450517512 475181474 754077258 718295883 201776105 63749075 528766095 897465595 342848798 543211439 659446985 192809334 449768561 786197514 308943114 751440633 740386814 882982226 202330895 109759343 614560493 748540692 472704619 631873013 24161134 185662646 469730835 36464618 743958667 910445480 172924263 104354941 64027452 284683711 42754432 284231360 982061557 818514844 61370562 222429047 912255415 541600214 204631422 583683945 492384628 596648044 949356970 608625117 168761660 488744099 256052236 243141398 810441745 100299953 757736779 602322840 852455587 356665297 85687471 791780799 691339285 482342838 57009282 410839095 984187504 840186014 959760116 209189464 782701112 617893685 242818886 592283966 546815834 762631451 219380471 832675712 49742624 847403941 349455902 556749442 855626397 588082644 619148855 449803568 578968975 568128482 444257744 373678707 397225362 699154243 836917009 471680495 1987801 724420537 677543080 608437827 475226849 639582335 350318955 635106165 999168190 463925651 63245927 378397687 547681108 934809114 585428759 36537542 699676238 504366875 416114811 139357033 898085829 950302820 177739187 723265671 464146043 249525162 60099317 646985250 492701569 467467855 438685671 532617796 817096416 864910676 728013640 339504155 460108857 592251750 236453327 105991532 381401214 103809168 945220695 949549998 269212144 304354259 382554856 840692867 875541104 535286341 340089745 191496759 501698929 522166893 211423522 306679518 446977219 757214230 77385457 281141307 336419190 537695190 726169780 321357043 54271655 87606812 337699589 613703888 652399858 372131844 999651047 685115522 35838011 847964258 560205197 236725328 698608754 172514931 441763389 701501268 744338748 63437521 395183010 490083607 302328561 920336098 756874206 261557603 546273205 834083224 807441498 357802544 59944199 722497982 472207549 877461886 922449558 776664615 405337629 978880429 22935352 784351837 847204407 971449910 528751456 168618911 206040136 284187683 463931351 915549314 333633857 295549881 439768584 296885238 481689165 346721459 730515770 472735035 235884276 369383910 43537933 313162119 795498938 925560481 690251182 541362550 482280609 938401344 739127118 788524802 366842613 949352574 613748762 329264221 660604688 820921673 399413431 649995305 58089022 834590985 791904082 929418383 602267788 107576120 68186150 911341589 105908746 101673092 774660080 79919484 10010280 382909762 145930088 620158927 531829579 946751121 762676387 76883665 87165796 860261382 194392993 761519452 215305104 921905807 906116440 546331625 881088206 417774363 651627118 761622606 548095927 770919908 978409349 119964342 470284265 665080058 725687972 938756214 672022762 879576876 47013378 934431250 769745826 769469639 265742607 865871312 387236333 971270809 453037162 689278378 756815878 62978360 96034295 201950807 89600830 409377944 341115313 498715865 535247229 721907292 447807617 782604486 767989703 410586869 290571725 53151804 279041471 991842229 888663173 967245673 132129837 251393313 387479857 794487855 194051788 728599302 502758654 889015471 766310482 384952636 576507351 876025616 279090151 366254047 615234372 886067157 576817098 995180161 422807434 129178838 470469205 697207524 310878006 751818590 830947975 780411583 649120313 285885650 31804994 999869386 22374672 579237834 400875473 487459378 457144077 220560867 756210986 560033869 952831413 267074510 623528298 345039163 12246539 654568594 706296076 496620284 564417640 795767504 385693749 340233760 272633074 383690523 534819666 12397651 824673004 207357530 237932379 809299391 252960767 789320864 744046083 494772516 179545110 524230606 586995665 497035059 169715149 508259284 867698936 268022008 72271098 840969054 791171170 11733127 482972504 778631944 935083610 421240020 535120253 862108968 701064606 799849316 425128029 680528853 383469707 76237103 320559609 534205214 787518397 974144320 925253871 637735250 545267607 50568885 827952156 751138167 75709192 883743691 857199560 925070013 268849916 6942118 343588791 254517500 88253263 675313747 700223852 339877724 783595991 671957621 838751367 508732767 124670103 486351551 602682150 491544399 46950851 242383188 454851854 194442543 370463095 851651453 598161863 291869545 199191855 71869489 439717452 418992019 655692989 52749555 281219313 895225593 131965418 611053250 246789471 678125773 235369082 610511235 345569214 264901495 723505939 881857381 824570899 880882770 203020331 373938672 882253963 839580964 773331148 939787414 982297550 686309189 355634891 622812961 834174547 528585274 965744249 546944688 150978018 494351975 316391348 431997503 195123336 564085464 75863867 765316228 285073721 344766387 579944708 102152605 298645483 441413474 31797364 26838263 138516231 177760884 746677489 781682144 850974306 206459769 78170677 715900073 867850121 939045295 518956112 690531614 352494864 505422884 65392439 107194570 46315595 58703059 485123331 609762130 114672093 693638544 83669117 625184637 422205059 901238472 699665084 357361281 899567008 245367238 854300518 679390287 696091673 603087825 96633563 889329267 523737538 745344948 956886867 594516912 571024769 636538539 46128658 860304663 319190523 821859775 729295076 431687361 712272752 341190573 907787898 916668762 528379423 735309093 386593389 294260706 424879022 55561482 219153349 984543583 739945058 537209841 305523398 918089311 294226425 822944429 422756885 514603282 551788380 791040089 335509905 708902433 534158945 525396153 957927832 956062313 105286940 263730907 368618600 589241368 235637386 713177541 863939292 962002808 571419188 653517927 901636574 205324326 584116626 710678328 412524409 321356754 13050506 716170873 496117312 936341194 380428312 932210820 339697150 657467757 21033981 469269656 227444464 327885656 283712369 170044462 411116140 326910059 611434429 251026443 708064806 3256641 189494775 373738174 436371355 911446218 307887820 711778427 628731487 970542732 627623340 910556451 806888454 465422714 36384199 398141684 803581389 543835031 253174241 919507629 987903239 850790137 507899095 162795963 765026336 230830029 380340759 537557692 324526588 223751840 993008144 955653749 701949451 443621180 635066333 547048538 548772184 40599794 80415925 903525367 837529886 14160267 876382496 911952257 948312014 382589567 21376619 621124281 955280387 316861467 816658103 559375558 959290152 85149209 815740834 967987667 169481147 818298788 565388510 164120817 706779482 363973525 995485122 589971483 79914556 13557598 757600317 112848038 461965536 975789352 338725166 471463413 834208139 453333279 418795258 171207403 663749349 393052162 285164692 172081211 44349546 31497731 697731793 418522302 747992515 197439167 867961294 640297883 221902927 898293806 709824497 421151179 701208551 117609663 77277020 687162920 534982278 527443181 670485279 370771958 921805849 824490995 66731646 755664069 641709122 729698611 18427940 932930 509724819 224148401 923970798 957555345 989945363 913552660 117952198 458645069 742623825 922317027 180562963 655141824 498171768 461233089 552711872 365978200 468704164 412553624 373162741 576487160 11154736 996492455 269262338 977516620 887071777 612355190 269638649 993643784 111078120 269149080 578004986 558033638 869609087 229274840 256367460 537091134 813703275 838250130 883601972 976618729 254420787 3716686 892157776 804594312 833409434 302045752 961817777 746048144 92987498 114721470 457145203 337020145 791494041 466670326 260462840 653457160 579796285 230643771 455619403 595695406 990012236 586642320 786222589 700728415 361058151 989893532 484740198 502891874 340967868 727181958 639787608 93269526 432494307 870027011 677965018 901128586 916543697 466886247 505505237 653085385 491638697 656239238 822384225 311985257 460892489 256218311 573203020 562710612 287380446 931531970 293756418 880839051 767481893 325361166 477090625 353697026 662542379 124430020 824663888 304151737 787333085 949619567 86670503 193655795 499948188 59222485 285367009 549150236 473533912 566534105 261691582 165531939 119129783 456903807 465161016 146710931 118895327 525487498 554464959 694098146 694078874 793045826 738116771 800581047 589144044 621327762 298536465 198864656 367670295 335311978 152380511 764607926 878790955 833559273 112629685 655423501 956977531 394241009 313915370 357675970 367079355 778433840 214386486 786252971 666249005 462671690 514495738 405687355 262075859 946830651 782520685 25004865 964240324 962787136 668074909 50249712 284770581 836215497 271392146 398529506 465783010 168549277 779666497 549526376 27548646 187157438 665277231 950172035 236193064 752321476 812795698 666245809 956249877 382235217 982746291 239050872 56582397 368227161 205767784 556388934 944830646 324068616 771235073 600832641 644949123 269543293 724137906 598465540 905228948 356999177 660913275 278475437 804248753 952732595 981538999 742134347 53879406 648817859 181324148 199138437 453162310 950011823 212845420 166498854 856967807 631083324 635092713 459188055 343112289 123384073 938082896 734381305 24000518 633071712 548333551 756566074 122633438 43476375 866196197 811188401 3336443 948739756 414530229 483344581 364485198 166759818 82059060 21113 519626660 95400928 994909428 940893789 947094623 918436332 207334913 17674928 412166032 704104098 62033723 700867257 668960762 233612773 909835129 133696624 321792796 936139864 775901603 76188125 560072093 780191814 688365656 321189825 989762151 552812362 944665131 501423865 50305364 196116358 20334150 802023353 259269943 632439924 639174313 442603326 159717494 931099521 895273208 865110054 263754675 812036666 142612041 518574397 133513763 257018227 168695133 192894966 701544790 88391861 918974256 494756357 148121410 317852689 834409742 730768259 700777127 702627777 790737860 266406400 296546969 512259304 731186531 738941865 455914770 189587001 632691427 901867198 533927967 606799684 568917105 184584567 432092901 996307514 778749364 628678585 611803395 914426414 742203009 645395672 819075792 245747904 973717502 437194457 147211214 408373201 828959961 269014657 700748452 253770141 317576262 723027400 775033682 766922191 23147271 955961699 421418673 633528669 990546660 538213759 641968922 672125978 639025494 823606609 856945370 229203053 45551806 713253651 991532250 936122778 830467983 870375251 919050760 858193189 640450562 20728810 197844921 693157818 481054141 674180893 476327174 967444743 814629098 451188751 805869076 60490366 979741645 746442056 358076876 298937226 807973627 743604688 324028886 205546550 169049558 698520058 252156431 164341994 170995678 552863847 481415683 382491574 128403435 774445490 458887099 495288875 676820634 654175429 629480747 639709517 81925821 256083975 623213989 686848687 171940265 478230840 986872870 546406611 709261692 928218897 249157243 480400581 13814794 889015614 597402309 513876069 991652136 414571753 379781879 244652572 655755669 609581176 618263600 724344288 406990036 278005587 980361153 784129054 66481776 528808076 690815753 910834562 207099599 229869667 734492842 701712947 898188244 666661966 199520659 959291236 31954776 340664134 18725277 564530040 544831053 129911896 7528926 172225702 699541349 803185648 359066955 97816242 271094192 157766969 227717251 681362287 136651321 997450352 604935670 90816991 462738306 511937277 628835663 303468935 271184619 847033101 845977627 657755208 892945561 11597452 180744950 25585803 13268029 956178824 898856541 8108427 93779148 252142001 919160220 835877326 975250391 154686543 264132423 193457414 501363005 881778198 205034185 398895038 325855651 139801035 623511073 223657897 7865884 38438753 199718163 558452714 295175528 462909332 115346320 210800421 677113465 510298947 240640193 614186950 790630267 910432673 754129297 458851993 953245333 513040139 786674703 290706147 49362408 2330823 562874242 632597846 162710453 201810501 188139788 75110833 69363300 365587597 339074884 844780615 358427786 772760562 655894261 477635962 172947657 271458237 845219733 380490099 677185734 884053559 268115415 199904207 990965195 338002605 390048521 808450276 501960381 700731535 32784461 142599076 181211277 374099184 727887175 957105297 604527256 81730445 607273326 684025625 62541429 968852016 478681997 116847052 773851860 405095181 268221976 273794178 643514846 941064262 135333750 178152921 856909323 396943488 982793799 597689477 239501349 99656220 736710240 657043750 724358943 484598937 312346493 742495026 243025241 157131719 632619601 701320958 449257528 23631188 629649951 798294571 867621003 778088884 160088184 463193652 329052927 374146478 391620288 717118018 444373494 439259779 718410377 334317789 741059985 78939157 964400054 118685974 611174526 472134362 971793559 557498341 782824339 305289338 984785556 781249453 282703755 125170178 645194257 59153734 600135467 411457601 109492475 484660354 140874101 581230447 972874979 652293925 46413027 609913068 608039105 930879024 129011301 524075430 122436755 301176981 85869929 186100275 252331568 299603601 405625868 225748685 836165842 895917131 628267914 470226539 323700523 523593141 838289897 246009056 195031707 397382963 208282860 515587587 498549349 90294026 276408199 338044372 694637311 903712292 45471048 199409833 837309347 598311003 804912643 579541739 148697057 203065346 542791806 460678590 555172224 677310415 664956336 339918187 891640120 490095692 323868891 853512695 52677700 376334757 715387700 911739936 132683906 277683439 728716675 186926390 737267327 320758850 730280804 439275459 533118922 52955901 831231925 748595628 728124888 284683557 30140477 639553283 834521285 836559622 775861593 98430811 459133753 841080238 990146826 540381284 914308676 611451024 424094358 257426587 565094144 360060267 399411041 393651519 637679081 258635601 487831413 442300516 954471644 193124313 479196163 200294264 968285801 653944201 833273298 511499993 947288864 493285606 230240419 916409254 932060119 877275732 708330480 325152583 937056595 24054 857267139 383303976 505338589 271918644 511879296 323094887 943505331 888708816 236118246 411532824 364169918 335280983 703645057 512867851 807802139 732283141 324083801 127001139 893242548 900356780 249215778 766154422 887909344 168297001 670668069 470480103 791414793 336159320 213436521 205677350 305293000 220471268 359358038 517220070 787030267 358944595 43330240 266948592 867760453 830072 832981022 791238743 296696771 630274117 642621304 365998013 126779891 780624006 69168774 731439749 710764118 918444006 158153916 766978960 507354567 321371430 316682721 635235529 376100872 566317697 496213732 504324611 796112142 963428328 108993837 315914325 931003734 144287366 816131561 374513216 416128032 224061928 698060267 466322511 853873813 298782863 448235361 356031139 359542240 228605214 440769124 717373163 227649275 548447830 234138113 526305417 638899936 139395159 525063921 47529179 420131626 752817722 463559658 954184500 832105733 979693005 589620162 77429670 559321118 823637661 116861080 445872057 348969702 529690978 68183989 339522811 412854131 987742573 345320708 318036485 647943762 301050291 294116425 111466291 341167545 472807837 353037699 244233100 550122703 916450392 769818456 604832222 265590021 537252964 279946229 742548283 147144347 331599561 651944352 199084558 215652515 739370841 811008732 355200494 423491391 803940558 310723103 756220560 679625481 792640245 772067371 416131998 251306165 901417427 525024992 486037925 575633946 341689417 104832595 668242869 75320544 747358876 34817093 864767182 214144542 899851563 668383994 202167629 660293098 642244357 492248954 205537745 565027618 156904551 581693030 801989905 193994676 759622232 54844959 354367574 329869109 275038881 121346799 687854210 737484971 520171949 535835866 571018831 36388251 629525673 154328152 770191446 65898656 506753530 867204220 159162360 953072063 292396704 136308749 145352280 923249530 93806975 354207896 875674109 12186195 157366284 161478335 41203010 542732318 980610019 756788597 163901642 870783768 120344683 599648060 677409792 550083403 366953698 390100405 202466672 617671389 28668577 102185371 978483748 520210146 545997788 253811255 846510717 669173224 247729816 170473791 697204362 420043078 876354058 631964876 479560659 450495309 661509955 475727827 437945879 957034520 618220501 575764050 832870988 540987938 923319794 98188614 415477385 959688668 289305700 176053704 423397223 278796563 661623699 85081334 735364829 136600958 390540535 940586170 67137133 15407679 961118442 226291279 440993199 931544495 66642594 341235395 442796753 247073886 932296921 462099346 531308601 472278908 713985023 628461036 724744326 17009523 409536032 416342078 589557240 516099383 375390588 664980174 294037763 943658618 918690048 865115039 905764643 382711433 718765873 576609512 906837378 326848356 443337171 150314729 400656411 828863111 468931448 381381394 839665320 907937708 99851617 571011139 992284416 943873821 995657351 661760862 819862274 994303348 317060631 327536044 464798936 601942603 915031053 400633193 172630994 904684632 466377669 482630778 585058550 872708068 232222414 378413595 251684714 819332027 145802259 638130667 170692429 752731365 337407956 855648688 949022231 443564613 536614346 959147635 160626516 359303557 444529390 655641598 273852637 343253808 311236650 767280162 275468074 529169891 306926208 465198302 305619561 980357798 108623803 845637518 405032425 851511484 932909604 761668709 203438898 346357742 626475003 143144682 593424913 187244502 119168434 906277505 956634574 314012506 588154517 493077140 366897804 190190497 370423994 11505004 372329605 525127062 245277820 864684785 966613175 894171633 230491616 686332739 935203847 640578012 921298026 55154087 463572887 175655327 620169607 625242015 131107851 205349862 147869865 779084892 289260818 892929789 726178114 226988941 965647258 454643066 151223208 778997549 125649265 303796400 7417975 191534035 522064115 172345653 397052128 18945252 983375818 973070216 80380814 709678163 958443531 60735018 19180991 490756987 949979710 813586883 826369874 709460099 200617791 290481570 466250989 582561350 587065939 328617869 723303210 564005063 118174617 543621212 994867781 561376162 449037111 781372859 707951233 326846553 988138624 848354633 916978125 51592232 44965524 89543098 976647184 547775025 874759094 199487191 383149876 41730227 228123583 950574443 435229190 831222487 685136117 473558504 890646404 664374653 297433587 718606019 140071999 798727109 382934501 58476342 805964116 356022816 271638547 490386154 652614135 58434593 969945112 139644860 729793443 539733053 490139913 576166363 465074132 183763543 189362993 959331009 568399753 402339614 9275229 41178414 651034874 108912481 868872689 789990550 869512408 822551995 478029276 65117948 798189353 491632674 577794144 506876099 505146422 392390153 78654719 615382580 677089725 589231571 202863590 221591436 519236339 607849471 754474931 89247630 547637140 969056164 719427400 886566004 846109444 174415689 217195809 26493997 396368437 569081898 79984610 58900271 765044716 645608029 409213411 268390483 784862358 445278833 400626841 292825528 862987410 664674726 796572416 587643052 641246135 371677514 431867658 879191738 197999983 534917502 585154335 459621043 572110076 427018323 876793298 807513384 883805688 123904229 905401321 159291752 423953145 747600801 356818438 10315560 645467987 855184544 666650468 228019517 60014501 766178063 781699569 119902827 297908183 719928252 54929816 560129745 267407288 688435635 343606078 765493937 857554119 545661478 359919647 408570338 538931339 864698686 960523113 259247088 423620356 784253970 684573693 619548831 393613661 504673631 333007962 176683544 716306202 507410990 796013061 890217397 362291791 897985632 917061588 357726564 915341256 734861244 819114730 252723446 544279892 855443487 525461243 499177594 127916480 592326576 97470015 685261896 862591313 954499471 710950063 660155112 83756644 98162868 668748514 491650351 50945378 888116316 496685199 104170293 472696664 619464673 187638898 433402904 357334176 501986949 793013107 998585926 981447916 919298830 191957202 4626668 916655299 858863793 222851096 801558856 964703459 311502419 177809202 27210559 10939158 32412808 76430624 713809361 734601094 813821611 344645904 820839115 513891645 73811215 714586938 77225306 696887541 988558278 207983815 336118586 933981730 254504752 842535085 898561859 904917356 962467159 918289058 884757472 112252198 767350762 464479339 838026287 312844999 891529645 394078877 567592763 218243320 804752292 10291791 500507448 204541505 165428402 414982146 268391588 719976431 359496270 608588010 66757055 475099211 387210100 797702693 288284938 122733893 872278856 800528601 207370904 200412083 458002713 566873207 202568312 166668742 17265699 121838561 686005406 267982074 138251044 480694146 326021812 546926533 854769164 749346764 951484386 228157092 227186476 976103356 527250768 743374688 316714494 102184549 634683050 632513367 854095410 870742390 914232822 467756079 672690686 829175894 43587856 630854853 347694155 971015847 207011055 289726225 991307120 731295933 48927436 485045590 745342976 667214338 169933574 19444172 439755924 428082465 988136559 624018202 478242496 192362643 56227394 939149063 18618793 696658586 586171705 373766559 636893173 638404177 918139043 664859685 515475053 749719219 94080298 43336094 426928036 657102280 559020149 212250472 424100289 144043889 724225005 769893133 208667817 239426433 23474716 849313522 305057579 811513937 733929885 632796745 100045631 190494465 82864494 587464897 62001352 352536424 179944093 172729607 94831791 309218769 997281215 557198851 961563849 136609485 274488154 589149921 285789048 510102003 632427768 567947596 430405965 45001078 807822023 349881255 708871089 247011470 18147604 563684263 382014465 959639798 906568242 426144314 60490543 960891830 590353392 957210138 193999623 320494318 297365961 382885001 821543338 915225722 992979093 425417804 766230817 233034715 731415246 298108748 816633515 941496941 736972182 52847470 5773248 171628950 150941958 598560191 587705404 577408453 22553151 277142061 414209972 632328470 673141133 870407489 898977636 499063473 490635420 25812341 639347609 442226695 606319954 687455630 427080615 340319320 380046365 768722109 189179866 290555365 563980427 256298480 861835379 671445029 329553262 450223288 596787168 605960282 717611822 691028385 623805427 752128059 931869853 508490078 446026352 366867431 685582008 955909412 672830497 554153238 21655517 148543556 790518775 598073739 810462416 944559399 482563991 804634584 758458822 867711443 609350293 326249135 443120191 781715209 406178197 287044740 712775560 96361515 587619385 153676555 203037788 819721654 975481338 18535157 499848097 443398746 606796042 871478633 624806510 646613522 42816004 155263627 538008144 685021876 998804084 929850163 300172187 600125718 504725338 340133159 240418144 199942331 713869380 15830216 781624240 280789541 289544726 715317525 393268094 568762144 907340290 596327870 679296540 792040692 194688088 323371526 871587070 138383051 270337840 901252104 894283934 421042931 407421801 934410622 983097089 743775990 341419089 254793298 73092028 550334761 384076435 71300538 117207689 633594212 144481338 285505215 81560330 642776449 700738369 962549918 293502743 550104695 245441981 767615806 358812684 537056358 43577738 286560840 236473814 627270532 25677225 690628621 212687171 678487758 40333198 971929489 209586942 408324215 729778876 358855194 805838118 690925141 206633108 717315998 251480866 135816987 531418164 750461417 65600754 402875863 100159941 360055867 597187020 127877236 33748971 506867318 835895692 229743457 81333694 372611081 897457032 731245115 699881918 768247075 130777316 17878099 464066300 964236726 233949566 538776811 856738391 513354030 169790669 876349464 128964946 308597982 674668761 300613895 529846586 183818574 716511206 721268655 631911713 183106365 257371393 3872267 18527275 16451151 728981658 837871837 435382047 712137140 899746484 774676273 52380232 353848328 489066317 130326218 296540256 321474847 73774124 705192222 312590585 150073729 664820700 345188886 837081785 541725606 76172398 546116870 489303692 817052483 709090423 60267751 673584727 923528875 450865604 544483387 611644190 663537231 9753069 657234834 89779468 613578900 704550175 23432474 176530940 576795159 99274180 834342373 545471575 946829184 741491749 416896048 920226131 596135737 759681171 94664906 75447906 220948689 491761109 115552826 997603972 451843902 372250247 360483869 266464215 164219009 533535933 252485180 329213836 910613145 953424077 791754340 847401497 380511728 304065505 114906234 166285230 788824214 42136222 440362682 598512252 34317054 803512290 206328438 169536148 960473919 735800860 744156314 859081851 173354626 990626086 969811931 142458679 254671911 284691160 741279497 16933277 786897147 912122960 882967562 691128224 72221770 306409003 249787085 943179049 546925049 587529745 261193084 679511291 111710960 802724480 787421179 287212048 208433406 498342988 787198801 197655738 840131377 680700791 543043435 784529836 768526515 804893601 179182442 839151778 455446078 551851213 851755661 346695694 71813366 431843553 289242606 467725107 248963453 211034971 843789390 533472470 280444044 204592737 699589917 379784915 393056528 683467204 244756980 364104558 597500547 611980987 438531926 621634704 781938564 983217125 198112971 613073056 520384879 7960026 835118792 660772186 540536399 991797767 32546004 127756422 350790148 19798831 865283315 671850247 745584090 425842266 856461359 568395554 333401994 9779582 284382619 975830304 879017028 457769401 411229477 87318894 980411311 197591578 145604294 992483159 39205747 408657244 528891409 528344794 451678125 367969705 128189195 4053880 536852349 61212146 481002246 164449357 704627823 22727361 662294404 366026135 727875506 101429738 121089281 548427717 625842704 524487776 283047868 627323704 905956724 71753615 895171421 242187178 134430561 615021664 63735166 516698763 130489768 404248821 798556335 464622279 248787517 863731034 746366734 62424983 565263230 877735363 684591382 48926313 495824727 124009809 503827557 257955488 98446522 876069166 648626524 662317832 803298380 825173644 861959961 533106893 214181732 920920420 178749619 43034659 670143103 970726380 678267884 642271882 262205167 454753662 939064482 104636566 415644205 315877633 304620434 417470144 900270022 678779122 405122347 716057885 931589278 285484842 630133516 854737836 753289370 229377754 234215503 572300937 845384026 220077434 605681601 860447980 261460464 161688448 604329063 889208014 7071999 988986034 861994748 638335618 71659122 96630666 740857418 884883125 942324205 466695516 534530805 81761180 694741536 105304246 823730610 956471663 800316717 224263565 265691674 678287330 811143354 681192258 506573120 191202765 322538599 774297364 266122404 755735096 831667042 781402174 17430638 330287053 246097940 495973782 60125668 343445054 953100319 345439592 979395969 664235371 135419556 435566804 427589678 31889870 244815941 470120298 944241950 10065555 504299823 598193209 901476309 29427950 669344396 410526905 51413544 388467554 920140850 524211216 123487101 355174109 148419551 520010734 158721760 280791113 34770347 107360374 825858859 333624151 29917962 634834055 870651731 710691535 960023234 22218821 550215882 733593881 492013220 174440997 606888647 450801578 514647755 828824315 757118860 127506821 96481718 326147654 9720505 725431591 63387583 470343163 744806901 40358073 517214485 28616516 97249330 645784765 81477810 886799411 837649066 678546586 907330735 454125706 624240754 11748768 779571480 580653049 530660078 60620165 575275171 136216299 622980376 846972060 757049415 619076644 680781173 582058382 72152569 725567999 215965902 453794970 185993324 966219967 242840806 52450368 534600110 101732037 122809442 175552695 474519501 699703245 652055994 145758780 222636935 615157227 51321140 151378146 64227314 877937843 402079956 508508524 230117964 632189911 261898251 458119591 472847426 66703416 550440099 951663085 953552153 950616161 924587110 956838201 674589383 352134005 703693128 412301677 867128924 630042069 922043459 759172815 413957032 827737384 448329493 567115794 833244685 570863716 32160390 129224093 348720327 896850109 119284930 419879380 496979243 794019888 284945581 36125138 864779593 116527297 722226064 38972019 499199110 257264352 138961812 336275777 297110917 975053454 169156799 919640071 348212151 817271206 420595893 415399902 533605660 19282641 918288026 747428550 278611838 622209125 115118031 163463676 766031058 134706247 929046567 933607626 96207151 946075124 646412023 222152008 250310435 758950562 756539825 213782514 406687334 625110343 420180671 742753043 895488828 583227203 606893424 419676491 795339296 910898518 662278809 86229055 895492676 158502809 49826019 610704179 491709498 86921312 819647221 501717196 691658907 261946962 93414681 324532048 234478137 31590114 897973725 803514996 449674221 997784047 741539656 163034215 490244783 36407667 635609380 275071408 826539636 631078317 309078982 230091692 477741224 992657455 974561702 864220562 613016323 944365782 113885937 232400709 984247515 4161371 920215907 297726938 212447798 851837872 918737423 720828857 39493080 263414490 356152162 511320440 490681929 180451528 73902253 112918471 506006748 402324908 264215414 384886113 103082683 439604114 193874545 404398162 382261885 848921545 61891482 519422099 469913592 932921159 15824623 828254431 593294510 620122841 485022457 163311140 255033738 620717396 323407287 766169743 654309864 608920479 344422301 345661405 416779108 249521079 913183587 85332931 895497967 907567529 110276237 23039721 659242538 979677150 332059711 558413534 719375549 317879929 497380293 726546398 31541781 208345141 880720626 526849171 26327933 944093248 130155332 810138691 628558126 891303999 169592908 491273112 880978267 508382589 609704421 512076410 433035002 349381333 892168497 733313110 143647534 994736864 564396466 309618689 669411213 133722159 142270000 304745774 169649607 125693728 747502313 432374494 119353880 248878483 307636799 342753135 226616817 405304968 932550660 435435515 104477868 851828064 447392379 749013210 509329742 394813634 790407939 413979469 763362574 355062285 831413334 622084643 783633393 651085769 851955937 479277796 824673140 806181075 478127733 543674624 479814660 438741750 447768271 771702659 101802700 894134566 388169298 602175735 802061243 29740853 863010159 472279853 991952072 208099569 799341285 245607606 678596106 23683336 975370185 441127089 928927450 960391454 304087223 930877869 246540223 863374960 728218330 462892492 54154825 567565585 518961429 319851594 84543813 898147099 596169720 434463426 135973025 23301175 392913349 708107166 540270467 179283918 148240615 870010249 993055898 821923559 859218385 927707225 669158659 817720199 233461717 455967552 651578817 79084660 858568460 910166012 601714600 704499037 95722250 242329073 41949049 62158179 257519166 325097473 168614534 884555809 699680830 5274267 654267608 571826204 246151392 433654562 667130304 969671543 474447769 269867881 664182743 314250947 702657634 144798018 70783237 869166779 191935629 256868891 559707569 125292031 15428320 962254693 797679954 301127341 531235332 275182330 216724974 567147717 197959749 394913556 838029906 336440706 60849415 816049192 127144786 514779440 716989527 485322633 807505529 101684343 380435168 571650040 820174102 563645974 194618847 104780472 684615213 25146600 601172033 567277843 346923764 679238907 602203045 284205763 27399959 295761215 319162916 43156896 292882634 203448635 249234715 824616071 207305581 591831602 556749670 286391574 314319086 136962956 818254374 862402722 746230965 924592867 685607528 598520340 492179705 345378064 129218564 963927472 866018199 130880293 876980797 354909986 163069111 44294874 905219687 313165909 56709325 948806410 591461233 193431969 427653372 216387719 441866178 895054295 843028817 65611443 257416945 34928621 522256687 971234019 443452858 94642353 748172309 116907983 692861382 262843866 899841073 358973832 520637060 105383399 854277539 163258721 231860409 448918744 342505638 478022238 995236722 273365799 369717386 107394269 833115885 525434782 867935969 203464830 33187727 406670435 460597004 691851031 582827577 552329537 183194262 417232274 732598721 926653704 408914880 507726946 978378992 555566328 115782135 563091438 277891815 391488496 86075944 131460167 721953219 733105408 962591231 71013483 516108416 374321489 220511343 352983999 621259639 104951333 215496879 665816371 8283561 212384067 876733696 918105324 304161256 333521935 885610409 178643236 56771143 416481363 406881730 885937377 594261715 116321593 116858894 631631536 606364478 701114309 889119471 527863211 728798260 88481463 724956675 476968066 336475260 557669891 609903511 434512692 261040068 36692014 291015081 729493017 198269933 809048910 710938851 784740429 245918791 714965833 726170760 683859984 135865576 563592680 601442905 717901423 823114513 239978173 623394525 240177780 188999116 396571410 763937543 976291323 568537610 99832488 82446807 299034955 968786188 169905458 732189180 973556202 498238627 407088846 974521175 458869886 752959493 162241819 877518853 574191104 908189782 891477052 176733127 764753954 9672162 40024728 278965611 549151883 142650908 81918795 302584844 53005545 366658439 561940878 274752134 380424626 76385537 425427022 107180192 360713481 132240448 976202124 127201277 529796187 976572207 105535848 686776723 544783562 328324908 952091945 581997118 21396249 147930222 119201365 852169071 36637191 246034216 262451436 34478756 354483903 641606644 718174715 935818189 887764619 367587722 213776191 956312874 802628124 568187104 120088938 498152841 840630668 837858630 594021598 613824133 843442591 278860947 778869082 700574156 27507710 782066281 154875674 878162577 27771897 627951680 878624859 35415099 427838732 807270854 425394955 420672705 500743626 808278125 795834968 92973952 172202126 200438019 924036499 791707823 707835819 170152883 476367655 278257040 973969290 292478594 270208030 685996880 116275301 581254431 69992882 417418435 471589443 659148725 89194947 594899816 608423890 235749897 322519758 379123679 698846296 466629229 809176302 191731201 870675384 673828434 875514766 569831190 903641710 355371923 891503988 239998656 623948028 459753758 541296777 742167839 524996872 822655768 424421850 915327654 391313264 612402114 111948220 45737237 747998938 970781121 42370825 64189456 594119201 328455674 657107326 140732347 370959524 455163851 547529782 835681174 374767253 453062477 364204634 214291363 71657698 249911014 904343426 211924823 189679857 960033561 913533161 852896544 548788682 433401069 891812909 550548218 175004976 297731560 683377429 850380205 341380159 465603837 240501259 729061142 504106765 629408084 753410799 948808182 247984436 146590994 219635050 47009499 829644301 805248426 10090912 982391843 539903943 94993007 980358192 730939034 256636150 220994466 353918834 954149587 128070790 705224882 482292835 802800363 31930990 878050789 694122149 679875985 715822163 349293317 116603677 539509079 230235718 966812868 656962211 924972641 204652098 763605737 340967135 854453532 379559505 671219784 94891791 671214439 325577639 497937426 841279711 343953646 919424411 665306509 917827153 962258631 332081974 562541328 131319001 467161876 710451287 820403256 306183203 949300662 439729706 897763942 161026332 468597813 351900400 466716564 260930194 27875770 749440310 286508305 818804362 284527775 206217927 389524848 255652263 655506877 993045137 821730390 460519308 428197276 754577977 600602637 740829406 77505604 35591515 324454822 659742313 810185474 362743312 652862399 744685900 512555160 694045126 100950260 208869303 475025127 77852295 526407449 444835541 25813497 596559832 998565142 204569926 371778188 680609545 267641969 137768531 87101130 195301508 450465829 376924179 418581021 800565148 492666552 280031914 95561612 123319207 622331567 121005646 808681787 533022929 156112159 964081003 242024151 826068015 456236477 518921269 749341676 640841533 725886648 614156284 289051441 716220290 917618432 551311481 222056454 470738845 327272014 511456380 605113180 345729039 809022573 858281285 860873377 799326796 897938709 456123578 815829109 445285647 668641031 600830122 804797345 682103930 196779249 780278785 236084953 389629251 201863956 491660338 530270946 804803460 347597609 474687850 604499932 574507198 674642823 721381098 509372024 728179720 667216359 367555405 10157663 979067063 658008643 810807429 272286850 411101116 437975263 941431191 492757347 663075710 888065166 73070600 925143502 462559033 251683691 447065807 337588145 825540782 270696262 131024465 967759602 433155298 856796776 882826989 894837167 674577234 371563036 352870897 972736760 451142964 599164273 616409430 205950023 750587606 718667274 826966015 165520618 490793381 617541131 222977856 638773443 940034738 60835884 923276336 323646292 823348715 581433381 609150743 137769049 763062577 380518040 978946054 932313344 293218231 517468516 118892270 721710435 363785980 579325408 729859112 882933350 524061395 26397710 204695531 255121618 195274431 843425204 391588352 190645242 530529301 799671174 158537866 701980792 385265221 985420378 966751509 266749204 16451445 397311519 440741963 837913357 390037120 325302658 18489315 715330774 810692359 741240279 910853636 784974083 563689267 206653334 81997661 554176667 719641551 357369863 177983282 216944415 355769092 227186423 350085385 884772325 48343063 782653547 696335656 993822129 88028787 253362373 539781420 339077089 398535131 81621275 447884231 547296556 31493264 271862876 190516538 198746609 845695089 500914341 52579145 994423675 941837246 2478326 560833437 654446425 46745644 267021400 25280436 373719275 103327102 291464212 484046077 743071638 675582063 949575333 945847399 698682398 932309983 277958046 810830483 37121091 361233968 899282043 674409795 403865201 572747344 445666786 330711469 764185659 207197870 694504889 669908974 166011690 870933520 77947782 503375227 188509992 993446971 851506264 588021856 480618414 244631833 618922729 953579487 249188356 687045527 703978418 940300407 726620478 805536048 866924683 931807537 772587564 275224009 549089220 376097406 663703539 796014150 318287004 167025702 721719559 847489325 480042399 151942696 1517968 668324197 53617676 638981190 832313134 982434583 640942214 120680920 462511459 595578569 414613975 26995377 588194723 301078401 694679244 712173653 289023099 582288768 930916131 570308880 391970401 692236090 507149065 315131429 424262152 989812499 127299689 233703014 154632694 342789708 272738651 247661603 856189158 21843028 331645265 119904403 223271566 895664250 221730640 843114382 751472887 655341072 680663904 701661208 209659140 771406972 725826700 920247122 977821164 96337914 177581789 699205501 496856651 800217118 540427870 789901299 996902863 269125391 667609004 900214892 771214161 390977708 976080633 780878102 939083042 945445097 60897122 746359576 841139437 682856272 751929473 581071526 697982424 484231312 728067100 285454687 56521112 176851436 960954165 949164233 676293268 608388375 431414770 357020160 65139526 872699165 875794761 908002877 630340706 247816853 342575399 630732644 595167728 270356027 965198406 461486561 326508489 137220322 748794769 453095823 748331473 364702962 890529260 233697020 510772347 477971851 747932086 234926176 250276071 316952671 463807020 235707904 833768490 914914856 8544301 364766876 712119119 84855316 404320898 364520265 962209325 78842525 364507674 370199822 443051636 575744811 57222333 514604841 694771760 384077076 508354120 397014387 291461955 71147018 570157666 520062248 912931708 18043772 991264699 664134992 278714498 169941990 734483658 454681470 995852915 558831371 273703001 924130647 869846912 673654946 582861598 318819672 409444230 761915790 316419909 541402601 901457945 321473981 245608091 591793263 22204862 445104785 950320778 871207034 266095083 703964284 865214115 97205037 227627180 818384909 225958473 198792793 876623154 279101465 632191346 28186450 793496063 82459566 1956092 914872425 533666761 266196691 928988576 586479646 476690180 854654076 918250264 42940115 482182160 366827865 350752153 110171207 403957402 528002787 684862486 856544603 711827598 473763342 966643880 968861942 379045360 106817192 310071983 450704893 899428049 989362818 488731727 873892541 979121677 947205316 192990864 146916960 65154622 412091802 374604210 574982983 333737004 448702704 195373658 576856433 930913968 500099779 200644021 324089698 674818571 456116812 276216696 241021607 277378151 990181975 802779408 748810198 80147494 505598491 711722293 975302003 326896942 184186129 700964002 550766640 198682137 633890768 314893160 969877226 232555319 994084918 248164362 562613571 142789238 395722338 296301877 790471282 765876537 505780051 609032348 814284439 297372239 172276584 348102442 494406891 200827743 939667721 286042294 140182437 326336944 56437135 696506257 996595850 489845603 116590860 767233616 7290081 456473179 728400689 363465387 902677223 319414811 169787738 66993505 702489275 630442816 572004553 957651489 950037387 200725268 32926303 535017869 230019708 58680378 700040330 258844908 100599636 572951248 317723474 675920105 144665223 528266471 664480925 891816846 376341838 980033876 661586499 454087219 396285611 155300008 919003966 136648441 818576599 223568861 654050566 475116969 702997730 865447014 772506249 73861003 805289991 646740150 396864853 892888338 189267361 275301356 805697178 494666258 444810272 229154762 774842559 121146617 862092312 293569448 626749336 915915074 350753728 126454272 948783541 77877300 971358613 499447427 791707640 876164526 633526606 381817506 27130523 836346130 694436678 146438085 570117794 863561838 268431520 369197405 577341274 289250136 840309878 19575144 541225905 589177534 440294930 669358894 937880363 845535808 484070487 83632310 812194041 61362521 502681295 852943526 805792947 172406358 658444087 174367709 611015304 421693811 809369413 909456262 381585758 418965766 362786953 954116288 496466829 839807501 240975686 638964893 137973331 813804470 972668508 290802811 769710080 746156958 661360955 963022741 300953489 302175897 152947571 740779376 717703013 382218191 785673285 930925400 20948855 451370392 228426762 657190394 853085948 200776257 926297474 15967913 119090807 151848323 835407375 726767695 858299798 222283876 247994745 844561781 462824501 801964658 775774239 295660342 37241185 263410554 414334235 338435072 728400190 247790589 65771587 394413996 574260971 842681986 390535994 273877804 994687059 237171993 799105394 27176678 425067727 486934363 333761789 933221685 674203018 283015184 540935069 261174309 521124822 736536 10312087 978300719 26915736 722587720 792113839 166119855 382542177 506940922 480488305 664565745 89033640 734635867 491611516 357598246 878265065 666869993 464711461 664583987 961249629 915712315 938550959 723471988 202795388 769731122 832391286 21107851 580146871 138329771 693009148 848925846 810965115 385536452 562617394 424536048 449442395 739535582 826093427 456907293 519877009 769696642 429301149 978716567 911053304 343351667 855100774 199384129 538238422 842634495 357138970 477421546 561540201 568391292 467504441 503085291 919818244 541331090 877205395 185142414 20459775 577913442 793292828 472401024 223857110 428377926 545969851 757107559 999988961 636287600 591682016 289238967 577137252 493519232 379054448 925195447 902585209 34653100 160970306 879278987 382837306 299318313 807897064 33577908 915936839 210044756 628137215 506741749 271394754 169953925 871535659 299904758 901174426 797378557 715224626 318833752 167899562 48575757 917325819 310289302 979964662 410186597 861188461 953446408 852687820 803257891 477256179 838539225 311019625 802891194 211626618 338049974 689958839 340577485 352229303 669527226 9614413 652358143 188609668 249326562 254975060 262201631 122214675 502834456 501973775 295291414 210757217 67813372 558205067 52422331 368865546 704065693 378276309 284449686 191786086 238058354 920764018 991327948 694464386 70246596 792913099 595940430 98304419 767768883 220851779 736358175 371118553 448002975 429636297 658042132 544119765 269219622 409476646 970685718 18861431 351031340 604682178 40736195 470363600 269796842 149101866 198262704 624884766 459807086 947950861 729582111 713722635 24324667 68218635 860114215 99782991 680012333 627740107 647560604 116553150 355480824 130846602 212463955 847573121 579276946 244204407 517718216 442130842 181337494 51920847 40854514 855035012 758630667 248861456 268617873 80610196 996074325 901545292 126695048 667055543 182091121 230219266 458203317 525528696 790606354 567817307 348517785 807912852 491616825 185066948 603573006 137726842 791669583 90070125 572973632 754575693 659846618 149530977 263800043 29798532 463676701 591659500 459249165 152369185 953445314 157419703 351116456 434554191 551936541 804084531 650028645 899459104 285797327 940721940 736011099 56265816 984791961 959083777 989289852 700225086 775448200 629915029 262862122 405108305 592899468 390847140 252851347 85509016 105506113 300073393 733051692 593799378 799506987 347545599 6405239 114857772 114649486 544851277 371382132 346903075 501751370 102305670 111113738 317890431 113686209 520304567 800428722 361828313 470587218 638277737 244787902 459708426 140384469 9095412 166983284 223081516 820577674 392205468 436451853 815171850 496871119 611480558 245965882 154478928 891954193 224120256 985004362 37577676 36178242 715192289 303098720 446185943 986566172 338553007 672428385 435510509 145818178 424108347 553094276 339369846 881477107 753878873 846773438 820106786 393774659 40357748 605397904 203992344 926980968 316529772 982401716 571014032 346440634 78577938 800399319 155073753 879381433 697888102 216270842 819561933 52450052 186032918 232677956 94055837 995997765 517440251 481372071 810874330 134986320 722242785 98849094 734344281 167357536 227407688 264193097 171286280 824964419 226670050 668166297 416482484 337060098 969138845 808849321 718719438 211936182 767162866 499612660 403020870 673942440 87543805 271202474 612665120 319303498 902666033 713446315 401864906 347432179 229093733 217660990 442587321 814563994 544638950 183769812 138803744 818914959 254760908 696757689 496074653 2440316 535152242 24286971 622989305 414149333 359605210 381687700 350841757 690297008 881762506 95623965 843650864 15579106 796377862 492652686 376039338 517057448 535369458 424494156 575828107 82272219 59712293 59528705 916697173 773347676 366200224 83846309 624253188 295266205 643430445 508307943 833287215 797720166 363239200 36896093 164477093 84837394 960573919 112394628 352902771 373056177 957596879 68059441 851049724 696122848 159011469 331447815 711022762 803738917 279405337 865986662 665043500 196342838 165367536 895752526 375436907 637339511 621243499 176762663 70240261 460860086 206769303 667002311 546321393 669751248 295160341 797702406 591566609 162766308 291000203 480723222 236908846 573864155 788221532 26616696 949771742 112784762 478408521 142278571 951319810 858252141 985846407 467502984 948377084 547457623 459657922 936172631 714046118 155221361 92529262 104812631 717832207 629925296 721928036 627798899 693685286 150650273 828241322 309503022 642165198 426340632 194354279 893708386 880068938 190412185 756985188 913807040 345297467 233027136 488776340 759973874 169998110 68697217 272760881 962131337 529220054 934986707 852644718 81381326 906585169 141978392 103766467 101397138 682779916 247787218 951848213 858423729 678984087 652576615 935973177 188084853 949643197 10455613 66577996 303116723 807521760 441667206 724735932 938892441 631845237 989084626 685185454 801963484 146660719 729665877 732124874 44314190 466344164 363402349 269200922 502213837 505788545 631980204 748153858 125126719 788844260 771113814 153595776 644831988 565189770 878950412 756815267 695748622 24617675 543825279 881906144 900361515 101107283 128193520 877419324 662732689 617749893 593175926 860375433 294653967 151042543 34887312 364887377 850401252 219491303 184024875 546170872 163920777 225153522 422141327 964009754 651127630 502922145 341933970 548530347 198565840 367093012 432785904 643291320 292661767 929113014 76026497 372107426 613208053 517037894 501520895 100653675 353030660 751927878 357307939 552586832 387403215 78895426 374390745 396516804 359650178 572094212 326430278 402361020 988928139 544937881 192934409 203177074 909388014 183757095 814547783 937293078 743131442 467300273 187719494 64798178 471393416 825189308 123672085 899379560 241988095 348075459 805948950 579548961 204898693 403742003 744146178 720616649 92712470 832278429 946067773 799148702 925387883 696038548 368847601 244420103 646797655 697982351 472016383 510071701 504773196 497912970 291587790 579241481 36074652 618221901 18557627 486761935 214625725 663032447 768626386 149843549 232087308 25976512 272727016 758781963 886069032 864560666 408715846 590443251 530808549 83028827 908997304 961407296 598945337 402744491 711483770 952538197 212237772 374962920 663440412 154500722 655638006 594788746 659115577 690290742 956361059 238245753 243043820 323436608 114856286 92390195 134555771 595005066 504717201 229528637 845332331 75613137 77688359 895058323 505468208 710237584 440849934 574210440 266251740 293506972 178411692 586524444 456689282 163632443 229040099 654295513 619849856 967437082 508261329 590016863 924053998 102030734 430003195 481357157 557217776 665678667 737131215 733987519 460569490 364179870 715815854 573880489 296680370 898138280 839512034 357053527 327698594 396144880 60907293 302542631 734417613 171826606 37143691 489435381 701099635 10766126 539088783 726264377 600556843 641010206 32242024 37353948 901050776 249585829 774705079 79504132 519546266 8992813 516425506 789179658 134011843 825685144 849014323 42378576 605148095 11816911 654711300 553726899 234839151 781189939 569422457 460635963 145408917 930970147 700000784 460601899 736725826 104175803 944418856 315936435 681288430 599009178 341964850 97364885 258502864 380456767 157472436 181185127 127012165 852935582 822435449 46153343 689456765 159234900 743001827 301335874 638690955 728504242 803533366 186860310 938725198 922097258 991586066 735015724 670437150 807262084 539292097 266327675 915662315 524742224 252477829 834890671 490914559 490080127 778201144 725482390 400122208 960727496 624796344 832525536 462725618 374852882 425753163 548199841 778057252 635542277 905917862 945215395 749958593 389840203 731268048 217636251 830217720 873372206 157914677 72561217 295452904 590405507 688880279 485894998 105931534 703542579 689617529 7164525 187028402 589265790 50637458 622040866 596793267 976140700 793461103 425186637 200408134 495180657 66142264 563842629 183516625 816963576 966712043 292559371 245690389 542021951 700596041 350162006 450970644 516144510 959214254 497663338 805379349 557976648 209030976 815434115 791819505 496171950 199675302 553429394 405144474 655840652 815290176 756477727 253261570 501074116 361474740 654582841 280298936 837610469 916501277 534109627 684173021 473784176 596718169 155169618 760268884 913246878 708048992 323521464 367974776 715787039 246584159 304707928 328475498 262339842 120077373 791481109 890724748 335927044 937405903 405276403 790850686 693027101 359231914 615013291 246983645 497471282 56570301 396329858 173965807 672827689 35728866 596016791 925689230 313261921 209457784 541592289 671683601 622680194 849931446 828167227 271859473 784240977 808387992 201815271 906943684 301268989 713917209 203169454 979871966 194722102 96595487 124371464 138526381 170163403 801197575 491502459 146216957 408719426 460089625 715368740 468620758 327208766 763519531 342718370 275529659 427703176 249062133 698366418 548474129 851057033 688058898 766323018 528768449 575113700 659582576 179550808 609051063 462312331 115670571 771291621 972220899 740715990 680130295 841098793 509297401 730983797 605107300 525979582 162198149 323592977 894837216 885969797 81832347 542053120 233474098 254838642 640275052 892829464 767265940 729890868 771131055 24606580 537030110 277818148 44428367 853235816 133027612 696930815 428880041 31585866 101697503 149272316 742520164 4507918 306546164 543072250 1546165 358795931 828966107 281930357 323411540 704248335 981251857 898837405 885344260 612708057 362777221 91857696 853473705 698006937 579048790 339914409 464836869 416077994 312009495 587449763 458623833 515968447 648091874 275743785 581469188 436510347 270355842 752377805 176138047 774698788 140988809 935901100 112521864 465394138 776697688 700829517 171910377 199248214 615320017 648019373 999224140 950770009 620745730 698012223 547313990 10451122 802415061 131049450 871238730 484494617 878967212 710862182 275823815 165992953 881694813 798174471 403449470 516965790 106765740 343040343 271574085 271755815 699351874 8555886 482524503 11556744 622809752 635196836 720822652 67259746 942050222 612022700 765369735 649872905 582816686 996632885 646943355 843151572 366043044 676287815 512256454 959752335 17114182 685410476 134605636 274126470 190269770 772624821 53755002 725336218 385553894 351878700 304791537 736778749 224922774 263748371 931872579 828740478 960860253 758084114 342864760 900532783 961662876 103645326 420975469 976118726 372432295 912083631 457316035 256272862 423708784 550987317 990291431 808023662 723267164 176553671 902910781 542287985 683079429 732196200 705623833 22437215 340146908 505924363 886052642 769350076 886838404 644997767 130603750 891185653 228337313 426991507 203094156 327613938 981359456 130159951 81971550 952472268 221046519 78252227 568686636 133891311 331632714 931566945 248693348 987645813 493750172 893631632 153479274 680065358 240009144 602050171 523789497 935571327 932776629 709788083 604706520 542100198 158606508 149835773 707901436 17716249 675372052 155228384 870755007 206221918 5276661 862905448 480879939 709641161 458830995 156801380 582355005 367404810 644021391 47376084 87690883 525226998 286215733 615003945 277758588 813897188 569844665 268026938 283788849 651969321 996461715 352300519 851639725 982953277 531191614 195190105 590414910 59581489 473887394 426690511 424785414 116194556 352465146 441985229 202945194 859655707 449590242 229488909 862574008 751319604 232444696 942099756 434659380 778648585 18274642 451620108 268285578 927526806 853113100 18824364 752422847 785183684 812771814 189998776 78665618 470966536 122900393 785053603 754062376 581363833 328561960 831902616 830892639 423019876 419286517 169869266 20445215 264196267 773976493 132264257 842427194 339789798 693271578 954171533 796697409 744493222 385125043 672295096 287059276 767781314 850087611 479339494 203100553 270084711 432524674 617525910 786307763 245330762 876034840 406093340 868118314 138068096 631302108 333837623 101408952 703399764 169175427 683665579 241278603 871273437 262556449 396523618 679183733 163938368 556458542 974797958 131228638 536545487 570030060 212006589 833391412 826222364 549899516 153401798 786139829 602055248 985081615 361005904 759180497 362974152 920007433 894927117 159228857 100022216 532437194 566723753 614577152 496841827 852576966 463464149 272560841 513957884 263192217 132826563 158765557 428662313 453199267 400064877 544309344 596755432 705897291 488073498 297914290 64227883 228974256 429554503 313125239 167673800 423558900 28842173 925741604 852410251 636037087 15687466 296909298 293704113 376452347 587273034 197181567 821439821 746499029 956985439 858452606 996928629 103895569 502280916 174617048 100222168 879506834 920956874 654977340 223981995 971989278 397642897 348700449 343791492 954405628 191264582 111774751 980137416 112604605 711036014 823033677 635947684 718693079 972434671 134119454 368118488 501120859 436484559 759645748 355771197 873967806 171895740 511637626 742839406 654763358 744139136 536303267 339944383 93170635 1227594 800326688 619661734 921241466 843571290 736633757 228566351 886129874 403784516 781685276 709274482 6784927 373336663 704453804 424749904 516911118 608168763 438668905 871086071 687632558 787016505 868308781 439696512 171353525 758110014 661284483 692285162 580013968 415481336 933653766 96637243 163312631 446175014 177057374 465468402 22787144 855788930 546104088 7863461 570455019 665364485 758242729 414710740 648019006 264482505 948233048 334793494 172207442 237646996 899560746 371575025 985153858 433965388 358891875 242339716 861714873 14565334 741510837 263750389 684015388 595620127 764383215 341640818 831630372 227028680 260566066 550032785 362622981 228415650 88680635 195551556 130578013 299913934 632697610 763602070 743178422 427161957 930258599 755341466 39640894 332615704 732442344 907230563 386722972 733249548 667048174 146128474 263262268 928206424 420630014 639998019 900340495 359907474 513940289 683784850 703196489 424553636 310654562 437260039 823258685 646984723 833337358 1804359 224765119 434585754 175110184 347132820 88234222 302102182 651732623 788507376 739592719 172756552 913402947 244949727 653203257 472450948 950945403 842094632 313709091 952278865 903672817 815616893 485632305 32870372 939018707 63766386 59615702 58757869 461330366 496997902 747873842 556315827 109761747 57661072 271565956 191452690 109207807 52043869 739795606 124532744 681073475 160079548 111537634 687062485 467512987 847788842 350375567 802470708 127781033 127516909 512200987 331239374 812651029 169917894 762809454 45341359 981567887 558885471 777615729 524669452 223173322 356135629 349453104 83886370 2270898 9754225 643074249 908769713 292635123 283378115 954407053 13847650 843132773 761598180 721780524 581765282 707316987 507115143 919807040 813496356 416152573 192498132 86942948 729351443 815417377 133039365 639296401 559556339 493316279 259763341 54621497 384851198 360397583 62474882 458359548 113588739 987486874 117951357 584527105 815360401 964311807 31293098 826151525 989789581 45201268 383510778 951319887 693067971 860149716 304339040 7590434 827561173 885812862 686405103 196841640 401276677 799874030 512020378 865047802 508422669 954720748 785176326 953070936 220301618 921040287 591876202 354942555 863160385 611326528 6113022 608591386 869997736 358379161 370307550 99630273 313662672 527880321 969174951 537510537 335172378 776354086 492585002 19115300 722001539 871768576 847504893 863836968 434118179 632014 316870850 742106115 516745877 200060483 595714978 671900553 531848171 174245213 42417622 813083996 501210990 471754994 730799179 909416387 206095381 97227488 996819723 352113334 188638776 15372067 705559068 583757853 373143947 505567984 428206794 425926331 889324997 107697409 892450079 70343522 823309917 950996236 664922978 233709111 587541271 440503110 457336630 543692622 485106761 907190592 229557840 253932283 832629385 81173025 558007400 607851311 110682626 746212319 687294112 557526950 420071569 526949270 711477841 120608801 213960550 761352541 674742890 594566177 357364677 129082806 91193004 204808157 305325420 216830104 653012214 938932845 476250769 667733648 954149628 85222935 535504095 101506373 53939899 984594377 813476822 423467865 296459379 877228270 697064101 939950301 550906218 289599202 784498570 480425160 584590559 511314118 660401266 885073667 486207252 802276596 3700686 617289257 888629043 420716442 491233671 162426087 505376538 486486843 696741725 259367093 631394505 172893109 986659176 489015992 636940018 151517886 988159502 823753215 438544039 557954328 885352 138123027 531485397 513862936 252917812 58862917 322314899 354957659 292913900 245697661 730559700 35602620 201846497 578374921 778591055 338619596 471045294 806456675 407189082 476272564 667115287 604194707 35257599 300124286 144373446 53814851 196906000 994627079 833209169 714926442 432325377 332122528 663656554 958473054 447971413 11409040 330764522 825774804 315309121 968402033 365152333 986842721 24001876 129896205 516560684 121014101 979735097 212069366 603645353 438232024 892455287 424473535 412274950 134660091 261550126 339940605 96147148 217638907 83578795 649659978 745438472 831127463 317651626 39814723 534102680 703623176 160844903 751803484 264455384 497813316 851263679 586216605 605777861 169570940 489550180 662959092 706688395 675097915 951857916 123768948 742445401 553984915 287835102 114827608 814498533 916637237 294808933 613020031 699587360 556825726 860658606 344208337 257752084 851541834 3989839 414962911 695396312 445473650 619770822 327987363 952576819 449498886 524805272 452060086 48322492 877684087 864383793 29463850 999181488 207054808 98582683 315671432 604660207 552667185 52636715 9764775 431709213 974009136 164209264 811773564 758755891 162739060 218918441 531485037 124693679 65258624 527881026 163795057 678652214 190695578 67815750 534184749 738777806 712278347 279807982 192528582 752399409 913248021 580865971 326511003 869578728 21984395 607693069 630075816 742751943 401777866 984364364 147585332 561611508 646887687 278645133 978319690 832273027 562336132 945054046 250788335 295909506 113986886 267934494 518731780 536459166 787969794 521496214 537201101 847802496 862803358 66263509 215201899 511962164 227161097 756613180 694658943 812198850 122514055 505087032 955329172 766151681 888422256 97558600 11909471 445083019 373285377 957838695 81955055 209108120 457997647 320146646 843872883 816362129 326866426 628028386 389996761 48208341 729021904 549505146 652408429 677687499 777625808 711660041 921292826 197977993 95341367 293760480 539719532 51455127 135867306 9799131 726165467 144976246 486436196 668238110 693327937 514309960 368716373 786144964 321610962 298717954 463410143 984531687 549674995 5823510 747115035 672191521 443586445 549173449 153448342 826001027 438616589 736883835 570221649 495381054 699145086 142685037 717813322 19252924 948401234 220166848 535358453 698172238 417739156 396023360 717677209 175374988 769529122 294755454 614912406 703869960 595352272 726908306 733814580 64238131 300715137 468839191 761419808 737469711 947419343 199232746 97090301 212705033 454273025 882203718 653436893 372447399 27132621 714525977 619379325 86469310 153575895 449931711 573871816 729859747 125535225 173286909 670908781 95910544 431864846 511236194 530949424 321443065 34522658 935300173 409509321 810203269 112731429 613012479 609498226 136300900 824068559 570955562 691854274 120909058 298998963 100090124 437670317 311761208 326164409 718515067 551009311 307074020 560433677 774683066 464784739 844766740 558991838 975255214 762944709 814360819 132498027 399492029 583125567 638144083 66404276 475471101 675212605 647360630 616620645 904980014 494254779 356858558 301957385 476933069 927608326 975486672 389907719 55988577 718243469 246288089 34814930 242365905 845758795 887112971 665310697 292091282 82660437 1864711 239571203 266575761 503380774 718187168 189921367 780509172 618843994 735587177 871732708 737787542 511443633 60073807 733754562 684049181 867662200 789990607 38475468 687912139 331321973 187698954 954224598 685035068 781939404 916275024 550349640 328059238 875447861 621175872 588943398 780711330 928128467 5238442 685760742 408799542 779302384 858511283 25370361 374531752 392716343 520503985 667050820 246694547 545644324 825867294 52200399 936262423 35502452 971803416 418690907 700880803 908202856 104784620 304329911 985971810 224310659 722816335 88670313 819545154 281221007 551881870 932541572 105419011 488749625 142758597 572295682 661017871 978858957 880676198 951738742 928794590 496415152 821034294 706790476 173340454 816952043 227010026 72116381 80308470 711546949 964629842 134597776 102756560 807135893 206053866 953424992 339485879 755393028 216887910 821101823 388120302 258595105 807548435 788906823 79681937 641434624 802211878 806870311 82667941 894551757 581380301 889030475 844846755 133728091 138724550 45225226 727958808 823225063 931462469 803220086 492658997 303634486 7989051 764244078 350774672 809536320 644784627 652620041 564683527 831235393 784116013 931289261 499639957 806582316 624310192 467011349 556702434 381437118 321243547 287578554 348927755 801190432 957852147 196597211 811221159 887701092 718417847 190759006 629407883 583624149 85799723 655687688 681279247 99838958 820342669 491431714 832740334 173025018 481582735 672162259 337472312 789878282 139023632 711586773 301786686 547370540 471519215 718504366 257831799 44783973 3504515 183271804 456124375 155148746 539431982 306059005 822573121 791813294 161219309 940179653 356362713 902963966 136692130 56554775 932961529 634844204 690871797 785545616 792202755 177799109 624614255 965541226 734453001 155185859 919676769 84633843 894057986 46613421 603792238 503726484 673641243 365465701 364344938 393241792 728791230 712392780 775575079 173006288 691085078 336254247 411568634 503916374 854094207 901987085 490307528 165735906 491094947 755729897 588163812 408699860 705894834 753904043 582057542 423432082 327467742 395618547 294001277 736074197 558994774 569343356 702533257 149744069 424913397 163757255 3952136 528737489 821139765 156818301 729757573 305444308 356545177 197604800 268929696 455040642 758863321 153026965 347985608 754188863 828202678 995010059 841437368 91841872 558725940 754394360 898180324 558073193 430223136 225333928 84988507 898058683 894228985 251481142 755362042 492664958 379825716 230862009 70381969 413961111 560589415 327248597 532805341 620663255 307703601 829281665 448528453 6102330 745759160 80878723 858079352 966549105 88142103 700720085 564118937 523565618 766003683 759385868 656339566 768376870 482467064 412694184 955872138 706631234 12355183 133510811 294292768 110980824 124889521 938718856 614448318 226421598 707277291 588128920 871270129 576297226 944220815 482636983 192459235 645431761 970182673 225928304 636061443 616914745 960611907 635899435 50399860 310956991 562209414 569711730 383068216 820022875 907778085 790461843 441983684 449616152 242627205 460378462 305617923 442779617 207205646 318903408 971073772 274840282 735137487 879459916 678090243 138781387 91172099 696075268 425529766 796958595 186811034 503660102 359123644 969241504 829052406 253060140 108880228 745739537 624281195 961995883 592329648 326619403 621594413 562396586 122447866 606533862 203679730 568460386 324644367 899484548 454999017 596407358 670262051 539280753 507987606 940304438 797868402 59832845 208052077 351812176 571086114 564219685 273258066 363397306 115681002 381086367 841657320 792294851 680056655 519319792 247983011 173745745 2915310 179556100 90376566 180823962 912966711 947611945 64861416 445875125 944390195 921696903 665854413 350311447 861587078 912233578 538072931 525168797 600614353 686141624 813893721 507283486 351793053 448387616 397268037 538213842 958817737 968222264 406321194 324946506 59801189 537675125 1145913 422914065 369361216 539415361 839400795 920202690 340508195 995570279 844565705 917840866 92279387 55549397 824080867 348500044 3685250 540810195 39096477 11734133 417991120 567977153 278271106 179325450 476851980 741899890 549197136 644274119 320045016 550941974 428278389 992865072 950698092 820461497 86269811 678978894 770093871 260911064 212232023 637408075 101660442 741684746 969121469 81679498 515139287 926976560 783966947 227739134 604592856 978933143 644290434 573990617 293275673 720915118 655395556 701093761 48036623 576808889 654470887 898300463 982701737 283979936 222839905 897242050 279769449 666978664 296400866 808156914 660485022 164493785 254534204 499474142 386954904 810399689 219296522 203388486 600726637 289503422 933344458 345071701 216260841 863184707 481106499 819206409 788217619 243075995 674507726 883311713 3472073 652305161 938145277 348163400 124318363 66807253 391389218 348463280 362328960 782410422 776521808 700683462 802356884 808198258 570682059 878116157 208575848 742384788 527910829 973940807 489494396 529524569 911679357 182805200 69612603 610447457 299397636 451703737 325534728 768168342 858185768 866725467 79254086 4713423 600549570 505012299 708037783 847197795 263388552 950559545 931095635 403621959 187151368 222643792 588066643 777055089 10740082 212444357 363067648 970364980 989204358 301662955 129806665 24708430 150020012 991143847 491267763 652805272 4365128 999495319 550935987 163216617 844285606 227592129 356789601 230935971 229122115 813909133 537492832 486760330 720780137 244550743 791299619 377810179 235635594 497356438 2359313 717682899 497266200 68996321 757233281 890676232 737283866 585164292 71120623 144153933 716798424 526245846 430205965 967476329 296470550 332877338 39036591 193852475 25071471 995824315 952837944 247374086 242494574 924679887 292889943 789135068 310859091 157629408 401343918 571277915 936610703 497138013 771372289 530248254 829943985 485228136 132682025 633909530 464367686 43071086 462160079 528734792 789229739 63231791 533652554 520132673 477528682 623169458 706623363 628975323 585478332 475654862 623022075 6669155 244004713 757237312 509377802 353380613 306705452 643388745 756267620 410611070 12365345 298078256 237534302 981593184 150219656 158305217 347145597 503536997 177656658 266479668 811989280 30179091 488320102 530073175 996128048 795842467 99758709 336444145 752578129 382694823 907107741 553034554 574126717 119703569 426961247 987126375 62463311 335650268 933669421 473750990 631968027 152733522 128207276 195618798 388026034 750994077 154303671 894091063 123233376 169184458 616080433 593087748 882344283 732669339 724146736 335577076 692499249 345702055 56379436 529338586 654000682 210274560 952430738 69906801 1962061 236210893 756774092 924910235 447314980 465893333 685797189 870029167 60138387 873795393 183592140 773124124 592523487 46827803 471023131 138366788 306974743 173829634 444106744 347672667 30112162 605745709 420754628 726895943 949312143 726661316 860576943 891192175 136128264 674378856 96876910 165987870 279752493 741749169 493093617 229776419 116755942 208661684 631871172 267267197 57862513 16042854 638056721 825760840 676276886 724004195 718394113 14231830 879680504 373922816 765352297 563362468 81285275 502638134 772289313 7803006 67521242 931173359 465972384 703857105 108356164 908467476 404549210 123085553 573040845 349315813 79723581 195182483 963606204 169088908 514368084 708482760 536599926 691624185 512885974 763880871 770892341 168678378 327584891 755319749 511135302 582061618 408223803 888635256 248654 829881616 620318011 823458181 141081535 720604424 227819323 51820420 617918775 589116485 861672114 638870756 710439558 230530735 206827066 917014621 418152975 336493063 70972607 434212309 96816128 359689213 574880244 158315425 968762005 310949250 869666715 803771954 289731624 532575648 320402036 374356798 721173005 947505038 471225045 279317175 573771603 261401001 513662858 378379069 351033403 123565566 81704722 463491740 885517600 158808944 593887352 233379787 274202161 603083801 12977888 857493182 944066056 132840465 876262001 981822932 668560849 92895636 782616150 662128720 365085723 931367005 806482115 119752903 382652997 754057559 74553955 634117682 998277534 494654218 821042905 229516943 446796028 287498503 902850565 525757315 678120174 171535401 758552865 599310634 835395858 539009865 567921622 148588346 153524241 130976765 649163465 820251727 869855595 413990025 779656688 10296966 325487326 213255916 892316368 114156563 150012495 395806185 578675319 6877012 859357137 169597925 105660791 278690429 94236893 844166585 96368450 886982992 636588852 588259555 125692988 971095056 269352851 96343554 174036917 578452377 403360755 839161006 759937640 232013147 485223231 23845648 137459117 809327515 227173520 271948994 740725001 273189059 399405687 400170771 846778036 806667623 432036043 108358414 333145272 332218822 218597708 617294674 493087325 48345662 954157670 550581298 786284025 143509032 625250934 343521568 290762758 782578546 109651177 24881195 415026787 49749143 392632770 905962996 605543941 530973982 132042259 175032201 64077365 466011449 154390785 310123228 831540652 162799118 99737094 691162390 685964472 796900148 239770259 813161415 856063753 950692438 376539677 95108554 294235186 225565182 865623985 486421247 224774136 238115527 646732641 344460114 181900274 894338604 428985742 780574762 220059967 273990794 705791914 769785719 17496457 769479222 234160894 623115900 133146130 720354409 439020338 615028767 813692486 653187323 340080709 438684292 852841064 580005779 923112433 587274469 826161395 330989156 511666007 999199243 188233215 729479456 128508563 566062223 887315599 804302505 11962121 486150896 635286192 305318965 528151913 158120230 443827155 495153526 189708930 59511920 814493646 452195222 428439320 710641827 518381618 478005068 200623942 765053974 457982958 737359617 639891951 354631848 666606374 373558077 839738798 727170042 714939797 763358824 855167045 650368186 250797530 713415085 74748714 352109970 883733320 294102803 349990535 40745735 487947861 835839261 707285900 769431645 330507728 273199391 225897859 57709435 697137996 98293199 169703632 957769570 706773038 163746395 332004048 166084164 32750344 938694930 66515424 77334337 518766687 733053974 161003448 677973031 637996981 394594307 489368686 802271147 6536665 196094974 312252012 259846359 934292783 336177777 34042654 816545259 514841669 269904740 161307905 53132864 459019186 38697736 51932299 231987964 113614455 977512682 643497921 681722575 204092785 806005489 707694021 132867651 443437398 182650099 934678680 420366763 312257385 899034606 651343221 758792608 547516018 170508798 574697277 854227681 889197910 680166026 563359285 846955392 41346828 726239379 419040195 741931589 678831136 74149179 693098763 648177161 612559473 735048478 272228705 557032623 273478621 39476416 419165198 943565020 260159814 767921145 135626071 710304409 373334653 208958857 254044682 616797964 298804013 633773310 381892616 103393475 231584471 884993326 4958010 738350187 902833612 900991547 953685588 914245278 746607057 659959121 168331854 699035011 630537120 884749789 76387792 928451683 794764602 869425023 182454027 16067810 813615528 244664357 343303170 659704660 936503549 432226173 308865498 968091376 31301648 992504986 195193976 647689646 643375959 987579859 673164260 910412813 253406223 125911568 329680866 922049279 968897285 704257861 156350861 707416079 547117370 741221307 552591433 491771564 867222312 717789237 87738513 863237040 33525001 906918542 346098066 850545180 489288164 69232918 312857560 314855201 869319931 952469418 385274967 829529695 491554544 209661105 927935220 327089732 17864265 478187300 934618828 292544709 912332657 108395627 395178644 678628550 437724396 92026952 289464077 153530331 422510436 361939592 408410755 900688418 613549568 547173660 201058600 816308616 349170438 522860695 427747531 584951656 5188739 63032497 638696657 777915755 512058497 659544447 24620850 590779465 97810595 110806794 117899788 412432233 968529547 66140147 795820890 373763657 836017572 461268177 379081009 248055794 25775080 105719160 612900423 927891054 705773364 518890412 754435890 811728267 915850538 250929818 139054054 61836434 964327891 90696500 629229677 245987943 329890049 988158777 875890896 355737806 685071856 373415392 444030385 243967739 506771407 625694795 372558261 699240190 17526930 611489567 610035923 919215279 237903324 250309710 272837718 131218795 860879314 878490391 547461229 517040395 183744410 999917572 231147030 270278133 901303641 825931350 446618027 937737378 819484345 348652869 640861971 910860088 715949760 431281321 601018536 305819338 951410249 597798646 880288816 97864849 890762265 62771054 79031758 406410039 701434326 418864903 911923133 333115848 64680593 544820049 322680679 860467092 8577488 737556662 551701150 573056925 220491355 595785720 675717383 464697669 687304544 321147543 213244350 124454686 432552092 462210113 621710532 852364035 227644657 413553704 518837277 627372668 283321651 314777539 236273944 388565876 951421009 300373598 859589777 21524970 545868904 103029209 548776184 837611164 65800323 689655194 132475556 90515758 505400935 3340062 652360592 805906854 258435388 932433803 53923953 353761718 327860015 662542664 474338769 341040659 946812116 542945104 641355680 385152405 80125043 823408743 919846060 13018663 8289070 552715136 938491433 29339461 155010925 847645982 232244093 255062720 366023173 457499416 808472877 290999780 606397287 268453762 927071848 240991599 82605391 870959844 365241811 482661573 780949762 927299181 225452667 377146378 698945347 402119453 771884616 989957750 179154449 462892676 837028074 623424142 89805595 439381977 804244330 76285727 704192799 667401016 576936724 942497342 156837877 484940602 845177552 285605511 642082240 363230074 992998668 769545547 205080857 477744833 819253391 725475249 433956146 396453143 424099072 687067741 201443200 606900557 795460486 541886455 813896975 892082006 304802300 833418638 504821680 664167811 488528028 896897843 875740858 392818075 580583278 28127156 630264640 783876008 435117173 949770526 265755879 299310130 986056692 878194450 144279131 153214177 888453545 857595019 590294861 897864625 390311589 241838323 357380909 945993395 10310355 360074749 704095711 611823901 109577517 269857101 310822602 766816482 678717025 310175732 336784156 799432061 940145191 716634088 123824622 274285299 433000937 285757449 615157692 794371987 929437408 926960415 377489367 346138192 302041112 433458660 746063980 785371348 835489005 835611557 767692246 139384434 499800695 869785633 764967302 36846017 810081445 215686393 619199839 225447590 564427380 191672506 755645372 619232296 121706409 981642934 626335914 957226034 677814424 534651787 566940026 742021975 88308155 965289983 429615608 325130082 241971243 327878759 331438940 903155930 560996899 394579282 508953995 810470323 959449192 501459468 633116648 442841138 478987530 961707989 796017632 235469626 912704941 185367906 154339952 517886048 465624723 731009890 737230757 436033255 619430030 89562621 29951540 286077439 394091774 806054066 989342116 246287807 700459933 524114105 552363043 730198191 620280497 778490438 745358065 172438640 960248521 382537737 504721758 523083180 612600562 407574986 117969585 265509108 777871576 15990236 807211817 596670667 594052906 420360386 617288853 154024984 421877062 70381043 815828086 359234184 574038290 644746420 913488652 792281411 532798916 474752634 862996322 388926820 108883184 651593646 156269219 333577659 695621058 835459742 613420273 316407051 831175765 479592875 639802345 934520617 909732979 902631648 761048731 608890006 717124961 476583021 870568393 14159258 368474428 509197981 120466256 219274693 50744545 974901356 470177675 138260872 375146852 509700515 607040779 279784225 466413459 557824901 603497145 132749213 414933668 20903588 296689498 216834265 749191013 125236845 727699435 690401115 260593642 796677254 456723247 316859066 676348987 614406926 567970013 161457369 288175371 331838564 353015267 997646822 36662894 621641279 288949053 291750059 612987189 608452846 174265438 291383760 918679355 582507138 634056701 432370761 348331779 387043722 910062593 800163577 535152527 293100289 108958454 731319678 407751721 218608268 476427162 587357594 216488277 14789213 465549965 503469584 953573942 125611055 95350383 188830164 469169405 690647801 637829643 513244105 235408195 741688733 619778265 246945459 477426378 448712573 697462267 83403438 817334989 79353428 746483548 548039707 216049642 210088327 476654241 481968660 193941252 323642612 465457270 251165983 131969849 50416321 222138121 201260412 3012882 340621157 439766542 667855969 800447360 184216041 706600724 420719032 870153787 559524056 480471747 835895878 44965544 892812303 408482543 746414236 44795940 560587996 533568764 60748192 301518721 376518738 458361895 914118150 435829072 519014869 356236419 833077730 243739237 265424641 360080990 2055712 750041839 80157555 544805179 674291388 889320934 184743766 505159769 320553467 15358524 40179001 528500353 149510673 722063063 270269684 369696196 998722849 405948238 926431087 534002539 595056571 284826871 38862492 43298904 714250886 331201484 401253107 893272259 496601925 729372755 146096873 489232694 889572517 279808462 99013326 849214793 989015024 570942971 433143654 696754102 890559734 811132454 409553829 605084774 238860548 558660644 711204281 865111755 387737660 726430653 906461106 354074448 155900187 164670345 936060174 289829806 114694691 651663838 191995998 734696354 254505816 112457964 332914323 940530859 91652000 460021780 564697341 106243530 683934041 796861333 351035695 286850995 801637971 417508867 880764676 551446242 132899204 204798337 772620111 195717925 271888432 875545685 136144962 629257356 872833256 120651446 19049518 554667071 419812733 340600211 164162308 364343828 385987132 325402475 759801175 959503005 475807600 99203272 137255878 92330011 632413127 483686334 548486277 843770091 399094665 692067609 270165381 391618583 54644709 946472511 558185799 868466763 4956571 913150743 118257386 473988112 835230401 782893469 688314112 405279033 372816047 703625676 928598708 361770875 555541774 339394432 290563762 11976828 613570819 646804662 295253329 878577518 108087952 275236701 275837456 891949284 531171218 27061952 358484329 996319510 589859706 45361741 833494397 210674474 668618458 963360007 424151381 399052728 520193429 177060404 56125909 238345539 335171544 359733800 432777325 5334832 476769381 367694120 470659287 709690896 64973720 186791792 711253174 600627986 823898520 823335616 218201301 497675019 499461245 512724258 570452515 57967345 147877612 263359982 640204608 617388652 796782668 608135687 101554103 435698916 750248125 830044516 833980366 11566320 738615184 402735969 518415110 522660148 769126721 721898752 308684684 273728148 411197822 616008255 119893821 950336709 263174741 594115441 740036275 714847057 218265345 671272841 991277028 427317863 895731392 579842026 628896922 114284254 934433047 954361235 307021193 948054995 668426983 405222351 879583966 648515246 419845104 29644219 773591067 228739967 979684773 872247015 486712963 173712461 530435805 194490980 528871056 648548167 186003250 413583649 951219168 449037247 179198278 487903560 39893059 21885897 741093755 721737339 186283467 314878704 742309861 451660430 789882430 33480889 829238038 630397338 20970575 107199019 636044780 202655063 84181106 546234809 557724178 511084146 8482313 54623913 897941042 720467046 110569378 848817472 989974316 930972090 643953738 358788934 361192078 823089515 874509484 295848167 568818921 876098059 91699512 386742856 644011541 415593641 873621851 435169669 402238166 903993100 283033336 41250256 566537786 411945993 689910640 275706242 562158387 858549047 464170671 892862480 345557242 178846998 462106175 128397770 22989053 202927056 189960872 253590820 859374815 290678175 722763956 455044951 822684085 129496126 572130995 372210943 94836236 12292806 456550949 587573424 920207062 726565356 232673117 787374304 977546903 88551613 212120234 965088920 980435046 906653641 987191515 802903939 858264157 396776571 42623040 324658620 770611527 323437925 412903815 146615838 262176488 104351728 422816015 749659271 474562356 672315343 246057882 258599449 388896613 568261989 962841810 120520048 637874509 86160876 185365659 428171137 621791292 494861915 380723488 261032053 891397200 454995894 513091216 391837343 629468850 913740157 821819543 632726136 974964987 445140946 347389417 134752361 95808721 150315137 399176486 339071771 506128546 66055393 387375032 782204482 351198859 2322149 282328736 815425599 931690373 413551024 927071743 48043255 225898645 118671191 48824460 778111853 783885413 42817742 274549438 891628700 293661457 987978440 779230472 564717410 813583717 815273063 446104477 739289391 791954760 659093428 59329838 684090243 77909758 940665067 391498922 367371496 789718097 72464996 172454591 548737427 245172297 937489177 197394185 817908175 19408185 724846195 308981335 722728322 652844097 454349343 413651548 205163156 486897368 755410494 590722102 196031369 133599890 623311038 528320564 475910935 786193959 624711616 478967437 279661761 856825823 498258988 519069683 372820859 530395671 178263314 924502525 995393818 717826620 841075528 138635211 545828206 263731849 877046020 942238977 498542668 65600849 223165152 329354232 898307456 314803432 500001926 18543941 328718592 41693031 644699002 479162821 364956310 669386932 969121417 633938517 935449029 517516659 147963993 809489212 338103396 776711181 942946661 702441085 586628857 141240487 196803507 181052047 22218825 316718265 867045073 61884236 752746259 72678448 692151565 603154042 234510753 757607786 36991916 138398451 819890133 61736881 733778874 315302763 71426743 295046855 575998781 741940042 83679867 656365287 675630806 838674203 548233059 213740749 654551147 799738249 116438261 736817178 47191467 613206071 121177041 532145345 168388565 238454177 559256451 280036193 230635497 46981631 543287822 355747833 971163430 534921211 105613814 704325224 674018315 380506688 401852462 443526454 778716146 874439447 451833635 251730721 705442066 945842194 744804846 557155578 241313556 300609122 850430198 759743922 778631 673976100 67122908 548243755 92581068 859522436 874027655 232695509 535372823 55629310 645351331 833848862 83403450 505185003 278983980 268534889 289958756 760116273 80187822 241362099 689440079 531396034 70801601 531380380 612810523 97681962 300235947 512432066 599992402 782633853 648709795 98127849 919437030 256877854 203537723 28183539 74604079 115727280 206231981 516766249 96498431 772839208 596337518 477592005 865598690 876179686 832663078 144731037 531243778 188313016 240224735 725770693 88806707 520653793 137674035 153874338 665210989 257402622 249878134 112566625 868387439 607979047 778224331 93770563 24500196 228892435 807073882 980584549 780009376 225620189 647105950 321521943 669941672 806266722 708361429 708136355 543081344 290320500 58720191 223896390 724304396 664438746 837181006 312285585 613349879 132298468 800021068 153506616 824822620 812084436 454670212 671722444 123053873 411701437 920916811 149695732 895995527 158817186 689419917 216369047 871300721 140309342 558526204 558505035 787647694 639571037 766139004 802782779 562015894 816039474 155934884 652109039 212995428 563916927 911974669 999701255 409605327 12686722 864983442 67414002 4609072 702320124 489111840 379240182 798546438 283893667 541367628 901575181 649361331 967119288 849295742 311645340 373994346 240686257 665708267 886035994 144065611 120538140 97759663 34517428 717963421 920635097 321738248 807311306 359743987 789449363 255569143 900678890 695681951 322907125 89774463 343251280 53086093 636576362 531461692 357216911 527969635 737085076 234882096 207992765 783367419 451493810 146029663 390166737 972316499 679351046 880727075 312206774 256393456 508503126 457117636 162361759 553226322 408941332 32905078 502507908 554944668 144898945 951938749 658431265 445342627 745905106 223951428 121974727 79990306 157853753 704265609 918010987 602872158 700254047 958599448 912210805 787480590 415919137 147268922 116486100 94508934 488074804 41635035 333468879 714353525 558931705 211351608 305155024 289184949 945761991 878832812 618105440 468695506 407768485 160095021 633632289 243528079 673755662 462648335 49373768 983476676 533218184 270428823 755854567 405598424 313202305 670727127 306701694 859346659 381308452 555318915 750805337 585169209 804704342 921466744 29651984 968946617 943715435 649861246 851555983 111161696 246176815 205723643 930368608 377118901 824387270 679108914 723438255 965792880 152906614 890054239 966576516 283263759 946618906 103167463 476525316 303070663 108308357 902168278 505197105 553613088 996608538 83940126 245883741 201874909 25099413 349896147 385686285 295167726 976450581 824456358 716815481 831581863 819768410 675613091 442360610 172186579 104231747 536610896 300602299 806283401 740468743 480161693 224246530 704488963 827848423 27174620 659608904 450874550 264973489 188730588 208831785 120669115 996634753 727971808 991488425 836703926 786399742 377160538 462445859 491320734 949362746 385910973 977180649 707053862 611133401 800206110 556433321 769625374 634916564 205942734 139063935 686572853 220469429 762450751 233952584 778167491 151240413 762103774 765293466 145400277 426167772 691827300 474679386 976667788 758988771 106681307 704014666 730304023 808847472 663421560 613586569 588321649 331907351 660557026 14321132 390446806 757368219 511372626 650453105 917688202 940449762 784005488 867742174 71384034 593758570 401466427 948111622 296820951 220307829 839387447 879647109 360108635 282920026 894363583 186485378 76375015 694618696 333199676 734674482 461489671 962856617 277011620 10380691 682579286 246285048 945400522 955726294 790983854 787799039 807526458 96948832 708343105 970947505 326959755 989194311 455001961 472836903 512653910 549590530 167379628 543454664 829548925 607054513 89007289 523926493 833178621 588486219 917610534 113641819 88532520 43024792 555836415 317699687 713468010 594660722 520196780 665180935 837019941 585009363 113441777 443702354 501079291 675895515 354089379 814126159 509781513 772773497 532999311 923863950 535548669 406530415 390920938 341517953 773574338 28111103 627576352 445167475 832997137 360196577 411424640 430302119 386684421 277417388 247113334 352544234 438410444 913988395 761939689 808732498 346057982 352748082 679247163 796040112 220645701 911961414 27968045 556823774 730411752 898705834 231767021 246419793 992526108 800140897 357009675 955730554 321403344 148755441 859947854 828007703 981411441 100770971 432470539 997622775 626927694 821131007 743684303 712106893 834870484 281449780 741296504 748891290 896181169 606409801 980057614 739402288 737511395 146717620 463254196 780487295 492102865 781353015 255522 567304146 464691817 902764757 632429975 626833466 887511201 452015547 492239730 63203636 742631155 977269486 50438184 913223817 477847766 757760076 77672994 685994586 98828353 599658538 775634067 970320850 847338966 862339825 286353036 919909381 15501740 932200876 818362059 450949482 386882074 26075315 218987202 535000023 793626696 55118746 861286140 265755241 621722918 653516955 502898731 263065092 832471554 933386935 709997999 972964274 290450808 179341521 355705386 778355326 750304698 714767247 987344488 2117385 86776618 479232852 482999788 738746686 234059432 735767900 935726052 252964485 2713812 101462025 711911840 666239527 113520846 518710999 201870578 630815627 427740981 693292024 499812777 338729317 40728414 82871609 670758042 635388451 330663349 168003603 833135993 125469909 769424326 146279421 783289857 901009973 671658140 949329251 664725770 918677773 736038211 694329961 855797942 632694581 701742514 151361899 825288375 401467851 823788301 94583320 431183324 964386633 174303314 623288153 69987041 796632321 600334757 762217 986917884 330405639 559318703 112260258 606774032 628126807 821388495 164178656 776415297 228136498 133022399 606640841 62372262 136220697 608954614 209230276 842187530 781683599 276125025 267078941 372637621 953802796 573777090 283765781 569628890 777357964 595502357 966995954 370108939 715830647 696440958 926581167 650635806 855911171 220371695 725942204 21303279 410156304 643334021 50225679 785394663 517553070 679379896 769474123 198828230 389044071 761350174 799422597 680781071 546377131 827676904 484511080 805711768 418880433 139413406 285325554 371674530 449681324 578787946 705210396 589011750 715568903 992566291 58565834 557775932 182907412 623692199 440537783 171217431 126206930 612688122 495856256 349141996 278882711 915735778 886082899 695410581 488240703 885767640 693939102 690034739 88524987 586980114 657145363 667235537 714092495 155917863 705401882 515361455 907774461 357286216 414024655 227655869 149010035 724679235 236987195 659012258 245664476 110832368 833832301 709107827 601125998 628833936 420890982 858204953 862840014 854951085 833875452 743288763 658651072 560125098 467108772 442968394 5373239 893580010 419592858 192883520 170269849 541384005 488583827 582687637 730449499 193310361 143208593 810879544 221005325 998968087 62667769 581486343 213771761 545389276 595803330 588799887 151344071 973874874 109490974 166523768 22205860 2834549 838000239 540668811 811109821 764390296 110772206 139200081 803542389 624568358 752622387 478485105 120987669 556022529 184865674 989685486 523672005 109530893 425320061 723297713 788937563 679302291 952034457 165027921 598972934 889765293 197150639 489027211 521430225 663363739 900309415 449166120 935375778 596168185 604025187 852319786 656696237 276083981 740973168 870480396 668249063 578517757 664288286 71646822 511266158 386801951 735745716 16895659 728517037 938599811 696611126 85635601 111181571 419267577 963505862 520645658 229627887 628224938 463770831 828212914 302539320 535428230 840994024 161548772 354760873 388470731 719430167 445232479 71918668 346011145 42369412 166992012 82458714 311310936 479111086 831902667 837965625 454949445 529014671 863741245 405457610 484868358 667808432 510878258 926524986 706199587 55325987 407258534 95291121 418812040 434244691 130866234 807833520 872662373 317021034 878875076 129134029 264630495 490271191 929704223 808641538 304361297 855019350 992411317 307223733 143660063 565348610 177819422 793850084 330017128 105699785 144496118 604774604 857214531 92665720 566068695 453580555 782157325 644402294 609810547 900332668 587186406 168945220 742810954 370835033 444921608 949369582 199584011 68132651 54897166 215038259 981613468 943328616 309365569 704906843 14121203 601406820 994498102 484087629 612340553 545084589 699281051 647880118 425981169 85614004 154073629 292027260 371918268 175603147 301329563 719457324 538006127 896749786 231742014 246690880 969049709 701055787 87977423 298294631 381735940 77225100 706223463 909908040 818524898 922620323 274998460 678611332 156968306 833067632 587608184 980576558 80810658 786083379 401874339 12351305 897934675 955217245 99700769 379015799 984795208 548599670 883992207 442855612 41998506 185515655 226564152 542915864 33734756 583340419 89048029 781516073 184712419 481063199 14803510 742928362 137411301 790614739 381559856 684070380 790542560 380321676 823316952 211581246 613031053 4578180 71964287 311860748 542125576 220775343 732543528 399069178 496897633 938396557 341383283 59699353 112759031 867544178 130884625 88529803 837653390 472980767 184160665 752949403 716989182 909971135 961508147 971244571 101804312 50619088 16568918 120413999 680411688 683973309 753514044 970096858 448697693 419538259 353714610 302652187 146292936 799222639 313792968 191021599 512148880 38286912 845949197 195998422 314759033 850167764 845884000 140670547 922899029 498861941 582528687 111882970 212625484 707082288 690800279 343537994 135990990 850697321 776550043 946288219 672555067 243294176 224750801 227724626 441487463 769060901 437480551 906716368 481499996 879861963 772132702 434171262 537420168 101372643 138487821 32473948 521337322 572850678 799006533 435806683 263276599 994840542 183466165 110113868 639757551 921170955 51940010 925794451 402124363 788106681 645618959 753537212 983275092 245864190 445866540 459968923 882935607 823764059 218631134 116234783 58806307 804150619 515232777 429932090 171424803 108071794 482361355 625046991 163065371 968183561 791487684 86060909 665841537 402451726 780149365 778340383 421664436 848442121 567958217 128762948 666394723 489655910 640306500 240979647 460502367 419496602 955181938 972309452 931125226 541684802 919379815 392433032 531521165 887859129 927317905 805311062 132509300 40931445 425602992 934652562 815483626 826720062 327045176 94857444 812550914 543851304 32212520 26109055 693270322 992171138 547818175 919415490 341867258 183309550 388541898 421430835 480130018 384821547 377443530 520977945 171556730 721654161 908963980 869067539 705493521 912509652 748859324 126408999 692863649 837835976 240477340 874134347 723845790 238336591 717283825 124325912 708339361 577762897 388893544 709637599 592625710 135633106 516123169 623483190 653591855 531635687 540494087 451614464 774621705 431422513 69518766 758804368 739606527 451916459 870399229 433569636 765016691 824236311 670888647 280213646 301821236 642726066 320378330 423145167 325819774 18756844 489321089 75459112 452238738 711234839 918993770 28613703 706400887 525031819 875611332 772992589 330843531 464789770 615009599 900145740 708257763 924586408 727174703 319404931 456632848 719582225 580672628 647318179 102300090 684025317 136865399 847379385 969588272 690763482 2167707 991828696 16466807 121358943 265356609 811192597 288395117 494711726 847360452 843404396 691943158 793730873 610436510 559985090 975663355 630049088 280449404 673444234 215019516 694592719 256424437 787875956 367089994 161332357 279454992 277013927 932949740 82937413 772499290 334030114 580094122 934421789 181117888 492208722 263670848 718638541 784108328 34725909 303309014 432726704 13701249 45939178 178916394 768598140 195065467 832528258 34368096 774657693 33746361 305011216 535744727 755749636 391261666 216254517 103199742 469999203 645803468 163868778 426719400 720969204 876871061 105312648 125999955 811515968 668420622 408776305 562166510 169322076 117220151 22971489 421573652 647662411 798682634 335769175 120616846 798533624 818530929 523689328 378417467 788071169 332790499 614122702 731728714 94108994 776775447 34606684 837115335 780741337 144009872 525142343 521526231 806547833 677427148 974049653 110109413 271503568 82536227 931379403 673950823 872796443 827678258 942601947 639822385 449915210 806677746 163788027 547123770 522278296 904585757 674050484 25620619 736542487 72111737 138960034 724867530 123051621 965776970 383634321 731602691 649623320 381221577 242392899 714121201 748265753 662770122 942076434 765463758 481029041 85397356 154267698 719541159 622813512 155178437 339510117 418559938 248484586 134950593 580449556 96774563 86076389 597653388 7691900 426785236 418298301 505760733 283508078 650198229 710629254 353159351 280349463 358357369 60244268 144396971 604897310 801866620 286729180 130376242 452697305 314873311 610377474 842340442 494781889 849160152 296276211 192465124 561701007 161299886 565755455 630283867 552411022 528257704 837143847 345522267 596186256 180228082 271659011 753039312 817722598 70685865 841423027 288633920 354639829 340688057 176754345 380842641 534196641 875460639 848574165 293336292 867187668 955040559 611561006 709941347 53888198 69955836 368410943 262049913 927561345 520452981 318065836 350064507 607010956 349633050 243473255 787446862 999022814 760975531 900637324 440235760 36878250 833496053 582457694 961932882 190486537 829527754 379469904 679485242 697539442 543253112 176300803 411456552 94353686 484935202 588824159 951624466 272546329 130970039 552057520 787229359 377899283 914370193 292385702 123344535 476577268 143943087 967967809 739419199 794319475 346527686 63279596 421772725 97527212 643341303 92657665 433892788 50015801 772132552 322630947 729812941 567410285 306345892 641395918 112014745 892328326 123123637 381572150 379973603 102775910 7759743 67684921 968890898 198601375 201579399 57459940 352207780 847553825 969869207 546979488 707723936 905412174 146919230 635792527 724235263 778591429 39199915 140135033 569140661 887725326 388015839 335020377 340289298 105362693 93680200 389120941 216607927 250383556 960259997 712198713 773078985 771193719 562560837 744160833 283372764 779507246 350829399 516521135 426696984 969974410 642373166 308774982 416149630 486591948 857255157 230618071 573777522 613665321 991266808 331827477 973603790 865619005 460135713 672882269 637893115 177078941 365225743 767493942 436457824 407468594 539066110 502484638 121896360 611751937 300267992 771075049 937726434 19242094 1149819 552076693 947097049 112731705 555489524 730036449 711315003 28433201 140406742 881190447 991424773 874328555 504340576 68842776 269873687 250126835 490894247 185497492 360370798 154526118 525819738 392557918 540680931 519336599 526368172 213447489 726057723 636066683 353873235 18249634 149199931 409858783 864798620 775717229 264216598 408543216 217169940 924495414 442556509 774125356 851277316 143563113 167569459 738853983 343108792 41957402 793876966 287483557 461073341 578167164 155946574 123085332 540781760 838725992 996768548 54441267 521788257 622703361 33366259 164250126 693768760 604168056 304660756 747214945 994650388 603358368 902300250 22923881 521375118 332966164 915917806 71920994 460936427 523965934 622578945 475683138 310459044 614865470 398325813 649096948 341117695 419680515 260023183 399637935 329797092 329652717 218596527 284858947 222464077 265697441 398276656 243335561 534893781 23701324 314070361 12991954 960711584 417161382 624321079 996669842 878489251 903539193 372598728 77174906 181778992 225828071 644790921 38763433 50982520 65535252 512999592 115395065 661125777 161081968 107515285 406618076 654342482 717622023 294973508 262057211 511159749 910426662 301138707 844731810 82713571 187471084 35599552 654272231 133076686 709661485 151933118 323470926 453755181 225646941 98749440 964066277 471590490 21539164 387020185 299171856 884282873 761546628 490200842 187770009 935459867 177294958 956438521 120311947 891661957 197008721 160389632 561858287 267071111 309272669 9999946 774201440 544588661 262145556 242653182 772036241 412211878 423595449 468938296 52937955 211999344 26535812 613851593 989679736 140857063 893750151 853812736 994529988 642890858 101966407 810892658 823427040 979649335 252612997 736116425 460342947 148150392 85227043 817185621 156436559 510539619 986648580 626201185 394526842 237012112 23552436 930628707 764733006 444496070 543415382 747292964 624905062 543394960 329277865 250866316 876226630 695758763 105848742 916161105 315700489 365122271 352995934 177631788 22005111 613267054 205410578 852862952 243065989 103023267 606715777 636005642 599187448 307365641 755308340 10179028 504633655 275122293 709033318 374413583 769159373 723311371 828391706 292948309 47879091 9622519 47305733 745043979 463275198 748618157 269809087 982808157 575562484 698442226 893841285 542176629 27424400 428571576 341506940 899871123 560008287 841286116 716493791 728204275 507803992 267253696 866532931 121060813 515811418 577344537 210315062 334869876 422876388 476369046 50813826 539339519 316290563 901218015 814838408 866581522 535960085 346818206 458352738 156785853 462085694 909382216 388890521 429400082 304486019 191203238 792095336 876702739 404919270 866813972 302789386 16167537 972313012 655843780 22550438 401015318 810281364 215770889 658753094 424541672 836147788 287872140 663651242 771714055 733641624 174543672 614832989 935217588 636865223 552403021 705055063 700439169 527161269 75615879 499640355 21281459 96162040 455615026 37132009 301983413 682053241 143109034 19900413 883854217 449128143 561738709 790386020 582385892 720111148 991146031 704608423 135216853 134551113 12003479 982798228 727852272 41935828 651434384 894309690 817931911 45460883 716240792 607971222 110284276 359602950 331259809 372360921 466339772 335939159 897264412 792353334 7511514 672968642 746531769 775024061 987603518 273562512 685065007 626731333 296996926 851777867 729173353 405606932 607126679 933282836 764328780 500763408 651007264 396013608 966514699 247919596 519785151 2634252 485032045 192177015 127108698 169271624 109108419 985957102 671519932 644902477 408805708 575375281 970353118 362314328 196684265 266586635 73261058 55143904 80668144 731978080 677774243 531296051 810659679 583583993 177524001 381031846 91851505 85007545 534482636 651034171 388636908 251868120 135686328 167844297 547142361 33698747 726609747 130683893 524955618 507646670 155220959 442420397 29195461 516456382 408432395 228668325 184319868 372915333 667208385 625231735 258239825 288588148 377931929 757143289 526798361 403398918 452445906 366785145 26792900 473730435 268720371 298672178 477227113 477721145 256112801 29812184 335980484 883371412 405190319 13996805 421065536 9559864 71254963 390105298 650384316 296541351 855554272 450253637 431574413 609980633 604027254 846877865 487160109 496802247 846584323 687753763 182102806 495281660 986151874 772224319 335175690 888331974 349000228 147106440 940238278 533518302 170317409 851219170 529346426 604994865 101760573 324435641 632638488 833213350 513520638 643163947 493494376 632676063 781337600 68874905 4265487 165989493 635358784 452071949 327040440 62905483 3163563 379250100 133068054 57665835 329447869 945455200 822405923 960066892 562887689 60900282 917818116 538599909 290674104 547004454 954223024 119181238 730582037 464790606 253491632 686809881 991940793 359120687 210487677 447350409 511397378 863867302 702829712 545893527 690739124 258277569 346515341 876165713 587901519 802229922 160740191 871629018 870459511 34043793 566711524 91623229 881693567 329944021 639158661 825816560 445808770 344767778 315856120 739312414 580240237 326244898 293181362 511515160 235554871 581944089 60881375 342679814 388177226 493233559 315143940 766513946 167670557 375885247 772957991 909589778 84003020 267642524 138847105 984965526 990246295 745425367 463112057 702798305 891760000 107493391 680251415 863273969 804123939 332149094 380219365 381223849 710427677 749407007 714029330 961237058 469547528 911445824 348029298 919206686 584644736 955450943 456188895 819002313 614422755 637922426 191086120 381056828 924490794 272774878 584727596 917339862 764823389 3694094 338658122 120515154 196305649 39194972 79734387 978317571 18047441 912386275 377734215 201287757 305771502 713440163 449290728 12243631 653059482 4484316 923425160 17215626 725765693 844178729 188791985 375835059 664844910 968753895 776757535 282549641 143374052 376173915 613736908 484432596 731442978 287433505 881000336 81844128 735915513 399659980 668397229 23698367 937103681 554273730 711173041 16899715 71765535 288171938 137342568 83981516 702239152 410448487 487130007 421168489 708668401 311610358 907152135 399299348 198115462 414982966 682530137 135917865 508404141 810563164 287492166 309216140 347241918 809939234 886315180 609929925 598702822 497642114 592872400 196072199 325580439 398831456 731869488 406955651 613654 248761112 688005050 319441200 323728398 947222892 443226243 268309417 374409711 5564022 918045200 965080242 842010179 833862232 853751772 60129475 143484911 614957450 169735333 245210584 637114322 513399443 282109940 154484621 292941939 40066338 965773514 459596181 260609289 120212244 223338182 583545749 61663494 804542544 605481767 754144375 975796243 963639407 393193539 901591875 455546687 389700656 969020223 319440014 987815130 894085425 265114701 480194761 642460225 39901986 118417853 606306065 723880680 749079990 291418490 518691421 290444133 175119377 958218899 855462290 902827606 827492014 720321371 689511125 632041336 300157050 398928406 607197386 755723700 204712593 787076459 117801328 209394035 440139106 589597729 51914058 763535962 190947203 996769435 943605845 631051438 131207366 29463591 162229665 220951927 971462280 798003260 910947177 374585760 105365398 116655454 630635764 901298292 437797250 461882719 30775382 984503895 556389859 908025156 745521036 486436444 215881295 268755196 656822179 782488935 974717593 708552217 741111883 980536398 308356111 948661488 31224072 782919760 907169556 597497241 141384752 765878449 485168403 973030577 546321844 442299746 934464606 314621341 436727142 679816323 155673342 904706624 411496889 542823735 831832180 594852058 253807916 759785251 356937001 187376424 613789284 854359336 52642879 934598744 324244352 174632715 909000222 230478888 990868202 488034684 819558607 372994333 105971574 750324468 680893210 539308541 434504186 637182643 773041285 313698374 918996836 913615887 39511825 222107006 169594324 501485569 476300022 552431845 152690548 915105174 331197755 156643344 184362769 709854088 65195416 379744026 638270871 630864618 549350926 430344803 130488478 634476115 67939716 753085488 982930204 536568472 647906712 287517745 406443387 931378657 35772503 715409677 98720864 261365752 918392828 910607198 1776225 717494986 202043498 255712959 514596355 936157412 544816891 606599215 654315269 619633797 843604121 425906384 632736936 633931448 220309707 727454634 4982101 144026834 366677383 83329918 318751821 470034707 869830075 594467929 363531145 32695962 731675311 657877393 812540605 263653666 983025334 708627628 480398455 321447888 255643102 256063604 645895039 484375874 736376606 357310189 68733465 290529603 337455386 38464532 80294985 761084387 839308464 673865102 765154798 609499449 449327088 577627686 647075983 127417796 426334240 660618219 778759764 141246769 803066752 168626526 408438385 286776611 469467196 674649030 634684081 466996590 890338455 541016454 928187790 541729188 403675365 392763762 790347738 2901837 174341029 248236698 724042879 795825808 53114761 516876810 719514642 63733770 709147815 958117786 809390086 34671109 487225088 123849236 647536668 184696516 36364259 958078860 206973653 615292529 691421872 906102563 28072583 896189590 43048654 134980810 488862871 340701815 710964084 94283827 528144843 988633569 890957242 204734368 863043698 886356816 712130601 39098591 815486098 889689767 546941792 415230403 355906380 989424068 402075371 61533783 524759698 166039182 351628244 602310736 343783979 322966750 823837144 928155605 499679612 806637143 897306739 576947117 565680289 83405053 581347768 419103912 752770654 60749585 314910287 925248542 43742581 839527451 780759077 147613797 655760972 721686386 268208490 719617802 967526366 547654032 246158344 233333373 495038936 137087165 878360712 787916989 663676620 642519858 694287939 839703675 266127278 447056888 491154981 112348095 694646060 398679894 832750502 93560177 357816056 980630644 630425690 732653946 204777130 707450282 882279872 495656647 67060984 380565896 893294233 591047166 725850062 178706221 940901525 573906980 817065138 438753346 792956031 789017160 115481934 100374674 747066837 383084241 296612342 616267789 702396700 5005151 932065662 916324241 412501388 703361382 565978304 300337326 943189900 937214846 48381787 716208472 704578446 370096511 297242333 248021886 308282775 871212058 340565627 138567275 391750321 826167577 679773982 39031349 968571704 639913544 182772640 585484482 903284819 649739034 906811058 811229082 961098786 255562776 445467985 550832016 150971194 772954863 360072489 831971572 407879016 18707883 215135107 280793238 723205754 411017368 316732440 291857065 120676683 658323475 253282905 870744020 317303663 256137206 112108980 71814476 125547736 233804537 485807737 98653494 593013131 941065838 418882271 713241397 647475779 565180668 819803428 681741978 789045108 873445289 510572182 424628074 175142619 872811506 630342374 63658808 16152152 477736522 595620904 222194353 721732252 315007682 86941059 277606871 234152603 190015875 263364853 510240362 871606725 650578606 428449948 462438437 49242177 387711901 425760474 240397658 606900454 166073446 556120698 610933925 244845931 568487300 995786154 342319134 133761135 179710772 763721784 578393880 281364579 991189461 223814572 656547537 496157170 842724737 438347910 384348816 371874231 733788250 587071309 996431130 126228901 115383878 929505041 852480186 208010165 802578680 288241446 349144871 993908119 795206675 738783284 914072765 445835474 612928069 166154657 112572963 508656311 272762476 28709726 821433799 274911635 558757250 299598959 86681407 439172847 107158741 849901501 906021018 320280587 450921662 713527187 478671896 34469905 892408041 716197622 855289191 933644676 416027650 283901055 952776798 944827640 8958671 242949611 746069142 827229697 594400347 757308064 474594151 786907309 405608357 870149899 226492446 253118107 119696932 865761663 523917370 762470643 565910606 740853489 400936977 530399609 713519518 996567753 683422732 539407649 890470105 275380215 709573900 244815309 501932751 679158388 563652059 553413979 436341851 962920532 270518547 610951280 676602233 614826592 353539727 573058882 807880000 667333072 765296864 477188129 942597576 774833991 261891840 744846850 958801646 920111357 937372224 412017444 991748885 569953595 207220453 877433791 914311856 308264840 696495577 99058359 765696227 551635136 452358165 191187186 69933936 849668494 649358781 888473743 983715729 733738338 259983435 646849794 823477728 476314873 280467179 173802837 244027568 751728413 993485647 322430982 892224109 766401161 847195961 195257537 764457454 670454412 621582032 996595773 463703709 696988803 137762930 28685552 540488890 1409829 969696869 225569230 784387749 428977030 859598515 914786621 843163449 416329941 893592851 52104400 31384210 55553936 646165719 698408183 938739644 18497154 401581920 74455324 971933231 300186322 745916350 338281742 813268040 895788639 487933304 550214284 544711129 204796897 975708727 898666816 572155348 683587148 631942679 819731639 764132210 675971016 951704265 911723038 720441159 704010445 150890214 268085470 77988554 194209442 732037840 844349359 772599021 418934459 174747356 416572275 476511541 702167550 115820842 830809954 158206052 967078425 703936248 704802914 971515006 737653950 283593120 316561196 532182211 722763896 177298141 579947972 651191563 219981664 506815128 810769207 171353754 75609092 574232361 70523913 551888396 460568961 993500505 674767328 21599572 895400962 846625412 343714295 902090701 351192175 318309630 42877644 25663240 407476275 743608414 764009313 443653653 196858192 485793219 159206057 350343270 898934059 233583149 484917309 860995164 74492517 532766801 377583258 359862489 948020432 658807546 270430167 114577552 395949835 625473899 120465950 832178099 299754960 119770494 259486735 451571135 389184351 883348354 913314223 204849116 235907230 27584994 216502070 411304384 346649118 641083500 812628420 989908488 371951345 871859777 621970570 21571011 488484075 157511562 7941772 871407582 990266460 332738095 251350013 220671389 640926386 995641234 659389448 569999237 75855136 680288734 609391468 336141136 990218601 944724326 300657056 209908447 208285510 691583494 336756177 604824329 500491119 89918801 36443527 450985619 852705005 930511597 463343157 653342114 884527993 320329381 939842231 999835354 73976045 581868400 254692406 126120737 708387502 746619110 17907667 306586105 893499005 806160481 869820849 469358577 576925706 216930343 824046675 441473697 57690665 37566228 203899950 172774642 858112953 67062187 584850963 295255702 144542566 757320890 457868040 57725734 559547925 882154576 634268442 836577991 247732064 345316445 899748111 603271082 510062845 314130730 739398967 253643584 597888326 564343301 743298325 916083145 225437860 244735499 898671191 2677273 243251143 821008616 794689494 179702358 423908070 554052043 164270274 736201224 229013078 562018570 890455122 757349615 897261993 86763232 67974620 867716665 898998612 15422227 380056918 995819774 116030319 739756188 780945496 11300922 662443727 925505458 253758123 202544432 229777668 711693023 825119908 926229394 712222197 721131337 201331186 445005011 597385332 190014469 974741390 339810083 20053265 337589575 740937766 338915809 236106658 837580161 114652656 160436197 799237514 131022399 774899653 624055067 873282962 23404047 526694607 702748729 765646854 694626319 294378212 250197283 661547606 812625523 585142815 272272088 247977566 592993823 777294871 231006973 254753409 900022673 261754047 604817588 516141068 124376442 868181107 382584742 842145011 548831785 397514342 435362065 39960590 780413124 70060608 438243682 498766789 265891668 996260540 602050439 750312776 554680426 558436374 356772143 106533845 684831511 599902021 13957137 836067536 906306568 397291231 317218602 499665714 53968346 180353176 909879989 552493234 766313532 911623989 198073434 803562653 86076238 929866073 957026650 802002598 148366042 459057463 521286187 652749544 403312340 384664972 549007532 633683958 587040276 216434822 557752584 219546523 436185172 415254565 616749640 367228655 40186895 698537062 914652196 240986462 984829227 700356462 814940812 588423847 878014991 829602468 945081798 179726623 29104970 341075974 339175103 604109300 304378289 443202626 674717727 819306317 325033278 834760776 780495416 68583116 892261952 697984979 924221537 281026206 280264128 695516860 214753008 411873733 53251125 279973586 863437726 891337986 786104473 179085155 347131488 343652756 217031750 522534150 720953637 666604585 545358803 335325953 567956813 959693613 319630129 388574337 49572821 119137642 78137386 489183251 529330217 476562809 388990287 210899063 823855010 750182471 888205303 290129390 110225402 465127199 968207729 409263621 636281673 423370404 548459861 846599632 748069428 942306589 163452158 832633822 523224455 137635867 334796739 543657576 214326271 749086558 888288228 555493998 603310523 84761232 233411491 615061786 494215074 551678971 538718745 704550957 920550856 147097956 750730065 155590643 915401209 697958378 371897076 412821592 950891957 695504626 718120875 411277654 112770725 189561191 860298476 650745565 705257749 266196323 279920084 761633174 967884283 187058738 365598524 983963606 72843823 907248983 857804152 819234595 644610829 57243273 720924150 717770873 950283218 361141692 201994125 422211380 703307935 445473736 555250174 905102471 538169481 805744539 213370300 73709897 500515635 456369207 472471125 338568836 655067711 852618412 239274750 132610826 930164948 916752944 233580826 176498065 248059477 889592011 184736077 305821061 869379590 926720283 463147109 816298693 952989342 972403403 442636556 966725037 163267696 817162237 703630529 732753703 103982386 657849035 636283565 297397985 255432790 593208380 567146532 539962105 269784359 348213961 147738352 238543567 378465882 169133032 911129713 608982881 647712861 782562728 221395211 672648455 978140438 835046396 744954744 850976853 127006458 38899035 536484672 215078545 588423288 637510328 62506561 53378285 248063821 541584604 171142825 168044492 858877689 603521373 445555111 922612613 273768608 801208979 39124902 795554071 354242097 674280587 979405568 191590235 197384944 787172996 518863207 281886495 148175845 537887296 18173624 799268768 62293012 461801875 837128412 52361764 198373504 360703400 26240166 949368356 766268214 759569445 497148357 800247229 199401588 503823553 178018162 998959163 92013436 849782494 619829751 734642796 845685587 832328991 880389953 307186433 645955758 155543076 459108394 645779830 749144541 971637742 984111131 595826432 945696557 446892576 49691289 382538832 901703808 111418125 94364532 504553405 459695682 958638732 882445806 365033422 437474382 494189717 266171736 698741253 616721181 285331316 746341371 837504269 907870605 464417886 136436744 992597527 346016455 573282370 277566581 84267834 727869490 28789343 106432373 83265688 861655739 945580251 559026415 38495280 485244700 394231843 922499289 645349001 544595540 313104076 745975893 155892142 245914698 187763795 601676750 195896286 984466453 397755611 452164172 578768535 409722908 929395584 497279424 177235307 930588850 42621685 834973012 841914788 164527777 420146521 271061258 334537069 498282166 240617476 499166794 114370769 258639871 542029184 680060693 816907082 99501462 36329724 711562333 435395677 638514910 892060534 291200443 206302003 617713652 217347714 322652426 104695474 166728029 243423619 413227990 835663996 633037697 285603691 90783015 486113631 736498916 930709584 233594350 970161876 980932317 454039307 93243993 874603176 901845586 239787975 911157084 230430557 46316989 582459853 857095678 982951427 245884362 697339538 965022168 789183576 109227476 53401130 139856691 44134451 641200911 588948089 845332238 257292128 429654448 241149439 156904263 500007422 272249966 252071588 808690032 244963285 34046403 643324981 824669707 573011440 99648311 940019801 438918421 706209962 241636401 336121365 185412812 124215833 707903450 18650091 179225228 783801171 733552421 430976954 443196013 179660270 49180421 856572385 753780040 49140784 523562341 694042088 571552062 179831477 629268430 365357082 711353787 667983543 516872718 316675394 809206657 686102390 775815280 318922429 37237620 807313783 828785363 112729689 60417068 138235423 329093247 299049394 702260476 617633963 879648196 296358150 308400238 94951390 271848073 131474567 713420066 871855013 867683781 778135274 925764847 272867167 999191050 221903862 587614176 533630512 641592049 110853083 149833425 212202824 782283367 445675858 796522717 450875360 147373837 45511436 218500745 547154646 985301782 946997169 558541961 955848513 591269951 270480556 696863226 101878629 756797743 68914946 390788281 64585207 415708135 437673962 294365137 502575590 188844052 416215824 43001839 993656829 289530982 743757673 169323478 859991197 942249979 185057500 217400831 267189134 265115249 767121019 502970332 52357935 690218616 730292184 569977315 761507821 139901727 568724397 156305122 903942409 709367358 894707559 495482052 934214505 715876842 382166681 696680801 507770443 395198911 590230862 108821091 500586313 481915891 91237121 733408569 446643531 444940279 332928573 279217699 876542869 523096901 620299928 483764630 287488980 264520929 860387202 568931034 700482246 771521707 199821821 514610201 309551306 692841873 401934008 652470045 298407161 166734215 285947476 891837780 307225111 951187951 929481613 564373585 179231745 554789122 31191484 590204655 685429485 824359443 13543473 855836382 996613361 270290306 686920917 415385119 609805893 768292024 330006144 368339262 953037392 715965607 592757886 526805457 318478732 380869292 952009923 487021879 630644608 862880585 581895759 975403679 639344166 787787615 459282243 29432076 246561966 828412716 82309243 446312395 932755106 954416011 29821772 780084298 294656609 170628024 978192848 734258867 608025820 879234394 482480571 560257775 20326282 167683289 86769370 589355389 649604460 993159772 991458043 471719229 656257854 858400879 162941301 284647784 283737329 268308856 343826065 158958478 129212953 672068123 780447815 240668834 394401428 694472979 452769617 988079752 1944396 314858669 96031532 88145769 796191242 853326738 778548443 494921414 791517732 438928528 532278553 414692324 897215333 625829260 520443848 95078306 36191760 284430400 968602218 170393572 809094284 385969978 927226604 887628563 501148830 166923322 111926784 903980697 871594257 527033445 129574293 176555215 493346366 739780555 627712818 170971633 801099169 24736934 180578792 436253800 555361734 979304929 760287566 194722595 935030303 916606704 566880721 574917699 888411902 914437610 726862993 294164693 361019096 445523084 562789712 732567573 299352808 755688795 140862743 415692971 854063012 228111808 881067190 600951731 781448717 34386556 602948122 924072636 566236273 813215822 295426514 414842277 515509976 185837905 390688438 496150380 493573619 674248411 675622589 706458332 621648616 56162625 254145269 922690068 957602575 863647131 955204536 857881280 444029253 949155900 993472646 376564030 436611992 945962343 60524169 164625324 167088004 771608873 934280801 167771429 917769832 643404379 647596536 663431258 296210876 188370853 364697453 430514599 598832330 499833205 773315057 318615955 41606622 211402667 125410940 563985253 673806883 254330529 71819447 187207382 557294005 391086292 194836208 721877434 146871048 38883371 859923192 147795910 964367415 151759958 569773399 452804985 933159962 259421870 740714426 455690143 806453494 223484158 159410669 562772016 324172499 110041319 978917775 993047135 749556143 209453983 565683416 250167423 9516068 539391287 960827645 421052429 70172232 812430757 629266232 118081811 980260809 164440170 92983476 11384461 949278661 594577318 99171787 760057322 222518361 310442547 236899349 570010116 855281320 974982461 307885995 865166037 790922211 890780020 561711776 132388065 524796872 592573879 372548276 179878204 210301008 387149135 479315978 900860172 337404867 332788146 512385194 787863735 347663020 570335895 202633409 121581828 878082271 795123075 695740027 738781276 966647957 485330531 358031817 827686483 375003475 402571956 236767568 709327338 757089590 354517347 553954099 180511351 440791070 333932835 948501934 85512975 805962918 222391146 302114812 591728215 4968215 296020658 37409354 471926036 155566155 185756488 665317819 67346511 834067746 981052909 422626433 878648557 526738603 73081002 514624542 59621766 651133997 712386685 572646013 926242545 527388676 240180619 947970238 7916321 126023528 711389346 172565859 143893662 299277053 108112751 813734322 584314765 83275301 944052633 512565069 917003186 823665934 132091737 692974803 157876957 750328828 213121425 542875161 69061880 336265699 418513672 505764127 867625541 291042819 492132103 523913010 294754718 879353797 907756786 29107021 240735060 98596228 816430928 906250771 826936345 752882637 362056327 446210624 547294602 497987696 575142465 188816024 821621859 26124295 965066715 289610360 354744825 879856804 112301252 784671794 772678268 465753735 19737856 924309713 860032222 233863357 54698689 876160143 409497074 787576495 824981793 294632528 967297946 127390831 658270505 38671489 309747265 913268869 864614493 647701665 753157171 836438122 647610366 946626206 400747434 299056120 709719757 530787217 339705030 6764394 388382963 719325552 336388672 78163128 987097293 177887624 315234732 774997940 711821921 430179611 541159787 877684394 202372218 151866605 941596782 214809950 729067773 882967848 260902685 122642590 960529332 771606277 312287703 15902511 412417341 913347004 459940923 158109158 541056913 7223275 425319137 771166438 999174725 701242145 188918934 1851846 169136769 218286718 424746136 391812754 386231093 158458001 529087210 507765994 167062070 951672700 627620101 134964909 590934787 865397209 478161472 79553072 830239914 939415063 610996082 387953882 48137151 617741722 599791575 837724154 529366940 59728056 121326092 586136937 723469526 290101349 849478736 357354692 551271208 732836071 537422359 223211545 63694450 430825892 996306075 959588044 639414513 812715417 172089870 835048502 580471961 598435894 453355936 848720554 699436145 135649381 535485415 627853944 347539492 959575629 619917628 537057743 229181233 881806820 792611095 560038566 577077994 240560881 332961260 256566953 40303169 955587531 653756484 611997615 499748448 469250077 782886911 925372884 326466802 357745611 917408520 807567657 36176248 936211695 213370502 804712676 633570145 721114354 355099157 893189932 45849443 288615006 815640133 203704747 355544511 310974908 52265119 63296860 729574282 755583720 923802551 689147952 610038452 976449461 326035379 807571923 938567353 363401609 191837127 597588613 163132670 598970583 539196979 373120809 77375492 274143754 152420260 972025408 12084233 498326301 487137631 638674648 401589549 360826668 604070099 309603456 200171471 992027231 264515320 731261803 342071454 544927210 400385511 190719460 276791915 554438771 545415143 992070753 467180828 465429896 224476648 590160190 312989652 669577640 984565672 370364351 325644465 662690035 559359605 234670829 595775313 780255528 219969808 414127432 959284871 690517336 801993543 612637502 673630583 276862404 277584124 340182505 974698275 684388369 613029833 868830939 520377438 171690971 652163417 442653115 168988164 889484391 436322007 745671732 956487082 570128393 16015642 215189501 43382443 592391042 356605042 334501472 400215680 661971993 673436587 585571351 986658985 687453757 20433126 809014853 830432712 613370072 673248181 863628314 718524949 9492711 897112036 189817073 372338978 888244061 158417722 60297781 139497720 887559618 320418204 511224405 346417313 884050316 99339045 888762337 718019608 499395000 553384110 598014815 350851131 559015839 984466718 861610972 593352687 721297523 70048259 553947741 661212632 241009227 776762912 807984006 160460009 992660522 269297890 639754164 412709546 390672565 580937727 610950389 942746011 436296490 663600156 917089477 666884587 747995961 1978963 572992734 292191485 100929747 167721438 392756295 997418599 270481344 114595213 925636958 28958431 569288683 191159768 294603782 30007671 544674566 708590096 30802756 150159465 51278469 596073206 796889837 557193249 718065184 173570070 79843571 576274400 968569056 20040551 350507117 959391974 720722885 355540817 645649001 576769679 977744055 895942477 453608375 510861516 828651835 151045616 439682242 201700088 714498523 80875641 987627332 510032017 25470637 404233084 565983086 95740305 23316483 249584568 423345044 858441322 728022660 601448372 370849949 636428913 29291815 283948756 4583805 9103885 86530879 837956595 981345872 503600873 588952636 42235302 763545450 227079092 657237249 154308053 96666417 423787527 339107140 119699934 903323797 486516555 943255466 413126265 386749682 621469439 312866455 330800280 392445607 268590517 917899520 944122803 817078698 564478973 472841104 598105345 436338801 533064423 764073864 964343954 692079075 578361154 450079636 355385699 602631391 824891738 397498155 271204139 862607331 306425392 990994500 354797464 299005022 252890619 789211756 250621276 99353221 676623787 986770877 698440406 6278974 353299389 279822524 877338214 953934350 642914652 33450987 672754383 18169626 579911026 628542690 259461290 174788513 691947015 836260825 749041048 646521330 539301416 431462727 363771128 289293225 193945039 697993487 816650374 648164847 465005328 648002713 88289569 83315024 994014111 604831091 787248672 266501823 578537793 348010546 16169363 654846773 8812198 232492854 657531966 926296697 972109140 434533131 996841762 819526513 510823401 934639045 10423040 677438267 1388471 701586870 216338825 405673729 663909641 19497754 867286776 293814990 367290636 158627369 634399893 542048496 817152481 623161921 859012416 972343315 384885431 294632165 567236059 646890175 199558255 374385270 289203236 778436787 113589462 928733981 362802988 759332408 303194831 539008617 14024886 31785440 526076606 756071883 803776514 81960535 127083185 941916837 794870428 545314170 299186167 10990690 452219236 954530569 543481149 253982856 166437457 20126701 816079301 52391696 661978345 617286245 959494325 524745143 821760608 658244137 36069860 859283164 756652155 943500588 256489944 782132063 156847168 140654522 259022656 533247187 950940242 127328552 107294852 724162498 255146805 442486684 968529667 663651306 563812870 380645905 520892594 731411477 861187675 94723859 74952122 702869519 9392072 162072162 193922546 548943044 942603099 801625767 338576790 953665825 802771904 786285850 69555134 349279687 350968984 516117618 463099499 672591664 65528358 504293602 48207954 881451125 321122944 99607527 924899224 24996137 626884670 611282992 313886530 985204206 86988087 154060025 635654081 109532068 583676377 49597579 249012748 650524267 746408175 756862372 837381812 54191287 98378244 76418343 449860530 557576716 888140766 547757720 735469730 180233318 619218078 567608017 951751138 446634638 194278494 392158205 400297016 581774623 768851403 644124077 300207816 596550345 257561640 813355918 462835025 838759148 513951520 306165545 891024496 596009257 622868317 26412131 411212877 502329587 995928240 846045791 917276392 175793139 116972254 706697582 64887768 343167477 864231113 756834745 719347520 25431473 296246298 903563868 506369058 337778203 105294087 238439895 911700824 604780985 364461095 747171881 276943633 7270151 218016919 756170812 781306583 480247892 940580403 898452748 590911246 334349613 511458985 732267028 174694416 471364765 451319367 316022430 476343634 582478201 183133237 187386950 639581499 268646386 454637470 704978313 224877616 290878546 643780218 847615217 836378772 295151763 38292262 302030701 53686616 813080410 558945036 39961372 948622474 815415516 238723653 967577239 483969749 124995411 598463797 861582850 772170919 747233665 447391097 896806153 93922811 276979226 58707370 889782974 524872436 426375421 112194379 879889048 347652578 789711991 450416760 95117635 340983038 568440674 112319057 486751002 219155581 482781943 582164768 663306869 597041106 536696171 492115069 291446983 7863015 53448564 74280683 330344209 119979853 934729031 12749232 446601855 706753263 934670802 830264174 137614452 772413155 811173969 229037840 563172837 217925350 175488316 530528485 264244243 831958722 913280818 517400205 310782943 674235486 309758956 853272530 155641313 37968104 48169900 734947003 799642363 755886957 932790117 178793300 878125883 782948876 863505459 444050423 988385286 133158048 550111710 278254550 158756964 8958491 341061932 577682174 177503975 749238522 86485063 285417014 712749255 238330777 351443286 983661844 39066899 835652096 349670929 426741786 737856388 144380913 799619382 515919399 528801928 279745311 765971722 515953503 13681227 785670286 536920360 847993148 666351194 719788955 331587228 301493363 368015682 527966970 660232271 807958637 271120791 412069214 726334106 287567060 224523057 547035700 114874898 970510610 527555120 896620698 537098507 338725154 552672809 194932624 113786740 648808584 645807294 973829287 478163806 995414800 972418948 363134609 102286383 789243979 700610486 89957735 980963284 76352822 253242380 764552671 902136475 550350724 772731053 669197960 431492856 119783778 946797284 771952026 838697247 591366047 992374551 259784269 873732387 964389834 352638446 562797895 648018906 921042273 162079858 749565914 807949554 236961536 240890820 166657250 710392183 63190214 338261905 318976837 370505693 472302423 253620478 110674130 991380121 352463689 938578466 271992399 216020624 321030484 381693954 316117250 475893074 952916779 903524870 792945817 798518098 831463611 44912555 714577733 277057181 253225813 355493873 307130749 396645707 52789039 414776469 307820901 102704969 186066025 920787954 192922520 904009455 232076263 935016210 965366468 970015427 378336685 750532746 599404904 339027384 566889483 902370759 356338361 967370881 669684909 284917297 167243940 885277351 27927500 753314423 323751293 971249287 518215503 581767136 995908283 431830088 39517830 6039003 283069367 610569054 682162977 13524880 57891906 151281046 635371873 686942538 816145226 596272674 567814274 594440013 129650129 317856010 211009128 756959784 750362898 230513466 685233756 388222593 727260319 235500912 383831439 494120030 40104766 487616524 963781377 877335262 37542841 908077896 873293051 203409643 659016102 303775242 763470341 131890656 613283482 633440786 725498387 692769262 291018295 865895476 106425057 88308285 957021411 942499863 421791553 712826703 442927786 806559267 74458491 101121490 823334338 687758819 15980487 906101268 313476393 230479741 635176466 499950615 91918792 210217775 565709932 956018406 715317570 574329393 8340592 676210205 601580638 593284537 346049754 807130915 341151749 955089578 34237424 66600618 250635723 964496340 686273376 308068528 642046129 267709016 723986338 783899872 801047291 332141970 53811847 590347535 773621506 722070680 140523262 449874373 982368677 174233433 49536388 332446299 882690442 122415929 795415818 947228921 193912596 416657986 846184797 69456492 950614313 29053296 182231601 962257314 171195907 134976165 31827087 603044959 617371987 687186174 577499897 847429539 817982 249182189 858310094 514735476 879538504 801367388 661968192 323365496 722975087 626947939 436895726 929411914 464956971 932653275 860640312 256073934 405322809 571663359 951330462 97666620 548286344 884578596 373084741 312631690 332153025 374744402 161707029 664477642 99717377 266140463 707764069 34306818 919219561 839221612 642591548 99784244 595770569 82470617 876168399 290562395 708939491 771060832 18982146 191566066 395253785 648072511 280920460 228203707 497874944 1312566 566027517 106516980 676891336 274291203 649721239 993470056 87482761 237926245 267788969 396760915 414637091 583599034 797850343 268306051 121488941 346655283 299727979 538626635 653829975 630185233 439772050 500849734 67157530 108964102 781130405 789734069 467178611 673533494 177760219 790003395 529939489 776202916 483167045 907992309 864413538 374052363 325325397 950774726 39365637 313162413 143191087 293388477 164606006 982224026 576919603 772531284 436511025 431058591 191907823 56688462 714529378 993750007 881477623 629638385 524631802 115245232 754222181 582018747 151241971 119107306 584291861 724751673 569351809 708469049 703286748 338544697 432326092 446856186 853861366 445674710 83500695 816354750 561213421 831414673 85832855 41812957 713770972 64399320 804425315 420461425 2361573 492155591 553959676 619430542 78250452 289217518 901516307 458320467 130144718 545287826 206734158 155196125 45878325 765521173 304855246 959972169 204053662 630676808 149112449 791128815 459994504 580658634 146759232 138040016 578486708 851612519 862546762 169594565 427045698 714061038 64685005 716414660 623334712 812682560 807871415 524590337 329240783 484930688 902755857 565905046 590776210 61229772 274535497 619869380 818638798 387160218 783307150 195470051 928728372 656676456 774698387 889967318 573460180 256840024 75724597 818238210 818946781 831322469 413928552 226044899 373957950 772440434 72297517 173149244 53512133 496508692 659844029 182666625 612096878 596687389 854336370 733657887 134588443 310054828 80700802 484633249 15968668 396057022 390104455 159780440 345315818 893143691 178281856 926227319 881381485 633743673 55233316 631676706 486998742 362884512 636069297 239537688 682183839 147108930 767102628 79398068 100480858 860149092 146178051 459652591 999406214 214818385 207455102 933878836 752829452 515744934 909263493 201104465 38349906 919091011 109294306 575400265 925666008 442286334 232126108 541734751 939415988 47531282 400136682 885172041 198886948 299855534 243886623 381288190 33767209 184444252 621999646 267817124 10253183 382101483 518539065 349524761 717523479 632166832 927361293 735563154 982863560 154953891 727122470 691562709 304201586 749976703 788193989 742332250 682681779 734999587 595646794 314793721 363197896 371987667 101713971 632792835 981998057 354664178 172530595 468594681 522783344 979264491 40511597 595871495 346688074 666216228 188588096 202598311 210397604 303505600 103759630 444983190 956814375 544956515 626880944 911984336 537182224 126690538 8225248 283594776 150109265 634179228 646809054 972244982 906813850 217877385 112316171 233671421 602222955 434662305 416883328 946100010 573815445 303644579 195995766 507649972 809192199 965429087 360629092 95155290 808946412 429431775 338654335 881368362 223712477 98650836 490285637 825067151 826402846 532856761 309414480 40673072 109975659 972648425 73383897 707005069 421055215 924192312 676187169 232936202 894131489 951252580 266499911 648728185 421568768 336619192 207250876 910986944 491560424 17424273 332116552 104610964 632487164 502243352 956571134 213692192 799941958 418164642 981724557 913636978 881074819 554967455 429939890 196758720 840961894 98979986 973345753 296768786 182700072 662578719 33934563 64442323 611608225 679127846 711283361 841543518 202322899 605159164 351116819 617825439 603155359 879728752 167154875 940089401 757025032 247110401 491972746 857320823 950727276 128371183 755320138 687020756 582316391 604202353 365045299 428247008 522255481 64409141 415273468 627979055 450507346 690349873 555734028 686433292 765458653 668763340 552546461 289899592 94331640 744870924 485674624 329113742 866100514 683572955 206319262 579925984 988729028 968212214 295508309 217363909 929346594 429336672 402577995 109860144 767760007 775237571 37056121 212102859 737298777 813148990 604684834 409940650 172148285 245220632 898070252 549639529 463235490 77887084 144833717 529096352 775237313 705323083 427330819 526343426 565580484 928847771 113497123 99202210 717120979 331737843 89898270 406420809 162721040 766178023 888740258 193215638 896564426 894854273 17457061 747108604 317012761 216425716 542286286 223607165 687699695 60020209 81610262 677511184 653184024 592854281 226478633 134541572 483483670 45337927 531943980 946424145 214062224 18647087 620946692 945686547 750952813 725994927 214870048 792088376 915088174 985161341 381710789 53511583 853233276 74697333 173564522 363782501 403327059 113885678 542690432 499996605 704762511 956753095 378634049 346679886 295850838 989527237 465060618 637785272 875005834 678196511 776377901 334516818 379016736 200840903 249871960 38054742 377359658 658632378 657160996 860960408 405641354 842373157 492046348 309047681 730586823 936071769 810530602 734586582 430578210 936077516 919015836 782543621 205641064 904747205 990297933 29077540 931153028 399837153 808672318 364684731 550706580 399710851 960261369 803290586 639899920 371505850 133009979 110203550 25110035 696407355 574367968 415343170 963953771 450649715 324327289 719807643 892805277 862629624 179388354 317000732 757369335 574250133 906085467 329679031 108690122 151067924 665696838 845873470 149792729 893087255 949665821 982575864 943140818 684112658 38892772 158331537 520363067 548187786 6689770 753451985 566263390 932312681 831555004 407664600 301443037 972520946 634138507 269060379 487432148 967758629 382697975 491731347 484469805 499693538 846182421 250925263 33748278 338628746 493262845 512240118 153142376 274510832 43249139 502997161 620748029 724551242 538211471 963560920 80818637 359723025 228709743 464973136 276209136 828368402 33316609 452102023 58875072 820463124 167905135 909952671 864451946 860442849 197989507 223077697 827309096 988543713 947983391 510118867 909026102 914635373 439476580 1031516 365096306 262391303 8210299 514642202 355128531 119950323 556332495 501425584 942972561 292759491 277127562 936593954 791746959 324846681 560367185 946072953 238269591 164763209 972453659 828620269 300270246 108411147 988904013 570772283 329738640 183596418 278279615 305048037 657619720 152181157 397185487 623943431 145625231 80643979 783103880 554850985 292753568 916049114 941601926 583205047 710830567 92544748 43810788 338693835 832580350 108372842 140329908 224988061 465266759 118536689 228749882 161288279 797514219 119154216 121932449 428477908 636368098 274273189 834472923 668581720 427000990 222951850 157577620 69510379 679098620 12469332 317787985 905521289 703787667 295212888 878088046 434437027 594784557 7483879 811743578 15133081 637206323 653654208 485642941 428005623 703871740 55108527 47466269 162722264 818617869 378798316 823257528 92934629 247219226 176146890 760398828 270738737 859972392 407479715 754995291 356382589 7596289 637143576 613001839 518989068 602332046 694250375 42481796 811087768 951441643 307435564 774825293 10938491 706564386 14370942 849942413 593876692 172919669 906673537 433350305 859808211 130395428 123677920 936882633 939933242 987542645 586058244 423246309 292402545 744090795 108051460 741088095 131870310 115037500 588505012 648426536 423418495 362225504 52380137 576992164 986104675 954180881 144594036 445351059 223549591 946645151 716124765 507622989 928909389 458068188 768100928 88137473 541689340 651240282 387164937 871876190 440958359 163479170 258954809 367174225 482522827 838139790 239343678 790376545 456490180 667436414 237674705 333806894 234835827 96296361 467431617 322625529 125640142 262206967 460515116 471755270 565552629 857792676 117582213 395738550 46266658 939128582 512251624 534834077 190564149 260976208 661658436 710823053 296238894 922100984 233066230 473151373 945160854 75122848 421497743 864446597 355610053 735526916 557018758 645793203 223627652 88700707 313816924 766885380 386498277 9667073 781763455 157172115 808716735 348889510 432378020 211962873 12295739 381367888 157490578 465215557 858723035 342542454 738328910 75152652 802326113 128906505 194200209 567981582 232075774 744095329 945533074 382230051 693950982 280016293 895731250 591399039 234159613 201218791 288842797 436638627 500157007 570301068 965515557 291558760 87869570 93302601 25122135 427203580 279845049 222680676 59881744 564053622 938784911 910903619 621138028 223532665 913523562 3439997 605053285 521068642 553380123 423500815 407055295 127182839 734737823 455294689 370003186 182375805 318159802 474550701 138570687 965892916 811842059 976514629 989312273 351200829 792498676 533424819 865136905 662321366 437587444 587847844 723215669 282019962 343390421 975397966 292824402 897887751 232952755 275370111 512367908 485505141 367751570 296832777 206757210 788892229 382461933 868588079 928241036 527933804 217460011 649982095 416381086 695078677 528680193 985173402 109875679 687134707 47631575 639043555 125412113 505505039 57664201 96483819 730548634 733730499 863372220 901742140 634255041 972448310 197179013 753265177 480269743 642498097 168332613 295839080 510437917 176804696 665894585 649660328 655471236 183780586 14032327 130614956 54068759 95731840 875057373 318830998 767203366 245407904 853943638 555038139 525476625 953389413 929703260 72070487 149637618 180333903 399307546 355826283 142136103 619994422 263689608 690863719 401246027 329929506 761993883 659456739 827962522 806894 270343251 292693510 847981289 190471720 583634305 973227119 214969269 692079390 132687175 765691203 857443879 521991832 184716602 5239484 15144258 407795172 713564868 968573736 918166723 321188134 865064690 167369761 331399082 517942095 579649426 565318841 810778287 593673810 163302297 699303321 336671435 867222571 786391045 388501960 908842040 512784328 610859699 52810816 701245778 830849792 691721642 86967954 350112391 430948410 311961221 86520963 24133305 364991176 223879191 236890895 664632482 241748760 426157191 252485198 821995104 714128913 347606755 265652645 31175624 160847096 897856299 10773875 360180317 689821275 652965881 781539254 364800395 457817794 116210098 452684536 58060592 940834006 183125779 255409801 934623212 784665139 917537092 413486423 80980689 58450030 698941016 254073434 962832661 183488429 651575463 883682449 626622093 269302643 169982251 447457485 480532621 345478451 801584732 181634959 232746857 936826505 483679457 432926332 39516889 668624900 74674572 673493422 457113417 511306853 626916500 464037494 270381189 244102813 839621729 19162668 431834754 79121319 484603112 808195515 893166580 278688245 877122522 204644910 959570157 884517322 224248330 5734879 342500074 468713178 606399206 448876484 562407668 676294982 676805051 402639727 479676908 429996791 965696629 478346984 753162344 361146889 415983180 863947876 367840226 501357881 624875458 659962859 269543790 926944994 17594548 362786062 52000945 391772326 244456387 319055214 539287332 28410134 91547188 385995979 552992538 377142806 237133085 195257307 41962926 398143127 324911427 735160943 362952562 327922176 517065491 50120124 225787381 775092098 120935496 128741454 26163693 322916564 203725375 36578954 558697095 30528083 418238400 875325833 697954480 49263098 461209665 512016514 600869070 892812797 584987536 620937758 220281009 200644100 611939303 772547354 85575643 323090445 773336983 288603213 408397302 246655210 258970398 830202999 117883511 541079286 337634580 87692647 35846642 315678130 882447624 199752547 51204282 188651285 937643339 448804527 193708030 89966998 345820154 601057593 558007056 422213015 324288084 322241941 257227843 54042696 581711666 321554335 74132426 511190488 789760890 355401075 342889208 964002150 714533269 57434381 22480771 561156509 883246622 55038837 78340088 354738426 470008893 194793355 257398033 53604830 880363854 212790496 895528920 878228146 881070878 972432917 311351085 992199195 217007907 37138876 163257822 585194570 775865468 252841752 725080066 999812526 814735461 45746841 310078125 913051514 264338715 450666775 567271353 416540713 449605754 628652927 160980890 401909247 279938214 222269713 92213314 549177205 195336762 987862247 593215536 67028956 725056100 132368025 658677960 819094285 659282485 491083370 677107940 258393708 405006265 321118325 180308140 76259001 985266668 352075410 833383949 808427914 414509497 22981023 898636034 181431109 590971009 333739694 474486378 705038348 956040971 137725328 454790514 729081993 358152264 276127129 711270877 297058687 476930090 436804715 901628778 210072847 571866543 149769200 524811286 200904184 829212662 511370477 424743468 659052104 289937179 866557119 647550840 299722629 108796064 975598964 830214253 939809332 822739643 978014622 516907816 444130255 134426817 762677645 944367241 234719011 872481728 513359237 141605122 701515697 908744548 434564425 156247938 555740036 16116391 213096543 74968474 611156659 283891418 924546820 276656631 437025013 422561082 875430129 227917473 132892190 741084931 315294242 748768220 801314248 161043579 930219488 249774975 911485762 955099004 856082169 809830850 454101013 997768500 407382128 186448056 230002914 453501128 863733785 652468672 583911955 986851600 186304261 729648845 626226516 598054574 140064148 704591384 661000816 887031275 598139157 847430574 905096326 52761457 747697796 371797286 932422297 82449834 686186241 898231238 642722657 785790217 296851003 791437790 615301920 829259650 568289017 394005721 844827125 943852826 253550820 662742120 717992717 331005380 466402137 817772994 864182369 800420065 50670776 999651266 762747472 359754275 942948971 356481159 151481335 789285673 68446351 945950832 969846902 438921103 797055197 639429263 423608230 645667653 795652348 647652353 409266721 927943396 459305843 791999513 123823616 904101697 686720919 233176803 302566812 258100748 460786157 301604181 132740047 518612308 54917701 852042095 155762621 149208028 898388873 647813210 881092699 471863549 819446963 716423179 737508053 720308870 650507583 815123476 801942409 306392826 898834022 516745564 498264900 524942402 495322173 330507762 803591606 253247715 389863698 883735672 493244600 955934397 461311607 364718380 569629923 860219299 745424494 24497519 692693034 924516866 323821085 17714857 691852379 489810575 470486755 800184129 232820494 347430670 555199851 757130850 426653680 523643906 428608480 92806643 93465203 974235824 635350265 299079534 477526950 758779976 188817289 90706051 174210584 192370639 177497692 618743344 207277956 964130072 743643175 960876716 896656679 427465240 368706924 642103226 475373810 931247203 629310329 23861794 2941677 439481112 777962690 117019383 161558634 468103445 60808114 251534891 765199036 970156824 758099855 82307992 232707848 243757836 766249381 821806456 153950239 414464753 485266599 990707115 981036189 567560771 786237289 75769374 37086285 855068323 63442319 543347420 984232433 308219968 698649138 589276147 419843927 180404213 307774249 716436013 799720446 760266612 312031375 424698372 101540273 467279326 505290059 962500390 645479075 143994347 194661528 564760164 511622981 567373317 496868453 536143567 607107014 825686761 982387571 700090672 26246999 138109721 234568962 729899078 773921294 594505085 264694272 505113930 860513601 638942914 429925395 291912400 892354579 339094051 61326269 723369049 230244768 989250522 182118234 91633066 680225397 892786721 26746260 59499627 582342307 493092 436784327 65352236 51049524 853508677 762119730 40063107 158377481 699317505 567718821 306794463 431485961 714491811 125232943 711551270 604034460 580358025 919741866 454115639 653734215 183900912 591884607 352685442 724385794 721803237 13193093 852638030 151600911 988648598 630478032 364467921 815948023 824647059 834219820 803495191 167161525 624940291 395302281 260531578 31432882 262360705 479791068 46800984 553403388 307030875 79431535 613072051 683284980 849997383 611316503 388621324 506833378 467906459 839654536 252823807 360692475 313144341 615685873 980191717 797119015 872207092 155939481 170434605 987357315 59651133 35670372 557894929 242842464 562566838 72797259 926475622 582557273 605205409 951907665 788720027 351191932 932685050 735402612 849778363 112018754 8610871 633532966 133494875 566447146 178044535 499073757 361483677 125496890 808020788 749428050 860425831 665886217 798686042 362787003 847644850 858503603 620824649 604849315 549937148 982455832 443902916 718257960 411552240 287053992 877967014 760326171 160428961 819189914 449781629 804663920 484428326 816873314 752651254 438694101 990686313 605934707 762858442 567713284 554681497 917235049 986846493 492966929 394742421 62501525 795386580 147166216 857668164 487382413 157096345 751869172 963610006 220979051 509095206 279279096 280191869 388350370 482836976 456734853 955603808 960773274 377579205 297494662 708639830 318008136 268432888 484120245 702293043 131556736 75357487 495053413 710225082 87571253 149188268 244146029 522882647 144423495 772156901 363878416 418340112 109923215 437127499 657949009 662870314 814114038 710179724 649991774 67760394 543667432 285009320 940403 332138942 661695663 262498745 882041234 786616051 402524813 994045532 202373453 978546020 89494449 536232251 996826141 864618991 847393448 9428002 994027388 285739895 326537836 899422938 275003944 791774806 43767276 129566585 575666024 742263612 584861075 18929128 250320374 249931721 17960995 201052445 587131610 532059947 841236512 946191053 186848834 20735205 947012111 67567690 63745334 774191281 900926514 637624283 302325507 694832849 848292021 297263312 379006847 544243159 294290628 555341052 459705099 947434126 133567886 420729603 147637861 976849669 241983610 715975859 79329012 685858860 288293321 262175456 660755095 213041276 474380631 81406130 12302759 433549261 245543376 583663179 552594226 109782053 965588794 77791168 488762724 697277128 530426778 365953452 606922077 267814729 938031229 277301412 349226122 109344959 337709854 868927627 765139085 231587645 238200620 68369850 347125318 153985162 529425265 774960490 443633036 879072567 386130043 206210691 751777956 497445963 406183319 121985033 180532068 428953295 265911477 363456825 206110260 272868660 841492339 640362640 720315195 430293677 706747372 552643537 491286737 100353783 717267534 775413098 474546311 239845346 260934239 78222760 882245012 925815038 753923200 182775229 394467577 38193315 841967017 35536023 932132822 910205831 525655531 818403339 995761396 435925403 228288543 968990583 254223958 703640561 324500960 765964192 855585966 148961516 775808034 294258653 961836981 845316840 811429614 226172490 585929895 411646378 846504752 239205155 514294424 833337097 84450291 956232088 184362616 242434932 652921880 531414198 409450347 901545955 896970731 138154886 180029771 662690921 259477531 604529340 295116420 119396088 415306583 355082511 124576617 359389039 259478421 975397835 123494925 88424937 562641962 100952046 431109283 944572311 925010041 643482348 498255092 119853964 74266138 399642194 556525846 728894033 301928182 474924369 468688563 939849885 850382961 878192314 364562691 734444913 157445477 216211548 393546321 728995663 651860390 283501458 544200058 764699027 963672968 496931044 334484295 669323660 37680856 112731997 860870655 541097737 805070179 695097804 834686999 114724315 780555991 389458439 457829922 976286997 552294141 131654340 903609683 507069458 433783522 147152621 231111866 979937017 854356195 422766746 805045166 295861511 186998997 382458949 253449367 156768596 494942554 852201324 683564075 45806915 430523922 90621902 456783836 123605202 424345943 106069581 968232110 46667456 820776933 191335071 70286624 727438045 225523629 763483034 670290918 790574651 503164999 621408629 547270157 412592804 526764779 950772826 971274267 679954660 889220772 26757638 137075733 763137778 854355758 838772202 63768015 906341645 550080907 892290578 967345044 539065360 590247663 670168044 655759740 580627570 545125299 58624693 644371021 927232774 859041677 245056866 207721575 523019425 246275353 808386745 513462640 402730189 352247721 48980469 162774990 298440029 260865780 725794729 155446207 406807145 832187989 678608626 905920057 253772518 667403245 388384355 942598538 885454631 659446565 295376694 277157758 728643198 788634815 116903035 869231299 572529068 701351516 570592081 881771998 996281065 670539809 314558081 475112516 446127896 133911398 632378952 99312983 959508351 364687719 223457052 499779931 580219471 383954679 188470250 217570934 717420541 436890084 57564158 30787571 32785170 70657839 163582132 832424675 21705282 54003862 988870620 68571864 795542463 229625608 109889512 857786684 782769752 753057120 76962126 378304883 75191672 275109916 835497875 8191394 804182622 495037545 438236303 532353787 741763788 189275380 47856785 863635340 139787120 760923845 28129495 297982543 631399544 377817714 631720984 212359148 485394223 632110838 180871081 181529096 611047419 407740551 977399067 543180275 963229316 489174907 360687254 357608518 651947597 11767061 123042875 863307924 732441720 882183212 543435667 691491994 984236599 282525024 326207621 844687780 46174132 937493717 303629610 610167199 345151440 24862234 74455191 27048894 359085330 843182372 615399129 803027675 249518671 64264584 506613645 28948553 16487075 822551545 708441155 865967101 920843152 735934027 124803120 750094199 442818151 777974058 107752728 657439278 602926638 691885028 869045181 464983305 139541496 112432282 551761904 543127016 268177177 249629969 329010215 557425060 832468203 281291789 259847829 556339832 881813101 747991055 675324351 698689055 206682545 668369399 434710216 75248620 939074106 843226066 752509304 688515759 285507079 358741438 856814308 901265649 753161733 501227157 822202913 29528930 73247080 333368368 506789940 96965064 182952646 436968388 230790960 639477865 813496011 209333057 352507391 352313862 682638904 966341392 939530127 967964743 834886515 140185043 711257348 801049001 815114060 452638491 9206141 525693912 422255809 767464295 660202605 532489084 523395807 366804406 251364487 236805254 262410715 201258857 517058168 295292170 361338333 996321497 111942105 142883052 616678404 226498626 267949589 103339324 204788090 13356033 512015419 754991147 997818534 951049242 483580381 61316419 849221815 383432146 355001198 684616057 836729014 543102399 773834944 978866233 696619057 906650725 150645674 510670862 3279867 490245106 250765700 204997187 777263432 213633589 487278487 874221403 568935508 956630443 156920207 237768208 412273805 34866376 974436861 974802378 999128245 936928684 55526503 900881677 975274852 879520861 295435827 135619478 287463722 448049067 907154280 687395776 843150336 141731649 979091961 24977576 983372184 5180376 161724217 206065515 197266392 924477674 5225906 536615865 226905673 628095546 786320379 417279593 299818752 962397513 365472061 753438296 288894176 990816968 143483866 497412820 167472634 587716585 947106174 425151967 507383766 37178651 287320099 30053588 767530644 471660225 625885535 752897508 698490451 959044276 584217779 556076487 53587698 281930538 505332161 466696950 354834197 861495935 634139442 574285876 653698181 382001912 3800731 330556480 785290978 825118584 216961806 808423965 665397185 18913792 245595010 338150642 673212126 806509642 967771348 235047244 930071288 940493324 511369120 730112669 90893204 51741766 521358074 264795503 252603277 804868716 38240017 756450068 604124901 22696790 661750973 786373525 294955078 594817408 533006823 174370273 186527021 57869674 185162273 530919643 115172763 805383974 127689085 131115676 355895104 118526632 291730282 402267615 45553946 687800456 678603513 812652163 251009184 545836424 912407613 880913001 238336304 683482196 580727780 270143092 681494390 210900755 83596037 258102266 716517158 508378456 487199404 203236973 450408871 892374658 668321355 130335676 909318957 995065503 169725581 235270398 794692785 45040884 274468972 355281149 287202671 554275659 464107073 113129256 477148177 578268239 183158685 320150644 615215751 573682236 638864043 604219283 941965449 258810559 892712809 505091739 88799530 784167638 729292101 87021064 85115934 874771765 401614129 779105584 709294530 858202891 36097364 239415018 378061838 866752460 955168458 805356974 104471069 721966641 247098389 546676743 454145017 716986364 684139511 375519550 330489196 306076290 820504987 854228362 850497564 634746001 228092824 670050776 783744457 458567071 658900904 84037043 453092213 162939284 655284801 222594565 320355396 918428801 208938008 771850980 59002297 311670559 446178961 459210489 330456099 397135953 218312756 276405622 257385713 365301087 347718316 310445375 765682740 816422273 212644003 963748066 15038293 303842900 885289994 261252151 471785737 745350038 843599261 414822970 599758625 543639368 942818738 789230559 976873240 817710529 107766792 917740712 482928080 320123163 70316106 888820452 210162877 441767037 591465943 675005339 73983097 501097409 831410007 329925055 774004679 311252907 914307436 226646098 663535746 836969221 936276566 103909140 340379215 849166992 761597689 12399322 748727758 178887480 341780661 481474075 188069292 872280961 701308102 7597087 40154969 485127869 73855742 576603612 603204284 565010155 784873688 3754726 820060317 238616077 360288134 423691320 91091304 577835787 715464273 50898016 944969289 936076998 936639750 882046309 441540600 761508843 135363284 968302458 76888782 703179245 935106183 826537236 927708048 42733068 944361134 92270061 763529693 185041670 806892091 574340982 828245176 243351243 988639742 224349636 602243185 994832485 223383698 798377251 417277916 93687081 597629591 29629083 194442982 646472897 534295527 823504776 57498807 98095810 718156397 792945214 181198173 456859512 123382207 90296795 962131513 94103058 759695324 35404979 956950967 411933415 343975009 207677026 336716438 195825009 971532704 702760397 526609316 544450146 434185306 474183746 147349814 30710068 837194006 457704620 395414107 190647431 3737521 201564417 133768571 648163037 780427391 773364080 102630859 13804689 496675121 642191450 499915257 917538780 474755922 56285660 565310721 393482779 561084932 311007783 941265537 538073813 175285320 503763487 849225263 388303810 548846989 37931631 658137842 380858631 891464972 222208739 761916689 775896689 249386904 379180627 422637165 173493457 800258110 633570537 856232103 473064321 44636484 392005533 491217991 447419784 915573536 854800842 658366961 726106140 243894678 514809025 777002720 964937363 810527236 941272881 500116728 935947160 69452433 344126666 618431780 580261187 623300929 642234246 552569073 317931820 806463481 244605549 109688740 673122443 891227527 169902471 153173137 231354136 657594136 523277746 138595588 554579152 679196117 734033760 371432095 645910644 721257896 116592462 590508464 644661682 303756419 407135790 247013291 988408466 11064788 29683482 901266133 512264642 664488514 979206116 124514739 160156817 858116728 686340158 413397033 997328315 764684445 70788578 503225864 679716534 506606766 978586937 660126782 252297729 232099494 969530567 129039687 979553185 24313639 829289335 395881246 847571754 556222604 14360000 539312054 230161182 494058301 196265029 21226 779611148 174757900 158668875 570271387 446253969 869089695 197106489 304574447 301491607 286036477 301921406 107739723 415047331 694039705 933840451 155455171 939130939 412904201 103870295 743912337 805605026 411165847 759546587 315317372 629947258 553369122 2135002 504552000 750465822 122756372 217855392 476055013 364131995 529786415 584081652 394098429 346020522 839517405 467674968 506924991 495780233 49085695 804337886 413532497 844012239 86862466 579941949 410166734 806191983 587589572 291224639 32882669 571108988 7916134 286633640 652268200 745004097 16576199 212655109 396909674 110358763 530820103 499664983 239510921 399300841 207710403 462763516 299381150 232833091 864028734 372470257 926538797 158501602 798742027 243072501 646463237 203234144 370493191 865943332 624785277 892233519 910025411 413213562 733520716 172454905 45765576 46656141 364687239 20734299 67203978 684353513 757753425 457100197 752138927 342338440 463972868 931612858 798100155 524291316 96196259 984574574 557035367 989413390 229392893 502584892 185973369 388136196 219939545 299248384 155559839 533988857 902439674 4470391 98915556 314036471 544617503 176827827 555046502 999869316 680225482 319022924 548645058 196903607 541984932 308964967 969505175 934826229 552111956 205744939 470696081 253611095 600393762 492743360 44730600 495253616 872797620 90457412 227474224 303377146 98429868 349138820 65151693 261121998 471877287 161179329 264086684 34392309 848189990 236134658 252164658 812437501 968637976 513950022 707657939 763417670 228831911 45646732 159167554 259676359 22858961 790698097 690722161 384171444 465914681 94431977 750837627 863001969 910247895 438930279 15540699 449944075 37341857 23763731 665750856 295761332 822220864 898057396 244028430 821581162 566571757 629352192 707454015 872407385 524485289 451335052 941152210 507639885 499867792 620002845 633294110 728980909 170361609 546685082 792353912 8687407 831244089 543151478 429932417 269898377 24104209 292774886 186342514 920235740 540133578 350303479 846017855 964970259 19485635 232132127 493788175 375577434 614599565 82678178 381075136 367249929 60516942 535647478 551672428 185163762 714678865 485555759 27275112 601074621 30550680 40916364 170261466 894437142 471905470 123172016 813899690 784515096 278739315 647272344 516272532 290415552 900270468 912574204 415335704 618926083 237327360 487274822 200695944 374276483 866085753 28759202 116433073 230386445 316154628 662093929 330900403 942400235 547243128 349899131 478476225 911175872 501041187 761425833 896003192 586421674 544568794 542052473 712122867 467632613 565778632 350125217 639644794 392777642 402428620 184323917 72683956 329161372 414444290 119750836 407582066 692729530 374996146 130023974 860788361 739130349 759902171 119271103 739254080 462686091 465717886 334854936 63777485 251871994 995489028 490443369 871725571 872138218 46849014 932261204 579808523 430110042 176006634 511094923 667612302 410867216 360446111 321650331 554830069 884815817 842444777 769898874 680856576 532592788 54668815 688531846 477749375 456360166 735436660 878845651 670055517 535732621 40768682 68386832 750654907 950209195 30304893 206568314 618117182 78030350 530192702 866922129 823725032 848076204 325651293 284880980 841335200 735055601 892772582 451427599 745018855 282603225 393465476 821952546 187235614 225665566 995320438 838601048 254800244 842480340 394954619 252593925 14273963 952397297 669935747 894741942 743049253 312928565 632769036 923780880 599421855 45804987 91156308 190456224 249227380 956457886 672719658 49092349 340920667 424162086 211187262 268599634 842622141 536500760 769330129 913226120 262872117 772315218 243615525 369789162 513962026 6950549 862346625 834244416 361654896 628614785 982091573 823392298 73170182 713758602 243861741 445465560 132774830 171361333 631179801 538343935 248060909 36943270 266052870 16219196 248659551 437970854 77991214 174812376 652579599 915226616 212884567 919193685 117175779 791440732 291192709 928909695 360035749 588217780 788968390 861846871 627697917 537718305 212626452 695480891 999633860 572591626 906425111 281869090 876778540 284939362 496794745 329887775 800245370 382340744 341005667 519255817 642982776 745321088 726780200 581132023 495777765 694372127 423307034 625410585 723401085 239140740 520020901 271737954 734354836 223014266 413842152 495142467 690643296 700868506 475914632 268969439 755904668 575713559 111863902 715923253 18677323 810397115 901479308 320761282 843003995 121126757 763070273 992588599 892498818 951385234 980836682 316982789 348652425 947838621 863318162 442329149 750492116 43939069 538432655 726974596 833738991 593218001 695831774 952253451 548638395 188987 281006696 246202257 763411859 229250835 647388785 18807328 472268712 107099765 654945261 206925147 722052814 596616 959506715 804736936 95164728 754101558 649334593 797917153 84569751 276569782 694015067 511037255 506105061 454612804 43925516 904869064 197202028 770694265 82424405 466326330 646060957 562162920 79031091 974084780 144761487 233758293 870045698 857528586 322268825 52899926 423942775 32434535 873762410 214618625 869008835 636961101 874411049 305116184 803630983 835421613 937144197 663976701 436577528 399051934 868986682 28088994 203669929 187019545 951263166 513219478 657376698 218310480 655539855 441268294 70811497 964767349 494341694 260952999 730816993 10666872 347598519 225646330 776512320 903370509 483964398 515911623 658950174 438573425 193070997 673142782 618737809 709916847 212159576 266025652 20677023 221818374 436467040 58401808 681687054 110114079 381861680 804168025 869653273 533671674 29890684 236684827 377707888 210791275 471692364 177265584 336601856 787046868 410284745 125334934 611836811 903338183 628415679 350789323 909914825 52765407 982617613 779231076 558159823 488691908 67414286 235827387 609027079 130249580 183045052 4646842 651375381 984061054 99789422 492695810 522860687 195389620 674999574 373254137 228194744 533048841 443174051 614468355 585574144 411723615 302251186 498449558 133229977 418370987 178229399 948950638 30695267 460615114 832398555 18868557 451952253 543153970 569417821 424118056 813421501 737718751 893372804 959606566 379912227 882530098 974795680 545828059 978467831 109895569 831818783 901339139 908178850 264694151 565099659 634112984 354614822 137356581 81146140 900286629 913596305 572428460 663695161 165577133 235468156 324118194 153035922 974657516 402238519 450220262 593750539 625085053 201288718 448229279 574147055 664683885 686026126 969841086 937939164 292580097 36225174 522516953 449985974 749919357 30031537 299660642 66864202 864645607 206156779 67736368 362265452 826956852 846448422 796282838 975082688 425183786 999302465 142234118 565115548 463391780 53530670 94217359 858812398 164120919 552286559 989858467 778418300 589005245 596385875 406151614 144932287 256095758 555708246 695775299 605079670 527732683 895930079 749318429 884913639 891183130 165459602 905275203 845555271 614398352 587942174 189421463 603151140 127590251 304266740 788649409 525961773 238751637 991729821 418084987 248578851 781699589 939557905 196660783 879535946 715817194 941845494 173671394 180822075 119753721 927212335 816356565 540040841 411354703 314506704 187762954 985340604 534221757 26259747 681892133 794061098 921881546 511877759 422178489 824198647 522183202 487060114 516168479 371075978 842960636 243430743 196316554 79911111 798380631 811648814 915007570 196816321 819969678 32637727 331274339 303159420 651070005 791556844 405455091 371851024 312451941 193667009 932200655 807013887 120132269 825925422 941304813 345461149 927080328 753844864 141898716 122210024 876416596 929733904 711217766 603065119 255792852 396456305 108428948 546765825 916459340 376691639 884347369 30945810 305414135 77422022 357456889 670885718 884677073 869038632 196257442 231374089 594094686 21453807 566776694 994245552 952127184 894630375 630934100 54455048 763435351 568633225 581114210 681313527 754581476 115397444 947405148 215634420 161984775 462048802 23000535 803477560 336297417 843379424 371909734 707688507 523714821 293810624 65901463 818610873 49684592 719173937 564675678 539175974 143520135 563332635 550325773 369500414 497493118 863990254 336771242 862375202 789761619 840725796 653315042 515302226 301461557 278850404 433492873 709697538 771756480 811851464 480724798 815129475 308559296 726739995 459978995 230688128 650346613 901755064 219483710 14343348 152743421 525609072 321528736 385714689 188103760 748224206 460974481 815035880 568917989 819401871 878659233 951386618 996564056 37574170 602274856 209046819 334106820 324763507 59623695 665480098 569663225 762500342 275169618 223915240 111137278 322957252 815637063 538753613 260140614 249128063 92731978 170673945 764220827 900781446 680732273 921536125 948535602 736740874 143296284 436158416 301576806 600400763 618070289 838079611 675948192 897502691 424173988 609859788 5403287 452587197 438067653 199232512 852525086 450404267 884558412 262804049 498366740 930417622 664048763 998505583 365170701 664308449 183065313 869475913 200125372 863169520 719227063 461375194 471129242 995250739 611838065 159331455 47280479 937336670 565698907 370123222 726237402 531609619 797565102 15510504 582610516 995552832 28191518 298036286 553649925 331988804 203310601 115826876 434652176 622019911 391922645 55913774 816389259 891826428 200962738 354544320 580381038 264783472 220342402 652955144 892029711 413342550 710392034 372003454 169500740 150412978 186108050 159754010 878702463 572580742 878005637 280909213 858805626 50365643 958048032 69442042 270079939 201648276 811702439 852702613 312282869 162145867 811031710 381206545 71171071 972856007 566418123 378748963 882912220 703981876 446902783 109908331 988324936 358044870 271762294 110386112 177867928 267485019 832512294 100183841 455046132 475597170 186144939 338349829 103565125 918054650 785666982 7576684 657204847 181973733 175453909 937060589 930297806 823067895 58499133 300114224 30884241 330857669 602492485 848949378 462287356 253655384 538745380 291973467 638434145 332359489 396888709 816225225 190543368 984146066 592955316 433168295 799013843 46687904 470271645 64188153 410547885 538465518 580056358 64074064 875679182 861674698 139746366 235915564 640809841 618831243 544458017 130667785 177274318 556239317 419712168 790017413 656044869 760608500 457495348 24936540 609608571 138017451 795177284 639753242 254312233 811762078 870623902 16308657 552105747 308143963 335799655 383545611 114536543 665740681 663239602 42000757 603362841 924195666 247131308 537459723 818811911 161139069 397131590 266301039 57397846 955663419 267499591 412949023 905103607 959643474 87629119 554273438 170750339 385902725 469926111 822477995 618299795 866035410 194668868 671496240 945608309 604336142 438549209 908074673 705583569 985616848 949325394 840371300 768265719 603151287 529729354 843976012 47403570 282899593 498603239 573572112 258882500 249482828 937429912 225150189 519061328 264622552 373460346 846222674 833440755 84204516 473364443 223447077 306843174 532023241 480749753 691190152 797322554 656778688 483447769 309719172 960583770 163487387 648744763 636065240 94803522 88644386 56234822 107254976 847222734 963172046 994527496 240503440 592106593 384194933 958316184 541102976 644422177 746881137 923306902 811485186 390299339 412275545 667840275 82692412 707038549 672909279 163455670 149829592 782878472 598503196 250319625 602144452 223152317 86773271 32789855 741377922 584895345 43342124 17502807 145602695 335039191 600164214 888863993 140200080 847037370 71816844 581868501 620381878 683239918 407119588 182373439 115623393 967598166 125157384 918782941 961689956 314781545 496986511 890178200 529688057 155537709 282625433 690838857 208452929 766458082 877321817 743562592 926594810 7185957 231576414 776074282 67126497 955404405 894483673 851340883 954512295 936243222 954308962 726257544 582619635 589818829 601365831 635164398 50933161 416203001 585111826 527210424 399331517 716062998 765263484 685152464 550436458 698427573 290038809 328199818 147864884 808596132 221044410 702903149 648240630 601220007 799831126 900372353 968042067 628063126 843073212 493176451 579537875 623264940 557582667 945393460 261769784 419011949 216825921 470276424 668320228 67473194 909359454 677066003 99298461 994519709 438833898 895695705 867235548 745567410 627209878 509238257 435911394 188860347 219269294 786179368 932530110 397746512 813856237 142733289 481352246 641841438 684463134 532449410 15094864 897005733 341286146 89372520 738879654 952714017 647268572 390539600 990812601 649331283 267635189 334539312 389192634 476529615 293898859 757279767 672259650 598964136 409403449 824073755 44819530 380769362 85933915 5400255 714060660 181590661 867048386 228035374 428863874 128422060 835566014 744449738 529301868 247813545 148225219 191238688 813553038 338992788 914905052 921888942 278245306 78250814 625928875 934677242 447769531 323811601 858652930 549003477 784675100 582853480 1034847 504183866 790429146 807608429 49532984 80467779 353128136 720886221 505077028 151518443 230485715 699621020 13928275 265244185 219940361 434025024 963625118 875679337 93458782 885750586 843479320 407575146 784271156 377775780 710704656 998223865 495063342 244594088 595051923 942141302 76037713 58282330 966601527 838026 125545931 161461403 337984980 366875978 72227290 847454296 218774838 218082582 478576143 297638505 2530371 387481401 365221124 190621684 774660832 749950736 208231513 517077846 748554084 251579117 669694877 518535886 920151373 695782420 813065422 734478153 243798216 273895938 898626904 901609254 861057443 524822437 810757428 161213336 191451995 59793953 504781021 763223575 784713605 333932825 949712634 846532646 224611919 575046279 570733057 979572014 723929118 558977249 312895919 487002578 742839909 633515146 18279400 459539421 69533145 497965292 349353293 199390363 778958413 873056140 495168804 157322318 557323415 815974257 332513313 5208806 998679043 843414261 65806383 54035859 308180476 632850544 343504975 918376876 228587217 610424001 964457242 493823682 202525135 464687201 608694857 497630677 387574539 630899647 614708309 619047480 740787315 8820741 973719988 232343084 651094883 251827204 551267389 90501716 234864277 921626485 305442238 891530568 539727196 412101293 276181827 225442578 969304659 213535443 903673370 445150449 766987843 408025159 764324000 784192719 231948395 210829729 172358351 535870154 993410951 844157611 160445970 817453718 793016423 130841685 619128294 594602381 501979830 225934028 66717319 593841720 52800931 777409690 657763114 30306592 45931643 478403692 267539446 830765194 616772262 700862557 706153759 852430325 735676497 727771290 530046482 892923900 194293892 691024491 61411873 621532875 346906661 849979536 352149441 525522077 986391512 371754601 953461967 36054377 765992121 975346235 108067910 167627963 930692 840368300 534548555 907964738 659251500 555825903 889115316 687590733 858535013 774816134 291140034 614061593 941445568 682908014 616600681 59033187 949024096 670048863 108270503 679299935 791513261 493902271 981519316 951185143 353641507 517574503 414429604 310023602 395914360 230465791 113835759 937009653 22073968 565827445 239546249 197536346 536518183 420285925 208280122 592660203 122261820 88010321 349743675 735176649 226543001 832437174 853854344 294104378 533209391 758299045 239194875 496515226 982133158 581998466 784201127 849011464 606546472 173310168 24370980 546545240 893095840 299864399 665679853 351105536 337564855 352923745 555368157 785097883 123798971 5663008 650301737 600823540 671205147 309105194 7989530 640590670 155994930 890245056 579385968 193945013 986612436 266136696 163602269 623529675 183518887 77985576 979419675 318412768 611648759 163481257 24878716 3129684 932210146 813206970 272585731 73737965 347802580 287943712 658696295 930399876 946083834 36892401 151216042 38826106 926712298 769437651 749737203 843181594 881444110 35297466 817247927 590403920 711497006 91238412 638944164 968196120 892060296 97565660 389882404 601387463 341812527 288691901 301229818 79201428 345141014 972449105 782794680 228230776 497499632 738132251 239581184 577199307 634690276 916317548 181865934 965892878 557795319 452545071 609061468 307639764 656164287 969080222 162421298 3887008 886772254 140282388 69180881 296922423 739776058 820178596 47029131 828628417 281450774 173171609 313328622 582216649 271271408 17240462 270911103 457260965 194786755 113462160 767764174 403040478 223176084 836523046 973492070 759048579 63348607 83118585 267243945 199109856 896354173 322426025 303378624 792315203 574446840 21558264 188670414 507907304 244981273 355529091 452402646 494930116 801089403 324758100 597364657 46150594 932026818 327227865 388091970 21658931 275868843 128642577 76231695 163405621 474817533 673685608 922830290 832619478 558729428 5801983 890678988 895008043 745476322 191268520 425438138 290951216 754463867 144544941 811482316 523789242 829117422 564328936 41249381 55649284 961092372 750659533 354794279 314300039 427558347 260636665 943011395 256632382 26796715 148833827 785548836 613910101 890042022 643659048 699386640 76026596 372331960 389384973 908082702 905756709 810621046 981216682 123867064 737300541 78772374 901919652 70415253 57232568 640644552 429148461 632793295 600325218 388865706 404782182 630541992 156304460 234797877 571389476 236207814 933697622 628262100 51690454 277958366 841973540 425897583 834589360 912143112 358007928 354796192 946789912 278750098 107406947 986412043 335778050 285658327 999025403 867494610 255582674 389556597 645293328 160754227 985748692 162346510 122642708 483853866 771577424 678844496 770841769 584632269 570193003 234852280 168008198 576428008 386286201 153300349 9171609 955815988 62884794 822040446 80837332 404156875 245491490 364030067 553092537 302028769 369061024 847654019 897155793 189082845 664451248 378100605 385617311 240171192 17885666 377643545 690709817 411935669 113080109 93056038 971606221 871150066 327160453 53137598 723841358 571387245 413864039 776020363 874430125 831643041 985811249 284124551 680224130 928960798 173759323 744724968 154794341 96684198 526562430 133654701 712762182 622996201 373619740 566324691 757218871 928247105 704754051 101972889 637942603 978641965 43884218 349531756 697269581 717846757 483044759 471565897 130471905 813506865 736443647 281271153 514159448 184069135 260510641 266760418 683109756 19624143 109545849 442974281 379807893 613364598 430213433 969858882 355919011 202953438 930717664 417935357 731833010 309590888 579929673 79025316 163783435 92551714 807023343 470813378 805970729 615575998 446332933 168896451 378950541 923240115 981978706 781057261 47277256 197269210 573183438 710516331 96945264 24176148 66875534 950796999 284524060 771359871 695744634 47500623 229603009 512187521 164927934 966380464 741214463 996165524 111688533 133341355 240315454 272799747 675042752 537523502 301969848 822918264 992763760 257871976 573639588 620611767 151933031 423048513 257931753 508862643 729624340 108415052 57366089 800632479 536264062 583531381 489030349 901091787 985653098 253101128 996478765 157685706 521964778 869695278 407077453 444369843 312419162 30694915 792071162 174238747 432147730 94978560 782760407 82544039 43149695 607909842 562079943 252396731 912834064 768204647 920874979 677223217 699754974 984927209 241978238 603655246 816140268 37976483 823164000 744696937 865087882 846218388 600951031 175560534 748418567 182658191 847043107 150209088 962683858 634981321 570183507 512191046 265358627 339245231 192740477 40247935 891486906 817361948 770141207 685904345 807103175 540694221 392591124 447112280 515220863 66234660 69784433 930870873 567281297 808037712 870808247 884367973 672209689 173268652 700310282 675537825 617372862 201239998 592392838 862805836 266298201 868447026 41625075 36281666 751756818 244682396 477136592 16375473 184784333 39596689 599764906 79337480 693365677 54312499 90120613 527568342 421987347 230675550 722716246 347072442 41854011 575339762 566352830 1329355 484418375 535531433 238172141 463699764 753471050 82130166 22883280 287147840 743226376 207988109 931205958 715246581 360106535 359953126 522817494 513635587 570954691 836471005 619390499 856162852 22642539 284343903 266497601 309200751 540196257 409166106 36763474 312006782 724983924 136370353 560319019 812725224 17831947 175484225 748785857 508758178 603180688 360118088 656845167 113512074 97690165 947400269 139101703 763132483 194919925 730864279 595104500 82193073 965184397 278460668 126742274 447166593 279583723 309017197 420085276 133922946 725213529 789045113 437169121 839221287 78330259 824311047 397159097 543665861 717701690 665790940 450881000 839959962 95231384 731279759 141883716 8248234 629210714 895411550 697318700 821309421 455790083 60889044 120209480 523565417 740912456 565843266 537765795 677284411 414028642 323867931 360828372 896875642 254056453 691332999 170687426 136525984 249380730 986657359 720364247 290953343 155639588 456636720 860648459 173928033 806829084 125218780 461146076 308948124 182706063 124055188 118888840 210146858 219010799 232621118 254783025 535928959 44339839 850296490 425484371 902759960 362646551 143068142 264691292 746907913 529029555 538179358 854696846 879191814 743388738 240563449 883369366 938103914 754090609 884137203 816764246 408191808 111975875 306714581 430352390 556963717 260498359 839588849 636439645 167324 357486138 855992291 569573150 624696730 34655563 495969880 177804935 517897789 635904198 88631136 750096839 128824295 10403861 352423336 902890451 469006874 317702177 87978984 701355096 656320211 853617717 627133247 548205816 439764934 585784346 568055178 86711665 82573043 43351072 345774330 362632253 206702570 868037761 113076877 305868559 434767327 714140489 835244793 808906050 424170010 417060281 575575092 480901228 775552931 444850800 979233413 261546223 744982506 334981475 593297345 326710947 654410483 215976477 568592770 278935352 861928913 605649340 24424640 436379960 234548694 721897372 339575345 84531380 869520689 931025364 842902387 327538542 728102981 827599479 790423916 783883904 553364740 700842095 799958779 391229031 526382194 12620769 333012424 608520174 166980660 134457598 735821145 769074892 966428098 26505478 215992524 736845014 975916266 70125363 734985707 116279978 250946958 132910379 188482303 299031491 437810667 816018713 524574833 769197621 273088636 884821171 540458572 960660171 363101527 391754772 484450004 250031255 197789351 426960238 627674124 617413361 611577518 764790019 281546608 605093530 634064261 93730253 553695258 503805300 977426777 361392342 630390159 95547981 223045758 207655325 243630553 456763570 258457282 388639371 489059907 923646258 208579478 179572241 199100804 700620908 158158735 906307903 53871090 908591494 133457646 612141517 446002909 709715688 622653252 232256538 283339343 927099805 47728098 338165225 947315584 849477137 277091511 958994128 571601092 141448639 977978005 393187752 549427933 348683797 967737216 222661144 922817679 573965259 508064522 525827223 181350538 239567623 382381937 201480296 248964770 805126687 91874518 474603835 763648419 245693839 653175257 934559945 906753016 255448759 120613056 103845486 687599170 70849558 489647467 984757136 223167409 973031688 716057036 378891974 67672610 687123264 116645358 734138106 99555287 73122217 657456124 703226602 950122599 4718120 248455413 351728605 208613678 244496680 271328357 369390784 592275655 665304896 778653016 460710938 485826255 588587447 990060553 736202505 169931384 845112604 654956952 325418749 336845397 798569655 105853171 321893768 969737738 423949642 321328087 305392319 152942275 776130395 210084398 758855431 442199009 168199000 672006107 20834410 815759757 868567959 465578748 102238857 440131642 832621092 219411036 669149198 338936878 544364570 776472042 638614 826276658 588935241 817155277 905508496 986734072 137909905 307387012 833513483 289493920 65309176 783534749 693859401 977134665 627062836 185423272 619485517 128051845 709140598 520667279 743569295 462726286 325891125 294466461 956217744 566768947 108480696 807205595 712507091 960091069 783806189 217109146 568674721 451795924 597603693 161392983 77237280 835397703 35830470 171641060 1960015 837859262 835412674 771743763 969484327 374129906 579483691 988327396 790684706 61697939 316839325 522344356 189540355 439064327 711386774 500047331 220559535 574054806 489286435 343065762 791185161 790860615 21427255 48742498 194156214 46040774 472998625 292695466 677049391 509339811 549506111 569508571 156300558 881822279 811064242 813798102 243819021 293648286 103572680 19729106 41218833 580042935 851102416 580473061 977240828 234187303 20014488 942547446 845323775 309608886 565635777 193073872 709957681 15604153 637203206 831070761 819591969 691662480 385746429 737843084 7489098 644111997 986179635 183791202 150757049 224588947 696705380 637148489 404327096 669488888 886207072 350380697 879937782 448474523 911520256 864981255 286381409 513895067 768439747 526440508 417940549 388721690 75334353 326948842 827790342 74631085 515630644 415539093 284581553 982244753 638847753 408114179 676784996 805827664 245823410 567096483 273152308 81568432 870168346 871711998 717118400 712039534 363771662 992835810 788812117 256674916 983118140 234762966 808221203 84676661 725975783 394668199 493683440 305653234 809761818 472300136 940945098 913594809 217711161 793881210 130771413 193923345 190869397 259800350 780102988 231608673 984352220 813788128 681939512 771630892 14706256 518242616 71080865 878008845 73670250 603288654 30594694 816562981 534235031 620713811 505849452 277062977 449641394 30010793 653447845 342193184 653567956 827823438 268803242 600646869 849841015 134698627 931983036 327577092 318242626 458929130 29973611 65082748 774958777 695856672 171031383 93599555 406436559 931784633 491243525 847947860 240473598 64074881 741932982 123759761 361351449 157797582 392399278 292097113 679455591 794893538 113076562 329235639 304884423 342200917 990512972 43715036 876559286 311438796 487411753 965224602 442281493 312416693 526864606 855968263 400029191 485721861 374675173 100185850 193724384 741156621 709387178 617911825 374920007 789959101 350252137 721028415 795408910 145764604 738498716 723428782 713615206 116609146 200929135 476775489 932125802 502725997 721661686 647189603 622834364 454407789 218503209 944214333 120326489 620901186 502030556 549607939 584014569 495886570 674226874 781922807 903514322 308067295 468578084 47357658 447398271 783269359 292972767 734905661 544316392 496459846 573901195 97694287 892843308 453366286 776725247 707289230 761727584 365069977 46534861 462308754 207351643 781082777 873708453 321429773 763344992 955919077 671388559 130825016 633551517 105296275 21158570 168376940 394971682 714812862 713153572 369981506 921859352 715586436 920448610 152807910 611577788 69234870 402339463 727455747 357105188 374314747 792119636 536740754 272210131 26191476 275975809 698337384 658780667 339395731 779511223 149706727 875055536 140412718 331046978 235731045 705807364 658568434 857359754 502021553 984732575 256941534 758183655 686775930 34012162 306261286 52433704 698524886 367395256 185875896 351382125 421884424 784033700 285451499 246154154 340161819 607126588 986590412 695103624 67017449 564835042 735615714 58293881 502857704 735297762 958836523 776547283 102617059 257910831 859672037 141737910 79217351 199242433 983731220 747250334 293035157 735370659 803889263 695268036 585878779 868976635 732074126 716335085 641476822 652618866 994995067 834114867 63185804 361078457 189227244 491391018 883140053 299940121 815504737 124073674 279062779 650398135 244433195 921338957 598856370 693928407 367803602 432410829 643550246 321839460 394123881 251545807 418478278 242194149 957416360 713852181 981524678 947476863 190888077 426610700 848257187 680426692 818952236 329873992 270128190 959256621 666814724 115155211 403186250 607318469 56910156 922934923 953661640 793260314 625800499 681946164 732623434 629486561 729010467 821181027 169644939 347884446 268794792 454672570 447005066 199766474 379753888 663053282 278869670 287296972 542253419 329658646 421668955 56623449 546297231 95776558 602245485 630730879 597798680 735531434 983969917 730321078 282394411 689492065 584690811 655638587 73017035 529348799 916135747 720937187 561814558 148435154 175811091 355521720 34976296 260835720 778473519 434447714 909757755 748913337 782219415 54809672 426273896 996481380 938479262 277318150 78785693 571745433 872790744 987402581 95462550 787874489 185186404 27829976 178580861 544139204 235121116 993338826 858095303 220004430 720139905 804350517 870140276 631276494 963234731 769862941 341387364 731181005 206823018 897283028 723135506 271029204 326991170 739739994 396179785 686372444 268662730 601956366 781709932 131065745 141218865 887060046 839108505 491163143 87267237 835403757 650017548 502133427 650462026 21509133 308626347 839264877 460926859 182013183 115659719 924303646 489901026 439564445 585397955 161640559 847020290 12363510 564089437 512935513 836067892 467030747 624952296 719543032 79313234 991534342 504069324 934908203 391413241 322457918 314432557 57059713 135096427 655019341 303975446 490548303 568334725 146706525 307746869 20166915 732860850 538711791 251564502 462530707 448812884 890603273 613962014 573477832 257799516 18220429 270107127 88148993 312305484 970164149 832609492 890875255 816787657 118863403 461387535 317710684 38666048 83574539 824472215 853445272 722779974 896808976 244052631 132165660 829502395 230268808 799830209 963994916 642062754 986979236 760494473 583768031 590542137 928008043 986794152 256895508 972319783 810631091 682130717 122080623 978696274 333715753 250374563 603256730 48247247 390169291 256624506 131815629 926691402 116079852 663781366 488479051 118174630 740273177 619943633 15391391 988345077 279535884 419662293 486153169 97530043 806738679 772394517 588403401 842815493 782441895 432667219 879833965 407775468 605807739 620434958 427726864 992926822 783226178 37556532 649068697 160277176 948886495 838443937 303512129 114183945 152828988 243986068 391942903 984839834 452945031 767778542 959436344 691398656 515966608 986483231 246848543 642141384 42338420 991369777 684600827 707557668 236186818 255283791 703880543 767661497 526879402 721290139 414403423 425990897 185244477 134779705 222273574 314270985 389862941 349425209 471560952 547227879 531184721 926665462 462561768 199047042 459398304 263519168 915040094 132224931 815317106 859336307 312739726 670473933 861637531 379659348 185112920 426743989 398013444 862845447 848268810 726061975 384388366 831393020 45650465 818157911 209435401 557078913 373533472 242950490 166291099 640014099 421376301 745885569 748828683 6923618 161837745 548791940 34508570 614147588 169997317 801621574 395795060 302108093 941285245 421666591 783463852 281863920 853538267 348760561 163783997 876761427 521782141 191210497 445481299 879528673 939438293 849050638 301501574 458308987 34182279 552519058 104171310 287773319 430596392 525129347 170474264 675853517 723310399 566395530 522508643 347623892 531975463 274052132 686561222 601741752 571659331 177408480 594263188 561974993 260116329 405691294 263292339 136089820 626826829 462043356 378415050 105815053 751547936 79814314 814920666 167578886 719895726 467181476 76533342 656056028 920756201 702700062 547750565 14785442 809500569 395383746 642682860 357480386 405007302 255073551 757414504 195950073 350832261 640276826 591009788 254859855 971611453 930139605 478477154 901372717 177995739 932015743 816248036 132444705 423604273 764855236 827935113 555731967 335674626 138594647 41991296 231246588 216258410 882759338 655344576 108103821 840380744 613142443 515380428 834139274 482896281 997488510 238748647 147274154 968249292 689053607 104161627 304426893 502206667 485339309 854411272 973870214 604162775 92477528 119948663 689461960 962756182 104586684 959974441 852955536 585341245 784196577 381940217 546796144 68962414 566838272 198347730 498145947 128189968 435089486 20110567 399245562 210401535 998176523 577826576 884204787 532791932 323224616 865510538 181794475 496382607 751753534 587219558 582835052 105547095 498781859 912244359 274440296 44900667 955497390 254853755 848790844 781151562 493509223 19283736 729550822 780154298 661438977 430602830 785023147 722059338 997134832 148525378 812606999 13251014 690914334 813273677 104145320 951041202 378426352 104522695 994216384 196730856 257486712 829839245 761174579 856465391 630231015 272529130 637459403 608219436 548810426 924443372 458409247 434780754 916952093 223527678 342040638 397593965 861473928 38599547 973963657 626051200 245351487 686118831 562443684 191560155 378360594 203828264 386081354 993470021 19373075 380065945 7924410 315409060 350288859 148004685 899347147 945896967 171317674 933039779 814849481 142159860 800920989 205635010 467085351 43344496 265983113 996292975 424033610 702656282 570500261 943411663 50544331 150755622 613424500 600721643 812842446 846823504 975939678 842255948 782644674 321779834 613650248 746020696 349390630 947960417 218602834 10137073 573861962 932066274 871142983 602306648 970506304 211337962 837364859 497112650 85378225 233223744 794450185 941412508 837647723 407352358 681751250 163641019 424161336 867745276 675578907 334514496 683794355 77140193 371657487 757773946 711711601 697564011 118625869 80387233 35888725 359126341 754232450 751179022 390139757 818493678 939058835 100680316 853789393 546374711 797592028 665663136 564168353 472925666 697871270 639656644 952921545 5495308 503561168 138388387 854078772 484376089 184404271 463519183 577900482 181096166 640223407 765000497 924022865 20762630 318435453 539722212 181467132 708268366 396647528 662615559 819585348 805633481 15102038 642137803 969327689 3953492 556586953 437408691 988709398 58693190 952678706 834643807 337911901 928105658 26582015 451615514 733794331 699424559 464418457 91374458 33517742 5213997 772464815 343560419 916277757 465199342 20417002 787373272 99754067 337227072 743231465 799265347 834444660 391006429 801537526 389582985 479569454 485140796 558893546 909113112 535617399 809879453 296581727 814635346 614076209 446014201 349605557 330344776 301630828 280270197 768248956 299497121 821238910 371181715 289322113 465436852 778852032 697663088 90988967 261001960 331724599 716669826 686688501 359895048 777826361 746794509 116103656 721608453 967253155 989854966 999526100 763215947 476055224 670576528 538653457 212851751 60741113 703498667 154502477 550073817 119567510 979942344 947900135 477532121 710633876 148037362 998983095 197611274 102707643 360300518 902615028 335964132 296869204 376489364 700829027 73351028 560766657 149406346 520375388 412742644 403194263 102672487 29781132 946237527 7574722 848559241 802683267 86707020 444333752 122041603 670744391 493795608 401648945 143422690 937233642 194690428 299312549 168716453 148710153 586969473 245242133 787015981 790158175 86306067 404654202 834332616 461162684 191190344 428552378 77568130 978837241 975454301 697627636 997432264 271382300 307008748 506953939 213302009 273334196 790506776 973916930 6603575 32412204 533195501 566682059 360359556 400798642 533694529 968874072 721208372 149036538 1565076 720199681 452969190 338717971 616631506 761125541 835573529 330511151 142374739 638871335 627637307 592635697 430048484 979517355 495503513 13876557 403443630 893729733 312272058 628104332 649766897 30217486 196309058 650624407 561049601 894512201 775868519 833265919 437597685 949280019 806008475 613550244 829795376 791917755 138640339 643233088 560562039 973537920 290320288 341367737 596786698 275117428 705649851 923153306 665300152 707006802 711017810 924773603 812468256 189696609 323144593 520232744 536604689 722626260 997054808 501318149 91108101 454920416 207562042 738242380 887798944 371212679 200469481 388948427 708948739 154533527 964095037 31880250 258575573 237760212 486298806 920970946 554040839 762025697 859217943 46599281 374510048 285790563 165006323 232266979 792342012 361467746 963316993 408042594 526300029 274490764 825914575 59132973 213504398 67590113 733465286 296279370 641917281 52260496 960415925 95602123 987352404 895366737 53971298 383214695 757948450 190108156 256242632 167351187 519093974 428820035 82329200 741027098 969608882 372064702 4411377 142617554 651625722 169467676 681124379 567005891 5695067 765661980 365245983 197870716 184957102 814478605 334621831 961500476 94610237 585344027 574162710 417289401 361895470 793461819 480300965 37086629 84401240 872079478 213048617 452376700 69013756 334227008 759048890 846493035 672944352 375850554 621701120 89394163 120888466 783108561 52391944 980253927 948409199 514877256 180281877 545984887 315922648 444199021 231363760 975555251 942482977 64132809 667882006 643686452 76840118 498717479 119542777 634771441 712230399 835560157 68981049 574696450 599485010 315909878 440913579 566577902 741210053 623086757 610703626 2524598 316425265 837760683 65090039 47010415 279471638 450665665 958512309 830108105 468684179 951007767 505645028 763543924 527164561 84293760 130467054 161982165 832717738 205215000 399929925 46887663 906116314 642047442 360390857 582974325 835499059 331072255 1241414 172146460 858532615 440384947 492978559 439817443 372371904 564251385 330866928 512518620 409758196 551413393 402998588 121082780 673153563 143016305 784650712 891688588 885024245 143732480 989492407 495201328 328173599 782713498 69955716 185661837 520589204 789673457 130548372 378575759 319408998 811521550 649468077 350035932 196241107 699725027 449771004 849138973 900094227 215665010 148502174 268234833 755820138 914797261 403970143 841027478 300003083 201284710 450564590 587310026 145923677 294259734 151541052 414161767 504967826 958521819 382118698 465825534 404576887 602174484 361329984 434226707 983484110 135695575 801738665 722404060 591609225 571843274 624501391 532659783 670728240 188312316 966051774 881022168 351830388 707600936 135677405 522259310 109554628 803361276 365331053 93206409 909686747 112889309 158246944 392307803 200922212 659088586 681775674 86908717 445798512 985294094 300688092 603092682 368430380 810297252 467304213 630029491 456691399 2780154 167016810 23856054 271723713 164534975 597485002 880282742 539863318 369460501 419869667 561648285 440810181 254736595 826418873 173249510 37855461 156122869 135967281 574863618 919743597 727937208 159989935 675570267 809845524 831392034 974909725 423571582 903441316 162084900 254350941 90661221 651787527 509301611 688298421 168641472 163275522 380798893 732599637 88692146 644514414 220665962 611798348 344688679 757202580 325020107 317598371 438029852 993349816 356329964 839205096 784277012 492245731 667880553 853400390 507455944 168178107 265205321 588103831 288511914 365966774 199617651 472005460 210462797 908789058 647480836 760199976 837726324 284369093 908631081 156343756 410211553 539834136 347639369 574994472 456870382 394630802 212750858 754684708 266546134 209329763 878825138 22039675 899334623 760522598 631256058 720068278 934554788 92085105 26042506 613384228 997174220 496530788 932870334 323739586 431179494 450968204 816269369 515645733 14513405 716492946 281737130 932079331 324268164 377030358 24965268 134218439 633935796 20587562 780675904 101669845 355146529 26476037 304584150 547815957 406899143 205805962 817927395 611983421 824927726 574852908 558328589 454862883 35332284 926210960 515177783 843076599 493346534 576326249 269942810 840620093 528744150 363202792 287026218 894314743 956865058 206008679 324095531 295992166 826070864 973165036 86411132 246172946 723351964 361580677 272368282 160528729 90410413 831766086 279669677 366528053 603869536 463363992 556262538 575649602 576276697 611996631 274163940 315211851 419658977 373472094 767079135 239322415 519703441 839693347 1688650 369216715 956194357 408510756 749653953 813343560 323932233 359884505 659170332 491911572 364460355 502809257 885303339 401498259 247448707 676517734 395359506 170238718 390067202 867123940 500031638 635012916 140094168 842404769 302716803 949443240 366075892 655463131 38717311 273829787 912977700 142546840 73479102 962720259 895509760 204079799 83768450 385242482 40918358 889702097 805903140 333181169 511986280 647376861 521464120 193277021 813247492 148864151 442851920 143112215 631758532 939546147 291091127 256940251 391601869 152757552 50163771 763325451 482964622 250264309 804985085 282088601 147373590 291212571 214882297 134353699 423464740 746771649 953803021 92291443 397614847 957465411 335484481 129191245 409608633 517120581 184820969 917955832 192245820 389618849 744622210 821279164 555623208 93381853 910453264 292410665 129661196 425764641 523669062 879934145 449344144 808552106 767288290 531851557 573569148 408484119 649618701 603247552 540148121 416674490 909603682 94601607 405630606 25590074 718637649 990988082 759633457 201776345 963135148 854417367 672935239 410531656 442861712 816284795 18439331 935126678 925747389 141610406 838277507 532931188 669399224 38420198 498653199 870851786 699040018 969835212 706606864 675251488 411616242 929001368 188439096 701686261 410103427 644716338 925681203 815249739 527323041 456044969 450578509 352440139 458051843 69228195 560049517 73915055 115759098 216516001 657714389 163510840 538257913 839531574 786941997 976755287 96374691 913057313 739971572 917878313 397251352 186091623 551266093 510895034 501970765 33600852 705321696 305823981 99120577 232996993 294060525 359112003 600630674 607945273 901421126 52082101 268943525 454296966 939815040 477998191 772710184 424381426 384448741 227340473 91814616 536125844 901536960 817585619 640444589 280654583 145971779 70052070 870250263 823748750 403761568 319342450 94297116 554408591 643892051 307570979 319368174 912049642 13821571 479106053 983219753 841868244 570929195 133547209 467196235 464191509 944465409 115031158 488040317 591857056 131099279 610031575 930498855 353710124 376188238 634350677 909816476 913369638 941503616 730855172 331240644 507280518 416361379 263171523 207366649 232816853 56634185 416905089 669907704 910779147 953593566 501498727 273341194 42740507 927124432 56012110 792958170 605961126 732839355 252073814 992156388 679781886 855225859 616657440 485565835 948930601 726909259 384561404 276365382 7163132 71929646 448179314 631358927 267697922 593596198 952451574 89168807 768280783 746758255 84967597 154885275 210286340 570629387 590351255 651694677 469495268 607596067 5503144 476669600 148709260 112297362 295101290 597552076 699447930 557431626 348160288 410881280 761269320 783931878 804882973 974865244 259011674 245090963 812833599 795810371 43689155 937186885 758192471 404686053 84700932 566945793 714166563 647476783 696066129 517868782 716960867 824580300 960206807 983128825 651120693 825804571 172643199 17886754 980923951 218347719 239841782 589374592 347482884 314131631 266555903 274057891 995416227 60140677 700935773 535241564 779834765 479664690 904474936 899705322 953812039 285806260 683432190 725710733 339731491 71619111 215326330 756631158 614700082 799942761 5658633 192840906 378203972 490978611 457460785 514116047 831894407 745559789 740896609 451176799 414040059 669803471 504105412 101178975 917208760 447012369 125111492 593280265 181278188 481348881 230601203 981375745 670645459 893347529 421935857 740010422 174198952 589515184 66768816 402731877 867557421 214274666 670971311 561407836 958735047 519438926 68208181 989660641 274499967 197755631 332658296 737053244 537859328 825400592 395188434 684722113 903942685 469385643 707624324 379394067 704088811 519622398 884436530 15422873 572696616 638664249 674494980 289143415 665472295 454742127 459666844 836481551 367960504 983861074 113183513 283507456 966386716 542647694 591974725 470645884 664275232 746323602 132069616 379755721 766150081 671611130 765353641 227898645 427622679 73738751 616281319 358689354 561660249 833646794 315965438 60863205 374903609 661742533 79274311 675671517 993987439 131676573 970366788 11185523 899520292 925708498 521733225 540519490 801997226 100941171 40315539 733071872 575844699 308278585 138905197 144498930 642682434 602375061 354095261 939946326 844012342 158763673 316823528 928252173 860257105 432916377 479863795 331984739 52645034 19102689 477558911 222625454 351901130 107172141 875112544 978773230 289704882 499798271 203713957 240696549 834204175 852169692 192624502 421198374 771285906 564201802 521091652 116144069 983431476 600269028 91720601 954541435 108059279 772884491 526899339 259719218 975100061 102664544 252235394 862901243 139397088 217242277 100166066 198314443 423170110 975830711 659872961 712730923 41801560 784368926 536381339 965108917 769708245 401792536 311247502 449900472 486709111 882740913 824698495 426518262 464708660 432395581 381174772 508411693 176099692 210676692 528878268 936015793 754665663 544703207 357820370 409034828 896026348 161504806 111043648 439858176 309267527 744358527 940114089 830786954 753015303 207812132 215721984 865660801 824560432 229385840 968707599 772052223 514548011 363592796 875642531 849911802 71393868 215596600 102955476 801921750 457150287 582885587 48637014 407320519 715507269 275974664 884443965 698867924 979007023 930301628 411219664 465393290 868582212 270193213 953062995 573480833 894998657 469846660 20028980 733426178 570241742 932046220 625646967 400970410 167675013 385864610 495069173 266483415 142170732 122690734 379159615 56397375 968613659 309515005 735604342 951754576 251809670 686070194 647871087 475304855 133704220 894176146 35182374 31009619 258912089 312797144 87128446 429373157 530551528 375295778 709004346 337251229 823672380 537805333 13120645 917254669 899342614 852653016 85684997 455488529 410612848 488541008 871505700 317304435 553350444 833945154 611350629 848165526 966836927 393051945 357638828 716577121 432190336 248890085 261042460 935990691 808150447 499850891 452197255 497877156 419903701 560714480 922896462 880483755 83171894 965553646 913779690 337541513 692557352 957607086 807537139 328360499 300535095 771400032 430969351 283599073 868635877 819691867 857766467 270271618 792200958 732941713 728177842 372681957 325936040 623323863 562250957 689033686 212479718 926886122 760388037 149322469 245140438 236210873 769823926 68822847 662666582 228118523 18841861 997670556 787067163 344552592 303772184 435371562 659853182 40353273 796253364 654930170 421224088 200150996 349711955 982330305 991387609 383944773 878125626 535122378 330361289 591289992 916706379 704264470 216495956 624382037 622709796 777582111 124389438 920322591 854307993 768089288 820013086 339580323 690783221 721912643 910217067 728673370 753625538 732127436 190786911 822951958 564592263 378648915 876126681 674012720 124479233 353213622 247249364 521903862 180304091 139732723 50295554 772810313 199135604 742388099 286621177 595056182 312108187 374457014 782481649 52840548 185359981 995484090 883896669 846334944 769613306 480953100 250227899 204213160 690599443 841175840 81338955 122917772 777830575 381806871 736890923 521902702 799243435 459106484 36415196 539178698 169551151 258489706 78648144 546260260 365291665 68198064 511953997 55242118 904963929 107504959 68902973 737732380 364609157 569351607 296205885 339869939 683234059 785755947 559133450 761055126 658059391 315295276 94752212 881495588 229258623 174547898 169849066 341572800 244201343 269628690 623547170 304238751 62723711 398187802 231969447 923895315 842689929 721118166 303726755 413649407 66179889 767765464 797621068 927894184 248949166 896647434 264546347 254202482 160201724 351636220 577928382 46908634 24754938 655128464 369720277 258997618 213408474 344241208 801782881 600597069 812407137 995079762 462444593 281494659 181971716 879008075 598234013 578971365 480361847 167751704 883077584 592205611 278549728 399089277 216124987 760771361 503248243 343264059 460863818 376582319 877834066 518760075 23437495 373615615 600052065 608819710 375417145 887295215 695032439 257853430 620736883 87147748 468401028 753828610 156991571 469505226 644408645 48487411 460114272 824742773 29990140 274034298 498152870 406426659 627221098 614451260 767933189 905889037 631415479 625509414 959489663 25862517 245635132 388889340 879852588 411731318 817666102 181898097 663458174 312691222 14082094 213354194 179796967 907739609 566818847 246043906 504923568 328167971 161202616 911828522 641945340 196713288 935886522 83334300 428345225 57118406 417088083 102318804 948179003 586943746 645118292 825875596 890175068 990743808 741485339 628983252 508238275 747006719 499959311 552761926 892177613 609535729 198697585 864507018 645981944 224644646 708467396 213141345 711163575 938585758 783910521 362424506 492173197 849236065 100390551 970770597 973730675 405049862 281016668 87415267 821615520 609459034 510525546 481301140 773300273 436956593 189825951 974533819 758772550 623996509 904583969 635863811 838230790 911597233 993125832 626738125 158883460 955917494 758095290 155244692 553398552 239027393 766551026 999589122 161167330 83881687 223044983 844251327 529350982 845664001 881751722 962190294 440781167 824948470 61602192 195174150 71656295 675800407 398843404 63601895 817743571 919322149 753133058 53994620 565537194 6195906 863899211 287304637 56265949 290978204 431604230 251061059 91035191 733548415 155328928 396638611 261818836 776119250 282033924 911091821 334666073 692821435 895562400 190740699 490929911 541738420 145288877 216547534 415219101 387160929 976927797 106818772 847957230 481320601 38615915 560912823 416109536 791849423 719941864 959801576 519853446 89607985 465338504 668092370 347245960 543915313 463643032 482010203 250054858 820224001 666330654 576779789 114850731 410368274 326948885 272827632 802935759 729034931 902708725 303289471 997180477 703870587 146087087 802592471 684810377 358531044 675652919 348757092 851668821 257757590 469570567 867424947 406817107 261353181 644071818 253347495 610218673 549028356 610012204 377866165 398018676 208286581 903036739 269424498 835628468 275717357 100367076 303148097 463342803 217833230 91392515 282855128 156659665 884553396 855455002 336404037 362928827 389945941 979487801 660339720 430188887 166472704 810275211 62353078 805023517 360930758 682375814 480333578 237105951 512462192 724620238 832139162 833559542 85350226 486442716 834826895 181658439 500047249 905025150 662929715 198398297 860055305 393897873 826286739 864693915 75196443 470325788 233753301 664883406 694089564 738041839 663006762 1072666 277137567 861001994 247502769 88303853 126029099 86132807 336986078 342909725 619356867 616717972 284862026 290603622 85744107 141591232 552106232 681264569 391805979 294803930 654366101 201192218 721801787 634295054 241378169 666683221 93784441 802817348 536029524 6430055 161379470 544132761 223617243 861772735 432254415 994475660 720095134 698613537 543909827 930421680 608341969 207983615 255768784 647569741 715060716 452853759 688219250 399105178 946623443 965269780 131985429 522073597 522190984 132766881 93121798 845679038 282418894 564303620 707137791 697584228 963117743 774077696 949639490 389952978 752308905 207119165 343377220 132844846 818994678 972137925 47923113 465058891 368067344 25375567 351670513 129759090 496489568 674692920 113641209 89037931 251688830 538945218 675536287 361227426 312844299 381575521 628546007 503930341 609167375 95872536 138197364 68241517 413018779 494886362 442198374 477544193 24756696 537050663 266619708 106842576 206531859 622509548 294294718 456688223 903507493 250674857 319223978 159707354 641425970 719585948 957924296 439078431 833572779 944573614 422350503 313487728 13804823 666473127 181630257 721189241 168778476 524909077 415134409 395945399 909805667 479277289 506870207 676837172 252571496 947121934 850632207 701777899 357598927 346886396 326349677 853783492 352113437 84594206 560739077 444719964 73256140 630233350 50105376 206134012 36696472 114645871 155632610 20538597 583939503 191869038 4861638 799215276 447963042 8304477 3666098 352701650 554920694 636356872 434924605 949274754 554887651 275245398 965294226 46179236 383001981 602278589 492741311 87592392 19977078 457992699 593242165 171496664 827399709 348077526 110342965 743707591 973601309 2447386 817728871 7775107 535962472 694178849 494646041 115269741 81686999 862770049 175728086 135308681 38121872 46522577 58698803 669923654 571525904 526365457 735023166 421092409 875668876 30395764 187453718 34882152 391580832 330829828 44074655 481451930 892037886 28373628 586235637 890983850 973073598 275223156 77941611 295038359 45517157 570170955 636280876 569677348 905790461 697547835 381261395 593167981 14164378 846815574 651524197 654506863 839044991 796671864 175145562 247463166 233100217 585870770 657900163 1446070 280043440 173238754 843672591 231858744 552865011 688868803 475301812 450759162 726095303 412466165 762808332 100232470 986567571 187952008 598974770 413197293 233434575 743681840 512131530 248737746 158169799 256161715 305126366 594763821 712093229 933816881 881448031 558968040 516153576 16871538 257273435 181339512 564077631 971759234 473227566 545189088 104639320 626097857 64605620 703715412 612497407 371490585 442513447 266657325 815082570 214272026 233605174 940434791 171981645 726307816 782347472 917756045 431960889 223429724 695793654 275747271 166495230 278171325 338737137 322152303 569999089 983239740 190396781 984987610 264248108 365719246 370198326 468372340 57474205 164137716 63418477 417375927 751489370 793853181 385949367 395823610 338534428 276281691 538563368 216270415 506944320 672036199 514408314 882872649 219546920 510946919 449509316 663574335 565966977 205292456 650523582 303625105 232033693 548567172 217173521 451993323 611237444 742025493 481137176 872221908 633777004 135625448 956369029 995683497 911509345 915884179 22831546 440509462 890035160 502624993 858779192 735549887 153874089 435756406 836089044 30846530 353153813 655499556 893751884 4233572 802722434 125386580 354162279 567032984 430588697 430980908 953389661 586976294 317194064 414465300 383238436 831447254 926884879 971882108 848979041 840259454 477357783 85117779 69180808 709416211 957807969 816147150 33194754 189169511 65211095 82740706 468718518 414425551 438085496 969512378 339641605 372274920 593601496 202393261 228717889 327442212 581823802 279639515 980686504 466468915 260199993 575584484 353442555 786469572 511474793 988702273 120157343 669192447 568714548 49483843 695947857 641616373 808357368 730294221 996188156 292487276 450972946 198373038 399881158 654403712 360849189 662571854 608219452 659620474 175675743 40623309 788532886 616428079 179347351 191996721 583706373 25687992 980127567 765713285 466386323 305134960 87697874 609263408 275259417 224182623 565547213 113138921 311162651 448490029 624671850 622650380 732251799 736327230 620102700 448164557 642553169 857111356 26018783 513443541 19600820 900032357 357701598 420710411 106550005 586421280 189045243 270287872 97577342 504780584 800439064 763093117 3139623 134224753 673387099 330623321 691851372 5044959 6075440 78653551 810526164 721715387 145067600 289563674 416294435 8312503 709179039 797371454 414032304 72968960 173475254 267096170 489332860 221104967 703973282 729724228 219516379 741624790 639034164 199980809 530868745 369180598 695796261 942568744 614159207 1038873 849011893 682024770 421027309 918169698 408780631 842221964 251794556 735842818 102565614 96834373 968581594 259106476 804126870 592451364 705265112 902740916 521361930 256417930 308740632 745513668 532877634 565269301 417474050 255781563 639009547 290902892 583457570 747705779 398985047 120820074 547294602 903712829 738529182 184562498 882396885 54817888 454668322 334841538 212748675 63836243 996679429 128806491 38355360 8049341 746609955 808221984 578462138 138535306 864630415 94316481 279766554 263746757 217551321 185634716 361807641 595662280 726974554 758147145 521440296 710402709 308252417 321637100 973283009 986653981 370425411 713783886 925015281 694537244 897904326 373158619 705887387 548501941 599651171 801057639 645257564 742325756 825022623 700849913 752854790 787359505 411898547 488794981 151605991 257087552 453870422 352445329 408645217 703993865 512540165 222056231 861270551 212903001 235251959 372941799 46004837 65238619 949123570 975309419 212685783 179466241 189238847 441428334 426502988 674616727 66135790 858793443 921993675 638522196 739681935 52325123 60963995 9320751 816593906 578400569 920858901 456080430 145584732 385350511 911073971 949614233 864042453 545351955 133231530 753240561 124995719 248429633 335555124 851102054 601485422 169319887 188390889 467626364 564956431 877946415 633357202 292086395 67420788 122418424 401301405 170251559 741764864 769920498 566653012 915835690 558127366 729971542 298930455 936343347 762164198 364957784 12934738 329221703 491507658 421766492 403921488 462490894 933503102 264365029 338349092 293703684 698133096 872869610 966484822 890534970 340285840 99920485 117576431 740801915 896420869 495529851 77631556 463718807 192425008 195757000 923756569 797739113 618341965 715785742 154461312 46898711 945904931 66038128 64321816 759116278 688962635 128779660 390050045 205491425 696323760 705070140 512720547 768762564 100749872 873921589 661143969 205724212 102598025 637502295 980088169 353916544 805119334 516797420 333921645 720584999 488691093 832560764 311684750 703856224 836232301 658497883 636579406 792347997 867285634 888725905 541771477 797362857 575030363 573461693 227727316 185380139 405206904 182714646 375430963 547291155 176970472 148893311 66695812 501771538 493739478 603724574 871978737 901458469 786843907 590015171 687019437 952841182 238325499 32117695 192593227 510994331 431684384 788269899 551924192 739016487 170994392 579278372 187541455 646357378 808082652 745248395 167371662 598230472 111341545 900810795 791911902 445243700 316575066 27535149 934282125 686803543 376499755 124093889 206656571 430562287 740365008 266994049 778146216 663447144 261856845 283343358 308667803 720866176 319623670 671936061 357109175 26959327 99496266 294773604 174646000 40634722 611790680 820895624 123578797 39513857 957628909 435809220 485310348 46922858 623083114 140181305 651088387 992003002 156876338 412198101 659448838 159625844 874210169 860215055 310102127 273110454 563653503 39621399 954993721 915966257 309419343 865817010 364040561 716930417 286639650 318014227 323129578 888583601 845527793 309669035 919399707 6729458 627669137 344950528 942749981 530555304 191811684 642954100 643876664 594928333 419842248 493277250 421648568 741232812 165934234 734055540 927607444 154682133 606785717 646592967 131719266 924017342 706185217 872705075 409005652 896315416 562471592 626905137 786981596 188275238 937932020 147025740 596180416 445193375 323049759 969583899 596021367 360702737 409344450 278215069 794064896 435060048 127781195 346915873 445909626 292827060 656699642 757848275 349703491 267287052 761562373 961083160 598079044 128620802 412964262 967927314 178568910 402566756 15827903 390472043 917311348 233937518 11126354 111956336 964025161 756515025 771155090 564100473 776921867 642208452 41450801 623067986 264689456 181622843 425140022 735604592 461034299 758718401 419526664 779492805 708870423 57371038 516589899 780232957 100276936 693217100 772942173 212488939 677089152 236711359 837782162 826921952 812322944 767979700 628610377 26501859 350391541 675855938 143862555 63728847 78906529 173929825 836115943 984355517 130554905 890925739 654889619 995918678 818063537 680126649 129504631 642420052 62728415 246614069 729703240 689663297 278239397 71897085 730351750 409079009 706847654 130529184 285455346 598844991 19529216 957747435 823028779 230883402 310685989 685908608 736386214 622580625 644420234 919487298 112393754 698893124 126272658 862415317 230209643 22219876 319610561 650680005 434430021 194037452 897415131 597573042 234040720 510406815 256066123 221591066 610681032 335299704 708245132 238866421 648592300 378039441 567734106 760601484 246379854 28638708 140601578 898627015 625952075 600156792 381946455 705272588 910664886 388731313 324915097 775371621 39108818 686594364 290168000 252249676 830333995 716398899 591497066 417799563 727697616 532013566 8645542 71666214 430799150 467137367 518425454 10945656 835484672 247772875 785030198 929445821 858237318 878161464 234552429 493831102 38766829 336475226 61267440 327330035 231074205 855262542 496833541 377354754 990317888 18689856 149567639 611976701 860623844 195960515 339879726 594753099 490992477 198464129 176494330 338330175 992079910 695704996 323272651 542720203 431032312 710814995 980478010 667295377 806384088 120319354 538329398 821580409 464510766 842216423 957691215 512569909 544032218 883965485 913863972 431235367 645101799 979063621 247092739 696065226 531752361 222524744 853854626 196843248 123755575 675384254 684475998 869773287 877992281 933136077 425991530 423538113 558747711 658203484 873182187 66489277 160382877 175007664 99600787 874801882 618795606 633376769 193437270 492911532 611355709 502710509 852322192 861480794 723096631 194562119 602576223 780093471 902238874 391283491 469015674 597446181 325099620 643966353 371655396 615685200 594883148 99909245 461524383 483580058 194276995 158084656 879362842 312140461 690774846 266090752 381615041 807730289 902063791 52966967 810037768 106126588 712900597 421989950 362835992 188772572 860527343 5738240 459928194 967527046 930234456 951656804 300894980 8719142 100194507 470443014 69281941 850530338 184171635 206056559 389643975 488021595 18482492 333724333 47230601 467944232 946663772 834377218 638594011 566668541 966509969 332313137 112942701 466818762 755947463 453211756 941527024 685960971 355547406 64384151 817402951 922635945 339496733 638740373 620780903 763745331 766074438 27987976 36218866 313909123 23554540 667243600 401252843 219699816 89118166 501762300 253761709 529940670 318925192 84073855 474064679 74481190 70079277 327381653 947831179 144744156 890182449 601725886 381081987 167136729 319374309 49154987 738665979 801064240 781257454 246243 831823649 825118306 829296822 668021478 231693106 58382179 124830159 481823004 867103414 740039144 19132133 509805384 696276413 72167690 657521003 538913623 976627463 138147706 174762508 242856157 158213017 778771997 499743021 926095811 456931914 118528983 686233795 165021144 622863465 967931542 613564287 565386753 342293971 730267396 532693206 260453506 988235644 955675295 363438925 163246785 928006474 254936890 565102119 373454193 305978607 915372794 101031235 798581234 8992426 373458449 282482295 691843179 854343091 680336039 275824678 108854300 3127283 834204495 675968044 738256726 182651373 606416836 5943456 13925739 392957992 72547459 736228990 879889839 15842505 367301310 879243945 699755952 870486088 427779553 431624810 636512076 549682478 338448175 925234674 683248009 800082944 264194110 64887266 755689445 808017844 29131890 969520171 896215706 330926589 704301195 736679223 172646459 208331806 820821885 660073305 322042823 993673236 121037961 677832424 354566831 289992195 771236965 872797012 280216672 282688835 646241676 778303825 341561531 260184942 106960506 972011749 475063967 37217852 107524324 113804670 403764611 357196187 54620072 25628026 499397753 325266576 183504090 948435300 233876982 341604797 988523331 714534873 899840354 744371754 727731157 470397823 236630439 863825832 202740492 388084853 96191981 332499293 731284021 6541494 890807223 761764228 521530278 769924322 537558567 499843787 600390378 265106247 29491128 31102060 176545957 301469872 337263905 633090880 851942668 354692261 601242837 590212910 761916660 618283154 41596521 887572353 712442259 114043715 688531020 838037920 313792670 369953783 400096726 297645053 472632265 340977288 979458331 353973087 535979406 559820790 148032783 342831666 487015855 53156018 146316318 118287794 904123974 135658048 992104996 930597974 791246845 755609057 768207345 993766385 821947885 378636968 818747945 910349886 59900535 637210107 944629407 187119934 331677560 44589224 687119582 292746748 971125145 166559925 171004492 772892640 752816706 533306449 516775611 830144609 764682141 330637139 409159124 405635250 907414928 652949956 260941849 482535712 827013066 320372184 194820615 432663982 65515297 728103917 21503324 598013588 380063485 475587544 854767838 850745109 685439960 641256564 912519720 397046945 513608910 773781965 628080969 740439194 574776534 315625026 924240230 792307597 123877351 752660701 422234339 398720741 983605053 172705687 658419499 249491948 473038982 844049395 968325689 801524615 762023609 482513477 719838649 330610750 667538413 333376085 235443464 967595273 777554245 964702467 605675335 132703752 892771893 5728135 663937295 181576026 926511490 586265316 140831699 68166767 363781918 890775077 894990334 394813756 857675584 213229676 787053502 815372858 355053438 28344593 240374138 192647462 864329574 205351881 568687058 381475490 350345669 618911519 136596279 705254979 326979920 773518109 461550154 534785831 417364336 303890207 617506947 646565685 271579295 881721258 561119192 278591953 969118241 30082552 902102035 827052425 164092679 452660684 79740760 322990266 887817296 104291061 334871763 465045543 439231045 396816555 314388066 965240317 145807403 738386049 107934915 3901715 491408484 659282121 515997373 120883037 555285062 939857174 172757900 409684482 22453790 481737965 231086064 320730588 125068683 862484494 204356434 100300783 208171265 699503220 730727882 132641412 557670263 44195945 822960693 378835655 489571470 81448348 70751985 643456172 283583068 416161075 639856916 70548019 296344288 674101215 130489734 420300444 887557961 491624619 354799510 466370494 320523644 238158663 554617203 195331503 855846583 819930855 998081277 28141187 370489138 328717073 706711824 401695121 969093671 952352229 161339528 84355955 128516824 703064556 1429182 944812928 871324818 991093964 194284032 554003690 30698460 617841591 205007553 798351531 261256226 616593780 213761514 27685066 493052956 771233192 96247822 885282247 124479807 250333789 636917978 195675093 987758522 252050906 589760869 983588512 353284983 774127129 916283387 640283694 644308365 89857447 98891504 175909631 673045258 345850569 478555537 117991818 674927781 255801832 275585529 377154695 455079089 248182047 689782485 332207380 149243066 175723744 87614323 982654327 403932385 383905799 303065938 210881409 288179276 687473392 893345877 294752180 67165938 395395475 977067081 122932195 330517531 312083857 967776075 56664773 636443854 131885617 198898960 670590195 586365203 363097226 451111807 737945076 238649648 789317487 493892295 267131994 621302236 917831207 188161234 140763112 344892282 659051358 371755048 235601376 329348347 455940168 322840366 472615849 622414124 681927160 157950563 33017795 680020943 994552050 513203837 789841613 448087963 632583470 975935005 259440949 207537331 198661998 422855078 418077144 996663242 319735170 949811697 239100303 996908738 159660870 643867459 581382388 245513232 896261291 90770998 936482592 736289839 638592279 874580539 603014045 975047499 869010398 626364154 933531278 375072981 527375796 30849297 427153944 885654179 531248699 478392013 433683512 950337544 367024825 962348879 53117010 142534598 87042816 659241877 132975589 106006801 242732581 859133858 308775814 865028428 634182058 291716742 281279993 651138778 797251902 692550243 832258630 533106507 63281554 304442407 206027688 261302943 237260926 870545118 944567232 928679680 890540699 306767390 9166026 538236604 150499275 657907490 67754800 967625784 457122497 583026421 349631533 81829911 431460749 100303291 862368457 810372275 720902353 77067171 192861448 218133465 867727182 883359063 348708832 506826339 405695632 667669620 170473328 686990937 115242392 848602360 878709111 941519180 449771108 996999993 788974056 165475981 64313107 695626648 574577888 768704752 100065260 91619276 710353539 304654958 277311408 267397054 514026229 633181911 346530052 348403800 345714168 351265209 575781788 987698996 580792875 775934328 577533327 448682413 356302591 869430755 896219046 203868642 829750420 834514010 376649066 899620557 969913220 272363605 146726931 161006433 726394269 641826030 174058398 148280641 584984483 700394547 601777164 128148301 543140984 466505370 508075981 970408209 687412490 906719012 826552642 546944818 821466577 219074680 768125406 79107927 585676501 803788396 859965748 420176508 470424907 680427338 19532961 872770992 277047436 946725784 345688489 294472787 516539510 909220880 137677323 832504260 765979705 986510539 888050451 116749001 291631169 244005257 223131066 243332133 146802279 236596034 617223631 499898370 68874422 807574423 698156569 663007707 15968600 451729969 633884107 697915282 939718719 588867943 314128256 495620292 587726974 20644585 338627839 592108676 49316934 25595782 400544929 29166632 381295374 788708478 373940612 564350625 759694487 482590917 618500525 853189420 339635582 453271599 95177479 442969294 608982914 89829830 561690164 632893771 144343210 627374631 24465354 384780692 81040097 65813357 764614920 715248774 779065485 323477468 919425394 214744995 52341664 601550054 855455770 615767844 678898078 218939644 724478932 524132169 867668822 434714794 159217335 876387470 552312873 876184600 538040786 731335128 688039019 311529912 119511432 72714913 345011991 877445444 212995487 407422190 796129281 153361266 622134748 381745455 146528913 204735742 841539396 772738133 209073308 229592485 69305225 82071281 531814185 699709596 222090836 828674521 168111094 350532085 94744669 132180149 594339509 961428202 16776368 306486269 387503904 204168432 389841040 42371813 162257067 976571213 607879848 296676277 306867492 118775369 563806151 356715575 782010322 329335044 110852360 848869522 321845682 820458824 607957343 366157760 903276237 767982034 682592933 231400306 755312026 342155218 981761045 555740263 199185985 510582032 629511457 197991852 13527844 391774158 409832697 535231077 319458225 557609914 703927910 914069315 10144826 895064036 926925371 260852462 740998247 739434168 878292565 721016323 46224315 311604435 447228390 694795822 917209580 48866150 576233943 250516673 981150225 521750945 857481260 220740020 6811380 444387334 377924549 335039793 36037471 414988547 359134522 163119682 311994353 727006412 441366176 480426664 528147201 803349726 222700049 843778375 906116446 912241977 556026035 355576608 971671366 142880751 836359739 532274987 299167141 724799160 229012860 927530023 447321039 329892295 563186062 286032257 982925421 399574831 373577517 170051515 187325144 843588152 936458362 569472306 895269317 744649214 751490688 413428599 348777005 392403183 933572682 420250090 746534980 153122555 644459559 756320320 309815653 275262834 571536083 371576026 867115531 708429531 646733108 138030076 732275491 85368041 360581804 914444081 969317875 119959638 648366995 228546403 486477948 774870740 400648080 261050360 513026680 686187048 428231858 121370813 996370808 700264259 259563061 729204397 620711569 199583677 624391644 648517326 982970398 259009407 637771795 663016003 916910137 550341375 778962565 315930273 164876003 791261634 183095257 120762364 886776454 593004825 120707096 702187293 516409252 44633228 73717827 759550518 107194916 936935833 417626261 514235512 999869480 986639064 63523736 766771925 341434474 307077212 538771862 740168042 479803804 135516869 854730323 133567329 383501032 526017218 528965349 417166193 111325219 165200609 767405509 939350361 256697303 944675174 192035862 332612630 211157936 134932974 524669972 535267388 668634536 941371661 555831954 341789917 689814615 889316226 130619761 329074413 608378323 531973634 968329634 941745349 68962903 470414430 578761025 869730302 654289298 168153722 285887841 495749563 46685846 174795547 497377947 607976072 162609218 362848680 391920978 158188551 728823213 407882589 106705949 919614530 981645245 74899036 28310251 298240085 974014806 593061856 89846790 496847818 107840437 423512389 742591153 744463626 437093733 90326670 669618377 904482473 304759724 426546209 537149301 619933157 591035380 568708889 524360138 648067210 993338246 674213164 354436729 221928137 719094487 611253356 543800155 573335993 650180688 362675368 292442444 469996561 753537115 112392453 719819640 984405375 353586722 551421079 575485492 81157985 570294716 922794053 151895759 513665675 711918510 326024035 832515987 457764643 451574811 198294370 923931514 278400792 588139847 327726240 628038799 176490670 638454513 745377512 990006406 501619077 175249746 449493182 872727260 899925911 297066251 887984879 277556306 848025099 555824681 837424119 351117986 345509326 356863640 402088452 432409613 900444756 665279467 507786108 302139544 29142683 575491841 998390165 484458065 411021762 508239817 222644567 873120537 765171783 773335701 104356552 788764386 184778949 723470424 508153489 872336944 553624881 256929276 297834539 779767625 959954510 622061664 658988510 688509287 780576158 822236612 670626751 790572855 313803720 133959533 848175715 979253235 935125980 579655929 68962286 421526596 618715655 587689614 608930565 362619540 616422270 463803952 33741166 211404557 866214227 928673154 469084054 445436548 515767802 576449776 795468734 384642058 401099183 111176158 189061498 862569315 230446112 687828722 115419121 956286640 35655693 135308742 962141704 8836328 759113827 866575604 846833188 219011906 171764443 16917398 418686442 204233273 888807937 915667566 330918476 88913531 776578209 274325105 519116668 987661172 998375016 97545131 345331661 141968909 794897998 562086697 529105917 974513571 984171548 748299378 330116780 136403420 408983371 204185345 736320157 798762585 337327040 746147386 471475127 66395548 453574217 696727849 292895303 337199681 72919862 877051578 295271748 198472271 124220166 375655110 794650080 614992879 989574190 602823969 312689511 22553324 277616260 12447187 656118411 793909727 761085030 74962480 262321535 395617115 550662886 668864733 5857821 868530598 914280082 203639863 959910701 47851993 792012284 313257680 372316040 15624129 150517727 838146828 559661612 199915374 140417726 915971615 337282020 837283028 398209149 947229661 274646803 834249986 868428767 898012972 730869071 236797230 183082334 426276361 121820999 863437151 692030309 451036526 492017954 530761426 485898508 484632661 85747619 256705048 819529842 52697980 499754693 166725696 897451799 634081959 52970011 676207543 275687377 11617721 751047633 692098276 785544825 318620378 501005756 936330061 820296458 298963335 602698345 403685095 312281118 38815846 383252388 458765160 579930296 857224308 602744373 866413886 79045042 365575956 349957624 320253313 535605682 104276884 986492174 309532973 540289306 964859622 944756502 410900716 943799548 452743095 216265392 746122277 369307447 571936997 918485444 585596780 782231936 491584636 32264473 889424626 797596097 211096052 971246979 72235526 320984040 536906087 412730773 857760449 156255352 698287377 252355058 228669984 553700011 533383284 152457597 985237148 377950282 949527571 837121800 884095850 171858843 949393743 565503270 935084595 252548861 504908145 16252103 287539310 515795549 156416500 172542938 867245274 805269164 670980100 779262912 750840863 177985042 492273894 405103655 445151277 479231471 327074924 638265815 673755369 78763096 580974018 65165571 481661671 639095409 181095843 479958507 73757104 384732481 700608565 890801596 600878950 612009768 259714019 301603848 921030184 103925953 648899427 637229195 526070205 897752924 314706950 652451772 590890116 967854191 431348481 719559803 189276071 294405017 878466394 187972269 96642736 854440775 689102563 197654429 644153540 98149229 8913091 52009928 861330594 351667408 276116059 287131212 723503351 624450706 94263253 642998787 941019021 967946532 537723018 541314468 78435631 353194599 986382492 685584287 9688169 877126935 555973494 652453849 451873657 151144026 495088753 354971888 856329755 105510337 304484044 118306577 920958736 593996080 948705041 535282822 998810402 614370916 436633124 809358630 976165026 48527447 307154681 703908222 78950466 197576997 512968584 488190560 704219117 293549297 278013988 996554261 998480695 465934629 91278764 116302412 677800501 528004526 313860614 551478829 179619412 376115824 678388097 519967827 186764548 291340284 217203620 89491805 37189122 517066589 783425731 606861684 639720336 115299830 501558889 696372451 425159764 472984173 340700297 427542684 808759156 450916826 160290982 91188792 800358392 28024748 396418815 600171260 541713008 415960467 847509980 436670769 261806954 9778139 597980359 676728066 894762896 768077929 733617476 267224972 946896968 409836726 566974801 745629027 162765759 735044663 168374595 291580977 708624438 775958356 89417352 63778479 683591583 641248114 703236384 813256559 317052854 824738335 788764298 764643750 184066299 347428022 866027431 446318249 264689067 697355790 132275880 745199289 47461535 109202510 588614319 281898251 754106314 944705658 670373586 962367528 410862351 546548496 914806328 371795500 227793211 452055304 677443369 19824476 43583099 435499784 815846226 412865593 308553112 291008517 468542663 115899054 929394600 656010624 374163081 45235167 657433455 960434296 93478445 833472069 142832983 350908131 501653332 492090384 641982627 271762189 536143782 480729207 466067327 129460392 480893272 869436714 387065428 596701098 507311201 52600424 521724429 192824728 642791647 805073185 472102273 779343549 443767082 890719452 312695377 197450350 947002682 6617475 196199891 803850876 90557472 288721073 679064919 535224406 179277974 541113976 703274574 767959837 140193544 988107549 911284972 903288757 18173603 717342505 959596188 840794538 498489530 961724860 95798112 234145191 235609070 161761502 349907216 463651387 53428946 601577836 696489369 975437669 49464129 174091284 104761483 566707086 53744951 581099751 836248146 137083012 71875370 844214977 305878150 583467472 447118121 189575750 924184115 44088785 543325447 479576264 472741349 773090351 549023020 910431102 962931559 172497091 179930511 340122064 457578343 414290121 666554310 948272489 285649912 184241599 452625033 363983901 187932173 964668316 858117396 978442615 620780816 26398404 651237213 899724373 272032608 738148372 435005450 80181662 958828924 962352704 51184541 525541395 476039672 773624885 259922745 196666565 820620107 129938014 887126377 71921408 835317695 763059140 946363508 397675453 339749354 292225125 628824936 119724698 701686700 917934758 749263704 4156735 176981081 988143955 449079094 244566409 997506737 138675011 268239640 436781472 534185239 577356667 579985794 290162426 84862827 502928740 51168902 602825195 798506814 893368637 19409694 148553516 433282209 407075269 566810325 372403990 55694894 322178786 157515502 10544302 46325475 256731198 852436521 199126908 519977016 520098536 728065727 109989136 733453353 477270923 796198503 463439701 541994965 824957447 570967612 972426538 450363223 786102686 11053451 755597677 897097310 884776328 203531800 966923883 874879207 616664644 794564161 970570623 993355185 195240580 680258689 578527927 794154779 439060188 110080017 373709884 568950220 946502846 623950345 249472442 912546343 972544079 98803850 874453118 619509714 472996991 991358661 664294902 83059897 122419929 562786332 278729068 60046730 857451781 704106619 284641266 514434532 243067596 250599365 191134756 984876597 9653056 420964298 577729928 90802648 828911358 942865228 972740405 693372749 450265368 670458775 724605067 871388000 512963753 28867032 662139894 3745287 786757238 615727970 509068002 985116933 574760478 687517032 643545147 478502862 660408198 847609978 385710258 320496244 268386061 229424444 288554269 222687198 674870849 353200700 997076692 298721262 639506855 570124732 290054742 929324412 473265251 36258335 899379679 609948903 185475156 72899687 524931187 10397104 177079307 65181798 25648095 716633147 430113790 718712283 215016922 703522964 952163185 424835739 333271218 888874572 370484283 839207244 886289086 501830556 894602016 281596341 688715302 292835159 399667582 791039672 976004717 516930818 633218305 794162681 745205590 787666079 556513907 785417793 79313802 311397050 85178599 117185048 948977971 989107661 459520575 668516866 952476295 442008270 228558062 300769814 587380052 375968721 324767260 568467987 532747511 880289422 140418205 609989517 709650603 193509286 970917392 267110342 342590731 806919716 800916570 469779507 773507538 369745794 780220162 876555417 577612236 927152034 499826290 406042155 197468115 595077653 417344554 696780204 915141175 816320875 312564039 667266124 146395158 15307760 669300529 936513934 687209942 763216270 124897167 405549663 579743472 646271283 727052728 315876762 722927516 69449444 547756736 699207496 2801525 173350734 434900057 226270546 210773470 511495111 344665131 634725677 59149137 535162432 846509709 571611009 775394659 337964116 780118485 699602807 525023545 319900907 664441420 574543266 612644908 979204670 858389418 520163623 629790547 122130520 480179579 838667960 486665546 727416627 646342984 747137842 380948129 614251336 771100 150584000 339310830 213982709 105434830 829058322 345644607 187915278 52945431 909489680 221790600 620733096 171679561 317984743 963573862 508905313 35124116 76610460 723469686 903749508 902009173 103497346 168079631 592992579 759687247 530403202 203945891 636706302 65532567 226862229 155050858 949103471 359856773 326029720 790761327 672569831 128897969 766829954 223666467 692033549 626378579 8635331 775253431 519724995 484335946 280622079 627645138 386102295 267023129 897680761 94348404 376047550 945748834 584221525 481713510 412019328 218971692 180124075 990230581 605406974 463374898 288128347 675329184 896937231 773937657 582536155 782089790 163790074 656973658 685971382 186936929 962276289 777567037 495027443 521277949 852788388 465000669 483497736 18304438 669903561 488533660 766410130 766160146 786825236 810837130 696688304 139193713 325830643 398837051 333815521 664048815 145750294 756857244 580461764 801924055 734916010 890657509 120514621 291484911 511359849 636418029 53316078 974878238 412445709 196017218 231653838 25163338 454784295 945638824 331939170 963231812 754926786 813921240 284331594 253402387 974696701 43154517 839429764 442134091 946114521 611320867 60193633 883765059 632879505 451144472 564575246 638662446 748741005 748401140 277444951 332895127 646289891 572115042 997373733 428637623 585348546 466251627 789657775 10791029 337356776 211753359 868098477 502390325 412395226 444623095 797725089 955918659 34665650 988136633 772981995 802109316 690222229 3133130 104870766 710535169 725567478 125937336 197130006 743513900 655081207 973288434 94169861 141011724 314365581 677377579 845895204 682355667 22059973 676857482 166608620 582686749 990849207 343010807 698107982 627742530 734759859 501918267 334208706 870283721 449966737 218168243 513445823 590779324 983136466 22972409 576137532 781714045 500341673 167514364 980110595 33484203 17004752 500060990 823771643 842682042 474033254 528115030 863042236 665992506 169847068 299836380 662915955 723340021 854740185 561016461 946091330 698539701 542475961 125680591 85766357 366459814 543910249 215835254 571188875 412937543 792488484 353313278 593892766 593598222 833026041 349564283 313074321 358743119 614497766 350583036 646367738 763125198 820611572 955674874 494795310 744272194 304428092 183607986 458972483 463652942 877995360 755903610 560703343 680021820 161523394 950329873 812887053 767189911 134183387 302856287 76161730 45679950 608210237 189687424 287557696 395927692 610947552 574664837 839185269 662571904 839213798 399316253 14696777 655140405 157427977 752653999 196368500 653503829 854172539 870399068 734751700 958421400 618521976 138996281 232972490 678512309 836667645 836421687 765116352 456254183 240881070 366413303 188255868 899108335 30504722 663777783 336981838 36107295 284419103 227772720 959092985 834346664 333042972 221183686 527182979 390838862 310531765 649608148 408162600 110491826 880670760 952879797 80565177 774391454 575126733 122974411 510568731 723938814 931768485 27815133 955166955 683210132 857761396 110090088 415672381 171405128 811050414 852738496 270458103 866567898 74018059 133608134 51647965 357313485 702972971 979761936 168361796 708032221 621608172 837698347 445570332 950602982 355219041 585962268 953153418 581093396 288617494 590378841 128821991 573848870 174677407 81734990 544351227 439481570 172003171 872515859 94412999 866782474 649751562 118201159 63841889 81928366 292617198 689711304 280860311 649545240 177035640 576032512 29847640 415775620 88132195 736629533 886734080 339730295 63139273 833437006 159288670 180519319 916623841 654513727 788207539 925052541 596909566 896351184 452104257 623370997 829002600 8243911 620581387 391694330 852455206 454820859 164576094 966156805 772328665 119979465 351252106 588574405 117457675 473081156 759964501 523384672 682943663 738529654 887420976 627860165 81403956 545298885 816935151 512877081 513445375 149427289 46647998 927358519 864952156 44861150 457901802 189677316 683526951 102574746 674532003 985584735 573628496 580251460 467446943 225479721 587095653 467200786 845801422 227981186 949389744 542181692 193216118 518257294 661560347 775975750 712086608 361926611 303335887 450260149 993608247 356732636 26842929 472513707 674708621 564775331 493851887 674451232 345949707 495309256 980635527 895159669 557783755 733888616 371459523 371159628 952777149 364854261 497777391 232393621 115438230 144558243 420314171 30126671 140656880 489809633 742966587 302455426 292478416 233537873 404374188 92636501 399548041 971943059 626785553 271981854 141993484 189605145 207941641 207622835 462566758 528961806 815831923 723357330 848029534 146964368 402630706 715593313 204389842 460012393 896920863 585363368 465669017 666678087 569770449 144156788 97786269 931675549 144908863 785392444 637560147 616812570 579729008 807616778 347862026 24270406 162285950 706838431 656155931 700953264 204348820 923644061 262751256 34831258 621516306 904602669 448179852 966156224 10020016 922600675 526744196 506644858 393234085 473947094 810983450 305000558 489170907 297288814 809723797 291861328 794806730 870847196 851483500 532632482 837727518 760935391 202951861 875250582 681998301 672118515 759328354 199079059 475456129 749150760 817856886 945081555 205831689 896223792 742059495 541876180 898633782 402577562 697469486 647747498 310163947 289067775 789507829 814865968 294036574 579558218 126383858 69934863 189266524 781040426 553903617 895428861 306740979 813549758 462635725 966355921 253370319 442300867 675871075 881933651 831256185 937608358 544885501 910204793 121799697 992214715 343163460 16299055 485976744 126830727 864482996 70970974 720449820 933188854 841295432 413597229 290445196 263902620 22979107 48216504 406565235 834044560 728884145 508078017 736812551 899940678 940531827 187060471 272830981 805250106 213101241 167865677 580280167 231552109 63974572 839781202 128611399 791511057 883661066 473869586 599295283 12759278 460212424 446751930 682532881 63829048 367603053 752109316 978042410 352562498 634513400 983804499 267760741 782723575 48764925 798125567 400753054 367615257 755658658 116197793 645911125 568439513 54781828 930030639 832078361 62037736 280586865 480569470 606009194 832636670 760334055 553591165 642959962 16887553 458975769 20793583 788968121 693712034 187572598 613293056 44195798 112764928 83113140 683474981 672464469 102543307 375321967 427481494 675394989 787685630 833438172 518797263 244235746 819586668 69087764 375789289 517375580 873805010 165340636 112185770 153563051 725482645 829597091 172536957 165004637 13185688 755538772 963343632 90139447 379742681 976681433 486712018 59011201 469507683 944747016 214919729 65178548 82079527 573571799 414953960 818418923 842501826 370596421 596910846 336354879 638348395 531663075 632812714 644846319 279120672 439211595 975649544 972071945 658005462 472559832 555368932 734021030 423515454 852887656 373114985 402892396 604071178 709495136 72191340 348242641 668201061 312300401 369906487 361751666 225812578 486170940 341978835 464064017 688426264 342566419 180661730 205191044 68389439 161727023 751371261 973266246 873155414 737757962 78059572 140691553 599974611 207740026 547768585 423893296 125492618 987832091 868979158 448343407 689642035 888442674 10950507 375849267 136947744 408283566 36918217 275197393 419413748 151531962 346724941 793569845 575117970 525640750 271105967 576049662 995958986 397268694 597505455 445286280 222119198 358751212 693934975 241833530 892407956 427710790 775954377 411146791 863465244 506909801 606270998 968896172 796663369 20673531 923703661 62305974 644956301 660186929 33919159 60771007 177548248 767528932 777161006 441771339 318435104 191218549 385562024 860220622 708041539 85728272 297105316 438254032 297370440 758109744 542815209 106868010 176203945 628083378 274537789 111623658 798951701 925600748 160300980 778654816 834817083 837991030 15898130 841780345 792628128 622106024 951440955 856158590 440996354 476520399 159121337 994813280 92025851 476804624 622832264 696487177 769967477 9073365 41788433 452781097 898581582 535648753 650710483 874762680 328817721 247017245 997684677 781404468 550460417 600257060 664586127 276186388 64650126 341845519 592678287 361121260 513526255 591648829 453528153 413504628 561947329 938812286 163186229 511930873 499842870 735421286 514482697 751831330 640593507 248073097 651403674 485946058 589558062 649298976 673359710 176611729 323790172 600500997 93873144 447994695 87390214 65833458 236024149 253008190 470291927 828153900 288706969 716752911 9928352 396583950 525449973 168613354 610963442 864338353 403343374 465420036 806092630 278132494 73480780 791832814 430084789 180566851 746932010 372120564 398803105 392847111 158034564 407025240 849844238 211332976 19593060 334129920 166986795 680250693 298646624 207891218 54533269 112191193 272239166 777255574 49356358 962934651 651045215 811662907 398686127 551017088 318127485 75829674 19598612 138662334 667966941 928536911 322789028 40312298 456441971 18569554 532757955 214559267 776883886 739892846 297830090 87835966 37963492 71507089 531603206 156000355 422203290 461446128 698648675 676052427 382357768 750726562 626143297 861397252 197991073 963896093 60072126 50348062 733156567 357815494 357320361 593136151 496530301 844832782 269754081 199598539 428331210 783313061 443367782 706478453 342643487 309132169 845396318 265011687 898837157 160304919 127209644 951043943 143815169 193929440 792313301 987034970 943417952 517015515 532514650 863703854 605221738 490497383 612296618 105963336 867220404 625610365 617783088 497956081 7007034 958969577 30590299 154334010 289032714 550246683 480582290 243492558 365690032 201681753 907833852 24817455 191246491 810129790 206680580 405560192 6037591 927115042 235081750 609955341 978563283 357385170 225873082 243712679 167838476 214652125 510007823 948590868 731907939 19994540 23312470 759674649 105030325 573163246 375223451 712594462 846557797 82152535 705313012 202455763 50543216 861678878 149237756 659685651 388413210 128852330 806087151 969787089 253540709 835165772 752148706 124356168 698941058 246618994 914465941 468907209 265845983 552306130 185657725 306255876 27489486 73927449 79660641 170536952 305115413 757299434 750634743 166418894 119124787 706080969 163212146 577219500 360787410 196547986 680824351 913735335 110063955 928974457 793287936 840332329 497893542 522235566 238493004 469978315 568938685 415544627 536836996 570640266 527746867 780783549 456054768 698950510 139239074 381915675 487285362 770625713 976934778 655357503 957301771 823832347 287604357 364478879 407919490 624193207 74231075 836428744 210683315 769112336 647627026 386848601 925983207 433218885 865957994 599873964 122533038 994647978 716208225 353165892 309119041 12326942 211192125 74878306 668203948 987065723 187959641 662327908 375653868 260322414 92262695 818623659 153830408 634819863 418175184 969500315 435081018 191989726 968505530 406771060 753937210 65250526 942469499 91044823 916993445 591863794 846005434 303263324 779639912 111020096 912567890 450364889 776298975 578293760 529755365 679138463 411304850 377436002 357142326 669237171 753230745 101651362 285217200 685882816 182459976 366644667 984183039 957856958 730078004 393567887 651623604 163771432 132129635 653736127 820808042 461005080 784719697 638199018 265433988 843882676 461323703 303081762 411978446 538048319 121347626 641651361 277721973 951876699 508021844 923421497 565629632 205176386 689207988 495383120 860860092 946696820 12150392 97738117 968252199 798652221 171689420 149679724 890668681 46321171 18559099 82842010 651945285 771675680 405621911 411795472 853856078 315332428 198185980 640185413 701579232 771872433 459909202 272195122 450308251 857390293 756582863 219765865 954222749 972791631 690537731 251538944 487079243 60875266 319869365 169059309 585064066 11664261 913381457 826084482 625051722 554307623 100551651 542417928 344066677 321748289 366855598 536116379 959024724 276705318 497891994 597902355 742026542 479436681 254722844 503201934 771244263 262671243 201743374 522134247 215352659 489472739 925052986 336535269 650389984 489650468 796106877 273553165 357372202 2097501 99681368 179396822 586614620 567423481 914694199 227582218 584628974 81484290 258595827 83475918 65609534 444968534 582425338 757032740 218471707 110045314 755640509 406061686 802737249 181070349 865607680 389589176 775324868 909786351 688530004 953792813 283224156 392741275 688570819 247759368 417952481 319793419 274009286 596953217 391537046 362714861 921311962 937809935 552249761 226789797 723708594 942368582 195378876 534845096 674700696 619668760 410883100 197741159 198996818 988003026 897790482 350948963 784541254 466738076 94877023 581799157 217092408 409734844 501210561 491533216 592007812 554126920 91568588 894414297 31130193 604819096 795630325 962609260 400040415 932194683 444011865 663717518 573766906 19218121 113187593 566718 225494953 420197821 446502262 474918214 217043249 150644117 671496853 689815200 49911582 151104805 328025370 459953020 459372977 667425842 779886333 151013083 451240672 363770382 491627826 354476101 911832200 484807898 792733134 282917768 595606982 410149779 233074249 380099845 699324110 734957192 432870816 458128416 428659965 700926306 146863184 582451289 103156721 733193041 454037154 295645419 564423434 852124708 283565407 472158274 312056605 297462427 822860813 984949985 16673842 686172053 179424184 383604689 232232166 902410415 257777712 456827432 258586354 543408437 406908099 256529889 899740616 784852033 7683237 269069400 889167093 177451896 699213388 977922998 496108108 347325266 75111669 771296428 245406000 689199040 637280315 265434983 740168607 300957413 238719301 696558449 524824716 682914715 522433502 652707657 12063425 738660574 83982274 844298401 551872834 520147847 94667421 692858185 599522009 913705682 129013621 528326841 834795716 161871893 119797664 393605879 24813195 403211151 552177742 239398954 296142230 448148856 799370752 377284775 358081047 357602289 599046247 227964119 297482597 886943529 871024193 692462739 500003633 996102833 15476394 362583563 39876335 560388198 380345440 904351369 316522162 826099628 802115795 693529940 296253119 530422579 262100 948986282 968726242 377456252 448370956 412992304 530192151 36127293 404099299 332328193 152331289 192278159 646404779 812189363 718397089 651473471 676662591 78620034 974593997 149059490 136488051 759848510 710389107 538951918 581089963 161263527 116271819 819530332 348770089 808248384 357185345 151144956 249437057 114806410 956603300 630935644 806622979 481513071 912917463 389771650 584602525 156626532 572201710 250998289 415653218 581257892 5058425 316874959 281540372 44005165 746236373 822823856 275559885 390633908 650471141 106519349 168068559 210942759 660607806 573079531 372351207 869289967 863724103 988029905 393338967 65743505 910343230 128534582 865823711 18212973 101200268 876995550 357760298 645897095 722644081 463018050 65317855 498846327 763373415 175732250 352485239 830852452 72065411 230006805 216268258 55038058 368304766 676383201 819299653 320748772 785542965 903285744 511925380 896468648 529229463 923432747 469199979 940432462 797369634 629643888 816856627 963141351 254726246 581800541 106622197 635556864 143376811 243755835 118992922 176677956 6377401 782841395 301691695 863919501 326425117 240139214 120717722 406521529 657405072 964895783 639038974 677237674 965231340 541547769 292677028 50472583 734828574 827136688 241332905 655533575 745420559 536031652 910562329 573002188 690429272 459700646 667475863 526422353 535100122 346421837 636258761 538054190 954757038 639268085 305226950 550858733 245824035 585248585 782302894 637179288 555129581 10253450 261126286 552368327 440823334 821038504 160876509 397170533 37406034 288010458 410672138 885173363 515992167 183775806 768724850 249082474 76883428 264173989 400694540 827216367 914563831 657653349 472636893 445226033 872258697 535076203 928395637 824698587 951413070 72171115 237816347 578146854 651515462 953207084 486612622 808410804 245263179 310437822 385433790 769083132 191846810 386435689 983319081 498306241 572805670 317796410 367839902 903141139 744173298 510666141 922933096 25705830 867043485 499615479 884683205 938926152 250463875 86853041 941807888 697026234 125760422 51543376 39948375 178025820 656175416 262326248 236067839 881017792 939547178 731737819 31393221 408043808 989616185 361915449 600906662 591446389 665453188 588690428 156657274 135169507 519991965 212122028 759769986 366513912 775837085 515159574 932483346 53437297 589802157 506834632 830105628 133357597 695762748 652770412 59503002 799741848 592797075 634452598 143645778 604881793 628233143 818490934 430074983 256619348 466091666 627831456 360226744 685586426 742077911 923314348 182728052 699889477 130588238 897560660 136828115 320797528 223350448 627381836 97218766 941298041 669684988 701017447 144476153 259294963 289308381 513517229 950780212 852226407 740688669 722644784 810567468 813235094 63176240 161443272 299081343 199098601 969167128 878405352 309044791 98437264 542092465 130454299 8365148 297055334 405807833 368528303 129664624 668075343 968069542 373947191 896627681 147169413 757120208 720161807 453914309 299190015 979827204 876190685 728260884 115741517 306428496 965376669 761597938 147407840 763015795 118698664 95584383 408394261 372714752 8868345 970881170 485737985 333100473 803805487 471592403 418481375 222709284 135383197 596594399 376531213 452060636 416122556 515470454 524823773 223091804 259910810 995505613 134530529 960376145 253053470 535571159 172741507 905694666 203704566 268100912 820610215 576257392 110285242 192468159 29891743 54224490 906542787 61113817 688439291 721683969 166542899 557202873 639143970 38471466 254146066 984181382 276277509 268362282 664856809 183103266 339252870 553321279 370119079 581082 84531326 749922813 951354838 236519437 441525689 168936881 697724272 422161637 504753256 148820215 400015634 946898396 966161819 655523078 934031810 365999684 777451914 108115827 946524114 902365445 794571932 463335373 2708214 194927577 904089292 791511944 724751282 978093233 163953555 61781644 665207783 11082168 842423103 206228428 99950051 417175421 299672417 622934374 586435522 776222968 860900627 659854199 993116624 869461144 573930188 220259838 897432301 427248614 417643379 32543530 123523250 307036901 758135768 510968013 282550968 19685633 904699360 43250939 138058225 881132808 287426306 433921463 414167108 321262157 799884355 14757346 984997529 28567510 650431713 750989258 225950971 251471965 506294638 160338168 898693870 101606238 833269763 774043312 442428694 391406888 302315771 340471301 210448099 319895754 934003072 164280544 963871697 168713686 312763781 591468390 105650567 726482510 118623995 489623994 503062787 798551761 614650713 620408758 800221080 178262641 417474506 657139146 510135522 645868986 472709485 46040724 827079645 716149031 703703882 478845341 716248770 645744869 272587367 564977965 665660670 49873913 491693787 588128617 847286413 213810247 352694924 727152083 633902076 643179705 162263075 622323285 684040188 788039821 777523519 773437746 327020349 253924880 330263796 515511341 679045799 830830937 58749062 395897171 38525718 607253797 924355267 100262877 900904559 903764252 383850565 802671618 507519440 514477687 330139524 275989296 486827415 601714930 564714765 116833249 635377505 487676193 234225535 648615736 387111202 43113771 684872536 418576566 534480843 352143414 650018487 760861789 542418239 773191025 160787401 694818653 677988637 543600941 318574474 675243932 998151246 208922018 317524133 151475320 350264170 216960075 77448466 37650985 128091043 890542511 730710779 562939306 611380226 866843625 901902250 959624607 558697363 172351969 690231417 221871281 18163890 687856968 265861439 623768828 16207984 869255266 884600340 166012768 873858745 197880813 52161216 651084046 118533364 476896857 570401422 223284260 193290135 226559164 592465719 470506598 510378529 990406277 292082826 634387870 551082478 139503151 783833793 563816930 307902246 483802247 114358778 463038969 489129859 463301915 853169365 174144599 821828593 995149016 548039694 788595841 369185957 637036005 853544961 93342289 379144630 462253216 298543373 956326907 253593029 407136875 984964949 974686103 239396582 382712226 381120246 997632951 856890463 191253169 718479794 636389164 750860524 800849155 25984914 734232613 210615249 463453963 591180971 541666193 411116229 374167216 420709145 228792245 148497313 300020867 934030977 724848017 469081680 601934683 250156648 702832342 782104360 216903696 600787287 947681537 985250942 404179619 951777663 599142487 568806561 674393096 34272502 371778915 291409925 909549952 578614397 26825265 987387424 784402392 305925268 908396454 149330434 180339213 430584967 374767218 980339564 316014281 153747496 744419971 120011936 566276528 910087017 176080005 396967276 635452860 411891386 655177164 586757814 594334117 843713286 394281367 820925123 192490472 731979265 306506675 938411261 178165512 626071303 983782121 133544934 168030994 557015306 479854006 225280688 488311691 97310840 534943340 399042786 722812440 367427551 941417175 464096832 403574619 840132903 763132906 554495752 963573764 453958699 937171390 403177481 889928723 915659938 630500387 235128130 981241935 865870327 193578381 76399845 877161347 618557257 852728848 85201187 617925788 878656133 969712210 689126499 760912152 78255571 242054283 644690811 633713773 818744754 779291591 322078747 975498617 551552601 68358283 316972316 981585441 439771170 478242675 103939681 561203625 219882074 562458120 671623511 574674196 619924694 366571179 771313088 97050730 645466796 845717347 600520948 674806538 914586703 455436396 649501970 423532018 25173048 224240391 204817265 827865437 784923159 382337375 804445726 191316681 251796627 115251285 149574087 106902390 293941750 700753811 90942779 821179838 890805235 46342285 127183824 645228273 97571873 394026093 986272887 253653702 574083327 393098934 876366607 179239431 380750025 131822757 998945824 498132485 560003423 344871460 253070153 433196612 388403953 731168179 304030889 616061659 899116731 2143646 246854773 555349299 14373713 764448644 339045278 317697496 551412996 339037042 622802072 806219455 148260000 479976142 319899183 187823198 457943512 642169605 24508186 139124273 160123494 109283727 436168913 304522922 544225849 833266778 821243101 134154624 30419592 315580783 823699561 400191522 314882914 548277859 175735068 683325710 422188945 124032254 188676327 448725133 215816958 816532311 524602139 639028282 638285337 44596168 768709392 210073251 741756283 997729483 354022278 716189899 3175054 527050738 716375076 91600173 875799999 909747560 832904540 229582427 266145467 644260470 170339255 899795541 601238739 751315487 799672128 349844100 782639600 672992971 61762228 892266782 697924156 914878054 313920334 689935339 81095221 791891710 360541350 613282927 18345998 103991452 465778478 328478906 196735002 720193912 628758277 844382185 451613888 345337614 176105566 209174156 744418930 738661414 741000229 88450856 663172419 581817104 910589700 172145016 797168325 872002720 76293623 838769470 596760445 618925570 62567529 862447158 215080717 142878989 507509607 788890806 331935213 631706246 181551706 529512382 785805593 141810037 633382338 794971003 202630183 411211087 506212073 247087060 998691663 210146689 62490988 966635626 22743783 385623353 281686359 393493 562044131 318372251 533270578 877778471 574056817 545221269 244764758 54898388 670159407 244417787 621599882 85287833 349777361 411627245 192258643 433960002 930384653 158249236 215992747 843132014 951129021 505808511 873649410 142005293 167137375 840735238 920147660 174663443 353626027 595507353 774182773 613297222 540912539 668183784 558504348 241519796 934074416 589490045 530334083 839942460 857004733 910240741 466752010 155080793 878547762 622064050 256652253 999568592 928489557 363687301 529233974 446776320 792490938 936285187 189773790 548407331 452089460 489746124 783735705 512666043 633862935 448904179 3582617 582090354 52982781 140622700 415395256 135566182 509736097 546037904 839949259 668220625 761723873 57749158 277315495 480786963 645318893 167410534 277285253 834571598 573572109 554182204 170595932 245710648 846471742 57601571 242302373 928933311 851190138 82076388 288486333 132443343 64605267 38357414 484883256 696102475 494934298 451958341 484641223 775603762 639346844 60488969 200049277 920841322 899913404 761384948 720410985 32641329 892839381 500111165 606789978 941158499 108371307 693491461 375064334 420418124 479645871 252857294 689511191 427312126 483978650 705351549 367091066 420080385 451410790 976267467 951884233 823972163 683490530 22938521 923440482 233786079 324506341 491623552 908007270 763573190 926032852 956616450 5295935 566254053 356715881 57505943 773214025 664754593 210159580 558239683 916137495 543566356 156107235 946686190 132127414 434676025 472451503 688275238 157372237 681427424 133790341 525680649 23378124 103624483 220736634 22221454 167646260 451297532 124847596 592795606 366842893 29858891 941081831 917430104 379640213 252199190 678248598 431454721 376828867 448517580 534522647 941517012 255330609 701485259 645054198 441689447 83626000 483912193 751719536 141132479 917314242 715902446 263111580 224872322 383192243 115219709 357785782 63401756 554162508 221121883 738637027 958816451 825394931 714847006 666979792 898809577 386313642 600639535 554567022 927992177 398834299 756950617 680081167 960065957 353639464 755259667 352012236 575877254 248949959 72042674 405795573 993947319 745893374 431425383 489133588 819400800 805650531 328940617 861396577 867223935 606216875 888755680 61238927 873818179 608874942 42684283 794215298 453632172 785022959 514064590 690783826 848634916 100465573 274338417 205956051 72463872 829673853 127378789 718862850 498746083 649584634 961912640 592005274 160627038 938693276 805592815 599608419 311961854 168917567 55404085 379550186 174725719 316293312 97800454 543919888 154685979 124742535 849191477 292515996 513764029 1732307 674179766 906200952 328731969 793393212 344256282 825299251 485285812 888174867 151039542 920531785 775200864 962303977 664048264 118581655 402955002 661031268 513422326 520201527 664741646 69880422 975228873 822652120 567573412 912634226 712719104 750674735 979925924 492850428 810479335 739237257 275742795 771984760 11008552 955889778 321893836 159833613 812469539 278708273 79977409 10601793 345803026 597422544 194065376 104759126 272260577 337485200 346806025 288256436 317355045 417884694 230909233 975323073 319958239 675625690 396159075 962276441 649508968 688730620 531349347 722337005 4005854 895704340 625006207 667164520 341714972 545071159 577368289 128456752 481275012 520071469 203510230 49092004 597698117 424489929 793563710 890117289 305731935 511218487 338555825 474401238 476126499 205341945 437044509 925463819 856058942 196215578 778070382 166658687 32426500 531501971 881788822 907778700 867344102 396648439 315985060 283652517 287657518 727218955 257360565 341345179 315008639 122855436 365228724 762960551 553850880 885666329 421266698 573797549 490351494 849496967 438577031 980355266 535900407 482540084 603493303 13330481 175885360 600991418 265692703 279191343 212506057 703775527 259382530 480796096 337047390 39292639 772709749 47961604 23368191 944197621 974785504 36721684 540222877 122846574 200095081 349771408 313989334 149082573 537551459 440669760 456934364 740316861 393908060 723040195 297369488 69002681 353530537 987324278 190697589 722796063 519303177 947825743 384002247 346086120 402213463 825751177 800717566 738771078 421023050 762998941 12279550 232769426 887639025 724292126 543185899 863435556 322618027 724311523 223676525 749255582 142124618 671596490 594162263 149780315 30740788 309638185 91077957 919630704 41692376 200277677 939779870 735940211 55748992 464535455 370649037 662637960 646811484 766389374 199321876 287536957 213718397 987455846 6104140 364075035 767389999 314637108 481392370 660145043 336257333 422435646 410313570 491420617 60163442 198080066 599445833 341091297 473509964 711484391 506691498 618868078 969351061 135987679 843883785 125281946 341146927 179267990 211237900 854436645 589582830 345063248 330435347 26341290 855410468 341678878 160692645 625759152 769201106 25297921 604792350 655929735 849356592 152617010 480127242 274130027 346646653 190130264 248068180 886341900 286904331 634668713 136801286 16275396 277469545 129831326 74774418 839617132 369030377 988439145 607544061 133457748 522195832 35820505 979272924 72544290 747301584 527758080 104355678 364139709 678256163 623765880 325597808 192021278 275914581 415619122 225550477 235855327 400367342 919744480 109976753 438881547 281927609 983817019 759685306 724606292 508397628 57001605 67163989 911048906 95553003 352575669 323874715 16660434 799866904 576439760 41896823 957350272 707598313 251043282 66642500 94397672 253000212 588356219 242214797 629121586 305111160 295458787 352333940 710180514 251024116 545149861 498499473 236455624 890134866 402282810 297022970 271331184 73356543 79186611 924548861 324197692 900092669 131894908 483932373 328999592 297835164 881050183 229587055 896040066 729696279 524863902 634440802 531836712 132834813 658782925 51251742 150559099 299700051 309559346 580821152 608210489 526540297 237011714 498094483 285373929 425629297 619436342 37741618 850267441 56841970 496504930 13161766 598985558 962606678 215195502 984049433 958634815 988046576 526660643 332102588 841998881 75257203 325346324 329808884 265206537 966703220 536148002 700473769 686926910 907498355 912837270 526789137 371624913 864154902 287019462 319379197 430325215 50079383 511317864 525284522 810914795 245487302 664314481 610611606 403221899 438187032 516568972 943685998 179804367 649181132 809972086 946652501 177442123 605940975 406702327 278045053 413956721 849056677 6818274 338831089 503197705 582959395 932463745 734264363 434943319 426844162 739952731 675125909 550412562 760770932 290491391 26980850 290664331 799998973 238914472 790413697 130912676 867307331 314398440 395247787 356314035 384902277 441581434 17671447 117785919 287788174 559982626 499672108 623912481 762434743 119345971 151370702 388828541 227219993 411263143 767527239 868359331 696848129 147075037 763524610 977634054 408455274 242262124 517106174 97583147 680624335 482937560 973163477 476065606 881686557 792709202 678495986 565886959 441517303 754819537 558111113 315367825 37767014 324602625 271413889 412120722 708879755 705524330 366282693 565823526 678685567 296264847 684865395 871904089 100449767 561450816 127231122 594025654 150763496 786963395 28736042 66265661 677390891 765752136 707581914 738784158 634669714 291368011 697890496 741631080 232082120 417304226 878273341 285627690 774167766 288347951 384581956 714267668 283097991 412177766 387480253 981569710 142509540 44587103 217350339 634736011 233083155 239639130 334205246 306441601 796804020 183557007 457165773 600369326 232610474 12661029 882756306 619686473 696160461 417943676 782668745 696359917 57341112 69040719 750929367 177849725 659097319 687615937 405009613 626638868 383178451 21203222 983487579 339647175 41110822 17878770 69746781 762373680 280820194 593743606 969389368 828202522 817079048 683574996 669114223 260052424 606230134 492241562 872242746 415360608 438870205 953110816 646738538 654240249 59043302 854666260 535520481 32152182 586047438 163089050 965527383 512036129 378852350 60027935 132449345 449728097 127665332 52576488 533972184 781112725 362193687 476548387 400226751 610797165 209354949 677866653 855782986 392315879 612637520 989785778 782103866 142209741 346451369 867768292 864655266 956085187 828701590 496310272 716504398 142300673 546391127 70914323 509660966 780283951 857346173 47717148 152613320 394155732 334062794 359494022 358770859 190729066 397666925 295045618 537884463 240995388 678085444 555204282 515020523 21868801 775716488 650614717 260617191 204945586 161049383 156530745 341969870 532995926 574148225 88338586 442429797 266454499 203627307 209073577 61846225 556331597 314262307 960441622 410560178 201831657 843657166 663936191 166067567 767372892 47599678 334464784 333450609 414608478 296199823 611870113 964448620 286060884 717210379 204316606 720677718 648470084 952373558 809303889 285363014 678457647 412461333 411529656 399816147 483764726 233903974 493658254 72113709 813231095 785445990 53600060 37261152 890634600 432540542 504859535 247082895 179287111 453699392 362322248 135649492 88013452 438414289 574759173 854572216 954466646 463103890 445584862 614695729 340580050 354685516 604587570 222848927 163995773 336319754 754517772 863366538 377302373 333937391 849448208 102397591 207199311 940641034 544081337 151114876 434526456 912168152 627481618 938720453 758743948 782123396 64655190 781783513 845945001 595509547 882837246 264884895 273278072 229285618 801509630 47472793 574214748 560369390 963010214 578526594 426610132 290801973 236744348 41163071 234042769 136648961 149096504 29236511 136982054 179405562 67290327 756641673 487796938 921697073 851951364 803243578 345074819 455405726 980664119 559664187 273295571 149496405 305810538 836594828 802709837 265035440 556939012 90295869 691211560 524018579 417227211 270638460 907638288 511112876 343679759 297101039 916968685 574121471 683795001 419204483 252372638 948186199 697525891 41183921 830315561 54731159 644119061 377894557 374344097 90454163 154203663 726923879 863080835 131065298 442333481 235805359 655354911 364677195 808198160 891557617 711959328 492425928 44009129 926584779 257687289 522279315 793763483 199680531 237380247 573031888 232541710 299728354 954385473 677234839 794770676 927913676 981502540 709399542 647821963 518273390 182005695 199988947 782963573 979417266 589963999 980065091 71078387 242156166 147110571 958943401 838483344 746775765 105668639 117528786 211858111 402631820 908952797 458791207 735955372 115509566 548163713 601140369 199350267 322308729 283045894 290527813 528464531 782616216 20760664 924083261 624893453 749939455 641763807 473550849 417791186 323237753 356463540 116147578 257651145 467955775 52267552 507560995 485880487 64122106 237358330 4049994 800608869 551705033 42708131 497587848 971981194 692099167 531287264 984919268 106009664 244793462 260706283 592871189 802803032 663246876 825365444 92979597 823147633 91574792 581111445 340547919 831650518 815809134 768946508 954614287 29916076 578875035 304211556 538674243 146852889 173890984 632379403 850040098 638669406 983070339 903172522 434999776 74458047 645728779 853576442 493885227 782101399 73690514 164205631 597431279 697530681 796537094 811895262 58480137 715352333 503963257 684452747 90681691 314667696 417743654 547464007 687207915 66903768 409337120 191620459 273197761 625943237 439654559 896601366 399232036 887674376 735509752 609258396 400431611 492237069 431566805 76231348 716764312 832365758 370413472 258070054 428486517 322623804 837520510 540097830 252036638 449852784 356854669 446161340 419099851 495829250 481830242 244100944 784087565 734567945 96545991 91412384 466908253 660494018 668738742 479574102 348987599 177462796 613761713 953203532 967487766 83380652 705465108 847327203 49849150 463811855 948110128 143405329 385820910 643105191 935527077 84982225 745414027 678661455 9229640 398785641 226241204 389663095 546661981 764967099 428241222 952410752 703303581 860429661 79343308 796854088 813296792 753925345 805768116 321204437 494063182 324235047 387714359 740106339 96169545 860926662 366740283 331977198 706393033 700167659 160312749 973341086 531020772 696233613 735673670 949049710 735118680 473741050 288811753 177106114 923762281 576780403 100616460 331987555 263146173 110244765 569375037 231628265 406083355 774426689 788104443 172470581 853988787 918029516 337483326 747864779 470984752 130873804 166891404 936497717 74426228 976336824 974649537 562778872 176122738 132178853 139140410 555063474 268154637 687371495 667002958 436146098 526878110 284763915 486838630 352409533 371318330 447749467 331712526 633465133 224792230 384158020 148032137 758327439 309087439 262310159 189978324 797356487 500821778 176728366 391109298 362470234 693684149 311979503 803213697 323889988 612067748 207748616 713071378 994917309 184249206 633715860 981256483 342766161 73235965 993408551 422379862 659024419 350131891 301901130 712115470 988085586 167347121 56648868 27340669 900779259 662122223 893515299 309275605 856503766 254747218 507617336 375458334 29191959 894264175 968617732 817230074 477084733 427341353 751960734 504140327 177442723 749868257 717101637 313383964 616450139 329541207 377890882 997250650 677429645 972399559 119860821 416002182 942013328 861804708 796278777 383344027 379872704 717512638 531313287 88780146 265127898 586435726 715845367 553920680 272011738 711785272 277545256 693113663 89512574 454998215 704378501 148544705 871034317 608708686 707731810 709156230 11575201 324464004 159327749 991410090 295458356 266773786 75232886 233050422 665811336 630950426 875248640 421134541 683865698 455836511 230235942 858638448 338580437 479134770 47803448 86624369 235083311 908081935 33902334 40742676 152145378 950337597 422675702 119595920 924219899 100676136 395540412 701985104 260767562 895801641 10332678 693203489 636113371 35193980 89573402 816511228 163145033 177414283 267910100 529872033 780386745 184819309 659810094 789267859 875899553 555787360 748774205 572679302 22163662 611766593 47008687 805460680 410502308 403731652 882562427 537145187 205431700 991917816 901173311 626728611 869560783 428441085 372492147 837685407 699870929 4491957 235922704 440749715 58345139 656505540 543861093 534312555 878119020 615860735 397727152 34847550 260923147 513420296 311966275 254922218 679646063 829100888 249207802 910458721 507760812 87516233 650267781 696300633 313257486 526065312 876545903 814323229 213943019 769618252 69660677 671651928 929227880 223659766 87599024 224218865 97028013 472194207 652269576 693146734 846963511 228272127 572946129 441246097 375750603 170651836 226853458 265869984 106950383 528033499 629961294 341656102 43877857 518254735 619858357 656489969 266271261 946369417 816445802 746327131 701785632 488208682 637029531 786571512 376802134 412884191 360796354 813152643 976638059 648001602 530112111 37605765 756271556 218675560 157678186 899321514 52903701 869833683 946163276 340148853 996526555 910924604 670830211 760418631 524995801 850196666 483365062 323510797 468996646 516735507 626404677 341789083 485040152 672873835 339640025 705322561 647946823 209002706 221052964 47494286 44859416 939885888 706316071 420486651 306973689 23013222 735898088 527998139 922629142 886336346 600412245 166911310 260425028 607303214 69401522 304377638 298305091 939396601 27274411 669507011 233207690 382994011 433533929 960559465 935598957 345310498 412460152 114433912 53782600 940839355 692322580 947356352 51745834 684257259 907845893 689658851 809880426 480559830 261823057 664816087 758162848 416411557 969932660 849207056 906422710 853764277 913596953 294676338 390227906 138660392 322887934 554220452 738780491 422554683 569392992 921535606 556089859 494077775 850294736 102722312 924167441 384693754 544377931 99279402 377803920 526929434 84831002 964489669 648830500 96732210 474205212 251663357 220032973 148550448 459473533 678156120 396559681 394328053 368567968 570912027 688678319 554672904 423637041 715753541 376306262 216855108 497226149 772775755 320576386 83754729 792054244 427118815 960674777 195938123 306012577 923574218 668162416 219285711 762064968 531805564 615813404 962775722 424603082 865262399 779751177 782391209 28079294 177940150 355092014 743300637 349392774 738445167 546200480 838521523 251051016 993639670 557044022 320251561 499504215 223241057 435539911 89054902 13661323 166537373 640510484 79850626 946655564 194337842 127676711 995082074 726541540 815339452 484535110 264804595 930944328 507710671 187126378 719770785 672556184 752046584 4860687 944413312 846789146 723646796 735168218 310824448 194257021 952934602 101979365 781182843 810847874 893365598 397623345 74394308 117643239 137798944 2115084 608389916 243944008 114645066 347033259 194786143 901467270 406473466 34917475 754197494 231176712 560801290 581871574 840868950 55269716 959573609 109023275 633491281 442507500 270864225 211643426 461632169 793380640 859362091 458710122 448882954 324610425 21735663 703447319 503156744 375092409 318416075 131936595 338359229 386793033 718174718 74856040 891396011 908035668 164945047 865473496 868112814 5462083 495114857 225123883 962278625 645952219 942143043 999482810 28039114 923312359 518352059 144214411 32095263 653017478 437068232 621591777 921024365 556022867 861448673 24830312 224692461 427041753 37205353 253716238 694584085 917073995 434745072 400641264 542487243 326880549 844728702 766525081 557776031 576768968 291431664 806618069 695838801 813948391 842486593 628123738 342898688 546578433 712018400 436457607 287736220 952069294 855001780 824403240 548030687 281972569 72335980 438413337 455270632 270395176 359708714 733291901 445425007 720196454 330458059 694972859 493590883 810462007 99886912 331380306 605832813 349220123 174100471 2702499 181806317 975181975 958179654 417440059 638620529 187723083 184752942 931420487 271342921 787577415 331431853 568154910 897256871 908800228 84147725 919098061 17603424 1113304 731265501 157660027 942605429 883725201 187487556 137030802 237038215 150774706 850687205 773817342 18954833 558691778 884268339 556827527 646487522 809341901 607259321 844574300 775613779 577142595 952973119 771776863 955435907 461272591 827121228 711028711 960476330 285549986 486557041 42510408 557877147 444188164 829005828 164865841 543283795 729253343 814410365 177897447 88635855 336226092 836796325 744806480 78297696 944080140 929943181 96879319 400099070 626901982 19117860 10402135 840810934 625560318 518389559 873402571 339791704 208928380 878207103 785887410 336153902 970396875 549358392 535649363 418140365 620207099 625019412 382310300 633726614 828482732 36424399 179382596 168596599 515629204 998063086 884834125 199091778 851720611 188394423 275231317 588316661 215976224 28243625 534781861 112519792 845462890 334648278 176554723 11647263 405870192 212750518 567537067 440858573 764567698 685127117 545635905 125503033 798080534 296553406 325781299 395582893 248952297 736523549 122052068 62755900 718751014 134626797 112838121 940538382 770599408 222624218 927405418 394952833 146336354 929202557 948165456 473720820 102384758 950575141 984026849 279860166 179094007 790820844 568145038 660969559 646846438 302557065 66408962 29268133 812033041 337980205 52016235 396020448 587913748 558356678 372008804 60631740 430226400 651157118 500696322 389294669 979172303 881653124 55535501 788462873 746166812 894722533 281070167 549190597 934907612 660592287 999321840 930794032 506772857 882543699 59189707 867101212 772149193 952190881 482484799 631952898 24860428 265198945 215531526 595336077 457100042 300750782 300575489 17800755 311849529 331678952 371821849 760608251 583321762 873171398 119018807 122125265 119768388 129946861 564778469 755413470 454246344 81679212 633499208 786664808 695376590 125424530 382857476 880081158 5882021 616616592 671080989 979308170 496879040 998337954 688560239 152329968 756670796 419293271 746033925 945877080 978537725 26978341 618946897 694540651 645104102 235554055 111960379 491120764 951556115 528681454 255944700 862935635 89483863 735978025 444230935 483748513 270273473 73312970 243098960 414186931 76663651 756222340 619982527 419265564 481283166 379536440 182986774 353655025 692518528 453462467 555132200 94253430 476158130 429139031 818379622 334543371 37891128 462069539 132549272 926351083 581231791 108315379 18403020 588069705 934558153 76720767 358600281 969917925 884503512 754184108 572234729 937918866 82664820 40166323 843311445 720989825 683193991 603858349 676113704 495763367 426494060 328274665 980328988 174923574 193752652 522881498 79969901 43769500 614594133 433606684 401003246 900942786 726731194 841455171 90118967 495776334 160469870 764202130 940699454 96091145 247189823 316108317 833935146 138691107 824862612 961818568 160990026 470505687 242420426 437059457 655856034 773677652 745953804 673713048 125338170 56479306 874439316 406812753 198162102 414706688 375125236 238752056 621990142 51497513 406511562 193742199 528212652 277904697 657042978 178237532 4349401 630596752 337613334 472712929 493812229 640319929 813609840 570175930 683165524 549130166 386213335 939874673 946569121 857843472 9699746 527008519 296590394 809462924 940924530 702498361 1044975 138699629 341505384 80747916 653419404 168162386 860212268 168029794 223283440 468049146 438181172 187689431 235780066 203283557 930646801 345282440 286144216 495410166 619104533 25263386 353796766 85176938 995847176 348345173 215222981 171606575 650094741 753742505 505206427 637659793 851646827 766394875 227817297 456257219 989475005 105948821 555296400 548582130 949115647 781497240 593816985 676873196 398712446 344122670 49356534 176995007 777223273 138263979 527841455 613407126 107121078 187778376 513236726 799319716 577621229 838767342 549002051 910175906 6773117 441428350 984995077 237370449 733631895 977130851 742777053 899261972 814025125 880394652 960751355 893901291 749142568 489770228 918065392 629301007 890552097 846814491 894042394 616102009 24058142 797444175 486356316 610215016 856092242 165280793 34026056 829277789 174448244 370757594 309952822 819889113 604721309 29171212 168033695 521805173 726497410 558750552 19043928 320190111 101803467 771079346 925234336 136115607 250208389 578826755 41390117 10732775 793262355 427728192 770650112 349210511 761520888 351175281 50838105 591707569 557700560 331995604 600586825 981777407 29883930 314660245 486525915 832192142 133760103 483101839 327106596 575377777 608077874 895505172 233531264 873468726 227516157 725496446 514792591 158044541 506188627 846707596 20700688 627267877 861273758 761321821 882391377 714263010 926943485 154120887 802908195 518957284 25924701 231929257 352603158 491587417 843721818 226449125 362697310 36127914 806708656 593811738 230999200 398311376 65495515 912889595 844751626 739103289 151842252 920796581 121093964 901917825 325801258 569944730 40196303 69061833 779459352 106930435 492190607 359691244 255683283 416005703 866092862 384574489 742986815 467965562 480171607 725777361 438932084 944798338 557029797 326731708 155481001 147946509 712736107 559362302 827806778 211917761 557664567 204649997 836654776 551812917 984035518 440616900 354263593 876329503 398145376 512597338 136805494 51194817 573654099 870329396 567109136 228712763 977801700 434563392 490325837 958182153 705594220 435518918 529437852 228333667 25235516 926998952 220349970 951980309 759964213 540849382 651942795 10771034 474618611 860017931 645202693 674635673 954862233 522351556 841467571 803904689 327833865 127264313 297315674 307613533 726403448 756983614 859564602 13839903 928497754 593370038 976467015 378353045 187820572 215845163 965776085 342225102 208204010 815959479 992137741 28456757 714704841 225004472 30957767 794353168 988657659 17185006 454508274 172400786 892320747 380233691 278898877 802676574 842667006 284920095 829928442 583368362 850118177 685138013 351576356 119638264 936985635 492677274 78509286 116291760 567594597 556460405 593196852 65818346 16894422 824909491 729672674 796313358 250088742 22400066 772738688 638746591 242512795 344320105 540138143 642927406 720779928 212805947 453528941 79534226 687518468 438251442 448757597 145482768 706628101 53148121 411294847 438661666 537228954 918466072 156188854 140070719 591768852 111267974 612516901 240621523 619683987 966327199 685875476 349808187 244908859 893742152 264398353 733537279 863900294 915829853 130687547 517850907 838257486 252491905 646345257 168971581 5646092 765722677 549499493 256482614 426650739 469308835 39047929 489766776 212424275 683917723 604238355 393255666 82248443 253508691 706852372 802921153 434661900 859572202 849408564 784284136 755386323 337119474 720924953 880843797 21994437 334102885 109272599 859118279 512848453 318269423 514536775 298526334 63282736 218802044 497489122 981290219 822989507 415964668 174708650 214881850 811505525 803574642 394495041 68085441 407144619 48341665 429438259 625093501 418305451 49782567 995319815 909699952 114100931 660154895 693804443 14343648 305820576 571858052 542283788 692641675 986692757 754282889 253727488 718033849 494397409 601027519 342745829 257339980 720421845 900416821 951288762 928773580 981036201 90167983 518430203 435658732 439815015 701967646 494160506 691127484 683442961 343916427 602417486 510289517 463758684 816441255 471538206 880551205 170283875 259400439 508362093 485460169 772928533 477752002 259875789 978264090 222312903 705536754 940140621 551314444 737361839 990493346 947196491 48004408 359970257 394442972 312397035 839419637 344645334 591446004 562158483 836673752 56721021 285989120 933932764 774571834 664734699 117715030 386858039 948079560 99546132 739996586 503620557 806069417 733357810 643475727 488487287 289094731 936624928 184937796 757379207 102315470 733483820 284078540 37216446 880757944 311804585 123322621 796561442 169779279 214829795 833388008 674511357 802371877 291577217 678390468 711509543 396927645 511782035 877751319 153539437 687669605 259132655 667235262 966829186 318217730 473659920 10487121 380184825 54492776 559120640 367074369 427966264 939732624 844502381 380437844 845897145 40680335 465374217 29135729 77176759 979169485 31566948 96327696 107370823 451401335 213571430 11624167 880671236 133936950 931260954 860300793 968975254 985341807 918367666 55817349 566999062 41434195 542598660 189412656 134969713 56481998 446464 968687900 352500939 203098652 314054931 92775676 88857444 595746409 891932163 647620562 50391311 571705769 473766263 11922642 58907060 289471773 691758571 354107120 326944366 820217599 568545763 997536256 116294656 751755414 171330103 299625848 347000269 142728485 79711365 819499155 236653837 698300260 439185543 998098263 976540243 725720770 582225355 279182598 281243802 92541362 705813128 718471363 605013105 821916602 158234611 619898538 192907458 586067345 370549317 896531411 69300172 59043271 14050450 82900438 75535923 591362925 784942794 811409679 510750203 775932867 322637865 880914277 343996991 799674110 237332279 952530922 344709890 480953477 820851584 862016927 649597955 28920393 611974355 911150508 376396356 134377181 971178529 400244124 536333178 656417424 185556589 386647123 145531145 671658297 718101012 60913708 103950123 112330288 141737594 801811560 758427615 403584594 113374144 910302241 550367151 906709023 346887058 418452438 482632688 331089402 855253164 538538953 275096134 515618339 522157539 375428040 264557281 856655289 85252914 197529242 86521446 415717060 59109079 247568544 41467621 60148795 373107798 527272832 270607874 212393930 982335235 244976245 142980899 285012626 371435771 206979531 910243954 348868530 396547527 37316472 288959282 982622325 578761757 532859748 478594363 682073061 491509734 585870836 479337388 563932551 762648285 924098450 227713411 729523519 344617344 568854948 435080062 231003538 364187345 80536247 224266438 48887290 729090331 726575200 375370508 636717283 4512663 549839917 502625432 348785202 368604984 684910427 596780450 494660136 82280620 259437169 58720103 914670350 190935463 912180340 339686065 507272747 46350114 251139846 760165066 289523038 513550943 36708908 400529259 857194662 682840497 215282805 391438082 706678687 998167701 307086125 461082319 856910135 437482113 629778508 9973113 896028278 21160631 527101705 115761565 425998212 245856177 327144224 46260722 679767002 42108637 647766027 729891728 848434481 483509515 135873583 965610071 750857263 572986455 325092559 890060579 515968059 23924774 134612018 201452823 946495076 455625669 661610081 606778638 625518691 124149948 925695167 913547483 276314619 87220086 487609008 546886119 110852601 137590711 935621709 512445129 662585860 448619174 785728239 7963991 596142781 615171122 582771815 807087889 117352111 921992795 88448842 239410798 510095486 573004576 748071708 206389196 691647958 133233404 927288137 154342640 14426162 848006901 497268885 645039209 930975984 214929854 766446243 658367373 714724473 724894305 884142587 887880454 574929125 523909260 894974787 70605810 827766116 339799494 444129403 28991244 437817103 930309750 222393826 382534916 17391848 849716862 856095325 81933262 902065258 689280205 553784993 118600356 742392901 916634813 767636073 973224546 548667809 78310416 707895129 269588630 667701234 655026447 86267291 98685860 355679558 336729624 374470788 265331440 786882425 282092513 390597628 965590243 318570191 988239185 312632880 193402185 855233536 249678577 799592607 101878169 342545818 803703702 327460450 318878639 496108382 908160382 177267153 326515871 716502725 804018908 235987783 559237546 299206350 80074236 536814199 950325034 509200064 9396038 734985191 823581734 840870389 448505635 195049728 233375029 828451402 655796957 795795935 632222468 713947043 54522454 231292110 982472438 682543130 63005296 323476695 856494140 571773104 394147843 349186434 69385598 594071318 94697340 978358442 101433672 543730385 854389735 952818894 72572359 993184409 945615181 509858844 240026704 840140489 173378676 724102684 757036641 488992211 624898396 685207453 313195408 328382062 780426152 228653732 296282606 110176625 49935540 612580296 98987441 617444107 870311259 318017689 316519001 843543174 283955753 148737631 871715987 863082526 890351132 694647119 515121003 496239811 834584962 67995753 977258518 627504107 431567507 836358125 882790515 731143066 601221341 353742601 292396245 473160237 469341737 524463476 912909118 700638942 189039693 983548921 704351950 941253728 130308190 185467299 636320609 983906519 856972575 451256408 771700665 248554185 947773561 204960061 655862732 883494226 471464974 239505928 516747048 247514467 728549873 945215759 771841141 474247037 168526297 538932665 799310234 615358172 54709103 19348967 148988927 715441628 741540144 568983423 472911778 663150666 117956278 869016779 573849631 266990648 77963328 532527328 474471256 580582673 226812218 511144568 294725487 489784260 628649070 117658564 201438966 152648560 103886749 82655833 782533088 2307618 204033244 532412113 948107874 851518541 532247145 857212578 713065109 579461944 905737744 341072726 550312578 928790151 432528571 335286428 948701897 137896071 361227143 543035760 930690355 648464320 190492868 349787842 958640858 760571291 867965426 406126476 166767950 50875650 248252305 188443836 258093801 840464157 398989232 336839171 997378372 560025593 475451938 132476587 852256258 72138794 896410288 511045447 885852421 818940493 978222253 581524144 140798252 257227694 736477221 357156077 306127537 24526293 877906422 233661190 910496383 68747871 536190584 80945646 502284653 196336998 562691950 126894799 584075197 272250530 937198597 994321167 826656970 636906157 337124961 778140561 199322816 189864690 519273942 275495285 702726431 11992997 954581815 847636721 951595087 858860482 867951969 383032243 324648063 288873368 888937635 650747942 565671425 6412117 624422519 293770320 401649170 589937054 457509455 243963752 911555742 230110174 55760508 428474577 715464762 466602641 963949748 354130303 542394918 254361713 851419576 243873773 538923160 475333977 652441463 240172283 527289537 617914247 986697454 964889095 406976098 938445012 287203711 471870180 332510302 903875050 826044443 253236538 851025294 215446472 59951397 772696985 957413914 540736398 255090290 763925626 15109425 724571453 262210645 416416418 850456982 887694294 481921831 276102959 459368925 82972181 687327365 892453900 732742225 779806586 918259758 670679700 904248193 921531933 860668740 209773626 459871473 134852895 96398456 300282730 984208721 342828470 819329832 503415801 199108396 224496136 625475031 86241409 260837211 529926495 366388804 183084597 651794583 965946617 393386702 983281542 279368067 464945380 50437053 890758759 153337953 725856165 219390057 625470993 6311215 857621212 995778391 676507979 374698974 803522232 89223663 980181961 723716816 898522254 627991296 510970501 35835772 910671737 491612535 669360353 608657778 67691640 686966058 506211863 449454396 810167118 156299050 639196787 621826484 188791105 461785941 662411543 886323205 455769007 151728986 851538613 578354002 946411750 265344996 849901288 91827088 117750870 904558756 69611832 385299718 232350853 215000436 164455173 817283467 498197728 704160408 805179477 412039226 238713289 758373675 666200925 178281509 997540831 338472304 814235489 704970280 494116025 105003759 413445250 290492216 315375926 445218448 733554398 521720550 451323744 718782022 492335907 998771410 817976671 665273391 328330796 887921855 162008308 652895846 748658652 970630236 992887402 51513091 601369188 487255121 749815287 94663198 168726688 429746606 244273039 73817293 659565376 3096770 880620351 654201763 55834007 189736520 69507650 659214842 513769534 429575726 659755897 29077977 527444110 911925109 204732419 528338728 674823198 563080381 910357001 388185777 358428806 31815040 701538786 121877087 62827665 818657591 166242214 333586279 542244918 683189167 743340974 210518676 762311520 332270474 813804872 822076211 415736044 46557581 793279268 772173841 352130810 300038576 272759813 255385028 30287877 966103147 874933213 903880578 307542181 513443556 385387077 262347795 296186184 114124163 891154346 208870238 534632868 522507013 49273795 311919938 360720200 316958925 480478477 150897050 201916245 375598367 21475819 921156604 880038725 476210286 920050768 95104978 38603062 411659683 892044506 403795674 514352322 715510307 426942235 604036201 728548500 320267052 530248483 386499282 972899578 258395071 264964973 309433293 520925815 705605005 719618868 264689782 227381003 418099150 952078734 283272552 514009487 899597197 765249712 496596990 402839209 567540543 368952865 280656731 904515703 963761181 479694610 254639970 792960763 219417151 849053129 440481605 163462787 121660541 999024946 11866185 915043067 788075577 49476235 697621522 25584866 527558365 67559035 806928371 396133356 576872365 418387815 170398184 318288245 982971549 415151007 31138307 892336138 192194382 220130663 418332812 455964985 858625105 48310076 102993704 109742441 143114453 392563441 270449061 698045303 167923670 658575767 633598524 42371344 401972742 689978053 915683268 233520386 959618988 295251638 982953017 924455744 923022781 5752031 682597514 907507218 912879769 192376432 647642273 555872303 816112536 46854269 536233471 201210071 72490823 186301762 56670011 268805427 23415414 716774355 336090103 159853419 234382624 765216458 729734622 86227573 773258715 921274842 901490314 278575846 293968508 388067565 605453263 727125377 431681978 89375696 599808057 704622612 882271689 689107355 803198457 142872363 954529419 844397142 610837393 741659326 162102027 776184865 631286079 585351366 845568478 803093676 570308651 612974134 725027351 551732854 888986 644327098 391096525 558268409 475304032 45015256 998361874 673834202 693920295 592021064 537683230 41791846 879299731 789738346 741498540 536569310 402018025 747306261 868228105 152799921 604779499 577041302 133974282 90635046 958780693 19289315 854895310 615077782 921497383 477310568 42846988 93179855 237250487 630233082 777506345 40498005 579156811 16138045 488174403 549407626 802942354 966084702 794965641 973176456 446265878 736224182 698866362 547743148 574849607 954641218 822645386 650267231 622467895 475940094 844513225 692146139 616149154 224374606 614701718 744046931 54911681 479609578 975302385 464213278 164726805 353839760 103316094 5214191 783124767 660186908 956742972 774403062 304202649 192560356 112744774 64683032 969623090 443106190 36638247 349876229 695871899 971875826 870157709 147313195 27168885 416695195 378083057 643029709 148508291 817226435 751335445 519316783 539172683 279216272 830360077 161275345 221863957 731128760 871205701 279339461 337365243 396869562 851019748 898951350 331960750 359330731 947213113 805176719 546864352 18140962 747848527 298655511 499170063 560865144 762162203 151858031 172529458 367953245 37298399 282957280 730099018 883831192 278892383 907597126 98744460 384981351 414924606 443800245 527754542 398676666 48113551 323641418 107964032 218533035 372290018 64831068 551698145 805466092 998904370 721612577 126054652 366797136 744264124 231296397 588875999 614788884 430420001 835187894 945610750 498891673 634616150 437774580 459469586 284320565 760744478 406260108 979969338 682289867 220157040 665975020 717689308 400398871 30655172 686051321 865501722 305406092 542666012 146382484 560406333 707976770 591104823 9787106 123200726 678470054 544489972 375611167 285717344 72663463 823638968 659967401 588793649 687690556 290025001 199162066 824854326 863527156 131152810 919843645 381743198 503222915 444483336 491197930 621156470 859547039 992542809 515441451 974988400 564644337 659743338 867383430 463510380 983543949 550163050 391233128 801001478 827192334 480489660 236577737 924545366 101372420 620674921 860293982 804099 88021559 974579789 549026729 538967065 894339 848911465 611754648 346539346 995967092 635487365 213385393 452161910 256618817 998557072 838259813 356181262 194119660 777961547 78519993 362403130 876691758 863443614 902247146 795129833 98085228 208353894 662750540 912578743 357070659 571513326 455670166 61708702 994629489 912076094 493024919 114557616 224511854 926485913 696139734 836099004 214267673 755367077 252908415 850164386 197601703 933108103 676833001 118457548 674098361 5495005 82523326 560015319 191601061 571903827 628607952 625792403 809122852 622107581 145544378 157802190 697136858 254433834 145588096 658493684 983952781 407314212 467093151 224896870 691011289 860096641 592556033 635660174 189380151 579391208 439401899 825956819 426254691 611174460 96548521 394400329 12038679 117693443 559385191 143122061 450406043 432824512 335733602 661079907 319411032 886109597 827437263 722704637 276783585 170550825 922273328 627800065 922233910 795070405 908246654 900760859 271034568 37355433 887260637 203782778 685647062 253790664 379314046 901925776 503969432 67035852 90026640 243074258 771794941 988920649 188136671 86169498 944345430 948517772 11133563 284750537 700119099 678766813 131608478 630528037 60770293 52045670 128426721 557830766 261219149 79446387 748365436 495916357 104736411 849418340 902602952 45829251 494702310 982036440 227214195 764349375 374530860 756105363 241470636 255965918 746450136 219631779 795772321 87053557 576604742 419725959 341337018 648975948 268469790 61914153 37110772 461923722 194833649 918717471 361014997 308763565 825060515 881776542 697172861 805814530 894269879 686442091 120521784 472475577 884655254 202231334 380196869 336751617 203471762 733000121 631750982 461004453 915800117 309172539 956923507 396961903 437455671 96032955 381670113 66189944 26424524 297546485 272494681 900643981 2189423 6771145 644606622 145756688 755297847 357849342 274754210 959876064 51157482 195528120 498623129 590835593 815331654 231081549 492199798 827034791 591058723 649166607 845471740 807368540 744935661 939026 2515030 902570653 328965899 207021949 400140144 27254651 927844447 642561391 449146526 336163157 737130256 513504431 440704337 317209671 866648065 649358656 679718240 297465819 289709436 877874416 645696987 247691264 66083041 574064540 383228038 351247582 230399649 969140182 237731387 821672412 330081732 64646342 496277263 442208355 508768116 392120844 312602133 588335364 272757179 823308180 122466270 416746965 940349021 502819818 880707208 904965334 350375325 333571868 953244217 856839832 843272015 697187956 305887848 538613711 503494857 811850610 748998983 628229294 406365886 97805908 680658233 437262300 411706094 444937008 275441187 548019864 127656339 544582445 269622989 671987892 16317841 262803405 174039874 733326658 810368271 295847031 101533356 928821709 168537346 359667286 476076137 460210563 562189735 249200296 472625580 797441 916701004 324582964 619815237 335615448 533042304 654337125 266231793 46269162 897525753 945896209 66993335 308130929 290785771 228413799 885329664 358713908 800137580 855215900 591451817 439314379 425356209 383927214 33788924 123913696 661490983 556822680 488430789 808543680 197975897 288616687 169526573 878724265 584641727 345906013 550445006 360403164 180828361 278426654 779824224 600026456 35864857 512756212 75909837 20294649 138031745 354157769 503692725 582046427 136976771 84050829 798879077 417784743 36263991 277707867 864557661 946440949 583990803 321138804 817209632 389193305 929608095 503639595 417410621 34554644 655449487 42539577 816802802 541989368 608670974 916299183 861273720 592860792 75140256 650402069 140487208 785203167 748110805 89035443 956397200 813349603 907530458 463779864 894082737 188246986 485862348 722625494 123242442 728036376 538660081 955707928 431085888 46183081 62092582 791563726 665784339 645204356 498829460 890343211 977633859 180662228 825022097 909720090 306102413 643003480 220488058 340394275 773304856 604381770 436917252 692191992 957968762 165703479 94430727 229222673 357703621 48498508 35061710 344344555 68730398 459870659 260072594 408905203 455686825 724746674 579761941 457142627 618897903 5329872 488253038 248310674 659943546 425692773 763343197 116753134 809515468 676929281 923205665 397206286 156714374 898925541 979077539 763821203 493077327 455607350 4308991 320939458 309419117 445032005 695051569 676625904 839654047 311346718 139065974 476829597 207232050 478003256 958798519 634320396 679234126 508527939 10322458 263968669 685525079 894141280 912136859 270174940 368358510 110271492 691314764 566839801 659326468 364777014 338314475 634663775 520321742 663812319 191438117 511640599 641105256 895546153 311436381 299361625 384377228 514657098 414476149 628331959 507698889 923735203 278810810 718951204 153729957 392592997 597793702 84506096 26858341 214334842 150791837 729215940 561463608 932197953 344804388 33888994 54369392 277610914 931007830 303026448 203452523 933743662 764773490 847994527 180879558 96830261 720699630 456748970 490376921 745259935 785964016 326867578 741116309 396429743 164043709 995683206 183244009 187986902 392468087 269115737 245325057 250551102 551107992 975226010 632117163 571521046 403684612 737712041 671750882 928235880 69312632 517822578 942466970 840291171 130883462 535057194 474428779 760975010 726240511 749095875 759432563 418630810 832147914 856588879 702932449 624767124 761871756 915258823 425668160 705607320 913142478 357670203 431819939 879696913 744749760 800784463 651341476 20329437 687752264 818617862 153791007 434711389 768555058 696506349 481739721 996007565 768073510 39853210 970924778 842262711 687233112 209387897 80916535 339555523 730442065 482510670 950707144 730281575 85191228 174018795 407326009 950814544 570276306 553797837 347227180 692879796 356001553 325873641 885052608 990096557 742056477 35231642 18136528 681993294 91863813 108255765 829842730 435999175 420366004 710345188 798079743 112673848 394944154 595646119 320330882 333721460 607399878 199508007 324511652 802175662 586839921 493066915 779903937 251458240 676655924 536596404 925067453 38424004 962434571 640486918 76292662 174276651 480615088 872909270 420759593 962915513 945257335 604087226 966767587 643907837 953665431 210104143 405606185 314358006 493785541 614725444 208627736 973661496 607739472 830139430 647186312 519529512 752608813 168571811 570298911 289479708 224523594 657803058 650164533 575841422 120586299 460367564 687266969 263104758 948075898 580565757 391066481 447912080 167789082 415361633 902213658 258574142 442980206 585243265 337993262 901994527 581170312 152671752 644286965 925510231 429112930 783940961 858795977 184564880 359433086 240771096 650557796 692366992 472764656 993999887 430744467 135021387 130662237 332062955 803418674 46315845 145390197 177103944 920006400 837823397 306397274 855074118 802998234 368303467 604411899 624658170 107720561 614406936 195420306 767263326 409044594 593812184 745114181 73147776 263119525 471327039 583696657 835898239 673111940 794132411 803294215 777445688 675417228 931803508 938666243 224354417 16672367 188977177 373563350 782932738 966599086 557717174 346175713 671455626 605465839 912785324 508273137 276703297 306698007 856763851 804440819 819823547 461012911 579192940 893658382 700464935 617144232 614188760 247513900 185469685 492222606 362265029 696039056 295843378 588736061 271383079 198794940 320818103 287474179 355381340 59975263 299425957 737969760 577245936 94364354 368554505 769012214 10156802 227494812 729398298 211272265 66487067 138291986 310603545 81480088 300781804 982875374 412718636 142107570 734552412 99041618 490176604 954095681 814702493 24041814 712746453 1591978 557670331 900163993 538101078 502719639 812263666 247905360 29882020 137331195 760801580 296635527 620722222 967122408 893684085 196804221 359423834 994763293 532399204 273506266 23095287 597473663 141155396 666439926 18340198 98983280 790692742 843018255 260191158 472899772 606230142 116427587 724972694 897066143 80422117 610333323 754769776 303092737 873942928 146203818 303416174 796580283 204453908 792497633 309503328 65183018 108744576 768848572 388410905 389165948 835591353 777873343 748203237 743190872 600775364 433771313 437535423 519040545 93528520 254393538 759959788 439015535 887584770 718743599 492080897 650420526 105641083 504362956 440673109 322184538 450876161 594191320 880445409 635483490 242666088 214445663 406130120 626170488 904932279 313585537 600154470 511493424 541256617 94703045 953679787 891229261 938288481 130354448 993838161 625603920 714843067 826178188 572932576 342474597 183135714 263385010 46333520 649177936 126178703 483078015 856141965 475928782 451343546 479044876 976378955 706948620 475307655 207072614 721486655 464829361 10545876 482265143 973608927 997453291 933321039 324951552 541108518 445613938 261718689 434710743 823198389 562766917 7705911 463992094 130529662 633203481 116881846 454692463 314843436 233179681 813923788 99323263 167501818 72972702 757133129 861079771 386894778 40640729 508573912 943107587 990055066 935188504 519750558 706133195 353585498 497809874 869265025 868998388 514230981 80811771 987578268 500031509 847115702 298730326 226907850 652395451 937575551 756701152 19204278 735157904 296804619 929379420 522584163 79832756 982409007 688024219 547491214 952132083 436524298 83304993 873747748 319360461 73014233 837977464 922848784 111100996 549152764 863484546 771624071 236254625 930781244 307748423 773042392 478204288 901963758 185071299 71811663 230279608 823933544 832486253 226109309 601092913 813684855 104193993 561426858 282505528 699267832 358510487 364128172 496757813 986129807 668790175 768797717 454541779 103308131 449756431 819362204 561608472 689108665 35919894 302023562 725804940 702428981 935519818 770488577 329467936 154430775 193856468 282500338 409408460 453503777 240689039 348365634 366723217 791162908 900332856 496710693 38161140 942275956 346615280 315805885 392235317 924251821 276511070 787052161 762934212 195613643 469073853 660454773 411829123 463683793 994682980 339588552 880524771 48211040 399891543 383350366 118536813 513931404 82069491 415488975 181730304 40151979 946858943 414499752 317209531 8661041 302167356 136179425 856694708 379556888 705539620 232786007 223979237 896385385 558650556 346786104 268017865 655464346 560776391 473442151 177251457 202585937 994637578 230577634 929807133 706895988 786910970 359179168 542756905 226792655 405976742 551544396 509179550 507718816 591478146 658120809 910098313 164351347 833467949 146530283 137839359 686012614 834002348 714297431 458111217 347437924 312952809 146557362 669884200 377430175 224711120 550604391 520657923 90797865 238786117 520208555 606509322 79118383 373774956 379578015 47958282 507967260 250027659 798712537 656685020 560398988 572095851 120275857 975048038 768255306 520048154 977648653 53722855 336089661 837934198 145559184 391537485 522226943 12131897 311112686 449637775 514416634 983089824 591675419 838186772 462764048 764141432 925563879 353548125 679106286 370919850 7936701 62624768 707456740 529792140 800006656 177571083 591604113 324688573 438386393 449152039 79425600 840242805 813021806 573822193 70480532 273840414 131496915 620187078 344136779 517727216 161983260 982252610 653100264 27324199 805291615 365542933 739539396 48471735 222197896 526210168 351859897 47945902 203220778 572726188 199932386 124029915 64608074 76289151 298183949 534552105 485594814 749787987 297448085 621290513 414116512 601691960 540486664 186870923 903400259 229149763 854584811 598982277 530620275 418544834 346475779 207075683 493376039 999040553 364642851 823026930 834799969 554400525 504055708 780867416 534334975 216085263 975485971 258499601 401760726 293436977 432647418 285623520 284994976 904297532 724768820 533897116 811943383 771304244 767790268 193004994 653940957 695230961 492794534 850205398 23998844 518422803 752436361 868579619 594164294 195605617 182738906 731659261 749206057 519383363 75191250 963346858 718204659 590580119 711811749 63135749 886049704 350157918 439433122 48002457 684919874 955250468 405463653 696258347 893427524 845275446 399372237 387945827 508529627 918752790 820531022 974922560 127748988 337887980 697097883 247152204 499110360 551949161 88317286 619831465 358495419 344439418 208057491 935124189 162587250 711024683 228909470 65126247 741429760 249286597 901849931 659045312 477203172 188947908 965905583 971195669 113557431 596312236 694321661 989349009 187730948 251209716 613830570 161060824 177959512 802838830 62888988 246504388 378952794 624111161 672092852 991244829 17940462 804196584 776138201 699173091 649697612 675979357 856911374 444429861 691400231 950343184 111096496 781633249 697525849 331752695 937949916 431257012 100726481 482276931 531223488 515247267 4532896 428656009 695155613 528062735 600640379 994832174 79512781 543089649 427122657 649227731 702944152 128491604 5244939 164250647 802621276 471821036 824774416 492849028 518330483 954460776 469500181 325119804 204261099 464671860 244595469 313228202 789380388 189331056 561000118 130000186 595302813 349091329 260036226 622063226 831516341 896540335 656690686 561858306 545910563 622062333 815321070 786628028 310570890 719094078 38453271 369652997 579571315 107844428 5680780 644384818 495488587 668334606 724953136 907753731 405271682 382504143 582027592 422315059 730166153 840106801 255950339 273954113 733711334 881291566 320607233 549921291 459820102 651946078 829733151 879462600 603399319 805788774 575012360 717430474 470306264 924418145 319268981 306454148 671683185 168647900 515661992 271033649 932172740 903174681 868366947 918496609 419883374 845575090 140730796 629195561 259445820 497912688 106308917 915300490 978047059 155978345 642300196 953873002 877190915 406583752 209550617 75270781 621805279 489423976 837114597 525943534 315025335 378200139 268006818 197458450 252569484 920347662 165265807 698740928 216415482 145266313 8054432 286242581 956263191 754498938 313077361 112850942 631383330 761365350 609829165 865955653 590049975 359145026 699803520 442109537 994658752 654498803 660229207 174380115 163968318 165817255 393624550 140221539 998725094 790107508 663296031 788206045 15508226 401327487 551528862 346597793 212313849 455268129 217341893 106299578 273164925 278181951 350470954 711929313 27341060 300854448 185990527 654628460 698688255 558270687 459508909 561603656 283828447 385464565 267934477 261381102 985399817 574791143 239786150 276714664 444302646 190790060 345634474 117588667 73844747 806990207 838799602 957431583 994815463 8627176 884303288 754801820 962991859 585156959 470588103 188788980 217307263 425637557 494280361 743701019 15346898 544863404 350965418 873621659 25147437 650937514 678339801 76837865 357110292 807273912 801523294 638316842 119529662 876174756 935572541 259581572 846770991 376607727 780202896 97241262 590790553 912774337 171131952 658352867 745043560 924614300 654742164 495305939 123169499 314731985 405190511 21916008 803200998 392236790 470013701 26822385 399069308 681416366 423999519 359518133 815432648 705981472 80381006 806356607 390647820 867904063 443357874 253691910 234707522 113670328 12677830 380307341 572032057 268143526 956179510 850667016 599668991 284163542 582826183 493309908 949922144 228455744 30455080 133981475 791451673 209787023 125906529 880524389 246110691 137154520 792003944 821065236 547255876 488499381 498917061 901363749 188820896 848557254 325100811 940417578 587537012 460189707 437857090 970980073 765498724 631396920 436082197 558710550 511997673 778184467 616413262 309659035 148973159 801677105 565256543 377686648 364976994 917435658 608911142 688530989 941557113 543784205 755899645 834705189 685977821 875671878 470708251 689575089 843238362 348164557 353796771 524670488 292331654 892276520 616488134 559480487 246762866 579690178 442288720 268879376 814111022 425364457 235693110 740775661 784375530 251431756 193064233 631638172 209364848 372080661 548617139 378764308 58563816 379457629 75718153 737141893 274690474 821064125 319759357 435302049 749061083 56850125 6558520 131948608 522459133 722651023 519205764 74771338 636589605 985208077 330611854 801403804 154907918 786829358 215111428 29266275 819245869 735059461 974976239 431462681 293781202 734941673 798693841 424877740 901245718 305143077 722690064 492628799 86552847 913221535 562224649 347450971 84665066 520956227 753448168 879126579 468158242 373242448 28448114 857203145 544541148 551006540 196377361 420435697 921305186 104300759 439215216 618732211 241124796 31963383 472037114 851641539 241725401 326330550 751065054 155083167 40180992 402227893 749815158 555731918 713179206 552334415 67755922 586262583 696315978 159362213 669388306 136846184 720501871 474574512 726833525 539527357 861824652 784179858 758789633 507169634 480462748 311034800 685749227 227631870 864163989 376499913 653428577 575628254 163889893 692785741 166058097 8264600 14667939 441009133 363106349 75990291 483299498 639972794 804881592 374947846 568647098 519433593 121047548 697650875 606670778 900887978 854649154 867509625 786277376 258518881 605911309 312791136 250280167 506902333 703983013 616403578 893868945 775238021 514343928 291440306 102999252 202663819 289716037 421201119 844542265 136434224 344763243 56733747 402087746 248593120 360188924 54762199 260749306 925568364 342483819 214457386 389869915 607228655 40122543 331275193 499190551 761396487 185961067 872667508 399980760 319936591 91434960 458795907 790928415 656465455 173405496 771905868 260742048 538192860 605994673 367754765 776544076 450526534 183386562 963766055 902298517 418520519 558477956 726157806 527011882 320635248 468587291 809558960 901934297 244156693 386398782 837934133 236803189 9771328 931064653 17168559 119704381 452039328 812063377 758886399 813602465 195435268 34919079 484628057 201993232 342008729 476478327 362698707 532426828 607539106 9127438 462754172 152928563 700143120 908730967 671286961 106029264 84374158 576785498 753027296 220757466 752444509 626846145 631387854 774206120 3146376 849651437 730198284 856287724 770111563 274007990 622123854 262390832 571116451 381199655 981884202 251129700 925302651 334206810 114546027 328007947 882965690 253446619 778724686 367811903 211926682 871832770 771642086 529808526 387537658 658434940 377422095 337570127 236196070 494344277 377283272 167319741 559330070 868229662 358796816 856254078 23180427 400711629 389521663 357668958 8723159 8267373 357739429 9808543 592346747 771690070 683511113 978326455 359627312 564515096 524545090 955677169 934803880 976097043 452549363 493064334 455257413 969273903 331204935 141625660 742466495 619582354 47074252 942320837 771631657 276989130 242751324 303053884 639056075 258664898 563721996 65767571 681194984 986688110 35815996 465330108 798959939 683534199 138654779 741265486 354789623 921507054 533467099 729276282 914640080 122385100 638545689 74318442 849828916 853131792 762984462 986965177 49313170 902475196 23739135 788963958 540693097 409175879 635642183 794505473 205938328 911315784 438304857 690826968 517710187 530655110 661885008 337063461 97606466 103301077 226273618 944997209 92019837 64428603 190719569 608209177 72922891 268780658 963641407 222122 436031909 607595452 955724442 198848103 537299093 676634936 256204500 802903933 219178275 709327772 26370685 532684516 705805447 275729164 148925898 52262215 521123857 287155412 841929726 732043598 642194388 7409466 332454319 313764066 127298534 374548578 854701611 312739719 615841125 796699855 281043124 466648495 840500152 308509274 246237834 294288318 792135335 196955668 915985198 581154025 33010759 617539909 227167359 719869079 986711733 109705562 991268727 677764310 317718881 761158431 647749998 677475931 831286494 80671384 774185598 403623720 402366078 774008872 65713201 603889818 303331673 920807853 276374276 501214146 496778310 465013134 191908961 406811997 91831659 451515315 18261610 252825316 274570173 206077766 60131901 145298459 740396746 223178968 540991479 363277489 105679277 641223772 810348215 333423127 909784391 135089738 180067247 789988442 976032255 277935249 426292213 476940046 220236915 873313756 361202022 681256912 600920807 684061870 452111647 297296410 782743994 405494853 698548704 535429817 422501585 863804018 740142191 777049974 328495929 255274312 435139239 976421065 850650517 409120216 717677888 619632378 684270002 979552817 374008118 532424351 432098940 832305538 798533624 33480379 756033164 911089634 183551708 250942779 661006850 495056599 66710678 401453844 132342534 366685608 563451228 694265612 719405185 963167483 482237230 770564511 686612677 761235183 807224779 686115562 188063996 45283567 658949073 887687850 268129862 477379931 748931195 313382512 446480110 432359660 706073922 5033195 271837119 431519724 101621848 374719063 822269126 615291217 346085304 721919517 188258783 485738246 868793758 94196167 146365094 468730640 339825198 489406484 332031739 528074883 689239327 901933939 224250800 86265218 334118501 113242226 77880816 265715222 349102894 651329841 463319930 669907496 764271865 874782686 807736360 371878836 949716371 214388219 51267491 895507305 833255079 391903980 593213473 309402393 982771096 610281989 368089980 629702631 309871044 500031180 19263319 255113096 217815328 338906634 921804937 84588870 777693098 873457945 638526075 64387715 667901200 231087552 384881219 538730993 80778031 281980311 719049548 734578339 192264165 116271964 667077327 338147293 833773173 895700235 811189042 218282396 150406845 325719673 620279184 926085661 183008691 633297414 301635331 852506285 994396864 830489098 48626957 937016126 684264685 292783523 538602360 162124249 871544727 504616148 197573084 548639332 213770046 566146525 815480548 572506866 40556815 651569362 164349597 713667922 10339983 235603624 252866596 712854237 420359447 536809224 808986801 484758308 792313555 430844863 503508455 998545397 783599351 499856803 637084732 601968289 864788017 509038948 595211956 809979082 900366634 775227420 771254997 47603343 446163845 145571090 76197707 343099450 261415806 394389642 903216875 326332906 736058397 522411471 808137729 894302286 779870655 119292990 838459169 230511654 11223568 204036188 351737894 84201460 767773901 246160671 970457582 856612745 624520862 444161660 731442070 634233965 570096712 785359519 91572970 553451065 198933548 235335816 729766213 127557458 842229742 488517483 883209241 833387963 366669955 661178853 690102687 292081577 267061640 134502174 95887393 874950035 377936547 803916308 268880263 49848971 893344094 713840293 818667860 91981409 34369347 790337181 777812277 27112188 637033744 89094403 617170069 243578994 40835724 95408304 712661409 695614107 228300530 539427741 19624248 509392328 9141032 986795953 84165991 541835019 510515063 890468493 543823732 389608181 382135010 701865304 334284953 634051805 20668576 290158973 61770612 86857021 637469820 394450179 597662467 596287280 74056743 27560141 56993903 700718324 452836251 520365758 317428086 969341246 482493662 925000982 628717852 302885362 823305354 778680351 808481847 856846004 579166504 562961851 295987194 13409072 29064075 969953036 800885895 339031123 742027716 698547155 270992965 412440446 831916788 279189490 260684551 746835812 743996794 339248499 1120545 388554340 144259760 938566592 819426155 448602516 77184688 239853395 821967074 410775435 589272592 522281806 844168122 730353510 886552299 402818814 200783403 649145183 672139065 481987501 830399788 742761653 904483762 432147172 604783813 289474782 620405593 477081547 494805857 230270925 938963626 386108899 759553069 672677572 9381378 624814956 78229415 828174901 274286493 263349475 999418960 17017373 443750521 516931652 437554563 940409484 31165492 847373796 949213787 829003972 585485304 234171961 187058653 112445340 256067155 529547273 198960542 564389129 33318457 441817982 411752268 269982113 103629412 884782140 527446492 707210696 257614250 435317579 777723530 244195532 134329957 666985746 577406000 67557786 881876025 331182500 611203669 628360263 77337725 355996209 810840682 574981106 741262760 606196568 796170896 425853899 715016132 202067096 475977835 363116539 51894784 143614272 795678751 896359350 217476096 689992607 385009397 846533785 414758093 34837711 111417149 409160302 644469680 282916729 705206560 701646316 810907923 320330703 117614524 421956970 429490312 316330121 133695244 94365435 230794874 834317955 280048534 87729110 458103809 39356078 26663177 709008926 979413747 647620819 706597490 237770140 31563451 670241559 501892338 811082143 274824972 544642059 373611625 487218754 482039191 625348235 679075342 979775240 339734186 96434643 866022473 145221963 847025055 497890906 457436995 881046655 273976275 127956284 611869442 23975677 871840390 107023654 946198779 111383316 161383786 461645708 849044849 397908374 664638869 31116853 348509650 406513444 942578504 962660509 72708338 684967867 33425358 541280852 873418442 811446030 578155909 684425267 143529363 119630194 909294317 455929337 336779139 592185177 75653787 485173252 440551587 711746210 425674202 542412304 550099124 260924010 865361323 216822450 762128113 171340875 977119696 81157427 71062697 952114384 577986205 503642123 539107793 74709514 400561362 857254115 293949078 324139165 90940835 260371184 20441597 226134917 526461827 125623332 289864867 434579920 344945632 453848451 125452202 143114285 581332387 625411738 61242056 328584858 716454779 666106994 753425132 273217595 900757453 833206468 943502705 513496364 349212529 796018263 739828302 689838720 624028165 430283209 610522394 591090216 141922640 557157666 704021475 205849399 882029690 641750672 934783055 263284176 993501403 478038867 435143190 271232171 916023228 544795671 148048397 328110918 733006148 607787516 564853574 77286659 939113510 964435480 996294558 588399044 100104119 982909126 153432166 837428901 340797753 1118345 574130319 628143628 18629255 500933210 71215418 461449712 860030292 651507480 544820785 390655142 537046787 980750458 893794311 621992222 788073889 636271515 57981417 676950616 859738822 922278983 268771303 549944044 630943035 206578808 280550795 91120695 408763137 162905143 850812012 63039941 197194878 743555835 445410642 631629806 37513947 508177432 795263216 317661080 387771641 698500850 902356698 183015442 829575627 152426905 791815224 850958669 440809645 821217061 784871950 112268603 443536261 429859149 50498200 858809520 217711020 522346349 637973627 452827905 158355465 808414978 479811803 222086946 236587660 95044138 427044724 62677657 431422344 601795611 103510854 304697576 318389734 774530826 95169933 56680096 150235115 777604976 13149890 179237484 614071290 59805581 647338971 86967641 174536015 164391228 230498314 477896888 926078631 649618941 946965987 364139292 271016566 629099595 121453123 833816292 544277759 577829235 946300129 397098659 669478299 888798821 924187268 567314559 790101651 913593704 146220649 534355248 455780333 739344119 34523738 815134299 661120279 424442095 551275057 186822682 355187307 791818177 116289949 721220784 781583155 387497655 682948787 949807015 11215551 885744530 834307051 356930501 311193175 474603154 403643737 255093943 809988582 97703916 144551385 782543136 242797239 465806691 505133317 671024814 642733707 167679089 823401913 575665439 628541951 416725966 918054035 136178383 793729232 622179271 781690678 71394231 500005062 507899274 921262367 64917124 281048148 610814814 359376453 820706152 306249110 246437220 6858904 760965948 353944084 777759686 227839303 890243603 514072565 591153632 110345668 388478341 937937346 259926871 873647037 634843679 861520832 621359377 721042157 315050345 234147162 57931744 262021453 497814684 805492455 631900666 104476778 780433492 299318581 23415392 959523204 151411290 841673636 434603964 145960282 504458772 162830055 70169822 879921233 724054748 462879568 282652769 423594892 716304690 265980747 735582391 552206742 384950336 296403467 231926278 87665125 163299484 928923663 118073935 865933741 836903430 718679523 572644371 546777570 553048851 441610538 808508377 463782736 415050613 467914681 159689438 182506915 745134346 943125083 613261274 553265016 71381661 979455446 146710872 97836833 558254915 281996260 193175486 32801130 623486193 956483310 629076657 799147340 686706033 275515433 697929193 357725242 66648341 638703724 228123080 960376650 937453329 393837849 507996977 241713136 63553999 421258221 651677775 679289541 129335676 501473260 478790287 865066894 97133012 579633952 681636701 876565222 468979967 149649820 791174830 749104625 438416457 614466548 557050460 259222600 820834453 739623718 609219807 675799962 114271738 57395124 333892543 620961643 637795849 202725252 384666877 594269568 114248211 173709083 785945142 564342557 451497707 932207435 418302416 113491797 931980344 859124919 700085336 920574610 974677590 991836252 190979286 93051607 657238302 527727982 515096321 293190147 334329528 158780203 618509094 862441936 650451348 728368300 720683450 216871855 662824087 369783636 524273875 612802663 785948432 795017115 60004107 981400822 127655981 330332505 859259519 570417879 892136052 639298636 148006235 725336724 331105114 437085180 823113622 875869113 64105706 168468941 485658532 983279485 406402031 624938772 63874324 310789553 313723031 918140228 91465264 473266576 755883160 117057364 370602406 125496558 774267787 75052269 81073018 573600681 8009561 528900465 455772784 703627829 646999581 368152113 495953031 97333977 665431847 485648429 97213806 969230341 15888128 941786268 247895298 501626703 847240560 715106349 304323238 419541545 147498836 18219403 621319602 314312444 538692516 385914370 346921874 768380334 433766529 850547067 680744223 325281696 155984612 167281391 966179247 249164082 932034290 269751006 725319820 337041460 936724609 531390363 255075988 355882773 554656194 828574587 574569066 293015511 663487371 758444024 936770824 925512010 300034913 648406002 587175063 428967621 157356661 676042644 212558681 910129989 390299873 166928323 721651294 932929819 135353392 632734116 870034381 904381127 971646479 500397631 119540617 890066680 86818802 949032974 649047427 631404776 559088487 858188830 81044014 316665065 102781878 368955891 197477523 238884019 123111989 81387176 549070637 425463845 588740368 885486918 934197677 918712707 827277906 144265888 540985891 649584346 1303562 448017826 138452698 93915512 254845598 543600065 773080554 576637575 230080276 122825946 22321779 731145771 531569583 220839394 403540039 497375589 562519525 248489540 498425062 374326108 603762127 678350223 599504949 640600029 410374195 893458618 386487939 993129149 239684663 648071200 992715002 594495356 751215405 125384736 402525362 642682859 131202963 793727167 538747198 74858891 350648338 57449776 286324502 372898060 895420900 644940514 944360439 273766799 737996062 938931963 448416355 262195707 574863196 956005902 74879554 740449013 445591476 356243108 605272965 222893594 777553096 181010339 875005427 16444591 127487134 141754061 297471654 754660783 47537332 930785484 622181684 428765531 96013283 209767244 236279845 679937360 13845123 97632379 991836823 695049513 179856819 196577228 58690306 99872569 224387533 77583447 948694547 126053906 204147705 146700766 958557013 964455629 465473430 41613959 271765059 479060782 210254127 458661701 185460604 303504368 422597663 208876388 195469541 741031496 532517803 229343090 306763554 589550070 998506327 905415112 886175257 157834865 731630927 195276324 320211661 862165527 710244725 633827498 471813009 443027118 740060565 225808051 66088941 687886207 592588117 514743047 877224050 512260543 128421711 268275418 259561374 535767221 153654007 183680640 206051684 267918060 955428139 776951092 17166889 613420140 538586554 33895615 904453106 943592795 149397521 870613174 400368209 603927121 884880501 736581721 542082452 189398148 926269632 138201053 204222681 532382586 795971658 758225498 710858141 195897314 556465982 545880082 516167905 949012253 524336653 184315287 961830979 352096949 66939993 694111056 222076280 543040044 937513654 455299756 800451602 7612015 688590265 871825041 252890909 430560346 508136899 407541565 18339937 276254689 598991116 947326294 804788360 693968245 800379921 107022518 778058205 543617008 860899132 63703940 691405841 900283343 357130598 678282904 722414243 436527744 443083465 198020122 373440402 813116323 651596757 300432050 713841995 354513266 251644713 152735001 73905319 141607195 794524813 195162978 873867380 144851257 805588336 875313335 615810631 791300238 406756308 469063244 858883326 71963458 556535741 472216431 197792415 115388157 561539470 265270653 439303522 496396338 523386179 309856943 818485517 789487037 650224466 342133133 546732852 73186423 197679781 239268602 200998753 539868417 982009025 176031969 145084589 148547618 688903696 58804757 151353409 674212034 49456056 532337577 245739757 342246229 149155831 447063816 497840341 83699175 175247655 937844848 134712959 745469036 59503915 31660949 794489066 74055406 112430710 390032845 454915042 480844797 473164011 333344750 220029079 815974928 70913415 661326968 616875395 380315364 77423876 417811805 919721605 613486275 54010492 474076409 934340413 436676026 390736368 215360221 102087484 758130993 422519792 286525406 628035366 702804799 285264515 717764224 684685045 55389318 783621649 843864373 229036623 37715707 468135845 785270895 976785431 274610243 8983971 657449654 850578237 35992601 740061831 480122835 680992097 583719622 172398955 573351208 543628558 944502676 227482322 82294884 964836129 34359515 754901342 991538099 669097985 108848885 110873245 986045910 521618805 623541792 577735284 588909515 330280162 564345981 627309069 279777151 523062483 777295910 532022040 346709817 46798500 499390272 807329762 725416314 865276331 895231729 443643403 145255988 581316504 917143263 932941512 45366524 876177695 422291279 826640314 847603533 808687961 282460265 715364190 149187952 886761323 161778470 645201892 703201609 167104242 482090920 63517717 36183539 386806047 395928302 708951631 152527845 514074122 567087270 665421227 8113974 797106926 954247963 674908735 704184858 709259904 984370794 306003957 978704416 136618448 665043119 750137346 306677564 786663897 36417112 130345633 362889450 826437718 222430207 166629726 450998338 280715106 443958797 789136470 255243564 640739405 575437617 438733663 588637267 58719148 354337269 426424673 871474173 382537911 485343725 713594030 142792378 98357207 444220435 133875825 944007716 499248491 581171336 446624848 383806557 777606325 169071457 778840005 938084401 26035832 196655766 495232491 168196295 714352784 862837792 350059750 614659421 547244375 476221267 205937990 304943301 338278028 751697743 361070842 840397551 511912836 979165979 249304353 253968625 553465044 631844208 498444464 593169571 678235044 356070860 227143597 591466354 195711306 113005377 292811738 410776466 63786650 484666453 298832183 56461458 342510167 623487008 406028672 124591553 441152387 251397461 163932882 509151466 451525115 337323244 879565354 179715724 968344859 237318361 467552093 966199739 578470091 299016960 862075312 793542538 318771417 419102495 539896768 238777227 628767250 12190221 608332892 724028435 620524803 259333541 183675281 789136390 552290901 421358112 493127669 846946106 827349609 8360700 524009619 59645264 980351375 415777352 379901923 251724929 726766287 928281885 508085470 637313506 818520618 530154458 585034865 372873709 192261017 861969942 704380463 94443445 85703943 300517300 908857577 777266562 180459924 620923982 768855544 532800420 449423205 533765538 660344121 647207709 99529554 174135356 453065679 18431340 403777283 197171592 554235395 720049574 32736702 188158005 84333139 774455533 508989734 262984590 84794841 468557137 952936414 394414883 710512828 374132412 901787687 659677905 83774977 435188156 238894676 633938616 45452773 251574901 557301099 387484230 894835110 379586902 13470613 845486171 86179148 501646885 129547971 200375529 88444086 484899426 477999 116496311 718324230 484373811 454159854 15202087 712349957 881756191 655404307 713935384 826576497 877877637 862743815 408322829 369235298 628867486 397088425 315161353 613894205 533986501 23815293 116050429 244085006 374870530 955152077 561474975 326547039 535055066 475285615 369411221 378777001 509272508 677771656 324077694 274219632 203771573 298207579 801684492 412740081 445273347 910368106 19403812 46365602 156930535 764841765 20926768 502216355 199822781 569153832 234946525 74117498 750715268 212358108 62659660 267908676 31679790 324822616 466268030 496737789 90310403 503217781 759703069 610237923 295466667 158456866 783344878 524334067 887353801 147013745 404188977 805013950 387325907 967093109 585810089 605848308 969305234 962833556 325400846 412819063 888640311 500817642 328818272 129359965 634051823 665312951 463683999 759949578 176474984 860938227 555509828 569868770 759006517 737869979 797740809 766456095 914302806 842118788 153363817 449266814 478865490 741278540 716568345 860673784 507825964 149816763 504234305 821156 817326921 836001328 885447398 493819963 458303412 475294566 599320605 569651469 450889572 88244442 297003136 412108588 691046498 510487552 786902667 77957113 465299888 715026121 992752434 637868589 732201593 958890500 853224884 2929985 115754080 833930301 665129018 281626836 211602811 11006150 612677307 442955719 574559832 484124904 936465095 653873325 287819700 792175081 337647618 512596254 741747012 20270161 21962662 653947193 902031511 14557743 772130548 546110735 381685463 822316644 666984267 682116310 175993165 746487769 678697898 899681597 831744445 913239254 842998306 512408149 995763679 100452525 790409704 337237622 745796083 331525215 536481398 570677425 1893827 126815947 960388247 245113853 311567112 810652705 448454353 832178650 523889856 258265284 407276026 231024017 638683113 901767963 834697994 764814795 157635097 227276961 943986431 180229661 810824942 11956739 614616841 606590845 65959846 922813363 903802227 338423506 325188502 224480488 519408451 225950363 918108933 273356896 75211962 955848824 26108969 24322055 151662970 609014670 592739402 763094936 425395207 692678051 365999681 716493328 79705448 608357900 17271829 200140272 977829876 257880615 288551970 867888361 679191023 214682971 358816369 685614601 884780338 245633693 439736447 694870378 600434884 887290036 468047940 87329317 135125539 291250560 491654244 411563445 216026776 234295121 11048630 350174227 224714590 353421743 792359119 367920357 761655115 798652369 646758922 689671224 771519098 961754694 814091710 698911294 897721008 874297388 59235745 219464781 780130489 676364339 560481183 87120007 493331106 73037772 80263366 88594344 637098272 728828366 281714420 300704670 223248588 553438850 228109693 416838795 844832524 690790577 174801134 564301586 661495142 292791310 262530759 845972151 911625537 3138785 145572588 393468468 311173138 419659821 580762164 428581335 458241662 415263941 184183300 314227613 37077190 540009895 181851085 319648824 745480206 98743024 474623498 174868904 90093577 309627731 86355085 810912204 720206532 178357152 330530983 14092070 737855412 67366924 937992911 417595670 546667396 591034147 382163936 544843458 896188778 773317579 493350125 623818302 330959781 696492349 926948353 204313353 63778774 854316975 96806577 177214354 183916767 449126673 322541456 143618759 689353743 1040171 863665673 635889309 149577432 927720450 536801345 398139507 805101841 309808437 819514100 354650810 676248935 787061211 724471886 390961218 506823330 635514140 27138417 614571442 362467098 446491398 699674776 392957459 796100669 786530230 665219765 711933414 221380882 875683953 402963377 181971493 156207345 154070902 851708478 152142580 204292037 730606530 68709290 581292180 386807640 621888144 522548397 629885999 2588125 902720287 732746363 54632753 478696220 787558418 735233829 260183711 749475942 971687142 531620272 179071969 792337084 261161900 990287099 486823104 869154298 261961814 226911498 770456775 264528681 483338313 924904689 726695281 261058190 821668238 759989980 487534857 173681840 745912905 934094033 588369181 910972571 106600986 435470899 972984718 933761748 553011264 355622645 579044172 811301935 702070232 701109833 965951690 256780488 699420248 559973758 234704640 270847272 839818277 257706189 604301902 729666061 728332729 189331854 96892390 724135537 210511560 231126924 515371283 765634440 506521166 877069129 931176250 533384273 187565094 951226927 689626544 784243702 292144444 229275671 261155682 265420789 567980630 851367799 219774618 850782426 941738732 782289074 545310866 226580959 542492254 451727995 33564948 777478510 57917900 573500378 237957120 605639896 651716597 741253993 425716180 384013164 598409991 508323987 385348438 342914319 110343915 391443903 342861584 867759317 205335734 621688426 390968215 263188428 628378945 423589287 535803685 823051559 353853355 797063231 936943967 464568325 589437111 372847624 115521779 352742299 839070301 220364812 231271386 449464412 977843829 172303494 113526851 693562225 512695339 124404188 822513433 124389335 905699381 649861549 623050132 513287310 189549780 56907627 595968334 155304671 765427345 371877579 369657626 749018728 157595542 764132640 305328589 897808095 500860096 608768940 774545154 631455919 663763065 406219492 230992746 374625044 273951822 309786466 918390102 445342591 467183354 858985465 589714965 59966685 52531976 98263752 908185804 317614324 979186006 69013914 687347439 96811117 178061002 799460769 467294856 145614603 410328644 335178880 636492813 407719457 213770818 158368082 497537343 50005838 990508271 11760614 974419511 810869445 671176703 152160040 528094140 627051509 712368421 525498042 394261604 601273941 448678685 424652416 367114227 214861378 907439110 557212887 354562809 116045547 880765068 533150253 590906716 207542310 421105029 870382313 798379536 142653765 849263580 944569613 32395100 682263849 725906001 899694519 930249373 845260003 478507082 321119872 451082652 352939852 446291439 592594186 790221385 686991771 221475398 821043655 538005658 366836283 708743087 558783122 414357186 282235667 862748018 968029116 257728606 622726154 637332458 632980599 619867876 914539030 3125010 53077624 135667730 612887751 736716615 899034700 336094742 141375404 811374148 917853971 449297993 751147676 323935938 875545589 92710080 583931709 365995588 964354694 241654891 635955380 589910246 606767741 917604828 877818055 815480625 854628683 428734176 633672179 606366728 939522296 813091935 217277466 496415526 424862015 515538731 158777770 289315726 773955650 969371402 596403571 244229175 649983367 477418269 283332034 369198191 280293307 371146684 312588030 385917161 722124193 870877573 284904189 394265116 99276929 788551600 619465430 99567545 557331588 469634818 860635359 666351973 171943451 768236148 224865732 663588267 565460099 320696197 958964316 358361033 776195693 170609265 330740975 793471832 737539341 257014151 389584481 701518096 801882080 550097149 966094662 868264475 957873129 949135719 279206975 990363635 322896378 109725183 81707350 689812274 283530469 436038910 353293501 861891630 574167201 477964500 539926006 908410365 946010593 365117257 343404651 522001632 786544107 624440462 693647623 410012185 560497498 820541518 641231205 557989430 930656236 967841236 397613331 594701504 641351518 683262436 10689043 182242405 606116082 355567630 934591291 857469852 844946803 225100337 391695403 503814199 997182276 194368830 508682706 146078732 300615494 709413297 945107884 652533918 354857649 32466536 374550372 48974265 901325891 499376226 469703767 245269988 499448309 700131190 828514844 638781530 294173216 847896748 306966214 471501730 442742493 287454143 530931096 19338188 592620355 724724456 986446942 394091485 986580738 800951127 934676188 952077777 227827380 420780258 148988263 467754825 954523393 956441178 960398722 389826058 210266829 526693712 615406692 566302306 251121716 499580572 822377785 613936992 108656684 734640407 726504985 904112483 435306991 924089891 538590280 704347365 756982490 206977443 916323906 563707201 977556284 200864212 114726943 65676623 19076090 663473540 804517011 586668910 461681589 567705480 999993565 30311889 964320080 750284265 116853337 770912433 121939982 993646773 691904283 819811439 530637350 656740104 177108366 663012789 744798406 260434230 620084939 497392526 255422339 604630683 352327084 686767397 209064009 599371024 885828002 85102888 113625830 47345990 953026157 801314045 853250995 38864426 100757760 129063596 255954794 260132077 31046909 542579677 202958493 780810040 397864168 285642915 953614061 868467885 215163699 473485178 911731253 770774133 659491756 33873356 138710949 299095351 382824855 379933252 666935302 321001737 528151378 115504154 964354620 506046675 271188082 679879809 150467572 277575116 679630572 78692083 918020050 417459851 536469955 375578416 294903804 476445520 456345235 866321393 837388647 29368326 212943822 453270308 453558980 547005346 294405954 517627346 981775556 830032864 221792118 720320153 594913216 762254733 385948707 192721290 851205179 334186545 976663446 90003254 360844129 386608166 506205143 356471458 719713465 367239559 960406108 896383556 929089315 646658765 120268043 655370284 141701466 972159122 966596012 696666408 76972953 236678164 631518482 312411865 636832276 20007102 182949194 138113893 946998960 915690179 805862288 277727681 355439665 912176513 251853984 696748482 93626705 215238240 787582064 998276317 473264128 660958058 220837539 748092524 174385243 450604575 660316924 715825633 707021554 443531955 84519005 154296007 317624939 334954905 558519917 293732400 753809390 992417162 551651460 495370077 101981873 45816864 459371112 707120568 823946455 560107565 917271899 26227006 500825901 913524998 820728203 385879777 914066867 259352190 389483382 297913425 262048842 193683111 97923740 652941513 595126707 903885931 406563767 627037331 398766595 486299384 869988453 910710937 846609316 247118361 100109525 637034241 516164893 380426450 721673239 183337598 234708955 152568491 978347251 305647908 695005327 494671737 193626493 753688196 808884264 394472980 23278497 573195944 872319412 482991026 309719984 255319079 74851904 462366459 714154678 337479175 576480757 760629263 719618959 384282110 97744245 684671105 651058111 863580573 940770821 937920955 424960067 982139941 658208043 236821051 259656002 708059547 842959381 257266530 870118173 140804812 700747639 697803563 797813488 838561699 887951782 253464822 281199142 120482120 774424008 257106607 939694134 703438265 889809385 491416743 356290864 938225071 916092596 9202012 946446978 64991053 732240717 926928654 274620314 271924322 925167307 352350165 619896156 333795965 129843625 232296666 505844130 1799190 761054973 254216760 378865602 444338279 806594801 451852387 21021717 925970485 578782488 852148412 430912609 840129800 362639585 565819960 635023630 506231512 753517584 188009658 833984242 625865359 164850385 30058431 649149393 158557712 142066788 764024288 681606531 811538568 391068492 202102131 885882626 607410417 685507698 494114257 796312478 443678148 828617711 969607855 283056575 32407788 545531460 307162718 14729155 123810526 53494093 562013968 608473007 412322262 946808502 782970270 466901822 412785418 97207501 310909957 688975702 148996046 174224776 22844184 409577024 380051879 101042577 266573484 789426021 652534383 38793715 167648811 694726844 475313745 135301062 930425963 498140651 550872291 979256772 537626628 756635149 723630657 93748808 602309143 493060943 674165208 961624267 992511130 572590617 674398435 573930294 841783014 281434663 798012287 57202978 389776535 554039092 133055268 839986944 637337210 486249484 544955889 407452757 705956244 382412558 721277174 164506348 505698154 848779446 886646715 709288198 875505419 470249028 638460452 207009932 401134888 31507236 435250591 756824080 657172063 40645820 839208673 290325044 584292411 812673386 362003903 202748631 351911974 858387238 996424486 582121169 479487611 31942688 234277843 863776609 503080314 450381643 50141264 848296308 571034717 923893469 791020344 614681313 630504025 943983697 610425777 684392940 43059989 975017674 433043452 228169538 85257435 712110010 892639203 318457223 383583492 696388184 964446141 526835598 143519562 428651572 249460813 130766040 67345849 425060247 263693914 984266068 853086188 544842437 37765972 505999299 938852515 75851048 89173936 726863740 908013546 251470258 86530825 876416857 420645431 653560162 277499560 101990608 978670143 426754752 313557004 857157439 471037454 44011170 747711440 722384053 240759766 331717016 49592201 4858762 792826717 740966288 777861991 58795770 193594875 544728453 553358666 114829225 166203714 981254418 652183827 305355410 180227808 416141226 167157756 104120145 986121848 637824445 250295986 146429104 927537667 407679023 649769252 526348777 879681888 281685215 813034861 526866893 25512238 437015149 773071199 77544737 937639917 348225941 873148722 370833012 191757665 734481488 938235735 901916753 770257169 151213944 190626675 843574939 431119503 45058429 231530865 935400772 778004263 492682634 639761624 770276437 311885726 445653246 460324536 317820982 173790504 86741113 623810639 807324410 81309437 689530189 318359778 771099121 168527384 15199132 229942549 5837188 18793245 682809903 531074611 872157292 525804616 181913538 877126477 692572177 367319791 475982400 374009116 935474610 192635967 42436611 382793993 730044276 209942466 898903622 531801714 334073122 643266873 285551150 423449921 118787393 811152221 383952483 544480213 557860150 653185782 332106621 370461916 624877800 382110790 395766988 112237578 64563681 620031052 740716960 778439098 330322534 886904739 148209617 426380781 918860861 71935431 447242511 479763834 783719602 696067914 350249689 51549457 735831182 791504422 669839985 430430198 578027026 175490238 306017909 11561165 838550700 317206620 661795322 556347672 322401397 858287270 5108587 376799472 852658831 339486344 368682347 130507144 355659346 747124038 495674345 123172676 383149434 305519620 457514322 319792483 308967333 533388227 504412336 663070235 570842964 940098350 62349531 829930776 30060603 660979338 280576844 440519939 409312284 432736778 240342173 306860361 405671610 914871637 996684663 990631141 159272128 988075986 296554940 953659224 310680072 744682667 849619212 858756453 716614610 921522897 787259711 667959294 214450595 671022500 867050241 253565167 485355617 594194370 752753299 733694609 761099916 977994356 835243552 49611841 54574688 377160287 727416813 111391009 421621399 520978782 457207030 908787593 658112359 741913218 365837938 133815467 452793628 902721012 869664739 425221342 815586597 972874600 91152629 173230029 797645845 347080621 813125064 681156851 572997323 112772964 941587481 725492003 660411749 157175244 784376835 620612728 816872549 932541687 409684884 174072598 758670578 297773066 625367110 921714141 559635384 77993606 633872276 232794285 312865440 786719626 935854621 881094159 837172691 690806038 316275138 744141207 461220485 817188320 751815879 701840429 721856973 252380389 845718539 16732543 319050650 914931387 847508194 140504656 278120652 892520555 502964936 845843947 319510730 85417977 271219730 755046254 739698850 194918928 439515897 778388738 834903336 620942396 92786811 228767121 465526870 582854159 778077933 314163147 489291154 199658121 339901856 655342133 37468753 688956243 560785279 973244669 384549918 158734631 208192966 296565782 870915979 572408757 112142775 945205707 524894880 850626085 651312219 884963086 436478905 643334734 149600530 391973395 236291615 967498279 840128049 554672424 287756376 116211022 583669924 840570542 642310213 162596658 225767634 621052347 1743419 712725174 145300774 667975877 816011229 788846364 433971223 283250532 842205952 756255441 816542784 327143644 418095517 225340420 948448896 682570277 316132407 208833181 2904154 218983836 294498477 356501353 925387353 36138558 583836007 389100564 340137385 72186873 482610666 33659409 272655803 473248529 796355759 475343524 112201 150318625 578143929 304190402 694341357 395077128 96068441 168854643 304611200 228254422 384059815 263156643 839203936 23438619 694772813 690426109 119490074 925210180 395681363 572854996 146299566 652496374 286301011 503884137 534737065 376249153 659600352 39563086 970552352 76493560 62268225 460297230 482114824 216332909 864186609 549118458 831709039 23950259 30831871 827993260 71504287 932503192 778417986 54085198 746984442 971053375 210554334 632441762 746451416 882943566 237293090 643906751 894897317 125682364 148232577 557202565 99625463 668630357 199581404 509056130 405828088 669394396 77486927 925171176 475679964 626507346 75094910 202613909 975382878 402880496 98503055 831914836 286295833 614952809 556344259 865821587 410709511 976919164 10391861 359904474 596225673 360016045 971549184 979118364 552780434 341658216 141939929 797417358 136663367 27165406 698005712 462370912 162218852 955550695 277128811 727502324 630863268 356497753 330706454 865048139 715273500 892594951 75109807 27833586 47874198 227332982 929058046 129212562 450382566 907471520 956262705 496275326 671204476 718023517 524913703 943052583 357613875 309182686 718926213 328331855 412670480 140867724 438372041 84586213 792710603 289777015 774913450 422138005 292615946 580123325 981608488 517936392 831786453 794416201 628544727 315488758 806087836 175726332 816226429 850819341 585216640 425585780 400656061 44653144 658148948 364924310 161450334 245230247 400803108 244271473 785691966 924695837 950167750 416647847 681975451 837754895 707199988 644340194 475431752 914609116 705565487 96373170 716509625 656949508 587546972 878018080 331404602 699618393 360053867 130610707 706412065 366639751 727181741 848367786 7103643 789559576 531201148 658424560 920024622 127669999 963060082 177102503 824347871 649924892 785645270 586050595 40851204 191118686 494876822 520335446 895262125 184215022 857520031 732650068 591767943 567912814 755513438 243010282 554616557 729857936 743022410 680148315 585119757 837130448 877912610 13297289 486128505 618535318 19435337 817607739 192552840 828663943 101983678 412816510 136879303 256892422 702052989 52549986 245472757 537039970 286694204 319695167 387253679 541139346 805926835 126935448 577183120 296407055 357728935 471816394 684403698 533273348 250527894 604627639 315724674 564276556 543137333 414351987 758117850 396658922 50795809 396923958 138041621 898030499 173499870 597489344 970074214 669599925 922377876 897289940 669789198 470407910 393151389 617929448 205706550 647049198 286728678 235207610 988186476 9625088 661605079 369342369 372688628 839412040 335251325 84616874 485955103 852086979 824641340 739707971 719116867 84233094 444941403 345102527 889115192 716701424 209953722 734185194 513495505 867767780 130026688 479562891 548341514 325998616 189173280 35136759 642711443 654023226 530114764 658675713 196844279 76810164 598479244 575725321 639712515 882378540 472885934 84620469 442871259 435255346 821135077 437347438 869473566 626053821 984909896 791532436 681948876 268648458 581390506 599404125 888356274 288561407 208638114 446328420 85864451 225691218 72787431 148341752 61513555 807388932 490559314 927570983 196839115 151306551 192892549 679020574 608902772 264232729 760151770 47539823 215541981 757154573 903264169 893647841 406932404 340075819 947039902 581208185 652132381 704406810 929362863 400213968 460889778 185717113 126365950 294343254 303784323 618211505 152743956 326387980 456991444 716101160 893726155 523860710 705504077 652190774 378206800 63056654 153134119 852936148 372378683 274697421 774541128 938351228 201592153 176990611 464612534 335176443 187633700 120427126 390071840 137467381 291564979 245679543 396536877 656705407 805009688 644344737 166201140 118453110 624327675 876833794 607616564 624244379 441191579 53067880 328433740 109683253 268133133 883469551 630541731 734024218 547521018 237333877 25603429 626260016 189742476 691658568 975388718 871792427 889178826 812209190 803927908 223865208 915471855 602972005 376891217 60863109 98665076 498384966 299555301 509931261 483757799 868437090 705864855 770627337 525006780 936423445 96947569 265854075 395930061 14828850 998351735 290970637 15819038 269977016 45615284 282907858 393157717 928374503 930904061 211251499 522092765 836862001 194037996 918584127 372958800 148336614 935515488 611868839 492206609 274709427 94137083 936259346 766313301 21564127 190713727 493862399 2558982 207838079 773418355 512798520 651751044 255083130 252661987 109280345 372321374 315221849 110263366 490974134 208483504 468993644 553478925 264542622 807679301 17270496 766879460 541985500 621561160 424669968 361875127 383313371 647477957 57597788 774111675 8205869 392124424 509621797 23028600 198600185 12730515 923257092 407911342 636612633 337991050 174155080 110492891 660252076 586501487 175132247 724248100 737176320 509677135 337266015 172397174 528238967 698241805 354617575 547820780 389073064 154149582 590450072 50064103 400221600 127394305 764720931 947742299 828594673 820156722 52321700 653967447 770759039 706370918 451784504 295059850 320444674 892851444 707272842 41443923 896083429 179321104 121125186 651782553 320757442 795437117 8310237 66297383 490355597 678414117 690429282 866253363 977531971 967046702 548376813 815108452 815105260 970292259 899117046 801790638 182240697 848035169 452386417 89348841 919962463 456041990 345409758 234411538 201583393 914858742 527028792 934108338 135085179 762443513 147315060 935480438 180120981 373621652 181290184 873512880 205078023 400519851 209748112 319503693 593777655 397523326 162794573 63679452 36224521 585669360 117758895 342351523 586447665 389099966 259523040 802361887 726916763 584680921 825399884 549052908 961377472 643874303 191496286 162811050 248005172 761335370 462377533 656043479 971711851 695755865 690376456 21958173 534792133 537864284 342094542 926407872 128041264 235926437 369955741 474728669 606321807 849035241 720428867 620932157 938512191 409636438 969195225 282979873 714433884 992727690 693560283 724534622 813784893 827890666 487143076 907500286 181548559 559033369 450364866 340023727 744663640 924830405 32481303 756807791 612135907 784707590 164613885 227144119 410024270 917037065 791863079 172399089 899734928 622634763 660344118 911259048 384479187 123506583 317224110 507927587 348029608 981379093 955268793 6460855 571404985 37389422 541500970 797620446 563525518 526263591 823251210 228414087 364474870 520244071 466214284 939395362 329469162 640566668 554847014 770448705 205270163 153386044 433489943 342598824 856657762 110051823 188735154 878978088 495188990 651792823 618807404 570421790 184075115 958738714 926887525 805591148 737246333 665437421 796198569 559581675 596045150 712986381 670626345 761355514 652034068 650744856 108954475 653863657 642809395 938079467 939405533 866370098 91876310 494327585 751420601 392272048 16033375 142498510 703956746 44551024 120989058 79184734 534083088 987339406 78325811 616177606 211187792 912888688 763907941 666182072 626061937 275930570 801157007 200110077 932671759 908551593 230437896 482355587 973778444 449669899 886101470 480158172 342062294 854912196 180654967 788290920 563377126 936865956 570249404 938790905 763989639 150419028 521732317 391449618 790528502 877739889 840332100 837549782 627606084 20808831 225456120 765427486 250660910 514111698 227818916 509373649 81866013 272666372 509631312 893784757 769849818 51906372 334409163 92047630 576115836 530501166 513914962 896113263 529343869 446472830 62263405 290906268 161424804 957108177 74174599 652146197 914573035 584492932 40304431 532195945 426883990 731479492 52332250 554551075 798513548 531607258 339200924 593935320 657241735 843081704 41371048 532125977 861650841 32880098 816288980 167366989 221252769 820871592 446211716 892951734 399178735 134520575 28878908 843857610 903940828 539114705 430073624 631536882 441555849 392081880 338405765 250193227 590655359 917082807 672813747 421124619 151269815 369995099 557058106 852680618 846122564 34856329 225534173 278313630 915241778 208589441 779861429 329457281 200137609 777919311 588129687 141610040 628442165 48204450 695808322 617089859 846755795 69560134 502148241 106647512 562703519 537262392 372380805 774309311 913537850 335189134 246967597 325573479 539918377 247775102 747338393 565457184 597178715 841087806 512108322 40446098 504988456 778479409 299646898 744594945 868006623 682188879 562842076 664395255 891177687 909981858 387002910 968535591 215152842 493374740 216580096 991800503 151491721 769649534 169902448 944141453 890271631 517208896 371550924 915797489 167120516 214429617 171167240 429604968 830204865 489294825 544955027 867289500 838851242 84046151 620342852 32329363 768417793 534723282 336211620 817994881 414685064 136885379 718077358 478796160 10102931 590648140 569129977 40303255 893969133 652296475 865369758 598311975 81795787 731831013 604764179 636026390 344129952 668051679 639598137 248162166 129860396 177533071 381717700 418833823 824069338 389560833 264684096 510567880 333569897 450647844 906889748 544407930 142189107 985361334 640195295 44796292 472557733 247473352 861109027 922369964 590598494 926485377 908763999 906909974 573583299 380363501 39103850 35771735 112479411 387010884 785334280 775483994 61724488 292625313 676615070 825617878 178819737 748144852 693778561 341205684 47376829 140291747 833933879 854488792 972540872 265461897 176882892 21445970 577533877 689029718 643397261 614086355 911423902 860397909 377438451 518796989 427250886 434311572 813216047 109842204 280889965 350777592 328395717 367087150 877034579 336192693 40506784 984840203 393308061 253969538 935972451 61956781 191597042 702184782 851656391 18262411 874069762 651989184 811897090 755532944 626967667 206149206 336526378 830013393 388009568 364293758 780901656 855567064 230688259 234634307 391384388 430984913 542514058 883693904 287517454 479275116 367176196 200677110 44010566 197945073 818891983 428484493 693874931 129240851 27108538 388293654 307099786 974888654 743154864 49134543 280808118 546231565 740970215 405929273 529426752 237500751 886187747 311904964 977284152 536383859 246605444 344334417 52018812 623109297 101288774 538359013 944211073 323158384 81393986 337158315 859903011 694968802 478066475 29267844 775185892 558122645 123538573 357751898 316948935 826061862 394114116 281252172 935048710 982463804 70933726 265502254 810887990 448824063 857869779 406758857 277117287 746810851 586566599 864111568 159502338 946060115 209269906 370063862 214277382 40336801 598830150 121801226 895809945 383029823 257964157 224532116 211136952 417756364 174270669 962804330 424344612 210440892 852072215 859951241 176553675 964717709 737128330 490022327 583953767 341135071 546682069 55452883 464516386 879631 987283939 397803009 340672489 771709614 402629162 437912384 380098161 813228564 352826377 542543858 612212399 206677181 253649195 331523203 389335351 132373576 762343300 454461904 174923978 170930536 179067465 306534091 823203417 233798654 883000060 681994697 941132350 200088510 573047072 567609501 643644095 941368547 115007624 645930581 403001795 581059310 780350412 90686310 612465638 558116798 706210980 335530744 73585887 580314215 39883762 158103808 813824692 327139056 87660874 222274535 110241070 976288652 745442807 430394371 999524990 268924023 556895204 730474762 575462162 119992207 735561591 731870492 979111841 861560606 203700759 379799588 257363615 216473425 472828057 856503671 297200574 649653222 268013193 380957083 383711581 881100953 81797503 920670766 585286616 222308887 782242813 565644725 579557971 270690586 738586043 946811923 15095491 137390530 225299473 163516500 485954622 213081000 819040159 417624725 477137608 889081635 937763130 893903481 500751602 87571711 15236330 674817706 747697597 637872524 818824186 198456029 230741789 85780317 286399853 314626420 468819060 560837577 938004830 322289477 677214666 891433591 113725961 290983371 490029001 124493047 244028179 645407905 974224338 204046910 738695594 257089182 934858437 46615576 53950455 355656653 155882443 722223797 436932727 424279145 816470986 953718008 740635755 774749267 91944076 953799037 188344203 272804313 693488368 900333194 732637691 135442908 211439602 907555160 800617592 448139022 636569717 183745997 705299897 461365655 846507877 229142508 407644846 394286271 148220352 562614917 903978686 246644829 473775071 991689352 422411951 543617929 986958146 949432809 5946827 998115758 540454477 771153538 601048150 783964462 424519078 484543850 331254608 465933707 875862916 612725523 887438676 428081916 801865270 306184437 688317677 927133972 829740328 334792540 555553284 973677837 807980719 338947074 302388552 689343042 986828632 251638179 565791105 942417611 30820636 845395143 815339654 432943563 540180399 178406193 587284134 395566290 876574494 429309946 722625541 289779375 862923189 783348600 853725487 387158299 634120271 82434061 497146098 879358110 110914642 203766985 757304396 399274139 673096957 513684215 577418633 496588862 240655954 615393310 237719820 487105627 928663542 167977644 489892524 554473701 601092173 531929835 517091007 842819957 295518095 329985097 961242299 60686371 318782756 399260033 619950635 462404942 959487227 346723062 784799850 988730894 174878755 754964514 817759216 854339565 211447134 994145152 257476174 820257574 917444618 533831027 310978205 691552334 336723901 460219078 830767004 70796119 692585256 28967220 695814423 420465453 826125695 669168309 806968270 253575863 568563310 155367545 201628628 760974352 246342096 32444427 408972098 998290585 717041924 109689000 75651527 958710760 840887196 199460044 7356894 815856805 898471129 342600861 508613787 182746876 177900633 11351355 48136580 383217285 498851674 614567510 136145285 789174925 653528162 168652679 903297700 280613230 928792171 454734632 965449298 858408129 943773606 310476219 196478327 362608724 422245655 19516746 963756223 931646433 309588851 689944564 631365975 867597514 973270258 526581758 486001494 654195867 136932305 371021826 232901885 246546014 677830281 249897857 255887403 408501654 880358729 87141117 941858050 52757446 167922951 366519599 458932844 355585201 372716994 910543973 301505780 836790870 453837726 154720081 569706455 99684994 640605169 714404768 27921288 53437384 877047163 55491342 351775505 427383381 990342952 309235045 967527516 147761897 868959091 461748002 915019184 16706083 130956610 43575742 264888532 381265986 130942499 675579144 207945727 520619863 806462226 851941040 128855997 585191132 703308962 46467474 935357936 830403333 834382195 125850297 727108004 441714349 928781981 926457567 368076206 551554628 553497197 168695951 527018724 349081697 960727157 100239461 782799261 335244060 334368549 720886295 675439709 390717535 314410778 689260229 356064616 459553212 332044743 370166269 921138985 155658141 886211298 308121523 863245030 65895303 438545497 806790605 217246404 560278735 975798418 924383071 255087067 322081554 941677144 892445718 929154614 42413419 481663066 707366164 25338614 901188357 202870684 581626265 380053345 798352762 323119692 549094339 340833358 239808287 409758281 940832359 168579216 732198973 797465998 959864229 665929643 275007543 12290163 497178510 570776243 898587644 113755091 439080437 154606378 754256074 984465682 4183665 783549090 865362155 849029585 674125838 646696858 391735496 372672250 610377734 968727986 588836711 72893174 647042452 846363634 585079300 630151353 421149787 934237744 116657835 340703991 814092366 242850405 786088298 180859569 961096760 448165714 684698614 186850247 104601761 914551267 848767033 509596089 75878454 554279770 743559199 324080990 764549696 218395046 288850641 749349904 139672752 866848264 94392637 357973412 3547391 975298341 261324407 343194376 137565159 94174494 178725181 593479346 35678710 820306093 595128106 605481435 314671517 561317772 410589146 169119096 66844302 181189988 643081313 856635895 944491500 193664667 684353718 338420618 775286568 820646460 921303065 941987379 179415176 467608979 640007542 111486087 323647032 984265872 171542975 63952953 112164710 566465193 590631918 410966887 975233597 866492052 247718731 407872075 686270442 789087288 191858386 614198077 521644271 456515654 906212399 225598492 985494201 458132025 666810649 809063937 203098903 76238138 888639415 236466819 215696582 190091010 586522378 914447187 219386110 995391519 633666371 132766357 991969927 316364157 549576118 579907232 189949649 411215924 853574697 343306143 578049340 635004483 608543749 478324757 279932526 853809927 327812536 143562441 397833141 564440888 875191727 929104980 250854592 589979341 299065405 328893409 321276700 506755240 37634356 897466431 539125474 646142866 919518403 809847617 694897292 401473813 768847345 478574013 707678452 648115545 713497667 577010904 744484933 765757765 664526778 703280636 75612838 292893188 619648557 810460371 167468717 914428911 88350100 307302854 357512607 183549696 320818667 14426855 285926886 213931868 277866191 42213415 382449496 179300846 284007518 180787510 330787555 983033700 550425471 119517216 953752525 621603927 222949370 435118613 214496802 188795306 908388275 375182731 240747167 906541253 708082577 946568206 667970124 826866114 555795308 131872719 875764227 435423788 663701334 285990315 500353738 376769553 756729224 777136147 978297009 699220387 280784241 700908424 231180937 288188176 205072097 959476491 548166059 191692165 988267807 998779803 874209849 453580265 520293507 691113556 556378126 99019928 738860694 855509641 733596999 946125460 683359326 508145721 27699088 362748476 506953591 548934837 139103694 326965826 207093845 353530565 589118548 670814785 792487117 877613538 721539218 18579440 893565761 273482305 636539207 973327806 297654820 317409338 640767861 202050296 404458892 662170381 513591780 36528345 440462728 498253513 894959317 341850870 40757419 143569319 693335576 171517753 771804061 487772344 930250268 355092977 878444112 293094238 83083938 779693792 864584447 446591866 990030728 32661886 200789605 54348323 195205506 226771697 410575545 34801457 680378797 924434370 801132996 939433474 39381644 534936849 392740618 184308220 794330271 147167574 634488223 621745947 495693497 164053141 982501628 514173511 726573617 290459132 654182090 64368163 803561702 313944028 420490121 401802303 704316318 539351583 682261142 330488696 730438741 725253693 300083267 864141185 148643683 890860672 115371481 592511017 191076247 48861010 546470272 309679261 397724626 575484390 192795034 711079762 758288440 164868249 158593925 922192354 923028002 777050725 565431426 18121979 783550901 139550470 379295843 809439141 610041327 384042191 559845940 571581075 671808581 438491874 576484998 148811754 188317996 89309183 790320065 97769209 293234070 404149433 34908126 274009669 762393335 749914606 220485655 934541595 846707279 786872387 961067428 513510910 880774405 198865354 335550149 686618857 552423380 934756106 514033766 722086869 90102616 878060903 905136716 30133178 410908994 30583589 565059238 861617239 262746850 342059450 731782643 310714737 673443847 950219575 756541122 63113923 324223800 489299136 382091127 675153876 310417099 599294436 596608274 437119895 685810352 346243400 842253775 688286083 48375990 194783059 662389655 589474212 746715184 202408379 428594516 203631175 239882786 492566046 358103371 94513789 690928716 307620175 606557865 622442095 992519350 745925125 816839315 313277064 337010280 805208061 636589781 104415139 360879547 344833904 440884839 213915313 533409751 482913514 153706784 361702811 384033722 982105684 172702628 376552971 440718651 388161259 459773629 244939573 398711304 860138266 958307113 495443310 959427529 929337804 77704775 79486388 441152686 461469248 376779594 177607844 349371323 258542876 564033031 835045253 458415287 81184069 433091494 113863804 537152363 917980405 235411322 240004671 282146024 671033303 492236237 491326683 719082950 751871731 485072863 340641893 8546423 739116599 944203499 818351491 714499940 305844977 945932625 561710019 832784625 456534070 851849157 686030839 307973819 926615551 214626542 152400829 404755726 99539954 799591440 910610499 246785801 146544744 362870424 631812145 52412256 832018499 276020698 398836671 712742570 866829993 513781427 308100943 327496086 625615559 831146385 260210971 59886925 914580689 855755509 270313155 522959617 621608598 322515147 460607143 998211594 634766160 102463620 39461818 652684207 750127629 705331049 234378295 674878058 289604435 598676363 225711537 388279193 720319731 502093932 971207020 748351386 927324775 609492261 615565059 570294219 527124262 4074667 249553441 702052257 427483444 473228603 373189281 558303530 413098080 894312007 170134614 443455741 352224679 230483468 849540670 119616559 573429292 604512448 96241249 141406252 134436801 184872945 218295389 454518137 190316518 940827201 353582665 308953057 184141793 742586962 903249206 381617002 975679530 180188258 140160632 844227485 393779247 92896948 54357624 56371283 265588064 231844917 373824757 719781334 224254767 232642836 492573715 785191112 258084187 884383407 280112025 618717503 373001541 814688153 478451008 290647000 827518842 653384536 258462962 28713037 470585903 917078269 536937028 895520426 225119142 18886007 886323524 618687835 968036154 92384446 128449629 127240131 855791921 461234398 459852237 923546947 540348073 602968555 142407954 629846440 472589668 668271986 124604867 520137569 217820744 227431232 216657699 339836929 90290160 982689473 150801398 945958130 568831580 543388 394002910 150578775 866416755 286281786 219053426 848099726 968998180 483708460 295352954 528842845 769744857 32700428 309660487 131943619 423268196 494389362 22442681 58775967 166269603 87830435 92163447 732154377 533387255 625579309 963299497 319151927 380411307 939547507 290642029 585307389 946038488 675426894 240452016 748397796 647086331 55716165 407176063 897035346 127175879 73162257 642366279 948168608 496678195 916494902 430221962 271735328 144353215 41599080 798942434 505270587 144926329 580769993 123036326 176988673 493418361 293583850 674676229 975074408 872742304 431232587 934692863 604876195 210932479 65315089 268813701 399211485 762835896 298650872 530496367 720899414 938977649 69053985 765551466 971258026 304953861 449127821 94219099 506716677 437002468 599476757 536241216 578851035 335884904 456724597 999372037 550706113 938245634 605702577 437146172 114526656 57658980 748306684 674163267 520316896 710045156 645944731 269601868 498661646 247878589 169349857 966379546 624423222 634928722 970702603 506588819 132185404 976204714 42983749 195012708 569598015 537463608 18157384 709970067 384851136 498415291 565629608 94003647 310818372 990677874 484000960 442559958 816028998 38555193 567439621 982921948 971664556 461032517 245299095 449079816 531210716 169432897 265200773 463084323 967366838 654003487 421408599 114541915 588147990 73558914 83927062 164204703 582759773 58670587 586590972 513440784 236965822 555320063 193446848 685843964 875433616 476314247 435371119 314642812 818338818 57392355 599329165 880760377 717831700 425712445 163412036 343787673 142091091 507332321 760985212 349755844 192740583 344553436 99581798 861587996 348089228 85749044 629243640 199611092 516180964 41144634 995327886 423392762 348522922 760948225 515468517 115675482 873844773 884910422 992991186 857610539 966708698 484474179 740483689 72548722 283527959 819798231 725612742 328169138 348058496 721038953 572875354 331955979 964478933 132715681 505148550 216160534 260955092 647717316 476796369 393633307 675244019 69934504 914407136 13333110 910930236 182851229 696878735 919717717 389267903 547776199 72054602 712124640 43250576 437985072 661119230 506830849 42675340 163135644 452028056 330063675 589832572 201321067 786567872 413195856 179325286 628280313 130547407 877024096 714217853 432163324 394157964 349878601 331354108 214222946 200599500 463778707 304446829 720817625 380314980 982825729 954328872 489281930 796573326 483236136 956924946 746019742 151864224 676516425 895739375 279457652 471351712 876353634 605360482 834502586 123686418 282239593 872598246 239836056 249575489 544983152 764646831 393563495 194149875 964423013 100813111 98947145 576293482 447083479 113348470 409823151 15214286 832259777 92403820 61082887 914748115 826359305 84832178 618387953 402104362 879245185 966942731 464836287 754862073 481701670 666069428 70914406 883382883 544863148 841979193 697145585 102533398 759841403 401211524 63706530 138597566 794192009 228575707 189035005 358803429 599410141 3743475 122752757 336531286 944591133 365561075 597833288 649424293 80772724 487280883 19999770 561205252 791974556 597694218 348598661 667246336 800872423 683425809 815959966 929317851 339212038 143385395 815895449 560999500 525722108 304340677 719796187 274054919 589973484 332980576 930950648 257392663 9255319 592700344 342022687 179335447 703914910 372738784 459595469 555817645 297034303 534741643 565328170 157909669 315341374 465903130 289245049 839205917 936847803 825496416 830885220 897994930 141530996 235105981 191755749 463563330 650437009 391767415 136815887 590403390 553658063 658324968 383659751 816425418 600699686 858268006 43506602 178914926 194105935 5469433 982279502 110728586 197358598 37292715 880632939 6391089 57196367 258742543 908996232 137727867 42218561 787241059 497100636 481898466 758543902 173081925 553396671 87966606 617298412 352326428 916188381 619406186 429925798 281574312 91176 313213675 246253141 317978323 697850046 313404729 459329902 127119804 277778398 587146912 636271341 406190864 635046202 528213573 756965766 517093739 635150453 566403431 497481655 747968846 178303319 716130083 63218396 506828446 966931983 548500120 331741156 628943608 211776926 110520725 531604055 558561993 628033547 706389563 43980835 857444671 979030733 178523439 827543666 352253233 241823085 802737453 678526855 433323072 96503417 975269505 150187188 206661728 651974664 906985015 99107266 498761760 402661358 454386347 469242498 233643669 67945920 336480937 620496045 706512330 483625733 690216482 864519490 680197968 414076112 830880516 346918639 585831751 376932381 253200852 302596919 914627919 32255823 339608931 321849704 956336877 377265728 751968629 45114251 561699664 803479955 738971899 754523843 175603819 112015395 182811775 520692143 204352055 394917255 471850020 922849489 497529258 372919810 604970954 98823280 175858148 798027127 702835578 362958191 91886768 829716606 938167133 258068100 997929758 833169247 64911201 220445673 420576148 443658339 389663186 49208598 377822859 344676330 481984473 161280832 935540072 864968111 606330084 926145931 3914884 804612117 339290029 712365303 926979467 139264960 488393592 561050617 579562224 371493643 421886260 455665195 728194822 229416306 687399563 20492637 633492244 434481 940362239 845991654 468684637 52570161 102543345 106314202 62017223 186044648 734431359 752976437 673035769 819576418 913624455 100030431 347665643 41085896 480427830 597528503 533496013 549009555 26854173 566429147 151457981 349194513 219575397 957613928 241076521 473747455 408948911 955099249 327063653 584958817 107768399 423425024 952579795 805538000 934711032 90529599 506961440 613205961 726542693 634722046 702630406 22018564 928144501 773228747 943318402 928192060 668781337 825309874 799707288 318813298 320165823 611861722 293504721 440101848 164298398 71710019 700440962 426297368 287053322 438989184 393996350 185119908 690828370 480457850 274607318 147505320 550937422 935737264 405354839 496914167 766312715 481575546 628376892 665188096 500971455 598768201 854010628 749918363 138004157 759950568 576245361 220406059 807937328 821433288 463890235 473894510 398804281 485806654 743506970 706467113 983816522 864169767 149014829 974031181 83766004 568662372 259836640 58842363 973059939 568066691 599785855 149544091 779928114 148746986 714154294 808191630 243776236 867358816 756768330 665741351 373149864 298245324 685928163 131472780 625431330 538090687 917905273 385483986 433664343 92121203 610480636 359467993 750746618 995403577 834365340 244833098 559101172 838656586 500407932 486418708 354772276 323960880 535080600 928623924 898481327 285408718 722545297 171534588 987339357 659725240 49114810 735548121 451441926 471219287 444840434 706269221 965154709 385591038 106276970 129428775 932164697 258508502 180228105 897595273 187434380 276282052 247940360 936956091 727650415 262663016 63871860 222343267 919103880 866064839 773151071 224256384 374334467 485909612 826912559 15672974 138906159 491549042 611228313 128200255 631302508 235128611 39568781 41261121 778670776 761997497 113031781 183787143 973620394 489927302 358062534 226617887 831799375 212795141 330989681 123246799 757512544 518603576 678406964 762198390 765785715 18195337 676444775 707472909 949659987 554760226 551813799 448637564 767275816 28796388 623200543 309253276 352138004 752286005 675323465 239362049 167358719 280466957 240498562 852762399 577859427 59287876 943603467 329516485 261037746 475417295 619818781 171745567 351935251 784832411 495105801 611467251 509112370 733675244 898422162 878318383 667008515 984029056 510652100 527541821 304826696 825753134 68603084 296270985 918739623 198550566 394087998 954957139 278808194 489170861 576434441 211685546 805558742 542736377 654475740 776581854 403110871 602004031 488135798 158372508 265830595 347178545 195703868 182966862 286856012 240976585 194538689 58296760 155715524 898162430 65039483 60979567 64795288 699928027 519543141 753789087 416106277 674317571 562219588 100973637 547972208 539298089 952308900 352424643 436876831 32585705 728215081 236800826 340803109 92357715 427412105 698473623 89048799 912473991 512301577 941131484 738223653 179597624 481950535 109713106 976061348 801787019 65129546 398895862 948253129 505710420 398908669 161416189 491053460 611372671 965700042 681774072 775638733 445023433 750385818 519013173 436005401 743713298 141631233 381984907 914405609 117722168 542530112 660443434 401351182 135311573 274796483 278242587 901386041 805022996 811643766 147912315 933065581 385939554 23670915 209800648 482633428 158630530 739384597 22757751 266024684 404986918 153711443 126080796 11046943 186119459 309135288 351483813 737808164 510169793 349585753 211566937 582380942 311411025 660011686 90629452 631580726 734953317 11592801 184638394 49006800 813109192 191229657 692593183 533662626 847471448 17520736 778547611 788368050 496503800 346813381 478950962 517264420 663884790 108795127 140091520 352107647 331083240 929500602 834804144 985098328 62621685 507151495 315363264 777552652 459196630 387645842 896530000 29723100 130277598 345194386 778635051 434345597 306231960 971457517 219024030 911151962 979220945 498151401 778635413 935473496 809293262 651052861 34687525 286447903 446082059 427980425 756519455 317255629 74478486 789305327 214326334 63749995 441473105 304946264 397051076 311931041 803547118 651681291 181598055 784241192 524880974 312133039 628247680 554313242 956226094 215953003 27531484 355635958 437109547 438807118 591009574 530182006 400242766 675780040 676143655 441618738 780733127 504425699 176151135 62142029 441168127 473560425 796026817 497600566 820021407 870706021 811285670 490578572 555463313 732494229 409997663 57804090 995678086 910740302 608714220 844685648 136907454 369877987 370033264 510868218 169368648 98495723 513468456 133709914 775468303 505521935 16540283 688990182 924458312 602036130 914135876 600681133 248365658 571187317 611094157 606192969 595334473 223030535 47085074 362750379 360745050 184731781 93155936 841965591 930376769 487862229 143979771 259803395 349654819 333043057 809366558 783272029 400481558 574316446 831625877 204806951 334116114 14494848 661540724 992861555 455427524 155213542 543233004 151493881 487631027 589155827 489639986 283522688 792691898 656444768 914450090 366486999 778505129 870185862 559831860 445424580 394608732 80435977 692386568 872283647 202656627 940812147 800400065 8065302 236855083 126932483 323958121 728429874 772689612 818182454 56898758 278294972 910675794 901727143 841680219 403400244 678132955 381337241 12570907 525790368 799245372 147340505 529836412 884640528 698818288 328420293 831103216 47366130 769179317 796986831 10855179 355260522 714841412 961690339 435783692 634562729 503961323 938323642 666526289 325279989 771948509 814149661 845272530 393183309 792436165 57523038 124938349 251428094 9659478 602092490 457923247 289567776 50272261 113449377 643971166 567638473 956040786 2485901 901803112 857890673 686080612 881502294 374476709 197496254 622337844 437477018 743693399 236591909 747950281 93852256 117383918 845450012 110666219 678830274 779608763 377409717 780852225 840459414 14718262 383167243 488911069 131751749 860235600 585823913 532734077 293927734 75394786 455667934 741912679 596823799 802066464 570332616 146498494 305940445 636401786 465926090 484187804 888458237 593691595 948821253 934665741 264309229 560819284 810056638 886977080 367029850 18382610 503306327 471785642 909392539 858523201 142824610 930849247 102489276 906622663 556179955 178324585 671956530 159286756 510808086 276544066 897832824 665251405 458798664 847280317 376412044 446174889 240256468 998043988 662190617 683943836 38807104 684385290 391736668 838200463 305885936 285252341 904127023 592686155 686286102 468390384 930333228 442271600 495172674 385066545 586742932 648617316 71987954 276275581 395621392 111069786 65936557 861084867 932920560 364528348 639774810 138722343 106369787 400263933 568694292 32889346 347708954 484810105 866792686 555161419 281624419 698810428 192432059 990489224 136797076 746491217 712407096 24094843 882359096 500168270 646507461 460390331 640913757 502431588 829251557 67710128 460538222 255208546 672611301 416064184 259387678 778231086 389370957 352481893 837037054 409646572 823994005 146613866 489176713 96041683 948259236 266598205 940959307 695820628 52577906 480176278 303797629 577986281 774306734 70738160 529025692 562327219 493309579 359445018 439176061 797060276 261387942 860788870 347674263 538100784 618795194 366453839 617867521 428529630 534179586 94938073 491551278 189675984 277320256 213796756 97109228 864916351 49364367 7936155 414911609 622742723 698436315 812100072 18616183 858268164 322575541 483150536 391733127 84632212 545648388 735241901 17002461 35107281 100435983 451901197 821438713 755618458 387414725 470957115 800592197 861057861 17831242 155771324 947679233 97328308 643502784 189966340 436262569 659664281 953517756 490050458 725606236 679920081 437434303 515116410 975575695 955722445 234041802 927362160 576570245 258951605 840819018 908620538 170558479 576773709 92412560 169287385 68223095 12686099 358491699 53291695 468177289 97999180 424068285 142432313 334278865 780273632 207734778 569543202 56883308 195548229 68750445 777299514 858426020 363888186 269942743 973132327 232142145 437954219 337741934 646340180 461030628 177816372 480055248 424820328 965993985 930335328 482627520 798061570 105823379 698622155 427681183 450971802 698851308 562641734 995320181 777359927 676616702 653033980 673537409 650125724 938491980 486781859 262940983 843411309 262428979 789931317 56379420 634466274 475494955 868999425 304860698 795265839 378168550 805470362 358715233 154093246 932695105 278493661 288005709 404930963 10668915 945514219 699764993 476389806 190488059 991856670 226651640 278565300 261480582 369152402 223755816 254946035 336611973 137021871 800324111 652901745 895858817 524506148 990509840 538037737 972078509 549448543 513849237 664823393 479173435 726437212 472167384 705576946 487480092 236555835 25791165 617906294 765574833 777458004 768067349 163894962 468404074 272069257 896741822 103361961 360073344 878536730 246297893 299687166 120641528 707239445 656676411 621809151 671127755 264108960 703857042 401624636 279455742 707136933 823943932 355929464 878676171 921158175 654614966 677221787 738482858 886279476 645871688 157134633 59184226 376243241 839449577 569349227 624136814 458107530 944264288 526508018 363196754 197006199 198607495 500291497 64605879 840125708 925035991 289138962 643808027 533025069 401588854 867010320 716039468 50328847 312021683 429157853 157366503 801930750 553002019 982999223 59645300 649544777 670035058 449168869 839673207 236931839 32437512 711873703 122217520 910488816 261446535 657839804 409784183 368212749 82603283 151007517 441858254 171110338 517391107 634220908 387833451 673783635 182762760 71527753 672381370 650205556 307300472 882257037 749182682 307226039 116779800 335192915 470527567 516446716 94532182 35388519 73871103 360840837 396447107 103453978 657413925 679391345 5849827 161277512 812705982 201503378 925118604 115220383 780822883 955048002 542179837 336512702 402375853 861971572 969361705 829771306 297540108 454421765 427437561 745260501 201697657 762447712 14114523 345510965 343083581 783305740 298030580 381761802 25096095 340857214 635548572 858666497 729451473 942854627 997163517 873098640 369203040 123209808 155702068 387785174 587365688 26238706 912379041 527943667 39885847 728807537 532814556 696675106 667510656 961845026 331401544 668344907 498214557 964172433 420078420 33123620 535763434 668853883 780994424 290563899 631310518 588307028 738841472 571048540 737807025 977906269 846517232 323408183 96326488 964542492 115647404 834583222 281343870 835266100 793541104 709479121 404271555 786005889 906623279 780194090 399801916 596233092 435977322 196389184 738367253 496138514 328388124 337945595 366856796 642634011 917475891 576186519 283962252 384290508 706821726 930755037 293196772 4234476 978967698 63191539 786748704 414896921 232518139 475102463 486405783 447595338 764523505 598443576 502579382 705264772 148512042 88493386 887587788 52982966 11438359 644651060 781114663 989382609 88292740 699538166 802538430 78309432 68075381 697097812 606077716 518978651 300668704 540761122 705537876 207145669 574922429 410306261 602821174 510275453 475088050 248559787 470869426 146690248 550093105 509455432 270950482 327727219 888278678 845430380 511751943 126518544 202459056 428237740 942878979 525670626 812448420 955076003 309024289 32441836 951506363 140144038 687920310 51848189 580067784 589966557 746168010 870551405 904445657 196664150 174531848 556544347 193989915 997608888 913223310 362567607 729357337 679083770 756690089 321914365 730945133 541507997 170052651 843119021 373285471 251492179 7132032 324079258 203171814 366140151 773651834 268580816 621473325 30205493 873299169 499378104 817996945 655346649 66273728 299931107 694461683 489396896 103994586 995328965 287723867 802571939 293144428 25780803 807326471 432009221 574159505 406841965 259773516 73341696 184924654 213022768 945772355 559687781 207217024 868141688 720573439 990109675 327435475 289128261 686565904 192953501 243974188 957348746 118680014 908371103 611345513 842664031 826566396 798980203 16175706 794330726 994281580 465443681 438851977 634863972 208167088 170389361 852210851 41338967 300610466 443436537 19794165 61087709 204640622 741646527 599712526 67478557 534560859 648266680 847192878 229158128 290302804 549530043 100724450 65945881 989427373 447978068 966880535 233026215 828105166 988270726 544389380 732491630 993491616 33762814 45144070 234318720 497191233 13451209 246577829 767571585 154491853 43802920 667388837 876986566 993273145 816824109 157749956 637056575 262863390 73602611 349576600 751079985 684345058 217159942 863004226 664270959 815010928 16874005 810835779 806559254 700133251 38506434 281037547 663957163 638370505 486356912 364408190 350382668 623045959 910898753 719195040 873327024 717137506 907890811 563055115 80289239 814506608 222748808 608158231 809290932 823391005 834230029 931261611 28000682 535168990 72909859 100649955 652069318 548538027 373984052 959878576 720137899 854001976 193710601 39922407 272593015 911528284 74746717 603324489 684041926 156811479 626399283 70937144 763284975 679022025 976868555 200048183 963349612 937955816 267094675 53466963 73078874 175084870 235784276 854451499 890249423 951063814 142250653 99905602 570505484 77674852 245082366 863684308 107236368 768258004 48740631 31610982 490727198 99839092 522503123 881912527 522112990 484984434 936579544 517627587 314677101 232930297 668084547 736241288 387871768 337457494 236321511 556218632 727195659 409406872 289736104 659211639 886707499 527713551 748945866 551012576 547535849 768117338 142852808 568922488 952081729 598987876 450300953 910723542 693390387 189283796 601031817 43149968 247482145 60997261 997801243 977606375 579319622 440913926 993587574 981151118 591627245 479650128 426426192 581635481 563090548 654070878 719343383 478198177 210056058 230265949 243635730 53293909 998814399 855622782 826844214 282222025 401646596 827833365 2113826 68545593 414244594 817305333 820788388 967067077 232022337 992713642 542245232 125810753 253989206 344068150 432491051 50471218 355757109 685416863 181873786 20034658 380422641 532026434 822234455 341854649 954917007 707939065 394854701 30319912 937186299 973458693 894577730 7626311 434317583 542226983 902504793 732739402 755441785 472707430 506463342 703259204 647393813 667533215 68285639 300991496 23563478 673461220 543376022 84479361 907382615 885157524 277074158 234275378 815715846 413710838 554030999 989045466 750280118 146819846 559733931 856405243 376181213 117219578 529032994 943360098 663158786 883007771 225034800 5931957 686327960 22542572 255303854 729370110 614399030 970304866 697905418 677083740 41021674 912913572 628628722 90640553 351889446 66335689 295842530 176972229 882352433 921315154 273748626 184006439 688366341 193355602 995498422 599239964 851118793 379859144 465646712 586385039 133591410 72576305 458878271 512994133 178799382 616872604 242840534 995017856 677855453 972604143 198214716 147115701 298183732 522620441 947074754 156323550 782487307 174757009 485486592 175553785 232141021 330027852 961771779 614485382 586496968 476344671 493006422 332230436 708360110 515483086 504258905 587980479 947239039 894128698 404559171 49471924 738389974 463018670 27734767 180407816 320424651 863471744 639354625 519743547 317271221 218134579 998860426 278202436 692082340 898207223 582337874 196219186 766962531 761366309 520907313 561362385 162304745 138182015 200568556 955809466 668268260 930926568 691241825 88872358 651765284 220921642 848819805 63428364 253077010 748499268 663599898 888893473 902040866 674930312 81377201 605973167 137740051 546919053 874459667 453560079 188659288 159729386 112724078 613124518 969803315 154493214 692110807 558111125 925671073 12942075 123900398 653728709 296543705 507094381 678044053 542317507 366446220 665432838 512106724 995684736 930664049 2379910 659961014 898834285 419266096 448218983 118531958 265224336 142375621 530943464 938583498 752715398 145164207 443314519 314034075 57414712 422294880 666802457 444271444 339523740 56558973 400870399 849737915 293254349 220632378 396535155 632331069 89518961 729076642 530596621 634457529 622602928 293699348 544943614 839256925 735784688 593684745 492406868 357605247 794204879 436778374 529040346 644831684 665575780 682620175 803475074 362721665 482375794 891180978 182750698 465510137 298723866 133865721 255599844 338427764 36090666 495674878 652838257 60551919 193258980 769373105 222721972 19681858 851791221 660057885 152538809 29540038 194307088 734204696 88880406 435946813 93333123 402779583 402924208 539301710 797881042 606541084 988246781 4374004 54213712 473783258 877514373 156683433 300168570 829088416 910643987 860676951 723943386 548828594 447006163 525674147 575297014 137120945 999489823 409799815 768071700 194372759 476531605 85684549 230602798 512449469 748647738 883928573 191302893 64044977 759235362 420095256 1978333 325869852 481755627 304875928 410225436 177335693 786888832 296873516 391864570 319493896 483725061 106872806 232174215 145533838 353957611 163515398 962699485 626496429 540335325 780817624 622690436 864452308 761728654 462857653 729764899 689855431 237035802 12251328 545245644 825281606 852489330 694150384 782823205 380796784 941083608 867894757 361775854 592428710 156817803 288304883 979374554 905200698 205511196 872595 103798553 670261216 780474367 927025441 590127524 671979962 964429415 68304652 220843851 502611446 668947706 847352486 769913687 202860045 769265625 805681548 341546605 807204309 26661620 111714181 337205825 829309421 514981361 834307301 146402992 499009723 650268 480947338 373364336 851353426 300314091 109950727 115714385 977537377 766221760 484524167 871879811 680549880 349901525 910759559 526551426 429953945 438377998 243160495 915465768 621428126 414557929 654209911 46936683 215898632 956218497 661166564 959886115 707142396 568676601 991994660 772166135 491730543 165610682 415548255 794317270 26107676 527082376 206903711 79789870 74076922 142360708 563428911 829708537 775623302 384530086 551218099 446240580 126539851 270235085 951541773 133966750 130718095 512356649 517158139 63947852 733796154 4317707 103478460 942969825 804234639 213533608 333170824 446101123 640532300 210705446 869270127 927892135 85103251 383326401 282098542 608538438 967730005 192480258 7173645 815506987 906894281 980574381 470293672 941238426 599056097 710735155 224151653 440983714 690497565 874266732 581304901 357032173 527099296 111405014 271156816 429271719 164591522 690859795 801548546 692006803 189541274 754221190 630078503 890351816 543371366 119689412 688407281 87046453 577043686 72180407 406763260 459921656 962473519 180720151 244500755 449373785 298682258 116032664 810545258 957818126 294229378 419632775 214597643 378044005 334118851 160103149 869134471 866743315 404140417 149722575 548786123 198213309 659950115 635016814 548747496 786897716 323637314 552358251 264647983 863708867 257897889 420412342 993752292 70462601 413941704 66327137 602063578 264430616 357563849 80510716 611931171 455366258 667677287 422871491 757865901 405773126 976372603 953873148 784250436 11676345 500920170 587655177 859366589 374042480 610556855 869828623 469783070 211178211 592435985 233791844 1018132 479843690 75761406 180536959 464100942 557104508 40839881 677198039 276395327 643440432 158474493 598975765 788683270 828331736 386628869 553145696 480883428 883898367 687508324 632852383 402260906 453265888 639346108 201537601 513345642 115992460 712470763 477349279 639494218 766509534 852230680 517087143 996198007 910172819 64050983 949537576 926591844 352017309 210896275 501335141 888340448 145124555 408427242 762245263 584466701 126597837 381667334 598689578 402506967 518412345 753492138 865680771 267424989 980347156 157504242 914294586 528110522 925094442 419994493 643838262 730238690 632903922 986520109 306021430 878842231 315852122 506365665 927119028 607265927 856244687 421417332 560346982 7080127 652155313 365991039 540746934 914162811 312444250 486721702 833298637 283360216 955417001 688147752 844790478 917064218 784468614 863686367 935969060 145453258 171136606 356165535 204234998 933913677 161322088 317676327 280083501 596932589 150741680 184487283 350162351 48206890 169025423 480286664 243614909 182911393 849514695 46767562 881436274 233171068 105857988 708916725 689252762 453336340 499509411 558364330 465351851 315893493 179435763 200976938 838766762 62717708 816540829 289258992 673330413 387241252 208403816 874633938 986426748 956552463 478292867 536845382 479480330 596795886 922187974 32900352 697583476 571685431 203642158 341417478 64169038 123371122 208383458 627554720 233878871 158290247 817339992 230575212 557571071 188555434 344946965 317481176 978476802 158932883 754173905 379511076 189980662 119868030 189694135 84441918 276053562 348736150 475989371 835912919 48580670 45061312 735335199 828204881 89578598 870827400 17507407 357360976 970322202 481979194 839896232 493769906 23690174 813290565 650331522 705352740 573331774 367377264 717696148 670525734 87301921 49131584 871493246 367773202 80191731 973914958 581103247 660166472 954946247 375758508 212872191 952756753 297506013 41290942 920100841 552538464 12519655 963153767 481236335 827334796 513780062 525125978 318953880 192141583 196494362 557266827 142821324 697737638 101317228 92511853 753011675 235260915 631781605 712573342 248368800 437290880 981029698 550138289 490848793 967142740 695618688 881702793 172058247 310882330 674151959 35229383 567073496 926707614 81188084 633233691 695473678 754679554 201765355 910491198 804310559 537603839 498127427 274292431 997842917 340836717 440661000 32860757 33899685 506992300 575112955 384608516 363258175 766171828 159081936 671406752 199334952 765735884 72322333 691496042 128493556 766235886 24537783 172725953 317602476 119503054 389512415 169993836 304365594 987009865 918638553 261046601 10885206 300166806 769933799 433183144 619889844 659797771 191831790 875639289 715784628 761927374 508226682 207330522 333288383 232067803 121246465 656521250 885923608 974099853 400383997 247946936 94618566 234384137 124507479 472195888 293892926 191467539 465219239 693033600 510871209 333141830 607258342 509484048 717382918 436554801 955671906 820701940 658503208 18023523 835802944 907870737 608608471 460492960 46604844 201297525 415934771 102825072 418278616 829905261 990606896 483986083 986161323 820584861 319549732 573662697 245817687 844650478 800936182 554102834 276430995 931407550 300738865 826412046 344385581 981960860 674799030 840273353 804848272 341319516 189938513 448824795 332272298 963073883 379471017 206393904 668694199 990070143 479143801 94026856 760680136 215889586 935429251 631673432 599147707 454270424 560205660 168874415 864544363 718370422 204159347 978481460 645514011 97860263 588956803 618481299 139442640 704138633 138499854 408664775 984625411 664361331 233046420 494629012 692201676 726532715 820566696 310890769 397030933 398902007 749411704 71891268 580880068 657478737 102510621 622400030 768043679 375934985 592024840 317601114 916928832 991953606 755295298 513951476 119229747 4225585 664096534 219473408 485899947 167225763 141016860 97320362 653544948 424074103 123038499 575278926 778806958 641014339 933363565 821265637 826441935 377620284 527616785 103089983 530012779 806143671 799906107 92133057 587568102 238147790 816682785 734879245 933276131 549284438 423137129 850832639 26740027 272791021 741462441 444589787 400532809 631123908 572712662 689431472 923778285 946379297 437665238 389580258 92921093 779103903 751519492 307578345 621646733 150327964 6577440 636365893 814089807 133152557 105155080 60447020 704774203 329721101 238845117 538839224 912152480 105580836 181634523 459114810 820735704 535109083 493867127 675433024 168342230 33695698 346374981 522867151 694286456 322399908 185571232 917160559 202822025 144025867 51265919 96218544 642320218 194817988 688744166 66370929 854384756 101694651 300481856 586099851 397342142 719921613 268825924 171285482 789883745 760929198 29218198 57983130 59640625 929860164 529765890 452636122 593038364 73657653 833428506 85218864 126822204 827969321 409022840 173914661 918097265 93087190 75978596 206494465 741321540 805237100 716711921 979897074 120442810 826648028 329499991 809611659 781676544 154648566 163424025 442379609 335283393 557762824 548669831 523934249 44288957 216071874 563503133 283119852 422560964 599005752 474682702 462399282 55897875 162353091 397742473 587428254 921505442 529543271 867207843 514068315 514032396 485129091 834330533 116034198 677659954 402620732 43534676 867491217 377665017 916173910 30688499 369199281 964445819 764002734 452925450 386452521 549904624 192950498 454212342 501125570 513200357 481763416 946296704 85006437 864180072 824030606 747458805 311961569 947062982 883061174 253069100 447968561 862876844 931666675 89186963 48831838 137502098 780525664 557016702 119493215 507210912 423726390 335815150 584071000 876039723 397740501 838827287 820396019 835437908 849808648 325789290 519774942 1751450 471788611 899060619 20921496 166191677 45789200 575721041 547183980 808737252 699876664 634322659 653774973 414242877 337439187 635940652 455889274 242046497 916300527 317562379 595019310 345456792 942577058 198307590 313302665 224403536 215627990 570277102 47793767 282759593 353014591 563163055 917762092 485907145 249915260 665109814 778474902 400895417 886608646 682682159 121041143 880559449 347962731 206336861 467425610 655549952 864461089 571790938 261546988 865688973 929173068 545021120 16587269 635534020 302875834 547120428 222113229 261314043 753747296 644007672 627108595 571344871 449247600 266222198 636601270 331900281 978040814 970123467 279822702 985418529 572824921 130105813 499550751 196490182 454090148 600636348 289835161 260438967 132560169 883382717 14874686 655667194 170727459 244272965 982501971 80098498 278020437 550892283 271854451 229566698 692101959 939036179 607524370 346312690 194974910 536605840 827752234 808324479 101928098 268808200 507449081 419441471 30293106 248233082 109944446 689862602 199873312 924555098 325368995 723870287 409491426 304809566 447123348 207873682 111662325 30893240 743404883 607675512 440979210 75985751 83190947 354770895 164077201 261911321 69809339 635720654 953196077 595293115 898461656 491739762 885130077 216790324 416390125 357988939 190270604 148222775 832654208 388226827 534684239 767847702 910333725 390701802 20936147 204697837 289585486 877627965 447977477 826324044 864022334 552880369 555001710 312963802 112156100 256173102 963755703 474297452 116821662 351467740 761886625 71626870 199812065 326945873 525793687 735204128 180337333 796876317 681032639 470025551 328812946 451417750 1079123 113706224 428078062 386664391 777121071 415848837 92987897 364271677 857033273 956920211 334016558 566850689 996912617 97620229 248253609 335436042 20571351 679877040 797643054 358345953 754822209 168053258 182443365 918594752 869668788 218567614 654768692 106763311 25093039 501529838 465038641 995255493 785935313 497450894 850224352 682733665 759312033 83352854 880751518 633989213 627288624 465858003 78080245 934529265 987518231 257156036 358887650 803357099 439532603 655797839 809338532 277003113 355585305 417983066 783017008 319623889 215681407 114770554 996860147 621649287 199170232 581959062 657332191 644698014 270539306 942189023 836277976 567584083 647525582 916207350 238217768 14742156 328929334 784785919 220998569 974519659 620875237 396495920 422374951 748692094 615598883 913668910 573350806 584342489 515826050 280143417 883448097 228960166 412556156 885312974 347119038 628433730 100215199 685901192 387502571 659747107 340853995 402334547 872774914 849365367 685973307 486415053 382641812 858229204 123715104 145864307 107038550 830308294 488431599 649617423 389288687 883579138 448332907 911989130 454435501 223681360 88624566 345445045 423795084 555177691 711406500 606186848 73893127 947086335 346002137 78676547 320943928 13521752 718612018 700322111 813542803 766443307 244521675 29999993 387952187 116572845 391647539 644296407 996152651 266314779 231287834 716696495 374843693 926075840 719846690 306635332 105493678 960272417 10894881 931532343 853340863 784240476 383302422 349554534 118418922 119763926 150560742 254087655 140832760 72219528 42405813 421200243 911700560 516157862 910865980 626105072 494668324 984663152 774667913 334387744 138236488 849485828 497015255 878690479 572426518 237187945 131338724 433775142 161496724 117250233 654313072 435107640 80582671 93954237 511992893 638784150 547504909 693175165 315848990 500021778 963533706 384363729 563588739 40207212 892462640 549914594 496759861 446951195 332876344 610588680 736867643 338634829 680746236 791233859 501227174 5377138 352397347 132982233 246459799 172922144 611848640 254352425 370958325 407354359 460033115 174837527 132232106 215655993 164314190 75476346 145551578 514186717 590598191 510102691 602880769 367756104 109919134 844685874 826891806 185929831 170213671 175045769 704909551 170025323 406402447 748940681 856012676 554523534 323205748 79362706 212035516 950275763 322542704 391045178 815286787 186528181 500127495 303917213 409221021 174146968 635799991 804852156 671318657 662503888 965251683 191065678 717963530 471897097 176997150 131660990 963928507 973554154 847225305 6012177 326652901 944429139 275710687 63113731 728936330 586356756 726229528 55807302 584250998 973302818 605153306 267798160 503776960 159353177 53541263 172573162 200287355 8449187 558400170 60627981 29146795 521030879 561985969 215741514 404774510 371728609 612309007 848042284 86685760 696761067 136280734 993282580 823980685 100742781 938721432 577462536 421988792 753621334 560360579 602993051 984981397 62738938 787652496 835089326 309129138 83900573 273581533 547390674 459041496 607943675 533612016 534807023 85667180 929936832 539488651 980392432 538947160 108880760 296286301 562726347 706412215 285317051 804361764 691214976 314847750 175654278 41033213 323302482 133071230 178630191 475763561 752009458 176902791 160795016 244739506 503870757 624041756 741470708 379167919 532993612 126151210 116228337 538703894 114452104 866579826 536527001 97680018 476921421 416566382 616459207 224683984 301577318 270009252 952876735 634234684 216360851 758959067 758091087 32817737 193562550 98849292 646443005 845548369 822056872 844918981 776246929 730477471 916218542 618603516 241595131 48756478 268881036 416492862 604691252 674487761 840511609 466450656 841924757 200552725 623526015 592339238 273195380 275317819 400245892 499786462 685384520 562863626 924751673 692215783 736744452 402893075 63352432 550574535 203840828 773801975 611244492 871308141 466729013 425557722 965956461 927545487 768867345 412445764 788285642 346230350 424509010 848187724 895941898 389125990 583264248 164798933 58817241 546942647 700747930 107462629 435187478 112820800 239019094 778361707 571346416 333317468 488903149 785649292 842463762 816567594 11416140 772852479 444445516 934589509 959531216 46282608 701057970 87795983 46326000 312524088 559314586 124891071 560683577 426287846 418850629 250360292 78078578 714665317 112982311 789042065 408893069 887514087 869668707 828514721 882016542 532910125 596354698 263734841 406071198 454698009 728580969 855290678 909125831 404528242 411500891 993932001 335018182 1896550 765325193 944602977 618097284 64367284 68277294 546882037 444170670 599761207 879629720 748211114 135174537 287371298 49625167 383688022 417605898 476402466 334151052 768127775 896649729 28799071 152188066 427244231 848405167 817891191 750426976 843009486 584963078 402629501 231113379 716724461 585877670 84485177 301249820 658751102 63616029 364884642 163587821 542828196 459399870 875440708 237213150 666380827 221925917 791390193 634149768 284381379 573186295 829268136 87430901 450328326 389342164 530897384 667796303 902092948 699519625 906326755 143164287 661297275 966432164 961582597 185094668 640465423 76557269 848955746 315958310 903890035 908292554 957108078 551648911 899716539 489116899 216694273 986664765 707750480 115124124 836563936 83398769 431233821 747720471 775869085 79289748 822265027 656877660 954869067 733356510 48309811 975628524 106935050 500713563 332355004 501903499 405287171 69420630 79888757 341834921 425627853 349895877 939364149 632258284 419477096 132482860 291541487 207379611 690329084 159560951 190730798 401694207 615107206 965563952 305262937 653533687 135356500 673054279 974956202 671394981 120674504 146138940 920828837 777467102 285912951 890137032 396586572 788042537 98183906 507484423 537767207 573919162 22821592 884922566 538033030 381504477 339755496 710152040 990530923 79778695 22154150 788475051 444567272 675608194 551748497 917645265 983497372 107990805 892534128 970935821 433619329 420306663 641367877 528605475 842118469 152064340 335793628 240310834 259951616 249099797 568607692 46521214 294848791 777410086 415733217 993377544 939960731 196993245 152799312 858951970 31210463 826024253 999200367 371697359 555933603 727800015 762607697 970217671 798370044 314396949 490249922 115913191 531962888 171513225 284636895 779928047 156465101 559767588 456433371 429562509 384735241 840171978 869762624 636367168 320095731 280929522 640401271 742847997 596563250 638586361 620883752 27433638 48867267 394744551 953277036 502836366 837896333 354491509 521792638 369261332 335579802 766482403 69620511 591261296 709916940 431904158 697846791 109892857 172483302 331360084 450930399 44665596 955284077 954590565 486546050 389464638 784882322 547031800 575952548 463444763 930084128 53273837 128282261 581782729 969415954 591204344 571077113 732321409 700955176 285738605 471482454 658528781 416342060 842143418 48772857 740465998 408690339 411749027 116338527 536914819 403845261 18605774 519063783 691432667 417359617 828745425 224100867 116243483 538830038 198053632 125916687 360929246 870587756 158883507 71019364 707692040 214092651 853841399 401259608 777036382 71652807 661451578 257966370 40684129 659963723 434760542 338581611 677969394 750867130 750625961 44651430 103211419 239357792 184011046 89650166 932650789 13141160 190540001 113532051 867556572 449252806 593525487 916753348 33254618 977492424 530509078 520879589 309719345 630832271 988965660 693628922 441955418 974967258 100291260 884842588 441264183 451379912 961044300 824061655 793132988 88392339 496783785 45600284 621132104 855632263 701001835 231234079 188899226 247297898 613654363 196726888 23273590 72595818 991698080 407794662 985717226 544531285 633801459 598524110 774314225 312594099 598888735 527131035 851822739 253436635 223103272 350861210 525464962 953417372 252421575 187247735 323713264 261997871 961995469 254346230 176015600 528320833 803313036 733265586 188089222 682025421 18609145 715566109 538913026 519099281 510717948 37793755 980738706 229110656 184204966 546525960 509984045 569179127 468815973 885534769 656114722 210230239 86284292 773476051 989358642 310129501 929423800 736204735 916977763 683004830 43903284 180669311 595264312 559788599 941117722 690388122 675409769 329532625 442516512 757189396 677660377 471498852 166271099 381215508 163845193 455661526 421662171 726220573 549013740 262869615 860272965 905259127 331301102 639616566 211134193 106303375 32466771 320098455 553757444 820615563 601805756 675753304 213245326 95937166 758809011 201814676 722813290 211980735 632462013 478268420 588814014 171449619 469845829 348013729 745964003 932277846 43904547 962071547 791909436 11124144 763051740 148816010 126895165 3820961 49694555 570684906 274272987 528603018 876081574 688951976 848662412 285775839 969123461 935074496 913414122 604583504 988448955 91569912 794974997 415794483 362311720 140457179 787302723 846893423 713560852 542305940 604764146 5852160 694900396 605701095 693163833 544716629 239732590 233698380 820485550 750292488 998563171 327849605 335158327 182762436 630167907 331736204 296305758 74459448 872571613 735475003 667771628 340585593 485386405 947378516 526905679 858831009 777593910 609126875 878174113 643576633 531063165 473352051 184834190 56455618 397585246 856951802 34928944 695303072 953016035 328649825 183079333 729253105 374970712 120197348 743083646 883286899 798492271 701954681 938949423 848511115 458145623 27838660 887620682 900657373 150573411 746021821 910480238 913393268 969981920 882335181 260092036 745542260 262566142 420935852 329798911 894011748 616407184 423089113 595875866 655716612 866765186 66648165 422864120 262655452 982110924 417873537 300992272 971506931 474473316 354638860 109116864 876373210 415141428 111722757 949262041 723850902 479649871 322530151 648700418 740703810 524158161 718715278 375396784 390947717 794541888 141356825 886962092 492202539 234763979 319981352 382304029 320734729 926610362 677977039 831578376 239932020 399866457 723112789 37279172 641899874 126686129 47746153 959953102 593826214 1250339 741576922 104327304 400304978 173340813 710652199 613447233 984317597 528545215 678589241 411149312 817438101 77175191 312322831 189468236 541032543 469517160 553990243 426626045 172815005 505230024 481176568 576052396 7995540 364613806 349519847 77165163 43166596 574628013 145309065 149214805 9475901 528978316 963206608 996927270 40820527 46307543 361753389 20873631 519616172 54209843 601314630 950209203 219223122 224905562 396558150 148070223 842056037 29319836 528652159 902541030 478822150 888087093 716645698 611155924 632822212 856332382 565070955 66526537 901733202 242949537 423033011 710855660 627728925 650007932 648427175 570016796 175121216 870016671 893229714 900382091 100874528 968959222 783680909 871332724 418617622 821996348 525121015 734648123 980481387 954275959 852107467 229222348 928879884 528238715 776091842 582201730 788328975 575886433 786965869 223255899 984486619 645061854 355214733 339110668 347234279 412025618 131363473 299653256 15665814 404651388 595400306 171600537 951158608 346654259 487263206 48713071 546512190 247994688 836247463 345337717 153051385 209452042 986619979 857925752 973303135 681023434 751668528 958445474 228808129 946519412 607877290 313187432 914854901 360516625 274343520 700669521 268170538 750730730 309766188 40189141 814924367 799508940 799774959 909787432 57925041 486450810 734512597 15636205 176906965 298297677 833023859 151014908 258302798 791639917 258196290 40408730 444016790 262273228 492236793 953844891 76611014 352103571 316076021 407957842 702082884 763458890 947005329 932899120 287178779 83595174 831100341 274360896 676710175 662971130 719073643 721429428 131322198 741373120 73707387 341506117 994474012 872000613 694444653 873177156 339468003 881387515 395188963 310486389 846789040 231539064 760991644 328149134 417154878 493864507 243536990 408105280 586473223 945511162 900684724 250344714 274715961 954427768 880810694 466574637 94868787 521990099 864441922 570594518 623785217 732586335 84133782 540614389 204715921 504161 424864562 502025457 52670365 592061245 615458077 437286432 902682827 82718200 942681337 821094533 590459273 2956562 267456979 141559324 830766110 716047906 198327803 347487887 400575963 478347579 851847429 484367624 264098366 556313056 645626253 76337530 694692477 229545277 350332811 38522850 394847071 22408178 536773685 878831124 700001900 930469342 611681439 206063310 412403655 119828039 794136871 786767450 490657250 652209189 898598109 524386346 562843863 504924739 920026967 262667114 862338543 522600154 657086035 701636852 215132484 535106356 899161809 38378626 936974377 147567032 555383449 279540881 229107804 731462126 4965364 403902605 704538492 498431759 514697564 571573100 36931314 213685035 430794997 659252275 739613038 788455101 23879231 547123896 341562605 788699535 427329107 122379546 35371795 538569093 894401339 404251712 157441033 361694975 643216099 649464478 957285392 794777307 753579751 941416443 777391075 223200353 607367397 356721737 848409620 906812624 161648765 16865563 612479861 599021734 257133037 723063701 28432755 339171 534888781 970016371 800993666 85063502 326137092 630769786 198245868 648749650 134154010 226825726 832915294 702817975 102273655 798297954 306545118 738673656 38074384 49424083 247077999 741478609 394544086 182792782 916503937 299025053 34274953 862969274 50485609 873039089 281924257 406119195 61272661 419495445 88298133 35717659 935745513 237133982 437911833 944522303 893528861 940644774 729229609 885194994 373770375 514605087 597448130 244945024 802906026 482613152 530852595 799415289 595894242 364768450 625335567 686925826 347173319 831472366 547210902 79065952 126632211 114728133 352465808 111703583 514918652 477986558 123882814 797367466 478016330 633040321 148300256 541655828 827307295 691893284 317785584 512859561 827753023 690583097 765350093 227060682 603423901 503072108 493431413 654804981 3887481 893812960 67590349 35642341 928079092 948570481 416655809 44150299 230485835 348095125 852937620 707485563 668299404 423142521 168663967 275674935 772384781 840998496 543632037 440912918 954426779 687092102 361738008 138953903 753047090 258253234 223896324 548048630 787955047 958043778 820674159 554441348 263414123 794231539 281889384 761025682 335064716 77819237 407423143 68670963 540871569 966957579 514849944 414162916 476873142 905897171 662245042 361351288 126624430 883368248 490671479 820821914 656510277 392931233 302675926 271983240 49448609 350685617 856261113 629309625 435894631 588044331 38015283 726286739 923444297 986669777 154883877 56725316 651662143 96232304 852335569 457111463 966013297 872634219 211815144 172584507 195338459 440785640 479733793 931078441 787942156 474776162 300877421 663368426 877987793 174432706 72752210 723967461 504623419 851352181 7302907 306722897 722738852 359072629 674488114 908811079 145401056 704820052 71786019 355624979 301955746 303495840 854650804 486246683 301366480 710830409 812609862 333567233 48345527 530040961 571402569 859535819 79432310 520276732 21906995 825058547 561520669 28717466 295440746 702463761 234708056 381052307 189249245 12065499 464178340 406822078 287925970 268092463 973742316 965226857 75855773 727249646 549320900 350313354 448804990 447285028 213981150 683681905 344108737 315916128 782665240 402189864 155005977 849681431 373679366 669744177 867208010 331281702 506459900 938480216 237092634 906344752 442165465 679507261 142589172 707971037 489719010 652278797 669401843 984687999 291168452 561959772 103988427 755702175 429727420 408264263 891252258 951413274 803669933 276731998 32839812 53421238 697871848 561864815 68867958 194315172 922767092 949370460 769215482 263993150 803840063 262322110 328883535 366307324 90683006 770329193 817914549 488548451 84905117 510866785 563110900 571633400 204553739 958256725 911833642 32068663 552925548 235148919 804513640 367692885 938025257 487279665 620725078 498492953 108892506 682224736 651104894 275322994 666977869 986640741 427614264 933006322 15756733 475456487 580029523 24501890 864223901 516072948 628086167 510660761 564233289 743750410 851705612 16934907 55338568 121569447 789560068 501932438 263173354 610752863 432293034 112601092 201704505 887771739 611447665 529582262 812402089 714683924 479675694 74481145 263242135 817720284 553241159 176415741 204905223 470613109 501395666 34236783 850030966 55950425 135531996 169348806 352062298 91188694 587788141 879756705 768177756 109461838 855621883 468777695 128825175 24320854 662887738 60613328 748241628 279370164 743211554 367222772 400358646 874103077 46458624 481308408 251744905 102994411 610839345 747472632 594127354 194103385 669577127 499431439 965728954 764665931 37981545 795786476 320430045 359176630 453465032 791308128 21341642 649931441 566625590 600144063 609721936 463762194 397554450 559074768 358835824 338466976 968545065 353458323 920686060 14926979 836670969 237622340 509145926 247014861 701115433 791441846 213849016 499561334 913722186 709321710 503968265 923674138 758285057 1429806 186883252 319870702 483901827 55467759 828055334 220455608 68306363 784414356 737290966 363105245 586355988 586065618 406768729 655098785 601169017 166343778 774674264 681663317 516374420 152664092 201273229 581018909 201984284 814929996 657974296 305929073 805328423 157660316 159354625 535295714 671382360 773520707 186255043 15872603 666700142 638197558 204490946 33699530 338442168 988366656 313933711 883833904 674523319 268684554 991663920 559582873 304173341 678246378 553213743 22477674 27305615 987206672 997024564 194663391 448157821 694563604 575935301 633208460 462989886 442713024 97809435 882280759 356051369 443699285 192193491 577822390 532677195 731325914 46963639 399877322 878495637 491672744 38708794 903285319 101296909 721894659 792836658 724821030 881986167 227991504 599549091 263606661 802723776 29207316 203868837 318729421 327244875 805435262 10083876 367419504 652012867 72908550 518497731 907594784 546457647 368965005 935213822 449270837 496943047 908678263 625824522 996557101 227426373 928012036 44401416 346806478 80732815 430717861 499412377 615987947 978739553 941693468 489500278 633420207 147800556 58808566 675458023 256285276 750908014 664938062 23328314 807451815 327884496 32753769 278244159 348284475 658778778 600902445 79463093 893720894 54127698 779262294 358758702 458000326 766751206 317030424 126051086 278661160 955323152 130793810 609564123 285179278 556752031 726671087 776987092 223384258 955296695 539176917 233366424 7847453 938074787 548323056 830136050 63820829 6404552 77239950 621653673 162827254 728701844 655252072 864390544 533127879 136172143 538834749 858194212 160253148 806554604 234374451 215558537 185201238 900378643 564928 237832746 30320380 610845693 273902974 190299847 622005572 46904576 593690114 523740951 983272818 667239131 492852722 391304378 599375866 453849476 36428344 370203306 877059691 404824174 933826794 819474871 671347840 132339520 154750702 15422115 526337761 428409502 594850705 15011193 758443140 321796340 831273592 899765704 54325610 190371783 494665384 762928924 2816107 993008992 809800482 483762141 452839486 406887587 535791161 972799226 938377490 387396352 89793974 979823502 139574327 788112954 722253152 258581064 295468631 834043955 928361954 873745299 156839753 41657195 167861937 35102042 789568000 545195487 418280947 903393301 883658631 344824143 881821186 151094691 56826103 739171379 392312510 193167698 871017217 901964531 388033164 836974241 768019238 406300536 400404178 522342407 358181290 839913611 387544697 547037484 586869631 671594585 425928864 422385652 617834058 726112500 659351340 989253774 674590386 715535330 294604512 540659462 332581173 923619403 220810317 237076244 608877831 811726235 62823976 473033206 58772675 227062901 46342492 249520025 335398144 286672578 584835738 275805497 810186726 513020251 334936178 495828187 866971586 523433480 529393390 989909275 4921403 222582440 592182581 877952355 181989415 480447277 972117019 470456742 878493628 850840626 326152206 415775215 785050598 870917636 827233313 171878863 717771719 231940178 559691573 220375975 636038753 382400310 477404589 515785575 265884849 33021013 679788891 949241015 653191212 221127953 84482558 194423302 692577112 508154202 111670234 948932470 13538501 852517331 498195385 205563244 371637179 572167041 176478107 674627470 568381487 581300989 349215685 391479168 439579942 660998955 185586065 215282490 363274406 643024086 79248397 911941380 331314688 392090452 271754636 677444540 156866599 12146925 818733170 55051414 440307602 774250725 380021232 848147614 481219525 229089457 987173290 776177812 161670732 576251816 802471540 309207442 737864010 941745550 137428202 732271741 276647840 711590667 827374255 230817220 456495334 856145894 537569512 236588741 648232758 263422215 686495959 102864597 790180026 635827713 829453969 442142427 887703506 399195332 506268278 39391171 804373981 704332732 201863595 725666882 457712156 16711124 434032500 38564220 528147533 417423231 958045724 554407554 303583443 24299696 234367285 460554847 770423063 470169250 86286658 30801456 594929428 315244419 778787744 251673690 274235212 931811021 146053869 885244870 822275486 66696982 207872568 934559762 164371856 337126803 667615852 78651733 110465539 990754408 59396718 590743013 762759763 35596175 974383275 134002361 411995364 664683116 866787705 692143250 412156496 874652377 7678991 985989310 261672417 544656701 961149114 406023444 615166471 551621651 434964689 707601926 926189671 786738085 666772549 91985859 655874362 129683777 200786125 584321516 679479226 343896462 946426570 838243508 810696094 516465273 762475706 258438076 212423746 220285067 39578581 350723296 192416789 667826874 980397573 469481256 349648233 245565875 3297140 618852144 803223246 601954605 70622762 829230131 455963477 133158251 601725504 481746310 223160365 315782876 830815767 761948436 51738800 885711408 869330288 475487204 896946727 788781041 159045147 934007740 836266234 132970857 587697357 309095320 263169841 121166667 3216072 816416705 674330618 54929414 316473296 771343237 641926645 492605142 84582867 258556814 212096859 948653700 717162372 278910438 745228341 16703993 476556986 134892155 268613438 867778015 154266292 261594028 771817130 194516937 151530603 376193116 823488986 202780819 427983494 623833697 592894088 25439594 915233258 808937318 922244638 249279117 384288892 305456299 977337978 355233909 516024213 251925169 271411922 299207723 74186840 67841298 566190375 975010712 53101143 940077666 772454621 928319073 325240892 247913362 110068234 139131613 768557122 313454125 462341434 31674938 471977521 190485719 81465859 388451327 717078732 933172890 113059918 147612451 738217457 519223452 828224119 762653318 108967781 296753760 224887879 824781514 367896981 478418398 859164636 797419074 41980146 379105870 54520410 840500290 127898646 560176450 216591881 128813384 626122803 578418574 537539294 519327800 541830773 920164908 986438050 587901922 878660848 412075744 631013156 866088120 30689911 817866404 658200877 815958418 546524394 434253307 933113752 763499669 975081451 774737096 913889264 79886706 697704481 93352116 602197371 244322891 528723579 618012322 293172666 199609379 309172838 736940618 34135656 142506505 231972637 572677270 693553507 664181291 925903201 379324261 483102962 188325537 181030475 55000117 679678799 81560756 932543010 495330812 238103317 577800650 623991492 924309451 305344056 271714289 184208922 81451397 232548753 513597025 39391433 506982331 46943583 196356846 267027829 957786326 829542132 167122986 317535972 500652603 864094309 457609284 941386999 421224434 536391579 413736520 739205088 658659920 749585974 956095729 473654101 595978496 381652667 803046512 399036678 815511360 484359746 810705004 119481398 825762778 4088375 136904025 822180068 197532128 554899077 518403337 414121041 24314248 145645906 55209579 289483931 391331353 813991719 428944301 150780834 250570337 143959974 512318418 789111036 863947612 545432248 995276822 594312857 880978964 410366968 967184339 985693361 118235246 713498812 527542866 450407025 683579969 880350094 922061272 768960369 16264157 694386263 59694119 859547356 979132128 174487477 471647208 568225025 48673897 416037906 541835110 245555001 112277627 340177669 409121734 542689322 858588671 556929504 296214816 563513633 890615272 577142250 202578593 661632223 82076164 850104084 320635575 139009547 973633161 549608566 659688044 267078228 632627780 657483580 38187529 283125778 261822339 418073188 906965078 252010582 978874778 815480185 174517424 709825054 92175803 571072794 159806514 391373756 993861853 710240020 923437173 135167493 266181832 99788665 172126084 708293779 49693354 640053859 539713764 126015290 156541648 924871514 601068173 648241945 411356805 365634893 242128557 957937151 618120084 139735450 279305045 343291833 206298915 551900133 33947366 837549190 308344530 244609492 437648420 303458180 800544880 419867384 825358756 63688417 358905645 960471633 838606032 397873333 914447233 175509755 563334577 138857277 696730631 654617616 605470614 663087430 130405389 282561784 102346103 844545006 50464233 755892022 553669404 32661712 300862548 679040727 139438966 653327943 175808950 190436717 128536790 770611466 408619337 184984724 444551451 481525423 883483533 635508627 518175187 299756066 116760370 904756725 100567454 408975895 576929387 959526755 780793348 887607121 854673122 408129214 891760039 547412690 462202376 436883554 790537987 208254812 42052607 302260448 156308225 463289578 300898537 842564547 338662455 448708401 167739628 292167409 44982969 727352857 278421462 501155396 107748030 512442028 157012504 753895603 376535612 717564646 779729120 824809334 675557229 365824227 688110317 709563743 777478990 726043355 614650117 474352603 324815168 84388421 120599388 480252336 340008629 655875884 566458245 53469205 753104232 214310341 642875864 392974951 793218889 243655932 759348975 982679944 208208306 189458608 963337021 37862934 537909024 686056293 305412287 445135993 578703239 509178371 423706984 202571958 701694723 42330865 222272278 586253240 994815771 13497529 158719221 675932172 793895151 21375390 915517189 498462747 987478176 476762193 478709032 50744171 515734481 47642059 679428393 586181827 688181203 283209245 343892709 690925342 624525423 717049093 873586257 111222307 660091925 883522613 549199483 768127599 512503570 106371943 127784190 921548285 282763523 159643076 396253750 153859732 404582340 701980676 694190681 501591847 547537532 357057062 308653538 727153357 478331930 565928556 987484088 852630051 282729857 305643245 174711606 346197648 187545981 914028345 363774995 161966803 607675543 93002959 775787749 888797237 396391524 278300428 296086721 25019015 582804142 633317436 349205446 505236112 345537604 939256391 202176994 972154416 353852500 75838644 385635462 483208870 844145790 514542272 293928481 600767289 183318992 291049458 967979538 411031822 890274889 434301237 80961568 151879942 176538030 202594437 991488979 835226969 477408124 466204361 122599916 473983839 87108649 780406042 531797275 307937790 317209719 397016120 229052524 485510311 425804926 660790931 278187294 154917808 628928811 303711770 741465971 967960522 977855264 647005075 216156914 969192752 672058726 284011922 150779953 617470268 938193274 895156484 284784743 802632342 894035588 795443592 463754992 221889870 901219370 738764721 708350885 40430975 177073999 29987463 846728590 854528757 427682709 277413463 162114897 959120213 345658724 526770522 913183535 63285545 112062411 582964643 522943826 585138605 455277882 115098415 541419122 632490346 997470118 519189875 536994575 392680981 917393414 465559790 398678354 925598351 708845534 721708985 34947087 175338048 399052894 969754101 6932070 395818278 553886786 47121157 856309696 548286574 300181301 29885752 333523815 237222159 950739146 485212781 124801141 136329967 297558040 750016316 373362464 957496201 678204210 711564952 417651162 271695340 77664414 224762346 675181933 820612375 402098920 807908131 417074062 160248866 940418849 592102110 439182523 359021011 941748757 556899781 954725046 360248905 777944350 400621246 318131630 705028828 460077890 730280917 433150794 300880865 548869671 415364746 620655550 234904731 9450748 397910941 548506845 318498470 798257459 889869387 188370542 141145042 819204817 480722330 246444655 874216591 980594357 380917380 644186897 152885278 185868331 404770804 625070771 355856878 706331247 475852456 871474482 887316617 438821053 525385683 836829257 583486758 668016090 81225640 474771265 693981093 537456356 617972060 359059752 205895690 528892768 602626332 80118966 42509278 503216043 518170159 461249954 452893506 21150976 457791642 313460083 769525460 827729963 193290773 92924819 893938196 427560889 195276478 985333370 222556464 518541009 688526110 197668249 799610272 676685188 929835987 352632742 266358958 466647574 94155258 910495611 355685334 501892631 585951627 746331944 484446547 925615512 27544732 546275456 325890797 156498185 568106456 305281517 595494756 110022817 302386906 832408925 552346590 555491158 231992692 54131730 446979429 644480237 748104287 179966979 125171941 500062746 440496651 265139073 728840295 236377147 536273166 897527441 5086478 247255788 31013429 558384060 318348499 796765771 599615992 638420973 749505093 368123694 64714385 412015359 38743476 484422780 363109600 862209780 85051562 418709790 280532096 127194045 846265727 381760384 638138009 87122502 178828253 366532052 516165658 661692609 66710963 776975741 638690532 17169591 157471241 548451570 399791181 561724291 875688074 615355145 712668724 820176440 136586762 707082462 721498346 760289004 484768802 258416032 361282019 635556939 734258593 895424670 422176771 542646916 878026019 846106720 935181388 67341227 631239621 930183901 995408120 972070534 190837416 503475039 741147672 1878873 308769187 278100825 236854843 905114553 896020183 146074380 709881713 860215554 975255900 404369766 655122074 469068413 923040380 765700738 180842452 109486368 742712312 226304847 254203547 624383915 213364406 269956610 146888789 68158966 84466609 503254471 349665837 553947010 943588097 109593024 831523565 782831076 484297484 179278960 235904637 296569362 329916430 936491545 175132614 634681907 659561130 370175412 707224406 867357831 395415536 456206056 389814121 259759520 845083885 385504787 768212335 186734094 786374355 844199644 848772244 506963439 779220720 601110784 384547605 593847349 208648043 821584089 184034935 930752699 878413451 148974678 589655592 822086209 443764555 899022323 608303721 79967877 703063154 239444644 375278525 521296159 806773011 547223226 3850035 747045208 668051964 84323336 786626572 749650094 300472473 697493209 514171997 114782006 693091310 948739964 180169779 751548468 374727865 474816969 513047171 495207400 933189955 894697134 62286427 758432378 882262603 643679716 140751001 379354768 956633255 265941841 36000251 953631677 910446551 800984238 34733208 638830552 905086615 408626107 727689305 665767268 269727195 394280721 791818250 933390868 50865197 568447028 598986178 905698497 292517744 840882777 177892050 441653592 956849905 637785253 770554439 433888093 437342246 73919309 114120182 687591051 973366466 659032813 234562438 752955650 919888330 454959997 785681544 104246169 79989453 874771272 409519586 926323969 458020417 49403087 408549258 523652874 310995434 185103571 951224908 793755745 601429602 979472731 464331025 589119329 14634400 337435559 883956110 455201889 873360336 544441527 172973681 344784067 497847323 216530134 442340593 49301986 132602318 771151696 908876520 115675588 14414417 137476405 527060195 151374678 989423247 672517467 959748617 382101183 486395203 182164848 678349305 864492904 475946607 300702229 931618197 87488226 924118368 698168164 286315391 400170703 985506759 739783310 910323677 110769102 347919393 358489252 609612633 294031806 443247244 637049956 209576108 366186696 772392259 260650827 952865545 384494136 460667427 616896682 397188243 540809721 10240912 393562829 998958714 792415546 805905633 680526398 10894777 738503772 830356975 385570798 328049347 93592978 41976260 843720147 383688016 104895091 652039676 917257754 48114046 877981132 721783212 931608376 235889505 987039430 465039435 488837138 477338968 637418598 224810637 681218720 877067730 908635043 244580119 499013866 745713721 529071915 503095620 117647748 69178476 694652617 874440415 306792175 308356837 939556244 658237454 91910813 715887594 421442532 396767798 49935915 387196003 266532242 231228907 231000299 987900534 922735491 388162451 987990436 708687807 723421842 733735459 617035019 115178220 716058210 663168746 882495864 675039841 353994327 777846924 205110444 374993195 891639664 278816814 227989008 321276224 706456585 870650187 691388374 394288807 994831851 613345147 77959427 552940964 332944299 591135531 238125185 269283139 157814542 899524109 206427289 4107813 67514960 333956175 930917083 273909185 171983007 900968517 464765254 892010076 832618773 906773233 240650856 239738289 194500516 475230787 987751703 928241400 245654154 643717331 513287642 548953163 634806978 555936052 380973722 667773223 620112844 438149684 718056582 469208682 553396741 251067475 985302679 552583424 706768281 490134827 319784386 163836233 145617634 916703600 534415943 710125455 358574276 530280424 24406934 465063945 398014329 865718454 123807609 308989833 888686581 151653484 804852341 305153367 703543214 241873588 259978933 598338328 723415285 695985424 650205424 973054422 102221496 727394043 473495530 249502132 491939294 917761852 209646706 589749930 252880371 540341658 95647066 481259647 627342265 321029907 513535151 45915099 863750797 568157601 842400209 483149589 460117042 688876099 396932725 217675006 418132169 922860162 212703487 937747982 643812387 601344260 984884511 78874656 300764956 439102335 696723152 135521572 954828571 902593096 870951962 775779109 423679245 848425742 386973781 561222330 5883797 319729409 484276134 227915517 935401734 354614315 2451702 650803515 807100450 495363066 779419705 827241918 528311935 808127057 33246807 506471146 760261064 83344637 700380070 712763900 97754446 618242320 84673087 236945457 277701556 406797598 195720693 548341365 350132219 794069076 468756538 665505126 308765796 843177872 659530730 624851385 634103227 982403073 398219304 709418388 175529149 680894041 503554861 511727882 665775911 343183803 107349980 365538283 557870325 182319376 697334474 187789987 875964192 164448390 253258103 281466042 708558070 564354574 89931846 627956282 505513726 336020006 847000593 405309146 442892029 330925600 492798531 860703011 375080778 93024701 217533620 220229215 81262968 427035258 739088234 499345999 836333269 224065451 896489359 850256324 888702572 433499348 801725882 548405036 714841444 972636306 83621616 612568368 702578169 337829532 161414061 747701548 385317835 78277399 375266787 981300428 363288136 408645500 663572845 880211013 350816177 993139105 78299223 676332305 494484539 635764858 215076800 470383624 740219023 528332507 299895574 20552044 604532863 764318305 190387910 26106839 5091994 582175384 520715366 138837680 160587108 665010762 536780828 65809411 821447532 46295442 479372697 462451364 297666063 854572848 497671680 381555760 803472574 462361577 808909249 570722604 2964866 247194990 392939796 427847877 819778152 941190329 21507720 922129005 847724132 666801839 156277343 562578349 657675934 803151239 607133441 598119473 644295877 933199740 395164394 100862881 942526458 35872086 53262999 265202012 734437169 847166851 122471430 33260481 464304735 278982054 614929299 360353831 649428037 581132239 391555095 840581814 520237412 960494309 616049907 275956885 272826834 939062152 897916220 831462479 869710649 522883697 850926100 800636663 710378420 524813499 262320220 387270977 990105960 247030887 351760927 169373773 229329005 63775221 277646461 708497896 969499142 607071023 669860164 823635200 859397037 695602167 135241816 614308677 783892195 962640819 2053648 458997663 476772055 684454616 880460919 376061566 796137373 676015507 70019488 307193278 11137332 195682647 222190361 962875208 41809866 463617972 894131574 385758633 489089996 331354757 291338066 412236489 546371990 281569163 54585441 866412895 914632886 169121539 180614732 321985720 786522550 351133735 746324723 226737391 739869211 419339956 505432160 20645138 798180748 429480781 714252500 596525725 913221404 596129721 595586216 806143566 51444265 315627031 26344932 625975563 225990761 44419049 623435541 102341905 207819632 709552369 520177166 470203395 400904246 88601297 701352740 200207279 332497843 414572093 955988647 805713967 407109481 591731643 388943143 912953843 146250127 829770114 748106877 40715071 22777430 670011927 547001576 517987705 455086124 810460509 787015752 650983918 554448250 409137371 417016636 516713684 720026919 130132634 933306668 745615871 585086121 759200542 184516300 226755128 777359246 379046205 612836017 614848695 790090142 763594982 507938661 848027139 523263171 356191957 254109315 856782441 56396835 594631429 421355296 595027623 544025462 7605668 983699666 843858102 684772969 43822099 376069453 737254115 35488665 140870027 363493758 396927345 493563052 863265574 277229488 264982026 774074560 350278713 476929598 748576952 13902067 993392011 440209782 743297397 976289866 343860845 966054753 253594639 631421105 170234192 341137730 736329830 685873173 285969206 871032131 630170626 842372704 953799054 86608680 563639559 404370340 44386575 266081096 29793541 521106009 17270296 263424875 539617749 781735010 891177263 414417728 432837446 17662595 770820431 892779831 950039110 461716234 184015068 946647919 716147241 718366357 210335725 874000330 296583539 380963402 268730740 70528717 999172576 63608600 298706955 466618986 75246698 490525622 547099403 211145310 113115686 989976330 841708030 149760424 242353150 968159774 781580817 654603486 36582581 10343053 164466957 183720441 699568100 444188773 500643619 71989194 812287533 412622706 190152917 430269397 590641123 890585500 364973008 516103417 364651977 416797952 292834153 37323501 884925036 542208994 55412676 302020348 555220181 455107322 308315104 664251511 854246286 257361113 891884002 19514643 95994886 130129051 593668323 839957904 764139415 144726188 573567807 955419968 796601932 126574880 660115501 110284399 2941141 314494990 84261820 236077620 423241695 584777215 26128178 730913994 273486184 407650288 277360854 57469736 946752980 844915886 674356299 253808888 815133894 53950030 962027642 257486545 744023652 149600744 300131053 942075953 580417115 929073478 582322710 362238878 19738557 911931343 303368574 618985828 762599824 37479053 608341849 883351292 137327600 776042108 607957282 207007470 929950398 648606395 369005332 295200213 708897886 911326174 384236814 757789884 922967573 125795700 934524167 473000158 425802203 107345435 235754283 151871224 753003491 684828784 131324618 861361065 335596121 996960335 491256843 910611841 368705927 631886018 740326628 127300167 115247190 215879668 693429027 743458136 431713193 744138344 655230277 505868888 497629612 411758193 48633506 104877427 583960503 362657355 728676161 531650481 18793576 328886397 455547148 324192872 444769572 642071956 867812367 474481369 24987990 991123195 758642806 934775358 477178573 241120874 935359958 903529564 108209237 976773898 961521200 963736152 487328679 845445220 320250886 326207746 670684143 180593137 649869651 257902303 830021570 531592727 484098533 748245066 145692196 224830819 57573926 941058071 280560579 603315992 530974573 623252051 745742041 974273978 744269552 53051720 453290246 793517087 5164301 862401173 326844064 905284709 185432483 248341704 740229969 545483308 659807434 828278472 978642192 474343106 137913484 432085553 305354226 222341772 146914914 349947077 766278199 858008854 669700837 742246769 272648604 570910073 134465789 942391163 185446129 2929986 844576111 453430470 617861796 616637015 396518907 21793472 100852226 750232364 156018539 767917230 751209819 437511152 324426511 235022597 398834631 131287951 777146262 823391815 580738241 785379875 762989517 952511124 628645691 302377814 288922348 80487167 683129246 983812973 240734377 857742414 650547704 372352340 306606307 702963325 630963430 506188847 626894108 126373220 695236659 255835535 366115928 675496416 60399546 377826043 790116281 685522709 984403614 464912964 816290741 191603179 538945456 274773162 64793699 585409425 352873482 434646944 699315757 604386804 295389988 687420951 853434953 818194020 221183822 132116178 568057293 887771271 109475552 821304357 774659408 501382744 75557058 188426911 19643591 368571532 99264360 732265399 803822234 433339532 765300448 262975712 997120663 769808465 334155446 674896939 259432827 124368674 342593241 449555319 687492071 619739617 533216441 425047278 955615637 280622775 969727007 557030800 623565394 606606177 277022969 318746848 191478843 582765263 373695227 609886070 751459104 803287244 458514669 450389917 850591722 49005053 16985787 834035228 240485290 153582736 591385315 150262022 785688283 570821387 978302917 851895128 32234922 839816353 317727367 475014539 288947627 588449228 637746922 347165768 979807000 512495603 566721595 112560977 290795367 62281868 523851839 350555479 254889718 460248706 721883678 552264222 909601402 320390726 510341195 515871471 519583549 19155539 677355238 438418586 295899159 732713322 815671870 747593227 32816856 84627911 670313606 538679819 268232953 298473439 913167727 147546807 732661537 575572250 137600879 443602893 286872172 683670366 564838301 575382664 6454929 217840519 977212320 587637491 60680267 308346058 359440276 610240264 648390061 367063627 886657878 840570430 875587347 47803527 671056088 125648177 973285100 406499462 538025801 845678608 976287236 966041207 462226816 395815777 341119260 335863483 389378301 683007766 60542990 127402892 494127285 768388321 381289808 837264656 641729059 295984653 704992156 169042383 436580358 272714562 154575583 125893878 104131351 836181750 505962413 146102159 295308596 223096141 10403709 897266318 460853361 167616843 304662432 793078678 222019521 534727778 791661276 302611941 781882753 336232668 981308759 721617839 253498529 12559001 95429540 754719332 976210154 636721574 937409042 271083718 240453427 224233930 814084375 857218226 690790611 623601692 964895682 895261738 3926164 63880022 682712980 295568350 755613230 601747133 18506140 973195174 617089567 194092349 109329699 145277894 548806024 742082727 419153748 22541875 438577723 723178820 799088057 873838230 914511556 919306726 118809584 812298123 88364196 264905369 788454346 626047088 960023862 361170591 37110283 73784822 569939003 830714599 832344573 239532254 366351945 422317911 459038478 738692099 359172532 428434585 529000558 642552783 33618721 657449402 827500468 290742253 139258123 827407228 770973263 374209495 547361526 190133552 305494058 187356207 387693284 962481269 394718375 428836786 382393969 170066988 689757990 426775642 71790520 355308362 15094489 19822197 959256518 326088708 85770420 54565674 664345581 639796098 479128718 330522459 415071504 66756929 440691792 723420997 909876701 303835272 341643137 802372338 937964108 636614835 102385912 249874058 802887940 664103020 766123501 619703168 551066271 53540083 308212507 40704471 706405064 20707607 764945941 603938925 27746332 990873732 170788143 154200900 230764551 831905338 718878873 48111965 614459040 118360053 628793694 469466615 727875041 289575827 944072010 10318013 179585103 328712386 969049380 247199520 89766692 647458741 979653415 195066875 920248702 248049073 502841642 720549363 436561191 336822941 194179125 497815985 908338115 799061127 890558640 746821060 670721856 990099506 583738112 863023401 946481881 421758563 411122067 475264784 523330859 121629931 827503595 47506034 96920533 670011862 488358337 861364675 204018446 788484404 197512991 14416084 790166773 945901710 443900119 517345026 52152659 255917041 67920875 185456478 150124676 368436995 721990701 681305114 942357382 238215984 114260242 817234058 893113647 104197658 799309269 909209155 746275301 555939092 744496088 225037525 944693105 464021514 13344312 424279118 657178523 674703051 14372497 844099263 355255177 68353885 854042877 850841110 611821105 821325596 212209624 511037330 745400362 840245127 648123692 977686906 947464093 417980986 273577153 612403515 264837501 344504255 912967584 389287344 151108691 801380685 656150396 759459752 887647893 943263704 327151962 324941225 26157937 981754708 141824537 491079878 768609768 933395474 572569085 205258460 510594359 872412350 834856367 262429665 522660958 189436566 137715098 71334333 33695271 691994699 994162702 697235867 968397381 149469408 328607166 921810846 863898977 689916023 818808092 239148105 773162425 255108406 327921215 794616601 309789557 519640165 841009410 286453355 393457960 596505873 58771704 419599807 750659254 360701367 247098880 609542587 370451212 197694000 604302033 562557369 423134745 275293716 313584058 435493912 625805827 503012268 541598756 296890747 572648819 166848752 595259411 940726103 854762081 375428921 699339456 920312975 131956664 370884628 588306798 146143750 993268907 910693196 129794951 996629678 562453836 888819358 955283874 71318007 950480104 290300203 556626694 436257610 162425674 649175797 833598333 978474399 58332955 752850771 682516667 773321658 315350303 212166132 83727826 327005537 382792384 119498116 30830943 142685818 649381141 636704726 338473741 168233624 307675360 679569288 309087085 274860177 443403987 385175942 650127852 526456579 562669840 796579112 138698021 919401916 364995464 722733820 622385166 372892242 775640992 573973657 981771707 893391934 736323078 771595322 932980258 20164780 386216905 60393054 579693090 613146297 1905954 347294889 27670339 533925365 528323962 462700431 865536342 313710268 524213722 736471101 98148899 127620875 559747672 438203768 474728117 571201511 912847080 742411282 549882655 12228099 216924169 338970079 18896188 314056685 268688119 235922852 517939782 161279194 983235672 827284620 961979179 661684357 797253959 714135330 724907740 466377298 969972006 887675285 115174560 400839666 846474989 508191525 584501841 102493541 672650639 852477845 653539741 936864148 331914938 579251362 334843555 477129834 107318973 906069171 6170930 12809481 984820133 603452483 23543269 61208271 781226848 56883485 876935824 865943277 189675528 494785719 696920277 151237564 320754183 670065199 933059183 700440119 94783101 399140278 670538491 932213705 838889086 828341843 424996603 825149624 705600481 299669648 472425478 717928418 680509610 114410236 885262015 13661983 821611375 593979936 198268110 350679452 176993043 970624335 322804460 540165495 27691306 155597180 362815520 170842795 623155559 905275259 321528145 794178164 540608321 170661820 332021165 489836672 156929181 887726352 362593695 455558119 69847998 104225214 396917729 107206093 134309498 387448538 608850090 437424126 963734774 153766160 316587007 202433982 902175816 230932280 184740535 432520399 871988395 848994822 222441713 782609520 632488519 417989802 252395712 296135628 820839238 329532130 62033073 472339808 238518800 506849238 900349973 281906687 347608289 716273871 130586901 927669400 559269560 889621092 747913975 316062936 370213481 20982358 461286834 830074301 992608063 20920374 427663820 581551481 178950743 904564919 9742358 906676828 753928756 338282544 720741386 921940677 80375929 455780054 646862725 578011883 688812030 269286150 35214584 948756618 272601495 31330983 906409684 145781603 411089228 673088166 987428015 938414333 560840726 927848217 980035784 269283080 232127912 557536003 491101068 328792899 924461648 400945140 82712415 154725613 590606515 595401461 82635754 201278488 641061738 708126902 470292571 144406027 993116387 704021889 834125751 125011411 632697997 67744511 446014279 480639385 338251918 983781879 178034030 719011320 135779980 487485562 475048458 730561108 154835287 185384727 984762539 132642535 697950159 592623940 629587116 935727235 437505441 624713049 905310753 354924992 936614848 902971429 449928559 559293188 615992199 646572220 43338464 598521714 617277807 961336362 431843574 244219265 474919564 663869035 571007664 936061039 775965040 280879291 14290565 599237715 562806099 127563544 466540212 820660963 41141919 601192257 610331186 918347140 5921406 669961474 440939334 158652044 26232696 537448611 120250179 712809531 996691779 85710538 305011196 104782230 719934856 131171737 817610952 549698837 453680795 232223909 899821291 554803025 226749348 415925156 199189311 628233058 360816836 606129312 844663079 227777089 987883500 622162868 965967893 85419828 498215321 795871795 695696701 904632825 168531016 433741279 870421470 85443551 560252250 173232829 962538764 810648965 840086961 210042499 99470111 150754234 901302554 960805803 5171395 957062413 363392829 53859095 157352149 993087896 58922353 406508191 831821683 887965019 864340151 627257957 26997433 776767732 605984674 11974709 817662096 86316847 329360109 865434878 495097573 324171112 699599362 476700213 993596250 857251973 12036429 323050962 259191288 397199589 836567702 555360095 272565491 54262866 854443498 614611315 883424956 565151152 729171016 411231406 526737355 610934296 298430387 927534254 682174645 529478644 964237285 717802650 220877287 873973954 281784854 538338164 140309652 156600703 107169950 307943038 183040413 296579317 724923917 492616697 40857040 32663231 692464323 750267640 297516995 180245572 56984838 625576479 950767753 364337864 297458452 78680053 933639546 888933976 636959576 151447706 174120862 27136704 754621684 983894390 354688796 684283158 104411722 14916911 130897205 114005439 970545739 975475228 494542006 632849512 501136528 845796425 520210400 945126652 12375292 821120782 576429509 46047551 434616116 336340386 389291097 788461926 264586995 340808738 772243476 314534082 509797664 58226657 449654954 197186765 572616797 5631302 498675152 527008691 208482507 807283634 672478073 162468566 642398447 858080688 27157243 405981619 496350771 257616539 536502199 412741239 437042866 435875663 585226920 481966526 461879451 951232538 213855576 456540523 415574896 149936468 175722298 47280315 176074286 839091176 168745270 874179214 896972701 570021205 954234789 820402557 857169217 496575641 770673618 675370625 291804470 696968476 833389805 426772121 296750210 506621040 159229895 84969880 651946799 388802883 65011818 31734080 271097376 63200923 346391983 636476243 599840884 670003416 416123828 522087121 147010775 81365411 336881676 935181382 832410736 418390369 933987225 410690959 784552467 16857814 77927996 381418169 111750934 111763241 305380130 599622606 889222482 867909589 676358754 690914508 688784287 40704907 613642580 53796639 822046646 950698647 543868630 970467564 736230209 137312136 582583292 774365785 647267752 773168868 820353269 925095653 591989951 630779918 966904369 382630177 53871788 79263351 36197883 721349886 730824100 200353766 113080283 708031595 754329558 578346707 861892768 742163260 496592796 666903207 540150108 624953770 73245086 564028845 977957322 218887365 407594418 572747434 781410526 854474013 188052442 16116617 111858709 283690745 227168744 296137048 96243181 52725271 631918208 449431075 55688341 471375065 731696601 779168003 466565409 526157600 25922274 253015124 952797359 414536071 509091668 32668417 607987654 734616440 641400912 904121857 224201876 389710567 592929754 298605527 865011259 814863065 310678618 816733127 841196879 316913234 990414740 483443912 934104770 151747870 298875375 297005850 529309555 666576410 739396446 698368302 804677048 277892473 636355542 233280625 911637220 113753158 950320747 661509489 525155997 830370042 235137650 686118499 292991631 219393834 552261880 592061138 945900807 975065771 66295506 170964514 125868676 683977975 401616366 26688877 814195915 72951498 896301446 424700142 137776207 705717900 42075793 480432039 673546910 798245203 452904779 988639045 683373246 398831761 476706877 972744718 302446877 957938926 795241460 594154677 736743046 943438262 922632295 655724683 827394260 551983993 298216649 601101397 689790902 770898408 299972100 293707049 825415926 623409921 855335797 597258742 961467534 198640004 413922288 394920820 328584809 461444640 441221543 294821874 388611594 562588503 251295374 46888244 740164703 496213468 544787101 724004816 73728026 641344821 865862093 110687129 371724211 371336025 376155643 614752380 55111527 199717733 716218561 47095501 946677527 384139920 561115793 961994806 308196814 40918678 447879667 522467875 531542300 57077889 191351902 721895791 77518097 501836705 564543137 770034961 393424206 144531095 704851053 304952647 782708504 687804179 71226151 712981382 991334603 479848990 448908002 976788367 891985517 431534543 636694995 313282015 727390342 894451581 347640721 479339738 336383875 973044627 488006192 508488002 826823740 33533283 203521388 496296651 460380003 364051818 812291894 887751237 782446772 684331635 70651366 289821611 718072287 505305085 291936426 439772427 531121333 318056060 552785540 586581486 409105284 139979961 688793751 621501965 982327868 299978295 426544234 9790617 561769282 254010358 862813083 28472831 366705587 250085002 953446490 104363431 367270772 790230811 863213366 736878046 655634296 999248784 270962010 51373942 433669236 260168034 605800429 919252724 440500997 873097135 691833727 229790482 442126151 920059673 992033693 535848193 868283563 183684152 218267391 406568460 320105241 842426883 852457707 292006117 323520766 669791886 501754589 281661355 123308102 282084627 786266140 537037899 266797980 763628352 540782843 873187965 166080589 384371102 520256779 62259705 983116277 971632148 534328078 577182272 422892867 466106657 333887740 356347908 315361117 952299025 715648563 679730988 591517301 822061338 148216609 126584769 495068254 79122933 214907777 148660913 552648055 368884508 155970900 333041390 791544983 997883368 115483964 554473646 847616177 923373088 937210504 755285050 740249539 436123934 59979569 295310332 5403881 899934337 401409935 986720009 434534200 249168301 945435682 288223284 779203750 61365987 671549235 453164722 373785395 538719687 862659706 630406960 602544577 148295290 55805850 352634132 737076860 338032756 851584889 437064264 233409471 31304653 51577736 115077455 731965202 688802590 456550069 840198920 190622531 112917212 35276988 524825778 837353978 926980572 311583444 131298662 165783475 311189234 891398814 540471924 855406326 14573119 764145375 203501926 961920131 478738305 664912603 693097924 594059861 447544720 76323452 681941872 993726008 989671645 91615671 49178696 366005358 919844858 804978643 209880582 620889644 54351005 345540558 300370040 120049330 582974000 383629913 389918621 521525645 731191083 542531654 108913957 803762572 406105130 696307172 417666788 543771816 525267916 640949949 476532919 383566888 544873326 776905094 361501363 524966347 318173180 589720589 340192248 308280913 690871489 520378318 704573312 909119331 295181673 580155944 935163964 854076779 236370667 412714369 54076857 969925244 881800040 465673771 114876757 545507195 963986770 491773667 852291343 461271410 387835837 744528046 851932782 430115935 700813766 919632992 292229746 627502748 385580256 997069936 830860257 333396598 649982762 240877579 925957026 40101480 382675461 804223563 158928982 33416096 108131878 578085092 224110834 243731935 469358352 547224851 127251653 932999995 310229376 182638700 137894517 811610744 536623065 421507203 689697635 714989413 785043850 744281883 234307026 820612753 940218968 937706596 334457869 691633115 143165380 345722943 463315640 58053049 482284835 623321371 455779514 276099203 894373248 435815017 706689535 859530355 415865373 461488372 425419848 154568337 59549500 119633010 659668207 153355225 191435372 873576121 536754610 592784830 409032208 767399800 315452280 616016999 455827685 985569743 923558768 887857769 500888596 810894277 648373003 258605056 456112285 272008284 140765531 913547822 561174286 55834884 809026611 217689586 395336704 364914552 197087254 812589524 103086903 260333081 127994315 660284361 88000794 353211414 608946733 810132097 80574748 675471660 585417960 147708277 34664260 7323930 532744735 16494164 16693288 18779235 648235115 228967904 344898063 425537086 848095879 152419332 289472856 430087926 898555907 144784303 262739471 774275394 913444870 432038856 41525848 633732904 425054236 714682861 233692855 365889867 661176492 179085106 715394495 237787692 685550608 829735844 657476889 222715611 306312819 231996259 424962881 936619338 309432910 615702361 182327490 69318699 652726035 586310936 591112581 326045450 210506224 53388125 334714989 674274073 268746682 254592242 997128352 909197799 387817208 577769385 415629692 296647962 706057461 210721103 311551196 646256493 586581008 283082571 956411943 717297091 238486133 388350530 764732240 278863006 702823950 554382951 987957226 594006453 595372817 172923518 377458913 662915002 948183741 508994023 102626936 546048347 338759941 194639341 437863812 791957662 122878648 351771304 441177489 334642021 589869579 350922209 927114714 10715034 166376009 440468421 214628133 613965328 364452562 693801613 937169070 884998736 773225524 879548500 188848850 562070638 312599406 676209997 841316739 553801191 42334608 20070346 996217009 995813344 306398959 490365777 469347399 142543258 506375472 66583576 597953129 315007621 341739310 666517894 647215904 127498287 335439967 494716960 960117393 65196914 182488419 262966240 305054192 724753606 528326166 7644254 799828569 359681201 715930085 8268180 166994213 694005820 54821274 749205390 1941944 279301942 326748100 775708518 656969467 900551135 539061258 92025772 168713337 945711533 516445285 829480966 21203617 85658276 13825320 790865915 164531931 619044491 306120200 702930715 754396723 163962879 622411549 583975161 947884058 855544216 52789896 136535491 369884726 640290761 925395555 623627024 939800161 161806350 642211305 965931583 854639640 782675648 315734463 37264956 89347464 683859305 330587517 620078280 301323676 215088139 773779384 912761528 655143647 170153352 319988289 200196487 917056917 103571713 631722587 697995900 709526871 247927475 369764162 858719166 460537537 212981684 665718320 901120914 465992873 532933128 510158664 782021601 560412036 59332350 168740712 417419312 545443369 87061757 63421926 652271503 283546031 669941123 266069243 396967066 760822833 588768518 775866562 173592364 178181769 788513424 422157066 750506345 476171446 840244144 724303280 300646178 229159397 688350319 73340676 144372329 392737438 405101866 667181393 515044847 55464383 232220117 603949604 331616376 136265477 663188436 608203650 952028620 295652590 447236552 926104124 600080371 955752885 757094621 933428607 210536940 629728680 404688491 150753740 957921758 268191159 766466802 162476244 632852418 291437473 449989764 511083453 2002450 859031747 44045588 648923747 900938536 253611508 407969907 290628754 416844977 836157634 205376945 794417240 846251574 523972937 223561690 773119612 539579699 728396145 113748647 472228367 12565352 657441518 359446185 881950677 975456943 334174648 509234988 660783611 794530270 620677713 368872695 302058596 498321561 793843691 662822363 868728288 831415533 756958040 545831749 531050250 601133860 357606342 130330427 755072613 76128556 801788214 165028364 284691788 735811276 624256102 444999076 180554899 76500710 171723569 684950989 806220196 568976218 273826517 270867687 510230418 561663671 810972969 984722485 460648847 972357784 556976768 218873342 896969392 666187674 887050277 624040791 954100329 624829005 373811186 646962720 342666955 343371135 819043751 202786106 269884125 732888589 489819 181868664 692029439 611831865 917705409 473892445 720080864 940664681 996358370 378558481 961611273 956987954 751030732 391468954 123081149 832167870 50870529 605776007 369687703 662718690 722656418 998022556 817297987 296182214 694067512 706953152 774726499 458074603 715537948 389724770 154948919 403336623 883877354 458814642 270702782 754234487 394818517 548518115 732608415 964948772 608227600 24303115 804295451 276406603 811508531 715990287 230274152 198908684 527239730 319772996 133599975 430861976 442121087 720786360 813442348 734740596 650693643 436206406 620967301 660296382 208038301 761770076 756716145 590650217 947813222 550045599 277927679 239111464 518299025 118979279 624935889 731675351 49466761 750214716 909294923 872048798 471465354 929270586 928364477 927627841 523311896 80167112 767252346 377657823 762285157 64642843 956370629 688792119 702818826 359828156 405030813 832148957 669047136 460561959 409419248 988247947 584120268 540604984 943439390 189055377 71720426 370261017 709712850 700509298 513218128 657778609 221078695 512160342 160903889 137867252 655539607 837674532 272207458 141705845 599974676 424553414 173511086 447452044 771203655 531604576 448364252 583741327 321566332 296294917 77024203 647606166 631220674 387405183 112750517 82267318 186629874 519019341 779469403 565182826 541021624 63918430 899823460 109595237 77847283 21937317 40971695 169380073 74926462 352014440 967276812 4575802 41438933 752901609 137606035 799338270 148694217 634103947 329503025 162420489 183103394 915281764 880951827 987199692 299797883 553628969 549221012 61730309 238012910 972760859 825243845 277235499 310111220 195480381 153483798 253098334 9657204 87828393 230282485 362271886 294779506 527558317 703944460 696072902 984742304 15417698 797330312 402054453 458506094 428153568 16352275 415035705 352677538 455855252 833857615 88084679 961261873 644743148 362724720 544591435 811190790 700736185 357942768 415257755 623942518 550810487 368870381 438497194 90477500 375768858 871226736 312077940 376360148 196662741 662471700 20048033 122491941 925373945 224193067 646293191 969703964 782544289 455876931 279775844 624276699 850695610 664375371 865166353 231758331 873057511 371501217 941824412 922358124 697124627 736726203 937251874 238540110 618198965 569499194 296805241 473354450 155926780 33939807 407347341 953001563 898643601 7979636 285743221 771556946 123942074 886121682 598144520 950815998 476595681 493156341 803334604 277314930 387036997 585158716 283946754 565043495 285976987 414767859 282442576 122018294 973842132 490834145 594049432 111588258 586092264 487292026 755204184 969672701 273278083 108567812 222276509 632778231 567666692 66526978 200258455 523220470 567648052 952367397 98332499 266043795 937876318 123047250 418248493 532197160 857683513 375836032 27067942 789164239 626151591 154393646 777911341 865706122 253051548 183510774 482834523 715222753 850031625 522151053 647374835 567944312 103403214 593360884 438833531 662451882 557525144 220239683 194945633 899166674 31040230 457043179 876307120 641321920 612942577 293049804 997837109 934888145 231714916 741967612 15024023 7050463 103410139 457558650 540423009 288740818 569741100 396005118 437108501 263733570 233216776 860652156 500095114 849156331 797908913 952324394 640230633 499696827 472174975 649578874 254064181 52169369 470710989 227336635 710006079 768616684 7655578 358057248 131664123 289284935 837236637 557888900 102226127 800688195 875243177 601026958 82711230 940904578 33996972 352746117 466052719 327104237 414612123 656160846 495154784 134814118 435444817 430884398 977684541 294856984 142187382 322427585 79858268 499277001 158728706 293189994 327639133 891960133 822835313 376139537 787486378 683250932 710233896 326272723 816482978 44004294 535058894 195593137 123859070 91385496 211566927 332974771 508835577 565948638 963339927 823891369 480009015 706367540 705405836 166992054 379254001 170051974 426692817 727828978 798159703 439940918 257764678 582952168 880042536 477712191 404116292 343952806 833883906 38590105 256628375 982960183 364554985 494183644 840860702 323085191 306924338 735787566 293483101 415225826 783243603 997249935 179436763 632139620 132856177 600147654 601344565 706924633 444645992 150186333 138752965 300274259 706023354 386615708 47609315 210505092 76016402 583505368 279479371 749653090 362445863 407812045 293018593 106230940 516060100 299770726 809225386 406381066 579979962 795769667 636437873 909314692 308728682 530864286 140907316 425662250 94540634 488173182 748669874 631657387 363555031 13971803 506223646 19279303 537082361 260746911 328246178 50938101 501789573 988688117 407764937 831580959 658277866 969589080 653126121 368566591 236716028 731603695 761717534 516014873 640512025 765768054 714784755 697863940 237005587 416742552 695832138 998667082 238858760 778869032 174662911 920774979 996237967 175171903 88592828 938129116 619044567 800299109 705180215 367035864 994587465 337522269 887019110 598214704 819643190 140599336 957429885 997011014 918948947 413840153 275860005 655576845 319476129 488612423 934120552 901946226 917038242 870026611 220812377 127296970 250638991 666701432 566668938 932004403 685225120 541776268 382947685 880704917 353279555 712223769 210655978 658898967 228978379 412422645 531788895 752886507 352525762 482259171 356532993 244170886 149038685 183828923 182290542 332111096 405152549 527659549 458644283 814888462 130903147 733194884 730440652 515330405 884598989 991925836 696693111 123761729 636647754 180515357 909424969 708464080 367632723 105196498 51548329 865453851 296106367 464377188 273213499 97824890 326548928 695967519 730785689 836903479 687338354 569200608 24057775 986502284 378067586 756876381 63248771 772264635 532088882 915696741 273077062 215020049 721673486 770404402 833808469 206102758 528307706 96509383 173546805 916334431 48316788 306459815 244730565 16196453 63031180 152099658 409704967 495230937 388596379 764192012 408011231 416394043 888143356 392132064 760062413 695107636 466258173 373115678 421007017 332705570 197956407 794566104 588058627 232836819 901331450 281901570 248444420 149871833 836207334 964635982 291481346 197295048 378682183 755150772 621768702 608402331 927606680 767145878 851488345 949850210 25818074 290776240 95024076 212421515 98991943 778387787 928072291 891155366 20159710 97470960 771991573 846281035 591563186 490363549 622343443 55096210 531161628 703878644 340207727 646727314 17409634 284602095 608243499 580777316 847719824 65053635 934188290 896699004 239036711 412985961 598066798 519381255 237853178 691294497 608539463 652422328 301334035 807658841 114739359 273671741 982250563 800914139 400739354 274201734 836158068 322286570 228356235 572975433 440861146 547151599 793869969 124240200 191359451 973348619 274282165 214584700 933257143 776293848 340808957 895997109 129041971 564811071 844156301 943597447 884530964 178658669 634027664 724451665 227070762 904389128 869666846 778030870 922964261 158540929 313472287 450835720 900875623 627233481 960969890 568302230 95189403 154918897 683950552 548669470 672594635 569477274 837876892 321402765 833326330 9994709 642012930 960106587 843089300 118189514 105940927 935296183 674262603 381754154 317774217 252382684 184515561 693746253 120406945 136503948 100083849 225097096 317289354 596441608 310805844 153294118 774885801 639773231 631737135 400324816 828295761 485354021 167508598 289348002 456711479 823575656 835081831 998889759 717214646 984615647 59864692 224739829 234543178 266022072 709023210 400359842 801054732 463214362 806429942 111310808 807670190 800194942 543873997 33486824 190637959 839742387 218738580 292545131 588511898 552629790 401280594 255360442 596306210 566588697 336068413 436643849 903424932 521722519 690912665 367082383 407984986 366968460 980181642 890429301 739648180 275520827 536360147 342120999 476740343 534362229 231506573 65451146 648003124 542928224 663865894 386837000 436894292 756542403 80009713 509423568 945029 892045831 799761128 653609103 587195571 441451231 491104459 160268904 170272091 493129889 770834654 89895039 768953840 509786462 423927058 265872849 157342 800115967 613215737 65654542 56383265 620511633 464612694 75033993 815284932 743906938 315801635 540027893 278835555 779929308 314372218 2205598 837584938 873591469 628218771 801884159 599706099 752641267 388808175 536076510 267732339 24398680 629211789 500163740 907564714 58894998 166288519 434914124 369818605 871121258 256941490 326652912 629448390 304981641 74866960 494255969 456037907 206960245 536364728 706903050 920220214 601838635 305233572 464411436 512268126 241196143 746880175 302830796 274786618 556117240 152870851 683660206 528376690 220902342 398006086 241661068 868740549 671731794 395948704 347376590 367051907 103696172 438650755 893303476 815641973 674291140 487743603 53855926 150213025 335393911 892196966 234842059 186292768 279818782 565366853 593986843 279606012 661721233 990857026 728653600 287688746 875736958 237827836 673980112 588599767 14909889 391312245 280861065 214788296 79676313 805238888 219933250 926009029 906622734 796325812 659828024 647026375 617246763 971401741 56195744 83525936 989649545 942748623 375110491 626764534 723231126 57623884 206777690 939572392 624952663 859286104 998145643 767347041 866433952 24257552 370087192 582368705 402475438 579196937 183854389 979371059 37220297 877879718 916478050 365560211 921257249 999294657 453380819 515825463 812977039 227976770 920591219 153591093 299444735 267917091 882594796 18371533 34902108 306171668 440955326 592889164 151271315 718277879 992191442 338535484 52141391 862916470 141542338 324352762 942709934 573042193 780243395 668028341 710796794 314761842 448944853 114044421 714030356 118071271 671119288 429128201 354324405 214004657 283039890 516511328 694060963 673845821 411543861 590987160 251409976 859408429 914770243 43006144 517983865 597507910 541496530 827240170 187676461 945301387 208437561 560303518 596788856 679382213 703785476 405495675 960233480 270206337 452491217 337207105 672679460 417581492 366147358 640534686 127855665 20586815 120714147 419267619 311970959 460914291 448171826 864172623 921764082 470767042 477858658 878907659 275761153 372444290 356326811 67962814 212391218 659450124 578162307 512893141 665349586 12170284 15946855 909603794 126200424 922216607 165492901 833144158 785369506 123004375 426722756 641296366 537783029 553344155 759707915 281484556 962936059 261488202 330009813 799062014 152946221 833373378 279434686 648991584 627552924 591801943 511636888 503029886 218332590 687102341 962078097 266936207 6935001 341479109 274524559 892027824 757875497 101718095 221771330 452148630 416894119 329212941 160064157 29876681 190840078 41656350 722745097 820118193 419808156 431363983 670373855 975982036 400438778 410703783 422116025 776954677 983018882 403847417 758401292 392553799 581109924 449001413 913211832 71934570 272712053 754657631 302789856 327361833 512389786 616418816 454025649 854229407 819809475 625618260 901357412 972522786 670608760 163265228 586115268 241940451 315547650 308353226 730184698 104261783 449531052 236997748 31529501 955092079 148717160 642776818 788568624 805742763 355465524 351152176 884381831 956017862 970587340 264764166 872259794 957280849 427440192 301098181 956235710 701441274 489023928 658223592 870202287 5191126 482326672 413629831 410051758 586578462 769496447 802334312 891430894 311225496 645809073 18110612 326148885 533361925 501774848 414059789 467366171 847153824 983299713 785909940 692663173 971115542 632016870 358042760 94536665 89267355 727211150 326756054 54946306 303633608 452937791 264351673 223137636 873793207 632267589 21282029 185578414 436450370 67096797 666151555 452916027 943062609 142778872 527973503 513479749 669725828 137226118 134335030 979402687 604221685 529783562 288132957 480573657 276008137 918744168 152820366 978235070 747181706 713487418 721229011 774328392 81104840 839729500 771858558 427652807 873597664 438027535 765972183 888882767 745287129 343084174 814525209 710270484 118049562 250639701 917190013 132591910 289393456 113430725 333926497 407577651 939478509 598861683 322618066 688051948 316025963 328010651 715061753 628464892 26291445 253727484 649249541 995930897 326901905 105482450 297094367 169558358 462857968 236350580 770983832 396904982 829171500 209394773 722146945 53930338 989952293 147625967 926728265 267151911 135088981 104973664 12855296 553005811 609546271 532902923 674850772 768886118 674984707 308170300 20889044 68682405 48556480 3404782 458965175 108024095 849992961 9878800 26849815 911342334 24128512 369533363 428361246 638333854 16330319 464881801 405259782 845937026 467408710 17385551 690102070 587462825 215712524 976917949 748574143 312452268 953043708 643886450 827377606 943718145 582185423 138171597 394023040 173922822 618361033 363082203 988369148 953504001 939556757 849452052 787606096 208433801 946702887 234616603 20570822 749098151 925410368 91876159 900943766 748810197 775061601 573764799 941744581 816613399 646772226 988300421 737132263 854981289 134918123 981798657 220332830 776480282 875552345 404139545 639746139 21428042 290630394 178630842 267616672 817121755 357111767 991312483 469175370 487768328 657056719 939297759 758473752 821597050 353095019 310659233 228195230 426236655 822953651 790816211 187627437 107382328 140878004 370219848 189235114 661554046 206397768 383711450 301391480 492958539 8370048 390812576 852695317 924072391 128830647 798264775 127887008 142841210 606230160 201288332 893769855 821743165 28722078 745674588 812844297 855470153 826830921 385262437 751878945 945662004 39559783 815376140 407195757 758111765 23391933 996755243 151162771 858951991 438788930 47622349 782845631 363119496 672588186 603368631 257033784 175578310 82652175 130611913 338733397 478204878 829798437 888157761 205080307 5343791 183150734 443947298 707299438 756236891 138593799 805941999 274562240 190930344 83828697 213529041 915194069 860888342 541502073 496067968 174625706 696990056 500842051 947841676 802853011 381507734 804384216 514602014 85459738 866011802 831462683 347098739 561581334 344989108 251026766 390475372 979437592 17237789 347074353 998391500 404524659 750621702 715145470 346630451 688827608 664674005 373853520 386405101 476651181 436200949 145016055 73576907 29293484 50035886 591010213 568641198 312994233 121564934 926043593 470049251 117703781 64649215 975854997 749656190 661972247 335844289 521115705 163003873 683752266 147868098 401978964 791932694 758206491 905925661 78240418 433470481 518752250 650448564 519837741 611463921 225889234 259293482 415268477 169868682 81533815 597103799 914556840 938485374 550111835 274830258 677106859 529552664 371322380 565085031 63975621 404538687 99280952 906577191 738880999 303316927 989638461 389951722 62637198 61801933 915543292 853220738 116633179 288847579 333506035 577657971 43474874 672836017 644671552 599929055 2181710 598840406 753711927 988464066 726362437 166885557 749559147 783816186 836413885 220706735 748066805 673578797 515389890 246682404 747811718 282789073 822108728 140325168 21267803 878698409 685393531 548233285 331983408 946147616 262970995 105852298 952645936 662321798 702225372 661358205 806819760 683414976 267427958 325642576 886186740 975098276 812509658 611167946 969446060 607845095 768689309 968643469 560056840 807270355 870072963 430537689 405505435 858677998 414653272 457198637 971680741 373277415 883517026 238226217 348209625 717831794 300162874 493567897 844919780 722445657 216635566 90681131 219492854 497867940 754944788 367161340 897041908 504090132 655423981 765107197 891707432 906121493 287324572 263212747 422068650 969779582 287971855 895982880 440559737 636918573 342608138 732101870 584616871 222512464 705618413 643132229 984332200 846235931 318498086 860142153 947300365 182492401 371492301 106828871 271211615 506414315 602159542 308548083 999107824 607582375 612901101 952416542 97018099 795102123 280079443 586282798 672528948 300753244 513581332 946292266 124124417 281764328 556343968 224191385 46449880 535317186 591136409 901425365 243307855 923139419 759469294 689643051 545876930 504041274 814910303 285380159 186307169 64305303 187731839 63897016 365689754 849770476 390022772 660851708 720689429 479363848 464933028 63000059 673703041 354243162 369898932 108580119 586932246 956754939 692002711 420775670 624778174 509928368 900308955 897700040 275314373 212395340 146781529 416572800 710310646 289366221 922778301 504292068 897620395 375670345 941035127 151955133 185089287 77250442 658057432 264563846 819016896 621326340 214374036 972393060 538063083 709602501 403210471 351998116 991518652 342744959 849287909 345717027 751450508 867104780 355497664 755386456 443899415 643654753 883158504 780490731 888083504 57253151 510913112 401656069 186009609 276083118 609457086 826821652 376876965 174219085 180052020 694429984 409954643 42729561 879232034 967764443 504585834 190925797 249185935 51260956 675472674 808829943 96446216 131454770 759430468 749783215 530029591 526546884 379371222 485916139 460929586 551939376 383325935 136622500 539631753 812884476 433736593 961470375 468822566 765416506 212065422 328722210 133336161 896164873 458584564 535764081 185338746 991316383 493695515 465820621 484173919 78144208 127358454 759410394 924278194 188458146 703415385 435509756 603248723 82245832 191775566 6420603 201537736 831280953 113373467 644755785 652971223 205000086 307774471 624555259 845838814 95266849 664189834 796043407 28129263 770990789 286130778 156321504 198884477 561911775 544344204 860978660 208262146 79201111 741364995 497258063 848015486 911402918 882643560 922100488 432959483 913163898 64719920 513222654 974221393 769216546 547104456 476082764 946925527 102443808 288115748 527657508 860034146 478045708 56607532 185005440 859788701 966611683 291628117 602718999 503130114 189915366 701935680 578181858 719629015 98494902 911206228 933012195 238298925 535053224 915606301 930070287 684302088 358306868 107714138 456171482 703146744 275462995 784804848 986957043 875676945 368472246 546438297 279665439 60174005 595661424 385552999 878573130 881601251 658189242 844246388 153924333 673333286 522861671 395144232 229248556 234518264 510721426 970099628 159123087 204364840 316413775 184944284 694205166 631138018 560687953 311888356 19042129 867819924 632381475 915936354 343715375 323490291 982771919 630539434 627531658 615326404 864289956 256946536 745459966 235206585 481592371 563997649 466729785 856882766 578811029 483588321 981925876 906552970 661311069 91342278 660562039 430506022 381134677 564173936 205095860 35744536 621141330 457275895 591860107 784685922 612265979 121674323 950349543 946626609 600280038 681294766 50023784 115983974 18278520 69352444 175537078 63797407 91677351 59343678 526715487 704248243 180304916 688175778 809802056 679538742 534621781 627056960 887829657 659950452 395159348 406644146 927377536 258802575 832522318 963768000 533109098 462444556 594602149 760216467 964500673 108254726 200326762 429913656 548497201 977622198 295779486 41495478 146377195 662452601 546985297 333780377 312223232 329414615 890965002 646561611 823925228 999731239 633912667 248884869 417945244 432636646 850009083 258919554 813522753 572312386 819351905 357327981 867545480 958707731 539042889 940805934 787048574 572568163 518915785 429828719 799017488 511733222 19506940 625505339 815774412 523504486 688706633 451213737 104505822 918052837 548812648 454655662 790452975 710536978 455682427 95888429 687937352 163757334 97029367 425564908 526691694 360699492 432846201 184386245 318952685 459991851 906729391 915599566 529821313 13370727 652240980 412598775 594338740 186821073 813638227 358250784 841371359 545895069 563763099 3922289 952537661 110462398 882634897 455169806 640587802 87003497 372576003 92204235 367193294 970322432 779333210 313458525 526784071 266730598 448252635 424645828 668380605 206264829 886409334 629863658 283851236 661207609 276339985 992039577 695663706 70603237 132468743 446321754 36799142 341422634 894720830 782375832 322912227 701788458 6088424 873422172 605384622 662660615 589273145 370319358 65681461 400921986 376625958 967378039 722148787 470167031 379847812 545150558 909797316 58520655 519539062 982042165 319117038 965970663 460325243 7741492 270105842 317157684 160416596 69689745 887093647 542777732 776674915 473015985 545466428 458763676 181459819 139657141 955952273 353265728 979241923 113540350 301629863 120147603 275882351 342656517 477909298 574525974 672560190 489617538 482306414 498092066 524937877 171026240 414668678 213429089 733384353 459447215 658070525 758414429 510511244 719916686 541115694 771805805 7340733 896377134 23330131 516348466 745048648 203896084 117357846 382971513 166686732 87946118 901605518 532759909 515396186 314659519 306288550 125954669 145146681 402752503 420625354 70323950 122720889 292959571 502526498 822288693 77898358 715949849 689808335 146240487 193793726 254988112 314130843 543973788 143513967 439767330 28391260 995247359 744256871 365807689 53161020 172786983 464317731 337001055 789067737 230272860 335368242 950487633 730966234 165971998 839483877 263321945 893589535 58317580 670661705 401401511 23570224 494601137 781755847 805059267 833702529 638020392 908211598 447706184 560093080 197064194 362801241 638502414 309612261 506011425 988723817 159048568 573192898 305177952 93072191 763423914 7145685 940327520 980115483 375910179 491447102 282946344 108347627 300170371 672032540 104044333 383627968 569183105 205641488 495471013 87657263 190701875 928415246 993182550 786889201 320048312 980541656 38037166 171453697 97857514 407310808 449970971 87188721 228232754 201432068 564603041 367170983 761795230 405026644 691805598 846725459 609126395 808110532 639708357 589450479 216705312 231202913 495535744 168432818 749791782 886754535 883138486 589568116 786681952 405586511 807180959 707027761 99533728 760198805 65372796 704647591 200322046 794131888 788645893 717568108 88174551 988723749 710357869 724050094 157686592 574240817 27765509 3112183 979328127 794480805 762191245 605835104 662036476 882912636 276468613 663764714 571539172 282555855 357073452 148281703 625280188 891342881 756558357 872660632 184134294 430413929 278884193 777954539 399108534 329177516 75350757 56376612 427069173 59687851 579204854 696898609 687486152 974912024 150404660 552848172 940620545 178095228 742992088 363772550 258555176 438341567 172267627 677090155 817284972 117070442 314641860 129469582 35305975 716683559 792400277 694048702 471099176 523645589 218611383 953689768 114340846 433379314 984147459 652328680 761057629 642344046 926632456 840214118 285573077 339858130 918600781 163912093 670502645 988737814 243352081 999237647 989673021 342351734 767077030 324042204 877966153 186629394 237627914 975166814 594457126 69681924 13676277 342507322 538839561 235039484 523156273 147279771 158055000 522884025 65057750 397950302 260871764 690969854 445719006 79225053 223501130 912652265 456195016 583639550 374187539 519646587 363892892 351050183 875664998 289549285 66985793 142108420 52564280 6073978 912258187 217637120 27936739 877962616 369311343 166665684 254810653 202661761 403189502 376232875 409935142 99893120 705289109 205508837 80454219 495295814 294837732 344429142 608133112 645449656 506603941 116441530 508163527 413334655 825581157 294872962 121317007 824691880 12050776 946266161 645753999 621712979 975383475 186094598 646765466 104815053 223975952 634603901 454229616 602224868 2169989 516111508 849819574 821662639 706244465 973755920 797894981 838566973 674250019 474879070 817231230 510065333 159193459 983281551 739696040 71207011 453466378 691465239 319189462 113841352 701499650 580953024 157932925 745728030 492004408 374358445 128533982 836696491 455593577 45945892 463420774 95727047 528983310 463759870 913243417 367575532 946572185 3370725 281603775 73707273 164421387 241654753 825760359 316017472 298816295 83168458 833944292 602733305 413428368 786086549 618253462 865129011 329613752 748092753 711892270 632886433 139496305 72916134 424736444 432645237 522254449 518597858 950218336 707628220 815950110 594508739 539033163 194648874 534462544 236376558 672927117 824505366 3187304 797691115 846862087 419319008 377034675 546584876 790951166 122935940 389328761 781160967 955667457 600860725 290631674 891494222 569517874 892315728 525373776 66011894 225421539 969561861 614020542 311963212 25039143 698649837 862170254 225017339 680522310 446403371 84690609 914444044 674137200 795799608 773873335 693317129 257960275 669324512 898285241 260992237 900572156 683057155 236089161 334712214 393177760 28147971 14048346 484176140 424880162 890558295 796315468 785178918 570672015 533356732 458965658 201492124 683688889 209336658 707125028 858225780 320062967 658404944 112365551 938547351 343822348 752893095 701152361 97076125 181702204 379680573 302915913 812233435 439914096 156542334 476715757 43711046 894307707 370790480 851509480 933138069 631146186 427890113 826833505 47383302 45703084 920024050 798119625 67499099 696447752 792717139 289710628 698741332 504301370 954905977 806064375 525538229 166188294 474296563 366416945 175691486 32172751 75209971 622024300 799820641 776489611 742717668 656754164 344615755 812700542 214128662 775773708 493437265 633093535 319493320 459994258 716181314 572154390 476422710 960426237 349172001 250643265 351112552 590320238 62432364 398497347 336957902 529987988 419072623 43376472 431869555 857000424 488857057 43570674 801367551 635412471 722478532 448228236 286301029 583086947 630227003 309237756 448254419 64247209 46259060 908877975 956521256 22896316 626585547 18824562 998093445 445681464 97420484 453800480 42555967 796348481 854711579 210506164 49995930 477611990 148154186 808245456 249434826 220138521 572211242 881604843 922700434 953258551 195676852 734233100 811214148 873665275 188644324 479681705 342908306 539108006 75676037 769990314 338247141 182028077 732138904 749833357 339004641 601789474 619557422 896135465 665727940 644114627 509987567 569558396 271231143 841744071 805329865 659304004 233225060 272292215 803933093 8120211 522086077 408426022 698491960 710653283 104199000 792621220 979612453 579836669 922994502 496018322 162728610 387076911 428776733 251298739 77864138 335697 568475697 761761205 209822569 970014685 221609388 963237540 78674215 981748750 51621010 201883940 979467611 802431835 612259173 49269664 329425642 143038749 685393162 350214419 920942068 382123644 794398116 606299208 475734368 955151301 879838105 971792089 64822727 483227196 864014048 473785517 999953615 196373763 451443586 40873450 21416059 890236541 80833155 361911659 825140969 812553241 123428358 424384031 950694355 901329788 605129267 464919423 384015224 29640249 619027282 857152114 435089361 922737592 474702890 655575505 367947919 597459215 457964375 181628663 23742884 67692124 829355362 506027152 597864644 523261990 869935253 350075608 232285676 148632733 94761304 557369001 887807803 245629017 537795726 419752920 613692900 113508269 999120671 675975594 636998127 284270026 241941705 502595838 969081577 923773174 546292309 693797850 49564424 38933718 474754175 344945163 962883854 570980442 10155952 319107855 657366558 172496952 696008607 49774540 923006628 246098425 407828966 650447324 185028390 36072552 657793033 3387195 328029832 174017186 308395480 81222446 34176196 619438716 197040873 277782780 625441765 281696838 841556136 458087674 472573591 39785509 576600806 889628632 881248786 297828580 956633463 517755578 343762255 641141939 981464861 324094994 417851760 246710129 237636097 273965472 680420148 392817103 786110478 260938509 394910351 994304525 133449996 810136931 854502704 863265982 449748012 596040471 834119042 211270179 583731912 519539522 9042119 531955915 711982388 264559401 231082028 644555351 7466030 355435507 15564992 80657130 762850652 432505393 284309272 440082454 912902885 510352652 521518976 168370250 713851106 215117239 7973183 590742900 115029677 87144929 737599690 670759918 134941658 259128425 737229740 902039666 888640198 373246824 465832959 670793705 483055027 224150486 139516988 530058896 261941462 250791671 284832994 921277795 83007225 488850259 584304492 229592513 26106284 832507713 371269260 221596680 547130345 264436141 328099772 141040322 678251036 128632913 930832759 940974853 665746003 855727767 671852501 427450446 584263448 487340416 883265030 790509521 681264458 496623958 584112059 814095198 691735078 109933526 365157111 855538773 614100019 371118543 98243832 854926094 500388962 652216053 396460513 500451724 196119661 769161964 976205318 68134219 444207414 438046103 969745587 898201600 920781810 685511034 918506915 860398548 653148146 703703877 126268121 562500348 781354544 520427062 600638814 327831904 688295034 654619356 199934288 115926597 392426215 597700289 609121059 292802995 704400407 382911164 849639004 251301181 685414631 808628205 229711049 401488488 206860155 775671 28116201 885511455 932553567 458160184 554665752 578158335 170339801 745317035 71836109 140968938 215719210 571167515 923971637 985946823 246146649 970727167 679227242 504762458 92435258 255314625 673339667 525235824 216879356 787175984 587976832 838866858 634501421 66608483 518865521 705853986 143908708 301137066 341545421 188098283 271334389 379903292 252545662 333637337 462488949 425758973 312011695 459914939 439925981 197900278 250056460 345741812 845968268 249685349 921159849 199170052 201773032 242209607 626408177 356309457 57051983 230261444 792296267 744636346 848886012 890441361 959505508 155874915 615706194 863744227 605706104 602040028 371369254 408501246 789182263 253986519 868998014 848120553 162603222 271239426 673817101 483741647 781766823 413255749 65647222 705161256 399502641 84332285 929101463 430574034 577316643 351516671 990584185 595675112 580926446 412094545 322708223 812772183 246858668 123859617 717000589 956626837 4648802 97173713 342913250 255719435 438018781 897305506 844854330 208053502 204123141 956955972 491259966 599321359 169623101 807819730 244649156 343574624 579652955 383718044 94602561 119325116 796890858 579093255 638749571 55695681 694877939 293699442 64791882 900218729 882243752 974120698 994842106 222996525 591847913 330380755 715691659 819094557 499430939 609276758 68960726 76209252 248801788 408954205 856461097 175885510 572509334 998345065 197327841 717303223 879357308 342274145 249400123 339281662 795367166 339409546 389021254 482307307 814800094 849450481 936261172 572581169 501749147 225533018 407986583 970425068 885621628 577950575 148495877 413755122 997543380 574213589 982140872 312049229 95263611 134806588 592473970 997163167 83331829 467323168 545060648 217469862 912706105 344297221 427557516 22865671 599801669 41435028 943198348 676671402 726595707 605165986 758350609 842846139 590080772 501992044 624583672 434230209 672674034 20802026 868499616 200270558 421528811 295258787 556187550 164072868 261175903 12158867 522719023 712522791 725610698 86347532 983905097 306732493 815252721 926955851 982325783 501276053 598704866 213917546 535683541 546833758 957830770 498290152 434061151 480425875 928514605 195076632 368753604 126044808 308055119 728899174 317556445 840380217 472809665 641716381 223005852 46199090 238700233 662262155 380271912 56637030 158641541 942527540 163120181 526895465 925081036 820164354 436758297 526378238 625282425 672289453 173476085 695707162 897627507 650072842 466650370 380963958 596619486 431871033 571800346 563562751 890314381 201607263 799921487 830576741 238428523 649967021 929124444 740833118 917249080 481452918 280371405 609254680 358552884 780078282 576853867 39198540 892662507 114242921 346252032 221199904 42365831 793146870 962264249 317753782 618582928 892066150 802255222 879797518 567265105 964653071 623732508 763438026 14507400 231580889 997292443 376714212 660135204 762723756 98490784 954002506 807964756 556736488 549400925 456802050 798280920 890649074 865505090 286429818 296760183 754553055 435350856 252177823 649623334 917743849 154814703 287918480 644142081 477093850 621966591 1547299 953416247 478769108 770842771 469932512 60635863 353561003 371318567 646697974 78687960 267589814 628534196 402853994 713453460 104773468 307465193 41341380 582045799 843212113 830210040 54858262 385103573 992008628 640768276 688964915 529181125 289027554 27691439 135748239 600124933 339975779 312741983 397744178 452585685 595557805 271235179 624137817 317486464 13062946 569791594 494057575 926250332 516200800 245700861 206261808 413712880 347012288 26518916 606011076 849510662 572600799 311244696 1023358 817699153 908902813 268114019 846155774 396420261 26248716 453964396 763610776 288789210 123713478 47799829 564760289 257331832 551798929 183406975 663681871 718225888 307802743 87300070 288289717 52180269 847263437 302449544 386130862 110542900 34758055 198515204 948672002 673866423 350292357 748308646 788353181 408564052 137620438 864089418 644057227 688854189 761989390 308027786 664287556 458389171 585915112 824009990 889463810 237861485 364142253 297676160 801909934 419413171 827198719 195826822 830532900 63681419 156530058 428323656 171532182 597855060 382759908 305537591 132633652 163407955 316488788 382435056 144904652 146555918 422495079 248390324 224401414 592412153 743328098 222627362 152435313 565607916 679171042 120025554 753542682 220440764 564474967 718816757 506361093 32250360 335146769 183252579 488796757 312302619 157141169 63803365 620467701 255880822 423367536 372168030 373474968 74630824 789508954 35299483 36261039 328505117 508495259 455660683 871531384 515333689 741937105 131769393 224286556 181536303 807664982 415571206 279906589 568375633 231123324 205831271 243045965 481722110 722562214 516642167 555303402 837088966 308982932 91592154 985358152 723180365 273874367 809957489 40347563 248476852 282042042 203563477 639506904 590959151 710752017 526260048 337428432 954338013 751156997 586755496 385880606 223528496 70094035 260269360 577756219 50713432 947949958 940328946 133063397 335860200 333436328 16933485 850092383 902544593 126185747 547729990 243347553 764025415 963511496 746309309 893047024 803931226 446084210 420602723 526477711 170743122 628577022 314115505 753844632 862097285 469789772 365152863 9193468 813368387 105965072 401096565 634833201 891667369 132008325 705272269 246399185 945976261 114740280 121311327 326479669 352548340 808714679 671735930 699827579 154442693 666753382 111790327 502567189 897959709 416572675 361161453 240167266 955268534 76528037 90888660 746656873 464272155 897207371 324648800 872108609 22548036 773499141 377158190 250543360 15689645 747374755 167177084 668999782 996938928 88765648 98410172 372936950 345543432 114260081 476150087 613430216 233785390 437256942 851100680 400083856 816342619 171494894 656121978 814342616 286565872 856590108 459073459 909457748 294448214 983804493 887398001 338198309 786196986 856700906 680364735 278960504 124689808 846016550 587226518 107107753 950168935 799649050 296686565 203276376 1733134 607410599 407419440 534275022 191193927 234768781 93235230 866694433 100358105 574572202 332494375 930805217 640456389 495388072 649390372 682569594 439576447 629746358 132262473 882790220 237202966 605169010 514919966 214464426 237776337 630542743 289327215 343015006 232752059 553635183 928075127 342047407 131035125 996977203 253199663 858222185 602771197 351201895 431627214 808325864 564585565 435093497 284732053 813697802 714580359 930179822 446038904 418879074 708655346 248323135 982679683 518414128 509009850 620355824 639692020 280607008 749686525 809385708 865900195 970873335 947348048 127935666 407010992 816435599 3612552 786005456 828827447 834557085 382211809 947509851 585330099 836236656 581153180 866552221 484548998 892646023 963166805 722953175 413351689 193919827 905656260 450391159 581824394 480667222 544591950 579489609 831508350 687421662 962929556 889058774 10858525 74043621 331519897 307479603 501716644 274166180 229531384 313275870 374118160 175527559 36980762 467933363 471726763 538107695 672435702 602443990 35527784 926251713 570856336 231032895 843439064 20978395 290865818 447406176 972643602 20280701 219463289 915280432 872205605 841012730 882619140 488985291 907216602 169304258 125090785 391917742 765903382 619582247 996584287 438778286 117729232 466323036 448129762 125523857 79186988 934593961 918908799 3044352 259600056 283258034 613365996 884776635 159249510 510101385 909369533 800885044 268947108 476281722 511090502 768688291 855628842 344914364 181480259 441112047 436882850 395913082 336213592 82693077 887907543 208750830 904083348 549213281 772831972 504885252 872558524 653211168 139099094 721979266 478647791 585029747 394281862 710013052 827598216 618369850 270497606 862842988 981636353 202430643 462853296 279942901 808331234 74194672 995631311 74520337 734305497 68269730 346712362 639986138 592366848 455815112 488379301 263184335 607313537 261841364 698567718 753794345 457398641 631192600 307236549 495579901 188843067 974606982 662445117 3446041 979092595 488475583 45012724 454884252 337226115 544617621 671528068 367395563 896976614 917183064 343347883 908492958 745636053 650125767 678457952 158053991 544253207 303829574 706518557 513149430 172274808 711450207 72555411 61575888 731707795 320832313 674255089 725635219 131331618 396058293 353843825 795851440 565017992 325300744 986343008 700524739 815659438 904749719 674408591 856174527 214204094 705796949 581616480 451375617 216970727 340986015 997109388 336576843 968116137 536568208 882303276 483012741 482892596 221419359 977029164 83767787 37476542 400631651 510244856 191410365 939052337 35228031 226849847 652981105 507359437 727477106 676218742 692244372 415018298 432079287 241026364 433158292 249436679 277964746 533402756 246600918 303193322 813207247 678208861 109593430 617257967 607947061 533319289 649756473 633976570 869915008 962494477 326716463 717910205 394808107 130477447 834598098 319576337 213968947 251335750 656490833 781241818 967673306 654163711 549990217 61387268 7175622 88762240 213082601 579628235 749401578 872762909 64589035 148181535 889280996 962626709 89914499 325519173 163507034 212965748 920313653 640452942 714521682 110856502 227130870 246099321 997609020 29074127 5498965 644783746 866872637 396857186 916525047 968046967 259481694 517208986 247402111 325339474 49231553 855113538 6116701 783960000 690392658 584718971 78911765 449359369 234885572 530587486 905027012 179414250 414464602 39242976 669042048 403484291 965863011 476920784 123607199 414522512 63615120 803266605 689937783 733075301 630639030 939358346 461043746 294271393 554646880 9416958 450737618 76644829 923548387 768531596 804768642 544508964 129357591 106318377 225652850 925202099 903600465 70634735 3022864 811003245 138418704 148768475 318374007 991103016 897287329 134544422 117278710 302753099 263766906 68567779 895178329 557115704 749479029 795457603 155952390 115427120 219418307 166679863 78212591 887481475 126159660 737857835 16379390 273019265 667155661 67375137 777314700 871352781 229010805 148176169 299839691 821101498 376902845 432307111 613638135 413705549 710726257 383187273 911505841 822129519 251070542 308086163 705955483 630046328 348688561 614439118 826801908 129585566 428671758 566861561 850740948 42420484 8652257 125527143 66057683 28389359 114568528 247531461 695487044 256821190 416297817 619117009 458499585 653060300 325902062 67238061 698598623 352016860 550194248 782351251 953706338 766295924 874697340 414049545 485346277 144328162 607185039 735148671 586728024 340819245 42680447 474540407 449660122 645798976 179028247 472555741 546187037 183126524 407703247 362673638 294757124 742956777 656470710 503303862 902139806 868413743 504929397 499689885 196204186 50148139 246699361 611240391 473613596 396863737 343492027 289714932 759865774 951057843 707130286 774569484 464298689 124902010 943510075 127171109 174284151 370756746 546395159 778717907 171653359 29588637 657468270 938598118 663489740 833209900 38820817 152276222 599943247 174984511 379096548 949804510 193027035 193668851 295748148 188157625 492552982 865192240 104142677 150941500 493131416 544965081 865276972 329798057 388304029 67405294 979940374 368413572 882580674 174895846 250464116 813854989 430678377 377652435 913257135 724661918 766584857 693157932 199976034 748423419 493848689 828209501 965977784 450788383 764098169 922031898 822629354 309554798 854824232 910622628 47259764 88722964 437878096 273884636 428124083 849116981 915675054 792126510 710094998 40293317 932264899 679383038 851854172 415358532 206839933 899543303 266217181 297816475 688048708 512902206 439042898 973866820 426568783 16651137 639993552 210356566 427393047 480514763 340074793 107370151 347317258 145111033 886055146 812953432 399028405 399374369 142337363 256582722 884466296 256109445 195103483 489084989 908883761 441493315 63501806 430639354 862163293 280120741 518533797 264335974 934738405 7359805 871187390 471012119 758003966 562919863 664539118 656253200 627485392 614329172 878415720 439283099 575154707 983346582 89102219 414275103 33089495 698681692 61690611 431437107 378671186 926217848 306561284 7898126 700235804 222695660 310431881 86196165 976913858 594354792 249997661 650188186 312756861 191736600 286639948 751390537 191683165 322686104 364856893 670757077 484262677 453424851 203230257 536951315 191409037 269870659 483406727 12224256 142645820 794392442 795860626 192098036 26518843 425196655 27187580 149236054 663772670 233959367 859588098 598363968 997674720 502849774 310426836 524817958 506593925 186158579 736913710 71624326 591479767 276463024 380630858 946510580 601952826 390346367 769608766 50839121 76454761 306769140 319734799 489145489 670331252 291042088 12956458 81804274 984638840 931313432 903945962 616008705 574419615 960797260 231538586 834527106 155196884 350479422 173586851 241558190 377803054 216539187 127647164 889375497 62512024 178893052 170625775 921601884 410615748 190651342 902354020 720397668 820491816 587095557 760917203 457726587 500732338 192995011 275013742 88763295 876233626 833639833 246434706 649131591 537330297 231880024 713669717 512381838 235402008 341800509 876230211 383446696 425182233 452642912 116835394 895913952 366350259 24156736 80700165 874371617 129511405 675323746 873177231 126873664 355522152 441370255 296911179 705284158 761882121 683780488 308992297 589794981 275373817 384036088 26477476 480096795 184948493 235128907 402370072 629983764 201250495 70118025 334680721 258847686 15550512 449885495 151479187 82490295 171694180 114623392 318284027 443359423 650636256 521702900 452397625 667186232 270386534 845138350 895098533 574920547 677746322 827582798 568786844 644849486 897322589 436602473 460120786 585641342 498664821 117626449 746872820 824978975 727934541 559050491 266442145 900106090 699479553 674720224 407881549 766680943 209980723 317287055 613495939 249213833 798840694 552402085 930125898 699804943 148867137 853950354 567108463 646220302 126049058 359009604 118474971 798647658 101203328 475975818 403554967 471242512 355506872 612557444 542973170 503159218 472096005 577395527 328439639 350705740 312991474 644906564 736217307 776703761 254272246 14894553 721746998 524482847 403955403 156686712 537917203 22123418 889971324 751021825 850501979 550754544 420800256 602565954 421150544 376430522 922985281 158211219 847972451 599890263 991400498 591717729 177948235 862418622 441556138 28901772 408088155 741372290 502146800 889221279 51848724 506105499 102170341 751950138 651436684 809521188 184313243 698604570 660799204 193681056 300458492 647282103 67301128 944831936 540595239 946091045 692097417 77533438 844611609 236225584 833919532 437107987 528618065 961110156 519522340 472760951 994256769 160888156 753463844 130004817 394999442 148764725 940191143 69378581 941279556 507849817 290382220 260606976 923683851 337458800 369723298 915961337 360338255 833865467 525789702 99925508 452730149 488019955 265036395 401718285 869804363 797111989 397223650 221618100 855979025 894257121 565807259 624341665 747442214 492751980 511706408 559629902 798441097 325786224 231855851 51832764 246290384 349685466 199044708 628363449 289111351 106629229 381139606 316512769 396034555 915603550 758720924 715791849 455368911 634782174 884599970 130259106 750384220 551769192 505259915 46048215 387567266 679657369 751132723 427497733 693928701 191220511 884164257 887946919 815463990 432963160 670194238 757563148 702033118 981295463 956003115 896583705 172808508 195415956 775405578 423596233 931989532 309100432 875359002 853372548 407258921 982942536 120127900 887155049 366453073 690648963 435202389 889211918 795986266 651296465 884554004 403438335 57547120 695280856 179613394 826565096 746176420 37848535 782327735 46611977 271481082 989067223 109321626 837730986 687440594 27201779 587798054 129211158 206463621 88462922 15477795 491352863 536047927 679356915 109821416 571332507 846710358 968906989 862400152 245583792 3312442 381728755 255821216 9294749 593233691 603496015 328298210 111541892 134706328 745761948 578206273 140469379 312140948 550712901 49493471 517930287 604094107 159521793 877406380 373584124 386642256 660543899 759006773 399141052 840131571 137960166 90254679 725985389 431708868 669356907 82629456 662886871 411050728 95962459 144059995 500156658 625590824 31822675 781431962 584564310 870344677 23444713 61371115 651489 902752059 573184969 390909696 478728168 693878647 228470397 188829177 139483640 168784140 902792383 729223419 928509035 638906469 38327885 405124624 512694019 953138133 803692149 985948443 341472408 170347691 986505463 864481094 875592575 83799179 396544221 374513963 450435042 361414451 527343434 764681920 781812030 268243253 864043803 923444932 893338851 315178520 120434590 386605987 144397275 864249503 686348274 132735963 849759465 535205597 677029249 793645150 432355232 646865705 527526038 850378996 191585634 965023782 294359341 779976404 466276508 669011584 569253800 518964252 474495772 907532353 330338821 251846297 369933026 857375208 33723756 856663546 118993106 764882307 984282512 110456232 283439167 586081880 95110011 635761341 164208502 185046136 431048547 790259153 993936901 99669629 70174151 670507152 902268404 179688290 830111296 710020526 786371632 904489396 426626362 263813683 279639266 979911253 693974728 384924986 27270336 372076788 412829174 601995382 307243836 481339238 417341358 287511541 943592931 347855910 555893858 337689745 175857142 906748358 128693083 52695418 17150983 227130990 312876508 890059499 550129887 39537804 73837268 162756844 2126565 787905925 948688950 55528802 759510732 433644048 269744457 945601879 987048049 468885572 119533186 451946836 409335046 361971209 540424390 466358045 18301354 382804902 679226759 971773174 968249957 944948118 962800565 222465843 430013816 933491915 94860779 56031369 661679047 502013854 170059342 103445492 320081701 512979455 162832771 536717426 64707730 606224602 836603770 118018548 675565034 420653485 138410365 227629277 36934536 974729248 176240990 741720574 78137707 355449812 770601615 550446189 720405803 166399470 85220304 262509747 163706167 252685047 114445032 44421445 482016742 856609459 994348981 541427389 345321695 620346737 278763025 397001428 41983266 832278317 337080513 228935602 275735551 853945028 61077640 828347854 536991028 766226653 432828539 619931116 441861907 645667456 418160252 769556046 214836385 558476477 982183020 882580482 798925816 648204347 596511108 974093566 169829273 623113892 533837065 787130915 288238728 962955462 941796588 270170855 151889835 780413729 856626034 995527845 956442940 704520844 29317190 107519355 939425509 832676863 382267861 8915483 548434698 679315657 775365217 773953922 698461910 835843141 161611558 151705679 919348576 259459626 705676644 441846819 149614537 663090493 744285862 306961934 37380637 648144853 189989156 901238098 75904440 840277411 671286156 909353323 870052506 547201702 863605135 3090434 638700282 368993647 30072956 871575756 309290684 468411075 610338868 262323373 803791247 120639829 185155378 606380161 449156758 846499732 814134902 814433778 758202524 459412849 711982006 118923977 712552128 249491027 551012884 756456682 494069086 307500728 875652718 338307634 348715238 564884972 796006458 515438370 998816751 130687835 880663569 310950457 169545693 892200188 751465934 252909759 179702080 318072243 436925117 932790229 339475572 691882048 702993971 271888989 660378048 271188435 168023146 138455389 133083985 849153841 781775702 776771837 539749237 292526578 462517403 548228202 182998952 613106056 226015655 986944303 543218662 759409264 919262296 474025863 447588128 134726474 88190713 74300587 17015805 500857274 626715197 739574646 436968068 802394980 669193025 861256836 124180504 771977839 816178820 49156280 950456145 182836505 12205323 226534298 730130739 597412975 995195299 106400827 679935627 655066762 416690294 235326582 315869250 489120142 430522041 692106644 230010550 505009642 85104917 988808084 896740363 436600866 735067033 13505878 57504222 564384878 140733457 511024280 619308019 336362474 194809587 830252973 891754965 46775968 233455551 984407629 106821577 752868991 934484842 505266046 214352213 851462623 132755395 616293151 115139852 454695894 923268906 467684453 348636029 266505660 166254592 339966089 955421949 413318964 327446909 579477371 267946313 325400158 891820658 759743021 562074256 445657425 976629755 59766310 139545788 363227234 422797424 294710846 712560728 176171309 891738057 145165764 464569231 729095613 821222896 748756699 573518414 570985854 583732333 755827775 308264219 365782113 776525951 711964594 597127601 487252007 302986165 119204370 303896857 530686605 393202227 531970135 411283145 423581085 195386517 692918017 33983148 811925435 611911285 426797293 618229361 199167227 154424448 67548631 807266512 542581679 372507358 507999444 858729931 539393557 733739822 261902847 735069736 605538142 42846825 299578970 115835350 305253678 594572796 706270036 142966003 781015035 74935566 22435001 445524798 61992220 601807795 156637570 301462182 771576153 160490818 675327931 466490984 473294799 446465107 999406972 532767838 336121137 405363068 802528184 989400328 879121097 188648889 436455172 294108267 324850126 207770786 255791373 882995383 202856896 25648588 424232050 745530254 605903120 279897954 788595316 756880967 682549926 555335850 94644951 523379495 921913235 426935575 965165678 500536108 928486579 987489512 918989475 29922734 850140847 536718954 85533588 88542942 629075309 232554282 225456441 175336248 104313018 145685276 189870844 902539552 178889384 375012238 451398633 784595079 396313572 612848365 900360153 40139407 219586924 606047172 646863978 484065868 88038514 35186720 586911662 227221416 2440946 550449806 10303801 637843919 350257093 168782409 927401262 651875107 660506535 342136232 836745651 804361358 516536779 330849967 105061671 697062093 149884042 223859287 480344353 226077810 989132002 269753479 492356967 266570556 329389350 644341202 45208629 280448156 483736328 695865686 710722852 749819362 261788028 74061401 413744913 319690703 60192580 689936695 754713003 730074300 557384447 205612862 786828458 251175754 858876371 232069945 879081383 713527290 682397981 663819622 631955740 172530139 853501283 235811685 470930783 903242393 861433249 318664983 813972664 111670636 543614096 495785103 757652486 407319568 247327252 950337893 811279667 125234089 991989576 456743069 564957077 504179493 726770106 364352492 83461025 816086332 13062146 286618388 514360863 300889937 204276620 870667556 565088888 1167370 94757359 779008770 715246025 225464705 709238099 662261681 976509285 94514684 753920829 216574364 63905715 769508006 402006270 54370466 672061194 199983933 999697695 650316037 476228085 433588073 995101140 794178163 581728859 127654358 284613578 496862520 395928506 895760252 698338414 437168094 338226149 941655089 762938367 171614964 153158049 10177351 522057852 385694067 834446076 752440375 545954668 54647041 727502483 585641309 152785440 665537890 979754940 425965933 610721102 943708570 836367211 684431436 263457173 5525315 963800461 687428762 976681960 506400614 812959644 585278918 977760815 740988780 569508836 701198950 561549583 420094228 226924062 727927592 561657375 961367062 813637920 751373554 737778994 384567272 560726909 967118201 862115764 694488293 719353411 411859243 15816405 498783752 300406357 701780041 870540525 959955599 878772272 936159714 641582395 490996296 218859714 488435088 95779156 942244474 373698126 860051449 407538891 370883071 948382751 188964822 364244616 589333233 490556000 738917525 708387158 916673678 987340915 690100636 544600287 531907487 540284691 99915015 743098071 173464320 848848286 264414904 915641939 50115643 696025973 512165754 230625276 306929263 710918450 271019589 890237681 995899445 375123161 933367939 959621175 932163395 169267884 189570581 330591872 41498046 385369864 546746387 710722609 721072024 334747390 59001560 899798045 694313539 566395044 289897380 797159550 676788250 121968195 342113590 52781163 428666756 443914737 357590997 404646859 495282905 773369317 832493049 883310425 192810160 96888245 998088109 430556393 353747303 688518087 586325721 285619898 980881345 505431077 803728799 100506 722423709 385154278 858851261 613317742 241838184 571780757 208976817 971585338 894167915 755506432 245060310 303403250 183623083 375777350 365831511 739475277 362434836 384161885 344888512 10284526 264584800 655482633 814488484 104247243 999422673 771432661 815402347 594414788 918660554 308961181 589714264 325468839 930296331 424316238 221656267 878758969 110424543 943203812 172972471 619559903 484824897 134240248 774282768 416740069 816541427 854285794 598836237 825130738 113673122 600668665 224610303 863972435 53315181 18699048 617296224 670954287 457141508 507014258 332490899 784706874 339191103 917087433 509958454 46204837 26708933 407428569 808593449 72068500 758662889 550831171 586240247 802199977 426769023 239235770 542113468 180877934 39468255 73039214 69498661 999863462 578305379 419881582 567198270 444740203 141808595 954552107 623492696 981545601 537624082 145979536 813186732 874455823 828358563 116339643 73486509 777190861 115389647 881780752 626311551 377158579 278149362 282790243 761828729 484964664 624032168 853411974 42751706 189080796 22743987 266082975 731723907 868082139 666914686 346076429 600104326 984238811 205560603 539097432 242289467 580474173 817429497 719587438 878268514 811266226 550840153 526341756 684092516 789442931 336886562 15011973 197099892 783819974 122115564 422040430 572144168 279203441 731057975 985842172 362064610 821401334 365846541 679217232 328700888 959063488 214856260 82631920 84871713 333717143 548632226 38871662 933599512 554780164 130905628 467223695 835931711 684294749 338450776 645989015 297473904 99202122 955619710 122321069 785429709 930893522 200714446 964907069 328785186 931666650 143847764 328473875 430765938 434810185 682388921 978919800 808022616 37016425 386733773 68789579 131354293 194687155 698500818 524658599 910732887 609507952 704454400 409621020 492801339 496479143 749649389 876749101 454681193 623391915 454624774 533940447 356034540 987216264 301602011 838611412 399779370 635444843 739043339 113261591 597320089 681592330 261743617 931381323 422809158 798999935 424670988 691902292 327550967 352070737 785443183 66811993 408071664 247959827 597455837 963804515 298720925 380660438 806715884 184964686 879262462 386659624 8791329 389057899 319816418 882585738 345960625 121230974 49062027 548502848 235389443 410266463 222294946 563263810 913347693 546810576 492198887 8640643 22114258 492528010 713972637 8674914 561766854 967565074 213934053 235689175 848207968 406398982 148587680 146466452 956264811 517772883 836741283 57969528 845318405 203538711 389453983 369377672 890962638 121856865 645676507 99959489 23915715 958511071 206816196 315965642 126071456 206683666 187586243 197414692 738913388 735388904 787603408 318629251 32373109 745646979 538220088 756033751 365227153 742807441 145957801 357116925 251368 519710431 903237457 580964546 742143398 667326511 843034321 308671121 333829247 663534426 327634790 7163650 797961514 765806671 603858226 846169581 119074003 394859001 695063362 48070087 420637225 967729541 972480474 199266425 881279101 628793562 77444916 935096318 736886351 648526126 424676780 913585941 183016744 498219062 676426030 772229570 608890975 897441198 446802671 282993335 679589271 17367132 462339474 876959809 642797632 938810739 763665863 274736368 943997708 739666133 866840033 236933247 506545725 243393614 72644668 246522395 227365641 207505091 517581383 933506697 417361077 210923752 340539105 647250665 689697493 410911352 840797255 524102526 332759354 539262738 668197884 966382974 555035837 929586866 550845051 884435044 215390602 725534560 669726562 68903770 529990348 777906791 855609329 631798698 904929732 38088301 446108537 517533454 457839067 669929912 821366574 176033239 797142538 469493915 573362642 898658312 225468177 477465094 742603442 951067502 924322687 9418777 874240654 208984474 759224945 991097645 346892208 375883544 165539235 837355278 633446033 580471093 567734832 320839799 619106853 375187402 458274432 157651983 540752219 956847983 896586051 114743773 200533753 3718163 440724857 831566183 356240088 653554022 619966398 527903215 336571775 721247014 977146598 919257454 671734268 905677141 3485179 780156525 727815343 836515678 590021657 990280231 639796093 288522622 396835593 694476533 422942677 446740596 39903632 231591953 827375258 704416737 345936538 33158683 206302597 539782557 313200900 317680032 233850945 368464959 165145319 129560746 730988007 874582041 19787684 200593786 479127790 657225662 999691395 665015961 899294316 753976950 707817878 369279792 986618401 469294203 590945337 347727292 493362712 173504573 192457712 75291374 374690923 675176039 300026865 64480542 239809700 552850121 878165541 666791444 365419999 111819769 192706324 147060963 763803898 91990264 640349269 903863679 886949875 140028419 813782814 926417920 528376309 289721524 607139773 487741224 690979314 798163665 885285022 830997910 277393225 496527463 512209245 516447174 529653506 94809117 128943677 902365934 565606315 374527391 124501391 264920892 985914163 265057240 711253899 906813997 4216371 994890091 500851611 462912154 687264263 999431703 910714809 446544243 133181765 91594902 841459304 416508310 995717226 240336059 604120039 261355741 258625071 562790472 964696508 930852182 438403501 760881460 454042768 624284670 672408141 116846633 822813474 934549285 364783220 410777950 975150854 894403542 604488787 779357272 594125388 534390317 680936443 302402865 732001635 928580084 442450903 612693664 395796309 79183889 222892922 874429102 537074914 968178132 700058551 662980667 74040330 260932423 779845449 760593026 233617245 530145223 572098035 757432230 748006570 848031983 773213696 9740741 147752220 465377219 660943161 561298387 782881142 724792500 120325303 856854504 369201434 143118930 68858283 885483844 795146938 453329653 523336656 570136206 627921746 683025268 764154147 261632346 138633429 798287288 83225032 904260219 962336062 187403815 912254830 284139831 277800370 332061909 290992308 774416866 629078546 878269759 839858214 666936656 931333707 74034394 919073495 118661015 735552272 848791081 154432069 981343513 865303984 767930607 393150513 105612170 665203217 316225198 994571168 27734483 928756899 71625503 914733193 955724863 40833772 850184713 148659376 234471651 720134314 229299588 637602945 257874275 576203608 545670723 105421131 108195741 63924882 565784507 298519783 206771789 927717177 515134749 270364615 64226702 274915028 948111073 544549179 161121122 140115099 938480485 850573491 848389987 657468427 198101903 512122564 988780580 606802917 53595933 905823004 758569995 381674018 762974995 133198528 356093195 884751668 825719859 749715900 45405991 749086725 987501620 385726869 15801070 923734906 36178155 329031325 972479299 962759553 384437364 160261803 956992104 802596292 214793873 712930070 78886042 334121535 23255118 283285130 390378777 242418288 919048193 226664080 828692200 943627466 365102531 596242110 196189284 5576715 624914231 233052942 687104353 724095212 491029537 796845814 509041540 997608683 754309309 963566709 331542879 176831230 630435915 712719256 197813846 107627791 986617544 238030985 671836504 743634561 331335259 371039744 178773994 91332940 140877687 818759201 77137361 669955650 650767995 281827446 449761060 947034145 404503742 444661933 763262598 29088431 233628940 883164082 989917724 503987090 863260538 575376776 272970965 743341520 343692922 79001309 579017885 519070897 531965478 621686858 77319979 649161420 567851021 400191359 149256242 68856042 118061556 125301565 187986182 664695610 884574522 798135134 903295274 809963691 857712250 371026942 362679846 74531787 290005483 545128671 919542181 597023185 867840266 639019219 415929169 560197317 392838968 634877515 953133349 971626198 867661374 82649082 23620629 676059629 166405605 219081318 770878198 998263992 37481774 672506153 217821721 409583300 912314905 529931011 865786704 250646443 593585803 92537426 268144348 861060377 928386885 454888999 244902078 738850990 995193339 384444975 364809014 94276936 863003882 949570735 674957968 26478104 419003677 732877716 481865604 331468864 664012804 19319276 956778782 951581840 179741051 434604907 268582731 577116401 955647043 707918538 624954011 172514601 33805086 560405546 89594437 77392288 324280705 711312977 742705631 950783840 743581366 431792297 442671289 953987250 566976881 586810844 959350372 778192362 903236178 670713478 705466983 111825785 620650044 947736207 253358453 701500120 52270691 533136687 463379505 953021654 933963905 371683125 171005606 648781893 764121391 668285228 511061370 516157336 83043196 293348414 144511132 266311659 731500772 872856568 911937169 26504473 319523982 272540285 452593744 854425224 982471744 82009387 134277066 544655543 682692880 447092635 812049272 80500824 989598782 223804989 206551897 932808016 443304375 874109366 839653353 719744521 38872541 167373211 353998022 547999336 923387826 370022031 473504929 896891666 96454151 239017334 9705092 299313766 310378608 381255235 625081058 907050893 222340012 44756725 539473426 584667712 554215184 733778310 209017460 398947659 804556582 106813810 519742277 322691364 17985452 97223820 983624160 873148874 339541276 72346953 274178529 720866272 991311309 95875046 905725122 398710770 754844369 255770823 710459875 373406962 398236815 973522090 332195920 144119474 956941822 313071032 61077870 786080185 733911627 412060307 749851623 850271230 107306832 720839102 297708935 116512724 25462418 971056312 274459199 866949006 885558194 376436831 777335923 225690511 715698154 431893803 226593573 129282451 936918109 584654573 615096380 330016034 699152277 566514559 816408188 493945873 493539698 490175267 445884228 536848930 553315659 819105978 618168892 498181310 239178637 179224649 77547812 39504001 221163602 286518730 615257098 970784316 5944964 967960842 426607174 202831630 914155645 419716680 795285210 638632481 575926473 224314926 79584988 943038991 677622886 376712478 986016756 779488641 135803551 294812993 163420203 100999493 36072691 776409095 690244091 791264323 476795989 336491668 560329962 64322399 729594610 389906849 485636900 73414125 649051149 246588926 49447754 574449230 811160753 685551847 323905023 722586170 373273668 350220543 927264954 675974998 585242209 223587248 316420112 445978575 488318279 314625869 745398024 131506870 116369351 363078164 378603380 984239504 3075281 918439499 62666827 516249148 867707199 963765948 574254291 637608087 369097759 511609591 255901177 53365165 162562290 328134711 460532359 376891213 274426613 465332295 762816049 6427100 696827049 754417313 481712234 780645717 708002993 522116163 281931795 62500512 492293814 779359158 842510183 583656739 451979259 134560457 531076070 423775713 244459834 612989666 63320127 26681139 561738012 806061531 506839020 372697791 288804138 715029566 783119386 338409574 419529143 500461220 85058861 7775911 890024990 90779622 48818761 309317138 91652473 852002820 632547301 648866890 256040500 74123068 936158802 235286081 370671864 835316998 562378145 630219307 198566194 411502886 307882711 363533703 550792046 911617078 473915897 97341457 591566050 183365634 144383728 978215434 58851917 11264453 572565566 525304592 451739382 349992787 258954511 796988811 109138938 794119541 191567257 58429680 894653818 471950682 288508120 339673893 491015555 73605594 396044847 156937456 734027081 972935832 906782922 869147638 968457737 967169221 133353757 17581264 714582699 90613241 623477772 428727630 76199427 48823892 884931816 514917719 865461600 112039624 696869573 288243649 947335762 982202652 197043267 460414542 606503718 54407327 377900489 521018102 669775748 233411231 653740990 262525262 299465338 216225410 584806580 431472061 943703176 653325047 424376429 812869352 437189882 743937978 274926919 152061384 255402950 261952226 379540314 362634324 814817804 659349023 312621571 811228828 504354260 30275114 635721359 433380704 429960754 743305616 407179380 330910692 895629054 430676627 828431226 489952364 720809569 153988717 166874042 937903129 777800086 951883487 771696582 607886396 73999531 278386492 771586920 520119529 486418971 332927214 222757467 790866838 237206642 869429153 856004089 314123571 393338031 694365487 588231642 279729221 761245436 440108683 556564971 354314809 151115790 666668819 694799164 431622767 231499848 307214307 231748127 243968222 334769477 58544824 572125637 152615224 654665740 953850628 671499072 240187050 301270334 579209191 921691822 378347885 568710368 987926857 63203301 408466352 555015351 309243207 579192286 231738412 131884369 559242457 551406252 195467319 824206256 272863316 436224762 143561401 655503553 447468055 878366636 485572335 975931380 997058412 130448237 497432384 912339594 740504652 493636999 644428957 638296020 753188835 666097005 949517882 144610318 999889036 60672411 320744243 237353172 627410940 803997942 123518032 983041629 879956786 704848754 642831844 238112899 244805457 678608239 97611463 271731971 949092061 185801407 14312819 894763788 74137522 882763255 108072964 102977992 225538037 733531812 446012860 255822247 504657672 423453613 621881426 769405706 586297578 26421918 102472333 424866333 228258568 233855464 598450187 413367949 53389675 781105241 928042817 75377182 939404084 183616243 222078372 66614041 937918339 869649445 583997998 25982792 462798618 609723803 121821609 701223659 560092727 926823508 218175300 794304584 560790905 96577488 941459823 896091827 84759183 2982104 630333843 216502616 51615488 76159730 31166492 781727494 868315013 624880928 343640323 272902965 327627250 302295513 449852331 60339345 579839398 193671734 539763410 774387920 951361091 76042748 193003025 416283213 79868851 905286907 512934349 91434194 321532933 324692967 70073122 668252736 232551349 611832595 950274764 856649097 832678593 954271046 19285837 118289745 429290307 642138480 99125382 70942029 724568259 65729493 842493980 643128130 213052142 392364794 478910241 665313545 451998557 463249363 652626462 228477568 491467324 332070188 123679705 61430850 399891789 215292178 977317209 742938033 637698595 638308563 112002937 824387922 279540459 158022787 820473811 71749033 919129097 547960417 781856473 251658587 681335351 789019526 103246250 939860025 915354209 757659440 532022408 89815722 238578110 65861639 946795771 155753860 865032387 757798151 801078039 394839428 397655295 837801231 382825466 618244126 278629807 15002502 849243831 506659920 827496762 719100657 305056428 285234280 283515224 13786750 52991281 816998170 868288792 398663438 511406562 939283169 460958061 611252217 542339991 729094004 965020427 567336497 777950074 488549872 873028658 452973071 964671445 331160171 250932979 420535431 695674432 872017344 227763053 562883228 259903125 378065232 950688095 88735927 296294041 740138696 140452707 627176291 605683163 703537697 798605333 251407236 343584249 712401710 884972372 369254443 494324178 390579828 402709386 947278031 357797456 250113330 42152213 482354505 357536268 800152997 284182096 693221173 740342450 853245604 722923550 366323303 191226404 203399657 50257492 483121266 426838471 973442129 221658468 118977101 420904152 113709187 340700114 686916897 329299017 213778705 825894700 970649554 461355248 455226309 399439235 495539993 211425453 440665470 100526066 551821082 438827694 789395201 479596194 936337553 877333623 931395434 528152423 989798843 469918200 750093789 5316917 907633578 844982608 376496081 138789632 2915901 586901746 604380375 409574218 529804198 930810089 974261313 468017038 913717591 276332598 624667592 674365680 402589823 603318037 34732607 77484995 54504429 509790936 305316699 730762115 480847977 752141711 699562277 915437732 57647525 665935481 491049784 739208651 816779565 51758815 685576905 877853866 803900203 733948926 934461332 685425419 758963346 739007205 153703023 304909933 704765597 994351377 843017329 602103966 887566205 366960214 182546650 376924611 20078393 633326071 632311756 417575334 652018430 650089752 861232717 134590158 570087215 541738131 80477588 494042155 64334837 411315356 657805156 94598472 115135645 49516517 918165606 963908933 602829845 612885901 745198258 442165700 822818954 493129026 393775806 425180230 397406986 476308653 913710125 341230984 418033928 562870015 987395914 95940642 496967886 125216151 439529929 601971529 808047399 884269158 879654072 545055501 857715866 225496171 519978416 327663576 954353232 914253560 676581488 382702233 141649470 878206751 642673682 863118253 517827410 322606311 401937496 73446260 495673209 808066324 240426296 511248648 377596036 656566033 11703264 242513343 324274011 378426749 468268075 700610498 567103283 658050916 299772099 744932554 611865596 234107667 774307692 574812095 626349203 371733608 50427406 725402560 258629594 571499938 226817450 800197838 676500888 896387877 825903619 567275555 993224277 38203944 502339018 438743079 147774142 858592207 29427428 618813536 812596278 971856129 252477170 958158741 50658014 492894975 843207513 691521859 338799352 620173744 515020792 468124254 783175892 65291531 155464385 191273433 826664461 877126558 938252788 810068365 267847028 566696615 271458338 935249107 438961956 19678272 142988941 496293877 308492504 806442317 133782965 709981460 243878196 965940394 316899029 488727252 510943101 845479628 153635142 676556209 882669144 43992099 932526922 117219849 803249760 88141609 282932054 806714157 387083356 108464159 602958040 464009015 771786825 4468666 645084134 613347651 537583864 391708625 376133715 652521725 792550228 330482790 434599129 465983164 285418611 489887615 200543628 619922357 46985857 430177211 734611161 7597315 194928019 744929782 581685875 417563277 495835229 906247823 685365669 435554378 819642408 155898139 391021259 627926576 937830529 719687353 595892717 213625401 704231998 108016381 847900584 968417378 716665602 470590647 891913567 369749314 446444944 465658072 656967249 632173396 252845547 555561700 636377342 86309122 70786424 217618680 165807252 530710271 552815982 137211101 778470737 962678343 902234645 233130725 147246671 658795669 948205931 697749448 596296034 787436524 711607840 135023237 865296608 369478314 986444367 210891677 136647619 873097759 409448294 669509263 429631794 445936060 893031525 254052749 278872051 576842550 264972510 195375641 598456139 904633625 853207846 791385061 719970488 158204648 778290748 390778625 70624656 598180430 357613790 496282159 361993836 562365635 838905090 55888648 482503993 566925268 843471383 457781781 648967320 737409370 795993854 239991540 964050504 430906367 372988120 376640952 366628442 268279264 322742612 440899016 688154936 558289698 883402966 665515662 590386587 638084407 835117252 932549846 689769529 849219797 847834311 296361375 509566823 318779995 483072732 982771078 700768543 138275987 944715709 858765478 985656397 381236406 137196473 856482 149031130 127581808 255185195 546805433 365705642 972890151 901053085 948631311 423335431 534584479 706097151 384980390 984031058 491915503 197543047 149065257 992251660 360465165 731325683 439086318 413862464 28372065 360166412 218374913 452855616 436724244 659605069 366618941 792738664 849953279 996581490 715479235 931325933 444841266 684917723 806722776 855750943 476659699 610325267 561134627 719555687 890346804 158718513 852534422 534496890 551705187 82530726 526621015 196456245 340428910 907027955 731190965 250047140 341579383 964803603 584963853 848064068 594229914 166493508 255950466 130271264 909948125 601347957 825704170 129585573 222470415 382538312 77720535 217832675 556470114 308556777 706130388 180350561 830414035 17661162 945777546 157999886 787461297 227768936 567319372 888945977 284297065 989309030 174328724 268410170 875762388 675469339 443520993 485661150 454969343 959411256 76683415 78811893 415039169 193313604 16174913 856491780 31518760 119818330 15540553 707618979 920206457 423838724 353649391 464525757 443829869 474149083 623846282 526794232 777905752 660143082 171251652 309158508 871932698 451679095 36068244 363898527 246658334 710053144 922687089 747965094 744917359 211187245 619685451 120664675 836133242 486611631 216502332 207488883 734969516 516576796 908566728 427746641 832777951 621090672 911755617 123872923 283011677 401426193 498083317 369215426 935142350 167470891 861930940 634579869 770341236 781194934 98124132 842952899 829148789 462663829 51118355 465304081 524137096 667090442 650662925 811461524 128154940 89393327 784747988 587175143 788299140 98604853 248692230 244651871 52480230 671197611 492184557 499662413 473748524 213818303 10002500 563019000 627263564 500040079 822338334 246782772 313300306 440531374 183909872 953923945 834012539 763970542 740035582 417999817 541737331 978611499 992608626 369300338 383636044 473749794 753004675 179475789 307043810 965356947 463236226 215103912 44841980 25840223 817448096 903499503 520282165 752058506 54368243 595173969 518173102 114413326 612103702 818462483 725640347 943934810 167146241 390787345 42707623 871241431 816173525 560037830 887592641 569327537 208891192 86452422 725349635 236232443 173920445 759645931 746405482 525286163 802368688 641618124 62184597 38607451 276120940 836984390 68774023 708502442 829299573 620473999 115186341 847938561 32931740 680332077 818717647 68520004 715331251 184149940 61043841 429645739 357736485 702397185 824953268 600008589 770618112 850667379 376503008 81549227 107987537 293803585 882117350 558964495 110363832 633412669 755961904 327705444 438766853 163023389 107480156 861113367 325771661 54594717 888473401 685023516 773850171 474627162 800346466 44857903 778564995 170590787 752389601 529065073 129487511 508295501 725748094 217241599 9542202 351637726 647411574 557596802 845248547 983432120 451492797 375753362 219724772 405311834 315765996 810915246 331328796 867226702 803983609 22289335 903103516 464480466 822052692 769400783 809151555 907048211 143971998 498452434 407547747 765087670 376164996 368256265 765807358 725989381 344685025 580038927 687095414 89166206 385287077 120625006 625263136 412887102 318247329 285883924 482793521 1291509 77737001 840204447 64681741 72751025 350667819 413721662 603179654 966861598 408764578 695237027 455115009 439932898 548444520 43470479 492852677 353666492 737172032 617358527 480832510 845392069 904542667 144282613 402816093 55167139 476801828 108887973 406985725 231877467 144475644 160077306 581406155 287054215 758234732 335553466 43998166 382941731 958246950 865438706 505842449 635293301 937168175 928359368 644266168 89857226 451207693 135615987 557889885 952894183 251941442 597994567 754717818 152983291 965093569 134298675 415882798 914078095 484398330 805059117 447625450 259876832 899258781 320571793 323805006 625456053 774439724 761584267 928468522 715346830 475235010 9040628 492909005 348865864 316119977 197357001 475099169 27249537 995505153 819471493 129030538 749149871 15473290 166940717 853773597 185673602 673766878 827552702 514423858 62711764 628676396 219562811 395550094 878598886 474484009 935611928 302569164 772781659 664862772 942033277 843423832 265316549 266671135 276239332 768444605 313105151 875934555 393639607 497609897 559800589 957820418 391790050 171602726 625336085 362511920 906819227 785578503 566759022 902781860 215896311 921309556 812621773 320370904 703753178 782127796 501875451 312126068 866682091 305029949 569651262 458973768 177444029 589196073 861034166 190435031 631833423 714821321 819356514 825067379 777855381 379623337 242370122 459199068 364447962 364408071 196699570 964343678 697146825 584790098 560976195 539999432 665782877 854635748 606706779 925927811 401220237 917785158 915906138 451121379 569209327 37024293 371074205 258130961 560366954 421910987 840405872 608384584 299897716 396831098 762713049 167262243 839381216 736795212 29927110 531148690 35876321 8684749 665437498 264375403 887965503 314715877 193493129 85723994 985179939 18659856 401437983 672193263 531714472 78171571 254549172 887072055 763655892 740130212 324176497 944916654 174147572 408596389 72660665 213975053 72437292 132089507 541495498 117817346 109385999 119006829 134226819 986036425 324934466 982599415 628053544 595523591 986265875 246860748 360394331 895809201 463108247 199324189 592814437 721990555 836465121 188025748 469661462 399358379 126513917 744005 506973708 55433199 783911076 61251402 72352978 58547163 9937416 755183151 798134872 458463574 828036091 681342087 298137296 203594602 172437838 247884499 271457755 558252923 543123532 845589942 553991362 547455362 501545184 69504710 959879283 156165569 546304314 817617113 125530472 928301389 153470828 31882372 767657018 554332623 305370409 478065679 895558808 852025426 79014662 105490752 840513676 400753677 580239247 145249533 571496436 113710718 804213547 541384627 911901353 416035182 248050461 238754051 821382303 344511224 483812165 310370736 819624472 475791220 986802078 630326134 605894551 249569524 651599246 39810780 887241028 719175473 361304947 725113980 692535609 637895751 237627475 311251240 862578760 886166955 558970547 911097520 531312302 748351021 495960888 524598230 54132104 58125434 879306273 111899822 521052915 608762463 569297864 694719141 899002878 116715072 197558695 380474132 540371498 48964635 807265508 189537089 980643394 724635278 121955035 640318127 188603466 428209000 965959075 15195061 2212824 13000530 185571301 96371340 175570421 897805728 442326872 326526198 818631259 764816307 955949658 445338586 441528292 47336866 380857338 194829229 564900200 669616649 457861542 320509753 620551291 269030825 249439873 123153947 956439284 866579694 992872159 653667499 843983030 116936889 616951858 935917413 656159854 397169719 141171322 464327661 140869499 499916360 596716999 190010347 796623166 53675502 41074666 47705051 48153427 243810786 251145350 426580255 437828103 703512940 993675544 373792728 985222285 912017949 145350318 683317834 550193398 607169595 495534540 240975065 286181238 787981695 132581541 581000646 287815155 155209738 842097430 602135095 846778360 513876012 321010649 155680227 463015620 468279537 115699733 396566527 95388421 167237831 604530159 949896195 226444102 436858195 349665465 627369890 226666554 129668613 712112828 579475260 244855826 749444240 717177242 790044912 92330309 418628630 276145692 42705790 384718751 881802643 133831464 876161200 259008442 185276008 572717536 693221004 734373410 350688716 947922821 244518885 760263421 759516973 64677486 700024203 831088440 511072351 21952521 816901256 581851428 66397221 131666358 454594109 183049688 561896089 391447785 68485831 622039749 264155717 858642595 660186814 945293633 554210548 622712762 558486477 267970185 609364033 553984466 835607053 910746284 677447924 718857743 650623149 15297776 638009404 198062864 141602002 966817705 858799887 951633630 418671819 890789539 824217701 786534668 612365405 412908141 162562876 498103450 597144567 488737921 231013228 378071192 420543065 331100464 970250147 945265931 45534545 630011023 805530058 961006945 881362876 616591746 41806082 460121603 698777618 520019344 409697665 102429770 6421658 111225086 720316805 635132467 534862230 243975312 799469256 683842048 174517894 931545314 828491152 105623662 505553255 27359264 668702504 728068752 697198021 661935156 135814717 190640170 642109486 870229371 242798331 184336186 809721386 371809365 863868824 946547221 24276747 824313535 588072337 171732442 902713616 499364540 359615947 87305479 739904983 264025994 785344193 296904569 595522058 786105212 905940225 245735236 363391322 940421611 429741531 600539415 990672159 686446974 408965271 330023237 664993453 607652087 505226052 279454883 361752993 189524081 670681983 820845004 460204187 763778452 170930693 837854758 449385606 124986402 623308374 891143613 897268007 60497914 201816818 49659744 674634377 71981351 770661480 777705188 571648103 982907594 820779227 736428034 998133930 632736894 215592374 711223113 211250540 427609725 148419813 694621285 442887920 26793097 178005358 216062946 812592955 684793481 769779115 97477596 535543810 680428635 860900640 130253721 583509659 931294342 38029034 431426501 926444873 41531310 216597224 769070434 468233519 635405886 642028928 350074686 514064422 607953948 121037405 142849691 894573767 517127542 131008311 592677093 751784578 121441159 80797678 198471479 557074218 960207881 695216910 267184189 132975887 846177504 20834143 747570102 950341136 265660365 901119029 875149466 823670136 56969935 889187954 657779491 727438287 5012934 950639099 344333127 306703408 359174348 519417779 249657718 346942531 325739039 225935806 758608730 663996902 94901735 380848154 29727017 355653483 692148811 306027685 400191399 599478731 701118228 174619696 941298725 144229757 384424522 272008832 580271118 156893782 669213384 837341614 330096259 815922024 449261000 885484880 222753674 512941747 48750377 206443582 28162078 930806579 383367595 10803494 228682364 501210589 982593113 62388365 634009806 206605951 994625409 696359506 387861281 589498668 529059865 537024032 370400263 976322191 109593190 148807491 868515786 367172735 58323279 900550994 812208817 174967461 817215446 389551473 909085144 949471175 358390569 316392018 240387671 963465278 26645554 151995795 915534001 725480939 180455920 897606695 797181205 85981850 805687496 695941874 426631725 845130152 724376790 853100478 35119145 198412345 579222450 129677801 806977085 206740628 570439984 724015408 575381398 245150171 142244532 609862950 988652811 882809108 208869206 382093834 290327767 257574087 383014833 986990521 152547001 715794394 717656479 729113341 219392543 806049943 385006943 845959839 593636219 443092590 905372627 991933405 744268187 125265793 966214397 180746258 89182764 697129897 490238951 477092332 2773905 312029533 343014307 245791758 771178622 53137841 774529790 661877805 577676096 645342396 202838776 871652671 8693020 270143539 465629499 291180960 3316624 565618458 928578996 696570891 352979586 813769132 505652455 260965265 66833349 140625512 594836482 434447635 710715396 387595840 860745302 704523531 315685281 314327939 155587615 591140847 330800749 217489531 455133973 236599425 951883669 301893335 701072400 164922825 896107657 737793253 498532252 496523088 569136206 52099619 645998474 478056887 75948836 58786374 688326540 608284236 804207883 379159747 206025833 451287615 701129390 310995999 302298149 858154280 987582017 626527432 243008916 978685744 700081395 417763961 731875201 269454482 540446356 961180224 595913299 313115898 678478707 367933244 268437756 611207043 529134392 23617835 778397919 62724049 925488978 451225693 551605128 646121983 983007670 835767044 349251428 822949511 839478726 695039212 870553980 982557976 828105466 520236248 789696472 576429490 661064392 446442414 520752364 754474773 671270621 902308492 97443203 209287574 759607728 627331343 997568658 322580311 755326245 420111575 619806022 587447579 995866339 224698403 227042738 853798217 30537890 605840396 45438758 671623498 378679268 669160565 50558976 703360119 506392810 352366611 534121345 422838197 952035563 420972549 509756815 555156894 754040617 331419898 654225703 808778217 162799224 396687792 928425193 864075435 843629117 1040549 837273400 29329507 539107054 376957154 125164374 374549860 669860141 976529830 383865399 868126758 506266139 910757295 244942872 309726894 883033309 263840356 441240183 232388763 558498637 558137828 282088330 478477330 121938302 946285593 501825421 758064216 657760739 800630375 532667221 594206135 55372722 939883047 509527539 288218372 443213959 981316956 146972233 816120799 467017503 20956179 603657928 999851190 875462238 627201636 846656984 162961910 433123959 574554129 591049497 260368944 905518970 265543221 678758420 742458910 481099794 662581469 822685435 226585719 300239335 400759285 940093259 326593158 461020158 22382981 813874636 703050306 781568283 852303239 61717245 877127844 476711107 690959476 674181742 734457541 291775814 262061775 892154173 815496471 533303612 635447024 63087807 48608518 657466679 467065109 35763043 880034737 125081494 524526250 926882841 266158080 453136930 81359957 714019017 19628564 42113702 203734407 975425528 582845627 895055431 877700700 712387744 520099674 210969951 528944563 48697792 466551676 164946105 36062990 907465873 417020381 842147520 897455998 453984705 993711560 346745149 527430727 233659875 780103262 678536706 961721889 829935871 572833264 991526225 540315045 618596731 195124676 93005694 593844446 938611032 791197592 451347738 855649755 618074885 412404531 17331253 666449647 922994144 279156661 290432100 89855591 68949803 598168278 273881087 539874057 273655374 251099676 489027806 545110677 80547050 782020552 472826370 726533209 768526064 658027591 108878106 875014339 980850842 319650587 664782611 635599540 910965590 496090326 71303791 230071801 950998749 255561602 482348772 508589378 617153058 461749299 17387625 274239199 852688882 863913755 158140243 974505919 178333988 390758933 897598698 401818641 184233272 381683401 19634893 821970807 998703500 661894305 986870226 138174390 211946171 161069772 205870216 258961902 852183614 96568069 926783696 610007773 915807001 66198910 653041480 417776915 722037661 126035862 900135638 120069353 825394218 781950843 908773494 925894271 177950334 670862564 559973206 359499708 206113663 951009927 820882883 122869766 337828542 140641942 584912380 271736813 878236371 436220732 198609285 283423705 309622645 185494595 854393412 661830840 564142822 642960755 564573042 958414077 889180687 726087768 713545725 867649243 642554551 123771009 541928214 248890225 68686023 349949384 851238131 34044975 10202234 434300178 384423116 917156490 224697793 702581072 448035268 668915437 180129124 326353623 966575080 963501255 768748664 424052389 787949591 327021708 915190000 914452657 31849383 382403175 362435778 622853580 968326002 29374602 998739899 124202040 254607915 709887307 146606409 165737628 561390761 276176096 230701408 376079449 836814525 608445327 460759990 830128595 421372886 203654231 172867153 947311997 42430897 537154418 941113740 22944219 958307538 229681821 681351779 985369466 545617954 509266372 466967047 293474051 237558723 104686452 904297570 536359296 508809817 359883973 101411634 998269569 973321449 574956213 667683898 449866217 669076134 847502430 490847818 972678556 289435948 348942623 335782895 293615782 617444299 267356485 910333951 453937681 671325851 676737619 268464753 992089997 403229734 690892569 759273893 496748776 932447022 668218679 672902377 852906255 280976670 455492163 597805138 454864207 364834318 324242158 149996357 258395640 690161584 768973553 197005736 721220767 658974315 66032955 526188188 52874366 772166767 704005635 799836087 123423726 596565714 823056116 120196463 988647707 56849594 21018173 180587881 185849211 616622022 976396654 257588354 348807347 170472440 3761576 672718243 543705699 863637961 110531684 421328715 24132904 457618420 600174291 520644593 767422488 36733472 969696174 424490523 229415369 57043046 543187861 244666263 588127382 805657646 556343792 741426908 226815245 577759514 536316837 600964833 371261504 511605943 441755378 467780480 307643742 648126531 203457367 407364452 237233965 676761192 673462983 306992596 930372842 116478791 528519709 285252733 698639219 959399232 14248675 311636472 248206428 115764132 57119291 110191772 9389455 107787943 763103399 852215704 330604884 812626914 713616208 814633646 765162159 999874182 43485541 597609863 668299660 29524869 937970623 878448245 483254650 380582154 118354459 246989036 805441642 262531741 356478119 686634566 332316109 591869695 545368234 832019667 422289018 378546532 953087592 205554458 492550683 929155879 950429752 934480741 90524376 327168913 755437193 72149536 158737417 398844162 275405440 329072050 532776219 558963794 948189067 339191919 811937687 170312813 362687171 110164590 230686574 46986158 342253768 887976320 612253058 245360001 766992945 709602009 954388733 680631289 174128958 780732 214416149 751258152 603883639 159747531 609705417 559649899 852101642 955488273 87969685 726414334 188688935 683887535 448878624 507037268 361480824 842825650 961047164 572436954 640196951 208985698 445421712 831608588 734987149 971861761 769334192 123448468 592364026 153077720 605841482 480862244 898515102 544971464 511052325 781031573 197136535 284872009 856704880 187819522 447244016 559127679 313346034 327716708 765100534 651603210 181965574 420324091 579611173 926414451 992298341 99301550 301073189 388582105 553090175 232384925 365122419 208471862 698136866 848252589 991017651 794824961 71912966 418047777 453528760 896349168 974655363 936111817 460164858 743269563 282352732 167714698 479087412 315768422 480781302 283826202 549490851 388311699 46173407 231471987 913741166 568102453 580070040 839108706 910604911 943412373 885597733 450964599 828247111 961585256 202889305 711961848 718048787 370881848 686416072 76280885 742370490 784235212 789158659 901451419 981368968 690925400 487717152 430174653 436500699 825647409 562535726 194355022 785602167 960212831 815829408 594915200 624512436 730941729 513031122 77346552 800318988 604942936 827501862 983319327 753644448 922236707 523218505 182789598 899987217 11218471 478286051 855053418 155696605 881197206 133595046 604158153 23607419 206373528 48784254 354737712 765896496 218031024 225486542 563065332 73170384 172935991 630102776 355787829 71492673 601451881 677149956 480228685 323589290 200737617 593999143 108678931 72160308 993742146 387129778 904451452 270609412 545436132 119588460 63896900 965924350 311972971 499735804 322867576 84103080 876429694 445510641 375137975 772599394 141427230 263501739 349900593 284737564 873194363 941479455 719037114 328874411 192511697 826266095 482183661 355793956 322351547 154287289 440752765 812745480 667162218 166366736 318559212 105906848 947887782 554566614 960028083 793245836 654831196 203212140 662488785 371958184 814589741 37764318 445185010 166666951 922748464 837819247 484105685 17506232 208256117 400018657 599390377 372105650 582134935 437598343 206241653 530532879 469196708 340541454 200650155 901007230 241018845 450619012 448212799 65026387 759479104 724817333 504139405 637258189 572988896 296794518 763478360 693322741 115525830 156067408 200872863 56770583 581386014 403291641 368475680 35427950 180870732 599083988 86706222 917231662 233585602 828505297 185816281 390598167 825131788 789003699 739299228 738871652 835246631 55641575 294898474 120221565 757303737 37595899 256300889 257930470 967556710 325174124 170902674 404241067 829887573 891782424 134344645 942228760 416696405 660569161 173133043 232008059 61517566 759734097 120649629 285140832 194701893 621936421 74831315 111086111 320914793 924327848 599869286 536999521 437072324 241393307 79168279 208525807 483882023 205000394 86280469 893894550 973682661 816314071 265187854 856139935 994411071 441103707 776295716 288237142 558419796 769775014 728879767 672910245 694650888 619825321 308668281 486783608 314080246 939076000 618742796 909845448 984859619 915176299 321073844 865979105 169713220 588403484 715798035 586826355 729550648 807311000 340399393 952978357 827017711 962095140 408143843 634748936 665624154 281175730 566432622 361889740 92095956 121865661 769801357 288430136 251582296 208699925 306990960 812730910 471083705 982142217 632643338 296438420 199607210 874100066 530578739 775217717 697536824 906681311 13511074 320124800 389935221 344087823 161215384 837868687 9604150 152073859 622288691 956656862 954136593 296501950 399420503 895263596 82766799 111321097 346405965 70892261 716927344 536284675 850855260 623488636 331814232 983247992 48392355 527502059 566911837 639091435 891729203 875014688 386914886 967697449 549707048 604848830 987013000 257517323 34796946 384079297 454440816 444843375 326976095 381530492 112267202 923758894 666003652 347437590 710217249 413861367 578669729 964674928 129502224 315315292 597356316 719681018 864840169 211644383 819831498 913415270 362129525 831360627 21976696 15415501 478636303 28876084 493631351 342048290 762461985 265245509 945737317 313388 17078956 90124683 351749981 479053877 137066785 295814507 713492711 504960128 193833654 371087083 472565455 362240271 423450952 936509986 20814907 634960046 770000491 863340584 835587494 91341796 245059314 137560298 489198590 967372444 878706227 611688033 52400733 800325122 421982699 412142967 582125825 450394825 242216175 624079093 221289614 1644783 164065277 271582054 487401220 803396853 196174783 536476474 296179884 637895154 619160996 388093910 616203548 63734715 900719884 104508111 556132772 595061532 409961175 973622194 335346019 892054338 535740705 906230589 498308920 617951312 276069195 706478143 104007465 437851579 983474965 594788591 512427605 802754584 303305135 936755823 60023713 316553111 614373719 642179814 46488809 980780345 981110458 220882813 390956008 767494459 571223806 393998769 59912257 309478467 145805707 33454755 920946602 912784898 942058369 148610203 592920873 99177249 355896281 926213368 117362011 344701819 908253593 730415943 2774459 538228433 695293865 143920691 735802105 882826207 115331183 769173864 420420285 768499191 606881787 199762011 188141086 480908555 204984647 236593972 626661607 498958407 306922139 308367691 636522529 598697990 165510791 261582647 944412047 465959453 227331703 654875834 705108741 700763734 476163284 88679489 36723945 127750523 129587174 211881156 317402500 993580121 542254380 782660141 898368645 346408701 425400309 629650866 270346089 704056566 173550102 698304874 451253353 863030507 835445785 537567314 15714100 871217513 699649029 770525603 877787860 665837096 788606381 232897227 498127779 6471042 191206758 277851991 886747868 675159324 570949628 413678891 152761085 630383876 144733205 430047540 260998293 653590264 519036727 101431787 604824434 163333213 225489760 724180142 790460134 415604581 587506708 66956525 748110850 805366626 360734857 163409113 309527598 495335954 139478938 316505337 727549920 536394197 275713022 962603660 520324685 435579313 21886910 249622131 447830927 911690634 747210510 450739233 720626554 426036104 567890741 746529596 659392978 429267795 119235737 184776955 412434480 158315042 649153898 966790052 217223906 937504247 217150123 72463063 613720490 177945129 414390958 673318315 915937609 241473380 974886576 857159910 86821455 619944758 782942159 62294994 461823677 856894796 212813991 91519786 875700622 945243698 417528701 357026885 672216374 197845042 73952279 975433215 666934788 441016382 310445641 351222423 848979246 145554758 115185261 607314820 164997926 315266455 916747573 969774953 345532525 202494604 521740685 794200279 146123478 450180485 837018925 34372863 47322174 725090539 434799946 467539821 885231525 315012176 31610306 611047741 857260269 73077229 478208433 784884765 349406980 147004126 597979484 563744127 150624463 100571573 903774614 994189594 282076294 890299275 196761666 243627813 673995746 357211615 699025713 633448168 700007335 782224111 535134384 463068282 284692535 909680034 876241885 930770955 122854648 194444077 993949976 635666977 158451245 646047783 709854315 347526959 380278679 838222397 949297762 980165109 244002440 293109571 4590842 376501139 573317530 82222052 555976984 936526018 703125256 749243413 3619816 236131104 436587268 473520767 766032793 771853623 851560026 705125176 910868330 987911215 581915597 622894677 516429942 837660977 453116117 25292800 728471736 150994226 140932663 813525070 937589907 915268430 624223812 714248731 340395344 130431322 224463892 477117262 738855633 619958650 434585787 16851880 265695842 125265192 789199393 571891745 171310696 755456012 130967715 399913086 287860907 83677745 798947600 269225759 27910365 223575346 80132854 581975016 975548987 887677936 547020596 487607573 319485895 818443062 538281284 928799399 619254520 450806787 647368836 233131626 365217568 348054380 289971237 93791233 710008522 726933669 264035944 590241139 957638980 271243867 835095913 17826249 287503928 309441734 722567533 885245152 23246346 935939517 811312923 237480631 65467994 259226794 419403142 398361711 467694743 719685769 986876854 804149058 58749967 152836872 335881426 290790875 450669185 747747534 713785365 687128690 740229014 719120647 72686362 543230900 582101122 52769226 179538528 23345605 280083153 547295443 609081575 727039996 746087745 600481141 991545523 580640791 573456703 476738511 904628733 515688850 971522711 983003364 899314589 239673840 312235426 930423458 729121821 902438259 844057301 492840789 805842101 762658152 464910404 972941291 798142193 885930090 614457433 999611513 79032793 911498541 902175623 237386985 38264237 916114018 314194400 562874287 394129498 60483204 109588005 665280752 509656728 693636124 266795257 275991147 980948416 261672766 183897250 957279631 614374909 96481080 629034384 677803105 398751883 451684720 435694818 139423394 217559309 515145305 773585874 921631093 939121127 269768559 609645213 878661706 95079339 444428969 337790581 921062302 887932293 369408734 745260834 566606917 711082734 445485750 843444044 447049906 199348503 870480960 433137963 417558330 763023757 732562899 252889492 671472201 80747835 218248264 907311413 583037076 391053095 477847343 736475802 543180703 212868477 829312948 201308662 26920834 894013432 426697158 574612722 104550149 624546292 853560465 190068066 921322142 987411750 83912990 795352288 992602632 106465191 608418332 731742005 909515743 563488408 648857146 148898332 353499169 509782030 512450780 114745791 771220589 536313761 919972911 203937600 998593031 699067257 672121326 703940165 791995001 123581703 552888163 623882336 528423247 94347178 260284341 450650787 441142005 514406381 16661226 610004927 441504643 484109283 160374259 424330303 125087055 111514562 172324409 787341821 128224752 718097681 970540468 64484118 257427160 293682623 461514914 95279139 9120996 442084121 44032726 588613483 872808240 120150105 629583605 963619186 222341316 91257605 985741560 86103307 723641338 130086573 974034321 627672385 227128835 820205848 749799165 366221047 64283786 234250749 851842063 548825898 6796125 451361960 98678083 72346584 954830720 570496642 222669332 539139348 927529808 928093758 424105864 526960906 995889718 62055596 191805296 568782953 252300669 152672841 967971793 802287203 603809041 157132246 355124323 113210407 856222834 332774797 263962179 112699479 36472956 937187281 548901072 121603136 970433281 936519822 703033974 784514931 166974580 314892783 888496774 168901880 599348614 7138342 126513026 88694153 268495373 506604239 655295256 702165425 705591058 80811808 69282386 980768911 838972974 856239669 756431757 86307766 919476947 674188850 870850309 266823322 2660637 24608602 89290196 194255726 161990208 866242809 620745085 755529897 25010617 11022253 624146233 907319435 129018059 180482793 565352580 333235997 790185405 558397072 873310363 416132416 625838505 814249242 672788570 854036932 158858369 479438164 221395579 838671369 706766891 330751442 819836308 275352734 386117301 819283955 987530873 395694636 586587903 279613393 653575152 114346344 641031123 728676490 248562150 622520573 314202713 483102125 542680535 356605235 230844854 388630857 23183579 81122224 446605621 695067331 882192883 721730967 419124823 193700400 190012171 58578713 364576343 832324891 422599740 929709 944497592 298782143 773963657 489682246 857875949 741757339 718207989 592599843 56459522 496889010 847185289 550743969 210516683 695310910 670637378 808685083 415390279 962425538 537671310 371160950 201381589 42327645 813984640 232157720 324295229 358606415 547817553 224647872 29152696 480091788 952629821 711162166 675096276 350279558 76311454 346504710 871816799 937051581 526084914 652210163 483099126 967881006 291746444 747024672 439337474 263980707 187135277 44956025 6652759 716000215 416844616 973552797 534784410 890404084 546747461 809645173 957620561 85276616 484683364 492188916 761553329 688313582 947290329 821385943 465507184 898696723 809131917 538316060 308258865 306817702 265563373 3448606 583256619 727130925 371333618 419675154 374068598 540601601 550644204 23453898 492049021 170920134 529956117 703718027 762200949 92786059 133053770 329583620 811129073 847766047 241508115 800210660 909290857 797994059 996150360 684672700 16121132 862013646 855422529 747248682 126845344 214369742 521785178 560352813 646694138 708524084 316508522 875081262 969681272 374907725 684082609 544491868 469186302 120655049 895185055 485248747 536312759 491117711 714438992 336210232 273501981 821609868 459694108 492508598 863196885 202002076 150567884 516402130 549994982 782506467 125621339 279440647 78526890 183456745 253237945 364201920 954205890 608253450 229901649 782718862 693043549 262701127 977342756 181775655 579727119 716327210 998668867 499591593 212500834 844233423 62856595 284735879 55124913 570627665 868516242 69236535 962088449 850212374 926537225 842648856 508748627 758042273 416704998 884411692 1275395 708132210 551567541 508686728 712891068 618552464 12402135 424144648 558299742 1283261 406124907 230221096 737140164 630310281 844389477 689758431 711508318 663787006 835839295 5826542 494041217 720464609 677709116 684698727 38348592 200588250 168146172 387094488 189947664 946818305 807157004 220684517 709248904 127512926 526347015 699524212 950954264 666568136 70312081 747221490 981682795 852954245 339921446 228420137 46707578 105369577 915338867 826819247 507481126 232433513 909440186 783934525 850111629 168706304 606436123 540799447 958500788 72004798 613265604 542008982 914871812 942434890 895764193 654290302 630868873 450326036 288497328 294430164 676177415 724250444 241896175 582519197 497607566 273600281 224017398 525192164 754802836 824757717 584719758 732133152 96845473 787757718 263729779 961336072 805627814 567386488 486987694 947272621 811444345 95708045 653151998 434769417 997365561 683173960 56199323 414987155 41154898 979177143 558279178 950996159 372242977 928384593 529527707 6273314 133779079 928945775 968224766 706511746 811337157 632411006 710568122 445302738 356737014 849949109 130016907 333385188 39710756 823218750 94962214 901780950 461424771 894522426 574023902 737881872 252279428 719957621 963580822 250229132 226421321 604316201 807656516 300970407 617887200 986061027 467871130 869270923 278778565 45575033 64743574 115914838 12276703 709694993 362992107 704114130 648574194 751402709 204010639 551757815 86230201 376707668 791847894 63838863 419594682 707270970 385587719 109950706 188800145 292180258 992093898 663428388 201647557 142288522 680707201 257403566 359772713 458603362 555912153 266268115 733041908 281428559 132849968 350834625 624915016 190423493 627366104 346114436 900552323 137493018 74445325 168116073 654510341 321259958 483367688 165600648 6863506 526639548 421951169 863957146 739171723 801987127 767799976 292336197 725009209 271325219 479420933 349882827 839495267 866792177 620975314 297351160 815705095 993773982 966696017 492202256 424890474 2740494 663897993 622018484 666107162 749111453 679732601 156381930 420996580 674184306 475378002 928130835 615799994 489981010 962080966 99709649 92784174 261551480 919859259 654068327 996392098 506639798 493598395 257454319 614878499 384374710 49824457 75460073 896796900 571805010 46714651 411194046 968898349 610276310 138678446 989641152 871971088 728592518 947872154 163230770 787749785 411513307 179235926 351180348 96130554 835559530 487667156 562315744 716622247 761689256 636704911 321283791 360929228 844903743 65321319 233193907 368732523 884720925 95311595 15911028 450578125 611303807 108896831 288229795 671539189 657324479 714234660 695822439 725048025 787906495 469121468 408317298 989762336 363643913 755072894 962228023 954912597 876110996 305644497 402532963 900075633 194697471 572956532 297763539 483991525 649646264 868323323 314787988 25738047 690703181 619612109 962308634 58463697 994294643 849069115 141491248 900814678 576912361 77856727 102007879 929096237 112324681 58433713 708882016 868875108 145538340 460120816 352979336 501677679 711913440 131489197 106890654 657308869 628518100 260190585 599759409 388389196 736916153 826048900 941333802 935839358 902784182 922215064 414298793 657609873 759703273 371863107 985933762 476414264 60000623 745626789 642158858 36298446 286563839 407213524 343337794 579292975 968228227 368003996 49699464 761488594 664256035 979850965 184601641 801212708 514239517 942240038 181087240 816223582 764362114 158198903 746976777 627201483 279470261 464761702 488788589 651310697 353953053 742186045 836716504 842788223 728972747 54062176 741577549 699259165 174782703 428008289 94417496 518452549 14829901 600670727 14045074 847937943 650110404 441924680 418430931 290065878 661062602 16093298 896206717 679930228 116287661 702661221 711695963 550903403 39970151 227400867 865947437 206432262 527912414 485644200 931291691 177734497 170439481 595814118 348014874 363251362 913369 941911719 896341209 496591934 947750637 377428098 80761720 141051409 226798222 851471811 948789526 597874449 32033206 68907352 944126860 332677533 115780266 758243690 799087795 311115358 359683111 685404997 376670203 202048412 178066777 407845194 68751955 675483831 814596870 609910880 966493038 808212857 420628408 419666185 931178030 200673967 938624910 875129910 176449954 569641379 603115437 793526250 492555612 9795966 703031099 149846986 943281053 385350282 473564836 264398865 152189169 436479090 814085062 50162054 60522439 975708965 158965692 792731763 762614309 631456858 406642922 357220817 517195190 543800930 24213436 237425352 464643525 676856368 265866014 886625671 439226311 95422247 954889854 18730031 815580840 916767695 483063300 897134977 238463628 425230740 603893441 977823323 216344560 57660955 534323277 801485919 369910713 285351088 149219473 625507594 390021960 998425619 350181686 376560549 678844789 533237650 507751242 582691950 670576573 847584916 116693759 696742130 715846894 709048379 388572119 512617265 60905661 548784546 25621391 962059551 448261561 981516261 481764804 496689086 69628248 957234797 499974910 646178858 113377445 835393781 972087481 651072601 614413518 725520194 323585494 823662264 117039525 49406580 661804272 373407137 305770854 341781705 343611791 867784361 865567919 823113299 810972811 620973405 675722636 561775225 599294308 758385453 916615150 676532362 788283380 639081435 961638738 183969678 806479372 740755368 443353067 148337150 941961451 761993207 473741853 274229606 195364871 200739160 289427245 858889497 838305615 994641470 222513672 806988633 998378802 560315520 158535127 956531068 706890589 793453452 797271586 197272394 580334188 587819134 132607407 453169758 229058455 591796145 499213771 151625489 889689166 79041100 944807771 503238390 950524787 728697417 738621882 235183477 846917630 241629730 617926274 519488692 831614823 733674555 992914819 790311239 598680858 988018584 22981498 324506895 953068362 240581971 12996204 171794775 654945465 442160558 761075027 790930043 633060388 70334634 786315407 108522877 523166128 325719507 602620628 487807777 17015305 600817888 766096732 77607598 67218881 849237760 418829163 812811388 74658565 501588524 398221925 770002382 780653070 314933897 682173445 271081576 281010112 92951787 521887422 326016678 733334406 851494421 862751102 558010827 172687828 208437590 803565505 113228867 492241522 698856492 150968797 162173677 140577369 720758006 226372892 544464638 608417742 917430318 683903637 223035286 152552750 892534632 479285999 754463353 516304257 477634282 605887866 863948106 383004814 127433047 51701910 656002201 615920844 546946259 152728450 774087021 721393928 517295211 813810296 966708682 54005422 185024428 269158150 617048965 945729837 697765595 224555457 242868334 977543164 978357688 28053128 88718236 982722211 145811228 893961969 192983193 172223957 19770605 949341464 710070583 50750825 903346190 659078899 486053433 508476890 640942512 97360466 464445264 960675096 518699341 203742036 896911338 363449904 580658678 236174354 593122804 576906624 485322857 778421134 971223698 949879355 883305566 593749717 56839788 715699667 975148551 610845416 919870383 171462427 262473452 483069913 937243733 798160115 39889696 904605923 3407304 940803808 637698906 147611074 591386114 309719558 976545787 546596693 862758869 864919038 451342860 18044573 63006556 578498106 4431283 691692956 232643727 321032425 10663182 522748200 409493138 106802554 159115381 563325525 647174105 984746914 257909492 498481013 248704609 22984933 549514519 728932077 572612997 592993485 618763534 900267348 101109368 90325781 208997685 78920241 341274510 581982320 536623375 340300580 182511368 338845880 572724163 545485690 935150450 842253225 822628409 949943043 508483431 546546810 293343845 741536209 573597966 605232167 382754382 957543564 481040587 912750802 554573512 954925606 582130842 211569472 606649629 172441340 190713525 43339666 809356680 318785478 80606704 259697087 437414428 991653803 864071444 55093540 351895070 866834174 442288347 963458722 749614331 821236593 246858920 224144415 577002843 111028387 211361394 886327586 286502212 22577592 237818381 811597108 2698916 332088912 809742467 17967626 795589687 849312368 777749793 195952597 642435632 83874480 731153321 328719082 66859598 79894837 258693411 330264252 7023882 756186121 984304628 957629433 594743337 178332935 152328786 954015138 573592466 979222219 423800232 775204800 21693674 833241068 502931859 341838651 329470453 433672558 820546999 609318833 80247996 522923402 801069907 290825288 268552350 892970282 289330042 612251341 441634151 559888175 776613449 765605416 437079055 691452892 18911224 872586787 494957206 539912881 209201728 67341306 620871718 689105664 792224804 254129745 101430504 171553882 738258212 443043637 274600790 837478951 758672891 730443823 938724073 332435535 735796934 177492521 676192255 288030828 33227929 328505387 243857812 253933454 828242312 701677479 161224241 412245648 654537077 79736841 917099059 35657020 446345873 279330862 258881148 21273297 182140136 461971528 706777380 327814552 547774986 66533144 402486580 910428387 120698377 959369155 839847261 175812538 540216547 485809574 600858429 198050808 420405973 22820609 798132885 28653783 851892545 47670172 502003286 47334533 516906157 476818212 796384722 74053303 339201676 219195666 562078659 667931237 247637416 447050469 832908271 276246552 396880541 254633901 875657919 440675422 75666439 415900010 249832355 971581451 32540425 268709401 888510844 226357662 797673131 469711073 649154332 316044875 888185528 636563185 443330176 582664193 537091367 156876514 618324401 920607447 121700069 817882017 526900789 568723877 969064668 847304774 834072360 563764801 640425491 338405117 844652645 751995469 761336854 705208405 173411881 792453740 398354950 509582906 99651811 879897854 368762115 392149874 843516240 418507809 230586037 344084153 748058274 104792736 650657029 389329614 807582021 130813967 941308349 829561805 748518828 382062954 352467639 409436680 917580144 264375485 681199979 126331699 347043404 187902251 609101585 939194468 42459622 618253501 94857604 724543480 807457121 795815517 525612903 701055608 763558914 364710616 824348302 734873978 142289308 277985654 99190107 368631758 277739292 645457090 931795928 718045085 883726535 956701111 358600444 663871290 233699353 926290148 265659278 458889217 982857368 703547140 223550179 538052915 521976709 943814667 996479170 259221154 164560112 722743738 933985150 362954672 992988819 628586757 175515479 199864279 320567103 844418898 693569120 816351321 915880094 54088433 730673181 184861278 197940753 660510771 305464356 932667510 759570748 645918069 82745212 878076728 865683949 212854843 250065082 638992213 455700484 78209044 368164249 413362683 220558771 545206443 888314397 457368205 178890300 82608675 216626202 109938701 384023755 224436406 369657646 494685022 650268234 27763272 861155809 584872920 230794088 414306728 146458648 9799773 212513740 642483882 674542706 791549476 426189402 481173303 390641440 156770508 677182223 376123602 193266485 467835331 636968246 726040601 114040392 990709699 692719738 254473644 144227133 879445088 341907664 425593171 644244715 638448480 403383376 957591764 138043953 276784606 248415897 138478706 760809323 172385473 244203118 330572277 310967300 821594163 807488048 649626824 309811589 860361142 547561381 115358589 160762224 666573020 907084433 724585678 35294982 292398344 339005510 162673414 200889999 267682119 291479182 382726595 864076872 8416061 666201928 535121063 834856663 193579437 868590459 428574641 351241925 784343791 100524243 793067506 821574775 293048577 182140234 996025315 641049317 409325527 155118892 840179757 50877402 829549273 193787912 810688750 896130851 420636252 838842237 654973708 391289671 790861258 959397467 13279559 270591398 466483215 442287389 347662822 899388456 40863454 572342391 406375369 610789916 897962105 635389614 286684095 934413079 835999203 221760337 186403226 492886279 837828101 375624905 732726409 387638165 481276356 152875566 84800846 418993809 779179363 771900863 417536304 31048881 492250087 758359608 878889369 664518346 122061313 270315335 848617475 421090085 162707337 634921713 727757619 483385532 687827851 517743324 137877278 602111417 309122441 484423654 476345210 131802749 822697596 944169991 514284563 493195858 392413508 951292428 269716835 452774417 685536146 154425388 131175004 667459005 40156197 153915145 50744554 920102236 278780904 230629277 545928512 51057451 45062454 439476520 464604947 463354511 788857723 355974496 675242403 640288032 362671151 573301491 973363255 972129847 931777734 537001106 519838420 40517580 112949165 61853670 928595261 244480822 351731989 300641238 740145864 514228735 839101618 774215262 562673251 229265150 107308331 839924003 598751495 409212017 233472477 601837342 753099544 524289948 882811872 934980620 909845877 107473414 616507650 77814887 35779551 484449186 141316833 745219071 557371234 322397794 217613598 234382880 722115473 484809662 330868757 391117187 680152128 138202028 165910894 798203704 884975266 766036224 337773458 855049163 742493593 19133063 366695062 445268021 37435122 166373601 560999653 101590596 21147919 59581692 437711188 468232918 536209664 934346297 536705004 924561378 246756863 756241433 330692105 881783224 888350186 626798296 885414727 644868631 511755892 841478333 131659181 788331814 891754516 902105058 506418361 86295222 924617063 851091375 204095004 149567932 801806672 772686548 305958834 360456208 118521534 618063161 419384332 107897369 794285531 835072690 139028557 895112858 721125312 874545819 469832046 534039668 342509371 436866572 889129782 104407028 693510200 315557586 689020 655593578 651167211 437461113 642928690 396131312 908467517 593015213 83385968 739707111 138924460 726841713 833520129 82239581 429352260 662227412 890387500 997609278 983366822 19634874 721420498 62664220 290313590 307392978 205486216 98400652 174800100 696874467 860854198 557430677 725981191 563571250 476473354 544750142 573507771 820743809 269024646 641363758 790117818 614032632 996757507 629645299 234297562 714296015 575970873 646821735 687267241 408291252 179544428 879344 1534020 184858858 826108521 849651199 608702660 791581868 182856662 946050200 815821084 194128612 480407468 572149041 977133295 886566594 50886675 799400880 927430152 644024914 140419022 524633038 182259381 187064783 124100645 150223647 948191523 649767487 101857182 564121430 173306833 351194676 160806820 912688322 62489922 979073510 141240726 918322854 570915632 399577710 249642856 123201896 519420138 631499505 689366434 869072303 136919332 911234716 870344342 464691795 41556429 938758629 664799139 912425802 934618768 408146940 311106977 821838014 393178420 845684585 194875500 868521688 67233125 412766648 272612847 429351940 610824158 67728186 911101667 259389865 983594317 402269936 916900770 344042915 273540176 21614708 729365868 150414852 457311002 521559939 270507892 584098254 610444060 28389098 552934128 699958441 724772094 202397701 238567172 569067914 22023331 122594636 425676644 58147979 27423825 14624422 600683451 565168339 310593724 89788526 591815889 620342837 410509045 861699283 854889834 914734519 992036970 200196430 462086945 515947371 600321021 599586962 548282722 649520723 92895076 112901246 179382171 949759634 91507798 739709536 764395485 191987898 152318192 587190180 696478990 635021148 428346851 479258124 726737324 968433196 944143435 99592770 533988745 8490831 82617296 461329019 528477126 568222978 10544752 3562186 420595587 106177269 369889463 270972835 835948440 210364497 901353812 631584741 564949014 617132847 969247595 896817538 229868074 668713408 568145176 829722023 627884730 350883002 354390859 261459532 851017799 29080138 774273161 920217830 482451491 948207545 43855154 729258771 366569224 432684455 289076198 15551534 621942954 659246328 498243175 711714275 225321789 692490338 221493583 147292099 812436975 244674662 449879812 518954510 226455852 545947360 581795227 865941054 885593994 577956102 415433160 25051427 964717016 512880382 876170380 671533461 381940471 502136103 847596958 386260954 373401911 374730940 630894173 286470112 869541496 917376139 120450079 294331903 11766117 347661504 275544964 334867571 167694000 105094246 842596174 193739099 172512943 973847965 107025091 654779294 759195215 545938119 317398734 884205824 349130454 735535707 291733074 547125978 605560699 800452492 578658323 758740326 618313477 747888661 39600613 842585463 712674386 967236190 495108649 791406044 653400550 518159379 481314264 400854260 898900282 967853315 51990138 567195124 144776880 808971318 803784118 201846921 592979900 959318065 469594020 417107820 331609694 164641332 323961230 997906538 528148488 367794712 124451010 472141855 119982843 608440462 529704775 228102063 750241361 581397841 589052194 277551100 877206329 445179613 76872241 490488332 637665997 306317143 253158307 137192434 100785893 316313352 978286325 276610379 6438923 851618934 923155348 598412132 119264916 70102009 928913463 560493303 946985509 413771096 514655281 837478877 774383548 745240822 799756137 711620230 822689887 766170638 122030600 309322700 129931132 496962293 547748293 407118389 614225415 932147654 244655443 171079152 307860072 926079205 247652839 842743259 318004959 219934373 30761085 198125145 729351680 66632369 99416117 234441749 232194752 292363817 385914142 860276209 272379455 220647825 330873418 153114592 75956630 478897964 695100744 617975875 766297012 646034697 878162970 228025708 431305510 246822044 26216434 844172670 28033791 186614410 296926894 395921015 638956626 273776043 446490390 620766342 3384904 555681605 714361883 921190573 321906398 315660247 61125976 717635572 860526433 947262355 33614533 897226584 105021533 42184806 584679631 197200436 279404735 637094828 49268872 728035824 313485346 467207971 568187915 896073813 536222416 165596019 407958062 899192272 173415934 400590087 623630553 871388690 977766414 99185033 751968476 942233853 951069802 800999682 490970044 326522195 900664846 886988811 101646344 694055038 929007931 472043140 306617961 107372133 188373547 159488154 210173383 205753936 985043092 742078823 705630589 207026333 61081860 105712888 232151672 175452132 883330628 172324915 667013954 657438276 452815606 813134477 401043277 196017162 43327503 362154220 336172845 745349365 938139620 270133940 848593133 239328720 228761859 44799864 371179976 899792943 856329822 371678313 876399003 115390772 331194907 137807063 518254979 499108088 864136851 352147307 946842787 938491555 873262699 605362650 531146200 421900722 917325737 216066629 700948888 892803312 691434767 910717749 294663491 635766985 381633760 302907988 993015500 801393656 764235433 944687059 510206026 713546021 915689103 492741084 265879211 335155881 185653739 395380852 742739806 664613817 40994989 350929862 471074389 967030128 820558989 1595703 669824397 309475727 974169176 796608422 588099278 294296778 173357356 602012673 369696680 615255022 332091729 506852768 389271744 558053485 171779420 857302712 571779827 348942261 169415173 439267843 400725245 522003148 245459951 309602703 758625824 498535942 141479144 359165099 125525704 372875247 436859224 210198365 747127553 578130060 199627939 291266821 643691358 237437486 707883271 800619335 540738313 323800995 851110634 240846218 228930861 800042405 545753273 443689407 678136544 618812491 989005305 951396939 180150966 505322003 520670239 609430114 500554769 552238533 57099393 376408494 358806049 266694238 504568609 247393918 242767965 917643262 157049318 812656697 414352935 811913715 825509489 676593097 841917083 222751453 811658414 722529742 813349080 961532253 504760250 608121459 168034740 885497416 487800280 587385965 67033039 875817719 935669746 111419583 527275454 508984306 97586448 539628584 604433845 378009186 43486486 592871757 992219465 271713076 533380226 190747611 312463200 507793359 582040761 171246505 192977249 978164567 888130457 729342505 253174474 595266878 770502232 2987631 274546499 879765656 490642874 862816728 259754915 481360179 806001359 53416993 513306826 701230454 772055172 19097261 506467024 149863403 245691042 102423507 985826951 320261815 31023100 867135814 671760109 390043339 891960953 669546522 793461859 787083608 205219263 609059561 605868659 755132245 506294973 7865832 876392161 238269517 683225014 541878871 90809078 579161471 763216676 322256870 98052433 151640639 582065137 808505072 39101882 801664231 282926631 692111414 755815975 908581600 944243123 558783144 542024459 320200467 598689780 591007394 381858043 843847811 758640819 131463649 209444740 845436338 163317490 322061874 94985597 13837389 664035949 856828024 343426775 572042995 499349277 101903335 626127728 681670942 661992707 327644779 558261688 645863525 549185581 746855550 967438083 253323232 33236213 804524738 4061508 465417722 587337892 547644034 351594378 496262140 160527194 671577578 476017200 236056484 423637482 421995063 359284925 906389019 28190872 26492802 328979446 323421303 503629150 990500930 76390671 151421583 459901498 183049962 592922843 846715068 212388574 501687625 215908110 604229672 272574617 940352145 715080962 724905233 379544784 837398832 640576450 214003781 46832678 136913943 501637834 232996420 658027790 915869574 8543719 873048374 855617704 493323600 83900879 881822352 534621681 893564694 746765484 648440855 859026811 359092904 601468660 390690356 888134963 649596976 947186338 507214192 559599708 325879560 536200091 948054309 173017936 951167607 883545780 744256710 525532848 658593165 533102532 935824713 496239253 194204508 218341071 908416881 904687086 888607275 336793510 873917735 848688934 957327525 629096258 684560135 505500833 144573206 35100601 633634747 902457032 56529487 383229759 925573351 567716943 221500636 232519387 909791022 759624419 759724776 168219058 195175389 2736663 106390912 434233694 678070195 663315380 501209078 521239893 259891141 196738477 175880710 763889430 224052117 629174780 7521002 833840491 964399110 52547455 855050128 307082203 795056892 639814267 637145566 80018927 438783744 873052646 689227462 921024112 44090987 149636498 823159833 680413817 716286906 19775101 655510738 819667108 376079321 398542297 495349937 188509661 654526759 474280788 759355900 243864477 497253124 761262810 877473589 9115919 105022447 597189241 565497348 401701542 739597836 849147056 934129393 276666186 241400269 84328858 304105042 229752588 476026594 237664563 362327696 344786803 18246546 499860029 858881114 20188747 53230393 204855941 335610392 365566681 246842501 701449288 756859063 266671296 912199739 16365427 605554117 847181755 976152437 571999249 496113267 834009198 895630221 831471280 482507981 567808904 35289942 701952497 120011164 878699615 373688307 151097904 606274600 904304338 254016137 549674420 816021596 634375844 886785303 130946473 673629901 155988861 575060363 802216273 248340443 866305631 443763108 634361804 260278970 916820191 517982119 244020289 219290634 541206301 852081744 924718732 511303969 105741499 504379904 942606677 525834164 741871915 99937445 15430072 372255077 234884882 203480957 312034769 399430811 767970154 712399285 596733725 743582893 295042174 255842824 914473803 540088863 806360501 563195797 218422376 415722361 959878865 536058952 680259173 866840586 377047729 396230834 620678376 605562743 189612852 406896391 46748545 129592680 261862484 860447805 800767462 763537811 604890768 622269480 912228346 424612278 777331901 968770556 435122546 247195519 737962266 366724999 470782717 358773108 748512967 989662032 139750315 360157392 444307489 936781519 882388633 896972806 185797390 18908237 675652682 990555025 538727978 710694837 776511190 331119364 305251138 966609638 402030671 608882924 510547783 420710613 623377618 120335559 491525910 607785283 468969584 443737229 254834592 614647894 259147169 488376153 709226336 801170741 624736587 119524837 240228192 700100056 31154426 893654046 781086382 406455564 17552839 757928824 623484 719292158 462575726 936302132 147657851 251628267 577740705 850972005 404416836 766027278 603880360 830313802 385936878 478884252 935910733 519625195 52476282 367037846 34050910 681804396 88222759 810439682 664134456 774136238 615531877 492020703 378432486 65051458 95280943 637887558 106747191 274026317 154988887 753180636 76652504 762648138 361973998 804017763 613940427 643039874 86983615 635981456 854909605 41858748 584847509 469051938 213524925 597490901 472821310 902329915 622384389 74116414 197623049 141390759 881846784 549066129 265516290 216814482 543662464 329841081 482054828 911435119 467486389 402820838 594474388 509329423 643654718 222530127 964039292 716964162 339331052 629933253 885466109 776460264 116942142 654326814 466114260 197355050 421440032 347869771 799696918 849342626 72548944 597872859 255754403 206206896 623649154 204705308 775862892 935920259 452600859 255696623 815389178 465706905 46131681 335191737 997533254 22105687 453002714 605617375 79419249 886591038 596559450 505133038 349449983 228740222 681328784 902961961 884211751 282833656 336437533 797603902 494507927 33399178 906096564 505269829 238572809 409632230 197526141 417879409 881565426 520695518 668062398 357962618 928015674 390198077 805457300 145797935 713699963 53041928 891276430 343746771 945653948 909382314 922302935 733493601 438971359 225858685 668362842 203683199 490931769 841472066 682760583 534039213 103831903 640412659 541519072 741808978 751740284 967414512 651624117 679579247 160867717 312544052 386739417 6836618 29202582 220054233 161023952 214982189 983849747 309316740 22629253 889476964 56732412 521028935 251921181 294392177 805049082 441816393 376654790 473693731 901780619 71060370 998824085 207448749 462809503 745663089 803265024 201048465 267117976 418444895 781459882 604105755 919492239 361311185 578656435 842031320 593600419 309932645 490730431 163324712 809880787 357108206 935961082 56964881 349198744 162158030 957446514 187580805 807606887 516751127 805811017 484692229 444288390 761810517 244736690 175181939 53281912 29600608 524131605 984370286 896255625 635387747 98435096 188079677 434392418 767018005 406648582 509868953 454372253 623411845 828434994 991340272 69955752 752283010 883545296 147187597 428292768 422637581 540300273 100828750 947867670 580383653 812061787 752224385 140554158 109320214 184155956 152191573 207750072 11261614 671915850 259487763 843114798 89652681 623816711 515901196 647699209 336334419 367005291 473493477 893440392 840355280 762806549 681999240 637863681 121610652 228001287 496928560 179744974 642411360 340444714 953732066 246184221 632947906 21717640 246123811 222711897 281249009 202031691 74098194 149290040 856362173 175116842 228667529 965596608 983841540 229847200 437474263 737666583 650494931 150626919 43673627 767420361 434919610 691670944 675590434 46583558 710122778 824651173 603161000 516443023 945373533 712117822 859501673 834821982 488939501 907029531 354631725 258457668 550691294 5264187 217754224 908653670 162501063 22239324 43674377 782059242 756043238 811971596 276620640 394396354 229540119 290489199 789047532 437879553 400376516 487145420 181600327 527941571 678484647 561752566 370319941 809845490 255048522 227752390 706906215 930726477 989158998 189226685 534308842 86975263 448722848 16499370 435832260 93459303 369617223 180892179 893801021 882042809 874452728 597548674 137760218 598977864 410355816 831295401 483090468 40694801 466255662 339315031 808685471 365536119 62494029 981615377 463496175 971719110 3634824 636067525 25645087 35900637 295417190 677628863 469705039 452705642 484826964 264494329 919813317 565478542 867698868 687551738 840892921 183949397 915055102 131538099 623105831 190748076 496687481 351824036 902504068 465906642 137568327 251042152 482995462 953605539 562276927 287313729 507588305 273879644 586055833 817052496 104592577 228051766 719503384 263697885 31391438 59017860 662346157 337346349 792443675 332872346 120568107 319391532 873351799 31252371 698043115 165803210 268364602 307117882 963544311 373156332 589705115 281611688 23196518 322623643 646435025 601485994 416188368 370860835 575358432 521528030 721011156 679304106 674822070 66252893 344696492 848035537 945295885 827169411 233165081 974119491 965149575 800419468 304677833 470873994 435577326 22000624 60588475 991613094 149851866 953302655 41635425 853749744 533956828 991228863 325910043 545485741 926857250 888726899 811507125 596199225 763006293 56818805 718465162 206196601 122715034 842915097 595798173 540857531 181433604 827687301 864582918 893864282 256346505 151907710 895859082 262431578 881189582 308803911 622448509 785451048 270619658 503826064 911873998 877310734 158678040 104535799 57826435 776866552 841424551 814448318 9521316 795412955 738532538 637822948 696731876 521801803 43250127 518169641 140252662 91249677 670662545 723456896 848611217 538296334 963946508 541695348 566584081 586992977 670980855 60743256 949938558 304161147 496603961 382710258 764807697 895025797 246021570 130047139 929692240 218152196 187195403 94512949 954066961 479505112 110522858 245802714 846830952 640967595 790037418 532902101 501139428 434778052 814080967 622089602 659974340 129536234 467257135 786276703 408622601 362432923 278030693 283497681 628375559 585147507 486253280 932451636 183665593 839347972 310254062 397766698 947055913 569134089 228674925 218539751 29282222 861152206 64162125 357436899 729175740 139018986 930081735 821618225 313009423 689147611 271730801 761659457 440780419 862883497 715867454 255934014 100074554 476667714 449311027 445080124 765537531 304193858 362166994 535937865 585131538 306116807 918065981 654289852 971072645 329639609 905273482 367997368 219779754 282274273 387772743 743603313 434292343 928994922 617795189 291814172 107980615 332393232 122687061 65895595 1787520 820471525 479951915 663752289 628380071 282904982 666475538 211491832 639991669 955012332 876519577 53755792 913298300 309495280 196799916 591738319 108643739 368391989 827679680 44212864 862310933 174317688 116354459 425001002 893134223 644313732 855627279 167798477 880075093 461825335 512954010 520227173 213606601 23376972 203220802 996947766 474792374 375573705 861421264 599557752 814472249 489666584 369097522 151606920 3575985 427645671 382514621 534195051 263362922 497847761 260297373 871895230 35337286 602777661 409058979 884754441 440695037 52222602 281715586 515184561 370715579 590736941 66539812 740691335 64972236 278353420 172788312 461043666 570472302 953332395 175225502 163693342 815056040 887311760 11228410 985699805 868237360 653062786 804726750 417114450 952425274 624857684 843258556 260868512 388879299 285563077 461535513 771257592 803387937 874818319 762116011 839042064 447635830 185428805 132458233 111710373 773493873 308525052 104299909 495435489 785271571 956583799 216265636 590828196 914708336 144567385 958897756 639538054 621995609 387860177 940831658 662002280 338909369 118167700 237303362 664080710 749768844 579073713 257628648 366378576 904413332 887584424 732267787 915117593 897018198 208497076 304277463 299733293 897157790 715705258 455588715 606470138 71666956 432256597 268933721 160968677 309197231 746241216 873418008 388217472 6997611 178800433 220999501 326151591 603522592 254493508 425502928 282573888 824930028 222417427 512509487 426997243 104580159 604683481 720302967 58418179 354430015 853533197 209440361 778942048 216186267 619416432 905584398 865245576 984235773 623687337 475351066 249314939 161944581 613575830 137054398 581560239 824729670 310781116 348949678 684731128 168487757 706016381 32648737 917585929 34359118 565958181 580134347 229889214 872273177 471526581 524451267 41430087 565231346 679586296 404494833 473078660 995107804 602913532 673454748 770148172 809613730 390985416 586547009 692436609 563737758 315491835 824961687 538441140 106698310 179489270 472815635 345564437 142973605 241069605 926975675 146958366 412186085 954002997 849142916 807868704 853099030 120670274 521567547 562590691 942216358 511248834 319777702 950044302 711179738 499415440 82145288 758959701 826872016 817468635 350851711 865146283 880554505 432386489 855154999 689433105 381594079 155971904 412107430 338920834 434555913 233325307 979432903 22569825 378359589 496597987 16738072 666223779 165572707 813576979 698565593 701043631 996999800 176643379 36679309 695541920 477003863 718866900 951771672 526085568 642155470 864826074 144680415 241505222 157781956 586539160 765067019 161909221 534952094 480467991 362547314 580713818 206802025 664923373 50667204 359442465 409500097 917169489 100675511 331214761 523237166 321043234 471340561 17198111 270901477 316171767 361493944 701040171 798704385 654150660 456378073 372567036 872472701 926404095 62450241 132665723 978645745 195269755 123862895 133675718 931748913 243289265 361373560 251033453 772602936 184558027 150216888 648355254 44035650 545399747 587106338 793194466 778148599 841397421 118720132 51218603 676358827 703792583 681305269 232792563 555933766 740372598 551253247 233226838 258984393 289539183 11936520 731975410 458608490 444245863 38685553 333596903 103018653 522105898 953399151 518176477 792791080 224339593 182251981 797875628 345251755 832233195 305075314 802419659 812473882 685457174 440008536 204116865 484761568 662527005 607815573 783806800 583990307 141202171 417273592 681662139 669134495 971496764 592704788 783815416 640508331 32466010 320877880 631498144 791309274 145570416 607684412 274932201 394431914 775483902 604310232 145660184 509412694 167483988 423595424 835900894 562800493 209688417 679185987 575076956 512227478 526830015 932156658 357756377 630537712 148924912 406945936 955224419 543257759 298969242 199326502 374249063 211015510 586496589 900426946 405908591 404618570 608930968 227929684 924270880 403499120 470111654 244136537 539321967 40518327 469519301 513580722 577433575 218691794 570801074 98124161 514823923 206825053 968987711 22546046 422919904 411844107 458761069 116114962 389612247 287077739 628625470 113249090 485312939 525754763 646532553 662065602 256826353 519531795 865435560 58068049 441076379 97182554 954043685 102822734 322983523 660361195 706609872 501910175 651959993 322807294 137093986 676716887 295577322 120334233 192704501 379847182 24254867 384217257 472744698 907910107 47148441 170850785 716646922 869738208 594350694 172212497 358017131 682543558 664642711 978353470 165680921 145061587 984648829 355588561 891296920 806158987 27220933 774210669 504736576 544269853 814174281 610309550 14992150 426213567 443265650 872450063 940488282 3127225 822502836 366528744 741983508 437313122 630120822 895275325 441620923 168740645 461932072 257620152 873549435 603098852 415182947 166647212 974231027 494650976 364607442 584187036 519688839 706981339 943921114 810929202 220375744 694438688 763227539 766587122 992877213 941402391 665175713 156610741 733203546 545109523 207720879 863694174 771191920 439943493 898753067 753925644 92741990 597162057 922249623 445571052 915019162 588178843 869216233 216761763 867337603 418031577 725928294 385534806 311576487 304412454 730945180 908481722 293938931 856569845 460983367 683245583 652722069 790085053 63999793 671974150 368199903 606186171 611994862 894802830 697405923 79134909 247568108 723585471 407384548 55955461 24203741 986238615 220036848 367637783 146229095 46675623 389777934 256649138 896361457 247922210 789264512 830903170 24944752 883081485 166233274 443467857 931347453 704356057 912244784 958511375 29819335 159958336 43168762 223392853 868047455 901512764 735171649 190427444 881385639 469113776 659682585 685149958 259612439 936467894 516513477 840725292 423266772 67085524 161573197 176124855 162230561 788624407 798176355 593526602 637020811 668665775 219317954 432792456 602367502 388251853 733489575 365826566 248421024 654545454 224748795 129419182 521533924 54871216 20291392 129802294 981016497 45748652 956383363 794607236 828979954 716879456 989011411 449846596 877331733 162343777 219721494 600263765 351852225 281788010 885829108 221917156 134075621 19028524 952228634 507851645 46475734 508312812 173330761 435283109 75563467 437882541 577511980 916656989 882435440 149219034 239477396 38698810 682487297 736777006 503833352 65106877 638601896 703963701 394637754 878583045 660286018 56219936 685664344 283724256 69839934 974515830 609524043 409967938 733001277 621081101 113691192 647802329 59559406 299552313 398240874 814562425 854159084 274618839 182021596 726242872 272862848 67190305 995334975 868105373 66203156 373356491 260657257 536319672 158650991 108789860 185617569 926939915 54196618 143401895 842416419 732638384 7698224 268901496 391836319 361229573 909958122 156212444 831652199 610531434 880191906 278772103 482703740 829111527 721523315 76807980 62666010 380393815 171237658 64477054 608948307 847881655 275364837 365266425 977625832 536771654 463333059 365374283 658297206 537193924 493809679 457802334 685387221 430867455 764878202 779721118 580800841 11895843 910460062 156703233 933279943 682577380 41066832 132888442 250077772 934591571 588866401 189937458 541998231 853261932 282466619 972572699 668196294 664165437 515032796 316017680 654447041 88515554 959249478 90413903 939033899 360656929 997636362 827099572 274206089 26000255 489855713 969690929 57316676 304539724 367037709 147513205 310237077 434218273 360019153 142963629 702280231 466788305 43353134 657071297 206872162 543852390 351868348 858755041 43785230 199785532 150796775 345503367 65596277 555878634 362557028 681479204 173416046 492307113 664545947 525389337 141914367 628654598 532373854 173417099 405235339 551430443 782122894 321955519 301832293 967319519 115626012 45253683 523822758 937890259 428319524 106551067 849761095 496077649 994804530 937488204 551163389 448063552 683943748 76371381 995423487 336780458 656611013 956541518 33853312 952198977 394487564 417417272 791889679 209343145 689490015 955486397 233642119 278820079 408755560 571763556 360494635 928905676 436841612 876629986 50947970 778970039 879806583 380720056 890660449 904627422 290630707 155232948 439323864 96466695 283886528 974065175 397633624 689278798 580952430 751469228 727230145 635563753 78578053 902741104 909812877 903861568 621515175 526803918 271604875 575578216 432669452 962792784 182999562 825979269 61410686 595973375 238957873 348473310 509448899 203984611 926661832 310801857 224370369 305291436 158655199 448128780 327365315 463856892 654070171 534122736 514412493 532709784 103457733 453260564 764395842 244035213 962770199 773560389 483356673 3536098 945821537 550819073 403902689 753928372 296766056 766304018 542938637 379348638 953616462 962827332 528869828 103111055 49795743 273721325 101125538 446567380 682122064 572345157 283501469 593290984 396348996 134565175 139891519 402044658 954432116 149313748 671408650 664189657 578734851 107523338 242034370 921270580 401453779 760850186 839446729 81176067 539149222 141507449 691289045 918373048 852211126 852104795 588828052 367704528 205047598 325603202 64020253 150190811 592965654 321128708 558108367 806093372 355776824 593148689 785597801 278621728 479511052 643861605 484268906 575423910 62718575 512186608 571558746 278750024 58446204 894635480 973174327 593680095 19561925 146898245 216842187 119840549 948468252 560392052 175514059 589348092 689857533 694710744 268197429 505917321 565440679 443907795 804359530 819490851 210405160 838908757 164827520 219675305 195619918 202186937 641072466 453911504 137122136 626079614 536703762 541664199 920955195 363543321 952965448 576177113 245492935 899181131 148310440 105535465 950012232 766004283 601684397 424658411 569209699 349583872 138302022 530992896 220158929 889808252 803261623 765280909 847829131 901275226 760740570 524029355 791583725 869245831 411866690 437717980 352330386 427999329 353143946 413736054 233396953 160414263 753088652 477233566 635165752 990221475 889939825 187728895 64031901 848577617 908752472 233802538 492510991 141350821 215616973 31992977 473840025 920241547 23516720 963992234 349072801 606073271 888708973 157081320 114019996 147066952 422890515 499526612 447274670 957409264 933931230 826879674 993952368 243403946 890602615 794111796 497114120 480689326 3614552 808709866 950024287 670086399 973446862 458447923 483614598 759526143 864661320 999477648 715547608 939729772 711469960 696262271 282061027 197334882 298729239 147391982 942832587 484547236 64372458 939067468 124819003 644110731 759452494 904172891 568596942 874493547 652560900 564258797 98055603 110834530 771711091 520190789 985128707 435551043 45707840 639656761 429324800 642979061 454559181 248460381 832355990 366750172 960423077 76106596 918435860 761189305 85809477 873519428 380308494 641522277 906348133 93164133 705268494 384957956 175911992 544513392 129019022 10473094 677583734 19153172 348936827 160521471 382767081 605215061 568968857 440867217 829149308 409805718 548734145 558054412 208729742 532122121 581097017 290825318 358814139 510439099 587275889 886954706 503981377 296725063 258725254 859544809 16322788 30483459 87868702 77987322 457455392 649567039 24970231 778637229 23556488 948818011 453519796 596568951 743888635 112073812 850873741 271785687 807681157 940166071 237633278 750107873 906720090 173565588 241471202 695066868 816580333 470745545 36222085 231715076 345542359 426368739 247886365 806503616 950349838 617689177 109909861 987573542 544679209 243422869 137486811 195666617 515922500 268967797 109181054 530461637 156573077 575033198 702275384 308720780 433352546 445367974 996428883 790339392 974360640 254605368 244018807 986585857 584026613 125993344 724789469 978355078 837887079 254622407 53419520 954754987 469538131 407375134 263051235 367396064 863778450 439229732 703304453 242752524 37947268 509657428 278824534 999220552 425517134 519426525 610583739 235948877 409088774 718749822 157382840 18422092 432768336 363308318 221014492 555263930 658639118 122164726 464388471 454706581 443633402 888914116 515661976 91921994 243789975 901720068 870690641 339812965 149561017 545433327 120814190 64419690 83922184 106754118 73999711 287631605 294426693 173666218 240556755 942509917 936490909 683565189 123069073 887959772 283481497 706551053 288972082 720773139 364731013 112199889 455989679 120028186 532937085 313246061 504389502 985000552 670815300 422126892 968603087 693926524 858867724 404260976 633579132 11738864 348414748 678509241 952422003 389648576 645692064 97929580 932511490 894976809 457212504 24721676 957169481 689938871 934732042 15763691 804068844 144635105 127705840 866846786 967110520 233206688 379055942 799514436 722247389 558242215 458770963 847666356 766517706 696366080 733030157 454766381 390501713 343985587 532797650 54500892 235621009 645525027 631711788 644335891 520653444 195232052 208116720 934990067 785872294 810337037 548684281 416024761 381474936 966169075 792624559 180264596 131130961 754456198 651070747 369060039 357445067 824846808 634598545 170340897 232774538 322431828 316085233 641320758 755764569 996452898 74425306 671249669 362554040 782911685 364619606 453041639 368285166 61037028 923931070 565918205 400608051 631137738 379828305 610768578 347822912 943286823 550898774 277561476 240460960 361752658 859033669 973733666 198666842 491547697 426984379 308200916 743068255 73769553 670845118 15242674 673091650 689409277 205163380 30714510 716652641 581677753 354946488 35132354 918799518 892008679 40408277 464948768 853476656 172539081 249037006 194672161 465667286 574806876 693159973 906612577 541878209 260251729 854230026 307276564 959741161 602937212 720573508 419108180 526546608 990248254 523683246 406183474 983293654 759291970 643229123 87861651 800818931 859557480 596138966 28083032 994511195 691806225 514597040 779345196 206854044 655146852 623656298 878176501 868435062 219637535 520134934 978414699 133984964 60807906 347066711 136023338 61979197 132323938 592423816 901201686 990882405 104384984 679823159 242749421 701364294 85172431 793758526 343195153 584163577 131345774 457305478 873655369 373116306 39229963 660749760 817504635 386873206 218132984 107767897 989844929 136003258 862989502 797259993 417367764 650108279 160200728 394995175 311255341 116721382 812385455 32621632 125853213 54843389 271784057 446874124 15930438 946906510 582012634 895485759 389035568 461493739 369891061 443910501 963080065 127313204 685665893 815895994 448529561 535199878 954103021 462661190 387979371 95702282 321620263 238389109 593687225 966873770 771004155 636689374 40351175 850495759 190608451 198754800 404566666 174012016 922741806 937683755 961472278 54758322 511564556 559409268 527877982 597849425 467016145 898319193 792412857 400534321 90293313 21847411 641610812 69428772 624473996 538992086 126761541 196588719 475069466 841114940 947108654 860694972 775815770 579901256 17266807 467103387 580711644 143209699 181311744 545890558 453834140 508230799 274962554 609554993 782293603 34079164 436969588 225248995 172250407 418151451 701863321 580296267 172719921 97330132 960316429 804938756 588848183 169341504 79206503 671441203 544227442 914860089 976521350 251907149 960267254 272498105 276832624 336946353 919420294 319612638 315270253 521636797 767843176 572049255 417233449 429074960 759022333 920460261 796090878 786740656 334723675 813834387 352169599 749728150 964394134 436575510 714537723 783677353 241338041 836680941 47340135 284264077 399811591 860477004 644786557 338003320 15184441 352447857 608912524 574622604 971765944 891352235 667501239 728904156 478485792 631744733 36193968 948761388 378357438 9526141 253220929 69666645 929309871 325501361 404855773 686761860 347506302 103410449 646616552 158019227 704876611 772609072 365209709 197314677 454713667 512927949 784859601 316752965 471187544 104944801 604882646 973723043 80973700 797463183 346049296 480833784 158643530 828045104 174700701 318539594 688173995 335518398 200508754 399074474 515315873 153447751 48410449 19337793 222869712 323021191 23585205 802352425 644632001 935505378 871823581 95178366 951885916 174142381 170415042 226119308 395313912 192281683 171153422 318068314 773146582 671311088 40695135 714732214 770346734 456540542 856466692 167521300 627390156 313265914 275388074 642519042 990027899 782458705 631518893 601485319 728439790 503671717 503436007 984651204 52361801 494214066 128263141 289877666 863844185 688127469 3889699 263974879 233946511 173270936 59576365 915006305 242008852 513325424 788442780 13263065 434497692 747522592 550229534 442895955 109913283 412147810 799589917 196031191 635548452 212763302 640250409 27281857 98095713 562395968 140479282 434423017 223882747 566834736 525643230 772189506 66322530 150330557 576787609 306578167 263084335 457947765 285905967 873940541 109487050 274089291 788912547 495359031 265943440 661359579 967677099 180435370 840776473 538366483 629094334 225703841 690913075 781382407 48171915 845039538 407663722 58799173 98665715 303108563 219970249 329691824 986613535 203591940 753452411 30864260 370404765 624252410 355525843 361040045 4561180 77013319 452565625 640097532 144141188 93067858 280330230 147615960 668954639 299458069 143100586 8031448 702830801 61587210 640564888 768657580 10277875 12952209 525250901 792837539 10627397 21902254 287935117 418458057 865201956 783968254 978377268 233694359 445878644 668615551 776896377 242109977 352605991 274367975 939316183 895597948 605921714 342883432 996300529 331974782 920732287 232760971 706942679 498185945 139093367 479055051 724840900 865011579 502285956 852892914 116185421 967029473 210681327 669289242 109418694 257373828 800051238 381446315 347372715 807718054 791953969 414073518 506937801 643788642 468092743 853860552 618474339 843429957 440299155 432439453 711202537 617635828 66627014 564347790 401598940 774299568 311273587 799550145 20712009 147773721 411107343 947903910 698255864 539409946 484973832 549863034 434271656 197547256 586150374 738877744 940013237 670549817 641284581 536619090 685528305 548852829 291902355 2684335 509518317 742708774 178713153 807724406 436732061 386020303 597430917 906108083 145402221 507127495 106270192 755503059 16183231 231666573 898299782 204521264 976280922 91982177 327378517 241580711 95130792 825246194 156854854 371600701 964193702 119001566 586008588 549160084 27964852 907333659 191046626 756170586 184340709 174255392 777021703 256125983 746594758 702742562 77796030 48068520 550055132 254610466 483345169 580588712 764586125 108667574 653950120 317507821 205984740 924372967 94670720 816594147 422872275 888517325 248152771 240502032 606733597 755033140 362387817 489907650 903743605 135116522 896302437 232154512 787134427 863535456 90325974 653367424 8651338 731292755 926071515 625958289 265138748 527168157 14424312 150858054 462436916 640360115 714056025 652630105 812860811 168510606 834188156 543571696 397959496 73829397 152329685 788636575 930418738 497147888 305648352 810695955 329088603 581021806 423134291 433878461 595394229 129816663 748896507 979279051 200476370 801432256 189300495 487043715 57433846 512905319 740946500 508132954 48660072 11076677 872847469 584889771 851030728 89811881 553180107 548330789 724197098 469842251 263442304 837654437 998375617 382661032 27924022 490671158 242416913 916487029 34013606 532139030 486605415 430144900 653966867 68048127 182342714 146684038 75437899 625472922 937095523 307692771 423220941 968361456 379586944 624436209 323341240 407335801 181103083 585878981 802154542 351473851 997739521 511854732 94641345 54809741 341267888 820983229 275194819 578373930 888297981 12266674 771929332 434391562 578536720 782320012 566117413 962476298 474003374 125918170 610857952 300654169 807453978 569980566 555228193 737357849 444911531 745179331 251754448 463134128 267463784 588220320 578475817 509485133 117564918 348601302 430190172 476638785 787300625 737440203 461404535 590566337 155325854 546168574 758164454 875415600 875024157 73323713 165176109 203991021 83869241 452869011 297331346 281035332 768476249 105872143 706466106 258417336 795926399 757116694 784683060 754433761 807843863 886521144 668531026 514125491 792026085 234988660 25972921 560106876 228931381 917738973 457132123 729214424 257201085 312218690 167393017 571360559 105504780 469159598 269424358 917971119 493422559 664596465 166781768 935152107 316588217 900712338 600316668 208921888 113795028 605675460 947353937 690214518 453502838 391879821 731029532 753936151 26352456 640344751 532368834 64706125 543004114 675523278 524459725 368486145 401529577 872066554 616926406 847721995 641007763 911854946 401682348 642042115 486814601 959735100 161728676 536942196 936757427 198041584 361779041 373796031 56411028 461952504 74257600 35889814 188644571 197352354 492356765 54902107 757334430 160997481 619231397 572595410 954048464 707902711 859968272 798636195 468997217 24714276 896635073 343787442 587881333 800282261 196017249 829922255 143005828 157801820 65267594 643198614 209176820 183707613 589579513 180500967 545550429 855096205 756949573 153940265 656448681 68866585 261723008 346964072 722024981 9627979 490949342 759352174 30770805 633314561 160037402 438311099 910864879 616831280 128155435 750446436 686872821 647453950 873510120 859718865 997208380 622545132 25821238 876949469 304440667 324020629 775790993 564080874 775023451 737487221 467615849 475648022 276701088 855332514 526898320 13035465 981381860 886452111 453699971 501989749 633956315 359887140 102717937 979713693 634542294 534748700 134642987 265269060 564766034 412873123 810152776 532475471 211793597 206233423 593505362 779461966 828629007 817760318 868417917 433004226 145363989 707317716 783463442 471902166 313023556 14421486 151680359 445306902 765227160 907336423 629651568 616968386 688862588 670718169 823248948 647835894 774989143 702928044 965605365 481078354 104113664 652188583 255229638 139116793 821856281 463172489 70359199 436452330 164688669 769560620 673491482 799036352 946064577 324061215 139979654 256694795 295171783 493830537 12592753 317382675 787595187 195610224 762019553 249272209 579923844 339946443 756075017 769897854 587599634 195544694 21763400 387298663 225332631 713788727 215084732 974027952 261033347 518036243 652001913 256510189 810298649 388107582 315508964 463647279 500533879 292101923 714123324 237262926 82477814 333938516 861958393 520981029 933182339 645409463 910859667 29303718 920962542 573315102 836441896 260419757 911427378 437272217 666681528 420304310 465436286 961199013 808742690 996583055 646365544 377793606 282986574 760421323 600456985 76196624 241706520 170860818 146120485 996961945 38072671 716322087 716516958 611435263 910842016 521494289 999965561 18569191 728439962 823813861 76478325 257604053 382312298 601642487 586269884 681442426 661940714 266234463 270999886 92842450 563448475 760819918 403479736 944464331 249033593 417930897 4164172 819070557 213307456 248763439 98053154 729345729 593901621 772767704 436022639 525460445 610579649 95372916 983646905 892099231 88424366 549650212 218217793 530339092 131297566 496706834 30932548 36628965 278192345 959929825 801141859 563895871 753793698 954820834 13138861 92446086 168399494 165490367 611192147 280553085 75120574 990612749 914785686 119328643 377994750 534607325 348854427 815317525 833294091 693083495 110443119 38047345 404241740 880513510 756567936 811583004 724625136 56059108 833474639 315377708 16511640 443777642 375626276 78953636 962291754 360067179 111265342 206457778 628385541 1050462 783326475 71472156 176681273 105215438 119870531 758520230 468596736 266375256 211188379 138524308 311129250 731738770 392487403 424726618 136873778 371495140 58233801 620328385 601961576 418788281 929728196 854033710 170541434 788556413 64964602 805183178 289366417 896433191 721859308 891377707 109013362 799066140 442179980 23348561 801690734 779305668 772866508 138286993 91484299 429328624 147311390 703320698 924514866 127292785 623981036 357071006 143001031 193410143 96579845 918106202 310718902 131391533 230861597 116490799 909499009 315016367 401139112 871577982 911034478 887170327 883178287 514055607 570033568 527258898 334917666 843204909 464564568 575857716 509683970 493092087 569538767 662315577 482492107 954329586 503036407 353930723 722343428 931157247 208812461 858464829 515818492 307335004 317549499 583263223 471004820 256555746 832066012 431576422 428402733 126840964 319967496 88226450 192968254 93001659 108794706 312089314 659137555 987330648 349068108 564258049 91704373 240061424 563260771 244792581 944438851 73976285 887039534 202695481 211828899 726254479 891505700 833682603 254627816 510995425 631863887 665305973 351870149 440259597 507949325 383053004 318331825 190079076 56933765 643194174 435640127 575730035 777073297 924116457 855332194 494331128 923715205 172289264 433006716 128417596 686282404 100264284 813657101 138172297 426184691 456547673 678300830 938562494 589189416 95711024 192623670 185983525 89658638 744650625 887094615 92561534 625278983 157589130 309156363 935940298 108743274 146674541 55715981 688861336 38741416 355367932 365560391 84666166 745955812 211801000 710529002 523429327 658226406 40014665 298544718 524597294 542065211 596075675 901094154 858380975 693639618 11203602 389934013 182815226 379718188 573362262 80936643 239991671 753484827 198432172 621208632 634551855 480868906 819147265 208425737 486547764 941970278 772217597 653619645 791843549 290107164 119529512 98300603 668452719 285891979 417087681 828729751 639425800 252593136 993053408 166939509 985169521 282840153 240133619 499579390 916400878 46597317 55280817 63366929 491786749 480529217 790748615 830374611 337133504 916048341 87376691 330112383 471278551 167835295 450902989 225771029 489164205 441379291 249821942 931685737 837962323 132556410 946634557 751622607 410576890 639968974 58492157 720657450 378736694 745412477 587764357 91350781 47105800 711432287 550273400 415865790 292999532 551519348 235887065 230346518 167390080 8652765 643722154 189943457 283363568 846322207 781892202 718663657 943475871 517844895 758703527 557288280 654424723 70692356 628817511 175972395 419230215 284494120 55012111 155936978 717016315 191997713 581117861 175894014 530594336 779440870 533054229 473584482 686123411 721172959 97564408 895564067 764091894 9615253 250474608 623548433 672948150 997775485 218704818 708071351 106440690 146016202 77689586 241005957 921581971 758116087 830746364 536951103 963289417 352824301 296598332 432432004 808219848 693029692 495187584 428600072 547341258 63053468 991547613 106971225 399947830 738014979 544770341 591331613 30883971 865275024 978314333 926812735 905651903 89021263 224339661 805821337 815760732 32511595 603485195 928263038 560995319 775175008 254968665 78698307 368959563 689643400 998601356 982684777 901879528 954375228 784732970 101462535 571271075 302502163 214052219 462171542 508209730 496837424 516520438 946764329 802010283 725208895 782229157 291815106 922891199 303295318 733869500 457835790 959377718 283750669 708180898 514421809 201441382 751820549 174453181 803617742 218129250 834845254 472243559 430221792 628297876 907570282 973391708 270726848 801811138 700830278 224161537 949518113 924419590 446872241 717121101 204058025 563154132 690555465 918155856 903705483 465686280 914836141 182014404 554654363 70169960 596494290 721212064 373593853 65722056 842059230 67174348 461188310 373791235 318062204 8591293 824497313 968491373 400209019 214397609 925307203 886408939 906620941 352698244 190030243 732964362 481762848 676486237 44275981 299229459 108755343 495924544 652475258 695608448 946062850 327629097 304542050 896657006 672279360 346943498 896676269 691602719 369793650 160320229 535460559 940132474 444082734 546778792 728225734 948419651 877625106 409813740 388051483 881052530 563895428 957492230 582911756 295120867 45180308 177648416 221455512 111956661 783748716 813197871 962813058 623320682 891152639 354643597 741100791 463988010 768238719 304387533 66098363 701845471 385647877 592007048 95772584 609748599 805534971 340999692 615976565 503777341 767346310 728540367 57736385 93915331 501757492 985792680 486816572 714925611 166769012 838982546 161155211 872870696 594847871 332463208 254557365 989199177 739624389 745776803 46729075 399578632 199297454 52690986 431711290 139436028 630853857 785828220 618861055 144331511 35284161 211516229 715163873 353491317 703272931 546607389 190008348 830527694 918111613 981857079 237561981 994201956 480571543 117382865 263004151 139763200 209323776 572898793 202456942 600635896 1926864 666240647 41739294 604753486 141786277 605220708 488706718 116989848 569884568 212390428 173297041 796181034 946286645 558310520 637676064 427750299 742934362 824941270 584360979 225784215 550970020 510012599 193981884 388317780 889284623 287804679 58236943 428167536 915872520 60008454 364788428 234534127 11430188 818725204 538545218 343183826 839569984 719044029 180000906 146387749 853762316 976927177 202824539 842433739 512948441 709260174 59771281 125532053 893251108 264210024 891686940 735106965 922204753 54275629 491011613 530879899 236620695 49770524 112733642 449400521 567049846 157347124 98963387 342429328 854867717 564756111 420022289 389876440 605706681 829530874 779207267 866549427 10099473 163360379 899275717 288994217 408709513 370786502 336776122 402006337 408207593 762175131 673481785 916007165 867388241 682821505 796991573 928425059 639272599 158708581 274803674 886051012 491812883 170180010 42043577 897546788 546002844 407594355 452159554 893119269 489644963 255066808 21189210 736332043 413518385 158948493 258588629 85389319 422190001 788256308 426515021 750273866 808267594 864751818 664665378 537908447 545500848 169982449 767523502 511718043 749237089 594524112 952443849 82775413 511685917 200309312 597960247 793492751 555436738 221753793 64600664 378363271 428289511 623258688 813831503 439769051 807200443 247287207 940488177 280600019 433081399 318191563 911286172 669616864 524689318 631967401 329769882 837569410 517183808 289689803 216093292 79611823 158656927 242866997 208181025 637272159 894964388 647006974 688926337 685321176 20066293 339686305 842827490 397534570 641331846 672738333 144730317 169166857 460923009 818625906 462271433 254079287 465307068 857530555 989467317 570262709 615922160 721504928 203627881 13794586 898166329 206297218 142478016 867136481 561084525 627899411 94505775 769473839 480889779 189036764 939877415 458451673 9843144 491906344 802789908 372260230 610616787 474991535 808217467 158464557 267562104 447333958 522495406 362328479 104194770 314066442 724877314 908968780 835557587 949995644 807491070 685798085 584905018 740476160 187591008 34541501 87196344 876899131 645553739 828888922 647579931 208868561 852335123 728290689 473306183 995235523 15664655 643113302 181438365 913558893 575410618 575032709 173405092 835315960 341926059 883279940 336033092 911527740 278303287 363365052 123495195 368989679 1137521 397886560 586870998 655949312 860697866 110862476 108468797 506496890 895559821 217602958 470134667 434448871 747791028 436777335 462760676 878559829 819722953 470293202 682603910 677835943 195482001 256701480 630075558 341354401 83759315 384349779 370879091 874799818 811772916 35035316 566205505 459164661 882008762 907733621 53032133 358692582 405043386 436037634 624512682 528423032 812748799 613333928 108330489 360925085 924096256 8777970 606643092 891619987 647930501 251626511 593998812 856900549 971933372 242261115 564877045 426598300 757135103 513794897 936741717 808423214 29595583 187236726 731695855 697206296 107161021 973115296 728173878 389271559 467980172 148221521 181880442 142939523 412171204 730822803 886470953 335549220 543574349 230103262 475447103 867740087 246093444 754903489 875282730 672829961 249702943 396085589 290486726 395063052 210670391 770960954 69453718 158223487 627830841 694190549 708099587 879769094 562556441 142622084 156837172 287649503 481824833 774928294 649579755 817421671 942028003 436823478 515682141 242768960 520082036 668525655 195038733 612232381 106345187 298745498 611719999 433611527 861466078 641478264 186753813 67547389 582373749 237181750 460534481 492026180 511521424 519106821 120224178 282651501 291246965 251447985 592954313 565287022 108609559 314215772 735172785 211331327 914398390 10891119 34160447 914628690 192000059 673748035 712340948 170887528 976960134 868392467 569615570 185850394 871462146 747390212 694520344 938673993 855323270 654821535 819818812 177819529 310905885 786583925 347816928 346335956 463979130 245781759 455233189 329350952 999062637 673801304 648421896 949522361 65927679 411229946 430059842 579746054 277058989 994900175 903443234 132824142 908318510 453433475 360695475 513437387 808054320 70858064 870077767 286846567 786430357 378698200 123329975 537849432 396974015 133345801 297093438 33628514 550707999 532186199 675425875 396652573 439192920 947631135 252759466 206209875 210526980 475338566 603374311 219522050 115508147 721212214 583665102 464288000 739434811 402854917 833769536 829979819 763739927 551648247 754548671 986273124 629575088 558976869 777441682 142306435 147382497 528587152 475450083 53698983 919233241 738249290 51260157 950978809 911573522 618855381 600838639 372421970 82589811 660153322 224426241 987767180 935288608 241674680 203051301 234513793 296454863 346633616 211426659 295144236 889644061 81009136 843597858 881235876 700389195 782258264 469194172 389195026 456083786 283454997 244190555 953910018 404573843 843895279 296913830 691851968 193427800 887693721 23958280 516619593 643913515 170343409 446988966 847487503 813997066 476894352 909334406 57092371 50910460 761399674 974168606 5582992 806063286 276014867 704532252 499916823 864089395 729971048 159948351 518219784 165347838 443174672 4663062 373201629 849975469 286859672 787127610 764244847 942436517 850375266 800176304 913205868 923809856 911376170 340649561 785214760 707153032 80106893 215059735 258740713 332721099 505863967 303236869 199856157 983502287 792706270 983055594 718344945 796372652 805302774 919274997 107171131 478101207 791445818 402202867 777012685 15019421 241817995 958755323 520381465 927643939 619147638 811044734 122075536 19380340 43084886 511193289 865747595 110755369 677086680 304236085 152928480 192868833 398871353 44261219 495905848 559098224 796350404 579915543 932424477 870286611 49150943 968112008 756182503 558822024 369867333 93286709 568182247 781560910 810776704 441967068 539258577 561177731 190518470 511316835 103035277 892267258 429011152 214844298 882875323 945985367 271922296 699120410 639145041 435710019 275410637 213616369 319393303 456596524 746461301 508513661 149535597 98725326 85160437 495722733 764141459 737021658 426660778 996912165 952392079 888153894 171295799 428308394 61989525 997461199 6852118 380971937 632495429 233618872 28627339 945245363 229490021 906897702 975340472 209993853 47111782 463195080 822209598 367132351 548154332 538241689 225392710 230999361 683554804 453110826 282869233 612885601 873403502 502015580 885246160 684542482 560142838 94295569 176485832 680626030 953776212 649157733 719404668 678062725 126041101 494054574 703200190 873395101 141930699 318787896 412479798 986835203 276441078 98643527 531639158 377420895 631350520 120045258 642825935 100735848 1739485 378971279 299949099 202381559 423760329 96326042 256930313 838527829 317248651 923212291 91358283 553643296 134956123 157110027 883169088 282823701 291702473 514711732 581489556 514630507 538090149 426806132 152523482 289547334 959489865 541427081 842849442 373095598 40809467 590818114 808696411 903793431 861323736 331567693 929840256 842758504 690860000 774318429 714244196 570553465 42934215 991823938 896077734 967007669 740465797 839503929 101564927 122569116 501045911 871985357 651754536 756346885 212003657 34817003 374430180 726720540 247119250 941811845 136306155 814952242 690821087 16761173 893204929 858661702 378865771 712856022 505175857 600740612 703003122 699366330 389633639 479044471 25938945 492637204 377420561 184137994 504674922 21204630 159218868 581813245 448040963 425365590 394132388 83212628 590194318 463027646 849216724 85652273 687101403 710651380 522925266 146867534 950762403 509486367 736223121 11880565 161578650 618299935 500429070 470369853 318072621 418144376 921672366 394264808 133742690 827541978 507284797 816038385 138004134 589540148 939088522 719308868 647998260 861934584 153204429 321784392 576738872 561541867 725033201 686986752 311122242 551664069 968471081 456801992 300147433 870921866 971361946 41734847 101572731 961024905 163686251 813356376 273530340 242927453 940735702 92031256 663171784 133949617 462369339 420769828 689241902 198935266 815606833 683718411 132988141 415832216 58222639 71066946 961066145 244458008 383143388 721005482 154072488 294750854 299335881 570002096 313282464 862410330 457825140 135306305 452904884 439251161 881990880 673010666 478730806 454820298 510278349 37393346 684435237 149517538 867117078 7713144 3478156 762643884 602108292 797056905 165868793 677577446 482910883 879464424 669646885 722829108 419310181 315457550 62054951 361775772 189370098 175224824 493135183 758658964 497945618 277251625 568762856 4950846 856346263 847340874 44437694 720929119 787847325 279585495 455623044 989043635 615569684 371352346 848437045 20356283 438834162 276540314 928622518 877465692 132043866 326040000 530076869 363674776 933520104 619773111 961711588 439358285 117994182 199366135 833187606 706564546 495257162 1298409 553195659 876633476 901758763 248154736 480150604 903109174 514102277 578206930 605586331 694886444 726676544 601103984 684968661 122795824 989682009 129591663 32311473 393529545 52671865 601430445 142855744 820775843 628919307 333125606 832802214 845367246 491194554 35530176 916343756 235267342 999908801 208956256 130712792 834574617 761980443 354184048 552011739 297848656 539985085 584045290 678374994 733721024 964702543 971379097 997316909 190416809 873540852 124508708 559333455 780242189 718524960 458834960 161119075 313715073 685812518 370301140 216996603 971154351 370931271 651204571 877474796 768884272 753330031 532939439 741780254 604217733 63188350 890257098 439852040 392664979 332825294 719594196 668294513 829669984 846068149 55151921 775391738 761340317 781720405 405960501 69014221 761003733 228733472 104723209 35500986 196185639 581973552 586973299 680154691 288380062 878782548 558144720 200939099 37091406 694317165 343657567 953601700 64531100 351174880 961700798 282520795 406240747 581708709 417510691 881496744 892129883 91786503 974843366 817592419 503913283 565009716 821347034 148012586 286871779 928407195 411916134 655277540 174640432 656461973 749155435 513450929 891683132 353668460 689949654 692386987 662211919 382882384 843260397 97716244 73496482 490455430 637579896 643437320 613647729 927284614 118910088 806534388 63803903 469075161 523507880 588817058 802268591 54240193 971070956 752386903 82107121 592315527 150261173 232358701 47930119 137629304 873791921 803420525 773406707 960565296 823279361 72085841 199265487 511861916 563433238 412934768 245053295 52661972 894693214 182743946 661238012 467114276 783617533 311181859 899028772 405457156 400942458 474737040 466678618 314284365 876246349 167333176 4906314 14903979 129043296 597811453 820159626 516220119 296020059 998204523 972581465 993823655 309685462 805037430 383367297 58053026 98597109 469052333 303711399 626599077 239258420 409258254 334973458 912748937 307670775 560366452 605297963 197003746 965105238 880656207 982670155 153248614 956898691 134769462 278483140 740078858 513047615 683139790 655682237 515810866 878286630 414042047 1500138 51943879 278563322 145784258 878218359 709667908 230394181 483704133 478701537 547711688 48303870 506144819 21324548 918460523 100328650 475174292 412878274 70235022 438934779 216410893 956598167 379141989 123308788 48334827 864554756 419652663 813799596 673082238 447723924 828056137 701371069 524555642 106877094 255970456 28650205 920816394 338991497 173653260 812928208 382326176 613201223 311515996 618212088 476582521 191921680 752169719 17277265 567847874 194400793 141253736 404328855 411538933 164421070 209654670 86291277 480610046 815920634 202031846 705938719 754986651 355980765 377217197 354989673 800920357 61329714 629931247 855623803 674665589 230394933 206160332 652379380 152136519 162247106 107507644 602536583 273476747 628608745 305284718 696852110 672566163 140524524 440376513 425464124 470102054 275116773 664524588 999904394 806835387 498514656 19357596 602595353 480390824 61210947 546737909 894522409 634637212 971682227 889423463 90121038 572762464 543855405 204072047 548787743 29386275 715360252 160800176 22895166 606269393 460596815 622095847 828416301 814860781 58114626 866917244 98457272 493824142 775947039 819702066 864010690 636324828 379613435 747294 601723608 811451509 853613520 857601682 703408328 837293624 160857907 996516702 206411159 823845756 863770546 871260974 600905737 848389218 658318589 878584011 795920457 5678294 6741669 886551457 552618585 71407135 542457291 265499709 237655435 175573089 465442417 209921438 473399634 418025927 331299613 886587970 972531645 485534864 417042176 766572588 865839632 513017765 491582285 685593691 829101527 74450428 828612409 398231157 508362061 444188550 432867393 194131846 825053116 933608504 288131773 984316951 302473305 998574639 596521058 78196932 465349476 875053803 197916867 189241294 830823497 436455111 177473501 695023640 582335902 553732693 594093080 153691478 382716823 449601746 251554134 343943063 991192170 324532 974515101 629643370 161428261 962805761 850798684 366763758 188865781 829659079 481130719 844322290 904951914 123789120 289275921 862111040 801798161 567731999 836994978 522211688 857995060 787045908 364696880 991456160 809752838 864901977 117337237 575281753 216791776 968237527 927957462 517192669 694741431 900555572 805497495 990667376 397475878 538673828 486524961 162899064 634227823 304290802 947305903 470915251 109165264 613038128 990219838 706554860 65405038 473339044 286032379 787589880 753172785 107722847 487026801 586724322 383510700 535853080 795280430 41971302 167825658 370992339 898986786 944565032 275563845 144160150 806507832 496470276 239226127 879645729 174149216 449058643 903024772 766504470 778051359 683228610 933241441 901824108 745487053 901651700 66511521 485138035 752439392 776756187 168273624 864104096 330111649 63202632 845449878 969495592 776453723 920356332 876716702 812711610 154341947 581207045 256912375 132487112 234305434 121994259 626350837 396805650 49608429 399640404 272386404 666646914 331931367 9069890 352641290 643387183 178342501 31013864 96310807 322632738 815854905 132636623 107255547 701189188 404285938 741938016 328717701 818700042 746066251 519579556 291952206 742193752 353192360 810277233 856232665 737836769 438697179 235189975 95907282 828168526 869373818 759660864 793978657 211261304 247532828 212182125 862593739 375232197 478619638 863355084 988887799 399229963 191506684 793466384 622804748 593457041 748851357 584445597 31749192 606394073 833599807 709330058 334806944 569374816 369564384 313288167 68668186 699826482 659507492 925274141 501677936 873723127 368912468 458362580 452704315 687208202 559517382 15962500 438945694 19245000 441437922 809808095 499436763 547313436 907318822 859045237 171439812 951106294 493402358 190280941 434909834 520277682 887760330 379265711 494463586 423531671 235173873 532691862 360547921 358511117 622285731 377871181 217276179 575606145 188255799 297275397 566462452 75752360 480011218 927411738 101071180 944844160 779136694 581652767 403277648 736512483 128935310 402906288 176426581 123748608 591213673 125521714 925982275 553175587 806266843 81327730 690974459 466229136 925657143 165360903 852011955 850428643 446909891 308735812 594759088 516082775 791425881 341737802 513456848 789050558 332785534 667864407 241663766 599784645 78838275 197214799 205458782 296860723 597663187 118386634 745248211 510884306 902787693 253074716 168120872 866891260 289480422 833137108 819420240 176167473 469075330 481262044 542986917 854919331 341070611 36779220 871951432 818425777 377303837 663118791 589619092 567713374 404235556 631661846 144621322 729930261 885844451 480544941 304807235 115561875 797461154 409627131 256289816 268387181 898520276 377684505 274192778 134544579 261184542 809507895 359191703 883478358 885422241 450219408 851312429 189300361 89339445 441233139 489028505 438614767 422106992 336175530 397844890 709038127 951673129 853226842 741949608 153643668 494633717 933070570 395002917 535767280 131531734 901238255 630359046 309001729 677838084 105573626 539231202 905746860 200158918 777528951 112862774 848496295 386553257 696496035 518849577 27025043 737638550 967735589 792288246 272672852 662557579 218189357 860510185 944300981 107637766 57340633 827384597 228112911 74433463 623867873 684482299 497760656 854450657 647239555 624194567 875926903 559274755 287109415 686533242 183631984 773218648 118001669 803953991 676404541 961423586 753765154 163814192 621682697 105404829 222729147 488514268 565012116 726171299 323229506 36407323 298072797 459218543 364969137 81145722 914626460 864118923 31954208 363023792 635012099 455952533 838307998 274450331 851405479 490392727 437183853 198597445 495595831 10285457 739666548 289326160 11387104 138371909 572179622 558017590 390164445 771386298 52517635 752825384 917174484 800534632 483320396 14244360 988744666 983941310 544873525 93712196 174493604 226741808 856391721 708106787 606601963 742286491 875033053 86000176 278040160 297388688 661567950 524933856 538296864 235273936 929434813 976403550 889192841 149664304 217533354 240061033 958032958 640895979 818058928 630910421 392835904 695874737 793316472 433888862 575946095 96486292 103444951 468281740 895354294 23380842 500695193 128619641 452348587 985984298 926638291 786413281 889801121 554088294 147659427 708642160 424144625 885690778 617145286 418807152 858705645 973508232 430793694 873839252 772170111 664657709 762922688 950727313 430216557 417690751 590481661 480193951 356594975 523692407 937258973 970942125 547933054 266674111 663324693 412731522 515608049 139641993 717139444 994409552 225469911 293175478 685987038 616432011 991217564 768012256 163379214 678392452 471185613 901384915 842865537 970330103 973952635 456986851 352954471 32231946 833889297 538871296 304572441 629851878 185979631 526411931 479558612 776787350 663373347 793035550 421703708 223533312 981794651 252030532 632177251 670086037 965439832 80736728 475534778 596046925 605794725 992516645 487822203 421353570 714664762 607181256 50138159 133130521 129008444 749565924 993712113 921693566 435764232 692081034 961936765 57661530 832731201 184364822 64744075 910750226 263955431 821122122 625905470 4778528 162567031 180329165 2447214 559200366 924173278 901523966 140554152 98476824 181165757 796077849 867293044 841899074 685929405 274560251 757181138 440645671 728081450 321706869 328334800 540672660 156940529 966363425 87998951 378865310 265378919 587762679 733539515 597771124 825175240 87773001 488485041 716625556 310515239 1034430 58763135 939634610 161597075 14366790 202378251 130090745 378242845 856981446 498241076 551533030 476716839 665695444 925301892 18841162 948364999 427201214 19144263 389692449 676705203 319022576 450707748 820126728 294299255 179433255 852747479 857770688 337345410 138265602 879194230 693447191 423404616 418085795 679489839 553730134 828426976 586588772 670726566 844880898 310847808 773590199 257607934 70470845 135752683 219379588 456936588 924339769 675246387 13251348 442778754 192211841 415470591 255092899 337198673 131525483 445938993 558601131 612886356 867846930 100575645 878784993 766523467 747572179 856967645 201427392 614399801 530039454 494893121 816826654 122312997 361320610 563183055 503408029 461681138 219443044 764700347 776996449 208664232 868439881 780565896 92079789 165049002 645914530 438579096 738125071 761126301 237934674 219131350 587693341 695084501 40105116 61985447 461358467 119955638 222681412 359396578 161834944 252003502 105177160 729434429 640781061 292529725 636406962 925843215 36264811 117543354 514719705 430834922 694328932 504141535 13571219 303454462 351519495 118287191 615208883 45912882 487306692 893623146 615730726 611446033 106091375 272056358 311664681 930532181 353109891 336866257 764766560 878277555 80790461 980751385 110980606 959568552 166922970 527461387 447051526 27508556 885310327 767146070 836405023 853736573 724667820 58700404 92500997 158363241 349844761 297400150 350762560 19147946 469192033 81456389 581955640 888546163 709610768 495895258 89212458 144569052 989970119 700655843 440565 937832704 73183945 135846868 328806088 764393963 592191411 385664640 213495314 312965405 725279014 399236991 844989344 581034879 228267932 410957479 573585940 37161279 168270127 521853309 179440771 70502718 790652551 497332009 410319075 226605929 17022387 86485582 376206155 348669051 502753435 885902050 423303205 225516345 752849381 418210686 333825961 319967133 396112232 932196463 199014506 229420875 536264931 279685975 333166140 751411676 510327104 461350956 100924420 776256448 230173780 83722850 718028864 320588678 670824638 868392347 432886501 657790025 516066730 850593470 443967022 929222934 855552582 306533325 635422010 560660525 643306166 858977960 257403308 203336402 561684870 555196386 414742918 256000954 131313767 422501574 38874732 784161825 455332276 206754804 385344681 441830919 599403377 647010412 382520703 716010795 810314205 223479512 583525758 784470203 818437688 210552525 429160811 809287359 475240304 31822710 496050370 771427985 690593443 667906148 516092724 887335400 53487800 260722393 76343369 274105582 173032957 178719041 636144131 69755794 93679800 410989025 73448413 343410001 827441663 754348050 347074134 171038925 158573045 174160281 94924338 681446503 352665677 567983029 737426951 544399103 24298344 555283942 212333274 233944711 857551158 329366579 216520493 439983668 386407997 938882590 939692326 580226900 437586357 566422393 454939300 63358990 160966596 730642340 422891775 110636531 370341904 418857888 880258761 322068603 370813935 556813187 63590551 825336502 447862432 922001970 810656009 205145865 723921820 476532418 860159053 834436232 737211353 890738104 8915029 39171234 780463097 176958665 800833515 101126503 509074868 295490149 359575990 347952188 898086946 877227067 705766913 203088586 788230289 919041300 418228846 520525151 147375837 478129875 337265239 694697309 456824072 224104120 104570815 34247408 71660788 944311544 699795492 109718795 355405368 587864246 322470672 307410167 795174545 436554805 507832646 817869174 883959225 858088416 483116158 122779790 528070242 410385661 461745244 653189315 123115488 80025259 629159928 502392581 746831483 745258415 333941200 902751078 701277956 34170887 285834204 524181310 924683539 155531819 673839852 400944142 715255944 36344095 153833331 246435940 979590088 274632932 531390502 752256962 38755245 919082297 131898864 363422971 844781640 308459154 363100122 553437135 530952751 545950525 883906452 879857398 482492057 643730629 405409018 206184757 420343823 567225860 777817963 641607403 576248565 507445132 537578250 179601214 481440960 938210160 172817055 838530775 724860585 978345144 959213339 251508273 207402886 16077074 603638138 22860819 246087184 690455809 147789662 461743230 283119290 708100322 474313921 213368460 188352388 258333565 890256717 669220953 388242463 550457044 84384488 125313557 145172991 388767040 880311806 288628966 839452070 111266928 535011215 215657521 442273938 637282248 62435294 246619195 817717500 446905864 270510680 682032463 220277918 460275723 669444855 932130794 585428445 93599047 5369288 552589806 567972619 989179172 16392425 262831875 211454802 91309135 568723123 553494743 693436740 620237242 84882567 221665232 985566751 843122763 456321814 802944803 924164655 255332360 880508227 966641257 455672141 792135779 329508834 170718670 902271017 775504345 611973722 755602406 901380178 447895116 314503953 398044523 628586504 879215917 194949837 282124255 519120234 834200277 615536719 593355465 753498807 857241847 372812173 725561470 870589971 115340300 782391614 464269889 130911188 20119338 999784733 683446947 39674184 834555115 981084049 56229671 490678001 681061158 737383662 167773592 618068423 516832978 790212569 661203282 143398650 129829141 785408401 953619540 92308743 669857684 317931653 697764901 164865588 30461455 759787601 251928746 50330317 228796895 601100726 45999232 596116913 626445047 842498162 90497928 756815401 30280347 40484910 904159018 559703637 529579858 600928301 330541135 886714493 758724278 11143914 609999769 47368687 21346902 513641394 276195819 704041879 125462352 201621776 307447065 701036824 589805928 833595315 235802091 493147894 458483896 408554789 33057877 714601725 925617740 945026926 498797178 71194718 718334258 278996066 114223780 788799979 912697659 666808032 973355185 328378502 816232545 381199518 81976144 659716467 139234373 953032289 253089989 610639016 119563209 48857918 831207470 184424160 658897761 761706267 526870236 464780234 687328633 455040923 890322226 744465298 718823466 360880660 179158432 203209651 653706147 56598180 254336156 123400433 604805879 30813352 888993315 401763881 862380915 977922581 448346687 329947084 145785535 302249120 255773450 992758230 500474890 654107946 47813380 565996385 380622696 389210697 325585342 617721369 280134203 266177535 652504270 191518065 541100309 622561125 58174029 98945659 984763404 850872306 766045251 817918065 427123769 610206602 602897334 349388195 547440444 653036712 34039996 854297902 400673784 758867317 329377118 50055169 558318782 171380911 540559463 706822848 534530252 118878689 800554441 616651885 126813487 447541114 650167468 352812226 631114516 75818987 889506279 369697578 336810308 92781004 324965225 761244650 606626286 351095126 184847047 550290898 645604379 518549385 278272639 390736132 472941188 487918710 876018367 958498732 487731889 497025991 834716294 866151650 807719269 778533864 498213230 105989646 532044778 582555582 658567388 324543255 228167434 284889530 429034842 849480214 655012953 362186594 311509443 656188452 764750633 322080234 256831033 980024631 550139368 430268134 26860181 316912574 288085305 971547304 666915454 778820578 619398991 120467631 670640436 412005282 475473840 910157911 441241764 229045128 93927290 650219027 547860554 58539670 139826206 217234084 588940489 413766072 721902256 856755770 89152250 688721588 522274340 590959927 282754257 868045392 727898092 830778058 650908209 337439321 195726015 288973136 310729645 875451071 657439115 460927624 961730701 796844775 775770172 841090251 525430298 343781984 268091740 192683313 396070790 890900405 819565001 108667758 358839260 939468646 488783253 619023266 633391347 7769442 222823088 852698599 87578926 486867143 700379104 53482139 655894018 263131749 103218223 833830117 475987252 831961187 489033880 498690897 533421320 143204904 60632004 412868253 515460736 265308323 257514231 773288925 101024119 2739453 705067738 255043910 296655086 694450721 740648887 1285910 472570095 403748741 259743337 774587521 796915747 988781086 661446914 555910462 59808963 16330531 280911011 306700904 381157340 731846429 269590968 182337862 687979677 374610054 943128196 286966882 476905519 754289661 350803723 471280789 607507003 614511599 139858474 74345507 234069273 468328094 873058030 989457259 175344388 662470623 814153678 841171599 275397322 159378506 779091628 585856425 879547262 225442602 870785082 330479316 473974691 583696970 27082343 122198257 982951881 151213273 360991584 939308235 399358721 825812850 179886801 116082453 496951255 797384006 96680147 384387396 260860230 334449308 238930653 199224951 69748199 958724242 684119641 344959301 782222796 664145115 274494217 30737919 840544805 84873117 518716112 722323944 303567425 979259742 762492346 507362420 981135934 444781199 216608312 197920337 567574975 524144279 660342159 775321530 684648774 794199006 828035934 517270954 361462283 84088932 172102662 277372506 478976680 175771700 641773936 69692310 719215874 993477543 402640624 771060266 637324164 29150484 290499223 324102988 567991714 887040694 966000963 376056611 515653876 754595596 139202055 648373953 20732555 504471316 825076448 949683729 670471739 263517522 490855163 464310903 559936611 436322681 98329246 709961460 715259836 284068525 947156094 183447888 642292878 383559115 147225931 5361520 960673063 609346507 168691525 412410666 580577755 696928003 600073797 348770452 698864984 274079562 756583772 793307654 787115954 397690826 776297992 438180989 534800824 650402271 83851982 193700911 154691389 766572005 763922207 997657912 861677171 799951683 456446583 409966180 582525532 963134448 433003621 401177024 719955678 773123000 219299760 339927247 682226847 726943880 419682214 380145678 97638552 437213085 551169061 802159341 430372719 284121797 556619565 272207526 64003962 774362204 412189597 866233766 446264348 416312410 223788399 197380903 258155943 109016135 497796296 257519433 210840957 639212315 958202841 789909351 608760806 851328846 360272581 364501641 668345318 923136022 405986126 756227701 96169738 200726596 262088965 555132193 583283873 962103761 382126708 856747793 886253921 651141681 600146206 189174240 115988388 44005480 24325916 694483062 962596545 53190387 602960143 395693142 90151107 165228943 823872294 980146629 855152586 119700485 689453764 494525271 597093515 132923787 43862988 959250673 736724654 965477051 363497038 869983843 701686848 320706601 783725945 833197762 853733686 354053380 96619381 175595602 230532206 909695624 61017123 300440239 309551195 272131190 957558752 94318792 702921662 819875907 344853446 238961400 908353634 225739954 240083154 910271819 350589765 551789659 204570578 582064023 211648626 212838953 37685717 97606097 949594824 279026343 607953154 701663344 159807406 170588921 871297783 581188912 436147952 20994384 583580046 506001743 781845764 821469925 502246012 636039657 156303065 838564368 940779156 7375844 569577206 158819426 831823167 890466935 270173634 868160673 597449232 779427529 478656303 993347004 23599148 27979020 162875835 791888631 705310236 557473516 570512749 750588085 735654477 485165024 543955045 913872734 346513857 834345946 954768625 820789456 756253149 12655233 683785213 694265929 128529891 550194789 404537087 637407198 10150488 38242394 209125771 225370051 591803740 616923965 341709911 300739621 754292538 6587671 202532388 981559828 338252547 956444098 253181581 25421040 301851201 576060282 737856988 908274980 116092240 768048111 864096000 472988853 961089598 464248525 426597231 52339523 754459143 682392344 825819006 826450892 450653493 824180211 844463410 745790690 875278946 251912512 127212922 622491977 293787540 819788047 286106813 954349146 304667392 27591618 696523991 765404671 696214946 133002195 4940022 954822045 175239823 564489512 613568026 385862054 118750434 906152860 481103902 320014201 657680065 172689650 57207744 976912008 207663668 594974692 574121080 180102884 232148030 357408358 17187346 478530484 695921745 647982531 935441919 688545223 646763007 138714831 772756845 969690157 941781303 532994484 998367024 704701969 625261035 84940330 488455088 841213209 789269681 858193327 106712936 18857695 800514570 49147772 731157933 41772740 621821298 681923293 169065263 954082210 166622360 987451693 39860061 557082564 610592333 333773711 52613668 283000621 121684322 101287007 827086748 597939175 87456780 419953376 786723643 625101027 610888314 592572219 916330507 400766188 149020065 106365541 572625726 75246392 963194035 283685866 536231345 84477890 110227025 971675797 244248705 310480823 58270627 455157687 752799976 321190433 994755219 597312920 994339403 976094227 229412620 198319635 664852043 278090200 707659973 828419214 259483722 761436245 718584602 751141384 882159219 301051427 976493332 522460234 171096215 394384766 378071499 252972885 880234273 846981495 141888522 337807061 577833077 265390670 460628359 222091647 35905497 926820432 195781946 655132456 10623628 266956404 886107501 245445119 341216660 994949379 896946941 365123581 583681236 391619977 903724006 992294020 365887489 206850032 595551076 874786849 810956175 684430425 763286347 822943187 568219860 117981942 30030626 264428644 33482957 968802392 432328036 32644622 480490650 651553517 480946676 33477943 255411760 381527931 935519365 629889731 815741808 395320496 724136054 769988817 514438096 678282936 101387585 683309962 612451543 705784760 950015005 195763851 756849628 211076022 363806920 268635098 259052119 635775732 755822807 233893725 637726355 361744067 785409501 141676255 598374711 77433347 172761429 440599915 851031322 485064141 116644149 904097731 51501080 79457577 604249028 181716081 880699481 503243479 748205313 758341371 438482892 489410226 837538936 898488778 859426463 59812056 400443407 521424138 322331683 710455849 612648661 499568502 217824449 707002016 179208654 94105891 60705528 844604333 687599820 58647856 832125305 9754691 362633533 602419923 914136713 201144130 971884438 536309864 389659700 223938881 487440726 112171270 303850256 327982998 14751174 916449169 74073446 222966024 917420007 931792718 563150603 370584095 634917593 720599549 2133125 854161325 789130443 987303262 778794522 964961708 191919649 709253639 608352187 613604912 605143328 798829920 426703884 603381233 634289282 804984915 563224627 98466720 46024936 841478248 215719604 366948893 47968332 723500489 462279149 473203080 251396762 675889553 682413798 690003943 882834032 279863310 447887943 51226486 852654950 408713753 731778761 748259468 916870357 863732461 754175591 196303000 437679044 200252621 505443426 982555208 157689738 672073958 60948634 712992130 703549755 259798666 874729333 417796573 575297877 119089967 603346074 311391320 685244609 912400531 844978604 274202411 840170354 350084709 798860190 760771320 676698674 404973393 153995890 610244443 471053422 912707963 690474070 793488510 917379861 574834722 868619138 256483946 35952178 99290533 216156830 491073564 810818435 476418615 942502801 789309426 759035965 559188354 745931386 973055812 10171075 182303586 821116647 564098111 343903581 175950574 407412257 701683983 577372081 529457906 579952015 327426915 955398101 253298153 538748247 86087445 572833380 974675792 621852107 330831736 196455903 313263129 347960482 774134481 11143798 722350196 889569000 220551196 689872633 997333384 70338440 138704904 739519784 242394739 624019448 770398700 688618058 375765438 144238629 559155305 670173282 230161712 309805994 815201236 490502060 922574086 273443411 406154694 98640860 946843238 633782959 272163026 920519901 702892540 914716886 266095019 832369550 98431263 742567279 990199341 946345166 819378149 409966524 823545569 826395754 954487521 352589694 462424738 103948253 857650460 479229832 29171856 528622708 31983799 60466755 844712145 173745184 86949163 942440310 498601736 709415219 885390626 431926152 77513584 882844524 918191496 676379602 787938878 612897235 778235125 564788469 932445623 195347809 105466730 806888649 251667577 405816359 177512801 627276002 583333060 94458761 475353650 796779228 609743898 359234749 736136479 969059506 641632125 230960501 969044563 682749766 375344689 322597833 380669751 286533088 101471775 683683723 771712278 478937815 730196991 992834095 666334930 840716563 158140245 699186948 982775743 519865100 287874629 411875676 642449952 86964353 899729600 991000719 511982346 164744539 386597967 415623517 275238838 87120579 804905254 884161037 293270317 725138490 137187509 220249881 718952345 296049404 231400954 506025372 168805305 894665002 963841944 885796920 447096715 15065503 288807709 920259753 309521339 160782807 355993331 365286048 199393405 967037968 710490527 43749372 26759847 540537286 328500216 822351912 490233387 557988412 15788788 352287941 787402727 496196832 150224005 877501811 378582542 641990169 735316884 594447240 135175105 619030173 465754796 49215657 863746608 231756672 939768609 358832624 602400389 692471059 388002511 653808850 134173882 692963367 475711734 578544504 619648015 204517131 261563001 247775494 147779257 69749874 709775441 860052201 475629905 261484317 731283735 258150071 39241250 417863369 271969278 775052268 639820446 89598528 22274605 141547924 6097925 208983279 295263462 957038012 268647309 265333862 320926473 460719916 294464478 190381482 490042919 15070188 868490017 221252951 865524001 167412396 569272474 381461285 55675288 856340992 142827385 539957984 521303782 746570639 172721984 667713033 658865217 355655191 991210777 936501536 472460126 302518233 673394494 55528295 837683782 488325504 669889511 846363108 699208804 309180465 630775649 313056735 134563610 3613587 565251699 1332669 543833692 992810830 149923963 114429748 599534536 480390993 511305639 447647181 361233009 928581997 529244937 88511980 9958643 822263491 637139820 145752217 95450774 957202718 56500815 509306546 141843739 509889934 368967935 581695331 787964521 21104725 87137770 955901804 157359365 962892272 961516951 535629028 409544572 914863877 735295552 997201256 229418325 505745585 384104376 39353992 889811748 769418090 819434634 202453531 23686229 801144837 673232419 986902066 737065570 935302451 730952117 890140899 741127794 861762361 687434395 949295752 715304179 427177238 417476879 264240480 550732874 414122568 78676199 344179121 494367307 203339403 884699028 356190273 512318768 950973696 383532389 32422043 828097114 530413141 994517016 438495 493426217 700837941 755834445 412112709 53234943 980964270 154145618 769618615 438417708 601556351 699655444 904830361 187035791 504472326 838050328 663664239 166211736 790570590 711674409 693539392 107457420 666274868 330348434 31583559 358131600 212161891 562445850 660402545 401027249 58011585 602142206 542901725 97738780 687497143 999280899 289911339 262145799 769274058 606920547 693599908 31448463 518534989 4344610 358822797 987010720 43995832 660880247 835106925 609121551 984742329 402316582 458470095 164156637 753007387 51010513 139100073 404219806 412158923 946243549 280664663 249094305 823278364 13139982 759048019 250892350 319877806 32528049 94846389 449634431 57216402 186699516 163240135 824788086 142659166 487293151 667098470 639707570 348145313 483507771 598872274 65496733 282216969 17576667 335861432 615448347 232330394 412354837 508759256 141193455 349156499 389733889 890098026 115579052 8755329 168158256 703638382 837056374 862530459 804150981 88441352 861695730 329068283 223383452 832257381 170780197 377539050 854914057 573058049 704092382 559711566 313067632 767745715 909134348 530620867 252885764 256037700 516143168 420074894 391374451 607953334 916310564 583387832 471185028 973140919 937735040 982658546 475733080 925670108 539379594 626467284 733681913 545191557 867720650 987495344 765461216 126563892 842763400 585468281 862620043 613146056 16567394 30630680 18024007 292591105 363427975 95973028 50685143 95802797 239829201 843637328 356071310 582600985 948196596 100782808 535970755 82356135 272804625 415448800 961815556 177232759 898086433 69480566 981335831 305406435 974256757 408224205 696711214 719570706 952186287 791109984 562579372 247167719 713913496 649176572 19590927 16004716 803581104 413700159 705759633 670589 993635810 455753296 237406715 723704250 800467507 181298665 865229010 440971112 543131555 441262234 257634479 836122510 837390119 987936220 894934585 457328047 291735988 288698419 392185770 917783707 589271862 29148063 571699168 478421857 317061020 211892608 345104736 246229463 477656263 175734166 181483880 453126012 67045614 38496639 523681888 831065726 875571011 619989238 672482043 535966055 976905785 742786511 91059306 485062274 439470432 841851627 853352146 789522052 560634793 192440522 954227388 906803981 39799878 937582285 436681393 358777437 202279116 869304283 158006965 998218030 16828949 61603592 221843375 688176913 408582471 227291108 66604051 535707807 406413833 762313538 702052274 97521904 585336464 406534322 246470934 493525458 355138670 362172812 44112423 148419511 253519386 960499089 83477487 898859338 630141433 331661949 155309480 211938407 246730124 301209479 876364653 887684505 346210248 496844646 458273858 418215930 602541548 144210415 341495103 678399677 260603108 313570240 343775157 597446629 746506362 915830949 137838325 308461323 317712514 28189719 789902791 33564952 165336574 398610695 558496223 711487496 161944524 724986163 690853717 13762264 25196075 974336185 519377654 11117254 998384057 99232235 395649994 214843318 32813934 875673145 705220568 29457734 968949508 896791115 32910316 437147155 688104914 749027554 847091725 420569172 990530584 717336765 686688640 26785387 387697995 483260154 610558378 568297108 44572750 891376254 211706989 213869717 698191974 910234855 494487398 673639755 833428358 194635662 346663985 652886833 571955457 216329082 437168729 406443006 113368294 820517583 204518997 841219856 36255099 601121942 67429249 835981774 360376072 896462853 245791691 756969871 57451703 839607497 323755690 481856124 983312666 784944319 138696117 603250336 510634689 29391978 963523243 770018878 921492129 225551802 704871887 729273335 981871719 926183375 282310036 590679518 534596700 352031019 305305459 881894222 25937299 198203065 323954603 517385481 351529154 753386501 29641110 165439149 84830272 519419895 529462236 228434093 425409026 489801378 693131647 397331798 848496903 975368192 246025081 605013162 288006417 673913762 179363597 491816624 459181007 517754945 859271463 537373941 275067414 975899960 722833608 764046993 535346344 646826405 512049343 60637159 209932978 462780374 321116452 65625992 10903314 351542811 696904126 32320339 756275344 885151049 869438377 876179369 24153008 11607829 968966016 443238408 157055435 55139647 270766102 866330879 289349065 22918738 346699797 275341998 641865029 191847327 175369589 546203829 488491618 778593482 913024103 373160577 118834115 604702142 636766113 194252521 160829844 222061377 947382252 101599163 656010038 780840713 454121004 927950408 536945022 736881599 73883921 720324651 108431103 535656596 16730281 95914394 389115878 323088577 957363068 749622229 375714956 468251867 343141194 29835542 47797663 968408687 99043857 417307842 87471765 570882038 252593367 672015933 639713125 101235727 526743818 696315897 906518145 42528362 313791430 763610217 289913482 443267997 332212096 9698026 833181139 528603717 423526560 197614597 527667199 336619805 798926649 629247117 113351428 797106666 501511172 4995769 101526554 459392237 543188637 549484571 770013415 539737914 377248010 236840761 141709249 41991200 207276801 668472858 246388762 753063139 478140596 393333858 73671814 869544163 776231751 291818051 849376151 935617894 188856922 505280511 725750729 168510503 937134276 454574927 155933298 861430441 945501022 537424105 624076474 168954057 104105890 302966364 968526876 45465902 855760457 719168153 467892403 831942291 866507267 110091983 422036559 825870954 995465194 616352061 683022882 806863046 237873191 98603112 393497161 901052033 346442965 443230895 856731985 719923335 394447139 98980206 89691113 300656341 31402468 540725539 827630316 431898752 881429811 502611989 216007636 899360316 957309735 375320110 268082773 31450783 198865815 263710754 888786133 649511050 666978222 723445178 204355952 76126023 316473285 225691193 40334682 888379647 49040244 619289946 681902227 224543109 664797325 933836811 4619048 404500970 800031445 182018789 875227297 971784870 901055850 261339220 70656453 91222872 313531178 253294202 428946130 533905763 989164317 227654443 448417337 835067704 461060808 676256801 269489386 941829678 802541152 364842494 307079250 787743865 33455178 27104584 457961611 425893055 62359249 502250621 782673796 253935661 732566346 210336625 780655565 263571627 834254687 925754923 918265543 636151520 818394513 428874998 369030125 727007140 662096723 7379276 412731761 555669542 107795083 243319755 927202775 173056246 227001944 477761247 587552265 815101768 286235424 202781209 801166114 803853387 593066131 328585422 848040133 699781990 636629151 716011401 792294755 290920595 161344237 888779091 674243630 693537290 749576272 193000286 895659992 497011467 233408576 765857500 38500156 639753702 969577103 751454641 35384659 705278146 399071908 580324070 118948063 693835621 980999917 862759093 948488742 422329433 388117114 176177467 379384364 300625505 597237337 660234681 39835917 235955203 899213175 212696555 887445898 740734710 87978613 930109317 225510286 535046913 265013979 871688883 764641917 578877770 509315178 763943973 423072115 582241833 671788131 761758025 203102270 73933394 506708861 332370383 485146146 83337795 62824759 841241883 868536625 285895449 660338231 530010556 114029560 374679662 385951981 407843263 518377357 766899744 284637757 295825833 712118100 53249870 286098058 67580558 696824666 907163828 59891734 991768439 881705663 902814420 853725803 387629020 215569998 173841695 361121891 155189001 657180023 268557877 639085169 880373544 547084447 360928700 320577714 622818025 101513274 425406605 762695970 320589264 10470463 680022803 581041852 89213501 797122752 450052855 87034458 166759039 68685373 253028981 737289603 602315900 308202638 332880005 699665274 497392050 660415089 201521366 280842471 258318459 149228127 582024214 543463967 260954248 345731771 961150698 506102167 635891800 717343065 862103562 316201291 98224855 726402944 427607592 870298375 818102222 389525601 934248857 923803133 646159205 850480635 704691465 684406313 961871048 784233298 68653962 867254801 510070577 201239068 759905148 884680764 474594296 56959592 536183411 610170457 360797369 500408854 556069646 752902930 378056671 101734357 258844030 353242465 440293577 316879412 977968164 813532378 693371808 288867860 835273677 647168845 515887196 622619223 520705961 676372015 110280643 766224897 52077107 930912382 931573811 440603718 217550084 275308463 292687224 38599197 793757583 388990016 434841434 140109554 369361724 794585896 580517840 504164304 199886266 238346959 377167161 919950654 212260086 155664061 869852301 70824677 19819775 785244085 939221537 792043199 632874095 731052797 789335665 833117474 970075955 873529460 601412476 438790503 187864485 634848353 212788363 703582601 54501241 340760779 386644853 169896904 731074859 631751003 835011474 435504461 451772351 599901258 796690081 722949389 638377786 482558874 826433728 245959923 797907993 955025087 840557802 593531985 67482724 554601889 227460032 685466162 282068189 671018536 513141952 519927080 310037519 655378801 359462640 835826308 777144907 787962428 302252575 166475620 128965905 477370367 2602265 646178210 483188380 255466160 706013910 55100898 946682071 264134954 217572625 485300938 686162473 213007939 234283421 681279700 533449437 258188850 825747488 972278485 398459684 466408755 770117414 75452209 247932642 253081673 904755769 698282980 339579531 128598217 953748985 464402021 275838686 464145631 872325861 364554113 753748762 597861465 378991813 489749323 911884502 461135702 566111482 480352085 445232860 440007940 737508239 775501293 825817431 949287407 513974930 791902029 711496089 656323172 59328508 597573700 359782838 321726008 22157856 921301912 180754929 618494961 682379909 543787464 437430327 700339713 70413786 100610319 319682258 277869894 41749617 437950011 248139421 275628822 353328900 572634987 73541089 820176674 816919235 199675913 953579820 244906131 370585633 339680755 815628681 70954041 889239078 220898759 28813308 88363582 294746420 740090100 959972624 432423973 441751616 307114543 64491563 923053929 686529574 26096153 945301615 547311264 85079459 937427941 509597657 374433150 316223929 41788931 852396381 197936900 714995063 907604996 460835293 142451634 140871601 206847495 155173597 784218262 309940060 988760495 225748096 704308741 37803253 52339856 554095022 630580735 995088633 50045740 468366704 317173230 787880188 13141173 689606510 20356332 12384133 461130446 76384327 968974525 747421926 495792627 497883277 640157722 781134035 302675578 648806690 944188361 582947764 848818689 197278824 286789092 980563483 767542110 205367291 641614227 641772917 610399917 640084098 94043637 720169269 772452316 901344465 308608051 894935848 599798283 648516524 563348323 20595706 945776460 14490015 770666152 669143924 932415838 474358204 185853164 739259902 988832818 951060200 63940582 282558712 918000265 767647453 632674468 616770515 443865877 402284989 64270274 757443835 292316150 279875207 252462678 235372137 20792946 982617692 464046881 193702570 962130530 808991830 608777810 579191922 220489835 206036889 733932085 904884219 782347760 753112828 941330638 327011657 260004936 937800945 6444310 523469407 102837240 548510355 165984239 463625409 310091640 464855751 980951283 229489359 630154799 882171512 16833338 621881265 243646239 931875923 176136955 467676445 473430359 589425050 829697375 320226857 395316446 66729946 137828090 611099121 215583419 896118297 82046414 87593599 559207792 757981184 61884603 892311503 748261920 501836317 785759016 192152569 675918408 107066952 179314751 263084439 708113432 741314571 408728853 929211312 910576385 793298509 507561805 245438772 626638961 80758871 14044177 115353099 152756996 351440558 525853793 765151633 765270974 651253958 24080337 94894288 530669505 154073050 817112472 365582164 120863813 605206740 770524226 472054493 91397814 487865676 323187605 905406995 510059646 448776823 39903977 740571167 566358973 38636955 774965394 637432384 418439987 782200926 729015490 907787846 62230992 10010817 231890612 779179212 975205881 388571822 670135943 645145750 522383057 14553819 722954495 309395691 828166584 591417280 832797203 71493224 769587595 35530701 363425085 963654933 957526252 772961875 260430973 412252014 659040837 187914744 849979439 393042558 84010945 581737532 665611183 468662912 607483900 109396087 425014659 47590882 463027266 131509749 820929261 957285206 380525802 452678774 883188203 580885474 827803384 412896060 672657493 328849081 377596826 213171339 606302239 449415258 130661583 841473537 553230553 68396685 177174526 15527478 442392832 605085155 565136621 289361600 850589034 17258493 433179215 17647051 113062313 473902307 745027526 118876126 989020334 927719582 990992143 190817988 232062747 352240455 800823852 966020839 441249148 16568429 930043667 758525504 712279100 722953774 191791721 88997087 761549550 338148207 73736773 916513978 878992424 991057577 883687325 775612310 287239911 404656308 704727326 120071535 171485269 831687727 428984187 373784047 962328227 992693486 364480747 558696525 555723140 416229708 469690124 690708808 272901539 183683918 362277612 928561390 266921911 715354823 902780631 80149304 612896331 571722506 430669098 174597878 820422394 878207644 349706381 675009433 572035730 98191200 438496054 962800808 682312922 714127578 412223560 595437453 216770513 485139214 618830853 580706188 161878067 915944610 886075688 8934918 384500739 372749485 332805354 499821631 572201989 474447107 894614800 513096300 200539916 283666250 929967002 745071749 832950882 499443728 64694847 412880278 663098799 413872300 933080156 784473741 370169417 789089987 471402076 357103127 937588943 104118596 781403517 967429332 151937500 507283836 992825418 207426476 604549131 856178343 803163074 10206651 831228741 431035207 368367598 557327520 439044939 479108998 401488788 520289687 400517645 104808281 126198282 330781889 79111831 402541932 996671459 518592347 711872778 450863532 594492164 393332298 929965106 931441030 438547421 738527134 716618122 878017112 315686581 134281084 303522639 181534757 735320857 27720032 779514777 604463433 402036962 929324427 920607218 995457512 54351980 7672452 187679890 164092236 330311516 385747130 909176842 137875141 572933763 213516899 438287782 844848120 928677250 426383182 957072909 722748536 483799946 791026220 551587998 411075086 360381826 101986137 124998650 290529572 683218459 329739059 835340636 838327002 137737266 330621446 910015381 577312660 968127372 755034037 227586437 758768991 316559128 358551322 854940841 263277150 231245970 740947670 385814201 659363344 765083673 171452632 627399899 740405691 310751020 837481157 849366278 113425220 680631955 268099630 493611902 642372758 840424048 988354523 514577018 51936823 919769202 897994242 549326468 543476340 986923893 544909720 663634115 178856012 361051448 582137577 941528275 585262179 871595257 290706512 56117118 711745424 176040010 572408742 19692947 759542538 499925702 640883681 839415643 33739797 187238383 968229750 354314666 538831021 575654430 409515182 953906723 486837803 135678877 570068398 197293721 558502093 497036940 273934214 439201262 203646679 118180786 271399151 992677338 679635444 705135075 901201623 44586122 553211621 816635186 131542843 145275229 513597606 851220484 897938895 794994728 449546845 572475163 175482629 975286508 503004249 262673667 884714356 18751394 551801743 153207657 997212189 134382798 818475673 660874157 406171424 989583069 971620963 928743841 351253345 412844313 285523201 298158494 219942740 705060326 303311835 423965360 698675145 445462365 410005789 892062813 679674945 514895993 841381228 599658146 700766276 963108160 333387396 588017154 58506316 85833936 483146807 817384327 665178388 508668164 516902082 627699344 698549887 763795604 448288687 799317956 231468197 42511750 282156965 919317577 498379175 278693938 362202135 314708882 114135195 536468433 791038636 524908996 446127584 667627483 977870756 225794738 351967677 394767071 145037779 464857344 342290113 582911855 852172521 403464202 190325922 934975905 375879253 762407527 739063719 314443228 832101874 197904256 729360598 877354749 601354743 221363844 705009177 902614864 824121612 681482614 316385552 595070080 620156370 814462570 502511784 190017793 877503850 183075527 26059504 582705395 916685709 493092088 574686373 176867513 659918894 337109847 549570055 858153396 877679298 962166048 98230202 190904434 431192776 225200153 885791587 847779800 573515840 35688620 575992574 47963389 192421031 823718120 805068002 453250415 6344629 279733160 300642411 726340808 948966622 216174707 155085026 42123957 403353451 617256163 283708247 104716058 618769201 566513098 317972699 297347368 461104975 37851845 109663613 724364734 573738373 514673239 145947498 266727549 338074756 714107086 455947391 71613945 375245235 484777531 630806347 964465544 314588705 536579488 617670068 258224148 569751355 747563110 749069401 145577903 678192156 68978982 254919797 347942641 219267152 19915205 137790191 842096502 169005824 321827224 453277773 553549236 330695310 209718157 403081316 963447144 898264282 614400640 524465435 540479530 769550207 481104859 686456390 810508031 676971046 602135980 301516090 470745599 359643248 9018331 277020899 695781489 816957652 59257287 120771538 505731942 749092569 885191751 182380100 479327182 523273532 205388440 546432702 207485509 124280936 231539246 814371825 795951876 654771561 748463719 145590267 127359809 629401493 903695009 335528038 273513936 937199585 815524634 95007873 669266739 445781285 423939380 201816929 977355053 43061798 214227327 814129557 919943616 274177208 655984713 504493343 464523307 321748699 421992240 997626191 49072943 997024404 151689368 275354969 264455123 48562299 807393727 525537368 696677278 332272157 314325702 83104840 420182264 979165370 240020457 463318126 744168236 682398387 71465293 54370806 638108357 963620219 553700144 982439107 821956259 751539802 785307183 581256166 811253461 692696289 788076424 598966551 168758839 451475456 11296919 803036523 488190563 29867432 677716031 368553723 273731015 333865866 908688760 43958759 969671015 347872191 168415794 513851644 594395812 422453918 513038358 433866291 216150467 995236166 725871075 635367689 743812198 912116274 24037142 450968557 874760333 991096678 431101838 985972916 240739516 814653629 120236550 155888906 124465947 273328034 601912140 717171089 784453380 982014235 547707860 740711098 385655797 63676399 807214681 606335602 437078231 170739097 284327101 122372455 406097829 229664157 980410543 185872846 4099667 932123804 406992461 840657053 564585872 228659260 526381471 386900933 541862275 392528404 6385323 833387097 555374288 540127749 845631664 151903923 252410647 157884868 787304069 361239108 892689038 52266670 712347389 60634024 521239305 421827532 255261833 221199172 372459895 436001090 864004291 82999199 63979670 656477624 136809317 611478758 866792622 100420951 814920993 410547897 821256086 260665543 596173821 116474558 508783072 647568543 206752904 189054872 995979109 232610118 523553153 919922244 830453733 694065026 756043494 551093134 509740115 395041313 318377779 474622087 584569463 755983919 49187283 258750786 15658400 599468839 226771643 494524703 878170415 423890000 672722539 526914692 619318506 630517089 576739377 907719130 383312620 548758309 870090644 92663701 926027195 798219857 871307965 738692109 106841585 493715245 78120735 800753291 161718 974149412 346682865 180798421 886582161 247336186 76136969 582740590 412248031 798492341 976974952 106768468 802692809 737446456 155919803 762778559 34392668 770330698 367777452 932922206 617094904 490447871 563170738 480714302 527926215 515654292 956191347 829527838 555962855 542500468 20382535 205602719 75396269 6431852 609075684 160686529 797528119 17238497 225848248 106054004 799716316 337759747 724416060 187500499 964901013 396103356 856572656 758155627 1781600 860056218 450753212 453169524 175196093 125272634 322152193 92663219 222732045 474765250 400497753 119955701 318278005 937353228 91902763 911640629 240085256 334084067 684564802 400714797 91661893 200479703 317972993 520140346 668928075 525952003 268616647 844408344 596906650 258909768 514453110 741012562 375447059 933482397 656274292 586034882 740728113 250447617 947082520 730082325 391320613 678943334 547089309 450161055 384567250 254317044 687214752 799613491 128728463 661962702 407312510 502314000 921604882 372590112 157106834 871646405 507504010 443553690 888771478 790759973 331006488 674546937 81453882 329093142 395283166 218606650 67612929 216151700 955324625 904148774 685966200 379797832 94380090 767005242 721067344 220873902 907470134 236402171 61821901 926781347 240516056 951492500 444441230 576913569 513458524 737315739 804309584 829000398 61564059 399852652 828619144 944529297 773965130 10043514 492080136 782184551 999874094 620229160 403796767 250768510 82884000 401852185 929939613 724863855 871347999 50433469 87978341 551502360 690113323 675382453 696316909 159214353 213619758 772503295 964056255 929272103 16532930 525924414 839338195 521024833 386229969 768077171 377933424 721840221 677519966 674958456 396639398 911637062 983928832 351713654 66045141 182595870 171510817 640359525 40753903 302824266 205872628 975878000 685029863 327036837 628727612 994375194 564448088 896360559 964565748 753154051 9373090 679557967 821208054 502677794 459250467 654074317 380357770 877050360 910329735 529144757 798099342 568422761 793439304 580489122 523560478 339504052 141379349 267320591 842521724 137214230 809565392 588255515 584885555 60410153 617011585 601796494 527473323 711155069 668102441 443773485 426943202 169608408 238463455 603007493 329458042 745709653 406573493 182536647 714672354 14301135 871093753 529813356 191778190 11777856 694941288 811271103 827875212 926474954 346464273 328158235 116378924 985140763 134259149 425644670 722291565 511851006 270315924 530479459 825994078 605142389 501843674 893849110 978773585 612442511 908764823 333917459 332704443 798048662 952474369 337062309 253016360 581469103 122696515 517941402 903713673 531713919 130686480 5761433 127168284 866958904 958856648 931784480 47433492 360397333 42318803 616610573 561948985 307832659 20322581 567294036 171933721 358472877 783151987 383931907 881121953 121758233 222026900 398455678 458281202 114801085 82839029 416883701 427243607 115040360 387730697 191521476 769205174 904375803 459589575 564807021 282440877 98850536 307625050 745308316 908240050 911928665 755257350 260686595 886845726 227875756 568260503 929893283 627980836 636175929 507440274 873872669 734327535 843850557 970071529 199116960 761768395 262541084 245843552 75750418 661792149 558729095 913798802 142098755 832807149 374561364 547009173 92286050 648431664 324824244 866177732 641340122 870474487 198742911 228859317 951908523 492756986 255419233 874481429 842679185 601337151 547014328 495193443 23970380 796987878 835029179 17861024 215403743 21095324 380083086 774517410 220359078 11436684 918198665 138546261 582963917 111153484 475764053 379815220 739054695 495884659 778222551 870004992 209362328 966302814 344495792 583260471 640160421 509906729 432095561 757489181 723453590 288854472 90212742 323806087 982932341 941626129 560184260 683144499 764820472 683515772 249390471 189505842 2831789 668433313 2539056 217456401 636331741 795889216 22277826 535886245 294844033 848682465 645484111 439344102 429507534 298763904 14137712 610224842 371763953 266075286 348866310 597769154 420536305 964606352 200305308 33355784 439645180 293249117 731994845 659519040 579764059 259825602 821544998 961684650 542713226 41144338 876751503 51013601 613998838 497134822 148894566 536779889 276333373 995907584 735968963 851756452 483057648 477111819 586893677 136526883 845605361 294444589 659124579 166932451 396824793 946441054 114372987 591374716 559292888 456497898 743502049 915834701 567834868 321411332 27466605 346564344 481456181 38282416 587436494 208647977 464119096 239366454 240285035 695832705 714925265 721500645 811142832 175640025 575042012 171738909 577960313 57128945 246784872 908697023 629289246 422511364 559037049 632854181 666833618 505192707 653070789 513409305 63482733 123831189 653446524 191202831 949429728 970388523 991728085 324732550 904560300 54726349 617807353 162571857 994769457 218689234 157601051 782082546 898714157 217017898 596446161 156387406 815441975 673252316 502735978 184541960 404377595 375514958 828183326 742503474 34349050 920526262 342738220 305183997 54274922 786071046 190892173 31378065 564771278 981653730 230863903 990861137 856638893 933430524 612162436 22875326 29393191 146502986 277863708 891428355 831452282 710609297 762155210 899310201 423695948 840169967 664692689 370475215 289225487 312983198 842301257 996666044 419024806 639042096 271014066 236440556 558846685 543396877 799268004 843552685 207725575 772680293 135200579 316354236 177423642 427260204 737165009 692780858 886764364 875407223 604158166 750821013 401285171 938318753 868831348 498264869 297653158 218153998 218152041 133992733 356180 132296653 864230590 748025716 415994461 811459362 185673273 749782568 170241553 380407591 801128842 276329465 515173017 474507292 133132300 259697503 888305040 90368693 994708015 38257592 599878425 552040771 377497814 266707333 695201372 566144976 107202884 44008416 886534476 685582964 314548552 898454689 21618399 839169651 420117073 4660086 917828809 611994056 380103446 894943568 95892469 225144743 65639207 473794869 478407474 629907479 402721959 767038184 435312452 229804887 141217591 281533236 816085220 45140462 378498333 764841000 252110457 420906928 423215983 627992650 532371368 699011835 933597160 253688532 845231935 340940281 809488465 768915457 54083742 507961608 688185512 436893660 352939904 568303972 504687770 139629071 323575162 268739297 675971341 523969872 534656832 745418015 3910606 659093084 513439352 176860805 464783246 74818189 682309779 341365622 934676699 35147750 786250948 882502416 251626558 467531321 597018841 687628792 292256399 945575457 624195860 984341862 985512212 252621169 775998510 744350448 788476273 263724307 667335723 863255030 462487908 172973512 797132909 159237334 332041236 164057300 926876339 48917683 85144559 929843104 799798951 247914910 662340966 310039008 483589498 530112829 208392913 630602734 637959965 771871331 250638298 458714203 942540166 302493527 355799702 623355298 256599440 457874419 973164880 517390713 214146206 151398592 114542589 269369878 532119053 606449561 27060076 178761771 228818886 874590226 900261742 259414094 175803251 855420806 877254191 297775040 98690101 381180127 153569807 308291538 642896406 431932244 676948814 45891710 467270743 645027286 129819510 981809733 98357123 54900034 602876293 727148643 56772152 855670566 13854933 164933550 206782973 717834523 376274721 355646791 756043849 944163256 586061499 399878875 318004340 261699019 671863018 570655795 906226000 544590202 964372423 855095657 784716321 388759964 102443429 370527912 557851263 419198938 768364775 40715404 522614549 435260980 828173510 619153476 853469181 699102370 883144023 450235049 224428775 776630225 181696684 927193094 524034496 894178143 317807980 539059192 483008097 39899729 871608490 592576003 159657624 152418904 137754078 353005241 903692935 986872268 906410857 793954937 435643708 593156262 505135664 429595391 998021583 265125180 471903496 248688460 993120149 956084835 350757546 197063955 738647564 895671528 852837040 806320928 101940408 925435880 987773803 831351274 629304739 125751462 518652207 68668077 807957203 498554777 381672414 973368901 233529302 233084463 806824030 645423178 394972796 270183067 114271014 636639063 38596803 14014055 397116925 767188733 950098609 211588320 634905044 190221910 904986237 179683416 395089738 389357510 126732317 224201698 489264843 855566626 659327847 875623084 735079216 537061300 898179174 610613773 843357112 404828394 416669391 767149217 77774176 961056734 539466406 148093584 653797991 780323917 540195489 782194896 88924969 397939413 687513228 391265689 523234126 952614170 15592490 414850199 826395934 266330492 52121908 711125821 638497034 593105435 847649449 421775609 506089132 411614803 375727965 12653001 326138122 421512679 178841655 865895087 217669139 731594501 49697535 533096591 789610743 715127347 960718570 803194063 113624117 96012223 723899297 185510903 87630151 494251352 406765823 662148099 480000369 191480216 585921688 261784744 234152282 754638265 626623391 248537620 127630499 715829297 875888963 845191366 198315766 729262140 266913059 31907123 287594827 25693951 53333628 467844250 608866052 830982125 211254566 640365813 329232432 233685918 378283284 927781472 436780414 649989459 521041379 340318780 24083377 812075492 349720800 280635070 617894923 55625202 773561768 220326403 45727310 462217042 642946461 314704393 682759525 589822787 684970610 641827417 126932671 757722663 139032531 691189382 319181979 590475734 10849944 360152417 24062190 68445570 195771736 187123377 18665881 690422255 206756739 283186538 94779508 247090402 188605270 892836660 664123045 700085744 651598325 957295861 962046278 20066165 316593891 501313810 910113779 369172818 761080637 693894275 346444677 760869746 13011455 426437572 680978458 809192218 234353706 200274432 78766715 841365962 31198855 534257722 781379330 243909169 251185210 45240963 51866208 632493987 273222759 66400235 249045356 795494758 920331799 534271994 194362825 441108504 579319945 614736072 695818381 101567138 426644510 114048236 599560166 182777022 466978477 256004006 445727700 50302900 138697712 269843949 400146 340614895 397147536 357270708 24747550 41588688 589656635 656657295 178278973 931163460 716546588 398943608 159456015 78432795 351058311 301689164 887525552 449582548 123258601 923374074 561203136 175982927 658387864 191996654 45190252 276618399 336177201 734473187 361546648 942631683 670599257 997322581 944650216 662191492 304110714 752380179 226502762 886361505 541147993 394268601 849281329 739760851 674846182 305798154 155387896 313434319 251440691 480738633 237276218 460494151 165825617 791428818 346223878 639442031 750674613 815416719 957485065 283920331 5525289 142146493 41832753 434344925 428300657 958978404 180195185 302948210 614788164 932724922 360398792 329771172 570641899 713621894 773706180 238536193 731593145 854421986 321509680 442048049 240861579 439480663 706172220 330412098 176104718 833363503 206679562 922197733 812946326 487320996 354107212 145846077 125415558 785541155 296798820 372631348 804578906 736699651 596544452 465228327 434729028 93928617 53957211 944815150 872857352 999219116 808480920 207494698 976606347 883737547 777016335 739824276 983266474 905306243 508518443 836818986 186581324 9669898 91299403 825171944 140487080 795563438 346088322 508200143 361092424 442237712 67315815 768294038 578636478 179676646 27866140 694909558 715425443 616766911 680396026 404303281 522333077 408637057 307874577 791643782 123490420 790867824 235562634 835870425 302336235 560610132 426300970 142086968 62439053 258198002 498744151 733058323 74081105 154260695 578745420 767438700 946566213 450325695 592776052 286040745 676832878 281435342 188133237 839725920 870966266 754639189 12572983 945412676 618823613 129613962 253756501 121484855 611209468 874440595 690307868 80317711 456120166 24910558 607728533 291150034 405313659 190870512 84200036 235499539 228900772 930750100 201945948 270426379 532525185 691302618 85129570 753259734 507842574 143509453 648384366 964190130 551896792 829756948 269543440 123339750 289301969 5218196 449707873 310981578 831972639 319253016 704232261 795244289 311661203 384572630 226090012 621760264 675343219 984186615 92290444 939213153 174926279 22664312 698170969 453744590 975403969 216364766 213639472 123295621 438628600 300471947 835769074 935181444 686025798 353430075 793245785 578755321 646347078 860427167 667896900 59645912 661579044 821570889 153409833 592259423 858831402 983634997 799095683 570485013 659948944 984695571 296184598 604547757 878887643 383225181 146194841 306634991 751329003 699767932 72317084 375433570 466371256 287523064 165449844 289171317 862503683 811279178 374542858 700092948 177290256 578859326 17130719 345114714 838611552 294947731 981905383 425810699 477361288 275672447 600841027 696355903 14339533 61079286 748622424 236345906 139598649 369833555 111062793 545432258 645553223 773097032 970876954 171293255 867376212 598410415 382454598 716346193 438338807 316327800 813832663 582303845 796436269 345512042 726612324 207713128 554545008 747319257 515297687 19228101 945343594 545914179 618989870 247789405 993594799 52725412 439926779 486570604 884011108 114451517 756690596 46845411 986621840 262006337 907294080 723398660 431430577 907396230 986344027 534479932 69860990 222078740 488267335 409056862 332101987 854460157 361577168 219748774 914669873 807644809 530603571 735940124 201095886 276900834 536489820 668293606 242968679 111477609 476807288 943308057 533878967 756244423 763336440 654249345 906114850 457014704 31875698 499927882 542798371 568537154 538777879 314655908 833191262 277022148 903760199 873726053 381115639 550897802 624265763 142573368 637231490 269055763 642662942 797920498 738562480 888888044 563101383 950834290 244594536 450622867 193316394 348168119 600138614 901134931 702556613 58415780 623387915 982846365 574786758 584506585 539886898 253939917 66887834 111752449 72808347 91233323 621494567 625054106 594430537 634909512 53244566 604732983 230981361 696513039 428548354 411306025 400806643 826296561 552879858 5475792 782556362 308801647 100304187 532447923 873707807 123302239 631894500 279018158 351037396 10317309 49335753 819431995 564736578 813492050 801000710 738099466 200883186 108858766 290299031 544946273 910067780 723639044 700333163 436437080 354812822 867361067 988911528 938209178 607753927 906475151 585288102 34221660 22639126 768851553 382444840 933591692 408289276 909970408 351082069 2083990 822419792 301566618 905299764 684414769 98705840 261314106 498955237 797200712 627694988 355663013 860195458 481481893 301813632 942210283 721753812 424037912 61360741 302332938 460176155 255327308 734350774 794127528 121013395 250357225 205291186 833227443 399529659 374307315 566787491 826539127 139898297 111047668 977206595 186094766 589287292 429947042 841233616 793854411 75744352 463794095 93254036 122843134 161768009 700633128 876933431 718632524 522628316 395558658 174168561 331037872 698769206 539304461 315257003 669537942 434542905 277945473 31374023 819324963 231179576 282673236 356683811 199960869 946428335 306299690 472420902 69346156 895686725 47918229 993803824 885782149 878953283 310053630 410119691 857028803 787697091 656015544 975186766 494829357 688022166 802356175 693042626 124710976 295321844 80692538 899062778 852496689 754798629 841034209 752452375 225945198 310337774 514556506 342247063 4789741 851739748 504406703 23227465 694322821 800147758 325548520 841981231 728928784 220697589 446821326 393279548 413142606 61289461 773653199 66848406 666176177 610557250 46813088 317213883 200207283 95277048 175907471 947387927 591498487 228200573 77090726 874233415 652126791 639437213 238708904 911455302 329095815 761781161 173564384 653770015 945760836 978312862 727753862 426233843 542630157 266420184 468807215 189041577 87218215 500672512 287290118 258228084 883295583 105332008 140782815 799730635 894023478 824154427 509149646 464092649 276819311 400789640 849495294 692697956 86246198 570361021 618021096 870030417 229592956 928479783 414521342 300326127 719703038 159680767 275635944 990006613 19586760 59223021 41591662 329226456 144460524 542011344 572088976 858654092 586633153 379899835 127137389 642833098 53070965 323449078 625209083 376381880 234687490 421320919 868877549 148280577 87862291 435080796 968411639 882419049 528424128 255831338 132402734 105086798 56653160 240292421 764081582 91701317 810738808 223945869 455846839 437403422 990258514 611981959 109504680 802460483 802105946 72354679 564587441 590519327 48665333 940604190 723801226 239356503 119938613 209056493 578407513 663084871 303988179 114448664 446130986 45149994 928221074 173884079 653974626 247541513 387234588 57184922 226741997 458900847 503005168 592064046 895866773 340442984 123943141 605439915 508328104 530363797 460398365 618544406 183726548 219061626 383496331 143635013 489432645 493456025 641996276 78591074 765940506 825854507 659495738 602859988 357191039 739170956 594115591 995934214 857780406 890079894 554128829 559037139 292904302 881570433 144814950 447683557 75428114 53271059 415551874 932866691 792844449 638247781 214365721 10343636 857877740 531283848 284262730 98928373 94975841 19934777 594057826 561245112 585138392 68233220 755679293 187576661 27149504 40480150 363342513 318700096 553521435 510221192 176749158 954393453 937085635 677314456 72919985 318959333 843920441 549554873 516429294 48555829 684039916 495608178 146027393 383543720 645103831 763085567 685074035 542316890 253230394 803925450 42947309 412938594 576523001 519861360 543133585 940293842 960793330 987965079 245463694 350491740 276063563 758021987 95005262 994757524 812999692 335760186 369135761 741396406 287046895 64371295 337952076 944078044 497444565 416277207 904743060 106331577 114399998 419527799 888378265 576042865 593120375 672777352 778429133 986584391 313633846 786638260 322804840 672049962 941304801 834143958 182306420 115039298 230195657 366743867 876964777 344731359 410689780 154478863 117336925 226349212 844166374 924591395 131224635 328461947 804105674 966278906 617965456 11272123 971378788 35323285 357745191 431771831 105577847 956592261 611334844 355289365 752622871 154412651 310568733 687438169 568152331 248963464 205621523 510661877 476409494 382739451 367241464 99341360 745064472 805143627 338259240 709235847 332709748 604528426 592495426 987759535 685313283 342758382 15681254 448426557 17393020 26628798 18838863 67794829 913534061 289416574 197153568 788470982 584206317 775911870 180823324 752339643 482730935 827856513 101008725 860159266 86703838 718828800 360917368 383620998 251867657 145839633 33045896 231944618 464480334 927446943 762515073 628489411 286843615 237542923 930226739 997816048 467066756 841693770 285040004 232033435 351796651 768903206 60782662 701699559 141978005 774557800 946362391 76466168 776378198 60531140 71237036 849952590 447803474 808895294 532528543 274325250 559201558 681682559 727480421 246046039 135802605 796443404 206886280 70172192 768672752 234303621 714472166 522865838 851939206 265309738 79505670 556955460 401469182 219102381 792712001 361778066 482123899 29452192 480657259 557717783 18984038 805079451 570047778 945679640 275368601 994045541 740474126 669422438 508099915 50672929 494485057 929100052 545067943 269510586 692296328 291687332 958832210 412514982 327156159 226672401 466865727 174204499 654400646 878688449 832730671 173915833 260205254 800077251 122607734 706170263 384622627 417447578 507655563 183053165 749207409 849808110 178283936 411895910 106997091 661190329 966968885 874773579 338155850 209753693 226854076 807960826 74435955 172181150 777587079 607003844 894160052 135367417 140218112 129419405 922918177 963066151 226417102 130327285 123607764 592891325 502042189 969768252 302244956 295668244 977279410 948205404 850583588 115262598 147269086 907966702 403653275 530697468 96129368 298013951 202398967 668166054 140870226 638131488 350413383 319514441 964741755 243086277 251159599 196254286 304716781 914316333 19796550 208537799 668362816 505124514 678249434 100115571 379253085 777489547 773333155 699319626 545396887 395100339 842765456 256862451 873014355 70342825 470619677 98486335 630346517 887151869 704364236 273080919 612683241 182546684 884526716 839955941 45922066 623896850 278477818 504846811 142445732 350363998 826967878 112053144 860185719 569968647 23054661 622862678 628606136 426394375 484315812 951766489 209599370 701064820 482616578 391523545 304000147 653755893 906019441 294368934 101072732 362961466 986551908 537071969 28097786 365188554 190830894 918877088 228746301 769369257 735550903 95983699 656255958 861957280 2139945 102546992 726148434 451939713 854194839 337736617 19287914 60160590 12706301 928735018 357898550 142676202 872107236 17415663 327666780 891874069 777994009 822208065 861988038 399452157 829185963 881759936 693563325 228317342 925786384 385597504 507502089 889553883 140711311 699749965 830774336 889040112 605213139 858364336 896106598 197477950 761782844 15984311 518074689 111824540 458038950 6737404 77151088 390731804 750495912 187892079 461820734 870696721 58708857 803223233 606680500 20887061 368619149 357812190 870375162 375994882 664027747 559126300 579000739 621554755 774213075 823677473 505247428 931293581 620761254 278932377 453281344 247418572 903215081 126810047 844163185 991331014 882344851 99411535 927713088 397403032 124144484 694340435 224272150 489169235 786495407 478298332 865997483 394716499 69294630 1379313 915896716 506349909 459246344 349819368 531420320 618721436 334685663 984570432 911301737 829750672 140529729 39822066 263903896 114698458 185094354 5527658 597439483 460412063 246900499 787722757 606689502 561457542 355211663 844632283 22420069 156887480 404098543 980567791 267750677 211295121 345372271 172157183 892099305 933298943 213039907 146432153 436730990 603183129 667301169 940008766 499121477 86571793 34338200 884114018 315602998 769153973 232059333 570874746 979173973 194337559 25450374 418621812 919450781 371848447 881643685 169084980 5143031 627461003 674699321 669076666 413887352 380953522 850519489 372081032 577141092 283888716 620527984 660790873 737424741 308176936 661373890 568149091 531824956 55130378 184740154 821678853 796585280 977172454 278679229 661501850 806828010 265833546 808012613 157030665 628333298 250750216 68845655 94673133 649066103 103580434 425334369 991891821 699068650 150826902 753293223 92028502 113595502 35006303 749960244 933564001 345972536 565307846 490722854 351103375 135354518 379112613 961506742 179241537 834212439 970704407 316725078 958207776 723072081 735413890 459375976 507246552 991843528 234453177 37226200 570466524 88494402 861681460 253228420 95425451 432031661 355913979 600539817 305456440 872492591 621514469 532880431 47626478 495075512 522825676 52946126 907241084 516833194 626664716 495671265 772654320 234049186 658184049 656281664 645331358 498227591 11313034 593296812 232990573 487716022 551179292 597949790 490357938 172419998 674495090 385185284 508955083 725963477 470849463 922234056 782708506 311066199 316573215 947927243 790128348 456963929 309121265 802756783 974209407 491943983 602742569 711356700 845710715 763964336 543489313 709727995 47886052 258697310 329010040 336672053 299839483 901176040 835717321 955091485 153407509 771432485 98629057 161650833 850932071 688000805 330204880 342431614 979351391 986058603 840896899 887433875 183489053 500724495 693061411 430313799 634669721 994755845 675469334 248056078 934779303 973135275 730883461 14078519 543449196 341667421 716328467 930972182 243852157 656221091 671321507 175257715 543117103 255335545 244574166 572503837 641385500 597114635 617517941 701061402 674111451 543631620 52241328 63737963 889652335 254675345 322200171 341000473 132064746 833630187 47064311 264342898 2699987 519411891 376707450 877339407 198688886 835166600 951836719 104393668 472467755 109200325 106143129 838025421 379865442 196751200 337499150 3060200 419833495 874572300 446654301 619695636 318821689 318501955 202479801 889910061 819783893 584549724 696402971 687974326 529317626 51833259 288821389 964860950 475630173 355095479 313542352 875591335 998244836 814355299 430789363 626685859 490790279 173192757 998537998 760150660 524053069 119693936 394976354 879630282 884747192 347988926 917615426 543902051 943803812 823883664 588785655 883237171 370042102 473124429 905461810 709185388 999294831 393634414 654056028 276110837 782722419 615155451 733850254 45331749 107983866 602334972 908625392 89921866 453985007 404051586 229026217 204300009 733488230 650102908 979847095 662903628 670430563 618423651 473658553 180098444 852467058 686571144 516794342 138604213 412793846 737127341 831946120 306788564 111939255 645450245 19333153 88479563 142671068 132623233 313997604 588347588 571124255 238983197 8304526 464263383 609005298 939093813 930309582 86198947 288342035 400044058 146445709 330084976 169165181 195415691 689222079 70794409 131650148 271186435 807577342 213196365 715244905 440682096 569992795 123920198 682572198 179137444 922137419 276807385 406706916 675613420 786112909 436632277 10526833 584007943 502452169 609204794 706492731 819050953 343041921 198735382 986056626 190559800 749320478 59989547 934013889 854637421 483606284 580517327 385008056 385649615 755312729 81856420 988950346 661010828 74023672 306790187 421226008 969329972 956957438 927980910 909833220 970179919 91117454 354448746 202797182 232090982 481080853 255748341 359236036 197419496 313366301 962768784 579203238 626310521 961088552 198582194 980352820 54660107 672759807 697258883 184408609 809445565 231896891 65077116 173297832 90357123 360697755 106541920 782354321 725223742 28826795 363371718 644449346 275146094 320501372 171335658 49731235 739817278 250437870 42768681 294972157 512557354 731896144 301606211 651741803 228430425 455214852 39732348 858841582 989411348 586246104 579310907 214171250 257530268 683390108 802585891 728595060 542985286 166372137 417651244 161747422 504766644 165027875 824192138 14494454 82132266 99133572 146757403 865213903 933993515 476791578 148051387 645323975 232595774 829985227 878963001 175253082 36843122 10083703 886374734 247291947 12906968 469894594 90332317 655576126 550293508 982295507 941377356 84378156 585443331 397562834 739756144 253083648 604667325 333725645 480210939 291375632 233684003 223427998 221191760 75803018 465524443 357480903 980413388 408912765 404603196 848627347 603517531 973659496 43176504 392463050 163853653 209478604 401273795 658154867 656033561 378768963 576679079 191168425 416358483 160332442 160700453 154992279 891538333 125919570 750955509 836758813 291460942 75474507 414814787 123795482 142210823 702774646 42953917 192098046 624549990 447917202 70903724 34843058 374019299 31711411 928005636 347654864 121919801 231272457 741742859 840979681 174597443 701533409 236278487 73286639 15728290 124450520 598354848 633691372 232573482 93548935 920359202 88714737 729212903 617079417 331623533 399877948 438969942 546739556 209982186 854001168 76881764 319084211 842518632 654673765 737415163 465487872 424635599 740413328 499341736 153154993 581568006 198875076 20217793 340930934 124544822 87940742 792553313 671257262 470511523 148678275 197577423 425497426 107528477 232953851 814417825 465667767 34696274 121581748 976866921 846442244 217988466 774492761 228866496 457792484 947254550 887540640 203353984 785087042 342708733 630151139 648768142 472888657 529731884 697832858 551011972 750868188 646863517 35701670 17567189 84477116 462693826 167318771 185666346 823178616 385014325 476993108 258686990 653267504 299665090 148674297 482356674 68554645 190546519 735643348 47792320 263512300 376493354 823111755 353830591 87005010 966915319 782972555 371092257 511364578 482638003 480674207 733849746 967752195 413226441 574160719 526293923 704934999 899319702 246431044 914415135 9858631 967919310 254538143 160600355 194712733 800391209 113879720 366162218 912494739 869560802 199853626 575678993 624167795 368631323 818654304 405897715 934717998 416780658 627422674 401463378 506207957 158518004 846369419 871114019 161199809 784324513 899595380 663093631 824890252 558427464 942344904 26481362 16281271 576511132 845964094 626084615 599326899 976825164 597687342 480275800 43790917 399335860 611757016 973705754 511124377 563302087 580775459 932239048 495277381 223241301 203502745 97075980 123336705 944058517 324571342 700387812 386085155 342725356 643120039 497004908 786533014 891990730 77359585 891680864 669994626 372573028 61366581 897558912 423388670 418616530 857272220 846292634 642620475 778694664 955137325 507358860 171115225 902582726 659576304 629744487 470166675 617456143 528989700 112330581 605809873 849845274 570653650 356351555 888313160 714526857 451899068 466102123 450479349 605404739 473834217 686989181 898311310 188410529 253388394 882482264 776554659 360297595 761205399 455606380 811543925 652193696 110779159 770794565 257392797 319022996 993144246 41797745 21496367 672822023 863978077 596352778 804054165 890446096 427589163 505648834 830341174 190861371 936465985 73329833 927505291 767629356 66762448 627808885 267798879 295538545 385774162 837500926 538540969 899176810 480439908 556561778 284791475 972118868 847793642 747127990 178486178 762510490 699292917 440563817 394421782 767821297 301221904 314587687 307698765 498658800 244279218 175761366 150211628 918769026 235334146 895914081 608665782 642896645 407346021 315395339 230816707 996909684 110065828 593950545 524642263 802941236 462905212 387341605 871068558 144836823 497290249 590080741 733772471 791293285 120179752 204464004 933749538 908797604 167650692 489083728 947739281 16502607 879889255 346629644 378434293 565666954 381539791 586309000 927384125 183900311 383021428 545775192 808676864 868327126 553791796 174118967 208798221 537046350 187607410 52422630 553070552 907928758 891438725 696592976 713873392 460180385 718103309 136889763 555407868 133021520 904131295 923373310 963588969 57993120 257852763 282059221 940721798 472470711 504557067 643059450 905704336 25290419 93432314 574603749 281243432 8846544 451580780 862828456 848600459 433282664 373581748 793862428 29760441 219323412 742529829 393009672 984206180 229794379 64909481 617787727 344804689 202609305 246340541 599568658 755578266 768226732 800765580 193877345 943579445 1967591 823639913 957460392 277242228 508688538 408857904 838910653 699446791 99267888 90735904 270972499 310978744 419502119 732431814 95512229 823855094 94542589 124929005 306835552 381907673 273730954 216195223 972863633 133919411 374234799 451249523 419550212 968179560 661742432 48272104 869320116 691762537 580036732 121514702 339870948 950641682 837843628 704729076 682574711 720328824 758275452 547135048 964334970 506501163 806849909 414903462 948952722 132179031 244759290 224639697 269903011 929491003 232317950 108277151 489730137 610888770 501545263 836955940 128079881 131182016 924691331 805402195 710406361 828744384 571072606 115657291 647381609 772240146 192649507 254675654 786549662 198261070 876483191 484013568 633031223 499721922 91131488 683244685 730231524 136344019 412594018 390133317 573992301 72174307 844633575 201502367 290571067 1765637 273963398 10055917 867906190 237114469 794558679 349334877 592714755 793336097 110134521 116243417 363858999 58926948 450491378 501076951 938652955 233556180 412474477 365544646 404340201 81694414 535320934 755837908 627210506 827594883 583557070 817444729 888485618 376723067 396374276 395672120 974583008 589697158 702212254 249330372 638999517 959725075 748008520 576695382 210776107 551365594 774285591 122640937 568666604 796016155 787415722 194499568 692206257 542719124 415133422 191398587 547725029 556767352 232715249 955273546 850408285 678302273 578447064 359881673 919688967 671446925 301995481 898327682 510312835 870515452 222801117 347357389 799789218 592754281 22445766 649391484 732399643 207117277 228370229 932184929 762522526 89230698 941431516 41859653 776449999 211589625 890624645 449768996 426531593 798227123 128192105 641050623 996997892 139515327 686966907 251077433 927027197 322070969 575504099 664002656 6159194 559351118 764346044 247459818 85933821 101907431 119715079 670136438 825916486 866881673 434326247 356505938 501545563 726445626 297922860 745372492 342575063 86771677 694214422 322275571 830854813 774251004 279621672 637304377 46265243 811072826 596655157 116845937 485806322 744109593 395215094 8239490 315308933 522515337 65291052 904314047 846691281 916443970 423000281 993417110 70163562 902877156 143203971 759674311 946647783 545235606 892440393 206922896 445379810 330893136 593526092 66971059 34808613 598271124 838389076 536294876 552560105 433444313 369633104 822131743 403111004 156460641 496785875 436296065 654493730 538836547 939674863 470540742 822632460 83784508 884628020 259245221 369952933 992977658 197815973 9168828 508996510 886802715 984362520 8956551 621747691 272594775 579412442 417751219 505534717 984396183 742451861 34877745 89188932 830512929 410765261 115332607 778498796 791228240 56987360 221602551 740107645 900573523 666611199 700538944 655863294 940333125 475562431 857971351 253300937 610709334 561064381 659497429 342743319 116479602 710765773 527282904 780530997 862877503 279706155 148662524 65571358 39165086 840445716 472206061 506184846 988445906 408895241 270571911 397617461 382404831 506384058 113221815 117487963 284277665 168941190 45956768 601339246 893580481 747900813 658672838 572341021 283183142 580105316 801141042 742641803 246597272 188284434 46098626 754881163 270483661 541928499 804170717 844187080 137767971 874805026 826003164 61272766 517922409 833492473 308898857 45949265 823505839 426530381 573601906 202208697 458581728 125957968 412297068 129988125 602918642 752754965 383057951 684823058 340560703 378201159 25375680 786626010 906224979 550978458 618524480 201156392 958322973 852804679 301156505 981931934 460763658 783994471 503938287 31224965 177549526 378437343 21108692 534667373 402233613 766193345 172987375 745971370 323074673 798427355 973670845 791250498 1868907 733227680 29424477 924653946 551239994 337489996 512670404 346186075 613553922 849296199 946907228 303897318 337604024 613512669 561884734 477451901 698377594 380916375 724210261 46483014 672288685 577941584 508958573 44030115 61783397 134995768 565561262 342021974 71640903 847073463 58041683 889694481 926744224 579109028 728388036 796105287 960501928 202364989 7675152 10156328 576558984 425273017 378771656 194131000 896821242 90914561 229839660 950977469 422604612 618583305 579408766 893631015 845463722 488515885 899094677 274125006 504951311 196070801 223744367 207763529 415616350 505576186 471679934 850360185 492184458 169813703 717095796 988175168 489043823 852432700 326604778 205889490 884284260 115259021 861586806 594778783 10646147 410830267 516522132 73318946 741064231 583144060 539405894 371228992 152068277 821109153 194976202 602366553 337390776 855730353 663270282 539061189 600450597 121791108 825078127 113881445 902733623 65285662 848509879 990338788 16815211 667378902 422141864 246880978 899508302 20523273 393548541 312302075 197268203 159040747 109844728 295763576 828470218 175498304 416760105 770984264 771665861 283531977 767607224 664997412 537624963 883676983 196311899 967701941 409095884 951549951 914247344 306399058 783767614 37836385 331880710 134369316 181380155 250101478 710875853 53961990 774299482 318886637 117861470 288536624 626246129 191615365 250743936 302110989 240852906 547158348 735901567 232059758 714057756 921551957 729118944 245590344 54300623 371736010 389768877 536099935 109883533 310952631 320969736 304665491 177919198 944492903 721120865 259700461 429901539 216841411 42316155 790061851 535316657 625363279 235165238 662293443 359230339 735101246 198462876 381584338 390883652 265990584 7744978 999243350 87097787 346752256 878139252 665218420 132002094 29707642 678368172 144905964 518165356 972963108 727380337 642613899 20584446 54063275 501206520 648934727 819884020 653601027 501627980 708218366 344001743 841513032 955788273 489447778 66207200 749183310 241385945 394979353 308938190 515641712 983495822 463713424 49666328 429176918 318289150 638166236 621187434 816503232 989270041 313085259 422460310 903056463 966853445 193737246 71737801 536023491 177407579 971048173 487977446 794199608 78291220 637892289 935291058 131275498 588381485 737308956 489183017 730917140 745714860 107451221 507120046 790583950 532912761 948126729 408361936 46355719 563644662 652322352 604896281 826134151 890516893 926786823 271617367 838619255 992145558 48011793 630378421 461423668 187468891 869222031 407390925 493717088 956006151 134110804 916851367 912304792 364313327 597664156 221787780 386459675 945078336 453948556 918937258 225970857 352344799 289045146 587006497 95146299 346355462 484202697 416374582 680915455 533547221 567017098 816552534 278781640 625655617 623696792 742986162 70310179 52470348 827674127 775378930 101672080 204747386 214997997 267007619 232493285 459140189 314558862 168044128 480479528 503088318 345274842 954456254 418117339 426785086 652309893 661685040 506256009 671394974 3338359 180272877 337361226 274832856 740629271 8891639 346566308 931961927 445769088 258591562 906841272 658411581 509765752 596438229 441260536 54024511 564638984 196653439 358593260 588652903 624223264 533611161 973513789 568794331 456620182 891674239 869433567 259892759 565265428 834988708 796131359 66438970 317046809 285832614 775926921 681378203 666325398 383214788 78845364 796694401 604629787 192073436 638795642 95365727 505234553 111047876 502237896 893672431 544441743 624761665 463689271 672714078 194017321 543264683 105395061 673229647 708690004 275841131 547980049 890328423 980434989 881423635 187035043 724588897 293858068 350292239 924439130 701961546 215317071 956167218 783150314 124309247 492585478 805235985 328026620 311637251 432320026 247796257 795916647 767534068 751981084 970026199 939158210 990019183 215362157 144617393 905378098 925230461 623355889 221622089 848409677 615998312 108303693 559033315 710674171 177707588 706687965 415819065 642156291 607870933 342852326 351558550 241619723 353582942 822162967 598240061 275386213 762553243 378826094 192041491 791075382 26034689 559178529 440013193 470856942 354837237 654700134 348258633 119784309 545474300 949777252 657592838 655276126 925371749 546889661 892908036 153875015 38609957 442586965 189571274 586782636 490931611 632922451 617898639 889688439 462958377 482805190 533860946 135534435 797958896 586768169 841971027 151651625 262372010 213528893 18155792 413482290 573525351 728938932 791496385 24354117 859109020 297256175 377646739 302365366 636722931 816267461 647175405 599121057 154391486 508174264 141393311 370658922 836332502 784430829 72706198 753874946 731794450 55487141 983750848 906047670 146161307 613953367 653727787 618664801 840054 658578755 54381922 983445511 271567052 303592030 514600908 753340427 168105880 48091618 533252570 567291699 581561910 974561310 626658262 569498092 659007832 537676595 82580230 163989456 15557457 60695951 940179160 333509811 906572250 844016245 842830523 206053796 914429255 942960857 182294170 983066763 142886056 387392861 386121369 937870736 648229406 346066985 159163152 859270146 392932786 972919200 569367469 534336308 285242624 884782029 922511339 513789879 252336307 193943667 188280756 54600380 936971091 615507754 177440196 40960116 965230014 128563890 677989800 677358698 226057876 347041130 625837232 632498355 441067774 219350389 528099490 59481649 9818020 624585423 160648566 288622046 768784038 775977886 290116398 423998104 623342155 370848055 214759882 579588138 232658014 216193661 327602808 548982507 96111391 244496570 230141866 999865313 530157148 613384069 212300922 152361526 715321995 384225447 826611931 601402742 842455135 12626407 348215944 544231869 831091420 284075918 785685756 673233994 847623810 455840482 993208751 885925565 361941290 589861436 119746561 752377656 949536116 67506541 845120168 447911209 234728809 902698254 113972066 487720303 443929708 763450790 765448829 354366100 732476928 213131610 397530689 580946056 346100951 621064581 565754938 339337216 822906539 424584482 113430576 590416539 249511496 511723158 609684261 297971966 991197303 68023623 525859831 143175727 385546834 45567309 56716224 885116280 424770341 672198305 485121716 787113562 797235603 501223367 530567958 632760026 650150320 955519491 134751250 321667923 464593834 368357697 934665201 546716999 933069413 996219067 429161114 789562217 541951301 984277388 985144204 878204256 989887609 604122851 183360253 987787052 478956513 325988690 899582084 85439185 577536630 81782430 454805621 55405416 421816129 25932590 286069227 347624302 327716950 573692755 719466747 625962796 527529957 881887557 108821034 80040266 331559801 243030776 245826121 28300882 231464573 962080958 78221673 82964111 853531125 709534878 952383646 898467429 93232119 632715830 542207946 632916144 351148279 412757926 462287768 312003033 682614414 514164084 549420225 986432321 832663192 172148917 840248427 189917595 498281020 768016659 788458456 783752846 463745761 984021564 591204382 731368889 426060447 657747722 516527344 490751075 14679812 97942183 256184584 105095034 9521963 971038110 233641944 360566516 200328523 464192679 526660886 333904589 478424616 334284938 145495046 253391515 182999223 353437208 671302711 55177973 92283704 908803904 355217495 87528868 989197630 200001988 930887652 618845334 650534724 494586231 115056065 310890970 751995687 274779564 273049335 877430870 344436880 994376008 733680583 641693932 598259313 103018096 175629113 461766765 838952201 258134289 888351060 508068236 300269377 554277718 990877218 352541495 263844869 906301473 202990641 997676130 69887191 833098297 795301786 409819913 101084423 785512321 220083003 504823763 610098566 495168194 944011817 155628833 169376362 196133686 387834190 693450926 787471346 207619177 774218572 343234166 999792113 671649543 621663152 327354996 421571533 306133212 448612754 440734601 745037576 926826306 785693926 780754 1524565 943423547 965025314 507008666 557571572 995720655 152041886 343473503 347606107 660302554 831067906 937267867 291539206 591285113 372338418 30403983 154498026 276686271 812642950 174012479 101339535 700318005 92589685 937483474 232220718 166846669 360088830 801691586 205898337 757316961 493541857 940517026 115796660 974837610 697429854 349919600 830768834 531393610 936127286 244977803 941427693 990836215 422096707 375336652 878902244 415551652 636497141 882888548 117091093 901823715 166474176 626921015 519499034 913079910 30149628 121647369 820883087 180982838 195379819 786373953 616025109 176434369 408782913 3779882 307955316 716566510 787229342 163264522 906959091 57702559 396087755 217965190 406640130 80109685 827189495 542437454 509362941 846746069 644144703 670977029 903196935 566086172 433882060 176073352 755418448 601379483 866148751 814589051 250003837 278123856 843609710 943365016 8768068 80621341 323579413 809864454 118064161 933016346 11449444 38364124 429023068 390399429 669404181 984436463 390220883 431960897 810871567 701633202 987906436 600882155 968651727 240253975 681386285 183984106 650989537 784518658 957820348 960133427 284290656 589109963 6668374 928716852 767223994 9668180 886468821 117420168 246304128 728188775 812666126 664418612 435157817 732508363 583067104 367648392 401143034 200599665 133579693 969902885 946494669 103947203 98675815 922417843 835174142 758939145 619053580 521993184 559544118 264152979 901314582 103148800 163371319 664823132 938354166 739629097 798783071 7272881 248546754 859695419 183756214 644097557 344205678 414356294 197787098 885586484 701480532 932297191 122043456 323340265 14084350 48543234 208234171 763445417 226062702 843293511 234440369 867989945 92166728 789358477 46016285 661904312 654277669 8352261 454147304 728443920 993742563 623075913 153560559 525232316 729791156 557785013 673269093 649068278 717968101 538049838 94730254 408694648 376542471 586791467 771278800 619653627 340317441 727720528 900536861 253049131 38455143 501602104 342796008 607976266 75868402 328203551 708257910 490075880 956816495 599202653 914050873 166173288 158474222 760633956 225518312 501719725 864727719 365525349 730877042 687396029 739611926 202781084 506959855 163830463 219155093 554431044 54405180 75782539 822562623 99508335 869986378 726625788 63968924 918323019 844372789 940362006 863007024 85388318 45138371 315757320 929976383 844448529 629038705 334182630 463372338 616298788 122958923 682959658 130317442 615260483 203582121 153149150 608079842 528182850 902926720 933266733 62468463 479541661 975148450 15530256 801450012 430949320 488477086 983787913 591718310 743611817 537433411 241408528 93521922 370634418 422962509 683596856 125905322 124855508 651936039 946199570 776845037 157738302 233521410 14570042 162507378 579587289 664800178 116713157 362793848 409149627 544753070 679532390 814661484 282153809 987494275 499620453 458827608 174751482 954565014 659074036 680132402 265036639 616625179 220381979 506031014 589323647 597108528 520034344 872494371 801307683 528984618 853972699 624878754 695931752 893985629 944274571 885810248 879511905 81109351 547188013 955559770 606772661 804882430 544811350 927033923 465953853 169050803 313510117 377115393 851620638 483326807 210350642 121909210 735652754 904713037 17948266 166317496 692756214 748827847 309635870 419101745 712754607 44064080 75702603 216865258 358442138 703829495 202761927 179630466 255897070 602656267 535675017 293000970 590537838 357851990 247733717 483708532 898806213 122960766 246773408 296338938 376640576 784251758 673263342 153630498 410617515 205550104 586555810 251019365 611331411 628235256 437827111 997766589 178622343 946245788 120554195 562773766 278795925 648152395 331913444 167351011 10158764 344244790 923036617 301194805 711205827 159912172 498895475 166723628 604117511 768067521 535307183 84793233 267460338 279621538 657697365 225556701 956029680 709077093 555636852 8718432 681230059 931612819 982801008 925174238 94741663 69787679 655556755 58582656 489651898 397680357 269688557 186933035 954477640 694459787 503872603 184912330 707615499 783996677 189601421 162976253 843796626 584829896 214931243 769590711 623960070 693500849 140318897 389226525 994186483 441877525 164905741 498873610 824172853 782463031 670747654 375436905 841303518 707095518 366941088 650823650 693930694 626567099 305666352 508665720 666958024 836386549 189885090 139281541 582183607 262385376 581573206 408649918 712155206 220546124 421741832 832109806 979663779 287897260 221125412 798455669 783586366 854518372 679972532 580629355 476977404 698817336 73332687 739743442 796737351 181454808 160687917 8662478 554693251 279217891 625991043 725817616 132303853 309745945 847179771 529144707 383842937 991608278 285551047 357754538 147228500 881830785 66987203 825202026 388837887 455377520 459059807 40509051 377941418 281966801 951106727 296967809 533030345 691289111 625634178 870339828 201251538 590268812 437947267 70680309 740103703 36252025 937480824 693928397 354726910 898415634 776533571 950994591 292884346 693517575 29208823 408442614 359086225 538034021 984530908 106424376 945066866 18244813 493360764 58300101 100954340 972934896 248255200 548743592 692745630 963612953 218641208 71172366 336891317 561292316 30798953 417501664 31160005 844564787 229238465 8206213 810499176 444078416 319898818 940007182 605553647 529841029 371633759 797771818 171923422 460901587 840947859 745522953 973142481 358290014 21320856 223438247 556927934 38338090 860170527 785736933 60554445 432859306 617853115 513174758 139239868 777377746 389727314 782023334 85613878 295716134 515991017 861150923 468941382 293022401 136502656 696010931 505867053 908285305 834116830 113713345 117790469 312224531 474517485 879597753 133668644 857970777 435624534 952507361 389653158 918171034 199091910 664390006 638137842 430020822 357515732 81536188 10534186 198778850 310541537 621303423 10502429 183730461 164848054 476490769 439080739 564340782 296749088 98639995 689176702 444647782 870013436 694699068 612557543 73896031 538968461 778427030 471169466 861150180 178894062 793844424 777688113 554050896 483069446 950068017 324131977 703155951 705487650 144439548 775179308 451343375 190009424 67971152 880941455 124671444 92790715 160629070 964467803 430962002 816145992 584957757 160177915 251488312 985824902 205111048 999189523 758479516 983614351 108758323 821376391 576341810 899201170 349354000 684957609 259365014 173172431 592682707 902722829 220628994 29032761 93818950 695119527 329114318 649588668 29073555 306833245 515339938 224257958 740404822 956030591 244290574 243200635 979321478 459254872 18452579 303029609 139965900 107893924 446103687 616246024 845510542 428871833 604584019 763108790 807535898 516837580 684533708 172693988 255140592 619931326 426201888 367911708 502562349 420816298 350608835 567677856 880168657 175877912 616171493 374380811 574900976 704949713 56482533 276345734 281819814 373956433 492659166 3913379 580614329 452240754 388301943 988547523 272568891 10707345 615542676 366227150 778281767 108996327 3011806 753080764 685497459 945902518 551226076 139494879 685885466 412055285 433506341 561711899 870216584 507230533 997456189 64640162 545954467 238568382 709781870 93741012 141472529 244161059 419113287 532278552 788431285 692756843 301820781 62509782 281754253 292627255 515681183 220863910 547618574 822056448 281349795 791858286 262281427 136228759 600248575 138334783 204363680 350754441 768647028 615064665 193952819 561832806 130192356 289297080 666658027 204365463 554796481 513574119 840886508 205797226 928571603 326703226 55677691 699373338 945119615 476468259 117583972 272861787 431344659 668551596 347285813 466557352 857058742 880544101 191654106 442173506 957681489 34842882 755049322 350601386 230531734 657831111 46446032 106193617 529600622 495542890 671487219 686127921 217433325 658677924 981986489 84431320 81944495 515596615 534047811 271279044 459060273 150812236 204712771 589192931 771200925 748810317 493631280 185858482 611709947 410820884 248679688 190420129 275176906 845540111 160659923 732494574 860062330 533258547 663324233 927533758 485753327 548745631 600415092 429059952 825352251 899363552 805800724 610749728 355082547 915928046 647350638 957337458 762887787 15442733 275012674 355312292 464556306 497537919 372865860 633770448 969688220 364909902 803629058 495261900 17662682 105891225 176632622 688650577 474734396 727214311 448680082 998254720 55177961 695376373 73050816 602145569 35169566 695196850 572761490 80699706 790050859 291784840 248964367 918362463 773518456 70794175 84686588 311948051 167540193 649272944 772262113 481469467 940443955 760375581 831117234 311844956 188423044 106439485 856715209 700250518 619178301 941441635 880250412 849199769 705066989 731327581 723750257 862162891 640186563 812976481 260645968 627095775 441538584 699738781 173266930 208033234 481966081 316239786 260083607 512505089 195398524 72261239 74747020 697535773 210599335 355674890 335994240 953314859 448988936 684230480 490611427 875468910 342274216 347563143 222385142 372383261 901020487 617600332 650246708 773546307 559902265 807765829 818831166 456437497 954228117 575889678 918506454 34624053 450748698 828220727 596151023 372914182 384039677 851060866 747069030 730730764 578149516 658194388 136972053 685051858 286365674 640726300 959711721 601354876 178351158 882645317 360727596 785090547 153429936 534698956 271666369 684976759 886703297 417632802 287542592 861377883 915852326 65721242 33196916 810968588 156956317 889676783 39497748 898583576 666982521 95714704 125442949 398444710 260295663 579031852 70412946 359902554 988653891 166353114 425005982 117466883 737089539 659170963 397708805 665906730 363486780 519769862 479684188 606883141 500399164 205418234 249211356 263379000 833516479 868477531 669867817 739888623 88875432 643967446 340607259 207367806 996878419 953668783 895784859 349409828 239760648 714340727 827479193 578985779 110849590 324902788 348036605 370848315 26214969 982957086 715163296 384179252 255628197 928205620 826948809 74730355 280173616 770830811 191552328 205078898 438107878 763511230 34272266 425383447 605098300 633047782 926578529 886404414 653243113 110351143 452200195 722947052 146856524 7987808 407641743 4116718 810413118 851948114 725847605 797527673 301268434 507131872 64227659 634156861 805590284 876788541 582847240 602889978 711328992 557821453 19871208 37629816 308551834 404224135 50986699 595945657 638647527 312438063 315719427 886241430 691736291 23431733 79510803 285744157 688418368 353905789 592965649 943248207 353562902 456550208 420379925 204160606 101401480 694292718 381259031 779403176 522064133 652861863 343811921 988030930 535265885 19858203 70999740 888122318 561034041 502710496 954105366 515093940 851769272 890886144 817618156 447982350 445228808 871334298 337289228 681617387 831363457 248800201 41048103 288169004 278533015 718529507 657722953 476742941 500504213 372621079 205979120 79043333 613295977 985294479 754315871 987721060 358437073 170042822 224457408 230085899 668126018 321483654 663624618 564502763 6654974 99780106 98983137 758242112 936717863 80203331 509011500 799817797 93769348 458891114 779816442 510176337 892081667 58810870 84585722 72099347 719334903 625002082 177745728 67247025 32402291 337979180 156492179 201741065 730511472 957006957 934146541 879600260 868139434 909841225 988091213 384129565 64368722 48137954 931450048 160958897 696932887 570647243 676402411 80598359 203239474 924048505 26895331 726282399 479770749 982928583 739679635 873485114 3304559 258445717 617112883 375481877 833233314 6033432 825690880 894898429 714277318 727143112 872299190 534254051 220394817 693072946 23842617 995275000 622233119 728119084 538519026 847404106 312585335 194784336 120613001 305188594 557264883 311639280 206360884 864792454 334861729 603353635 18679519 935049574 284175251 446803068 701443121 54583879 895115162 903651731 222354905 111505601 165118250 364287939 880078510 813451182 554029507 307360033 283347569 497045307 784131208 670432912 189787854 620078585 221470298 243005151 684272874 794651302 861963095 498478576 755186758 57154414 123873537 324321391 946039735 970345694 848749651 401182092 807828310 232481599 788263112 524442976 99685554 294562859 207912293 43509402 840786838 749446783 165674284 706984815 431535069 469557248 590399502 242457651 656097771 127141281 977586720 993248989 780078959 822324720 177508651 495890624 982342197 179210608 799885109 854806707 697558861 902074464 794103111 97004245 415299878 559574044 703475840 885846118 610679162 246593598 662087515 567767441 755046379 331950845 377832208 35685707 663380938 481961467 38751515 55578136 125855421 472424041 701899595 794375888 718500604 947799084 20932305 702534309 817073821 721597172 98947135 643330079 624070516 902293198 341870701 438078168 960710909 751589130 340875698 876682513 624985747 644981694 70425900 633529434 409022471 302538635 414452093 905443483 30890487 510675477 146571884 126121206 525955804 172025675 731854811 708097855 384553520 847058683 568551488 201722071 311454169 600510702 219532662 880539648 674072115 941244466 791616203 979327243 756315979 423362393 566143701 68922885 680532977 296807346 377576546 16827765 930455220 370053309 108919971 35514068 628764152 139896640 599215333 194773952 423710955 86099800 329922216 438581541 749948075 716434462 155416498 996476218 917516674 683152532 921002152 424434423 72505900 58949699 188123173 488724835 585518071 105505938 705580492 872363586 454026064 384135506 903108236 213881405 44092792 305083092 696724041 575064911 105642200 506614056 253166259 715114473 275058971 455523181 390234718 418504024 690490863 419890691 390549012 403248838 606927373 709085238 27893339 900498400 362797338 213088304 700626805 411762110 818386852 562122826 249769 327172239 253196328 981483657 111434478 796246278 589768160 865594366 246296350 412126633 320254075 122139803 240097492 620328427 13155341 597162885 46613838 965543268 498996378 152196093 207724755 632764505 89115119 25892299 537484956 129672308 332240030 967320930 217360267 945479614 937617729 256179178 518420663 835360147 972241402 752517525 209063495 797809283 828495062 89467051 732994616 920399653 144024411 424867119 556333499 769844799 964618329 18088771 342428736 853868605 761063619 646112849 67639600 732176801 373062781 771962205 802858671 838329798 959958736 799233951 346548714 559739620 203763619 918459834 439217389 970057015 140889858 591196925 83678348 242803515 887875021 991868876 157026390 463623757 122311713 902194741 939027398 515138175 33152465 341600556 766535663 330019339 165219932 873123339 965723943 622357263 895163277 796428788 301879218 399000385 575213015 570201391 531300483 85303228 926377045 29028284 646932743 743811253 483746183 940964546 456689042 798230714 81049681 71338970 317709131 962450023 720789370 605738309 129716530 503707866 206984713 714556330 139179512 987206206 962414612 279490445 217541398 328579467 311463434 673844662 464647842 839173805 453277552 913712696 578242529 666016582 915558543 754845055 170768113 616876197 911446864 899968261 465868359 622042199 137175570 114376886 337751420 869316732 315103240 471471624 526739568 88628223 313206765 70017156 716646518 811872582 675077924 636074261 164568118 893458431 247038929 881944300 700673819 437747570 288364443 217232814 684932734 262149511 763761511 521980968 4732459 592581401 744938482 687933186 612139687 625922584 206196838 769013984 678660931 91347181 639636528 484608015 327338299 531369861 645347854 588623841 164012654 942168478 905303266 937977187 586222496 384080630 352370348 541528087 958156334 489636431 656802418 544708310 951156112 595044679 495522611 486548271 849613202 823479564 178262012 646048003 227345854 500983757 805375064 811414041 541797051 287360994 890739079 324948295 605407045 371060013 995644482 834055775 459152855 909712063 808365573 958788721 538848328 343860974 613310841 970629823 139424540 692484747 733935677 605780832 558026068 920832581 441626956 469725842 999704634 256050184 878100302 386338212 19896371 568491698 810155077 533450563 509627704 967232884 372454961 603994295 789142860 398799942 503059136 949521503 636528376 804491255 204613049 593213217 252519499 203468622 921732334 292943477 215777790 442326753 267289955 927440586 490668197 663858988 204730077 47053616 221505543 958739498 582123184 543856010 507074929 799115576 503831890 972451218 595693679 731969762 311183816 874760116 100941849 583736908 894229096 435188162 248912910 504459765 723287969 14816543 390770840 928600385 897175188 493023321 764247077 738724948 66327899 726918274 634886109 607202355 275827686 608272800 181773913 800900140 400301957 250304070 944574394 121910815 826925249 482429196 166021647 205686248 133067433 96936104 230850570 399916426 943714665 825128304 67623868 444615437 882878186 423656039 810484701 187977654 299050269 93846161 718915691 677363297 305558954 257922309 336541216 478160139 99783889 816714206 708613606 920527466 185041086 150320847 594633283 553591522 61937842 978363545 725428055 930993546 127768830 176428184 713940485 431903148 566797610 704377876 970169342 661000392 302784167 603572009 898303526 356300057 381594193 91755621 577914832 255348920 642540543 37961952 264980480 80456600 838851825 252440434 20998210 768757068 810160937 647011523 282958156 201790236 141529205 146547763 540859516 325167051 840443600 243391627 826137123 225933766 804215474 495526750 128584967 925552933 385431758 219501524 497924049 410432126 369355319 848314469 914512095 26112249 236188854 802161183 866274708 906774245 978295533 319550049 684455674 523218429 702344970 672667876 943150703 652537038 218667891 44209719 630433980 889388218 820971402 203667949 847351039 206415889 315632271 403888112 123051104 236749790 973043269 133834139 508649375 433165158 714206795 278672110 469481185 459306115 828820035 641093500 848567497 900185295 169295916 22283450 992338948 958210612 229674315 459536520 890272860 24878195 759293881 610777637 173503835 381765629 748870506 685361658 835888021 983780662 643296902 658765318 524249623 735304843 615256625 738959529 106088 215681740 433497689 257137928 214512483 103906326 377812297 269928426 733261729 798722212 132122300 380572652 775593036 335208523 676335677 919071158 198499324 308552578 23095625 533107969 333395673 509719537 699553961 47791903 642557846 622751463 614773035 901244236 557216906 340887442 877109745 156171618 696205884 293967831 960607819 500996735 983491026 580063868 14254160 125628652 267021524 329390520 110656749 174788739 915170326 852405674 327768960 430847773 830052201 921136314 34546773 78677266 453528855 657991143 640165355 126277203 501391267 268311540 951506507 614422503 510953458 741792506 216519090 837133647 988888648 105584505 464237455 702546444 10754879 807995123 804474761 661687305 124795315 465011182 385944388 458569339 470885061 28936703 637760583 30623585 583209157 903755352 193041761 104323792 609804350 827967596 705839655 832317343 663076419 75632933 412545062 656812525 936792129 733781707 133628177 969113177 452250591 937237891 245176852 176620551 94579761 700046850 67760605 298904816 274386548 391162332 713231455 81282765 216993998 378375798 677878942 113765370 399506843 929320468 825702692 313525740 1092219 855157715 288208665 181838416 252000603 522333955 864094598 886031597 211906439 162269543 235132175 24165500 864970234 982589602 79600135 155707348 500183960 903578931 867130680 636405692 774244272 733661595 149584701 829311026 653552100 505898798 931211992 881217664 52047453 260160479 434378970 881048802 508761904 517812043 650463802 737095444 205050949 978883810 508582741 334858616 239530525 647980035 260194186 127547464 591070487 983118026 801664012 572377720 634811583 720977526 251966563 826656235 752181184 944252103 106740160 814310204 978630366 148986154 803998702 767721269 513764689 82822822 780287653 479598127 855592579 671036681 107289613 173491149 432032041 654290992 984104693 656027120 272477916 502128278 342700449 979272900 530694310 970546102 610610752 825981690 875701106 214655027 987342140 516930311 493894580 216548078 654811209 211252305 189468445 536176950 594412243 70284895 141037220 671031823 872214293 275045396 39679296 783502128 887248390 667483079 304239962 515381545 25064697 471876594 256301821 793306129 583813747 361336227 211340929 7506912 312832752 113703384 17563173 13694358 988275237 185632557 593904884 685362933 865179377 709454857 650340877 686422799 43738965 249804437 632593841 169626061 11636657 660318038 603679601 503581156 925670697 891707728 443163455 576212696 377644549 499937427 838909645 470754537 29681061 139176331 530796748 289257774 104124902 729826035 74109511 672498956 776665527 234129006 507924411 65594298 941670479 941040508 479865688 693231350 186569765 434152706 418693343 206745871 358176687 804052149 998456496 755292358 780891642 935728525 858184866 866792946 318734284 83777479 626067908 243832000 771154793 276400534 686115044 870904931 457349970 190348639 472841663 66268510 125631942 355136024 201927551 216223431 730526765 324752235 30030019 686472683 710656795 106714105 533422228 251696442 708877421 576583165 974677534 238329467 117042790 37584243 892545500 114753642 211661354 510640840 324902353 844905576 443363691 784869530 312153145 828937928 345286656 169077424 762733066 288998929 331364483 398083014 195893231 385371822 35591438 882705172 523859368 15800268 465070454 569143031 752453777 495912572 971354697 351971000 663560257 526173447 568479624 160154480 712728552 940454322 271388343 753761658 809885993 395940232 277321001 921964134 898247705 594006521 993725424 876130777 805029182 825738877 42939936 853252634 842579327 921138508 281021978 88505162 198036251 316409560 305321090 201577179 541672799 917861464 261050435 380296881 660947618 184595220 701166594 553008427 324821193 862977146 106664085 31141799 401149110 899198756 127254131 286634992 823938326 957754874 924889037 313334193 423654916 781362816 921437519 730837880 606123142 146043468 302601246 172373602 931481467 497435603 413419585 521041598 157430408 37907637 763258416 540098224 318109468 653708887 497681280 294074646 232429807 977200469 194449921 286399550 71343895 264395969 669562527 316052356 175434368 833597858 511227050 847050618 499862795 98944177 287466843 602771578 446804443 754770472 842123596 953120767 650225180 699507638 805050366 669980283 674678545 619972770 803771120 474543422 831725215 68817470 703366191 652296441 993234382 846982702 218533406 620483124 39574040 842781995 666675587 431025254 168443478 448394358 921683707 713464219 214395705 343402655 28440131 137801852 757447574 33401131 80660751 332391998 375510733 849459730 671865386 165872739 260293978 557725950 454549587 96276440 644685331 455399053 728570437 765922194 553951820 171655758 797631861 312045857 967660692 954829241 410700893 81583924 880184914 182939403 112399403 920247521 159108273 501349207 296362463 269793556 722507126 466580657 573373190 226770519 74322684 100718258 12355130 280051785 318633628 58953008 774914189 259489316 890454673 929325225 916388610 306625672 451767084 674054093 620869292 192969420 412627678 144051956 670686627 412523234 230313184 91145487 797864672 950515178 435473507 64860009 527734460 245766982 20044936 2288982 678803078 487633651 962747869 477103264 108845338 98170202 646241222 340177151 791502959 912670144 194962076 268041725 13888230 10268800 29598773 423936377 524923479 621588857 519362171 561630700 51841949 552382816 736275820 289848402 507504846 743176855 618831897 598882869 57194299 852073170 199339601 666914059 842610035 431935221 991078240 214754944 644980451 319555746 623364492 934215819 14454327 702735172 25516796 180062217 816840841 116360081 698327605 137645 410909239 35654077 786100185 851490152 950369020 253781240 795747572 705537236 540257335 714664567 306968866 450947147 791669452 23883668 206051784 28781323 129345419 833602084 654620513 772042620 394464453 150627858 106002448 522358160 151190301 166409741 881383103 803801401 99943810 918167242 492771763 460750 470615805 222685505 40103173 54589842 472269472 848234000 370208404 616463691 676280734 87127887 391190297 657182386 162890866 667740883 372285804 804247358 977955232 29886074 745629170 595681082 469977220 669770946 203528912 531303006 455822692 65316680 267186816 389032443 511343670 154705858 417408398 909259406 683799835 985398510 636617829 612216452 445675651 436742690 716225242 869111985 6151169 539330829 885076580 275646829 487328258 105031837 541558180 299220484 580524275 252630689 676417892 518170984 829867058 88194591 621404071 449083450 929110304 548802071 655356523 415518375 285637478 879427611 469859313 363272619 997324641 305916889 753741671 765753673 152171243 860289369 36522997 736562148 956675690 353083625 133356209 622923148 424737547 493277213 766564188 417809610 64608510 299904613 102713636 767509646 916296080 988778161 728824283 723031519 924399860 309463208 441751228 134255908 759365517 865213799 204985714 728467928 288858398 401145170 391942999 411395902 400928881 921591404 403381064 946000207 698285958 189160352 978121103 714255076 978762952 290060325 985571275 765828572 622153205 251697225 802979136 126418530 274992285 121405949 69176695 64267500 136004073 639315244 763494954 777593783 38987461 79013548 965936202 141421404 440429212 439430305 610280308 458592167 123268022 765710558 494228650 172259631 874161287 998111617 304636683 214686206 398802230 43192259 906081999 818088818 622290509 197805509 878856804 919115428 112698936 170410549 722277151 733924902 193868036 429737003 354678817 720401373 620111281 884115603 293367108 868369606 915161263 882713333 773208566 938964990 313247918 232843814 470316294 181086176 754443557 718740027 521110978 272525408 146331912 544629972 363457799 17420271 709162486 292352540 258396795 961932722 825308105 929302727 533150478 26398605 975083989 637774066 825488155 305027538 220774294 510484397 935429240 897053451 603793227 513886673 892812639 760063443 661659251 212245611 715380524 133141488 454056559 186389494 680995530 761836523 944569919 676573152 913640759 239771539 833492600 804058645 901939232 418378634 900725721 989164863 125714755 383576167 980775518 698457830 81940815 337154076 720738171 989651754 402897686 261845521 826636475 483025919 263649803 430782390 348232201 487394386 29969842 623698158 363954482 810362893 940178020 110775744 38366628 791977287 331460477 630757881 139199009 510613676 146293543 121512705 387012713 832731220 544565402 423403828 13092847 58229147 58175097 337863708 203041189 660048764 656371428 73024077 68681485 244763718 841286855 10375319 306082268 280764717 846538381 47697755 843694921 860954472 630869329 984441429 651142764 345814904 129472105 234766185 769310271 545603697 298939979 423061727 243617580 733046260 4399870 782827258 701972757 592396289 326423447 320631792 277765693 599721172 953623995 706517683 219009039 136924505 362682484 13682487 950302708 333887781 607840771 252462483 203459990 736337348 59386428 240368495 850281969 212769738 901358536 414108960 158576206 8227017 406588392 382173323 450422406 995084216 360840309 124351184 935577530 407545753 494006717 615871193 134021981 551839362 654620980 89548196 906007358 643312770 728205080 288481170 523695024 464704786 610371174 872513038 454416309 203971399 445772666 607756216 634225839 238672858 306183375 182925265 33588341 42850043 429464510 853221685 296906602 365005247 48076097 933639084 463381438 160924487 525394859 957144659 486704880 850138146 221189191 524023860 436239833 607457139 145791286 844924271 334831077 665153914 706252236 991924365 20504090 462019780 919539364 53737225 990469549 601425746 976754185 735866674 330925407 172707870 2771350 374470084 697163909 801286900 449269388 357210020 216686704 473193752 907826430 583141775 559457816 275154459 713259435 646845102 71481281 966467987 60532941 13362392 832232280 251460251 58493270 21566936 408402855 764738239 193021524 795742303 121814013 261571524 79188032 513529650 123461481 440797704 544223966 889038317 763950595 62390362 986599493 392497992 701130157 420868846 370322614 885568859 398474022 758260309 826583656 170949123 480929882 209253674 682161490 350555171 469773656 645554559 952587651 359894522 881945849 702845037 125147400 993013182 439222928 847533829 554140551 556373934 885777816 858762226 811903722 715715336 717495345 471255611 819110789 187320967 965620136 894101677 696098327 317870145 598661293 457135290 338644484 449615667 815800002 801231440 65190664 464623784 379904718 23135784 857880944 32854785 177011138 306614981 621864508 231578911 418164320 750437824 235705334 994912126 63708791 185744650 155923195 754604733 998426179 784065916 122207018 387534589 648237322 154295398 500247412 469375981 588906138 786542387 750196057 793541574 76018718 604731816 563202009 96550874 682886827 146256470 711680084 399119175 757017667 155896525 778328622 796052212 38155394 13619912 197629897 456847741 798812750 452497269 777294257 90551194 694108621 127413308 810849626 271893085 184826268 135378274 650721119 699913366 446424675 134519761 553164472 688881978 798756621 269794224 547766336 252878292 414279534 491154518 901239418 834399503 863324423 109254220 88317108 979095089 306114095 975286238 614969897 606565202 746812633 159330995 712591084 920515707 986704785 378510211 619163854 913809214 44727000 863016194 275988672 236322545 844318312 122884586 554887221 626740830 621409537 280002134 354011814 333852122 300470715 124459257 797930264 297198758 326386974 160516151 108053060 266353488 610653042 246357606 409911232 149734477 685503046 358951003 327775055 971642079 135597377 439681476 721724715 520110059 431858802 518779868 839431050 441958496 418919823 878253769 356438519 546145836 743553149 862633794 734988195 512235311 562419788 737159949 951057071 421855928 581155944 183958214 406021447 319892290 711956725 108251398 693726189 56629997 564627105 340612362 411153145 907460629 439645022 262329983 853732413 102248232 759216132 97372826 996844745 374787185 49009268 124281129 257806540 717659726 964738765 821000955 344413823 329386434 491820117 505476097 977449303 707048105 264944829 785928604 591751192 517741371 495831030 139658029 137925454 179667927 361522069 855269134 899810436 854007048 15818726 747255484 815769695 756520846 490271972 176746629 228940604 998265856 970642609 278082093 106910276 524872986 759950553 157862843 127708527 112237789 583049599 481279945 818845330 52274649 390272839 209660320 35194009 674727665 676828942 740045337 526341233 846674791 478889953 763501233 558837084 168575286 161243477 852655174 746368902 284056031 641139419 319260787 491106738 571696287 798574660 421389501 666733900 734683878 8301104 124973282 110279903 324431305 891015919 568492901 883434221 298452881 685008905 231621041 337821967 855756569 121859400 222392405 764681130 720155895 394711622 237642253 545061690 183378187 301157461 70959503 228259888 750076790 893048539 303707497 467221934 951228223 218357010 55092429 828822445 169144652 976601535 484107045 278848393 962749583 31145873 467566866 972549827 592115336 143162989 137189826 459489550 459809959 5590819 612848292 758918071 468124868 364345504 40640549 489705906 536097538 333873815 889662999 6017676 965169974 176615424 972819498 576409330 273269140 61901418 256965554 279626336 753747072 551797247 603623581 847808738 981852962 295432417 380366018 6884164 690613665 838057138 50097630 11576947 173196599 245862380 543414885 406498720 723149781 376147690 957763079 209831906 923437698 693078597 373304404 653525144 987781370 999390556 906421426 460408472 820994652 285651111 266174858 985178867 674554007 796276830 624498616 216024781 237028427 217525927 162546244 120899569 214841433 225293285 275221860 214293964 190363427 916332162 467803546 345570366 294423488 695048078 744179987 798385472 502574263 663470215 866966054 73522976 922180307 614246056 855890483 127525869 262775945 897397123 142305613 726142956 267245060 247245804 683520114 978003867 744661573 204381029 919893537 778037652 572073382 54203445 669496186 844859238 427693877 826463846 506232387 345214992 893016367 282987828 756877311 587828059 780502829 907106293 98482793 165418666 554666383 408099330 852953579 220661165 175409856 40839617 195661966 158003393 413243187 307046919 393365235 837061327 657748559 8169018 117722661 505707665 799609866 815303366 38181947 291265525 69323249 648974145 176897076 909037591 60251565 176027151 575913453 249136925 646063621 258190816 150123415 583957695 72759233 422715739 72915904 741608405 650017688 724617354 49155258 709669520 13791956 949862704 249664754 181429570 813109515 123794438 386677983 176821501 212787703 901349675 992190753 196920081 111874798 888599495 454704197 240815810 358142065 779097142 3952860 350247915 819006382 746056205 21855365 766443731 423050825 416727475 435713998 6160341 652786400 639040402 70199751 377071830 53439976 334440177 153304 615847978 34716693 42484231 981012535 660992651 815594270 948940462 11354989 374304186 827121034 300823015 986805507 487243938 256790782 915541814 332221765 456698770 770518455 556399340 415811234 231166529 864893730 222410159 374200858 747491514 60422255 135395725 293180502 420159706 326730042 894741563 605385918 443176716 579927058 362063112 365011879 182995050 799973230 971752582 793514305 542477741 871522882 474806172 177973439 645025140 467949390 803138345 181419740 769729709 967603570 531780649 790485119 148591811 217653849 280984676 50327501 489228097 512833910 106308299 598839817 869994339 807247516 520116413 992138112 907604992 100843026 551676269 620195016 917347177 258293671 666896792 360192794 105151790 740186840 419145497 215636951 725608882 763471267 101522671 21050549 722248962 680397844 363960748 51947216 977062182 767939798 748432336 433041272 316631165 222204721 210443106 351917063 597056509 15290524 939351302 287594420 941541781 226202078 266893584 648039185 335149056 793127783 968552857 423570965 884923011 279267234 224950917 284995570 13287886 503698230 357522204 832347629 391726453 627790148 539662480 987116830 730591173 244527595 134254838 289870734 531530621 204052115 119625449 712682741 360879360 702967462 560322021 856580551 321188248 48310272 57467874 443241680 606934920 28118147 114816578 492250931 620868040 332521977 816907880 840965500 864036767 396330039 530168065 804902285 711932215 231253740 476748794 353614842 434871147 8840972 883893335 759322142 326464071 843601960 295273513 795447318 131944268 555006116 589810806 697876673 296991447 791186247 708297082 970238147 531907661 659933139 11356654 657403977 5695676 893120327 509031651 55694421 727867365 744276836 970619027 453050395 60332528 961751569 389508894 885462748 310201557 737327993 100973247 717064795 584903630 883133042 997721535 175144667 69921540 876164092 855516184 100342860 19250229 364423885 423387094 144240488 160736005 798374857 985024163 606783024 887216713 767817391 189062530 79946868 735451005 323032490 330717784 755897259 530530290 35445367 874749812 544227729 208628346 976324922 778679460 994303204 736849812 847444707 68572075 400691237 433821879 829891794 757379888 682723779 68171384 369145750 726075973 994758730 330909182 850776157 446808139 716399748 355072446 674163381 480461948 297426849 402878812 914143436 152239471 557948647 213432731 537292827 318178624 413675284 134085437 374684252 115915391 354458153 925241545 492335630 704955423 867217627 305223159 998859104 679111819 963916188 607169507 52443614 949377531 553673830 161001278 252120258 627738518 756688401 71706282 46549806 970911207 465619611 520924534 504356935 291003461 275997618 515380613 114735316 38983391 380590676 599199708 277365415 574466258 276577508 135170987 705977766 767476804 825697891 786298544 985083897 917742201 500141608 979025683 72606796 618947053 965278187 803980049 413125239 542940295 231050364 700857696 846227743 182671263 546798806 814818618 432030556 967616182 448600888 55268355 43180271 540379053 650770813 973944869 118556327 317368695 614517859 734038933 349835552 335108639 696044959 88510107 425068536 964592975 703171810 601267141 860469604 599967918 633587274 382788130 327438642 425630606 92588227 222879143 829412966 140365011 538930639 829447013 898603230 998327650 744580363 476289946 423626607 341839729 558135089 162326171 792822732 989562904 523574430 50633190 643462776 876190035 982312228 239549608 850272973 500402797 36310540 99669273 268708425 498960318 994558511 570506199 265516018 820181890 127928037 815498521 56487882 327408721 304578140 773508270 358124874 763860336 679912646 996353565 353513794 364406892 617069073 368693370 501899190 483314708 223469126 104578938 306921346 583777149 562955584 216048382 557859752 170056247 214052825 782271718 996194136 461640153 913773628 532611522 907715754 650819842 346391645 597734749 440230400 952536746 460346063 561041751 868832228 170605965 286599793 732723767 643927259 986592968 374316036 113690857 925925104 482298703 820276385 817988717 157768204 318423702 641717630 281773001 781892988 178551482 859391920 573727980 257293687 62326778 83936493 65314107 400847809 516769419 908031222 924906932 203015949 692365356 614291574 26819299 309031540 314703312 385191075 813096171 381903857 773952407 863369943 586003640 356712327 954005585 614293950 38196511 974338858 723384926 653128526 618282440 296687959 608639986 399696819 311945413 960195476 712973353 572990989 391039665 271363699 739033690 133000744 439883038 916151832 390411787 333610794 512615194 823996081 885127163 693543073 856987309 400009284 365730038 120872590 739987661 852590475 764273766 567598575 421502035 88456157 705437247 588768154 452539513 205982689 346577444 59599249 470287198 565169789 405717842 703733687 486948605 8798855 748609424 43744475 78172935 276204917 266207779 137648818 398258880 371283694 782717368 927206248 954135772 79256499 423741868 322927656 273255382 506730040 398872471 98737434 85714553 83661896 853858639 766353587 980805243 259594253 475959547 497749176 636532305 615135935 238544507 320058892 293389489 689972178 874697911 931307023 910223787 40121258 984151665 221995535 929926536 634940104 262096969 370648097 546966876 909663906 752068773 995787706 654393373 183186151 134575641 707333183 775681821 801130880 389205528 610179900 190030584 310595088 426061425 350767599 57361631 471378232 745662386 36015257 493652209 738989413 121606143 650063998 460990490 70165598 385553890 565871769 740356392 436540809 260227169 789941992 817461129 526000878 820278434 881963313 685688476 106149309 254041492 812516755 810958106 943488723 760298927 415204531 357895231 491809465 820819741 291220516 794859188 688268342 149893127 608803867 950839563 204035771 922990054 446933983 358194772 322228772 165604274 997439130 731131457 504377634 37769530 482602856 507200512 350507191 310791168 86958031 546115409 433680752 76014045 487119257 905873359 978318709 587445808 894275472 641585442 154772027 668963856 178359625 220097721 163279027 400779016 681411609 94277490 636666462 366926042 883347283 661127320 253480703 776140576 136237776 713603576 939672857 139459663 648103312 165407442 725697884 184077653 225443376 439130423 685313046 570080933 999381479 609541531 470159123 260404808 452682968 255825946 856492685 517123712 663626623 5102582 267365611 76155068 96531658 948153125 300462562 900346047 466296642 183111850 192377125 128378251 61803884 124391532 470014627 253513626 871779683 713171349 955570709 610271646 202615388 945346600 440245244 401094093 875575143 357417229 804535256 817328341 38487441 236887538 385549755 707568304 564866355 717436845 343032493 850241833 725562089 417307148 235882895 118778451 655796537 325696624 419070027 278081095 71207393 122614843 844261903 715682648 344737364 564914586 983155684 926135899 400661232 600275139 652601688 388602695 524298554 899243895 696221510 484499622 120019619 757171665 9202620 711887539 555666963 618289047 309128739 54755425 728914065 640336545 804960289 492451405 249747387 823772343 280136014 816791378 645326399 374377245 128153755 529867220 505210492 981958138 158513536 609900019 660766982 929193160 387053399 784433590 964480850 14377955 444867964 402938717 611425341 489386128 897544653 214409886 368096737 753873669 946646869 61231541 2226401 946396557 700181076 78889349 314861799 730880504 80411374 580705418 439244411 587056806 880232878 903929222 236495799 436806385 749024607 804583541 654142149 473202425 112777295 362867629 81078526 566740901 342821754 207400482 233879932 93065858 485904333 294073444 499962482 155975209 462257900 882850941 643581014 418357870 985523120 155765402 606982453 149751367 429790995 388700082 71990207 190927277 754111138 584588923 36969011 610921024 780505824 397294566 919881139 529114887 468788650 191257181 120761706 587068956 463683575 735435727 359578698 712878517 557768703 306597158 899231181 977434020 771394478 271076456 520625365 171487590 871840690 270355909 930527158 15350135 371520084 148798829 831429145 884915209 638310467 71479441 211078599 283267458 398061666 862709965 366126788 997608134 980780933 380279253 77665981 740142744 882418116 455208866 470738039 459636029 156457835 349982909 878638999 733864810 451351126 496316573 388212201 3227818 374850616 554488325 544785845 799530377 612546022 502116292 194905775 773231856 655499561 299001376 570335185 299618078 721471116 529906409 682865072 726594834 713986964 483723725 404354924 246276745 585551294 953846121 344561772 19582157 361342916 747245606 52278452 374984242 173668632 552649784 64214057 26393571 651554243 30819729 739377458 690875730 945830229 679954015 425752860 336774325 263142489 341020096 431153232 644430398 701501067 815779670 110000331 855485047 370677717 176150852 558164346 173243217 317000390 63616610 644599673 764445841 442882541 571093262 582986888 907802629 972434949 166190232 255985753 239447123 116740902 55863929 540475197 571592837 60632159 492856029 428438700 596588360 603862140 160451493 578722685 707574246 465985991 577132731 564031583 211692051 815723535 179309566 951378018 171019357 81679052 432059774 741964340 548978245 462321867 69741020 551241243 776252315 311810880 800079395 16001350 888146865 363228535 375470395 765267061 416570144 542349998 450396123 762616243 584556596 701868768 996675485 802798312 948781678 125582600 319116792 769099063 607016543 133243889 410699415 228146816 186261775 912301185 132674396 183660262 226514031 975550886 848774062 603222508 662413751 383593116 966256789 897738960 13206968 991614561 772549885 567389463 847738050 455765395 915742108 771982386 640473514 363747138 702903014 581194849 61609855 874554209 2607939 849657809 363864704 972293789 959978895 897717874 948616223 208372159 631154096 203393205 200298596 573088994 332954957 507027445 233916812 457107784 890243996 722230145 941525723 442365399 920272345 794728861 975841615 556458535 997665978 900033207 231742665 563453350 571897696 924989251 210098002 380821496 53304622 809055635 62851642 55395759 857206772 155572969 567325780 970538641 789566123 684944928 393025573 574743739 924606849 985595460 485376639 743058244 467697190 78643359 745332397 552866871 854186950 295506253 438176399 651199662 975602052 917681860 5133957 493493851 907937789 143990464 287590899 407146656 22259774 819421294 978753466 376913821 391956624 379849825 733557354 836735344 230955357 968745378 463189884 401755098 81876550 583255275 900954091 672744131 591334949 605787299 469422014 912758617 303697987 86276961 821776442 450289858 102697961 80987714 607299827 520749164 941334064 159293979 811983751 420987935 321754840 599935726 482967305 851967303 898692691 908683806 581825745 814381050 332125563 650679578 149512111 437415897 593538736 257857529 910371605 121485094 933504737 514993669 818378847 870214000 106479139 892069384 612521623 472995772 15905901 666849496 67984621 816799329 494374428 777754013 678566800 426941499 12066479 194538365 917213034 46453122 863318040 648314350 243342753 660997871 848646354 167552925 846874530 285774425 78290827 191702820 509838748 898546061 939726071 878669198 884117536 555477166 442128057 714383463 823842476 253995999 689036807 24001147 748237507 615084406 104149302 872793359 77035477 147847731 724755418 44682789 706366681 399812171 973178263 929320098 281848969 433790055 403313713 742565097 185477604 521128610 883004078 822047670 188169910 442594341 288090578 254261666 811523838 50453625 320475616 571249027 527116668 490246721 515165916 294236493 445259158 561068159 247746475 101380335 37232981 651631324 153931506 944204936 343324959 329693170 482521720 651835585 221804976 722972040 438176389 567626539 974434518 740125949 378098808 708181466 749155750 328788173 66598404 804769144 264747850 946357242 350935883 207708129 384521232 993954252 563264023 164201183 284635735 366211844 396361065 145752826 961054515 157316823 856967900 358154690 191822922 290760981 413955588 953874223 598578031 202699339 287670437 332080646 697208745 56442456 201576088 562024952 885561104 377179192 376308498 498492258 978643372 658347868 254774946 843410275 158228810 782058922 759031209 905664665 961777971 20646228 601567591 153910109 673906882 441533433 230186782 645761794 18164717 692426398 959491428 653735335 231076250 988196541 574854261 304883996 998496374 410664269 261650775 44185853 532170630 956743012 321192749 121783759 143267835 767979676 565015009 637759518 82678015 776618853 859140682 19535305 997305322 983535394 764793305 840661387 659695343 140983058 814254279 917570581 789584565 558090888 702236324 900824996 622553418 960956706 631213384 689061301 210993519 24751213 148912475 518781854 834989214 190999034 430079117 7012008 112183104 575169434 162401529 937531955 963767356 504045110 488909363 456801722 27250600 823851668 28005512 997976037 33249211 727594380 984356066 772450439 123399567 664189478 50774919 738918008 193277591 356719060 840192542 193406400 810072159 246317367 833530682 703185352 876989262 265889292 425492986 681154557 209592675 893639499 706407061 926458279 514137423 126519543 807631817 580791301 251536048 75070054 534873671 525500849 38543197 260580457 824176792 328280740 448764882 50559276 442344338 791945211 790721651 703326700 544376867 741980518 253543391 399787190 376787267 772126745 151871931 47239308 736187065 347803403 235588667 350937658 968235898 754955865 447475571 874230949 381130924 569343150 143293599 423324842 876037352 602487533 255138188 985009852 90155811 728971080 169807148 412549930 570797100 714385466 119820821 313245256 905509016 65884989 306703052 840353801 579510234 270588986 790613697 309379791 391309617 878986201 38130207 240405284 625774213 153461179 616785044 141752786 873747380 276272348 789273946 818974127 110308782 58526211 9504725 321768336 202184863 555906669 239013655 251599218 837599756 709325620 67872710 770011156 604503434 564868243 469438932 441692859 214238456 753074305 656161123 523607291 226254435 62434258 304693215 250959114 343653663 348068644 415427196 901428186 130782734 610553634 702107154 547476220 10133642 115335640 402565335 668517510 882357921 10587573 832242183 148244877 535000628 919884578 992863457 840987612 168736110 437899517 575125216 740238419 912202624 313302800 662323348 522515902 47737688 928585120 846714809 232489764 431774906 980783258 618180169 944476133 17329305 677171417 110362 930682696 521551213 253082714 462068539 24909125 817171563 633353886 492181331 241744098 623399529 465305125 28962187 937622687 877454822 337761078 894728827 236782983 606688991 280392939 77883461 449497673 51151006 366454804 735028086 618302507 383172541 930486502 475958577 988286086 162966706 955923606 503478585 24315427 751973756 36269476 99875331 308457850 326274799 695793661 410274754 480634059 157046329 218122530 135979043 152751380 127475261 264343264 926083440 616082671 864819930 616656116 328778931 267407666 881580758 198644128 452003373 927130296 543545261 595065215 229313930 187121784 300642084 43511145 186691132 693064510 48779088 23242584 879974145 843309830 98672937 891020354 70182412 173180374 924340571 564177072 93366572 33720722 51756939 600397112 236847692 528973179 560906933 252487598 452043299 862426690 967323274 854157280 135229770 650516856 588712204 966242588 868648024 808166327 429716627 39722143 874968465 602997192 758635870 950645435 970593925 193538814 288769207 667917992 137278414 824916634 990071581 343777337 93299911 11377642 701069907 814028818 518337327 85927777 775002209 104385790 282890843 688425247 346822860 683319241 603148963 952703021 458237423 854480304 387961304 370012354 728738740 764835640 665012419 506188218 677559034 125148715 948765282 260152840 977233352 813678364 146100803 876009762 38892856 22402071 735380833 470839041 867868744 897281889 163147808 229991940 826018933 60156128 384387306 155891907 613174436 161044895 890085218 912033937 739170994 122512661 133677995 903733450 343252086 494067155 322587150 653030281 288731065 892766652 705774155 679213982 800579897 357344162 817572520 507410568 359352329 705519811 366079383 41802263 413470650 424801976 855311645 671709766 140680289 917561386 376464017 830579238 50938705 396836703 468739297 403578401 948914349 779923167 604635785 223335638 924962957 422587585 796746199 49044220 259306592 192836251 800011336 165542929 601316456 485602841 151242917 788601219 269886759 169639758 248212815 892871863 641794357 580556648 759570726 620954328 828348567 456815135 809673733 339735154 276530813 146767368 335180042 187272226 761655509 664204445 454937464 164417230 231494371 603938536 72686982 864860203 933812498 151725572 653255639 711783204 836136595 842463446 9220094 404886897 159162869 480660120 889482991 601773615 473970286 859116373 759840623 499270533 960899500 118531051 275684656 254981039 930454333 161876166 713778171 581849820 822742257 525187642 398217184 419783624 367414758 915758185 284357062 558767412 587781618 711008409 161992338 803936623 316085703 491493000 729438183 481538250 608813152 598912290 270298601 851342880 85325516 644712967 301715998 386455638 558459791 97365854 856259954 806688298 104613764 425175098 443333090 862856344 227639821 467461405 25178819 686082291 465607527 556629918 638862863 876444901 541325619 934652641 877124362 259768367 495218124 511265839 773425877 596417161 350530973 193562297 971984752 311082540 168527110 620997415 478002099 617939042 367286353 949374521 37053605 377979595 457066004 375219591 297738148 989365745 57887880 819882027 766451167 476792403 479175214 193364395 800220556 845358368 313681864 383196475 751644424 600173225 530402292 87773808 764592672 116896556 910181725 592113866 100217453 827692095 13959941 633802882 617101231 954521379 200275817 353658624 284468587 403931854 261216013 956811181 871521177 358393923 623506813 260614345 854449214 486011244 340362417 554658538 505626849 609298677 610677891 85498531 909421539 645578208 381232097 992421821 174359686 925160402 691946932 263852131 953781018 368339115 897697489 693918978 150002382 376166159 224151011 824428761 687111952 444505690 623657703 132363683 927149786 200385285 606988727 609718388 752804105 766155492 315238490 814469628 798990572 391267929 452975090 377472333 325481678 359643357 3576221 728376858 925522300 324080652 909498563 378748001 481628404 367661102 346298453 911464645 153489090 143863193 220060665 181604317 207033172 584042103 6377023 763552418 596073041 126272753 347633372 811621360 962684247 311461720 196833783 148654432 307188473 677444687 988869351 274687431 646844823 682766862 891734963 87159672 942886325 411939560 967554093 32269809 733811310 45827474 734748307 52912659 806734994 515699544 494938688 503111183 375688892 495048883 806441629 801928053 308991619 241235939 219185127 717406678 193961264 581940236 244031954 939041394 306053446 811179710 463929378 117181934 265889398 698219596 814033045 296569662 649158494 594189281 489370017 189574534 924593116 107957391 516232069 578567387 609441703 676804299 551064528 400713838 470979081 986411887 470161732 942242435 668080516 336580795 143914625 403289910 619739863 902664780 355585582 504490394 205288054 115642477 727503339 278199763 247226498 65206958 825548255 360296011 706059283 502083560 824253120 842037762 422462028 804396186 414101117 551179341 692476503 529704237 438968438 685351525 589109627 155163493 440186706 853372357 526904122 477287105 362533314 79330033 423489284 723469942 565383283 547014365 644458070 744381105 615339697 983540349 699935447 400155565 9828295 257115448 194199590 533096649 72224261 130424588 848615150 383509503 712967052 376198377 170909912 603583591 106574850 387745719 939814674 255114325 148583764 116627519 602965167 373874129 588508125 717793008 416116456 826141982 594728730 651534659 945456695 51713463 19748877 522040675 858821511 580493782 79160006 52557534 489816138 481261604 231464407 640933022 822412271 939297820 77021469 358558664 325657120 877732497 892899375 668532980 52191193 144507144 955856565 818334801 538001233 964613763 518061550 294463583 338398582 897657426 432375987 398491291 992724963 788187204 236992251 968440117 17022763 99376377 237375281 992307837 989365934 701408923 280396050 787216563 918275313 476135985 713456066 328674764 4599801 507860353 208499444 937262679 22726773 401624030 83551371 20295733 137579672 638280127 287255212 300297664 470572115 631014874 794920081 789072601 111307954 949736704 930452963 336485620 697250203 498757296 777671137 190344784 642516935 374317393 707439507 755800062 867876244 929946127 766762716 600931546 318106632 606364185 960282429 541132253 353281490 634411486 477761532 968447158 261933198 455878762 414554201 109925906 971218088 71955035 886434386 577899831 94729210 990094198 468393723 123911706 93061091 406995740 470731370 15176158 508814534 168348641 495610270 999972170 224213351 170171983 965391267 710467700 965696717 59125397 132451783 712092433 881862275 515124161 687146832 212156195 196980043 423839568 571884578 902485727 474149632 784718989 559132987 116631286 932474123 609230903 910254742 7170773 180511283 817932894 976274219 929000686 500240902 560000747 509448475 440903078 247819004 298720406 788784614 821198044 239108567 863153583 439597861 294039713 681082603 221446139 319885717 497249697 100373781 889269887 377091875 704665168 208962434 77711535 435306518 577478001 648642734 385263063 557146966 878986092 457710290 721306701 873246353 688452801 361196296 325968781 205189869 481710328 550852566 735001598 336473897 616269557 72870014 506759135 498498037 440636640 177097983 735173325 111013186 566685529 42186998 330245845 299921194 132163419 122247109 590979 591381653 835492954 687327328 571599555 896088911 990413593 907952516 725701366 715346850 764975361 34269490 74167875 319900808 733285896 487102912 52482698 896068543 713617210 949291820 876437061 814827130 664083893 182359550 705026973 512110183 969389717 148723324 486403742 700853008 55104423 396564613 647009740 846776414 528188338 642890799 155858347 90982442 49374478 923898794 592272045 271983639 275865002 349218589 80178707 364431192 89394412 289323306 207864702 370551115 111911002 518449032 495067713 627251982 559206661 276228574 262346817 461333374 898522255 337635879 345107848 994899686 525885093 296232681 187848890 30262838 768385908 314097863 307877253 475633069 127776453 414721179 832594952 983734709 206663199 956658683 533860823 541112305 865856833 687601626 32211784 385844026 873196565 947513676 976373741 579822362 834971797 243884826 518430832 324516942 664846071 596451461 921127623 242586310 104410777 611609887 402395907 340268481 139325333 746484832 750501932 290915626 565526970 744407645 877757267 491745133 454366942 293748608 805130766 114752897 41246926 892035967 104931580 295341071 81227994 377131977 256217174 281220430 633102089 569193846 183099130 92124798 835679022 725552034 36198167 186158502 556975949 382482309 985568954 447008509 132539246 24872449 767178077 650047949 356105994 530154454 345661984 169071302 913349992 966890784 588989146 130612875 445096908 860071095 987925033 671842125 403176726 977067377 439278255 798619715 369913130 586791436 179138270 582360158 112385303 323616057 130983921 982119409 12561991 520150125 721525270 864133201 793251355 59391728 60443104 572659686 59667449 135002704 213355345 293590730 182344718 908085974 573598459 649476716 430137989 200816190 748815200 289758942 312988639 302937359 903931754 147572766 799124928 82630987 950379034 333965765 844992618 22066371 366559948 132909312 199214034 668182392 671403338 657113556 495422305 377803778 844638881 565441009 222350549 863424894 379030830 304921020 821573561 862397356 995016965 49783225 915324249 57862939 613120978 391464316 918519798 235676268 525017500 470755256 668492774 992819402 135180680 448531640 27433099 954528493 844146240 821334280 563567183 970145516 99982423 530143443 864993246 498157238 812911701 481267308 871088508 590402255 548596879 969444210 394556458 752749608 293388838 430180220 102620270 288822619 478798410 453946145 925632130 79217827 856910185 569397524 528458245 146434021 740933571 809781593 171832332 629739151 783647209 818367107 999819227 632822419 456660795 136899504 203721790 392213812 842989758 220039634 686868692 988073685 997295909 371924694 745421592 427215886 608934107 788761223 990372709 120607827 487953771 715009964 325174687 586744113 581053705 19579217 622108936 932555047 483589962 848687063 632959935 797960672 978335044 462952426 923791853 875190806 766852184 625039527 781872020 900576123 857153328 157144645 110600047 531188308 767895554 429632533 63914966 232322406 111357819 747939003 544655057 33154942 499212978 527025630 625071288 885706133 505019021 84141460 502916205 505162626 749795685 897410974 338179192 309713616 307526204 496182728 505818598 911098114 749234561 726088226 31403376 173254392 696614582 949362297 319091050 714372643 803771519 249425633 829909228 741115349 613056999 889763500 378697410 733281254 643711616 402210726 970625338 921517543 831995724 991625359 444155125 350964046 672481621 363260832 127595138 885803452 605632465 589215005 484650897 716846827 280632496 133533465 767723509 482012973 467493061 872933641 425457208 925193673 534151885 235002218 719130932 851932139 168809579 336722734 222171849 183665007 278450671 592229627 128923716 626813577 629985772 79062608 489511882 782733402 13179476 173621883 432823870 544161964 574497127 484402779 331977239 343453640 478022610 540907413 9531542 251284704 956894672 727922965 58502505 986368832 837228215 680428823 236130991 239608754 821235336 882542763 213143556 314386975 720081777 117553935 6902292 338146054 90968369 360290085 218910020 115513084 258554843 296017643 201406769 649110282 280515900 945259383 305394264 405403095 83249636 252522991 122248970 604732200 801537539 241498087 221172616 552597796 200836970 331901908 97217808 71209243 213609675 296673737 624314312 786320264 659104843 581152792 964077942 599500335 433984192 598333622 395805820 622102692 852021049 993171276 134393005 312370759 739376994 828635690 644986716 671264954 686734828 317185198 167296302 590580624 893869800 469276653 78108362 5837058 137973594 578446650 964822562 701867058 448803707 48951809 605665872 386615648 581268146 804231712 126141549 658073636 424522925 490031341 245144514 87689985 637362859 21820615 291615217 267636208 587407278 868866198 586309202 762966321 406195554 357726435 72572739 96553884 425707794 240567523 715387189 213892951 144420828 665446008 8690030 79535998 533976378 83802381 787807038 314558218 183438767 46434334 667717748 551917190 254123170 97903513 919714880 872884945 949712269 391949630 298036537 204154587 890449879 863776570 797549673 937857687 724449771 588802658 690243056 767847744 414677100 527137490 853764220 255628045 547105883 620969840 420279929 384764723 653598308 249625382 1462058 733927261 325883825 269559820 770097592 414973792 149096700 494745427 737936251 604237269 571893435 446005765 614082551 401346890 660766989 349741224 707076071 220387881 683450402 621660400 779372225 221039112 899005811 583339910 926890761 157479296 811286828 694342067 115183291 640889225 98252931 696642448 317886190 149174217 299917730 621965199 381735802 725011960 275353743 146639698 179389750 482394374 764840085 689130576 278875839 493410009 631186746 276925537 951003579 167982501 47727400 571453373 953693388 549497985 838944265 481662028 322802041 807440120 378177793 270729726 803103381 386751283 545937192 681813989 629859856 45975683 137753189 456073993 770048679 17448049 706539617 212251159 716070030 37560804 706357634 641777544 333013732 156013874 638427691 982126610 153523893 185140413 941235400 458307098 934819555 103270556 824197658 366105738 248585386 452849570 634192998 599438259 869734750 6071301 598829141 30504764 685318483 978249109 746881947 348946882 439418789 832116813 423412504 685392889 699098759 887222244 708802138 862564991 962733609 205855747 931035324 669072999 269711516 87108572 97553350 634481618 32982740 61537077 289159446 185059010 866004139 128045978 759378254 377863820 987495630 135270770 574107758 743138858 666357454 766631598 775502751 928141689 669468335 636955728 350721968 916259189 871676036 404255299 971370061 859577509 489144553 530241913 459441020 714346401 124828689 587683220 442949624 174202867 142254154 807115271 404816524 586323115 633727080 550295611 578217004 553589672 354505435 421051273 911033555 926859517 122812819 352517841 60501419 720874536 150751810 807880953 408085469 203759898 986358779 451316678 283433527 490191288 339814910 223698373 168465119 518856680 490269892 497178727 933362190 234381325 950043667 768380498 884606671 622355419 387562341 145241507 902665952 237421705 459372798 793344407 554502398 375093965 33682190 672866510 986498809 363950957 21790513 786797383 655300736 219170542 511120765 430867882 405111422 240006602 682381642 250597452 709119631 596170287 300736925 889454317 106396337 962281591 328222630 484663327 47552416 566940263 416702444 758363477 230297522 749780492 801005095 623496887 248728206 298146012 278119996 777210433 295884934 855886309 728457189 921511758 830835359 833027820 284864595 382763605 243441889 415692087 266315608 636619562 613340423 672376797 241500413 658516403 581146975 347299080 505877398 737412207 467422092 255701839 676565506 809539797 443808950 225682031 159573431 698401634 330450241 614177292 602434134 901544179 945070860 241708716 811979048 328804404 961211083 8638351 661947907 888644396 901573108 893494767 169843798 695603414 457391630 472813809 579501399 238668536 599825610 569929892 159980720 141249679 555797212 696424061 995022083 385986341 37254883 693887889 462598248 817218087 509933776 899026449 607791867 211234070 162462847 896672291 189389689 273859118 420806724 87099158 232040842 808554147 723148958 221021268 564930357 876062156 994173359 843696898 747627727 814960465 332801575 126657801 157377445 252952600 321828608 421527396 668222182 842998430 564038518 683232753 724879185 579588577 114472966 103278937 641014097 471235261 826571529 553829691 592113109 562286674 582976254 946103273 378636668 42202909 545298006 187692730 669749515 281195673 777070670 27447903 166402815 603195182 322623203 742678761 719272709 196048686 197619309 407968049 838005681 796644056 537915992 220990963 703198522 89807006 689759063 684299418 458187666 254429189 755863361 975951855 978585485 885934670 742464218 576801441 650903683 96334446 695403121 812625002 604563549 824652613 760468720 879460839 390837019 466239528 185607426 404293405 555823100 117427834 653604505 205501092 555251902 104100366 913609636 727850034 426452787 90928204 595759293 803270211 634053190 291576387 443136225 694849803 695717512 396401678 812452048 574251949 367339618 592502147 884151085 849659 760938462 282948451 323990566 284329038 367288190 44050636 615153967 572765154 329006338 317906544 502935688 906652136 105367150 662577602 850672755 566181041 839607111 50205025 316349466 769417482 436109977 216632160 518483104 874629705 386921287 733538554 771384425 731464371 953124927 107963704 163679889 958088621 889687665 700821719 495513460 826301356 877757220 696907553 196865772 31601371 432732243 680245373 493577414 936891201 648361109 219467383 63874238 318863913 283684589 725619250 655474179 946197514 744785111 757608748 937657154 456882284 992183390 8140034 872867522 310371838 516318066 502154934 434417999 488561417 325245700 32471732 693005018 791138517 867664254 426597126 32420220 936962087 211053439 655451775 314995158 827486076 935024580 105433942 405393081 648700594 432201862 507657522 928038603 700696755 418075203 868850696 371182091 13559767 442263293 291090737 972290427 233283769 917425556 885178572 336576844 226113988 484663417 231197426 69183935 462471106 940568259 709980474 489264015 703720453 149040449 579209443 464434550 798037542 349289108 11974192 184781410 915784124 655818949 115232006 702889500 290013688 93225100 26069103 426135678 356758526 968340024 103366782 988423637 929459646 80869100 419318604 838494058 960996135 610055952 826011531 342437630 87762800 236960515 723266733 122083720 494540721 774113091 927039431 63465984 724466259 639485928 729894321 424288943 94494428 815567512 195097338 601148348 113384514 933168217 820446483 564536971 817104461 199188607 598046366 499680057 742537155 533635328 966013319 740663156 303500610 916634325 297340413 241694740 308450404 705506494 738291064 213252308 502904278 228528431 866448805 714937340 953700795 816590613 216657681 653825628 15554962 661348832 954149354 997010168 883885082 686713430 580218723 822682672 142811510 230720280 249354014 931013609 651482415 702485844 803685741 736812175 878901673 669663827 771656899 911642382 637466922 232350506 920042447 545106623 455497585 549658451 136710659 568196406 138472240 465901525 709536741 968378649 325451515 876595707 186085586 313331767 773334795 922380285 263172971 874198727 23642842 934787162 830840744 896925869 736875551 496821841 246462209 53453237 960247600 870850634 267320774 671378557 141285522 412797904 484467108 138838714 493417318 864956875 51717409 148487843 553759163 889096191 261349316 943628718 735806216 904838586 873567695 591595238 629127453 962272986 408481312 935363087 751990637 92555581 783154540 316908650 932609172 43430951 33932516 5356096 615366870 269469118 322863747 956177334 525809086 371737049 526407556 385361844 93769096 737146235 582609858 292195780 114810536 32014143 544150752 167869959 742552225 817513763 13279180 466033121 874687015 869343891 803430037 351819102 114161185 74938993 670317961 789806130 862727535 671777529 341470647 523207660 98210313 442954467 806387387 551202885 514501467 402486716 218167321 296583851 833994133 595911291 114576172 913042777 571435773 876035832 63522133 393597869 984276868 319118298 913765975 155969284 645950981 980362788 492516302 400628576 369994717 637455282 916660709 989817318 607488767 828619696 977491962 28107577 426599021 790446373 394347235 283391434 220183847 480266053 259168053 209939535 155189479 151140236 154123589 696254490 644568005 425345127 95169409 110980868 404955102 191431705 335340233 820093703 757069866 403359374 140140406 963432034 797613042 924807140 572165510 890692620 792598250 120679054 300180609 824437071 663737037 39624175 867548281 831179880 513700065 54394019 167766726 438980254 362682997 369809820 371392172 768490128 12246010 633380023 340086404 220109742 394221918 111320343 996628726 676129977 933494313 15568198 948735223 337872357 401068022 609285190 587380313 79703934 509521023 923761529 524063914 29464804 19241624 262329606 531251301 292230279 551742939 900308569 59059311 932244883 575024681 329546407 648108457 200645593 889634966 75791751 103288998 82191012 679669289 258393576 346713045 301007813 439101426 216523745 898226246 483916635 256513205 215421351 779770704 233863901 942305970 411370451 143424078 67187255 21876664 969469122 198149702 293202882 209516265 319327581 827151901 439852570 900996022 285474490 718024275 372544858 181988986 23826803 455379925 337477590 653579942 891086748 842822340 337436971 939060031 902858177 520522467 769150201 761177253 526953446 751882917 578739133 52225785 158584720 971627650 38880625 263017604 35686294 799674588 368881991 39150464 473283995 313271719 961713978 682339184 430907273 648867079 586648400 17405053 220909991 815243239 201915206 907470942 370949881 887812247 373877935 629355175 313984511 892609924 752748273 660437244 894673256 817487485 821606216 860241785 342083903 729565855 877201523 826123919 336590422 814946563 341740374 500361831 520096411 964312952 835530410 436039091 9249945 643657315 918390087 480332771 734572040 225133441 747607670 243522434 1209775 108401348 32661149 322938987 477709644 790986011 561295815 362912001 318971923 395533176 476348189 737096282 662966354 225475511 440958696 500511597 555870612 339178172 398058624 795838281 347449795 675245056 872907212 77733537 326485952 972262314 863347173 976941364 264362476 734922179 943054888 697902933 479769120 834913024 739186493 357631174 359636986 405376713 553382623 944256381 126139933 906417929 394068744 200240412 447757787 518667516 285026698 279990737 432852908 235197598 755162588 837738373 564302685 283233318 467272568 741315254 963699603 92712474 123108041 980039426 819729771 92606325 855460731 19814025 111369831 416768821 768361139 198581197 517623136 666097356 311093717 790488746 866284333 417950644 212125215 791297254 284479894 257396875 743839085 182141729 63698348 126611449 418656897 914841349 208561042 906712129 576859888 613547150 564287026 445445734 301489133 696235565 936737779 57845488 269729250 788963536 845493409 529839190 993097524 795284507 557419923 179474225 545456095 550843494 225236244 30990615 60168141 766533893 630414457 74535999 74700197 967763461 249026931 947595232 213280715 448465699 182475304 281516518 474722488 590663087 712525874 269550951 995036981 923013702 843309362 524313136 240889872 621972493 941073135 281273799 910296177 701034147 986614117 274141955 585295796 499782734 250954341 113901844 241476952 672546256 6110353 474609120 819556108 89115766 580877405 644186341 69202812 476651416 565963070 508031151 798618846 373104096 974871332 450816224 649489925 805256233 226414499 906556570 799206697 999294893 571577215 353575079 978353567 782674761 455550302 199997457 723307449 31818191 649551852 786149287 847541073 607071212 276066488 931029054 925085495 182934614 384101683 872625037 39007178 347076360 36644307 370574949 545559620 693833478 140074739 59020142 333026463 866452916 677245557 786787467 451676958 342606112 812486771 796733789 324058420 580194641 24293306 149550878 720445410 799506266 218054309 430587517 580796423 885091764 526716396 573106082 713945597 616466115 768467909 294855986 595452562 266987230 696401010 661527947 753650519 799045853 10386734 646465847 795632757 900953109 129631896 180536939 660172832 301319946 521385496 150178352 298559928 729021753 518996435 497678062 801185025 28116379 889981633 778140302 64652272 393545505 231129413 243840389 578807119 998114455 366373071 813128192 648364633 988070394 839851582 598504747 28394837 643274187 343169677 801431259 410839486 759010191 681165581 619029806 353644458 751522031 519957646 476615530 66944113 369485072 662626389 13440527 27895187 817468926 46364654 712256966 430007130 527865295 644609351 507337842 152545597 131802779 119072048 644802767 843617142 203303487 154016711 719487471 690919744 6031378 417957824 66407854 805671076 763265515 652835286 963538188 163418273 816939376 206427402 717236944 645286623 440298794 113823225 166753575 223732875 829004672 814565503 873205398 743149624 111490861 474879926 110626131 421935138 665461760 919318989 366300998 18108019 808106697 463786050 218536849 550876353 748429519 294530413 27423860 340771414 957269634 785700692 740583104 360006389 549544449 747335820 40526263 432475645 224320952 829737572 318023659 549833093 698829141 551859968 39057499 804234358 292360121 620466108 643483375 23954118 226328938 394558748 519732708 222489022 924921350 971459085 449145414 157990456 492621637 15905722 707506185 273524968 618741088 18501020 952093767 512141675 330036021 145721734 559967445 132162856 387643700 287800329 413403061 598244194 566318180 433613304 739251970 617793947 738715696 417368462 5476570 282210790 171578062 304998756 428013855 65375278 584072590 8177975 631072029 966644970 758418560 441430947 708065924 496802563 699149273 270116050 941152096 845831307 804942951 899261980 213820726 829592541 820277344 786914790 912086037 603867262 986233723 358672552 123698691 810556820 909858814 985589480 760673997 134026792 240580106 460578544 629366909 80527127 24207423 112195733 850386660 188825649 734066382 203534890 187887333 220702219 912202964 588320857 810987104 862014730 425241951 88049843 438763817 154922222 359931740 457082160 161625389 488800610 684568696 556046577 283676080 263191749 349355091 423860291 593275923 761388606 888175452 96248935 340148313 152377466 748632801 796857354 925513748 732477692 188283266 918014420 167234947 314208647 202494637 633085898 187874761 558794103 587899084 667163362 128654178 254794194 356727038 470647804 498926807 156216484 760753821 180497170 968389737 346723228 693021050 987391621 104710954 532949902 548682590 816842018 213696860 907621570 446069896 882185538 397459078 507695708 242326303 500882164 476905535 821077232 330458727 487915280 710256600 125087131 728290438 395533280 996028648 669254607 16611733 184387673 29102503 978068660 199603949 188193344 552656519 765137935 434409345 336597241 581484584 341433839 973440865 185230396 850707169 190778662 637610604 949648947 358999854 637009979 614143446 828251376 465844433 427466062 186142250 602385338 68253274 281869867 560135494 282026621 987837436 552019282 914179166 174047495 964036249 500118603 825078761 745764509 109500048 167695645 700088050 235563075 93443231 174904465 907586217 109849379 337659069 871699378 215008609 377497273 412830209 947903762 468139303 516601553 705725735 926560876 513780564 962516272 781867023 748985901 464216902 899149523 802225933 680239004 551064309 80806781 136841514 996686796 527576062 387456043 938030323 862555135 777688195 920158271 678831644 481921874 104771734 344391723 577985039 39475570 495490683 803824892 482334764 1849771 182804115 392502413 38254215 299031457 507292930 663932972 546384413 968724242 739871914 661439039 295000486 734568655 482545980 87964770 17710975 386153941 255153516 651199635 46574804 918917067 650063817 420645127 2603003 768706391 486339547 796783960 325959339 166433861 830245373 756098554 26396569 737141011 984348868 344448411 423953825 180567393 966863242 185683918 977770075 480003549 817942768 990258531 657577041 80382934 480495854 399151947 604354203 390801002 810914905 554590565 944482679 878041318 154171655 52056013 514145717 184284680 832127084 823976235 382601087 202607409 285131215 794138438 116778171 360562522 280863420 874532881 348033153 206035533 607272805 317425263 502650009 414225297 106992250 519802102 972551686 417651995 920406233 509070875 360812330 354614626 86272592 962079763 180469513 116246037 983302037 891178688 856867827 424061246 772191795 655784525 669051297 21092864 703163788 926693389 153402451 818081220 809185522 848816151 58499637 910159016 249875627 579311043 290397730 955258922 971050466 445840268 397753206 945953304 589122139 759920527 240526035 688897860 295355259 606847865 571904543 831302961 891274131 887312552 681623368 700523738 824145331 795827203 193706882 450288980 518328892 87874777 51585696 960628151 622105426 365954080 509510487 994295317 891699321 225713748 620588231 590536240 715602631 319184288 165157916 636344865 293923053 598647483 646828025 255311789 322257713 249602879 628543175 662848958 349631266 769858059 676024302 298066333 327733747 198556417 355898634 175199103 537817031 78093031 751745440 972298083 207372696 8697815 86534591 90627625 642809070 634819249 881358677 545790653 629693303 442533568 89454734 561566236 997736403 688684037 283123152 965768499 939364159 907822773 664708437 766309726 708066764 437458815 666408372 528227965 735469538 25215035 969053547 93524223 405522749 429896135 354746175 453318830 948117739 591862931 622187093 431379168 840480568 125637806 544782727 214198953 123989762 667206159 732127228 410919539 136491160 712108746 458248819 118478848 542529892 523412975 277908909 880680704 229772715 170320932 213881501 937546325 774968588 713860267 624505793 971121506 534820814 924121632 16193777 938977225 581582485 70348820 613583902 901988784 557958809 693159622 878658446 288550367 423367684 926884727 305432468 699482545 88297553 38849639 244416595 331622888 989897195 172457713 582724316 572371185 982663816 458248375 241513844 337955837 905716694 264681024 502306078 418307093 440373979 801767956 47348630 924086004 679082307 642543499 933827347 679845433 213471026 407846050 631488548 366745251 209057706 853905208 93100085 965496706 971109978 748766038 5075290 256524942 551205183 165659598 508393595 452793989 138252831 894815415 524592131 103450925 380910332 621721084 789382806 982431473 972201896 608437230 991015007 377078533 375225353 150905818 133168714 634881993 475091205 853057718 260793578 484697162 339487778 600815158 83820219 921506645 559563110 833861315 649591131 151043327 774715808 991589224 440163724 123744118 861538679 572414069 457177887 271327321 333565743 13964312 183335299 946977281 751733688 644371879 197798090 613224805 527827334 89798551 533827581 230360003 861842624 891397074 424579377 671588465 836930894 308622819 168490482 245934054 799847830 39085907 355972484 206366572 798471206 534374907 417943537 727803666 980406286 798730165 47992950 192502966 545857876 235021856 799162348 298006079 286805091 593152153 427123159 488481187 476885794 140413548 189541320 594646979 599539771 544362411 890187859 697156777 966159410 124256425 8240708 849455263 311294783 605292055 326842521 714318315 464727998 527540117 174634490 284989634 838428824 156444306 446723006 958163686 370895786 927612912 284546240 825636726 206301806 419560704 145474505 817505387 69086104 614514318 193597445 843044319 285690523 704931103 783137139 637089791 915157019 446497054 665419876 208998631 453146382 326335968 923878562 16662485 777752447 936523525 556671041 279390711 973384350 573952648 195232112 183868225 110692833 870629218 783531678 702231639 645377303 277310292 208937714 567887834 634602265 251947504 743364369 537999108 928937155 140895622 856611320 321122112 985927900 773636678 632228988 322463841 893473186 281365779 697838454 772837851 58469008 857948330 451975045 224285138 981023704 951071814 975138878 41805695 689070427 877661280 725218138 836213079 699777006 742839556 788046302 149117441 904192036 844955540 540313504 53516455 58859296 632679581 291629833 822723136 1142524 798262827 524432146 62216499 652031744 432132932 491585598 974728742 528267812 154795249 154284507 184977491 560489671 237423565 126876719 364093102 288416861 27825690 115038279 871732710 662079674 222762217 749763113 114983187 485525880 989302617 700171777 3401606 729051398 650050247 347591521 337393563 410802349 557487490 442049751 849592374 654869522 20164038 527060434 870319794 375659676 447354873 520976801 542385115 697068530 286475753 807131317 67958553 1007380 94231831 146932159 787225595 464381365 591545978 684767323 59235818 30085213 72878374 700146170 606039148 594219717 431121634 967171653 401357158 292953263 953442780 651355918 978649829 450460395 688060910 693350091 583789394 65706869 21376053 690194418 698775154 620048616 26183328 685988249 115077902 84037834 20561983 518662219 628683378 344625259 954879248 364652176 420695329 888070536 978026566 491750014 958554576 53740836 957807408 735752940 626437005 258289666 17580093 653988368 776586712 117109685 599105827 850059640 511590808 689840013 128738361 327618393 387466537 688593969 148077212 649177472 127874313 932554327 990012904 560499637 838381767 546748225 128502967 944193429 464033360 775270596 858812379 856322166 847437810 495425188 183497707 252497664 524424278 573524336 111672584 697104515 548035128 427303972 94515930 850209479 100038285 214041892 490181496 889913662 635089783 862453855 708115458 3912318 997694275 92410311 511130399 981752250 793753297 375004945 430189456 981876343 294603098 430863184 404447834 255382578 982422023 729041143 692599354 129950445 489496685 675214555 81834859 786164186 911783795 198107799 329324335 122884321 164774664 313584318 598669442 906748591 707037014 570676542 716462541 268577630 741288320 403744343 634583292 940777984 267785460 177992289 49161263 630804290 678828312 825568056 987192225 446366575 723671752 468155787 38288091 73233830 577161597 80787145 556659601 620029858 261150435 9093796 652206891 35535619 743151845 902872892 388351984 32244197 863533199 576147612 691499107 632404616 407600374 357925612 512723448 379988620 41240010 348128775 67798097 831127322 836729346 833225265 59458218 372430668 794975621 524946462 915966610 720945601 287491971 408416511 652607760 326644764 41052984 211810004 130240357 612725284 786845744 716681094 406289592 897378874 431395726 812330923 172732964 352498337 490364458 170629854 187296666 20217524 607587629 915976628 468482579 824010198 827320374 404016069 595788683 875117406 446119268 539034481 647235340 81321034 448230215 324179222 827159080 257309378 428989909 927946972 642854337 583631069 804477754 118378566 81922564 840595111 764679940 108921827 981724916 991470554 991069657 462870815 599831927 857079071 336088492 976371665 875686057 210968764 353644457 86551974 580219067 467449713 749223753 973553153 200290581 220460358 591909501 955156043 269384820 772288837 288416871 824000299 778208527 793321547 816824704 14293787 870509572 568587851 847222911 421136672 345778187 335143275 205824295 903896357 975272387 468552691 836737632 432298108 366926166 787550355 614138412 250044901 800165749 603109769 541793222 102760005 318970715 309501864 446636068 256116596 301614536 825671920 926054478 24708692 638743930 691744972 407786625 499275029 54380718 870586575 139194407 84553302 654902516 972702856 6133468 93456441 943128753 627270861 287690698 928176717 882256327 913874172 676082542 642634128 353896955 624342240 465406379 267376105 349893028 391565481 97393622 563826225 976518140 20836872 274863064 412540730 82371959 92941516 677915715 330704312 490007752 996753962 619924789 8619070 254134779 267341403 975307208 771353378 104098559 806684766 28732818 767624117 721246619 540676529 39478247 600065412 739939302 630236337 853456468 556079611 405666933 320243681 984360676 915983453 192592175 559230433 242659453 512299444 736951167 100952920 622940561 631042182 598926709 70499214 867916537 252081717 554825003 194445814 115052022 937951719 297711281 755549714 906426929 247933427 237608580 435383362 165819131 826921913 246695957 351927405 681095676 978518647 322848063 247863432 766781732 670510531 475623460 124775396 206363516 510816919 143994496 601512438 188929085 976655833 324202389 172956059 970960443 132549412 264979724 460165472 876474889 729208492 742862601 139644005 796295802 840054705 587747356 467046934 278357498 742023120 981799930 305644039 607093775 869580128 225602157 263478584 548921798 9397363 170848181 437265945 965700030 198353985 256088753 342474078 924634313 270814114 136314075 108638242 55252564 534905628 343275731 177442837 50534683 361741047 401376240 614955905 725714418 937017930 375035420 953753793 888136528 303826663 812901960 709964461 86834722 659640478 951663720 816484480 753692848 148667710 385023201 124691155 268092538 216103946 458666758 815545372 975995322 641500754 811276704 366363123 249072901 273015865 817969122 175175745 352324431 482016970 298297001 992104408 496734682 329652526 155481429 684939791 691541615 219242240 865597295 534890377 9249363 108878236 442062290 813935923 127824009 927745817 181933375 384111221 436422201 975013983 971651021 719993345 25683665 370656156 65213905 741213729 902006677 800948638 678855032 467887219 235328439 602570142 498644897 314246938 191589224 741249817 1796484 301071066 851309565 702735845 891213063 207330684 95195891 401939475 402166622 519184863 741480584 375246698 526099867 105911377 639147349 764154499 781321792 613302183 588093952 34302590 806690840 58219374 936676941 709112709 196968292 29164807 87485410 279874623 234363441 587860590 12214897 170740805 238394897 906718569 199768321 425216669 87765889 311114141 753626751 369959208 500877061 679938332 769128929 336410279 49045970 483104562 51105130 745112757 985539339 231140428 775045904 568284550 490193516 93810058 391353709 261153486 639896449 619705728 293221858 330547403 750181065 166834255 557004090 828103010 972478931 242472898 698882086 841545717 972960185 128376692 85873852 554211343 40739628 126578665 239770804 734109463 749390573 588691592 918797268 691297356 383952310 450648573 212094414 287741715 218804394 706796326 398737304 291262198 903293520 775056372 455832160 236502474 196421200 481139619 14237198 837888021 77702508 693307160 48280495 428856720 685957666 972139782 639078929 342798309 507110580 794043763 784446135 438459499 127136694 43106801 841192635 450619960 724871816 93015725 511474516 684543639 743133585 395834730 192783020 132766390 125681347 809676495 482123475 605363121 599574570 554577680 498981520 233694123 982979859 704703092 885929123 816842575 858116130 888273501 109345848 952248260 753196341 167977631 316775826 660313833 233723858 95893583 881583551 117864559 113662350 20175130 532638924 843062103 15428074 736942655 699887539 446648273 117964037 735029143 723719619 676841011 995424332 141514232 116981104 722501743 165686825 453499474 911914150 227281997 300227104 774122902 838722053 946202838 600155079 132974843 34300990 109679522 277099264 810596464 214323450 744216937 413362359 271905875 297678904 664303045 648418031 640829985 559449359 812818953 434477989 415571030 651533790 1224067 359725067 419663315 860303206 676734720 20277106 874715565 209173527 240178998 27126322 549857102 548442026 824210544 486387506 328593093 426850993 158116071 649616009 824860000 570197393 243111366 123322194 420705870 529384519 983698936 623917251 358425277 615649835 834424500 992962928 328248593 921993515 559942497 619052481 28602558 188008520 594826476 808101460 353758037 839431777 388648623 519826647 932618317 343738919 920369196 566539745 478500060 386278234 89523113 701173098 525734370 371209443 968004284 478190963 983496054 102768997 900039399 367362582 346889318 949561451 904629248 86640209 759482779 718878770 359548665 536895562 326457651 61847775 447303900 551959761 94075575 517780709 619913387 863499918 24700474 276468855 199883282 451649940 410122535 691453814 404197632 12955180 157465769 210187601 487468453 915322269 741704121 385105344 298880402 262851821 427297802 42471889 189414599 759057275 124758660 861869706 415889308 334792290 387664838 431134321 372687215 772191414 478931130 870104233 534977657 804331286 686027724 176856529 20338227 584960705 737770405 675192309 235656508 842496627 158709487 975728293 501123843 190401614 592782638 373903880 435049934 728388574 806442808 883283314 554091482 241323870 561502032 568126575 195734715 907480190 744801122 205479981 66648759 269595016 106923570 482571661 883137186 681579081 175833900 845750690 927925046 630508422 18400783 482071984 130431670 679836711 429796690 416243935 712070231 295574645 194753882 908489030 995959009 768964493 702906416 340594682 83220494 355684132 666252972 155711422 956409602 620279190 316056665 223449632 678184870 677385546 705647035 767068199 344690241 173674780 772926619 37351409 803043069 490489096 189258736 400131114 660355999 493421693 754061187 609057621 838129439 757712213 22902427 129633504 870789193 771692310 186973589 436577416 345582642 374930461 470722110 393242669 496062912 356403774 991688993 333891321 445355212 463904540 881587045 239393727 519387539 219527413 722429879 496579163 467445854 758751255 239351775 284356505 222653576 755955763 225647814 758675443 758857043 917437991 531797033 973626252 428344467 751973350 203610263 585192957 488180228 436026025 37242600 264167371 970331327 910310177 424080055 629751583 569335081 736921639 911832595 619453358 363892776 829659161 83964236 252173017 600341441 380418285 530169681 743624849 420675226 356294955 343463969 352917038 985646198 592643925 838665550 701016331 628111829 96705444 31455080 252674968 566059012 672261302 339643349 521685392 615215839 21049898 196920785 808080070 128314069 382715906 686052608 476362497 164018058 746772544 260522272 271736805 587648430 220389601 358291399 755872677 50144173 443671284 363399591 305519780 637635346 17865548 391366750 810702446 755795203 566215719 800941588 58767916 553696911 111229615 364215519 150590978 993196011 397037162 404199013 111640141 973158326 637948905 291668352 228169732 942958641 830364522 860429524 58609689 705362158 426361869 608470402 712283757 717673558 666865494 681395306 171365555 344182749 958866548 120626133 593074878 975907012 844019218 37799425 225357614 851180419 289126680 40288693 702129745 308813141 925585936 837859042 983102829 576974694 46541163 594302627 310749163 330008411 605191273 29498397 316580451 817961297 776755832 328540506 583459060 856188658 768265215 931060350 332943740 104377194 992981002 868286332 334464011 815466634 537102521 522743035 458639832 214774708 835177358 617146205 100312655 315067812 849935036 512072020 265733343 674553427 112280696 865620612 702805908 496043086 853197220 353314413 576351581 854541074 537357155 894044852 732955315 403842423 811017090 229502410 188743361 652808667 350747608 622139947 460755790 425710017 895594375 650603432 350118526 13740593 787645731 512005067 372563588 116511666 747898084 545032916 918698918 390005282 232109859 265175519 320182158 149503348 201805375 240051124 356402179 295944586 559268073 623515228 978462571 73883366 363790078 147572929 380505416 929980715 40207566 254073762 701591825 302344340 549481214 535806823 614071255 979483035 480122920 197185788 110025273 141717805 478011073 466176490 242202292 382799389 223227491 923712362 797829943 28769058 480629087 415460074 872445128 813147758 911463040 771355681 160990523 744528322 341840453 847529562 477109834 158291682 98394439 941851736 92795204 965074585 492717358 699713785 568359824 907400654 546361303 602719770 825266854 160370721 318502635 48563589 282762218 646980438 553154918 17437579 783138167 158910408 951982586 458736572 112031831 802208195 102746578 876910398 80947103 910058865 377006641 184678690 997066608 123952485 632752864 657600017 250465660 993268710 943347030 307028559 766499390 903684132 664101339 248880040 930849654 219293625 801111166 969152791 810810456 970043195 944295673 87557209 874193688 40475396 280778611 853278588 891238345 342287072 646115441 85451729 440075949 841806478 244322206 669710983 870560741 340696213 512902231 270596449 665401014 470764318 317152964 425167615 464133213 585365491 398400380 630253612 961723704 142866469 113653901 402237508 711533215 331070379 16346023 772730662 945260565 631883551 831874037 659096498 175227256 17723139 776965189 872642551 351767196 21609678 16195847 431385168 956280891 817517956 983728641 214119705 888011209 602152845 379021411 342552125 642614616 187171144 625544931 801428323 993220216 878977688 620872652 282517750 895330477 827088087 537125536 540865952 899867441 472548691 700327585 447759372 47983968 766924663 822475583 243885208 393973920 543378247 473932108 59565794 710234224 956319270 189108947 386202788 865337452 172339696 939980268 154654524 185767641 507766332 552673424 433960723 39697554 626266799 668264742 222890685 726757308 5751223 827331956 642448421 941443805 357670991 419273980 989137276 847319092 564590355 353830189 370720743 33857305 446384858 691100008 903777451 787629764 434078196 117697960 257888667 447702330 461300806 566000426 115056088 26673006 624263576 346238240 286859089 410237943 239925200 907751991 5124931 468490525 587850329 861954714 179582749 927329278 862517556 937050574 741676080 8670223 671883235 882853901 153184066 531494038 61236023 952257495 694567669 476338047 830448243 354372343 588887840 993480502 4602001 244868211 258337173 992677474 261162573 993937299 187917615 265058302 17933930 548463161 311168282 56217398 422545153 427920632 979087386 944530125 725853809 662599982 584081055 987209099 768677358 242664307 541260817 849910520 23666924 888499361 112511712 108434297 427989252 447934848 754482283 194176774 227873836 522486253 52979020 655535941 83613227 649681453 970390487 712872698 41764091 626183579 695410376 729356610 163767581 550944512 271111452 968343999 975919810 444302897 669198163 957961637 677613222 791888776 515329492 369271542 22617790 387812908 27867381 370230892 957471349 72412450 151996950 940706422 878863284 2868833 38348423 293918313 280715933 724947924 766897614 12469006 11618952 648799432 595744084 372594657 150329322 102158338 888966918 478838050 425645813 942375770 847357063 898818515 432089807 66446871 967451618 244673634 610902911 116209871 440641863 674792745 95975153 949536272 351867306 916162666 353716059 571555795 441618198 259898545 960942639 899432393 934077853 786143078 105696810 841539174 332511703 391110760 592039417 110234004 703170122 706602912 181557862 701140674 54423800 809725170 254438206 536959302 266122432 971310281 412709460 554267242 460536076 28088923 126395777 88938158 467054109 858554734 383549495 171579643 143353285 748105992 356607895 620773114 338943542 991434116 352472756 573281644 877412459 95315965 270101978 354961945 389067226 85614677 291000133 502951038 187241028 435940599 512359023 882641982 197533139 422771692 139922098 340494902 983632867 992218827 670032079 634885305 811539075 107063586 260693970 87320045 987802618 857105973 921064869 839324309 29122948 836931435 726884281 436415259 452799985 813645084 230512043 621138488 791360853 501546509 412234802 676305343 252355689 120868228 821488682 750969813 448659094 418784910 892492248 589046839 347185295 231877357 289074051 130052578 862367702 900767831 736849128 694348774 372612939 354642485 894074245 546472308 628053602 233072080 949263471 782024640 221266490 391379954 219266300 235122563 170976924 378065168 884022614 948088152 756607443 821085555 818812879 199067149 930548402 695701412 222298253 572007021 207374107 372749834 996012436 587897908 57086924 687197660 691370821 894537087 13101823 438085958 55203727 353205952 594202646 56573966 80454080 47438717 334414195 564961638 537301982 664226609 289455590 909599530 437402535 908083652 177648911 301807189 491424830 707994894 599135209 904675756 20198646 700420099 89057805 623609556 151262169 235378969 950927105 760327436 410456151 279155108 944099637 929683057 867904114 427111916 335991781 176600269 333280872 681022378 96697374 86199066 975953398 259727911 570938698 779838662 844645150 220282627 835607429 616812682 936088484 538256643 877451666 581799902 440539383 103124327 818350233 675388887 661550258 746552337 69561830 826474225 882825724 982886674 503508482 999720069 252336435 490521330 247414575 312364365 958877444 663153553 502346576 786449653 134828378 413663288 700537262 418677347 851536181 516632097 425785003 135850236 575141262 478535056 72387347 846649706 369410920 678383648 652505401 561405239 417468663 167962823 237235200 229452128 569055478 348184857 426955838 373199672 349499051 344470299 386270063 170552891 110130468 160364098 411165585 536980466 53875842 406344327 53135996 887788320 147210904 939090709 270805027 724124523 607408473 623834514 833133676 81124849 495231874 797051908 777909950 116527527 356582864 59154956 75906268 488711221 157703471 378747018 671199865 824732749 523745905 500480636 603183161 870835059 663542278 637725524 452370529 890963275 771066596 435345353 473210568 548166617 393382552 725257550 209578927 185925789 665482562 546702208 910102884 35649750 394867986 801543729 712827686 183730780 2931070 862843112 899606714 426879909 921903725 318749873 444333254 861485824 67311195 905070189 899989063 651595969 784394413 849830443 839218247 81768842 691182957 919250254 155066377 284652248 925677677 524181325 369029186 851164537 436017983 283779681 77863464 369092001 977259968 334849671 185346672 161716639 694095368 56408216 745057676 904519684 638704303 592506745 669166979 36382107 405439263 672999008 396609391 801993376 801842701 527283322 922294525 638853752 407284674 982022710 754194629 425730071 472974390 362756003 719395860 656670722 293141313 856985170 833553314 518723335 220263875 584949880 465927110 830940245 325000571 98004771 77688600 253737679 666925947 199773607 915697886 375026183 836101832 581814845 109882604 875288107 276363779 198552779 671811472 542155285 476549955 223052244 5531661 545021269 16470666 448141091 342900453 774528500 581866634 930576544 953473090 462189564 864006492 689771766 166539607 905543680 8128275 975731834 440891212 685888266 659842831 846011100 985413480 23918442 707023644 560370496 809231122 740378967 161720189 691655030 536209479 946528359 539119318 567948810 387712284 865282881 390866084 430646646 903493049 917292385 203318181 17629040 547198005 172390684 575732839 997626927 334309756 450823108 435810000 687233058 464369590 753294335 290323808 470588842 465767089 273265980 146033098 881733518 511737409 274419351 655953597 362362221 643897271 272326676 377125393 196035026 876016377 545383224 534797694 797628839 113793510 458732840 512061813 892253557 965718800 133022805 979529536 820056235 936485235 681170565 41568179 465347462 104684702 752323909 609991099 866328890 456254798 34731809 331046689 353125373 37982591 877059498 726123419 315418958 672567083 365118037 182224379 138748037 292390407 428879262 582514277 714787929 229378658 380278598 290946966 752348541 154612956 54651008 981925430 898136953 856787777 82056240 694028283 414518644 119193073 371631567 461979154 867724915 539273536 970150247 682256414 464609716 638666262 281317565 129493115 364015544 763478412 672378960 982611463 424778689 174534451 956389399 301331325 77163254 789167277 606948850 211586993 4021453 611172272 673752611 241060354 82263938 752587754 732332014 760493685 68843375 393481328 680464331 428885842 660324635 462000326 830826287 130098910 762096426 370515642 829309055 999632768 648487898 815304971 735576115 102835679 394306753 930485800 204648667 750815302 618571731 592189760 612132042 982704902 762860084 774845191 259022853 328641003 267476697 670441707 116606401 486328553 216227074 446503204 231958411 479200588 35511346 663443768 983410578 89058969 366742428 665493098 939223343 346605651 490169267 659300181 465139381 458353086 798433906 178407259 52612260 454527552 458234635 848302562 173081930 34566414 804871859 499300431 293979402 40906404 969631693 892218061 164007503 921776846 233921002 320756005 244907094 125224696 780499979 125465129 684755695 387762570 891868385 109503758 892806870 181171224 38230595 808945707 367276228 407880293 923325569 712315953 824215668 985356752 762419349 949843459 24167800 471058951 424655541 638490276 708613589 277487523 652001201 512483917 39367526 720227813 428512259 760659762 294947916 329602934 389472911 510793477 266749048 682904499 410656652 549768333 970212478 895487957 8238777 158695207 129454353 389830904 752418171 662989683 954259378 92062976 631230636 420445560 929828371 247153017 765797775 863402788 251350995 410536621 495916717 806631232 828824519 403693666 653629614 667552448 450902761 218427082 471598941 880523713 621513614 310922099 572514247 724168600 695370391 369344655 348546837 7080965 545071809 611018568 465454308 290870796 557179980 671213413 242968143 887531289 261092051 765687335 523594778 635503734 892542964 616356043 161255425 939684919 271479448 749694399 578866297 346180775 233333181 173632135 627392156 263025119 562833589 255795735 716206724 931736376 328068722 178710197 528950401 706034837 368762973 505011524 994148454 608985176 665422993 124496373 649404010 548894364 56823335 888159230 709150853 76216488 554916759 120533897 867317920 623663489 180801987 514820748 699042912 886130399 13789053 687198647 661958592 24688657 211057489 758581542 389409142 355225666 763943210 209353363 292549142 943322511 463549565 959103491 651972928 356825582 53634604 643938550 414906856 318697328 707455395 339579512 451513988 11365455 860089559 104862648 565415326 22330145 971814544 764194276 45208577 109162156 276789873 834858026 366176764 455562342 71653784 818038114 357614382 824294281 527097775 979699198 46975620 62672363 630418528 764058345 805674075 538879622 547626129 941098379 905894073 108318850 323133668 589805092 387646909 150468355 765498234 964930067 662826470 816630160 32439065 204165371 627058617 731887722 877933494 923860443 587265337 649350398 767863654 902860138 336281816 91818506 298356887 476239302 63469601 969221950 58517628 96809948 256360689 48429105 412867926 859879250 759169789 579211674 25362621 917701086 121170720 279731189 91120333 453242904 946266988 816927204 542563073 486041811 1108144 143301074 307337617 121043335 155129358 127371703 292264544 463020237 808070512 53715777 161121091 594787985 233947634 786997058 19807351 632299105 237803360 163958147 134772432 519998219 939791369 857929078 384770471 17354411 848036794 27644397 808375500 621269529 416578210 20393398 706389037 1091037 878147563 392056993 444866398 254126508 266926006 906993055 779359436 808301942 924492665 486066377 928780403 523111394 9248559 833715602 616589725 340726474 815094646 501935036 324291127 221195810 832952558 541378365 295867190 662113975 910625907 734407747 831095219 470406433 438740363 847037475 727255391 306132935 361707106 696321785 363713526 612776980 936927725 324397566 176021041 426767240 263227049 327174758 5650648 296599203 980259382 305815263 892931390 249548220 699968757 639351254 464175651 560496961 454145763 430995131 891213460 952983115 72984777 36725939 192498588 552887758 637810097 64483273 126154638 482543017 183744504 342658936 313906842 619157751 837087378 250140426 355754886 669834100 74950907 889704383 264842621 89530076 360047921 650632846 592555641 51852845 939702843 258301985 992641354 150123921 473403601 412380298 107906596 685623892 244543699 515008400 5821907 625360195 220069898 861997645 65103080 780829254 374744107 549546368 912098148 26793907 914607803 894372222 780038490 720212742 706592731 312232643 737758572 892018264 676213264 542669539 375489152 948799353 368979085 870617664 169661389 162317387 366307270 328334636 183282761 886081936 682751567 301398043 922515337 958069369 424604545 714339965 246610615 944347156 677543501 793335063 891865112 280255421 307159242 957153144 205172725 335938669 527084507 546404837 303752275 211928853 501674329 800413466 334001849 275486418 703257207 960778270 963330026 483349272 657494655 210407222 922017968 145777293 425846610 919206112 810620883 311599152 95277157 322619534 326896233 281012307 234595654 339473818 499069689 580594548 965610618 430926410 155082793 849082972 180947108 54038525 858047642 634695 814398995 102598681 208648970 460454373 407227440 367473713 811222848 731762085 172374096 945934751 576836802 236324712 786076780 505814893 854232770 624780581 57763641 339048388 305697977 647073797 722146515 433202893 740870057 554883663 873618885 721344604 557554014 770447783 526377459 465466875 383015018 502560719 652629150 732960203 699290358 728508273 369774268 217349849 556836466 506569118 442206425 151619011 155707975 565728114 233237962 624229145 256577152 38725864 821554398 446204897 83717138 638110423 133432251 690090338 63732018 410739729 859395027 453429341 193396092 244183328 118249856 25419659 149737427 373862490 213593713 40940142 12395660 730874464 203611201 370747453 978804642 162599974 379044938 126309007 345822485 116739140 187734672 434068467 213929381 120435034 640753966 620186327 356267611 779462988 750902011 327669683 124727561 213289474 87390942 4466152 375474759 841804634 79554653 740310309 677315936 457136303 506899654 810244130 707570107 582989552 428558070 351904063 372280711 221440422 572053417 192494190 336699520 740926625 597407985 399229497 152738399 900136282 912284804 121902001 364721135 762785295 545225511 458490860 64223523 4249395 186509392 673910002 312052289 481958826 392608966 176223746 277840729 109597496 526910569 881028397 130901990 697635374 566923583 195789780 876080613 731444785 587179426 49195758 861482335 435551624 878160016 491350196 435546241 362113871 9740156 982759276 602745634 827052922 559131011 127227304 915370427 315155483 111424702 532292892 201026220 417970743 213242759 498153130 46486519 545972227 533940825 70588960 748210739 948755648 299650886 141056234 473564137 164704918 146263367 797785353 895316811 664804152 754866620 883060758 310591625 498974758 382442386 780927443 814860350 573966592 532098030 752088676 571689549 5968675 232210984 213885809 302988135 593377891 506495740 504377550 272695949 621591423 455940730 536909852 92930178 964124927 551846740 999318073 856202477 294501659 741675116 1860404 175007209 785519929 560053492 718923816 710865701 998738992 861800626 340092814 10995822 770297350 225171406 366624778 317675605 618864659 135089371 278837462 235274237 566494932 875418805 667824458 862279068 891704306 633828374 406855432 286980619 691377664 816594148 743822562 727942236 820798241 754628998 494339915 344860564 726562816 117966240 131252261 104100158 249507292 435649194 287083378 255746124 372996598 395498667 345353652 182759365 95414613 225731994 3789301 60790032 786538684 930030880 519533019 528085985 714069121 18896393 196028418 860785545 203163589 80410177 81602151 290523440 4544739 168465449 953363798 488906318 883644560 408514039 202928538 759371991 84242501 206776030 676036904 379701585 137055126 302694059 408134996 617011508 406917228 649679792 402044206 294420654 853779907 333489723 173028559 323101345 581613133 949392463 203355825 610699825 819369561 961714369 232218343 288302746 490221235 360656688 831734066 649511607 788799451 753838684 626313832 861133771 322409922 566736485 570427231 14667824 617839782 756324351 204385854 719836055 311105602 889517558 274374682 801224589 545501442 928811315 944490881 931049746 774006205 491798125 512796407 150492092 756682595 295647637 756710166 293066440 946364013 908298455 974626064 588174220 172200016 380789162 918802933 36185093 369761584 155490417 701107055 765177867 215875398 90284225 274080555 561475747 189796729 350343747 94929441 414623088 752278658 305975540 258068540 971098072 360362420 348132472 845444085 395251039 604344660 909861519 909892719 85386587 847507385 850460525 993775185 794932390 210265953 915345447 797787500 458369280 490517667 335114237 786448683 179251272 485625784 468493127 779877064 638351346 867767155 69704316 757158289 40256429 305562738 880602117 587087879 107893092 656496870 954057982 346232502 959193648 173054532 141619015 952155785 355060325 800114198 444843212 280881683 742259377 760091387 322017653 349143994 953901718 244931561 699806054 981084269 75650728 302478947 908083460 723899457 371277334 354171301 370043433 689787622 685806916 639281316 827828849 449499267 977113810 181850859 676756820 993087252 531862191 92067998 676989236 990672249 42100393 620104859 992111723 901470110 8196319 171724934 969713139 849401969 686936038 847402084 223595294 574218805 542228643 515271535 492608257 940638433 276031712 239859894 56812834 510908000 860375180 842685768 18670300 121329411 411017429 426819536 365898319 876766357 888783086 33330788 619696622 361540629 323664434 586712117 583619610 996695861 444898721 527375572 165941540 173915371 923244296 646635983 900639805 26475105 134694704 47538237 686344704 237536002 373523121 488640678 153725489 943587123 393480916 475084982 120551540 226559689 982031643 891765179 438552020 737025920 204994152 328766504 424051273 528942735 302029430 939213818 953800567 939915634 826180815 135626022 383921062 46845365 937293922 840607008 137814641 144798048 728597417 289267810 889617750 315260339 104998624 561002540 782185874 876302147 118462426 543149953 517247856 699820262 139069550 122082906 84998789 21258572 782778414 858868227 793289998 294110510 40158677 149965867 235382381 526870924 693886413 784579054 93779354 691783237 74212139 507180582 327683615 349752690 715183587 849972632 735011741 630377293 790254237 672004206 357513008 987345769 762474194 540345858 980675456 714111523 417116347 700469403 942332498 883964453 623311577 542536357 22794515 488642923 805544896 991507947 735304732 363970789 918695612 717952273 391990991 633580044 366514695 73201912 189318293 236037253 697219786 545057572 331276938 379220996 288205475 339609615 937343970 197526634 417115153 239551556 738910438 229642370 486098311 965588404 476844691 11634580 523624126 149185159 214396242 303141112 808564467 370461194 152037425 350865645 376356150 524140646 518567727 677905363 556488344 950394991 280824531 278137376 298421131 172284204 199149699 355709284 990154741 569591070 326249985 232830578 642187048 18404839 860187972 18066705 359944620 184609250 235797916 260602647 876232967 173476490 72111871 905475601 126350335 189575652 415844705 250148241 925184733 236819530 777923266 684709884 831186436 324446471 532020549 932842248 854723066 348185731 857814923 744370485 324669374 596933366 365431665 854382926 936872089 651736033 570977477 238273615 714100317 369661361 162415495 444750237 453183368 818890658 855987496 185521699 588897982 887159165 601352948 774219910 90956337 31317330 935287287 320096258 151516030 524962594 573165644 20797621 48605878 251404134 598737057 911182936 920645141 700735213 797528097 672856811 209254770 514592477 271709980 120603977 525175048 952026486 866183083 175451872 955069199 965078575 38845331 667841821 681703490 405805845 760738221 890553130 221288931 239326516 483295397 955089104 425716446 750003322 800432404 983544783 647885616 45068155 933336054 31019578 297536084 170099734 437277860 116574552 122134788 865743329 440636678 369955243 204280934 750414031 192579533 683556862 953107511 821795129 973080569 307347191 525631619 795307212 352149055 496525729 623700372 52288227 15397415 71064454 473025819 443370006 822141820 537003895 155536905 201419058 90124584 526928317 494978871 977018926 900146041 480758909 467706896 789475968 199178 38726669 82566365 722270920 664654690 63064621 311470573 745964403 439027536 220899448 489547287 675197814 713167452 533490057 438134365 665965050 307273134 944974460 673017997 73977678 552242635 301003946 937224921 265691652 320510333 974461111 895072217 359079303 832626365 746176446 905778101 830917723 906995028 463198166 520243896 117459433 769888634 305972154 790685659 653192616 10999643 813167065 493872365 688105548 884548319 637535727 378867944 651274717 231401831 281052351 953071214 416719802 448740417 784916551 432600352 603917632 175737197 575568618 11296962 870093442 713839874 639374400 196121625 74632869 925507863 950305277 580298266 517657551 989044708 631702264 408217790 653789890 771093978 222777363 578644088 908901790 751836834 424654690 800068164 754865383 268277932 398555666 982432753 759340703 329545472 982096004 218755599 50490587 694142387 330212288 560136062 480745421 656771911 374855496 123839656 846117607 864304203 236789256 844692563 579997398 494037539 127055877 86517190 756422788 987784274 420207322 993715899 369108754 131119858 94187480 994814880 803636980 987632428 11009957 429294854 120110082 611486551 944142606 971859020 67789910 507847940 735722630 552086766 964587550 797325967 703605936 781646437 283444648 392436479 934141394 811468294 72446367 587609437 1113171 368309504 798725922 536960020 125713366 169912730 951029155 165633154 39356233 750267288 431214849 874830658 487898325 253222325 979852609 301917727 826600599 66434793 78833071 242878149 188084254 938602423 170941946 156976749 759366384 431069739 374713952 520290808 343435834 567077116 976850423 411252913 917989270 589765416 748945676 958222935 661134631 818095231 49093932 236196211 666500992 674265167 67555732 482028845 772693109 39506623 410101365 964403745 229542075 225524952 965288313 369774799 493172159 549782930 554236106 371221259 774856136 856236077 360895068 327033046 287397017 350710724 692652578 423599420 746226419 674181385 170338546 568696852 972840052 938874894 335876237 839771647 604724597 768528310 980778618 560572038 802822682 858821498 299370881 827143567 808229154 265183407 793462624 175009914 467135476 46645967 367411497 156514920 234156727 433980873 780857895 760851477 316232900 620132285 555686785 283078811 773157090 881022933 410801897 53693685 309799659 573362009 83828140 10591478 307313275 608063694 129878180 565534471 52704061 329357166 549011403 755322896 415804124 442679222 960231447 236819344 172549920 135080217 829376924 784662768 374808693 105558369 552935869 874660336 467667655 569450708 559100671 36427924 357573967 694216735 489239483 731167350 470612564 154146050 279035755 478289442 611431063 217517758 970648768 309978822 901340726 898539424 946288433 524145155 810829803 363972403 343624086 314651437 43351077 587663874 890385347 618177633 580082542 134800974 463747548 962105622 328825488 613480581 687654734 137128437 780847714 497027880 374299608 334772481 86432351 762593789 499653726 121633916 377190356 700944481 567038542 509257052 661240081 514743884 719210139 779003177 220754389 728263600 453766661 282286879 696721746 473421426 354322235 792250407 964364167 469100068 469939791 966260022 191437241 36280619 9649249 690469969 752542952 543358282 471951299 495570212 324371234 313338855 327031724 628537521 929274693 24772035 11496840 52069848 8937463 4700366 355371466 378931143 864279985 38782152 83237752 278546755 698120344 685662511 163435635 366539219 700604231 442194410 330071920 242598913 446748788 303170265 299740025 967319677 362792909 561845447 966369872 283357182 102925571 950796445 305545660 207257003 446338896 504711278 411643578 330419602 50905372 913366910 561459052 550048035 817455022 67151655 486927938 24768032 809420723 3037977 345938329 496227522 853656187 622484507 909924527 560520741 177460131 528392270 931267137 342502929 520950143 596334 591354126 406846700 920901014 900408363 416419924 366509524 193547083 433342255 993570588 3696412 513251800 236685916 898149741 539888940 570032503 835172050 413287349 93635524 796598096 762714467 442255196 303369074 294869717 86374268 485494346 577030216 224437044 963214494 878010302 236444273 754666616 529243095 958364811 631037746 960095969 468380512 703971527 153616055 71791767 292962234 301689009 409676449 110449067 297864679 936217198 931621248 897878898 833962417 211098008 263331523 463491691 177992505 554282908 378168818 674943007 784600460 170474443 517767401 420311101 937811372 349958365 530252850 120178651 179375806 851322148 734368270 143495465 59678883 583643364 43763418 648394753 754392297 138773759 436772820 282830377 813402972 133479822 99696686 628973588 525528549 692586477 473159225 219612014 703576009 515964141 985989705 727683539 396832293 921364168 459877767 78751397 889242425 377159897 971827588 589266099 668931052 281129830 445483268 713973341 392148884 49447713 63688542 37184350 556287548 326668116 397229930 795244137 405376491 105689582 298891690 197784178 736042080 302405153 341467540 206068341 904070517 566680695 273701287 630897610 896819552 135935336 27326529 215112610 360589073 342897784 753520581 918585396 611554725 105286706 20944128 435015424 32821009 219832821 115355189 64293442 218697494 673822845 895313167 844611883 10539634 613266092 524651164 34221380 807150895 325774493 683748269 427553713 42760506 806414300 568143631 488504691 960551154 119618321 141143764 880591998 662635112 134465421 592837660 968989690 419908126 175851533 887524445 690543272 306454622 274944471 356688697 797856693 838909541 763779859 458997680 29746223 662928515 539670365 497192670 297269201 214135311 440892036 445722507 812057702 549434057 420982158 859593880 976516109 418645223 23659100 191254111 34474505 9978727 211015234 277179519 381686993 90742072 316619988 140318295 117103628 593060159 908836949 112018572 651149561 628045830 416696326 80542990 207324790 782678907 390305386 623041423 557856948 344953963 171392814 471758016 100079092 820243491 609809256 629611720 277954415 597539529 273701676 431444477 345156778 376382188 688269976 78413763 305092408 347215856 882501688 190423355 406044718 31100060 864763622 743429872 173942756 548966553 212292623 790540764 970301000 698060773 193772094 948065206 952436552 349380880 290150203 206119982 126596816 637301270 444263188 784251602 822410780 329629376 770810510 357934437 158911412 626255977 523241038 682496748 506428539 595871950 811564459 290187267 212207439 843424771 849125061 739138453 414980937 837914011 182472911 713277329 797160951 397951599 631398578 68296382 361374453 474425291 688740121 880571220 48929467 681100262 455812409 439552775 932258318 934436266 534536479 27098127 495554079 47434512 497544172 872409436 679754883 313621020 351905835 606039223 958936374 412285211 306306359 339560803 49488214 720561953 474430181 790037243 133356133 509915534 834227120 136046923 94937364 223474380 471942736 804980033 875733904 32488338 762241047 540412066 31544268 253600646 233212771 988430672 326630076 900299510 718342029 760495301 230984916 547120707 729394524 464745862 254314008 127752020 185222214 36573977 528231177 587491953 646173531 883349064 777815955 418122163 125847708 37126611 292200542 435355014 767991512 211986100 464791585 306618937 246403797 561532250 787472773 390237525 549805606 509622538 203386930 988845467 872497823 49387706 171473298 826273074 54242477 968699224 649112165 422438297 506601364 175385000 562413436 15236265 461583432 140266823 697794006 274052648 823729971 621463783 34936694 643009356 496851670 215829710 936210501 739277359 584548031 187492875 601540289 113725541 686275905 811722553 662460276 720217157 28583991 429497143 447369425 747458157 79600237 187265724 943955960 856379713 281961846 703771293 720390862 277204359 949773365 554923167 618287230 831477987 601462465 178100532 525119541 169808727 381780957 850222490 896648691 901370092 571224865 92254807 949973877 155878593 677420293 656138876 153726272 164348314 151391179 506017078 268632936 888753731 456156685 312083714 556730960 433805801 219478936 902460486 181222715 689928987 960046524 739652209 722744136 751415294 649050898 483680648 207039773 385880543 992240444 597055972 680185071 234557258 824601644 657203597 39460971 284064626 251620459 563323413 846041083 383282282 194103570 679837782 553441645 873917360 203470257 704684262 540516934 505417926 922307310 999563632 75296199 916171434 982095628 705112474 544361770 395350165 335511930 876071052 975188028 504709049 985767936 577712236 470100361 745873915 583852352 762065365 958315271 882956109 759474232 730047303 193867805 404399363 281706796 753634971 592677947 636939557 542114222 591382162 924106237 154936171 524100006 239542022 322398437 938726960 158568940 146558325 528871852 876427268 948042462 454171956 800341041 56628068 14685215 733752382 368916717 716819333 159944385 374723014 31427335 973814179 794007580 501810563 744883211 295364480 491383092 344619244 92488307 6143460 35561366 353000285 718960698 401718731 53917586 684669622 277723704 207836306 777656937 336758493 738330997 13758893 691533534 594936772 871756883 979469760 391331388 187216357 307107109 252950315 298839135 748825452 155315116 132356411 740565574 230544689 572708803 490536051 143906275 49156020 803876379 731259508 490024276 333055444 857902741 988723634 172544055 11747352 556553965 305823081 675678964 67920858 360571636 2373702 402129188 576034737 421258067 157462516 40915552 638087820 18933128 792966538 12632489 298517838 732279656 736337392 629287932 578571069 52250545 651715670 204029316 929973602 198200592 500126078 288956783 958507788 31170585 791785313 914677214 781354658 788230388 63244838 406925734 309266750 626026818 673179648 657495615 720342948 277973122 347857677 115407447 576183587 825780489 386134406 310179110 847226287 904129019 317667548 677780126 30593067 247936601 671955043 826044053 181368957 886962679 629392768 673572705 969780920 8128369 194073644 906763335 325579993 429340994 609746763 891220720 468679405 528835688 254487861 565432811 64187453 398540369 967371067 309422275 472102796 136257310 566089897 934850991 663567065 727543944 538645371 24011092 644709424 180952887 377615686 655521539 633194836 755612016 631504445 840410608 233552883 700113915 43416554 746613285 233568304 378170993 455435828 220575019 93919900 36139068 288515204 279365856 443716801 682650486 185630037 883889317 814700386 783396514 895161944 559473554 658684772 25070938 182572166 698320652 626423265 513937732 359952199 215402903 618202846 777220611 716360471 865014417 185110070 854025592 439284291 566524875 347050074 436199240 863446307 287689413 41596429 204748943 639244826 264107418 685871284 220255986 416171143 812804431 995132757 246984463 450750445 662326895 989094320 746623607 704572488 216481401 101703852 887261166 543188777 354267945 499951073 543888173 987266952 452035178 922911944 43267132 925892886 870162952 115831175 974151782 884678568 33732518 78745203 280637827 763720395 425456625 312857539 565964150 224402017 47866057 418808168 319549734 692786135 192448924 422974122 669560566 789141061 615844765 778128552 841188633 441767310 858377809 131487046 589381089 352665106 830060709 290608823 87997075 202521985 763774769 602318990 68507498 196451547 330647376 583254551 986176695 396858237 677113723 60059114 223044145 225907462 27529694 957866819 207377787 562828867 513947911 655761031 999177377 388542368 422351067 302482991 695700141 383478608 195490521 179989655 11923370 568030772 185169788 189324651 663058727 121904893 100240113 821731256 475720946 110686791 807274011 838063121 963433128 488560207 426006651 890380206 160631370 229537664 577118690 297104707 258779076 67851660 750321237 751702127 152841732 832802506 331379214 126922920 632232224 981125303 284209721 217493747 247969521 701343713 446064125 446081604 6860586 547497669 109487530 255211882 260251140 554506891 117172032 80610616 505852222 993605628 719318723 13021771 45423142 289726953 90644365 369154372 759587274 411944359 545984905 327676179 976304645 181500098 731064312 427867281 285442444 958371775 152585736 326014120 446427480 528391814 238543527 756927116 577885809 991752550 802936705 190241209 68319426 452310766 686139380 151542919 514209691 460255838 653826228 188472069 706406730 273880688 375126641 719753227 442762750 581642179 278262575 592898871 831159642 874963379 846778873 729691910 30881443 430855833 851447645 620909440 322451509 581507836 320815651 499252760 747532488 208859415 158317504 69172753 282386828 617075651 59006530 180831446 646120962 664859482 621157251 259720543 597444805 870190548 193980450 476430684 98917928 924289905 937289081 8111876 452121136 878586257 990083822 910592820 959159402 247460841 461258786 380930348 791739848 604561570 99933021 998977643 525075577 400929481 155307638 508520583 273623440 810356273 956935257 155489031 646066244 947976318 766265134 712159749 352120683 495439277 173760186 722990137 40243291 447789438 68147818 833432323 217719080 248314511 940968022 440733611 963003533 652351955 933859710 119796872 422065861 67625906 316760646 46115631 712794980 688293541 17933576 765933234 829642310 490827206 628610804 394695330 805357269 262250769 519907495 396995398 136973552 137772800 627475752 184079558 757866540 35022620 963012162 808975365 668033806 532321093 691100134 226546363 541399255 427813564 212042994 853434162 461469357 444673502 674846653 305375537 704349720 727035795 748687490 43549210 444704177 202671093 275221265 705102024 672641100 275780056 924496975 675347810 401440263 971132915 358344908 3941026 235648027 487224356 662252975 854140378 2720445 818095938 262360223 238614966 787705051 130990112 462812850 629960563 864902523 436699447 6074015 25077995 876273027 258692705 450163912 78982835 838964914 72499677 896413467 855539889 422770188 567824178 291796874 689764472 368198454 953555143 24187390 784412993 969937573 308901394 285301630 277449967 120428221 630476226 59514846 539051375 919587176 570853936 100690460 863734626 496174668 613347498 590686569 556519124 119295927 672052346 388483983 401970848 287063450 971763002 416541424 581194659 173699939 975270573 502593002 907236568 507464305 482701590 536961147 685391370 644973077 998390796 695063102 884834252 768712013 25276821 827678954 638422668 578165498 935171135 968705853 838830418 676999564 386632037 968090843 172049428 412903169 708254908 611276431 751666527 994531610 356808758 846335801 120002163 787368142 812773835 291056312 318128822 361852366 245865681 367303034 662372942 438015783 623476426 970989644 550848016 744415354 931747309 918185725 702347553 831257415 557885026 206551643 528083505 998620367 945434503 52226109 204787049 534010335 479301014 956387154 347852469 352156847 668737335 904937428 606793829 379872975 777151838 437760888 11008200 164470934 336037500 65874986 225371412 701488495 916083386 21325928 282264627 775160370 88801779 75815979 163359248 923573655 776196506 711368068 525660469 149437390 710890774 970965879 692490684 157757554 372419244 28259314 503387740 489608371 476595054 718685205 983155486 40524729 944876084 73011411 566001079 825244824 222822201 361380423 52417564 924170776 745221187 58078147 310637610 601000769 342813110 546139093 736577140 278770718 487536922 2069481 665270555 958177660 222492052 764324322 171294850 840179900 847250669 400478797 227235704 138535086 34476917 538921153 8297162 330706107 440649335 483224844 765377050 360738055 998241486 793221841 925613691 405024662 763750131 325527585 167707098 925335454 832119692 60240986 95646406 718574920 542794648 889425318 330170217 365747536 173961688 713404001 707404726 472361486 820563579 340401038 604770595 911983781 35618645 264284744 531243997 671664261 897305570 883006028 703173937 261542056 553955843 686587252 749870709 234189703 955946541 575414673 448167031 665351720 919143615 99897514 318566552 182825927 784110760 323107782 894575429 774728994 956677980 570109678 601475769 971795494 475229361 974407680 687189408 871806934 309820548 929665929 451208880 33101229 106766128 492266976 25698387 469453030 322465153 460784125 272304413 462033282 767497095 718461228 102519943 324761172 44111613 963673624 109362895 442242223 127541838 811685136 675492500 283258583 555337191 865046459 84428103 475824663 110960218 956767304 532111125 931531481 516428409 794884168 20808704 335646204 793235636 384243507 762302018 161474279 941878409 293470190 763553180 414875659 852297017 865950797 238412976 89859612 652389178 869257746 691791572 861020976 193866826 251488742 54542199 445319309 816513748 432154592 459635919 650281046 887632469 280171109 591041795 275729425 142210607 927317242 63548658 29425008 383378958 331179769 347185927 314394140 374757953 180208369 581641927 751648254 955970917 163460654 186569990 997604841 180364025 431732690 951932032 795686846 23435961 68591581 152664167 745288925 735076186 665837992 967827368 849934582 140209954 784819907 279281963 781404208 369193664 451995981 602445066 910650275 940366242 783015458 327846165 317327597 142203016 74582127 35225972 155310817 456057502 438140765 222910362 661465066 899543499 450112883 241264501 843027587 706289274 897850328 327134417 309011420 437083226 372476055 170375529 572022189 530174030 578050256 473516854 70512278 680075452 229333568 279836914 862738208 20001331 9698340 176034881 683269168 977911772 504298568 74944064 192340755 649860966 339604395 841984072 479929703 93058276 959747230 297146662 360824547 79661061 594426922 472709434 666578440 96644199 938145605 920885169 906184244 152941536 473663271 640250280 497788456 930310191 860065444 278277817 606248336 557151172 721008351 125300034 64309501 213163680 597997048 193159984 518121223 133665134 814918006 16739853 647438115 322713928 667008667 701173304 188447360 829183876 524903732 189740631 19889825 10685774 787846500 306789511 377933320 278184309 820153683 992257451 740480641 460430248 725634612 460649634 680540621 695393957 640166904 427990513 709488112 901375725 811751430 886522323 943197443 190581079 16657250 2345104 971163945 30898723 858738714 598872868 206664258 903015029 256394666 944863334 23241282 481863565 203464912 208767216 27005460 239663492 412974222 924904829 199126579 859725224 865563618 141731574 506271213 858052050 269717911 883858511 763196618 718780864 737047760 501199097 317487207 284259589 7499881 19462871 146737310 861667637 59506671 278756976 245689024 922158279 763369469 116093394 474394280 806756006 936082835 281078481 206933161 711173437 56754034 925933025 849830876 291615073 492168869 741648107 269810172 717311300 202189195 873024447 175517745 250237797 842546819 685629755 231271407 757522704 593118484 855674034 992827597 156472017 271797928 970310866 842972582 477782100 255792239 11617777 954969175 480735295 608837217 873317672 255093171 394328992 179661397 914738817 302571525 217925391 713261454 218485078 566040742 81456380 261438805 130848034 559906205 520381493 800800862 68957743 949671079 534650272 310900239 429912622 381599292 423667917 487594757 397088013 715530292 494533999 578256427 911237433 388746640 947306313 231231894 192791835 480336491 971389990 225812343 628592052 280735215 195680550 57564023 373700722 579543032 71617870 573027320 539955136 604562691 348897709 632306651 905643459 347214160 864563193 299402582 539182867 649583391 822018519 471913617 596061872 811302545 318906288 807183216 697311076 662171366 806070616 29504952 626179067 13869237 738287269 856599604 428958361 703039663 968379455 664122275 277274311 651142621 833413852 668606389 695026457 324975614 477138816 491367420 321418240 80571562 789366609 899034594 396593651 763462120 134008272 440675019 87875170 318821261 185625782 335996495 894322814 448013118 187072331 429129028 289478785 905940739 835146290 867104200 571753125 698236578 316160785 193333665 900876282 43662453 301781137 853249053 981614014 575890240 623575944 609675512 850621593 295610095 189654796 263379014 84878805 372469101 700935060 229735530 447630445 553824895 659515202 878468845 891544147 481801934 210404115 165805034 593244205 46352999 805382571 193191047 536557843 364181074 392638268 261199237 982371733 472816664 616699638 870890444 809857798 49145458 151796201 508379697 952579601 319399293 544607832 212402023 149425378 554245887 418429319 32976760 293293761 348415888 907341626 332984521 59523218 965053410 382207806 644649919 362403830 620100353 359587833 314909276 475754834 561883017 740883726 633323112 864394512 208704922 348793018 106484562 218287776 117788109 362776995 104313136 783840212 105466775 942202497 537426705 508051748 813239061 922943526 369074499 172088088 964451811 990060241 894769427 135447399 543624296 804237873 267524354 374065105 205799890 242878896 475879995 448808381 600002857 816641493 521520683 77873994 868254725 649442227 228477309 202175045 181438383 43954162 984146815 671279803 935117437 819499876 385152337 16610464 674968647 118978896 45287743 201515996 940617368 484160428 227134238 173908865 731835127 279669251 49068023 305961038 590063511 322408204 953491373 243089964 187083903 91779579 596508505 583292434 315727915 576598737 17465464 889346454 490880353 70476599 132349557 642438204 124062960 501494032 347492375 243048760 910639952 888604202 506614566 490772001 502463762 118479395 201556739 122778357 695811718 619538261 134464364 305040742 846167747 635865431 295252216 207765624 279271580 616345916 32355555 535309541 580594269 466148492 81841379 753732578 813977194 601245661 429901683 218667354 292904549 535764412 331060314 990605703 372566571 878198071 774820418 12118403 627417835 331355611 584110127 386983302 811018370 855780422 161340331 313998958 299226245 488808958 33040518 108270587 841512571 210645144 193591931 728473362 982264640 975847543 988100591 142320458 13224103 923556986 216017650 257893529 125989606 282212852 374714450 625525921 439052797 261347565 563389579 604566150 348608555 831743968 981202682 185489665 411236316 397301875 840185015 928356981 866132786 795877435 500041509 969443567 179225628 516061654 343000148 1169139 619128770 681449572 551176145 996604191 507806993 55196839 539856186 867929994 603966037 835683030 590932399 19347024 216941270 508719726 75527378 345725675 978923879 826323824 683597755 306052442 776981772 317348956 844063456 494702154 654422048 297724832 641435720 564306374 671989772 819217388 486363216 450006932 24315226 890911225 456487216 368299939 126922860 324266591 63505085 164927309 272495726 455905343 422207633 209359411 606997808 821016687 155586262 667613675 257428174 64485517 369337927 340228893 790090321 596897948 281490853 112856464 427151663 814223191 964331634 360823249 315709081 756903386 186253220 519337905 220024265 343407463 211395815 207376921 199101346 753538540 489771014 956492056 989537579 160560960 575639958 106298001 709774089 395600433 144422195 807469086 475290637 415463038 114910638 557652062 347617260 150530102 681135050 819259096 423998285 699450176 364701046 439203178 14944609 917118534 415975499 530262082 378514368 480706718 822726508 10659238 476244643 59208076 711970321 629973700 693083339 507560962 149024238 617308391 281472445 428085820 661821019 469864520 659456255 559793783 279818108 120287258 750241471 900213490 964242317 310009350 180739551 528357721 781809796 894101756 700318463 526514597 400969369 320906298 606391671 545248554 304334980 831617218 102261794 729625661 608150626 712656123 514209271 442262970 961786275 39924042 72894257 589887204 222447499 422031575 715373079 336538774 800403228 320345211 714720884 479646964 247223302 509709414 815741080 167944566 956051893 706262573 482802836 281566964 604514769 695676118 199463499 13905210 696730983 782638734 117044573 859932992 657057470 24108655 335352715 162795301 883804162 362163929 962578372 18245432 679200527 622829380 868286257 799082928 141223025 972882038 803461980 593506664 990710204 763560577 326184651 872152478 575864124 42231670 523191977 825171455 425643341 501252443 253984469 404684797 428993032 540540035 583686983 162747957 860321799 498911649 650905131 927830071 733306914 910310 187542551 910701661 479322280 751286841 420715731 731861625 224363953 960827895 376558926 728402723 330014569 812382891 230072327 103524826 168497355 425064078 144875955 790821044 980966360 201847082 518284974 23256479 500946024 31312242 980727685 315844359 157173413 84573824 778927159 551596489 644959209 971706047 241899236 874300364 961445948 616801331 781903285 112170161 967078484 97504080 928167434 181131938 469029739 986431661 263606659 567594590 867266661 257410534 635672977 947947895 986008957 776472137 704064563 283602390 878556600 671574565 372276461 228574796 175580751 422466329 112352720 262081790 379161062 602723265 241182336 245156244 134558412 432218673 617307746 179336511 625116375 310082224 791436839 190584387 636727387 467048323 306598008 996814813 903356308 63204833 887888046 748848858 136504676 960551495 700405125 88326507 190227799 16787867 952410379 95361281 180433896 824772820 767095928 666195666 160489125 313810346 387938570 718286026 226421344 882554468 812227255 680711621 17125484 56479727 598085482 152713211 992680146 892678387 899610172 680045429 305674317 204650743 920373077 865393615 618589899 55433319 76696893 895422491 479971415 875746802 944357241 167395315 547727023 733145829 118465723 529218268 922579327 380248637 246518710 339905405 798670796 846088607 768256868 720066095 544816985 117899976 675810767 437298737 150399355 520718614 105656857 326086698 419941569 147781436 413136434 694025157 875933859 418765112 35155037 598562294 788447629 175863429 674964776 890739473 586196338 798034407 867031360 807154364 362048536 70305405 301613424 836693408 290512123 580930300 64683165 872149316 591895657 862006534 12099376 767158618 135926276 264638464 806017476 458798799 422811186 895145074 476820729 935571074 210789343 642339540 208922742 833968317 294671203 884953679 90328572 447824932 603343528 997562283 69181886 142378262 703295134 320407040 751421566 759684138 295933141 830366294 733438496 69378658 4978856 397893428 759649865 958483544 294781158 620953099 952185816 784889844 610960282 627458719 206970746 887444429 292128895 705825356 628067932 111676079 655499362 410672627 256223277 272676477 593606448 972906533 592115737 210735836 991846214 525891935 105250297 828779389 71073627 352142219 837333213 229753533 169423374 762592690 68387338 903623097 880998008 552681735 521727401 5950816 93665794 198726032 369917359 477955653 681446979 511734815 78227953 182970241 881152939 93486489 145964408 442103665 252669960 306848238 798819231 661079914 22864478 59818107 900154280 451505836 633299174 134823175 997954569 584012948 820038711 879924337 126334999 227314264 682898905 546928809 987305260 770214343 860242370 524186187 908791637 162474969 350357235 795931668 815735145 43550496 85389062 834122826 96225151 290164688 495393867 465207494 773394389 91712823 860824689 114516332 224068099 577839973 989041202 29020091 435915492 169018484 277697539 786653166 10541920 448217834 424046758 167434275 551243240 903691892 143702271 388344193 679870831 206235037 791593282 522302420 8757408 714607461 969956644 105134757 884369823 472978722 497123657 303256354 934222512 729742462 924659923 186684999 94093829 87374730 454151396 840886060 558563671 240916041 497763341 727816361 195662220 45839827 841817281 39531625 961000846 618431737 160867833 779461785 863318569 7217535 189236139 44608471 422667957 115362118 519665390 180062655 753497544 579978251 405509828 461306720 652205766 235892230 441711342 240475845 815770288 868841876 627030350 311459742 929321152 463968941 477157581 231817939 836257034 950109378 500719471 709527603 53274204 416939198 961382462 55909273 284062343 706337876 354688328 426349170 605612603 413261833 506978569 313848454 558294518 9558461 413361203 231357757 6269723 707288758 804691223 654828936 182309323 662411186 575734818 97720969 580789553 47888882 802127452 554506011 448824839 324222030 823797476 725936611 934568871 921457900 545047519 482768032 807248931 709775792 491970729 442861061 677464496 88383188 134484523 88478697 256621290 176475170 711656828 283756782 506165141 490843236 978570490 517184841 219823036 246928415 328964442 100404559 123821274 436548491 305870350 749614701 577846773 612057354 995254181 591180337 793477164 295990923 797927106 857303355 738392695 649964627 739090165 683911267 714290890 888229234 134613269 461959642 811749759 260803699 988554644 457445950 465262860 519538451 739305759 493528568 184932737 952425979 948360073 129265272 177026868 747165094 109774092 78240735 410020681 840555028 605636498 90830071 832752809 204782475 119982388 334234419 298636843 579648269 987568960 900911017 896901748 661947394 777643262 791191217 777575293 687145532 842410486 767483266 4298284 279449125 784733535 351818855 932297583 279127392 535317 82602080 963796552 904665358 356270828 723137487 686646059 340532049 441801757 13490939 932341085 621439362 489034680 295699934 845013045 580904500 424413766 396536318 601168669 180063419 122135298 361200621 402386131 292653930 248048808 606463072 821152657 811163024 546262561 242495629 139209092 766236529 610562475 836218132 456932873 736226135 353415833 86937262 497531292 644105504 939468680 904656114 62198187 783397006 773442650 487700708 924714353 364061201 303011466 770903459 702297233 297618550 764681181 657941578 481382589 409868606 626159263 735032865 531433555 888559453 937176704 279815792 128760989 907041907 310111166 204217683 111402850 196990727 462996829 443843779 943254178 388483311 473671172 104287553 699082794 552695006 21828583 335739814 48989325 135798114 202537237 238102829 363044336 762586005 484578245 392809059 491140651 216782466 841220498 93472611 642911238 234904834 237909330 213701628 288496602 996069321 138163611 229985981 685695488 468038646 259176390 275018242 847700776 266819130 378768108 291870441 3516787 605519370 381352910 691825785 608359782 533878316 502492409 758658894 837488440 985382196 766635859 653605349 857945172 536126954 27738841 257977825 193367016 912252729 243527094 527354595 451039569 755987041 787398803 666338106 387825247 773919949 820695459 141103456 341348446 53052854 675633666 617614064 615239554 210812526 396926232 481012163 903978735 515986990 989474299 6826682 445549310 85820702 60684276 799871569 260751529 571293819 75604268 551982240 717365494 810217780 263974409 457217543 233358049 836569393 756255853 814392108 73313644 719084732 654575230 706548286 760325984 194859458 790832641 773534042 78518041 105855269 379392833 533973034 149919481 568402176 47743415 880553870 778740250 281236271 600126703 191520927 760041016 580460866 347597603 727880831 508511129 985525230 638698423 679970010 142322128 198800351 249890863 893843212 303280001 214905168 650806359 326194252 153325557 613979251 579879622 642117007 189716786 859420669 167477497 428659666 657874826 232423022 449507943 828193743 380792133 295857935 408987804 822799466 533459623 939627771 225656567 493682127 797809954 521261755 107349374 285821367 743995022 188968544 196482280 533829676 900300744 384750871 873986605 228209074 512800184 553079660 65672037 950439997 927226321 543210217 339332503 483317852 19209797 669060475 67001770 765516058 177500649 923447486 937694356 616893852 557688135 698650328 450586325 217710329 719023934 461849379 304913237 855540647 694341359 95952569 498040921 653331773 249045082 400807109 861654576 743449929 169356468 611822294 483183503 479344229 709129494 938741763 278711698 978974125 451025795 349451143 207729674 891197090 177949798 893947429 891298720 474059845 463913234 944400936 370581135 434313265 355201914 241151388 724509262 692346672 900500597 408636545 210861785 297257818 342982689 457293399 389218777 677532687 510904030 330861237 830671416 282393575 459072201 72518302 656207931 110840267 555683040 935810919 474218351 528920272 677758014 771862351 675802930 550657705 843561899 886628624 437437955 596567270 290168291 853448379 393294454 468106247 424545881 937130064 499538334 993478770 645327406 91186313 802528605 244568074 970120551 573565156 112710885 559510470 720919158 552737535 839144370 955359368 839186442 61834541 425014091 441199050 324857734 684319044 727905461 559792135 640202565 918228021 801096169 500478536 478865905 960910306 37955466 539418809 715173855 810723948 659891473 684953709 869365791 177323421 571332075 705767242 812848818 901382099 772568391 677880427 435683488 842826684 807661441 389914242 97190624 856115862 824932820 817094550 914347772 429102747 618631856 953376192 376333570 27949149 82384886 524836169 95756596 409056346 286068045 449688540 369798621 637060109 748999761 532618938 361688792 756092188 376339721 276969683 886963488 965115822 675320450 543853653 343454629 329042386 674157819 700522285 187403944 171206338 830300030 976373648 315342254 536510872 94961421 891445926 255734017 659325567 756780394 530249674 110929188 854702919 908726810 196933127 383117666 955434700 180537247 563785445 914430580 423166949 682244604 560850485 936691449 576100457 656359196 547936381 816526166 78085353 671893638 373368221 24921261 644695490 839134258 195398798 619585862 659537587 721670035 863762899 70131225 504666240 832461733 628606985 41364319 911174778 198118148 517584633 983133663 919741939 3378153 448581166 735216777 900775461 986357222 885687028 906850020 342350579 659712033 619164256 548823694 331605096 69326360 176204843 48182506 574296522 186613919 168719768 540585308 3129122 371077818 951261645 525625124 480228964 229334174 615261136 34620020 51295035 495529589 684416956 700128532 679362566 640212117 632916242 170292137 514649612 653655576 767247096 456882136 307758906 9418279 738537807 95750820 949352712 276714004 711458492 613090151 657267154 666014344 988906553 472942324 870062532 14558835 302643454 928097229 577618893 844418316 661136036 103972415 808188794 222621621 782982418 816910337 843178099 553465524 393835676 948072653 442017154 372224434 684880983 538099540 170543844 861030532 205525113 269851672 686778715 204242390 128083195 539354088 718666945 948223719 639319516 250703441 988783253 418282802 531476480 122425593 989773620 590876975 489386948 761050891 213376170 99367341 580690846 227234088 738778595 718846024 162577541 45780374 873118397 482157518 379374915 587679698 702794708 781781121 647626756 497606560 622704369 755256745 232029184 264613096 262866489 263254124 446544674 21861694 448262802 840872520 8340814 277924201 719357345 677347182 875107306 257981888 471662532 510372745 436369737 777174344 890727120 551358275 629148395 395372505 124815580 228870085 483353910 863933176 347679885 288337113 991572999 931273637 95264027 98604336 515999216 296270748 695754820 31872573 281760508 27262668 819360238 129086663 782418139 458791481 937324979 851486976 447650066 302943005 225814758 577516252 508617220 811280261 661858340 546181191 156387074 305061650 102755663 931732509 374401100 185244536 94540443 804890249 511547698 507137433 760189392 268723726 418576386 726436236 509166621 652943799 244918991 764714913 90811878 718848480 312168506 10812203 774662321 285695498 483115261 27765449 544179903 906817150 346301676 633325952 963189810 938641835 140690352 637958776 765939404 687893169 986334270 374743701 844959006 275859862 383220314 566852414 646534102 362847955 533530460 877127884 310878661 559641768 350908128 936891354 606655807 801842790 119681265 767790652 40645785 124486407 866950069 297852566 456599756 621120021 475125386 842936436 903635696 356606334 928514434 869295723 482888698 419545510 487212085 600854448 160545796 915791710 191353455 251549482 867017202 709776153 996268830 122287961 624241577 923537349 375042445 131170341 306254950 669971679 357341068 100574689 20971776 592927619 266553370 476577753 605621235 935781349 43521757 15020338 340759141 565669357 396337936 667062924 542127684 306579900 955543061 694410026 829987063 18938777 747461369 397111578 357146620 369155988 987712854 581761825 54924914 625997790 313779990 807740940 161082679 157376798 560242696 61010779 273683757 777053164 681089890 434915993 272833231 27086687 611638330 89374140 149537509 365557481 3083093 551040315 442592203 377744115 693106255 450415638 483462300 315413124 2635188 188239606 898853343 534885486 796491273 830719568 448782310 778163933 45842030 219363361 808892291 475846848 18144147 168838611 525907248 163666154 785249592 283516741 136521052 141880168 148921813 698360590 488063571 803949669 512580067 144268310 249231893 856774413 667945467 307852405 650334992 641749887 252894578 616407144 811279720 376170023 261578568 66338716 437276719 986740440 634031654 699480039 164824413 610754377 477579368 590965882 246774260 546464068 954020472 717615509 839850631 422934357 860309091 5710990 977909040 898137918 937014738 482676698 798789991 955628673 22613448 64445903 143257800 979331336 905340402 744638893 420268748 763605307 952938928 506528256 706188520 636671616 140380337 259621029 37186964 884842762 169459764 829434258 603902618 824982247 561503167 346056982 71255860 98608430 356793967 749380765 672758725 62285098 896553592 514443256 296214194 847297821 804870238 209157240 632358506 609417974 703813743 992628766 887479841 852781069 575482956 995571097 984678079 15180981 964064884 886651834 128765887 694869084 891623463 42283195 135921079 600182449 81025936 616427379 923494033 693732849 218758984 141872293 824225916 891783596 827015514 201971800 989893512 418362440 578569766 316767991 501261578 721014769 611543326 483020291 236081237 262450049 981397756 637695644 853465838 367296309 104859523 204880309 89143806 507836890 156898317 35693295 318728460 876716589 642504959 468138603 672705380 172944134 45204188 314700053 179130597 742820951 40808254 673417964 13736527 820713466 100948367 197736915 845073646 99792313 915896115 473932810 229111608 731839543 198504064 122444552 813897234 65330334 765174541 699247609 923117078 125966957 267843164 682864430 692762355 816100453 982239156 122832153 604132469 887379712 336477282 141284028 119709212 447699112 395610297 587243369 437061118 820869226 509496746 333025428 306208797 313354710 588671948 303953811 47418503 926000512 188342421 94977735 713085376 682264780 27551428 317311594 844141477 936332917 216901790 412682961 696187834 388844658 216549407 793069959 430837983 860401235 456148599 920999368 129512073 819084203 872733038 381358779 522951582 690942764 930300444 477840061 955061847 294507339 36531044 297471253 513096741 240610552 400128614 683023785 524665522 269474840 426109941 186350602 211252822 656382259 269667183 150734992 717705676 904425750 384086788 652605550 491260006 712798836 935893322 894569323 698222226 33942350 548143985 57318815 932612404 414442785 445810326 547366432 584883015 130872934 200568414 312694815 934910735 127685055 402346320 824639881 933702575 632812432 804524589 975025563 949473945 151856300 887925186 327370288 280535291 114933661 969818773 566766717 457562263 706020516 297449018 688197155 335412457 100047569 734546071 598735838 23586115 933228585 458944865 507124634 808180250 616299922 818789210 856338858 680162813 151472007 173958941 747649763 471604917 47327156 253158142 575443946 404246849 70268722 985026220 709745529 192702787 640410461 549432647 410975586 414377956 657375145 968688025 43073436 961592273 619629522 238382140 859095436 686888323 689468839 103136440 925359388 49073702 314302882 807762787 756822533 173135948 27740174 559980779 792298703 557687088 425015431 403903647 632624727 720448179 955988368 627332071 389530816 990973350 822802947 912542843 161657401 621148462 799076677 855778954 462360974 680551508 722445345 349940868 685999796 629814545 124083915 936875260 52743820 588288695 986462275 930217956 709789229 216390557 476876689 44922194 416164610 654691982 784372667 341459210 479492948 519829862 647055117 376031684 275802389 958561238 25449834 206731084 494352293 613114688 231509797 116465898 584259606 891706647 746849190 601062753 414247522 940250092 851151354 369814022 838440785 937652370 988785628 170101233 198608305 645382567 679822657 812906315 580427747 605498990 366696430 694368536 832951166 455889945 940900446 173552278 778194131 680244604 639722501 390679405 861794917 346686723 125183165 88747118 513217993 224661173 982336004 495246259 281412278 87501200 131831496 57629518 806880672 797171142 816292372 735920091 109755565 987744725 809317931 941452210 615746174 213675711 280269148 296412511 509229587 217150209 911005821 252652730 69093970 54886214 98665660 938444904 970372298 433247330 744352281 245143105 536254455 871178576 747178369 251376881 267257842 240910276 656953931 360888645 349880911 827551674 407417272 459945394 306240237 126101891 309512831 246597743 540989001 943485987 366544452 784559698 915381258 587073941 835909806 37062879 98669797 46549650 54001215 823091942 972636995 768956969 142466204 661766704 235273447 80162637 449040432 505042066 793443224 828577444 481264906 47614061 376356548 359179788 293536852 320353836 638994152 402932234 749684846 563718452 362363097 947592803 397400717 450398567 815436770 854876445 63262387 639930176 520707913 875632549 952026074 845854141 440905184 937350663 486748190 161921777 194991605 257779000 653307605 832073095 794860161 665085298 101934883 983086828 534497065 718908304 823696606 371975146 417745237 255583840 194057099 402713966 33600765 61154158 27417441 743662552 882794417 439590348 758598451 495127006 356281020 958745403 652995767 198081686 715515907 148127172 218216680 108827229 398067976 466308403 607325599 502285741 601261575 872956477 775061106 610574751 507643190 214992662 379382869 531614287 213144904 157453650 712748169 603993435 384411488 701121246 693508253 516820215 876994598 620003154 384752644 77015099 739135813 798306184 793050673 322254201 770446560 364613517 16671804 804556131 748738471 71458268 607999943 426818691 103183440 571038918 459255231 629530660 139489908 476927439 322545423 29414581 618719307 632187931 916666616 818379034 190942656 171711706 924704708 1429584 538528376 975340417 900259065 967465877 281480810 115918270 716813533 892680792 854708146 830954861 380543866 263367585 970223025 38368849 658872727 722576064 718846183 650990391 683325110 216977814 372795914 866679160 719014036 846376449 274852927 73369007 966407340 922074971 701302383 855944940 678150021 119936751 879733231 270371364 605192882 989074787 98224508 521676584 879946197 418803084 629410569 655678423 249927618 423258141 339604540 60474138 691252864 863903160 605771622 475371146 335398048 949055930 628259047 210146866 550402505 878854612 35020746 760860245 446220459 497496910 705704246 876806327 381430780 325540072 460228927 414723598 915602398 929303144 674406087 934384212 863755701 915503931 200336302 96636220 997479940 302907118 432878943 487188932 194774601 832714201 855037425 566216385 517199896 1910779 966703532 39981704 417379957 626687484 605114456 870205450 607687571 702374614 222862256 686736750 779376493 476052584 375212343 230298749 909119072 370935714 229776625 847249182 394266978 72803954 449511764 884025420 973609932 73473212 749431608 527100903 503570320 633508270 125396903 129883911 88266577 459221765 354156926 392077830 891407570 748547766 586102449 344436880 587458929 184498687 128049815 23270078 468503224 104883829 422721712 637001421 560299099 191823503 817416119 973285624 898277271 13958793 925305080 396635898 359210879 713175093 828747547 636223117 768247522 355591473 257155876 662446250 140601369 101515903 944871670 532164489 55815627 3071372 767780948 604218728 364281445 489946712 146881225 86620388 918141207 780115663 74557936 644339042 476692571 362119945 570954719 242858194 293729832 249065293 61887500 67126490 698283452 233026786 247216255 823771362 714714623 108480057 897663850 152855827 791008222 189896950 15967944 477812307 47742427 78059696 802761505 729163966 4045532 602059804 401145076 207419580 773664635 792756630 60501815 655643086 943686829 675135530 649427570 101396842 312672815 880511187 357987296 399693789 250815450 747994860 586262346 308020293 450274607 222792487 589093929 21943608 442694286 461375075 569226800 832366023 272133867 343645078 122364828 152262205 645709208 240988116 129862092 468918156 360682277 716573356 41152517 106425738 487844233 70019015 143609411 388681699 487202582 377900858 11704608 647931446 940658683 169944980 943528456 720525784 445851267 797692989 545832902 294041132 827471223 718215265 356909682 18429727 558835138 666594325 18251327 699401011 251588124 479178195 315225493 520998301 271905825 623372705 408374564 974685413 30956739 876170598 815026925 679644774 669232677 573909212 76118966 631231032 874979495 16055948 47348605 616534671 576698946 266035513 62402493 990509423 54752117 268897706 888872469 195406976 282422262 69722920 917351094 346387627 553723561 195210296 351037149 45420740 258456625 860859480 198493524 238503146 278905806 230800676 438353978 540289815 36596723 12605284 30498021 689013500 467350511 508911120 424553548 13083729 269746009 697091714 929363030 808692489 143453936 824188724 388355725 289766663 64176235 971414051 749324862 975296449 911079136 535619528 221091175 994923136 871400912 759098813 716272458 886331422 156266628 894866733 988988222 368732147 157155432 388311611 7880420 697464113 909615709 255864609 570562451 619135406 31571616 871325445 208220631 677760851 407571475 368689348 643734685 798372022 456862942 627323882 565478738 3876077 307983647 975996592 274327162 416587123 281625838 447391875 498622919 705014081 987414186 721647120 665592612 188073928 797302971 362662158 346305733 566583724 892368897 775208 436820995 743122610 425339561 501900037 887497795 229368446 123491121 931484371 602117625 855284419 548754476 37741039 584727397 239090521 309016876 141619365 306001287 202203090 841141076 567251053 316164364 675061502 31558056 606399882 685553439 181533721 259811789 511386007 557645073 807380799 135668276 110756293 280112908 181798348 220067842 494044322 478392921 136940575 399824471 954610074 457884133 62569227 99661759 845133078 264539276 586182535 464991136 409718488 545572561 94804462 329986628 32969258 676944794 406159050 176638270 190803831 538699808 727399006 259168314 795982350 645122706 972773599 896799121 591192886 190689340 645543220 731905432 602361976 770500670 299175938 589076293 827112849 963024422 331804846 344437805 337916564 671475589 692347497 916102345 429713381 612813599 727658648 150907577 2759662 806535056 563831874 725500144 321440464 861836903 792910730 985435862 475680045 233045802 77418085 688248695 760941990 291183615 573643499 69434538 868745547 168550296 715850681 56248543 389091160 912030846 537000576 338770176 870504949 863758456 433418656 706095362 197050493 991820038 808243420 764604249 216367125 500257420 957568816 860426137 280160942 794262156 185195888 457933926 842249233 604609968 680860725 69853984 22843479 276407723 537857584 929200583 164015838 829955731 84669519 830789123 476579219 377964108 535050701 205317911 857217183 821604929 136767669 262783308 701843496 70780121 379633616 166796748 672440069 179274266 344868160 807294612 230483390 546824291 910176345 353384599 911205680 157699976 659044473 456794126 477531200 252007673 937577737 19474809 779133682 837576446 238441462 968869487 71388971 928381234 714164923 560383957 820648025 458851914 791639140 842722661 534927014 386908078 414839394 331959938 276445624 952371130 30751570 452210416 593508304 526172227 338147313 120574522 152100643 297635107 115798413 821648367 266688698 805621655 829898171 912304860 715012509 496616972 237265641 838629809 664733531 495876928 70141793 429595326 82680790 176136100 853662887 571164950 858369034 380152835 476555811 318803757 858547591 972900274 613763122 168700523 920415284 536540149 345968464 435547306 597828629 153987811 346452199 129750263 119299287 251943684 244305482 71323500 819237603 3956411 241895176 196635916 263569657 790914963 336444045 940522032 897633666 447309488 442533951 982073538 446591186 956539978 39990065 608411619 412104878 178714090 732391132 599131852 335738105 454884317 756810876 439439224 878662265 693260272 416122878 817185005 830436629 604561906 415953534 225328449 518842221 597478109 297767163 604535948 272913328 533924776 718541442 838959753 863211061 701273781 106844951 849450611 496011443 334997460 713608685 289667424 684288501 282663263 270943489 339854031 441708909 82892636 359727927 318295498 692414823 252606674 755304822 70973524 51666032 691218109 927157082 582039757 782389420 819311799 476978495 883931666 74183214 786275238 277204808 320366113 345319287 739677601 130911123 623788883 905636095 769508464 578145761 177231107 732468300 385680826 237224893 636023930 711882382 511330038 252610962 388159637 140159033 724216099 435723659 697270792 81924911 779308953 429051236 667648862 224526447 637143417 450313365 985875424 812757686 715843347 700775206 66312351 612317611 173202406 187391891 246586005 130497748 7185731 41641191 472054895 329680238 565215476 592993876 492370685 233422213 160674690 682280730 397829666 151660195 363821166 658326981 778524670 301683474 638642320 23211915 629642117 823894696 805364734 957023662 222175235 813167757 421443241 73103470 8702282 219267893 201672524 835245983 162900463 336688285 772007080 115737816 891280546 300021261 682150459 395241775 863413541 478689636 68053544 946268284 442428086 124539022 207029064 459006314 937684999 496791030 884679948 596052095 163193536 949738069 562552689 758801261 707997228 345264567 186410794 808310130 397218931 308121690 454181486 169836522 63694347 590131063 384497120 586648092 721819761 292606002 877147774 81687494 291630124 764223516 469833893 228749574 121291007 734691787 1525649 657502636 910879665 674792989 132118416 588904957 6322228 371235885 190564843 590261381 760117036 205210458 454932388 944853524 710278738 752119441 417478264 860167388 235936044 57193712 990052802 481061966 275762404 817293761 829394656 680490350 82626417 783063274 289746343 246308570 149355132 992227440 489207268 212784566 503832723 889178387 88628534 660071501 673036511 798881804 292999872 692268540 871820464 764197564 65412672 354184222 441748894 113161069 764934162 848509237 540941102 843377412 32565037 800452429 77674435 406829466 879717125 201765074 894296570 534847656 628379302 140140284 91713820 397173312 554058799 301830125 967514668 123912984 439773643 957656166 2044746 292563156 538089596 129720948 112768150 264773609 127423342 461159845 701822320 220867949 880468255 454043083 939854359 164051068 443074132 313748206 101703793 84002629 594546746 809297108 763370177 898558698 521344255 275461190 589463960 752154211 81889561 616919714 802858528 473222852 507887163 569349489 380138583 267314036 919474549 986275241 967900174 900173362 165708814 36700857 721231923 350973801 129057406 868769624 580952272 905528989 835333037 547815209 386860397 468566307 848010273 655795510 595890303 823587628 633179734 133787931 649544972 138929535 958416 726850099 272034445 344454112 256352442 686603401 368589486 314959598 316452693 312087762 986962267 686625257 115923593 136526518 543451236 929542724 32067072 656471390 779584969 299333125 895915119 736673302 137518120 941515015 500533771 998552717 390161871 30731959 861850468 47867229 251422633 1019355 247780606 12085582 880252347 941732512 426063601 568421199 252996424 981147097 380693812 676989542 977081515 262361268 705755457 588761036 760309141 934467738 764052158 694320417 973864356 777383773 290709661 424537957 972869881 594386149 300115401 833060330 65223976 936852896 531076097 861496522 351207308 301062900 676552474 257862965 129895721 866711080 434663633 961750957 553964222 507243641 119741332 859393490 922584457 802777291 524804256 790622520 415773706 414360237 328026398 803834553 156331397 223497100 422706079 54034666 164521976 443409993 184259476 785056121 78336293 837978971 33048522 632558158 596224470 475855390 545890897 619082988 64464712 484521183 122312904 591414761 803641007 87733960 861732243 86659289 404102011 248375964 366335561 113258877 376951634 11334475 23648212 905628183 986774646 624479889 800962893 588127156 953377011 221141840 759276263 419682532 898301552 439282790 720632464 54549549 333953481 545480930 988562921 933987311 607506388 212687033 236333667 831478507 422488349 886292714 313390686 259472034 882698194 703101440 861292278 571453222 636865018 349882300 285341391 45233904 688453257 486864938 305068283 431905124 957391615 201040484 700518174 444419299 316123173 559797189 264818538 82294520 32468419 302267885 375778210 388342622 196252959 645153107 145056721 171004703 394863568 682093377 378198744 542017437 454751208 364778113 382637693 397917642 352363225 174813561 160530435 545194306 257223556 447326671 306169594 758272939 476444806 121257904 49233056 193321506 362057927 104392470 972043572 923686546 905552007 162971464 657815857 13526427 524057744 761287061 745703526 376171503 452784701 526712316 864577924 874480195 641493424 234745310 349059886 952061519 880772734 243968272 464927135 322914590 555129174 455439658 865945631 689879734 947514082 210979993 953541350 790756198 682779046 471235376 195497429 392750396 323829494 774536405 332041107 105463084 179506949 655610410 22996841 821377143 390709080 244821312 602971876 157557111 625468603 879097238 260089877 222830556 312025334 514106101 616076912 888949161 738253825 472453131 357554562 222179259 512482398 557961106 422555878 419287973 883694559 521089064 401552723 910042254 772654718 161382781 303442645 330823394 711208331 436917679 221666249 479512778 239321953 842745875 843201618 224312604 414321325 173837251 395931855 541834451 343597292 914154474 872525108 522928266 916158629 977716337 905095215 572182895 721380234 507642202 959212797 78162084 770826171 802505857 685526878 844799550 783586466 791546065 373047567 23278568 620232964 697794632 259604126 400341019 901244832 677669171 596089846 185057751 711707012 183009090 447872672 39282177 580282511 450135675 752800913 712067096 824764258 754401990 952344566 705824700 692169014 740230362 501326650 17740946 592338570 50056755 215449547 601952016 588126052 189465811 832174436 205224103 983190807 655768286 662126554 267582725 130583898 564215986 682570026 295593960 308605800 852673023 455715880 803194921 817892305 855959857 263385197 364799558 854217129 706910753 453673938 728881609 937713724 769496887 540605033 99309358 382254373 480113096 202651810 548170076 779444874 1212261 743294776 730819216 714363738 483328277 110060907 994161464 754264831 487022752 952198181 863857389 184305014 834685258 215105580 563540237 309028049 424045010 193211963 29623576 600520288 114683409 830469012 268878100 31758669 138563935 152831701 475586448 314624724 75246178 693489592 795576136 346316781 579058352 955051732 966531327 158487919 419474309 340526449 967506584 510196228 867359337 683602896 718891896 321525648 852307969 174546180 48508524 335823014 514795764 264549326 686343379 26627551 562360020 977644304 134045150 622115506 543322859 844154448 895877800 390901485 804893419 469994727 89224629 418431087 516918885 553645501 364708941 816824658 643545785 973665517 558621957 848842079 10647749 7484844 483389623 205931974 525536198 945622611 536384146 58707686 174164936 201752234 259551702 5643038 808343165 470146633 172089191 829426508 88574018 19281155 17842102 90514377 741664481 711866847 799537739 249999817 59501957 857387647 866649186 815587269 763580310 424019703 506007764 56303820 227591012 594764528 564717274 160901465 627230812 163546250 651155057 362511907 268586584 933651987 976192665 130222749 677478690 786558606 768575544 500453405 78719375 998846749 430501313 651613340 957401011 375925281 305165476 179571827 767906618 228157115 493360715 929746106 87491943 765040467 492572663 581260550 497586639 550849189 707616045 143161410 553552583 893965850 787383763 786310178 432018237 878009179 136433851 60714941 721620434 953745299 989372748 74022255 97475415 92854157 615702050 670668113 536302501 477678831 17779150 385485814 109541895 289748450 335391920 150683227 591376680 852702018 763523337 658650039 844323099 676540556 19318782 435476106 409165145 239202207 857084784 591828229 359429428 57958162 804401732 434191252 44852549 645964981 391851118 132117595 324354668 358689492 853943664 414949365 609315827 510882877 622079516 889210942 623528751 298755126 711554137 714957740 940301737 28258332 406371298 345520647 869313946 995877992 226485101 108788227 897307540 983977150 124757649 121776388 665433090 41919906 597789435 44635826 392565081 205667828 645272174 763066585 197416900 242765286 224025745 986125452 713102838 948986415 821755386 397405493 203834845 800658324 58625668 16910196 134234145 152450623 12633997 455725432 934266318 782290455 216828506 571073512 599413787 27638622 421018227 359582756 792566064 396567698 299641895 125084542 940338650 718093962 769082610 518077480 44834323 72607159 126398370 761050439 959261290 179498845 782563451 630951881 682475256 174347934 994340471 883953271 828769355 978776120 851868157 960356768 601183653 933444745 800223021 399191821 184688767 408831502 798471216 673334885 538220321 308096642 299709707 897072786 593875152 691197057 179902296 794386306 950678232 388212198 134427968 835315919 829835335 851182568 12775642 723955353 905998696 329298884 303674617 355794245 928342651 139309408 246389777 160732476 435025410 309023387 434771342 759929304 387719772 846636915 563597907 805772008 912944090 468261446 460266215 994012146 60721150 885937368 397802731 776620177 240405817 992337577 433748407 765690490 956295636 379981648 376639831 384853743 567187603 289317900 766588996 543014579 925340187 890482440 683570214 690973356 68707280 921916795 899635651 919586677 286689839 682356534 923695768 699121882 259596495 153261508 97887756 135620280 261126019 643416589 81901795 657289603 819876224 227530272 672840355 776968041 146061217 250375448 17365550 250554201 800317925 620070628 481154727 825180810 514121658 801635104 208284762 564396146 945276206 779334967 141780384 395741441 680030546 687150676 494392623 105378469 309372590 334040554 860416270 724346375 216656514 818470567 834216954 236231133 586135792 107374905 439870958 316690790 762995120 354277983 238122300 807970581 715260499 367202295 414921862 160796166 50127320 930160836 644576851 488661466 655306336 33858276 265509229 44299827 22138197 75241192 728018628 602467709 700453993 706368248 566948876 311932085 489168122 844843793 105306172 918201034 267526760 457740015 689601143 950621003 299606766 996412945 128988175 275899216 879277918 11490964 486299806 926059046 804160128 480105815 379400782 335918521 624589734 576619931 979221543 618758271 537474261 776456201 298076388 786734541 261830993 569410440 293544919 658898390 876582191 830265675 420431732 143327870 265657432 779393134 672433028 215547321 846451278 339046473 608974804 306430782 284011664 259419259 100175386 810045597 932306697 243585956 495604252 68732843 808370360 532660842 106411573 349519577 645290277 467396266 944885378 497535195 202150532 16115141 382675996 160353238 536649800 891459150 9921902 24380330 35325969 854917250 815628431 953072812 128381284 757423561 242303875 196489451 411312118 983227466 812893515 408413287 174930002 451886523 944887895 700511280 763742357 699568599 496176343 556513422 242620131 102780273 529417911 16164556 255013704 85531895 532705896 946422538 216808474 752378574 361427498 75803326 433902949 928718791 273390597 599247733 598829265 337753673 455645097 152067819 41350268 350145123 583479454 701865725 322199755 844518165 741977412 173630970 717275454 961415063 74850108 825131343 756918664 359827336 437715024 345346253 521381155 875600827 836340270 726134616 294547541 197533892 424863145 740980473 808687194 320704986 931967571 683595544 158301828 574820471 728601264 129335497 799779504 780831191 169532482 951547774 114179711 126155700 575290977 423213283 518600771 480032211 318407797 640028261 569920771 218630604 175040637 71316710 477820630 665769221 202939478 757958705 379399705 699676071 436231329 993027807 384164685 122926535 139731923 590780253 527762108 649583248 373029106 503479670 629985446 352077941 125699261 292356972 964418699 306462218 787416594 756482393 76805327 129895454 644503026 437330691 438878676 462980907 850596287 655457365 522005091 924209154 277567039 262337081 737712595 176101175 387238140 464418695 27610248 913305517 857142319 681541580 955621950 249852187 198345445 872199150 435370378 371596295 956838478 172287078 202252950 355631047 784189163 275902712 984602482 964362441 29330682 941391654 544777414 927897413 530673755 291943515 701054913 505316290 3105448 645672974 44756059 641386636 874432751 906029812 668027573 762791916 545617719 546482163 813907646 555490979 100361809 323236748 849733825 42947003 725704055 745073799 909825568 966429874 109116816 375772739 859309332 800145161 913682106 917631793 785242628 763388444 168158369 705752780 609513904 310914927 943698710 143108745 668383110 900206654 116362630 89402017 432648399 590146260 556794951 282624480 795757713 149784814 589561834 703262883 981481098 444329357 454073458 618902533 508247527 553652782 291110102 886289455 525448081 388671486 951144466 557987738 470654424 402454094 109573215 913754908 513231131 416423748 714523160 842979778 657453193 498394594 6503704 490885831 176295858 415872584 227566245 427932897 965036829 71597253 784825406 98354234 586069463 24659729 31788754 708248242 533764785 441589144 987921643 671449852 707629094 766141102 680201400 854244575 649277874 909702133 568276699 289974217 692294388 324801749 30446099 908218331 373589015 649058070 447687264 522327821 754778528 953344375 53649074 448774077 854396533 414472550 93572480 136746344 824899413 230239453 350243829 130003244 10523860 72933011 983832906 897326991 106856327 93192748 836739200 650824716 926102813 307007240 406805015 115479705 144789575 276833462 808542341 44116502 995977246 468834888 591753517 311598796 143068608 573194918 923294644 979934400 887209665 449340052 180645601 694534189 448834241 930955906 758545 277059329 969876135 790167710 619435049 31431943 233965582 429426806 403137908 853953846 957748727 255800234 409252044 692574621 855126736 718164464 281938705 194308006 284505200 573607062 451502730 246301659 216500657 858487748 44838799 670345811 764562204 80192945 464168955 473385978 450298056 796584077 537833318 491456386 440469904 188022086 189565296 377388316 234053208 40260943 727566164 288889532 721108337 968870962 477448275 760629093 40259346 11272507 701723603 536590623 736268996 894417101 524399674 63660675 998253323 694060027 688492898 981539942 432154973 702356 553122460 30893626 14810142 889074945 155775036 110055770 663085857 973124480 373300858 498911981 139230497 529131865 659185623 491802447 520543145 514790943 863092373 29371141 448247671 90717960 904825642 677372268 673492597 939303440 924888519 898999058 831095653 293092741 229577502 204647908 290239847 345265213 796500696 373580402 117358182 782984220 410387928 945398382 146288938 981714093 492796994 764253600 641898644 436428252 402367879 47449781 826786001 633167910 653839408 4029794 415301767 122885837 730902248 365796570 312431925 101668007 395725534 644575840 878486027 137115153 526603022 934944741 500811551 449850766 914075230 914339769 327622109 3079019 287709286 595945990 838067110 848746234 340594903 849400943 604556787 476649293 126045436 333140388 480952065 266238354 747170785 232243685 945063134 743976792 31122451 783369394 273831055 345410603 324055542 21785279 382540148 338179853 334188682 534968780 714390204 328835785 176364285 105351173 754895647 598747785 793330168 636992492 667071634 899816700 872139031 241782866 274783995 581374874 334561369 548530498 376465475 342187288 450930782 903732652 360811465 879081909 508828877 883254960 869824245 221844095 281464767 671058560 254229820 713725977 123472733 2435885 964370945 460741615 917474654 818443589 24525007 351816652 381499072 905500020 999483248 711703216 67376752 146816988 5879086 853101058 984288797 791522149 78510194 240209574 985661414 316367870 194970399 684261044 467308185 470937796 338247495 692391692 428563772 807433038 496578551 870499461 272804579 223529338 274512184 132540716 946432306 46355062 955815757 642441630 212721117 485663315 225609028 313516618 262170313 161704276 458415383 440215129 127513118 808787740 723438179 618101598 906845974 346414209 38868291 175140197 68987966 962764989 631705094 708403967 149502803 814899505 444049412 551219291 366247179 969617271 940857078 683476114 590392619 646893018 743827026 683185815 452817800 344717990 889983860 683532609 501190604 539426797 736447605 583387804 277629313 74481405 425586810 497343841 474768517 450770171 4217070 481837896 180966694 222469580 377908898 583672290 749798713 330515500 847868121 149141179 267117725 161635536 307657893 340355814 522607173 339152334 352723116 982939027 525034797 95371587 449074297 906388041 451160790 20586012 930824780 120955573 49288840 301711736 254405257 366305952 363071475 957744226 916036041 690210694 358866893 311604152 774273525 802525635 704847740 554002324 280795021 289803193 700751766 390616149 846706818 786335333 51779923 411705417 634109863 291705867 718436790 65452144 181847303 145130486 179539424 423263504 860973047 241063265 727350743 51285900 84917448 563279354 486117187 477072937 449010068 355325591 745813445 410000679 636757623 598622958 990265744 924443199 532321783 877167169 822388993 907089706 917247232 708033621 885244513 228080829 56958395 436208729 72533065 207741523 125237424 264403440 211060105 303853523 630031190 199465673 362965591 702322974 366733124 484636317 35678957 289143652 744966250 745078278 674122391 412112724 678487903 948811424 223555155 979027082 951254811 617495645 319428693 409313070 305465096 786182456 443760131 865675404 718254768 497652777 931213578 536002537 437739610 439072736 840173515 600160059 444063643 895734040 299119349 764408666 929372224 427579747 133553375 454632713 661581871 860775632 1888247 196230162 63646655 993740892 393113658 143280253 199143345 314366215 601236714 269341449 469467697 172399133 483628668 668955700 506565983 498373365 158635694 502821152 632945929 25805012 263162660 268360139 391654863 618984627 670001981 393788054 387779949 487354758 693819346 578021271 776246093 253519887 215456579 828440025 273893302 701542908 900235366 781429078 934969538 988716907 426737817 371081365 252797527 660002754 591543104 956027952 958602872 339034921 900807115 387543662 500817467 914476569 123112399 702241568 994006498 325572245 860284371 699100351 603332869 672211503 968525241 434136795 421454318 766352603 772054502 604361147 243918471 229957551 999898721 448078440 647021896 11141699 162078011 817796410 69456809 41193576 297932889 561730594 630968353 634336499 112429512 901703860 92718879 788803469 706661348 40509998 395839136 79197364 817900728 799453123 57522754 246294160 946006148 658337000 316707393 285394335 68066342 613725751 759411396 580912921 573245533 542651854 193362814 351847089 927520766 772998369 793648217 78529472 906448742 883445041 456844685 361323785 532627508 104580005 440621049 943746803 726428907 602833527 432342749 392891396 196693929 568022156 746998558 220077482 244313791 537098852 348682174 868044781 185252442 28339176 765493210 942764714 424387749 394156015 827608652 796181694 851633419 940302018 633344 954884872 669408867 752523548 976321115 65511599 400930999 290097237 620901993 771492589 228877601 759566996 830303741 408062439 578346189 564764812 303922150 978201442 738249510 952896774 289905558 823811044 119107944 370089643 363315554 695529801 559549110 267852266 926407683 872458730 693321392 712421855 310772920 489723743 878543006 600089539 677005089 778050953 891022620 612136214 617965225 644024832 155828811 701960615 298586948 448165927 413173632 521306413 240599656 114991636 693981401 736853495 58702373 193468435 686809949 683663851 615701786 931947203 766736901 149741068 637466688 417538239 125651109 669943469 822990189 34297570 769730885 571703434 701733181 293435060 498301951 142192624 542337171 120607440 512461415 484259300 370763947 963265308 967376157 605047435 551444113 976721740 985269340 543279506 306960176 396528086 86928261 4934837 524076219 786499953 277293182 550973010 619169685 998840212 110499860 604593435 921959441 472312658 230685192 83820284 356468004 698552797 272725958 81739396 200629655 997859321 421203592 78787684 333248054 139107682 173281260 751006919 727596858 757335843 155706153 141135772 470041813 842311140 140641962 729940719 936858850 922976234 678064115 816939207 704054288 404243628 281092724 327365832 697384865 495400302 601359402 603419980 896879728 280917033 50445444 488725389 724220870 908804329 743711872 358406726 753553310 235343982 578959977 143634052 930203945 642111037 345304604 369706770 890276877 594080203 497971338 581612540 857375911 626828807 810818981 441416608 325470879 493628358 125194116 784673794 718467143 459860565 798214175 941576008 527677731 130063116 502255006 710610093 585396641 560751945 40467791 943642033 582376483 264110693 530260286 213713140 572158911 335886259 288804816 300672201 403103248 370635955 443269843 152574979 985826937 436067506 909302418 309365479 220488733 921506629 604650352 383229148 739192825 857026088 374808922 688060719 634757748 194048268 950715674 216157652 656905308 749268180 984911341 501044710 281559171 502755015 76394046 954079697 183661425 315589539 252568947 383105346 445693310 2924816 444449909 790341284 758148932 917772838 266094402 162464730 869487398 365795776 452064468 568120973 435529769 121419195 570224507 89104873 526432035 481537729 119336937 487773864 117513349 817162228 804874540 816058887 236966441 979559 145476737 205714612 33529052 609555412 634263773 193156386 151466150 520705677 742735583 676543584 409079678 867141489 292765187 660945150 775974170 592825119 456515542 805438673 319921673 527329671 103658986 864105258 997160090 988768623 870433060 347565479 4333027 658889307 779094520 840727292 744178954 791815215 25231664 171404340 804304683 760300705 406987823 634920792 906151688 421693331 546950071 19632312 355919188 273732458 569089169 920219292 495393820 275711890 118005035 570498309 669132702 68567208 663341535 592362925 596678508 52442842 363724517 10309098 574610225 310280760 375514310 508474264 906227099 458358687 362416471 349704249 662175499 529344052 42487501 189419396 388341494 997274006 586140747 704352653 633352153 948863012 221264983 162406219 241674958 938086459 905814550 813628695 754664447 16667000 248230175 172800629 47716541 907550879 247833455 287650116 332780668 79235683 684768722 190818060 610538857 395658181 104347563 516065239 199317123 163817904 29735657 498338883 416790990 315162827 894360330 569534621 494850375 904734310 735435637 286777086 3597945 841043533 516335092 7633489 680570290 472321045 397132004 932453148 393811359 556701330 568799377 721817782 806659605 367614437 203836208 899659027 428752356 980246831 827889506 75063596 159537893 473004968 752097909 43729711 406444276 294877132 107567655 943201052 716979555 415388708 754985798 572563740 774869897 496092095 670287979 655192345 837622918 190046493 684176010 809850585 24067136 947865162 432309019 618554680 40906876 593179581 176661939 909440083 420213348 439514124 211630825 886430967 102411011 120725694 531730949 427106518 337668809 451208289 408964559 337458706 917433744 977063487 954513889 146441004 336797910 577782711 613017381 317764813 541961146 30950464 642546278 637861768 502159234 995769290 596004078 519135841 304974829 716521586 499136115 271944854 376610418 515747618 341614059 407072293 476442703 450514025 7849494 609944250 834877764 254603409 314298948 345222668 852826813 495878311 929933398 558242750 141189548 345057536 712717305 856640143 577633730 599493078 859086781 719991332 395346930 85363164 397729803 740034503 128024401 346216023 42915516 613041336 972919772 605200212 89856119 263924448 763692974 549790705 464812264 68973843 101207678 538793661 814664533 290380203 802572108 473715998 149329035 324155128 169004652 610803570 673371343 983431263 473469126 945898238 702822440 171042058 680270 645343833 651474384 23813898 398125618 802571340 187215898 201273813 700091298 843372653 7943391 669305213 863939879 327836992 380592948 833084992 926206517 366898529 168630150 356740693 406666211 552703812 798292232 572501505 548680870 483051359 868808313 92957290 967170899 93308512 205482870 349033939 668695513 452217096 928029904 414615592 264211875 27953350 538387973 534397693 504998385 135467394 987960037 25077774 453714930 849166260 143826637 39748073 672418054 502982102 836852448 593314865 653600152 223238270 574597310 548794123 463535877 897948780 160530037 926917713 614848240 321940133 71103987 722703157 72481814 586167249 318764164 172974215 490928954 890643801 285151571 520876703 91951061 362630779 377918559 33887340 373071359 800466821 622679281 44185595 128531537 619044355 506908271 798244142 408687804 520170319 315285689 874295390 431416797 525244519 933307733 541438289 686563143 2568441 629966117 930894022 214283178 655224726 114185548 18400649 197235056 92497853 188964758 144301793 164578969 142084400 271285115 704116980 572023528 534319217 152285643 956207570 268018653 291497840 516445351 463193590 33976703 837296969 540302183 231142008 115379956 690482455 590514286 766113317 729779990 247477870 753265742 300778421 109983748 7419088 293026282 413096817 208637285 46287417 58012969 872814260 219533683 116832500 307990991 999421718 29427259 964753823 559074226 325103630 797228884 105266775 749805942 649495651 243649027 876005591 87677725 665500816 160816179 651312039 154416970 420875848 417999023 893300415 40807594 14671636 229657760 678293384 331840830 293772341 742798024 61854585 978753258 226109325 598068522 252095640 303610912 137892424 486413049 165556181 28548652 474276308 314401873 605466094 378493625 383977377 980997317 553521850 180275993 531516538 766025482 823105017 208309777 459372399 559404949 559870577 799110656 114922850 644224088 794792833 855551925 859906165 239723503 42771564 720859155 934802638 189285576 465668782 349837012 609090964 159461624 86219234 959826877 465010100 51296309 975512981 252356195 495333086 472262476 634377413 97070146 900708167 952691559 743572755 179733315 742270009 966500697 825800370 446552428 321640964 972988602 903279393 398789436 181403495 73892794 337520054 794724306 750987038 68348787 360734518 717938869 74002873 203474949 865222934 365714550 284393944 299865865 779154855 989603791 396314985 830899692 999077536 222442502 64115091 881697246 445093108 300632510 2715964 758570884 575475433 807859056 433789438 905360347 950079344 72749346 152593752 293768497 596482494 118755888 665943974 110698282 71218835 773599380 153874770 980510623 247256433 499624001 15413663 5866214 913038906 691424042 785654272 731392390 62719158 169810394 423821246 628194237 872854640 59852368 485904409 935727877 849952749 444634656 134489397 639701429 916328356 57223329 578472226 915221977 957053373 294346753 424754022 871381335 686217800 954955488 28386565 387912616 470637535 689735160 767907863 829305543 330272304 771212446 786928533 756194973 190706103 675254082 249883491 116953705 616304798 488798021 210331446 841267024 944293714 351449605 869666207 302639688 478487497 942658508 591720392 191622717 979209199 248368782 111869890 282582817 229105303 800118885 55585844 25281143 393516184 562326324 998043328 416591561 664875942 169894862 108013072 990364131 150078721 34897987 901731996 427031719 652062838 472596536 74600646 868870831 996315920 359999825 651789217 771338216 916608829 206316465 345643470 466076998 530335981 770116120 141419875 981911511 696151673 784852066 124531696 393628553 299555592 168433579 77450923 58243779 11916017 855863734 981012450 358629361 799800431 892625455 402569218 394125423 520809004 874754558 689568800 133103902 187429368 278005830 163306538 168516689 748028849 106610047 858153947 802611889 607230962 770274441 368938227 367076021 656309677 246787987 695799540 900583321 89209394 314715824 354905523 608194435 401938046 847535614 118234423 764960217 404203504 364323949 803594382 446675905 408252773 594504302 866874198 986750109 279752236 938264549 595926973 546058723 865666668 208591401 309070924 372807077 17366335 283110087 24771037 232094967 121079641 859930973 761962480 654187952 749814593 702544643 829654083 35695415 341911230 229498247 939528279 523196321 884439077 188937897 38491741 146130473 705246171 455065499 692653353 396848395 508701317 14147605 157854082 608774149 157217411 465058710 219360180 1808978 575733 767190926 57170183 922297537 670413007 800230275 738086669 97696404 870327120 958677767 262031010 640820743 917910860 704866085 917693531 457388608 91008373 306810956 249164592 141410053 433557903 349156831 346454331 787070372 638503867 731736236 241230211 342605969 742070307 379232255 535927828 317741378 810090836 476306514 677778680 246544545 881553613 980937882 952674169 391378456 676952231 185591436 540328372 877073828 795640316 247497549 953839207 583222980 511578907 178089330 982722434 61327106 635840441 496706277 255579545 52408235 432187992 283833453 922511389 860817330 34718216 657727985 978802225 590307714 241598436 371860206 348602046 940359628 721032256 777310283 133143342 334836393 396585734 161787043 186188934 981474117 272251940 721954306 841678831 946027765 587811471 80477428 516461072 469530623 134702586 6752823 920980607 653936070 931663100 811768867 948720422 491279332 537154402 69488122 349609527 542633971 731410671 462022469 320552090 351048887 462329973 644817780 657111180 12262832 531390484 505479762 45904671 136306152 76676665 646385128 51673696 595481131 665281638 597004441 43827401 14107338 364808412 981493725 445968855 41874418 178455018 6329279 487760987 215415666 761844808 668044499 66393781 290654474 186455363 446650455 89850088 690698129 750596688 41979692 835670050 304273666 554828653 865900922 854202072 876051271 11157405 936993476 52118136 723458304 749917346 75442943 691453474 852923979 975967069 874666895 767082367 490992174 641510324 636082686 697822166 995356841 392196531 873908107 199456543 711553802 42810188 394544842 168537677 99609272 453890201 976089301 404941895 598552412 603488442 103305433 573398927 702102619 832144447 102853630 472669371 651269061 365610175 593453666 919991231 82680326 488640865 304993378 842587796 705888224 311583071 770573946 13805862 399220290 701285795 477135791 901178399 730315424 639716819 107985441 903627523 696312486 553686764 609957665 968590275 718314755 179101102 238627652 162638041 584590673 267161996 273648527 671626020 794751031 402926338 801855709 458228023 24251715 246415623 352301369 863807770 90926784 877726766 551123971 485334363 884115972 457272894 766306403 668817687 3442151 331063729 879494129 790219851 57231717 939891608 848026028 161332789 459060400 806355295 289532015 365614662 561073994 614772111 756248443 983030575 78972115 124475607 913732177 978767929 294422402 899609351 673609784 489279989 821521618 68737089 429382844 711400425 715421191 163439477 546024267 574682091 302698006 781608841 71648295 423424092 658039495 206174370 917639025 75149282 149751114 992129345 348661317 475444674 802620362 958965728 992196512 156574353 178039912 796306742 547537396 790532955 762752390 814674855 190928436 245133392 364657562 983008904 257945529 130853589 481409966 582574946 746664196 154242720 574058374 589618700 145594347 713936981 352971771 144319743 759117196 148443475 797463711 93973713 536192276 824251271 70136690 737892744 604150060 766018399 958441202 922934535 412658371 83150219 292886813 699732768 612241508 294362678 974096891 446133332 362509901 495726372 984634437 304829046 522817211 653741650 381996113 511902923 571409391 52306025 23217480 600087296 343231859 391703722 258777947 885370260 128085761 390149744 545405198 290190790 585504583 246332098 461675114 124144000 752641347 828204954 71557863 842679649 208340124 900481610 969321664 175233081 850310430 191789729 365702830 754220229 396313496 329517872 515196786 768610474 183634686 281203757 612295490 978812838 879154644 560997048 414943375 420588006 28478470 32795559 485770160 682732194 40276131 976074529 674003172 781541604 14627802 819737521 615114194 756444277 152097814 7874971 156919236 275808751 541263053 549096600 797467672 997439771 708672568 311528771 684769599 527043481 145553684 526374140 180912212 334544361 357510361 752756955 426967428 170026359 767189572 92680593 293855561 302898282 889729641 622747649 953379565 566660360 307021202 129510241 323745584 750188152 15908769 996400252 521247294 266309619 218719768 100276849 530933957 640543226 317011593 580098227 530106511 169557694 297699764 494507261 583192914 479288430 507585848 472664279 305318247 283026227 460521314 577364076 588953220 106874270 355922084 15966301 522978992 199314976 102227866 310717037 443387327 632259124 469737640 540039300 148294849 396018126 912148522 933726291 443161942 347653950 826308063 947891232 161521828 814848801 467027362 520855234 62641223 653380085 639539609 598869260 710448800 341681228 517733114 7476841 426113715 514469133 279956404 772080052 901143116 937807325 358447735 518728446 197679482 254267175 426481069 130907712 830591965 360336000 279391759 428585648 542595179 46861517 337863021 666503808 446242714 605879303 207541351 887409038 253809971 692555208 434423716 560778785 296696288 421443362 530346471 213112420 624027771 45990088 893474216 558977932 518696801 451756218 636018209 777428431 996782539 883574267 345970167 979871515 392677278 703537343 663681605 26205352 157576879 146916433 234687774 943567677 764332229 141937758 991466728 225282729 945815237 61037729 771042901 366448704 331128249 152246172 361103207 343958954 294962093 998988106 556354025 309902925 133494868 106111881 510061874 623380249 280043720 169845585 907379977 440540709 841544363 339629096 700212195 784766678 246280266 449261729 267508189 397529268 659938441 633150054 230249886 823526621 506506551 833789173 591580572 170343869 531394944 484951366 927751821 572596651 699945380 551844296 694369149 88939601 908218229 265133646 609517234 316076136 110484838 720023138 609438145 566108695 400950016 556531682 207601238 59553803 786745816 197683587 901664204 569244575 951818996 528854811 308479991 298539874 48945605 704506879 858845817 705731155 876306524 38579419 84766356 979247684 934953497 642427858 278664790 944446614 613401656 827516246 440782920 137013601 491343293 384918639 474307854 123193719 9035404 597457480 460559498 354472382 556287744 452506466 65617254 812342170 534423681 523415092 382868569 868410223 516376314 860335430 536171864 219337901 980045901 150566312 579802557 239378867 619179046 408155888 962819002 543817469 188489096 608902346 701560133 884160787 121161321 729482005 948605691 668699596 129290517 11523806 622720595 647414348 893820289 722114020 263252793 908575239 536226574 577904864 910988455 100448104 952221717 264363636 5790215 368229908 317960651 379313511 657798855 846409606 335414100 37839455 855338276 114413829 543933974 882614185 752105766 416047715 137744537 172580556 621838698 642068023 497199299 356927334 370868437 76607259 304321840 118726251 970004999 285362473 559766700 23034188 913556946 424025927 940410788 352451519 154104653 572237814 714715321 363984855 479480251 474322301 692276005 817584656 894754872 452489686 807461632 330887291 986346560 116398869 254116637 113254868 799628706 7803243 636808691 215735191 310031078 256071379 706929943 109650762 467674633 492765466 343003675 692623655 454332579 944407749 250139595 832829175 369721365 23375956 930121757 369195077 134279102 869471641 618192127 853964179 755534675 544000954 983891197 307928713 862857716 920986089 653849674 499325423 33547405 985798871 53310700 252792489 115117959 784890183 130568608 604836332 641474196 410985642 796382979 366350833 264657281 649694179 764764261 798939748 440026452 981039633 653974920 179699218 751496361 741701700 916077055 376526405 375696705 922502494 178709287 609255040 391887941 177030692 934755509 762411995 593085066 155707419 486994945 482013671 756009281 925689936 887341435 668178527 44579241 858259238 28707160 737140634 224536857 837923628 825622853 203099752 595591430 48612002 463737557 812499034 194186655 440205844 407556061 109670384 655211193 841878101 215948217 472010131 631353244 111508755 875848819 921807160 744383032 334125391 726969525 752883216 263196329 544310514 10521680 288924689 896095816 94346364 324204049 514621188 533535312 582016079 397134435 868709385 766926201 816883254 505740197 405255152 427859814 143070300 544966698 205709276 317100686 168057962 347598880 344222093 260361596 682991282 883092056 1054989 751048873 180814043 915912538 676126924 262656725 451615302 879176877 521870431 976362346 223374065 577295122 37600515 607149393 519467020 924914172 504775379 264020355 236359084 557597937 812820692 726161408 990277872 242662330 768157118 839456425 537794084 660026153 742024185 196724281 511093185 368820605 864182388 843791393 874220420 649173495 229019896 252567961 392166658 854868562 551366303 504214042 283633850 650255743 341832533 652814678 355954620 408973300 879597942 738415706 485500615 521332510 270703992 240491380 572181532 160389688 250572331 979921771 693601149 388390432 746242879 148330562 94204803 959950174 459713275 709794674 332426095 609478744 857810207 797373629 371525654 243824962 768788452 752862848 1874314 105304174 823722138 426334720 869891749 251804675 358174380 405209121 702743490 165164613 760044494 9021675 593000374 469379826 809902309 938375642 978090910 787349096 148981127 998964130 398008846 857269451 130945207 364959015 189158992 822333786 802357890 791820460 383562651 607332817 262359367 676357209 361987645 852381456 573821596 380325463 585503806 803974743 39267741 523846002 264903694 381243055 951813950 235002870 234688280 854594528 137340381 466303016 359750762 399374723 764705281 228454099 57270582 469791022 618959440 62852676 496703758 416073045 714947914 600253760 282677684 652727085 193581682 724615877 177672387 897089822 559982187 807447867 539071626 745513764 252224639 477890620 291691496 306250309 640563516 849590353 720976310 975002616 924417921 300203365 521324705 267902337 244428997 34858381 614779044 949071454 162922027 521479206 801514755 220042887 549166296 787801145 622669579 861051226 630975120 704141295 695881792 345224402 918564566 907351014 924654824 420400507 529425392 581079556 66441565 210003710 634815025 529944158 622058092 399590111 374462397 647680501 391817644 379518189 23525099 433843464 943867430 506332250 69678356 143044549 752554238 589889149 438909801 369616943 785651094 948095364 576663670 343071569 973967343 445888169 374015360 309834685 983311819 247307281 325555890 164755689 548521108 262900321 653797244 12846291 536125613 425106192 291512006 918590567 543814594 960822812 677093018 523176656 194644832 249145553 427140917 210280984 690514240 204428531 283755986 968424439 15330707 223702864 999964429 2950888 755924676 495498994 810606722 393428581 100342175 849791207 72250256 171927524 868942537 256880112 85189792 322726281 872053295 620855860 691919533 894904247 852535776 779208869 726317906 745076252 954177143 686552385 195337068 901934954 131270811 116478750 138123986 379150648 752031017 983757178 159196343 602356619 117001190 283125841 323447755 907314480 727970943 240602063 811703339 68360322 595541178 819475383 926680499 933954048 463389531 416554661 70698014 534500607 126474705 600561274 739908442 808125089 357616678 410033346 175738206 990661687 637900204 269910923 644077251 873897513 250034368 586093094 824053135 895471011 520297253 993015968 537182229 241349028 542014472 914397370 76545325 15652947 821633890 571967510 839274484 251692661 906490525 619208033 302219970 854675503 293060356 667235774 973222610 264113872 483982055 842266800 300675344 54282165 289861346 429613381 369316145 863353118 459173564 953569595 531952281 140644343 17259505 343297636 39106548 747921193 832002181 520843319 697457500 227729536 845798328 567395377 288974222 344977303 158446911 541013785 77221095 359950052 837895615 57674639 786391656 941377837 549066645 704700381 379850529 62914527 328330439 313726616 457187671 848626299 779605535 210786296 374219385 381229910 722581259 843507221 881023424 147566990 848600804 877910626 496617652 159515616 898279051 868413788 930922775 706697232 625304629 761819720 266359111 228497384 718388279 722624752 316567420 801017920 684055422 828220308 21384430 336759861 79758228 553518637 244221644 632920857 159344531 709869999 79213218 329584964 590730572 808867507 661150239 913701971 671484284 799504843 793671433 310838000 301326878 253948348 877416297 380210653 766283853 184427144 704747187 496035221 338129304 936508895 296160711 301400668 187715610 169042484 236922579 119677073 387149741 492833340 957414800 449195509 674676615 962930000 696115971 173457420 711732674 61794966 37311271 187034002 454145032 432108558 944895750 846633540 920193286 807764012 498764854 863399530 94154205 739382205 823471303 689850320 408110313 397253668 76160198 807544605 327493024 945143635 448257281 488988907 103493955 603205875 271170271 622852535 191727829 801636801 225040080 678770993 465667824 986552953 945457616 926711610 2906088 878615510 674226120 3326306 82291558 298744963 507217229 118629033 28881414 482825019 138797003 296157873 740656241 828300063 566375685 866618405 570287437 939006931 978779840 82250076 748669264 186201328 723312951 143460052 135527902 351546525 650249662 377557118 217549247 42131843 887291267 711553776 923764091 196851886 310418311 157707941 497732171 466888889 254872217 29325131 144136263 271291236 455704352 264200358 656113828 561298553 591629439 709357615 401026601 271160799 722128107 534467444 999784967 529217209 243143805 181395805 754453251 448992417 712692777 755178736 129382433 795776567 633465591 338149698 46090694 253255920 225594582 565538763 327867971 953098936 381657288 818207015 341145757 173044455 239732394 463781190 44431286 837333139 401572805 787224469 954372125 187736930 820386460 260078715 673490750 532947113 231484617 935943979 839543158 133559641 26810688 292697674 331346366 497651113 387711536 100808621 95769265 197519541 911809906 709165879 80448359 751345986 539058798 235837353 429462018 523582210 655817203 58983219 502363102 212923625 364747763 843432112 935352245 395436550 13918030 475507973 148944627 663420247 521260814 22635648 844441215 802387050 507695859 167800920 583944573 906743209 652250621 874902154 95765992 785707002 546723689 320201141 213394824 161746714 226782878 599421110 194115139 331527411 218813673 339673366 863434787 990962028 57482021 178651167 116386551 763201641 344080047 262815402 834712218 191542007 699233629 398580404 368356657 438343836 82048261 93578637 820543958 960505529 892340576 526967410 372007492 256391953 251209837 288979005 879970116 63343010 180089997 342397674 555029148 211351601 427836180 970112928 302273032 589610639 444536495 732370634 180033284 655630531 236240719 948437124 961288703 98767528 427829906 458530617 662295719 542019430 399353254 208080244 246226880 62303684 418759733 864765517 766302890 82502294 331207061 715992373 495311054 678032395 805373498 293605283 923092834 510615299 624426188 55026169 976555822 950955973 511862740 779983903 851177736 797376754 435617591 132381606 415545682 751777023 888628566 546280499 76366825 862527056 554236768 434551951 340181915 56528123 455272782 772316719 113535663 579477764 303623490 948331759 559829337 107060489 839030897 918509451 837200400 16865220 766511213 850457122 346232787 145515871 437150168 117247212 386092263 519399191 926429706 783932039 499287232 91854658 714735027 169478741 192097061 56110513 706600056 939150349 179133029 292158665 685375552 764665872 867073672 606580287 140684863 972695971 15899801 119849906 647976499 965499685 17380668 640762511 122737495 744047310 71058088 553548108 506662425 973022519 240286823 997813436 616554307 279208674 240766493 928578667 58494001 548575554 150623975 853199974 269090470 463711259 351305455 290259277 101379121 670510237 488775308 343363198 841591318 345233330 924029938 710158927 420648390 103664975 803385161 878811575 379224194 998023124 44052558 4630008 336239607 146281546 657184795 35453873 408936628 996873253 569941525 212969554 940145130 904715955 368054012 479235536 831926994 515305880 202750182 621679732 977294364 481987115 934249480 751880134 546805388 595128647 619305198 994308852 643034708 617534560 545576437 991760886 806509805 310077793 535887762 116997709 687867813 468362205 998616342 417223798 654780400 837519753 510844540 213757170 498267948 122236438 903599725 129083248 697228329 506808841 160424739 718682092 729150232 771695526 453229838 247376960 385576151 339001177 139626139 406894320 798765535 146140562 808041743 701282506 572944132 971115082 947678808 497890269 841321334 940059730 85837769 66386419 994644536 129876889 577895163 624645538 757225020 685043515 929438824 57543413 39612742 495907334 983717900 682172549 416852451 753996786 730837905 222317183 323722261 609680183 571613481 537009465 575198825 639729599 998451036 437465416 837580064 656950287 580219626 487683210 62661990 99731713 986195686 251448523 248436521 415688590 787965478 336030699 808772850 359404312 57742805 968445633 189052823 873143349 963921126 708021526 466191895 603375871 938155010 847219763 345647205 877358371 194450979 436143637 674794788 262801018 166396652 692926700 553470878 344995454 715159158 224895914 50076121 46449590 146387665 493319534 975789436 184280420 820546640 743626151 825095316 817146664 710348121 159705662 129447574 918339803 317454289 793538848 326279348 276729086 735586348 556968167 23641412 175063923 437615710 830644192 680459382 75904057 675958188 834422434 881624402 900301309 113412149 534838134 777964437 776130406 934016161 901266544 57489251 67462433 686096048 517676273 908373380 183763633 896106928 321855553 904239857 523230072 134031110 274945655 945903884 370651151 428868321 681300169 790469426 60336199 47182283 791177544 263169873 349299547 358631909 783379288 19846757 219263394 342279422 892372485 119628478 645665982 610455566 855912855 654904189 421879932 319560938 961516734 568897436 520797461 284451590 557892306 343912985 975390668 773983978 289626510 101397405 615504642 874081439 10736409 623611679 480794028 314653337 628000754 661740762 401882461 967941093 801353266 386204353 684484062 123915337 56093318 661517091 787314448 109826844 214680461 256883409 323827959 56533986 626913200 192361344 568128332 452620738 30680052 88131334 534548935 826114505 208603862 486149529 867193229 868245216 41505993 92022599 301733468 203720385 81568751 627912068 478536348 667049576 315894794 773662795 323101309 661752474 631303624 196850071 243082624 115751817 545352707 594836084 671923581 64595194 675512423 164779711 581362400 212170106 148268961 139451082 310944400 324028693 820671117 523455977 982820795 547236118 952275103 647416881 143459469 73675346 853943013 73203107 930138640 85059217 529753151 575270462 482269195 295789720 880465373 164161331 650449973 539412403 39617053 31217487 822473905 833744034 598361379 976215462 198565587 277881881 626717431 531807447 853448961 809324865 433729457 330391869 762810771 30535316 74411525 473946819 965879689 718895848 14214593 683379088 788371340 260237428 939810812 188683461 213208233 124400295 418146588 406768348 38963163 509637309 627525881 509928391 793055981 317348078 107975307 593729575 689833462 961861516 329840977 895307143 654355419 8168454 209413419 779005585 457176914 835880756 993187865 703507792 874508021 525244690 622165099 265732519 289057100 299049435 325588456 454056747 699237972 137525434 7634672 500477560 576126802 572953021 373733087 520180430 234276771 817946287 262677779 976491782 376206271 375695708 371746957 228885800 871237119 852878457 29710838 932985052 258288124 218895159 423493909 373648810 575514847 259345604 853946632 783270301 298708091 996384198 293096835 667375712 294843255 183931165 147492457 616296013 420088404 764917727 513624913 620776748 41511302 941356975 735310761 552315120 727421297 636293441 611325880 960175565 44312461 351236190 247358740 305611105 421316436 222104876 428402885 898358022 843045413 748301527 937314638 58114903 564264356 642843097 873191034 110148033 188795008 630590832 697148964 136160976 549543792 350674838 485782651 587159509 233040827 149885974 296227222 749046528 614701435 830498156 710188492 601127271 852898184 976496356 124470860 711009093 558141225 804883781 89698626 662354044 796310845 587620197 810646720 79698034 215172932 415577465 601402730 588392113 323567238 426849794 936261790 504041811 253336756 109325003 722955697 990532941 616105630 826723820 287757728 917591239 32960568 114447461 747287413 124520407 495894421 115437220 581160737 563063861 185309074 746330017 770434622 950190330 201477301 793814505 910262986 608042905 295458435 425349306 361879168 519930206 781986679 731504157 39912815 793079915 142718819 192391585 413211929 377281401 714054986 998951514 710054003 852465330 115038503 332489936 961451036 573964372 657383813 361931651 113059675 159127215 840290682 890427081 527250725 542203037 958333523 476946472 726436763 328875882 493139629 613708870 871107441 864976202 591286430 262060659 356176212 154405169 526173038 53335371 756663496 846684514 878948352 208075118 464074662 714358220 805922583 96394599 132272179 3693270 796222666 585385642 495156206 51205067 112086147 687944296 403953583 506297917 296943971 118358828 96437564 299192356 266079092 610824126 275829581 885814880 201403572 339002613 421668835 38451321 186870510 86884051 125185486 852574230 552717007 272425704 468346787 801924372 705100261 762412388 211117611 231416517 694825149 498069001 864485925 826506116 935494362 973836859 512785153 348052113 744673828 808561522 890337251 840465222 495484731 594394163 665170692 420496003 309976937 821594282 618198035 239397849 825122320 212297926 906369084 656112581 679478577 487861339 803194944 676588339 930778543 920327754 650846028 678063823 714703132 943474550 847942275 461422960 23706637 299894684 390844555 334974389 846157599 92800289 93783866 451631766 144335318 315731098 922346841 380633842 747419218 351585971 337982512 882026089 187289410 412414246 279858326 233160406 850308849 645738208 816654498 718129131 77144645 857886923 332387324 786373664 930031403 935638138 946862732 61632000 767547528 191679458 772911304 219195515 390354992 89551126 715313849 21895576 738521356 818716041 699105230 448264359 236318076 877120567 898415942 491474780 441175025 381684609 210194619 143525697 140937233 518113519 361292588 929821465 250904167 463694170 895327309 124048340 74438467 788107967 140816589 463971539 17988935 350606219 144411124 966158358 985237296 104454004 588571223 862910964 163938334 812100491 800178505 916522997 476424012 466546197 425517765 932043731 504026667 962391605 695582560 932678736 90215794 768219172 745179667 495125375 289820187 731351469 640593358 750310315 292853325 76266713 475963216 692370457 755971548 114388448 846108750 99348403 153758149 850881703 998974572 964097957 241786167 906531179 244065083 194496924 932907883 854625224 553792515 209920494 134885701 163167821 667659888 434153902 118618755 880263451 36742111 551156078 5691184 262777508 451893995 916238057 267602331 285150764 495485316 471729232 338545994 126533608 500031482 401254997 926693791 220073147 411243180 809973686 262433181 793452567 304295590 546064768 74196362 295080882 287570247 492736441 344851658 259507622 754490867 886975206 732417694 910965607 240042970 495297583 243700916 565860105 995152402 315887382 286355363 348399881 979147085 903659224 383664465 177729916 237152459 492318164 630077760 415409182 416841974 22622940 398637452 793180506 889971539 853184940 139186717 87223322 469805603 821742055 429044530 906433534 444550576 774837258 899301255 353314517 80687995 844340347 135005693 650344191 506929965 106439500 338625633 772576681 33751938 769399279 806679686 311002056 142747551 701825285 375362363 82705270 928847470 706626027 121167015 715388991 955793068 162783136 359410298 197181791 993636310 845973849 488247551 684067003 190131808 395734367 947457821 402631623 890596947 528663514 167143415 7819380 755888443 398856409 938082776 356554383 304391801 562465451 355390701 239308668 53221538 382966490 67869774 336606571 389182748 736624538 646909477 284394782 195568773 948626990 611420094 876618611 647441412 831107832 711805969 856966959 470878359 582508440 72413749 635552452 702828087 516344717 143457066 813681605 688109755 474126447 555693047 362380473 690514379 982180390 848472369 751745330 633254204 785459497 41139623 314336680 214992955 157120794 983182918 533066325 443832157 282284460 822710874 561571165 946132907 885894098 687978906 54746399 192239769 829812327 351449612 350720845 286481168 874882061 351566111 160989667 868710455 106780293 964780194 435306154 499754834 374166322 785901171 58457026 620934069 768064033 762503786 310635638 506199329 435298550 242846073 224734430 521967304 449216354 607096824 717010082 301702023 679137578 799956608 696330108 325838687 237835555 416701829 245307711 943545522 37008429 644000314 430596374 479783015 765218535 257409541 383238089 733174185 361869044 491297966 660489638 709403940 434075996 594759301 658809405 937286566 282071553 28924593 435331978 274677193 718172247 456260413 33923635 532439635 729995231 931141349 263149800 663347525 889987334 580108059 312938079 357671074 386593072 895882718 118687603 944850374 65316423 324384452 634614246 776087383 911091562 886943128 247126397 809095263 959482799 911482169 834719843 901468373 58514318 494643376 324690006 209840119 689942524 190081406 909743951 264227002 92954739 73131404 424680509 467981047 625208456 130778725 445137263 16261437 325431577 780823685 369846494 536052075 348128480 473482309 632831775 360875211 926660818 383999818 427752629 73058233 32315424 48621838 184740832 444013000 575100351 917555699 290148672 53532869 278316150 106112888 547339004 186873482 438992055 586405156 749050827 73497171 876551230 60800598 513661901 645769833 718133272 389094870 976182424 36951638 956765312 994470510 692723733 232909239 260435297 688347741 437383057 182329033 933797787 856039151 430646302 7394502 647050244 58824954 90030227 599823602 831816498 280354134 917477111 144044752 71776515 334172648 536506785 402858363 146698250 962162647 446201178 998384871 558588620 13832779 466961495 733244201 78661260 437186826 490961975 541557869 984157389 420315941 161741214 474193242 198828715 533687711 246447983 971479835 810942395 805650903 797376251 908930221 573792367 704482621 74219139 971048165 92675006 399191394 58361915 316592939 632500803 368087860 462668646 369558078 644893412 568493481 381545196 870048808 486019758 331859774 598159791 151292005 168581394 841175393 226778017 920707528 700357484 511728539 857460142 328495114 850721823 774323275 620817428 344196432 797714005 279285831 87460375 263834658 199063658 336920417 50765626 194882799 840459610 558077654 572570951 515012257 838656785 401668033 851163775 503845226 52216440 141495105 83470600 864810551 109502077 494862335 727939863 23481859 22307015 924629466 659024810 575790075 120949063 748109357 286017211 141234411 560474134 300263826 609308719 333652624 684733398 173113295 853739759 683303573 902755329 56034301 411430409 492083600 407080736 411995064 939082832 109831690 489545223 727862544 418792027 854686629 538487209 608620013 728101612 104235286 586365979 155444096 13353699 895454673 744229143 332253835 725764079 914920548 140530221 30805629 29150365 999781552 270671406 672193975 941662848 286170183 301044181 628417246 705238055 588633158 373763807 473904163 617833129 364150879 262857545 111465444 42874807 516049072 531419334 63311222 787756717 306683991 567630789 510420243 391024862 500818193 806760056 883527909 690344954 378450255 350605807 921412935 351821660 498308163 76836862 543992805 116398515 765147257 378336641 364043366 914896471 686200874 234098329 378642736 271238984 586633541 320904903 896298239 619153344 36818225 760048766 256433992 111629628 2214396 459353978 816415309 810038576 340526165 35522796 731779916 123961570 653956499 254506109 346215641 115559025 435303669 169133565 378561751 644591000 445076419 649077941 999832477 349501640 482970625 823202236 306442505 698621447 292812635 782116006 667970160 345417668 696639216 163464222 782672899 663819812 17998055 256135538 953303834 944136881 875806473 887026817 567479948 227988530 334116054 421570345 319985332 12996280 308567194 21211168 691164457 784562333 631111793 127835009 485359942 450658536 646502608 681179261 389254445 700977350 860476206 188342185 117480375 682735740 485870090 188441023 703033503 388928264 850613150 856723156 778828148 772923904 816239859 55214358 479387203 51005180 842722041 709932862 282025398 651799003 247992829 855672725 146976173 718589539 698747289 799592692 218857611 788994383 919194103 613570786 362702111 22623109 360297183 207837408 138841995 746710557 472597387 671127667 969124194 63631543 550536148 932545717 226661117 57132080 772322885 988007616 467016748 584965166 164914342 632573769 875059320 847055087 407310801 116596098 454304400 318069283 31168605 706116812 487681681 436310385 350678410 115057716 259683268 19778950 887901431 197154984 869790433 656567753 760539742 562612863 59133521 300762370 799043178 632885697 330223011 612416885 82574015 431511625 702762096 383579580 410958922 666927121 876635675 60326071 787530977 595310649 931160791 637087913 627241923 549746329 943133051 668277654 321316137 150648144 204342825 207076539 181219125 516140331 592855411 724035952 320025834 219350621 451530554 809133364 470437053 590945628 873386544 165010519 471344354 618616896 444086208 392608757 424211485 202741696 96071956 304053287 437771198 671136710 747823004 120666778 757385611 61902908 317230367 997194248 62663153 891695104 177321185 665482806 173697915 391557004 866137483 507193376 395230961 358239330 547217584 397613512 746892120 675632754 941755320 602057563 389578791 202011342 710939011 746890567 441168382 217107880 567865237 272229172 25366075 28348560 570973397 765742535 231717352 479012719 357428218 901284683 574516548 504432499 62601548 337740513 52277002 876788891 585270927 708885165 320013477 862107881 751587917 403720912 4939526 469006707 469805040 986239440 385206908 419930698 839593213 448471898 494953291 302675932 637891337 632877593 783819311 743023908 523174358 714105419 586862557 787669518 444260800 338595156 661346680 259639030 285761262 872718989 796838607 735900992 284426051 404694980 931017932 244162529 450464934 925805605 188641598 219509090 719120360 491315607 942478241 118392708 208712873 519393814 121696130 440842597 20920018 247889989 122447153 649932308 277796397 322504347 726392243 768375166 490753450 12175995 431679666 943864078 941614839 940801846 179467590 154290247 505685742 394310087 768962350 432995484 210910107 995981658 235857456 369801654 373708713 695534493 666431615 773112816 217234076 195634752 652892758 822149339 904890834 351937769 472345035 482220734 426391217 553914184 528599643 198139326 298129938 110161157 971451111 222920091 673491777 559689494 531933424 844109814 674562743 670302137 718922925 35075356 548617969 584381569 131360955 11461876 404465747 697681110 994983153 845032024 30699639 467135792 360478678 556767436 122980530 807405827 216994421 649852157 352085942 246115692 746518292 80154276 584659694 467486385 834918700 400409148 179020485 309897541 351924224 635140356 225623490 602841121 595821847 371117826 69433872 288432827 959336013 86957497 122817033 735703752 958571870 177089708 544530477 174214558 256129148 472449519 235893281 910824852 105020627 656120731 544345134 743789922 529580830 842608172 136917602 726673043 362588799 925709877 28543402 784562647 376103699 759090789 584000000 312601718 290974556 493632330 596484053 653844534 135879182 122482974 453831401 94346902 374297369 90543393 366050892 998543150 485877410 482643127 956477281 47739941 960738351 591658515 265354441 663131969 410454033 292737536 775619583 28564403 450666943 535082017 215273607 750107425 736576180 492544501 830180453 219404358 633261575 39807436 246498291 424308029 95938091 422006814 97092251 848579111 308000774 221442602 739876395 262636386 556615900 447562357 814272539 308170602 42034790 148184148 426703733 589042913 343787577 493164749 569528897 965665331 635376549 872487104 995423613 817527911 729921914 801608719 430683926 533104244 359207871 568870560 581941680 992649430 843816650 987923801 398348624 562104732 893030000 357251790 834118787 831180170 894232607 857883960 598617648 758062685 488579387 679688814 285445358 399949944 300524642 264122422 558284056 9960515 766678102 790081774 479565596 599489029 250015301 141723543 724981747 449576241 792698014 699728042 285640790 710616247 678663767 369421083 337387440 456603565 206934305 34829621 767002545 622364914 531099826 878654397 429336503 774676776 800456842 540603808 191209972 425113114 61700599 414562302 779746727 451080357 566201191 456187054 563841981 730142433 438852163 973567664 762083462 705193688 262522936 17552108 495335405 969589345 115964124 582646732 163166683 483694161 528113369 768344203 459308093 21572412 142005596 724652199 318760483 756939978 748776523 334993581 516221315 500836715 664431544 702374658 55749490 869626566 892255734 680740512 655400346 484239946 212448574 657585149 679769330 668777281 114201341 410570060 660519233 438405076 463965384 832894880 934787901 292149367 428493127 40957071 329041297 82901853 895049559 614515212 686624222 412105890 150272983 223317748 226498031 711718466 39080580 285835728 638401758 994899230 834590676 986673202 275021898 152328958 603916442 833300285 648093242 903363479 112726189 271550857 994483904 208197611 767684711 273251020 998230435 692220864 77323493 785484273 767793543 250487615 746421569 453660284 639873248 17317968 78831945 452753008 364080042 898628169 393191076 803969694 948690195 889317151 916175470 500388264 556688181 79593987 932050368 704678483 404862650 319875279 226505382 928854546 761244422 961420151 586259454 846446627 44447188 72131179 176540801 785720136 816259659 217417259 504301016 541330971 512470123 669911912 576326338 132637739 404902660 195263605 501493091 169514961 23946642 577710519 872244580 393700840 608989738 73430877 984183793 181758376 557615110 718783395 710951665 282208625 332131668 933547157 195990554 821906486 432025781 42866331 594714990 316254426 170419319 40401606 551783220 702167821 950519425 975162725 818799439 348501563 987949835 780932735 541409573 743459980 591847488 552988115 85607160 406986558 815224211 141177661 899519525 792197000 239509973 38947525 832187224 430775346 370667471 861260445 133130766 327233294 277561874 783174035 294036193 544874412 743300663 128994102 295575124 992560747 601716114 45964663 262829216 963325016 549836252 864207567 869785883 595928788 624092326 729876627 160825965 215836157 387024540 619230017 174394399 663598350 41345293 659513853 184636923 778166527 390583577 101430604 255494370 182456460 395623870 114129781 105852316 94467728 554622721 312075119 407176900 91357950 815054957 39384346 912251039 634764828 535103704 301894880 775077002 395248438 140740512 119092706 308258758 624137806 1749433 369963851 176177053 87618285 45315585 367455237 845831683 507714997 956558761 361246176 729746547 993101521 998754428 300060987 310458883 779033114 982581229 241924745 52258749 576745257 207980825 229267475 716170606 652298044 537799764 300711560 977369338 11253027 11385361 911514098 395762435 704548956 135747889 283838059 294304787 853363513 57143545 409244439 188742924 425920306 528493113 307344087 905264537 393764074 905078269 659440776 279560126 299216156 230498184 246366589 840936780 3234753 189870592 507880484 871370682 464661363 491222064 125317035 741487081 295651896 572610218 940588892 953660852 707590731 842098769 227537436 859796787 808638743 327215484 765559707 558076017 61093427 983665364 967821339 906473248 556217655 588255672 579829713 195752294 394492248 456596978 719832532 331173901 540235816 263806746 203987057 180798407 689176254 617484969 654045850 348477395 719757432 828973907 467330860 955364038 891854472 12882973 978163002 243627980 955068427 474989674 129124677 448674812 480200769 456050985 253620126 728742442 267435620 354153386 899811813 789916133 938542655 215965535 581027078 34429145 596493036 41730913 41023638 860154904 750381397 292116632 145894510 204966243 846712886 832729504 623741848 242956080 514699519 192837527 204557336 493224954 964523991 467064193 225358759 737742718 183990654 529375699 911325613 745494536 780209627 435287438 956499955 58462509 571408906 721075837 367569553 92775950 121570487 371011140 845945661 682349643 525161715 425885973 123373578 281957001 322916967 616235685 980666366 968470863 896918008 816763501 917993508 44322251 180843520 221637447 362856678 195960395 722838569 910387747 645066889 87350762 132196949 144054261 196390402 533108869 180555356 756967873 568493467 51524195 42391055 44645703 417099178 756262135 881477656 575729492 651853110 74776099 292964336 335190278 728360479 690926509 223805467 413730469 766258076 420103348 865642462 433695684 934148224 626286921 151639282 442865311 468151158 692661817 595420417 770066424 474451968 888946303 908581875 977819914 887659646 97320281 463522395 901335543 497707627 638386700 660401963 470688434 299464209 731375085 949399961 159449026 926971581 613302083 296182023 579559281 920348321 899646193 43715188 661472569 989777975 725131211 783846211 713419507 709502220 575056035 293717301 183572427 475059559 520625723 550267989 167876898 471452810 482836888 751547948 436680314 664876273 793130729 817315510 178354317 793357391 182997001 863325031 789871348 344138600 421030006 750162040 827607256 634848098 773015000 192032750 976431383 741053992 860377528 133999577 337332127 295783925 251539706 356953413 314771397 803187799 785441904 809905102 157615418 667646143 821557370 672263522 548527101 869777572 12971533 652433847 663479213 702827589 66910024 477098884 529700047 545526212 733490399 12144649 371570016 194971702 998089023 828231605 27341196 894213338 814795282 95413809 988109549 764362575 209843223 350214431 101648956 508494929 862540252 556494073 10140456 470961136 284659642 675740064 502891210 717011031 135481676 205634199 244635129 184706789 861546113 460326939 103400840 413993538 239877090 344377199 758139105 632340476 513029338 433958294 597803907 251615703 660420878 828247604 917552084 136011183 289308687 756017178 156837792 831538373 787247935 927445343 796088968 984996067 475352652 161113741 710556854 602300570 210176252 431909998 101676440 339363537 412505191 935535477 569263015 480398596 686219908 122846804 435800288 774723898 399990075 625477805 773325164 451303605 939404340 406069252 358286628 541276207 8506089 150870180 681030035 940501785 65571147 467598812 962767986 990568234 903421607 470770288 777878734 383729603 408321323 782922532 972045435 983757621 991223369 8737596 312206160 292086755 559060281 390139187 175803639 620373224 917198630 248723223 810348391 239910430 477987342 515493568 209663675 174554692 615078018 303989595 716151816 209164707 977597171 124242950 827800862 24253794 408555268 889868187 150371834 315168573 693305068 517212130 273147749 580032425 841181906 463665024 290200049 526536736 284574285 81249490 394906472 710642409 783880666 915704577 135873616 987740731 478020453 433559229 224724571 338269057 517893036 6185081 407290931 639240332 809920727 562657123 393468904 73503256 974154881 101579408 250260804 359781585 754578426 795842820 423461643 642026066 871236827 952005992 714123771 986182873 618117608 49698669 919034181 262541337 239339836 859115294 497177404 320914098 245185365 800941260 857437354 345247700 839476728 286551297 332792976 424481638 517314164 307143795 37259407 173354201 990272734 406533529 125593724 556106205 353003037 400076131 214301383 89697201 754380864 229001720 504515878 821943552 751024144 414266705 396385824 767093353 808762914 245472898 535689060 799619308 869236180 20790992 669189446 962912670 357081389 209213527 208471891 659069935 335964754 683349195 341508744 518274576 609318433 306725419 887069938 765001042 27585788 289089293 992827637 774597115 777890967 98575298 267761743 623773073 757911804 719530497 321300595 304201161 413105108 326981283 17967701 772403670 834952626 132045196 371792505 505857141 938683950 198489509 551416179 638671280 849312504 981053285 825749117 4161261 916726552 360548670 543392476 819831749 512241229 30481225 955147461 740668722 805396310 92166864 594407498 138537637 646166400 680928711 195324685 804234070 730401913 807583477 121822594 310596468 158596098 837939208 312417876 999448961 581945873 483044277 833027144 459728152 84388892 192677897 795961381 91385484 182641910 28960408 488559671 28910740 460229552 191239621 713662472 511863227 177066743 318758510 514888907 562068619 832786260 373445225 451576735 368479640 758772571 588648003 588357103 545743862 996083722 357991985 391161884 372533602 759576848 502041818 368245230 418224824 682429054 877215992 581000517 416510132 237243346 250502093 73696744 265491324 279353142 880247576 478925759 547661955 263403458 756622053 56588389 402744061 916881896 494724985 290659733 280380620 514910136 83175656 989743396 797098210 311018990 167339075 689719996 790634143 347675505 598192715 664852027 579507314 732221630 15852979 487593392 714864727 836369406 884238815 687278563 564023979 514412 887640287 826736651 932760206 635562094 741716240 124706867 832884068 125351028 391944168 884113845 539834581 283853538 890385299 680503948 779430784 53940328 127442354 829684594 818735855 194546826 909212031 203443917 133007481 639213506 757207215 943940858 631594932 144880257 839699210 379144981 454502152 116270871 876930034 347635597 619323152 775680363 805265316 61120974 52119973 919805749 290487539 116907762 772183362 368961933 358794289 759069185 580681410 535481561 926602257 974628783 88376912 442275212 376835594 909749102 359006797 300625794 897782215 834289276 361938118 643041606 333250367 286320644 835889020 371033433 587431485 362200197 449513208 439709952 707587736 449181881 197842553 976211352 418635338 604992139 899037670 550285856 913059442 548913491 167101752 791515372 859949063 76036765 642462971 656097858 547564289 311666785 530624918 474684000 308494777 117431376 713963620 779639795 711151742 566229740 641087920 959906186 273851358 785310744 223246644 599618338 113614757 80789461 523589162 106337640 954749720 400133383 489019724 598011388 22561137 918345029 269299355 71534248 877365402 183415520 309587714 523899102 135996944 228773102 710838505 297968074 495178561 436740377 728210314 867807449 725716043 702597001 145898910 358315814 422447479 637491030 390981243 116115190 432359628 381337706 106915715 850623640 268849105 860358806 239839367 645187658 576655880 814519567 41112235 688069777 917286972 667222908 784237817 934697174 611737664 420854701 256619849 21326479 141087650 1437376 355138215 808878859 759764486 200395991 478959708 897167848 358277659 329549181 167940109 860249001 231143313 182220614 224761469 992401575 869726533 504185235 881658256 711195088 257203924 26720879 944322166 50346297 354002494 818946828 863093078 929426836 802306848 882324654 655310366 688778604 597019602 312305827 494066499 721302987 817960179 21845281 261266419 152375230 514606841 628541357 618950864 129848596 117125849 275354989 276751005 936856588 803562651 428542886 32423564 355963629 458963040 294187368 467614062 311129930 643789551 94787834 306661681 383293537 521542893 283938180 785598105 481429039 412424972 21782888 80911536 619105077 604574903 627991435 960732041 8288044 156883727 48319066 870498653 443717194 408873746 777168924 226330922 784767570 531480939 581507511 651638175 705250505 696995445 292995995 784810112 968925915 350718969 591063915 550185155 215567931 343862919 620255660 936594836 919044895 463927875 697479165 264426643 591286693 955318415 137707853 391286834 749739400 54867932 104508179 554867783 921656505 955940612 735651943 934944292 671255019 281931939 98358047 433441925 195855548 505755774 261407622 620523323 77393021 672783241 109996765 879919757 15932321 821286863 976145889 417854135 963937718 475834214 408058370 949965457 252108688 384614225 259231772 743556211 464937383 409913601 541559439 25599576 413117071 539365593 7409723 578165656 398316510 384073905 587856532 436243680 431578798 340324713 863101389 911135510 906469797 176411144 84370653 716516875 861147639 45157990 35891845 147883027 598594680 743927489 446573988 420426356 335597969 617232892 833850551 899377612 305979101 490577419 33928205 856747394 961810516 445642246 323094490 69418843 383562981 516801795 517280551 269432452 103284257 180854121 129750990 955393450 122112250 749375029 511896593 60600304 215993815 711229284 865931446 488457366 201155425 208944090 537512689 513785057 164152808 119174163 529806662 212779493 474260332 425705944 878329863 506580300 397059198 477668403 361566204 780569696 897202619 209017789 342389187 884583609 359400885 82113473 11611541 100928518 227336768 343175541 126155250 188197141 186671231 76520107 904592190 448070504 469101911 179633005 766529348 680962620 794723181 834607613 300083704 971678519 610719288 292908676 825988463 918903640 574141989 72248449 333280791 80579044 531626249 593323221 122358021 653873163 207595593 136373391 439254402 392107721 969103646 903608969 949336960 260716673 837413144 339540343 95507121 710451297 795003309 466260899 981208642 388294137 28110586 660158618 32788565 97874573 440347792 428308296 21075239 41226856 504025387 941281921 215414356 201899218 390594469 994596756 748320555 456375988 967377162 264180319 811985107 531415997 589960193 58289249 535814755 389377467 641010800 296875265 458503285 914416642 261933741 763126117 492825931 640027056 318753735 498620483 298751704 32966837 669931815 697963123 757847323 973936916 446800753 206115274 596096007 601368237 805910955 213545874 636076110 37180027 745415663 601740783 308408983 534040444 101029445 972058865 668415219 992957377 645417282 313843105 107032165 744159699 840103144 762376716 613549300 109917235 944903055 101860614 266357187 635149497 100519957 408365247 757802865 115607555 175470460 787850125 108633177 384776661 92992624 463616151 777304578 319780854 169177141 939524768 445550600 613817660 45564483 177702909 525706943 938150949 600922078 741567910 448595455 924516054 973355207 829704743 864815537 357521109 202552190 395672933 913477365 401368604 351937538 117090992 51243501 771565808 963470901 410275414 310460911 496154277 738736318 306773956 184396656 112682970 174821937 694021568 805392524 918457648 403949881 499296875 264165107 222316919 417833839 659055878 656880254 644979641 140653617 268483842 736096347 199720706 733708540 532441712 257872652 590663968 546207199 87365706 580344676 628630698 29759766 397094866 317293438 967147661 165838049 906256400 861287991 641155553 213074939 687781334 244943928 478599252 499933781 16923687 628114078 840226533 791375596 157477476 219192565 884650109 181008718 874192496 628162548 98615884 623878628 352129145 763722213 323653449 812880744 537979575 18956802 456029939 791890714 169018309 616337176 532330865 307456658 883057958 78825520 314787297 54643629 695825013 609748207 726635348 944229037 996528335 622960152 537652957 282775258 562424084 848010655 780896185 572188602 469995325 592549759 308261959 870194436 423767839 207479728 30722727 568611688 111715848 949716290 791259785 762261959 302491745 712849847 587578421 3771146 615782992 187487376 770953345 904416418 179906574 357294467 543178754 667742719 595146008 588242391 656509826 234172772 398670613 586852142 710070714 906759480 152616803 84997582 986969197 7006178 492688649 303524878 105122746 632451767 417968694 565887099 295906452 911075826 195682926 966357478 518272247 355787526 638290997 414307105 87657361 463607320 551107490 895120493 83158746 409059907 517750758 141647858 131906042 752445236 732754789 452943695 404203084 438958035 450632738 897333911 618273699 180361455 10386526 941508363 981647414 134747428 965958662 29594124 370967622 617113237 954771674 561135767 761074220 408443397 591358855 328487652 942918932 817779310 396082367 532746494 118686255 710175937 721398338 32177742 788719282 957100145 476786057 369266760 546301571 984294651 393291917 172375807 760317383 700434317 523900512 217046718 552294126 344751731 150333639 506528426 572488627 73115314 596745982 874964313 290840847 33760439 717117632 319263912 913508460 844240272 201290393 879488713 443452153 505646825 364818543 41081120 392240068 314732510 836567669 726382388 705339906 995642317 690699854 52744682 489535358 63570342 489092556 313103441 758140107 627385807 596040498 511341227 743779732 178770816 208127002 412501616 71092304 407165511 712951713 959613639 23293976 228637110 802336025 556863019 87365358 204807891 649783116 88903512 699724328 864836722 696157597 510070018 872523866 359856534 765441186 740417720 362693212 993364099 452435730 529659490 220749566 912368401 673487583 895542866 640248731 881339839 199518738 276399872 414549462 254529060 770639923 735385659 953488145 552271923 364830292 581940528 583477574 408983427 204628504 841980403 953018744 458930365 645617473 136993220 451481634 454076083 89922830 915729800 285626480 139155987 646316316 38803918 321670589 190339671 522219417 877005726 90739684 13521625 731139644 611611289 276751408 12636486 709502802 489617120 328402306 720257686 796785452 385977200 838315263 495865677 314065381 3492611 707113795 852498953 833471082 247716104 31112868 164286112 904874089 476190793 801647238 724293405 386882528 639741466 159752848 275566703 989417507 724231675 736254900 83810419 628607445 771098165 650404616 123369693 247455671 643121192 22507877 785056983 900395305 653567411 841440484 250358928 367653761 891313936 190305200 263947448 796853715 281569518 599747420 970111314 80458805 32590777 246241299 893524828 120407578 124943826 79131289 763744259 700483744 997328811 709644493 625738606 465729852 212344202 29535980 895992850 92368821 28042846 416132411 80331435 977531842 199584049 443176518 390985435 129529977 99848885 90818385 203122487 482316112 989726955 628764976 46338646 627201417 699957443 489092442 507135397 169440469 162625058 861728536 494690100 545238413 120737938 869071049 502365078 815086874 344773524 782353619 185331642 852569440 525136196 628466378 445765084 304020548 396731751 163468730 559339195 551513232 921511352 718746268 121656049 953850634 809763870 672529842 227745224 861292571 672627005 192132640 297160069 104043562 58147319 135689352 398066408 343897632 175135910 806227336 391974696 20079009 420029799 670182929 657616083 420977873 722591175 572044057 91833524 64260306 879829727 648197550 241941150 634645643 304376441 129349975 573570690 884864248 453761073 343658638 252236455 937343544 106319143 194565762 17082216 622991499 648310590 970650505 158618414 954901292 79658714 163584563 322371217 249802413 440006978 940885559 995424027 399939936 357203447 186356568 370522145 24108730 268989258 709996695 583776688 235789014 737277184 329219054 575305026 437306933 77250666 452007273 682372778 64179109 821969131 524486762 343845480 11771695 409422673 554422767 454455608 933427540 611397018 573881702 827033978 942682136 283969790 889000613 706239145 200382718 310773424 169590771 78837918 419076588 725094785 799642661 65454784 226130083 815728233 900858487 376340040 748363386 991300114 13389681 936466861 140185072 599615366 785529403 346012863 298275327 502012436 117908307 85684387 798817901 955379498 136041001 314059240 380289290 548156612 713044350 369884545 20040616 946381737 425971012 396674380 433498513 161314843 414996484 181333469 516907453 20336065 859563189 471366749 200596114 873098782 883187758 265870320 348129414 868817988 95200999 28682800 277777129 585339515 908579719 82256334 222547497 5542272 591150645 501246967 532506347 711214598 32808403 737647161 204549997 888292574 717117172 610708415 942535731 279603 273042156 374719444 557411218 45722402 361253267 144838143 516517996 797741538 278862753 290852707 538433167 888756352 412765784 721018197 959044153 214010310 744816503 439823472 614166893 231636522 277136972 368339298 573676431 343032068 263836370 805859254 337126273 471038295 708946982 576491638 303149286 873411592 477911829 194185040 36498789 656352721 368898598 758047745 438263388 731497704 740181920 389972736 881636889 243124049 380574663 561408576 151133509 250675878 5760623 336447306 443008179 867922536 191628693 727688932 991362077 799224814 185903586 940647394 107942803 54182814 112509324 79902290 485391204 14289582 528172474 705175209 685802626 589566737 626711755 673317200 809955524 9538741 411203464 512471659 409770701 341795381 815324099 755195701 5609589 263196082 857715725 566375380 729137201 602754660 144082212 929464194 544819648 102898491 523932796 667400659 160504548 914970458 234558329 807823438 750692247 163412475 932627641 906663575 27234040 506786939 484404670 688325592 211250921 433484344 37283698 121358280 209687172 65742973 237752616 509267737 731760330 241379907 822702288 199920916 294501835 740663073 852056854 449261083 146953723 683630664 572797932 451621037 91345832 741243668 297103911 27378273 239224421 515656403 18431883 650744156 293922571 217152857 386373001 122446989 784259109 275961463 518383370 709171784 829286939 412803014 524144488 775589786 24547632 794219168 907962090 407006531 716311852 895651151 997801038 811581914 895697659 324607790 119082779 529886603 808873623 832961063 548184393 812903321 807210011 452643419 603236900 234055039 648970505 307593809 320582768 240460389 658237198 600950974 163871157 130108193 362674445 337950559 726588700 608556855 380416474 486194637 85958175 565473478 388394753 331135959 11308634 305299200 795239695 569108046 707623208 686671984 692244357 741376725 160458702 953742201 876489825 687035733 970014456 462931157 116157449 699595048 61469399 345968801 373539066 166356835 865374175 633886766 161308330 399376666 351518619 281470318 67111033 379314434 766708733 302897630 489917013 882748752 852937476 472382720 386528985 651613640 684011228 622118559 955111613 795878631 14120309 815289131 259926308 140385424 530957754 766588038 578083868 210807160 254158998 474327843 616242440 84923954 505032847 588647174 871338072 696167966 379210758 566655890 456471866 373776771 575492704 738384195 405379876 109189761 264917934 372597334 893808886 294209253 334328616 671834122 719208656 84591143 276602625 117137558 307989854 190688320 73885116 877623882 70027338 460678479 445584422 466754476 395973103 143493436 262791659 286047947 4380830 454663361 698289389 955410354 481686352 766911998 345578537 720461595 830427177 996447241 547200646 678346846 664426176 882812353 956362080 591423319 299382085 617081761 227920735 193485993 721654694 760909073 461331794 595481425 231944845 743991690 901654538 840058040 828237038 579141479 932456116 22047461 244121072 425712764 340048692 629504975 278980302 1878291 580757191 395724439 553664640 149602267 681763327 641941929 721199430 575209812 270469481 983997962 688310919 579773373 594952315 131362147 991065331 152525296 290524685 668374746 153658853 474434964 145324798 859683419 18062534 623513956 909841699 867510001 336514711 114027979 23043463 188825167 844342837 104342200 101926916 75842786 23730886 545490698 918667918 331048991 791958065 424281821 105907741 856162588 421325123 265517476 87366377 951591537 249855179 263565879 855331768 721708168 813509570 813445607 990645573 977162900 426000704 682074295 79362650 136620389 632016649 976538571 149523665 126161975 835083260 350992903 202342652 187056629 943242285 755174875 520092882 114040226 142716830 868498640 645213779 153574819 928137666 855892790 913858961 414147374 389924587 630928838 939022056 19609770 92052603 681791139 492764690 442002281 982819310 216191576 764873441 162713570 971873067 857000511 132784340 377663260 275983570 738577452 923761595 590346108 773365298 233878207 729771194 117720814 893139664 969399641 204289264 466490466 765029976 544048680 197656046 705433654 532700569 790858227 154426696 647498503 711281785 797830381 584919245 78787548 300554329 692687505 641909742 693332458 50383639 645543810 605472178 850258154 704778425 487978542 938183819 612705150 512356449 525411126 834468431 865726558 36341052 22181189 939878850 699009124 134436380 245308659 99351718 504998773 906680224 199914066 649614670 850742668 252966776 56549935 100886107 181976387 146968700 755736875 95502341 304738091 183179059 100085797 120398501 869528315 974203778 779438659 40064756 207282341 702672598 734176031 880359203 915375781 727903640 844051360 672335512 221245095 29849448 477553871 480498290 380358400 866439826 768680447 435026235 903311196 335714598 861339164 46955485 410500809 592283448 189362411 942397223 723816583 287020907 133109282 877771000 884432362 58662077 192433752 507476420 405686902 99189483 289589547 178409921 25564147 946236820 149290039 311695334 164851868 77317310 172222813 954667002 721753797 34035005 971530477 785661387 716433885 17531983 629896255 671277684 654709287 66674530 371859416 602846502 878700272 120501989 810004336 210052678 547441962 852978482 774764156 801090510 606361984 89813454 667560070 41541560 881446083 637682175 393398813 756252384 474715352 311824919 135826080 998190513 612454668 826080222 281756912 36757088 767115758 149406898 992410954 443473686 667007478 729867015 330129826 634472504 37736397 74809010 480920927 563264611 622471646 392227362 527986199 91106164 630899674 404743547 908242106 167587092 274280443 822467514 344736753 124615156 406137275 400725907 661688182 891869065 868102120 880989552 483400252 569100384 549603577 569398917 820019257 473895862 458487587 623416267 908969882 137033488 642740821 461540086 359927100 955643969 282519356 522184260 58649072 577205034 316680857 16417646 952970362 809975056 912409058 665278366 489471926 740232593 433190756 406832570 364451365 612481093 890389604 918467620 792884144 262132797 319979681 553686000 879430367 905826809 269565058 324103428 805715883 429638008 996134754 413061700 47453812 196536787 661438531 951857102 137285141 69320016 889703155 229795542 589519878 256997849 351711620 581809544 695134222 29767008 960442777 613859241 422694410 451128457 798669151 622452005 239751662 603639210 464196679 353962663 852254956 450824575 733055894 26283350 822288954 744802260 579935096 584312970 85513672 698110391 34576231 615008218 392654566 931715622 255316881 563839576 139786994 109782244 383944214 31678429 793672123 859556343 257304170 582230325 293377850 319396270 770209312 984631585 696490404 75850830 377971157 384821583 30751303 924871173 481585675 154993298 538290543 645822567 658838629 126420702 987609582 202748528 251262340 898481147 288871482 318032834 614116079 941009308 101839777 12094876 870704294 53891078 707188675 194707849 198726921 205734578 938817817 586759641 364748767 690290378 268269116 541669991 420025438 660244836 824199331 506012009 620753305 683635618 774866996 229810666 453997015 901573226 492200282 650755365 547603231 908762691 120553745 573956083 310769418 870658756 213480777 257579125 427997567 74212488 50190190 945196860 438599855 725085449 798327159 870534555 934806479 401227737 815856859 318895688 519759669 948609427 44181262 980420075 778392588 646433679 314700918 446792466 631164415 679333252 134253755 367869988 118447129 449117050 950361773 770368208 765105300 141269722 85805247 582127863 272040344 720173035 539652394 825324195 695946096 255321794 320052184 797662217 154753956 701460837 546610142 305512200 309773886 333505917 838022175 31754483 213003010 562949860 597800109 702279483 51522487 587038955 568068444 845278061 300673821 368663959 525122216 954114912 557740356 481745333 277398633 772208356 468138364 934197777 53693916 181205791 569416819 108802939 373180092 510169904 912091008 738178208 284473634 184313716 620933871 535876882 567089986 967547586 650011515 450607399 78655554 117451060 542040480 475510723 865724607 49504363 82607449 812558659 332364255 164114777 937536315 655409554 799628797 98616173 480240783 988851957 456462494 128362258 333776698 944493424 330114394 183799027 419026955 851657674 521754858 439847605 432236375 682937712 294625350 955315051 50074967 144569124 955259900 754003893 703279901 76112188 17700533 825956915 492121933 197727170 922276570 706597911 821197572 546075181 97624773 260611497 926935613 801847724 489635950 603497832 348499143 804960819 696210808 282936016 662192672 100368137 982168063 97364497 293673688 691323599 598285469 935875716 711161245 228342121 86305049 210756141 729955036 645613269 453644424 421753778 316113472 270809340 209264746 112089334 190254215 677471061 29935087 776268064 765143424 577245667 719747064 707134868 966669599 323785307 644452977 405868642 997865962 336605865 786049980 865011060 46497395 547036451 561148275 67896800 9929509 230822139 197332632 124548768 563580625 882235053 236963061 853370110 600030682 648730980 4623531 696683734 900391972 479884597 626315232 965109015 442537601 126316310 990856160 259464990 360389397 367763139 652181575 182176923 943809757 911798398 15898096 441996194 572939186 216611088 361822352 152702035 810895257 55548776 626521547 152807601 235645063 318182783 394920506 94063816 692121311 959771741 885233532 901296080 196433957 83141026 812864060 99990707 316397784 649813551 426342436 172391799 76745364 123344257 688155966 435356627 649184148 216750433 321839458 261418545 491574985 821185319 762624988 652163213 244174304 959991950 883486029 276762340 378652046 269414799 572904372 922613984 415076810 287595930 786286030 301132653 483678160 18869524 688565851 350297196 915109550 166299577 545354364 645189730 168393244 86803128 596372849 89270249 663438035 110565079 81642662 526037952 695218215 89693716 364026196 947313596 995360941 861814177 246579352 734978692 699363995 331717880 933291060 387059806 661161910 955536708 905907640 225541063 93479398 652601888 349464896 642992023 682167740 425661764 550426669 579450525 489189110 103906506 197702696 601014302 756014876 475064550 842608143 894522738 751888241 378503034 489887411 398907201 636377891 24722465 575056324 405992426 834367423 475218877 592372172 572556648 780866182 405695480 644530128 956965447 657236095 747008254 852938344 496627361 791640901 490617865 134200085 50136089 670265456 423706016 212256889 420104808 74607309 840526338 984389699 675190892 507049775 510745824 894360319 387933414 785228765 874755038 474549825 948709143 574019435 910669417 674932206 20908085 885310864 900312883 327339977 479812170 562991480 333661889 774820181 489929501 458277983 884320955 326602948 437915330 350387630 465646987 340967382 707897825 328136649 768928241 79718438 839320673 61886938 519166980 901959318 262596362 549222934 248243878 717468066 336104680 24378044 52472422 681790 760571397 356746329 868476631 982595525 627586984 984353730 987591446 146008712 422740650 123037069 774658474 649819595 702137092 276681270 13452858 673473804 758622343 445975529 402893145 651390932 783483987 411405696 670872402 882794798 764018191 566912012 628987324 95789304 154834863 252200114 410874713 174616281 419727015 240617950 183894050 66975593 98169979 66017116 642570386 274658582 285157748 667215617 2915122 789775475 877678489 950665080 203184736 204006348 259826787 820200855 175015405 643770328 260904597 357426342 576309854 620106910 48561385 582331327 120719049 912774034 286269931 351440678 370984164 269877722 714808876 394189459 429462958 428916240 78393016 179557454 106359345 123198218 137108891 849241194 312224950 634344113 27461938 162039838 644664161 249545921 395793863 972445430 187307573 198283270 682094217 228937826 947936511 535354901 277382482 475731981 789726898 30733334 579691772 313373514 258260465 834895157 752625057 838343240 89177546 552739480 686824688 739661273 541489485 815631224 245993701 66923201 687592768 153135136 905345236 190282923 508435445 382365908 87406415 170876363 77819574 719487847 374065377 892564941 990941077 967476728 154576294 998520499 941479846 968051869 851893992 356451490 465112561 83971786 852606601 392066490 582741954 802828731 640902227 685025988 810903508 201319340 121638626 81749613 310864806 305435008 725559294 915038200 306665401 222583995 944529709 128574703 959956933 512530632 914685258 500084522 467436184 384876582 101675102 749647841 371940773 118552678 836514134 145446279 227182669 565854896 153641116 237556899 8836725 368487117 343995635 73490508 530806246 219777814 520303068 468497683 134230791 506466365 869980861 170453636 237453528 175807217 931107747 995061444 836781472 607706565 884100887 536650025 334483808 295533376 33306869 391687185 65222195 723946240 460612551 38261867 144696947 990482887 780924839 258970972 391787712 120681748 508209173 903966455 987760739 698572767 787617667 16609573 475652180 187166244 379583400 657230118 734227654 721915290 428272027 681910301 702490672 958161527 259731437 982161291 926456499 332323060 628337802 289432564 635083588 47167179 71464119 127566988 752613294 494420189 30686624 829258974 178980986 760501560 146552564 12115513 212423398 720937334 695356192 39627615 134034219 376098841 664720065 128225894 876238696 258674741 716762368 393882490 802348567 537900482 978959628 482989389 360706002 282365151 504685833 955997949 776726387 97836491 400638962 290861876 584468596 324132772 491413638 625819551 997782162 477230446 163567703 434881805 495615196 337137491 948979828 818095342 113384619 752136392 73861934 861586329 878436621 834725863 446107514 858235904 368407693 970602801 817109991 945073133 533740212 257211879 261905967 119664149 377173416 489409840 636065757 385901389 342239979 605025337 203374787 923446343 503232159 9383215 994378831 511352288 197544315 922703523 983230033 296180592 230105750 705164790 670348825 659095100 765735895 175002060 111030315 850245550 782993106 480899148 866785137 246952736 176190303 841902786 119007 5665568 803857335 470564804 516072004 98938691 803168048 716966651 49748796 511867916 916606303 470185438 351776181 88939061 270832112 390810182 298310462 628244828 899985872 659998762 748275700 707181608 529367596 208938674 627988362 244253102 771845111 604964455 724562819 394682404 905740836 834575053 225391674 366359887 742140855 649459819 129828950 389209932 196524245 420817283 617960211 509995136 277113411 608665701 224389334 856971111 194869660 129944275 516234932 515886320 518558763 519189457 697253435 805656910 766500098 683546280 529823010 835305472 315750222 362944480 973930291 232339662 174973719 922529875 529054290 657095542 9347028 425720625 303546888 413290217 98906609 329752815 487433157 415743772 895505375 422298919 783005661 30512447 955413200 442943753 620282906 66009526 689069322 171957473 720514913 175201264 349576040 647798064 140841735 555118245 45902657 942171252 675556112 366781628 989136681 248258283 733705258 513492700 881033956 935866984 547526705 478355067 950279698 32784881 941518465 883080458 418115140 132384088 19010033 933861598 735485347 670484744 613956641 273940076 448513033 395739834 968131266 306763758 419307075 947869347 518067565 137148249 216923356 252655150 578478360 29066696 510285726 803739345 1971712 564573886 985571861 586961667 890903430 48366991 911288585 198425983 927658831 735583011 371823179 940142530 440329752 681496367 921068432 240014565 265372839 388608745 355363937 337712568 345994145 593916210 260362096 786594321 902202283 391601605 389085428 144544168 573297328 440861685 403377064 840970555 967891360 998112774 869859151 395855040 628553357 962337586 942756608 378769770 368306384 976921257 661667225 511156078 728259306 836221231 274600507 588532229 972150914 529527772 916141115 856649415 792374730 30095036 558484089 724498656 177626844 263108122 957346709 712292942 606918818 476064195 65690663 706352196 54832604 79060526 32381802 738197566 33616891 26510477 565826742 928656775 883937485 920381917 984874623 431470754 73363099 872284690 356131409 411373736 284539666 629841165 195672291 214885989 101009360 147089489 320417807 113494580 203736608 810919269 175747906 297181740 563596224 497832804 803353257 717229219 911548817 455503554 712346336 981602634 740682433 430691470 409438886 353896835 691974363 419144731 762256957 40728895 779448097 737178162 103601820 676893868 330957386 237533743 931520786 56535917 920472227 558489120 666247250 97666369 302018142 814524453 578322544 723438843 584965467 426137926 928663198 891704040 507628347 622166889 76993858 220391525 296671831 444883316 653715205 455259342 6767979 294915250 906540254 441067023 994413231 347880422 376842181 92378437 526452716 465336055 58191405 419666676 637226024 410159659 655446680 69856003 24782879 942512336 480298339 167334008 22529165 104195714 682750127 272881614 566906603 939644506 626279340 630800796 665566565 474123188 430142008 462221335 784409396 225542638 345063404 194796048 126290908 960607899 62636605 664156119 116808884 885002265 154641060 506960438 837168597 535997704 125399014 223546527 268724743 981666391 831684692 23891427 720105946 669156905 828261786 891385016 132142646 447194137 908573802 581290343 628813817 611880939 515169587 820320242 540018983 772482872 979141396 446801136 342052322 866130376 726821332 833675312 473088446 406416200 569131630 458728391 903602038 446680943 115978816 812958137 466618132 769847682 77312226 428930992 945999765 279493108 699350307 99880065 488613422 637111528 519313748 224014309 612084993 342406469 551399119 704305890 11898742 603699468 877093442 148890321 400320915 632724641 48068616 699338603 752021250 687860561 160869422 225870850 321445531 687594180 528333630 285865709 949520802 181620885 382046268 66476906 166878203 458731557 458214645 603731225 196131572 42166925 988803405 960082154 374894817 114283852 587929204 615196936 568566727 831680422 35180755 130016066 326419385 750148584 328958662 916779327 490417814 843440513 97753556 991623532 130623601 902905505 97128353 581082343 519806832 923952096 60159800 24025119 364014788 925703246 268273734 558995206 495916782 607807630 209543527 606480125 9253371 432414801 991159796 807142217 764321498 233457075 736140187 40371307 159375916 376325527 519841461 447016598 918657339 61982877 925810431 542549132 201286723 473979149 419028849 172251222 592841778 525194606 449183062 141301428 371467675 87199240 901471437 35213906 541351010 344153345 117348357 249784622 748280515 927060298 794685954 319058788 945499789 437220579 971104085 565940839 681889458 455578475 121041733 997068763 457880155 884201494 284932487 98803006 155014394 921905783 712074696 595681670 3723547 162855754 368929870 196969150 149210082 681020058 36766286 97895595 769521463 145643829 276224246 541061918 14930460 823035525 915557898 935822571 248880645 358414686 381345456 838407333 226992089 974117652 750061640 938171589 617727765 933918061 614932818 795316995 716032304 783556483 575659372 741005233 913558225 757278051 749619460 943403966 49580846 414419866 276614854 277245763 65376519 122947814 80394834 789136723 524365685 17341871 692237224 287129336 126485718 543868520 820194723 872219904 51002362 229133242 614501477 803615143 82853661 38744344 989675232 757800221 967051223 341410081 974638815 422640639 883789327 992223907 813470961 379885741 520429050 264480536 644717160 795617807 786218347 102078386 196194511 745547223 196960825 137114478 306477771 610871390 483389907 793052324 372706866 566482375 325851882 325640064 492367808 74512617 128308108 813851563 21993552 399703344 684666681 152848588 875844802 617710082 544098166 315733264 161527731 691853734 635696326 671351699 240990205 10522790 914932298 857094489 919384603 98910480 154332499 843956194 554277255 38950951 803557639 203173884 15045422 143363240 568422563 803624897 709287905 420126709 526949690 503851210 605812253 787199161 133232833 36410265 291970600 951945280 800876580 176879999 406010044 347848055 316146902 348537993 72726792 807861614 212004191 573368929 427373335 803524887 921728063 308616819 685049336 950126204 560933515 839736434 691879344 693810648 596691641 788151835 84537961 643321837 224285576 976775129 435411944 380322270 166369733 804528973 599285769 947595911 478860075 806086204 223911728 958501769 389771779 372765370 765636333 113108489 263885978 886930991 824711519 708088775 674133393 200493633 762787812 878326378 729574126 588610091 959754599 119284244 713558199 433501367 346798282 136833837 130601539 170924865 974008183 397378980 410019327 553221367 822980459 3900054 604132914 203389938 250586670 945232302 527838434 141644580 522755944 863415256 43796256 132386318 241692781 784286077 24080285 317031985 752295217 732399250 189453526 755394970 987272740 66411300 440444168 529598023 177394120 160274159 373431567 378966088 406498629 779755219 566607736 687481766 913381928 312229462 219164477 783590137 668473627 717831019 396241112 176495989 298812717 572833785 946378854 847896267 433014826 148888870 106438451 38171337 264985248 464857067 56068596 414085072 765366664 417523818 602332928 170737453 545911389 705352586 929765266 677749156 588419632 581472706 196518314 999914297 537073683 762034213 828528122 912300814 469060714 378831861 398652649 721251065 330363792 445786704 340224226 747020060 119807363 722738182 928783162 803785919 679762498 809181399 944747720 643214809 704648841 870820749 893745703 786800728 201912564 57718391 701782087 998113285 517267966 880249380 545335363 892762930 970835561 838752417 324529324 289377153 543070243 893129526 9187957 377931260 149743067 14982994 703237351 479504036 576462097 942576092 627891488 161085475 453282750 788391213 755086675 341343901 730687208 646963338 947332972 266712637 789569633 461227873 379857892 924834942 94415284 947464700 710902802 627587089 990811246 30232962 855914624 577540035 603001341 35681744 696237673 340852399 535185068 214314764 435430493 594094982 492620375 222158396 960069910 869137916 671971525 418815956 977411369 758222044 826895425 287697193 341779022 916850806 902513003 495257229 277066602 699970333 695858778 132274548 479510681 400974513 806640803 395174712 329383408 653447958 898800742 691985051 489460235 651521811 692759074 224192784 182433082 996098997 561392620 798608512 805441843 961139691 273948630 47109762 259275320 354861752 790669561 516123290 327506407 947294277 783403661 103308497 538478030 381628173 181080810 838335899 51841973 527312114 45087369 316480463 182796282 679785605 912633854 828699881 595970877 977446023 239822454 805493620 646530876 486242139 772923297 18523432 664928347 604581785 210970616 387180586 657723589 581313561 470041355 136165277 906151376 41454157 133879152 763872186 350773702 827920992 783204794 7340328 900275145 527682127 319153363 109344347 47406718 446484906 426464047 130983905 313497783 372890331 733743791 918630547 584657402 82010787 326683914 905289027 290758461 898099563 902777934 537392899 393733473 691956002 887524064 132630779 469525914 697241946 441486798 956846669 270508450 69088787 680966722 284978491 369266987 572651508 518714236 625622413 985569468 457000781 91538182 945899243 801966066 48781925 337260041 803984064 654328702 345898057 166039602 483949923 742305757 117384037 189202821 396146541 910150181 96907351 232752639 824268356 300405450 126466118 823990022 335245745 307721996 795022501 778704721 365046987 839562393 771762793 410163486 392863616 854665320 510907315 937263793 130205073 799977108 161697816 793589582 522936588 335239483 512155561 377498965 949919530 108663829 319343721 747980178 243853202 329257936 170312983 247867725 846262776 311583324 60168734 511179073 683268378 991128534 575516697 509359458 233644235 913217143 151408733 770958935 370947706 833752928 23306633 636395301 592478021 51280068 931843723 774656324 783099696 56201790 801597026 168342660 663573504 806992877 926558712 291570171 499260786 822161799 608135830 206653956 497706275 761602136 115787516 159411597 22972174 363170741 397459758 981535589 494091616 975627513 918495473 885103350 42499049 622485016 171027254 550914093 263805264 181955661 835763060 505317125 891101487 782324408 773108714 66543046 86228763 935166718 481096328 944695096 698741599 71644191 309608618 612464790 631355671 541785710 378446626 627761032 785372879 626102800 558084132 235859995 703844367 146304269 318196006 663450211 349904814 802884007 564415339 829554615 223154021 3129920 361249291 4414391 914214738 545175866 338388621 219470102 385809019 410534529 145615875 607159300 165129154 437131877 697762195 267264825 768582202 146444086 911818058 23392439 475305003 37373270 2801644 54220795 376009739 914270135 966915536 75421468 355536360 251762932 708202979 671467912 822858058 684765963 812567260 625598368 223688550 626390940 381041778 503390100 978349022 294011408 599744000 965278849 272021912 45841717 922883441 108958547 261138746 351065484 127883431 421975871 228818418 657421382 231338416 392042376 559880657 229358678 644347797 947813873 310681701 362768298 670490764 397942777 588678691 828196485 722735934 551076174 411160155 967803956 32351066 795932702 662669135 455633897 506477208 601970457 250711707 9546984 650356437 865244377 611426693 673659720 857561928 805421257 713793040 286101448 987361546 710789765 515357539 731054193 993073862 232633468 737962913 866906982 293037135 745920600 450861476 982256739 991391133 764657731 319157025 772371653 74669049 628794042 739181698 87549944 113810497 99768947 827056491 812211580 668345750 96373627 751980061 304088817 376590587 498690951 434296460 560777832 606067209 164859655 128855347 357845921 187761152 537422890 539507377 528192298 434290633 136062857 131181766 696758701 622655605 128104808 285592527 29619702 492030254 629366215 254290658 689076545 665416116 59229283 461286588 630490620 491715755 943854097 864472870 434340226 686843902 472914540 415675775 781693603 708347844 894780513 21810693 876289083 387257746 915965231 208437956 895184827 450386079 682907805 316633781 828428460 809783475 974075424 886814896 251744229 158081715 223719973 136546560 836566802 585296708 10746916 712444605 331029414 177469685 953643788 277835804 760254181 137925866 260940889 15825404 208565787 629375152 834142920 849562703 562153020 783984926 797664455 10268208 549608245 605007598 438814857 409229585 544105941 825043870 859637715 455456227 414610019 379221480 933427500 717204794 836969851 440550747 842486503 121544645 16567720 479652605 111186836 575531303 132269437 441902592 19164733 249117661 519864990 617037750 618361143 127123002 821596386 52836224 190011595 832906469 118178408 179869332 131876350 842594001 571624240 500395639 662967991 295812507 165183542 653615717 584412404 35260491 859147565 577880132 884375888 239252413 971502012 141677986 152085344 157892981 80121640 56248807 879242653 476240782 93804094 113351903 273976073 830558383 568884125 39890175 433339171 90285061 22543739 526033937 493180474 288490872 713987512 2077050 151759856 720390621 176792625 264241219 429007871 947239547 519431802 470972836 820201915 102909190 186468656 963993086 464938139 382026603 531739457 352474541 125510147 983009978 535544639 514817907 159711569 342594067 246871947 767859532 870105723 537061931 415462297 214003645 307185593 82349946 678324927 122382253 887164496 682917532 908974026 71569816 552449246 754508304 537353702 691485373 239398134 172889450 64673828 463176526 94325851 47247095 66130823 365103200 145067587 842854890 90424066 100451167 696497670 340217804 5074006 621403991 848096477 991549799 361677646 521871239 721688955 603283385 118462983 627177528 377011231 926828022 489852855 771990457 939454887 325194192 193030723 950226532 502113067 282550349 123544385 814350928 956433656 168592097 794213424 780955427 441398697 162031844 386663589 790153749 740050926 952425085 985436395 526539411 684185957 656068263 981558845 833388439 7114615 156374226 920470298 649669795 10476204 434779974 806995983 213281682 13635366 704638885 28889615 869399474 405923371 298544348 66516856 304422775 762728609 359547106 168274635 571241678 280418648 977194334 518266094 749153921 488300231 933465228 928414193 297262432 194419664 855068952 892395365 765905490 182935299 500726880 405864766 967947822 125840318 50591185 708668847 741085080 496102176 396764058 896634944 756974722 47028225 834414431 316160435 112414627 66788644 965825723 112995937 792037695 255153708 344015949 978291067 202578425 358930235 598822510 847202540 23161726 988188062 556519772 546477219 302992948 461539076 820689912 365167492 870749386 451810441 702069297 846436800 966351417 27617135 125135614 615115179 199753250 923722356 848422311 18052354 673779616 284740721 638949221 527094357 450150710 283428884 572828641 123115121 141137186 626601010 739507341 246160782 508724213 36145900 776339703 291610234 512459381 450823587 650776942 458011417 961096133 597004995 52669330 821603335 139614954 612608668 602243617 612685222 508119580 291534624 693538913 911467104 594313523 752139208 528925529 599895165 581310280 334787464 354082313 447693938 122467572 566572220 981468591 909201946 143820912 605988652 51360226 701849993 538297329 575402224 181186503 549500519 240746337 644448377 798162728 41068877 963372484 838316805 412586714 474723233 581484178 634234324 239561456 308016291 469075631 374878624 334753038 452445013 875515163 458694350 480928754 583845503 291022 45680954 528120205 997693491 186339700 547761212 744886128 110298794 990663213 388534883 254301866 420994922 878740408 351700251 746295250 39373283 786261980 691226397 49292288 61944481 323169776 256323867 391185070 143470202 461821076 775004809 517307419 604379192 547859300 657269154 456583492 844816698 327973189 435566240 782053786 929176082 634830511 599969066 786305471 792889591 294147154 992648566 706917621 741479946 362330341 192078519 967829850 693433263 941512287 118082124 370761626 857195022 955501060 190747840 28161140 976992007 758637664 23254866 846183311 4876146 537900656 441394820 253441003 357067826 91886557 743523047 146115822 186072233 671081286 970743728 462158820 293145215 139315777 968663965 582018335 197329675 390091288 944354326 644092635 874116705 573409805 985143584 111490232 323485767 106639769 243583244 265161371 505862778 807309978 430764619 238798735 68832953 4877263 924715700 149919027 454011513 474695677 99163206 83455690 187158433 587782266 487647172 500173248 264736254 731006290 577613109 811020842 728869598 765858387 229243474 542533219 524042737 216071294 519223492 398931739 117216705 433389623 349011220 405965105 226051126 94288129 558388208 346721733 335336003 171960338 195762704 702884150 44150827 687865362 559680870 405132197 166906022 578754442 715308460 571632411 969723784 440974239 320460591 353827939 283522310 136007767 361598447 443886989 921089825 240304369 241707572 321905938 905692898 377193863 400969706 884276221 589542041 595594612 788648784 687279821 924688967 963714670 924731317 641908011 203782282 190767167 513457543 881354860 926673016 128638753 198601866 361844658 726373761 147904891 914302955 416559032 808963506 881135640 205535535 737768396 23197261 500439288 531368610 863460913 772285674 677792920 691605785 781071076 219385863 488845725 616654669 293921068 440327213 945841328 901994603 914831120 196444948 6090990 761482718 622773890 107020169 609011954 676323677 700664309 394359774 607987384 689206187 809053566 864987488 441878707 784020869 81851109 919432427 849646632 793011229 705002294 697596970 748846618 540939773 557880566 527130222 757621717 817397297 270252692 952964491 783396349 513596180 683530811 360237906 779633654 628589046 603264965 107806125 583147500 713788307 78942489 101749632 186733697 993565151 351827280 163509799 525453004 59836938 622562246 289206314 683179943 215499132 887335262 861623484 391323576 353694512 762147331 741381390 248626660 915792761 324705877 734050150 489601512 174965217 748584661 727890957 317712521 363663564 192666088 235625209 33941306 31868161 917430857 993414218 473369222 651307821 751343048 268154603 669923439 735584874 830084253 928045136 859295703 56252390 224314228 809684788 871699062 637022514 220779941 150321615 277325347 415128239 889484577 297549648 786965286 592763182 141901276 770021800 300115524 563268603 17141658 439578354 834782099 725926503 709207295 19932631 914574760 194624746 833883731 630190804 296230157 305076260 614009131 611365279 981864249 65061780 519842788 349662993 245587034 202797437 425909827 673942714 29526247 143041163 566168814 194550153 646216579 35821761 962948796 159869710 407648740 565926401 544430358 773496733 547548889 194936227 858946824 193019172 35016052 745483608 399188886 879336248 893882965 701692370 2145289 240511137 278973600 573735325 686490579 564707020 474935829 134014954 518109218 547551230 824878096 35906764 859824731 278827381 207336557 731833210 803409451 46163392 709682949 211602906 553590853 775316485 270844155 157574694 331478454 917569210 154775675 542825333 662900320 124832012 183484772 272560875 442877873 214400920 354470285 942188810 283534340 968209069 831502916 938933224 64691952 100761312 969488575 273458428 653561151 40850693 621633383 148946106 906228121 747963227 408749339 95415646 667077957 925407982 356387130 595332903 620105543 527353479 241557294 227120021 398949906 194305506 552857951 108265196 140331769 992412797 658876716 183775599 412455341 806008465 206742163 397781570 4674765 514683622 864116834 748722054 687109360 936547215 62866943 826852379 56770284 778023810 473651786 576312339 494884731 691949544 978206038 418055913 468270142 745492236 728297301 205777891 564550322 540716891 301857633 311151890 166011122 107157452 468424728 301479559 302579250 408581933 212853099 838494090 369791574 445654837 20380550 815842095 23824044 797055503 687184717 70803558 965307732 409491440 948368275 94259889 321420867 620801379 532729928 653066571 568536818 843468921 882944357 996323122 218911319 313261643 439592291 901353749 602620007 466156103 923324401 259281599 843066677 135354681 757062929 583369497 759211200 385558430 685122463 881838979 21770731 523792155 401520727 397496851 43957960 711988714 981986576 989752107 674047169 995241814 622745196 111492207 234825250 410003859 848396606 893203436 413560746 928181903 669958184 878438070 185974704 808442775 874421801 374490858 250718787 899370901 803584069 215260073 599353294 824875942 540420994 411067948 823853912 758668391 493328346 472840102 274397609 96761775 424526524 423834574 865186511 82865803 612903945 831834650 863350318 453633610 718034284 300715419 718502569 789521654 172346056 684294562 405878811 122696419 562570028 263450469 675431724 827492679 29736046 140982732 540226453 51493834 190473604 63567137 27629897 305205055 1920336 601321615 454939561 759803288 230564570 685180548 615094222 156264373 227219230 537772184 437382881 565085198 537013699 721283324 974673853 116875379 339714443 42766375 436585050 104910560 661480924 179914485 348610461 526674710 335580683 535222625 611090896 41160182 484039647 413625346 108034991 328055174 858127720 766633920 748943444 438309678 956188787 183987345 327433723 946805760 207015507 765039091 138861477 409991212 956978855 245576475 360171866 92137656 564634242 816203834 47094621 892120084 381925008 287013761 288617092 352442713 167558269 385747604 415342436 887966327 598241086 807482537 821946420 26278320 615009165 731655758 22945879 368861384 119863334 84153014 41025932 701457086 63959220 542879824 463050541 673184178 993343481 842854853 539983721 308766437 859145539 879705535 389623464 195466209 749129803 182264845 41943164 352694681 108572952 154748735 732959945 929386330 383723021 247273454 883722982 642180872 210648560 175413055 283544025 191373409 559053742 305225285 35181061 517003005 407900018 222891927 658180331 319219064 352979421 601307681 953178583 533646739 682682301 30616698 80157526 252155986 58848864 993621618 12958846 717893810 236266241 17221721 95156173 902202182 121169205 625835014 515076048 680343456 380007133 804090453 279177022 127671748 76490887 392374007 688456152 235581977 441652971 605388865 734997086 363414868 804670757 435254087 195583582 910666022 934335643 926427789 405197352 952463430 368469676 706446881 985328989 695258155 112815765 838200984 865041416 310913553 196940619 950076238 64882165 157527648 177090332 723294197 949683218 406640010 84859261 464606415 848580089 119703354 544292661 133362571 150668449 640910627 918223372 88297197 353380124 285081611 63944639 831132026 666527917 17314006 211413830 212370338 731431710 241294400 918667996 708493319 130617479 629035423 638418318 958671920 85848412 952214887 988881338 852574479 679548594 941577778 497785728 977739190 228230897 300369945 74303200 435561575 119031616 66869537 577636182 32100870 584035367 418203103 873497572 605586019 579697704 218791494 559665907 784137556 884391000 907138858 816543451 391605235 714996045 943436294 590520434 628072476 962547407 885459728 523621870 929034596 933541697 318771256 680161837 875032503 584715566 174909350 769730921 304622267 937207137 564526751 985728618 612753908 801705492 480991440 12273317 437348629 419996043 431493866 433729251 748157226 498728070 990065889 937211800 748066780 119414321 882432991 402641351 215847700 525542462 226800950 360078804 100991626 259310124 688548499 759947868 39042938 899774418 287993919 676469098 674959588 935723321 191892091 443446785 814606664 436210263 555849300 569020525 195329349 494853112 66987938 268792768 827213656 409419910 857561068 694793162 31148783 186942848 13469131 808596585 913848782 904074107 831594884 434348602 727849262 622695712 468441220 932882234 271139866 325345784 868590520 704735191 518733574 969825671 90565129 312599488 52721659 611736592 563358376 499427818 278116076 958078618 246105006 777634774 315798179 830118128 621674491 965485491 445365979 49361630 849402276 682026717 120273920 887626696 885252566 286733463 679920086 440720243 410017392 311145417 277620831 611077625 424614076 255346797 495275980 706824846 323712979 155040202 762284435 541718792 64254748 381320251 777643486 713960806 421352127 249956686 168640875 782553399 805232134 952125306 966250852 692580602 411678980 332153694 417131313 534989025 594861471 799887403 683444200 503127140 492454408 98555834 184044059 498910159 198728951 367633596 465278130 535763610 667829341 840580409 585019005 428976879 418431296 942394902 879502830 399447741 511403358 92933794 912334014 698148994 871735068 942646449 898944928 745932148 162038677 900695733 976321917 694111737 831917389 564889968 204515374 505479855 227982217 93468187 700971122 318723394 808688268 151041987 954111055 783818923 916732964 354397717 213005202 753981779 316101530 183606356 380419609 759988786 252232003 694741816 664322905 825304903 145409545 805068537 253514694 474381345 738408538 538784736 612713811 68943004 976032317 818767435 98134569 766201088 179067339 212280950 490854766 397112398 251953551 53445930 677962612 825532464 835280325 582468965 827466979 228241331 854734881 140344340 426011631 429677939 143289383 178025732 500193174 413847648 81422819 18136779 985131067 218332168 398809226 442678293 263088757 784355215 817438093 796492333 146350000 584598763 738306665 985824583 492922748 178660578 96261013 6325861 672052831 396067144 841805244 706854039 266205202 104430235 484568050 867608652 701379458 466775446 186668984 939852356 420467572 90304921 851617012 157585104 219772492 85646912 184634041 861636433 758151822 880282215 585540749 919225493 857979225 636881007 126546042 100528841 45399088 712380527 486496457 222739655 642441443 786205919 785972378 827602088 239119046 161185563 945522382 175299470 504632053 645600390 152014288 896108090 785832789 445924602 270226200 291467675 915747715 595788962 599408016 141347667 442436660 649243055 111223762 643424655 557344244 830557265 697195247 576063741 368106699 105466890 386345177 565886781 936068169 243688989 328501992 215205697 306853139 829730327 149264869 990325443 100641213 27394804 103803391 875345027 576449833 940989156 400319812 296574568 297587303 570345658 15848250 524630006 86890180 362447537 439221840 403868187 448182785 515049648 499107329 822154985 424429019 788609255 707131129 209107571 639289020 532127608 86683364 146623398 139556476 300675952 450578089 728701886 724045228 12738248 412522545 78156055 208568208 455157555 848881632 500866641 353616747 117477730 100657574 918318861 137383840 241289246 480007387 589692367 470376992 485441664 990834945 704221019 261881671 839877025 304696673 420379243 672143283 975500582 498223126 661013331 80363570 652460178 645205422 121114539 193441859 704679366 938858876 991202435 959905236 357325281 440381679 988548777 749640190 538848709 713384625 774395131 747851163 465704611 422949260 161074827 289993733 861369402 768556311 206513727 926833663 840676408 208019694 83494826 715707413 934001672 229589918 396131180 992369303 49162045 938009979 668627666 284250584 491796304 973737908 593609028 909183895 622450977 219486121 627292794 554813324 275976984 343563104 769612696 749329237 975447803 696127814 362033715 184911233 753482847 194083779 561723242 745974662 941237515 831996816 248012833 673037704 410863914 373947274 586941173 372844652 694670605 47051636 82696034 647074718 30269425 490106661 128302284 141511324 2362350 470557388 152379887 238788173 547680730 602082594 749406892 266291805 845949349 410483570 333033285 963227798 122688062 762996517 673000065 292680078 423443460 670323135 835989524 513401164 394461831 678534953 992210147 465122139 121944002 980119055 48882497 24859876 60808904 133462400 875467723 781099637 29222814 135517236 358104348 82786659 382928228 9574076 62544379 206520757 648862306 932027066 678323893 943640098 736654910 42075722 44919527 510157551 729251735 879486617 575863228 122534016 10115741 217103304 426911180 73261488 497045746 643400463 843102563 568900074 218614754 644254806 5468963 627278950 500246872 379487869 282132866 771609274 517663659 33579601 403571322 521412291 894633400 358545207 334000562 231144150 255115879 686575724 924823194 679558919 302039325 796155306 175468583 677910073 65457529 67624376 241303720 228642311 685012280 652404032 239972370 923495959 624730869 358971989 501199285 617870321 720236648 683800394 153500715 906044392 938991847 493156152 697301565 180418285 22766319 863218891 248088877 748378119 391805036 627170110 743041424 832580229 482018909 353642257 704867009 418837004 791399832 782259301 274916378 826583360 310412 444287354 149804602 275849677 862370235 481644239 704663386 879257270 186765547 875006591 516944326 982303870 342637348 759206762 90258217 598424005 393035338 12067401 224321946 623988424 735308202 542035369 307744416 175742344 606187303 354423390 441047184 635338567 497880751 879018178 268919956 324718532 900875140 34436073 186485686 521785365 394302398 832434707 379385742 387524193 697744351 301096576 826622221 824609910 422586300 565180426 249486973 38485674 632130229 291296945 672392102 290584994 104350383 301667668 224612399 749751641 380619922 311997505 911980903 377194988 397283424 791335999 639786582 397807749 122529817 453110600 230746994 173150406 338348272 221181146 67883289 698213195 936373411 969145263 269812559 148441426 351460527 432170841 317015237 185113186 572118579 991270748 579266288 954454838 833592321 674593716 434736542 943230776 720697456 449947377 954238620 73737466 864241118 873959747 724403993 444449385 542603234 385239454 277674762 848605902 205535223 304337298 957141731 860854900 86464315 665607560 735738762 386786270 40697939 249597554 213987907 954879851 857895273 270367286 330376546 696928746 133373206 405488186 839614074 569869301 52206731 936837313 884152132 910256938 687368594 832465724 888628339 735410484 38727284 934495991 627608186 883044773 599466391 185623515 699838260 438335788 701463742 993619606 156487976 294908532 81916158 334825261 758904001 984016951 839151018 597955057 605216063 995163221 954178908 664732387 952056386 53914787 659792508 426433082 539562972 35178212 792699230 124113872 631737854 400669786 912368384 821792717 962153045 959083217 463739993 121255611 666773586 266397329 863593564 711148029 678074991 804019220 113669296 51920951 318469729 894909365 259328281 831362089 943326423 209004656 649842800 439112754 308623860 258116476 405150841 587197127 919405558 758949644 844904307 67680210 562496179 131578619 284121637 190084964 614315621 553132798 906385089 273803873 942270901 591802451 513675455 756071030 108053779 62784176 650934406 391808483 613613557 27487145 607365423 344626384 983813419 50291825 305044131 390978315 952724003 523157081 401139988 106135608 709381109 918692861 521719307 864309900 692865314 3288362 778694235 761223231 118807112 27729165 872467049 460083981 326740503 534525346 809892679 508490084 130600952 484646980 469633947 930434918 772607605 614688737 822315445 226257533 802749414 480211662 462700394 336977007 165464353 966165600 700194823 430166430 957407918 522698435 562619253 976375005 529040140 31098634 718424127 411547251 118116355 113951221 977076133 700911694 165661473 984155672 576545587 575987092 555843380 638338808 431083791 544853925 634731471 708581105 782566590 424018705 261294209 148255077 673633876 122680891 651546125 472971626 348038214 474173892 523349551 623534926 387880022 720253933 547698173 14028685 930588279 240834269 928152174 364084168 238629398 641944889 612114330 518289370 66370188 406868557 430079493 148429732 96628271 613156217 751668304 482592669 441258512 439338981 197520996 779767834 242359031 168317020 580420201 161286865 991369819 328878785 415199072 610699402 581088648 686527382 359094916 713265057 45946253 774417624 460847782 968899929 673244045 245175826 770893656 132157164 377845150 689230109 622088935 586170887 538819919 555756627 496663794 190835363 387028546 86615237 756164720 924630429 692309078 200114946 599387641 6604712 663069587 109650130 534474881 961594493 621866551 900593431 826722952 16394612 490189929 821924903 500553730 755561722 153963203 739427530 699536515 811284289 181876996 775379753 221578158 951276088 140831764 880838673 939723131 406855231 933773236 123672547 342795330 804255726 406782529 567804619 610287714 33378060 784867237 546055218 90058141 169327855 423746853 778675486 289478665 794509782 408041857 730583034 191327282 23507386 347707076 663752979 216492032 257100323 756465387 32077339 514158717 978486594 774784763 616573288 889875898 943935228 838146738 760689700 821608312 405775632 142625470 621195926 262229689 264793234 82400237 62499297 47633479 633478083 768825768 993693484 496743498 899144493 882716035 201558710 581060182 466066951 938078196 24336994 728123377 841057420 264672584 215366181 948728847 100298250 665360302 875543285 469853001 930033238 417093958 553015029 320656475 541997560 588183604 340320277 246497970 713671824 615993734 318327081 870084704 976367614 402879954 337502644 594634906 543815605 96800388 640789088 213421993 489100869 776595081 153646102 373189777 297981030 33319818 474343367 453486141 967101624 797872080 798967985 530559316 235713978 331728707 963501625 772694794 462427507 783710715 467900044 538173769 504072006 137601333 586315835 497207815 144467389 495490961 584887032 361688679 993145241 115100268 855761672 349337944 836751706 977474683 455096047 764466741 969928086 448287177 40891088 969630482 183920016 173554691 12047312 225976321 633583356 468987209 845422896 775707219 858556428 933583566 70718637 78881839 102856009 415901931 871478023 826094605 935417857 667764093 312244853 331871047 728013755 974641430 2981678 387145170 277251793 480729330 61276168 534113855 508810914 397265400 505234071 318613018 940408640 57355981 361515117 887268984 758987231 7461884 79154671 170470829 499501878 512724717 161508799 637623013 723700529 53541291 98459054 985549318 780508088 870417946 156769237 970388572 585803837 269507180 658473517 604510699 374505376 225017811 289894898 363053598 426156134 670892315 126817432 846668821 725597517 283105076 828731018 896487256 227612052 810643277 919071471 632161416 61385691 689227856 620546618 427569826 732424279 781940172 227698378 301279560 506301247 808482350 993601508 433006529 318700402 526209044 22455102 847334567 585613545 776310400 264184893 691053304 111425077 792125617 652395023 194922617 327371975 598434934 388976250 751997430 130416942 489136815 814844758 550702719 478509837 804351260 714077181 307570570 406114573 776330149 187741798 467051838 671269223 583274321 278176580 841823413 107265575 246412722 874328396 615752647 906108430 717856177 771184665 388124444 293744978 691378795 557526601 925596226 329651465 317891256 425593337 216355735 211879283 310548908 683606491 790525448 761521561 188938991 878876040 897904056 695477302 32136819 164065755 940903752 869321703 955706573 664735344 192155418 184864937 903672830 765518453 976121719 941997027 737892933 627889099 295534903 79283007 351653540 573151450 204626676 695692402 442289577 456070339 70178043 374198297 242252199 833268938 178135967 352419294 536257531 438642750 334833290 375326404 420221857 599285300 160349774 704858331 326359236 948448040 659587792 252796643 275457968 338164243 791669439 739140646 684250182 352452549 359183585 780910631 800305655 172708995 728624864 116006967 688298509 156523445 122088857 154254130 370282751 714109345 945173410 771456157 112167404 603545761 71309477 186429336 543826099 62662357 88309018 547242712 368241057 896484642 616361238 862060546 178605234 627057056 239213260 720509261 516756292 607745193 618993812 941018870 810623191 809192471 321746146 239250682 821951850 801796171 775065698 576205777 698463481 341345092 213622147 402175338 837635863 702195008 787503654 853170557 350792156 76127243 359204921 511003876 49900595 268366307 782904467 385534285 649308115 784719169 577942608 42914390 196859807 864202020 152301098 879210984 979519428 166389923 410120422 183137558 31067261 986823249 222738975 251439930 71680756 174669384 932676243 287992727 758370575 176848372 213726248 944617560 363257554 594005723 311487901 425754098 359340510 251971692 483061649 511160130 892041387 662378367 957345308 505411645 688356456 83212364 726646004 115714950 333231894 487818990 23923815 489126339 488169076 711150530 865091814 593051930 820900761 774267455 776906521 747952641 967008594 451401999 285464058 501746245 313742935 521243416 5814159 772649431 889419466 228297109 783260831 676567888 903960954 750767663 46581384 982324851 673073402 779372634 362853034 393669288 835600554 90212885 200432451 179482105 608385820 401927291 384635469 269441167 78288540 156094458 113575230 330354538 58977039 875535285 246588080 256762102 274798425 318492894 823799913 148874770 546981541 541234924 98599864 964066551 273401504 873477057 419875899 885989320 292008574 347673204 857633969 947805999 985477572 58133032 557929190 166939191 478659739 597223844 721804525 199990256 585500043 441275846 46543270 705865766 134641578 886043713 648654593 679497839 885973465 607322317 91324287 973313883 685174230 811062430 742896574 88217879 710959839 842942678 465100268 391333200 106305485 500946810 103919415 704690899 501258640 138815494 652561150 847945890 831215048 373852142 19590977 654078268 69931589 196243654 475311866 893016677 39975322 227234893 176782712 649631272 421111112 439787629 593453200 137983987 501948917 793668904 306096019 454009940 424542158 729036129 271283636 431368654 611320659 169703273 627083249 124634213 279911063 40529233 62028808 490641855 966368054 14871838 808211831 390126606 276067502 33966694 536417962 45240804 380650369 88000659 374369779 932011673 11695849 649073438 866575357 237161905 188562625 415877794 510589781 52175089 707829124 489450488 563020772 663093821 966235071 522915345 728530476 129155741 44347836 742308860 797427699 522209265 192259035 861029301 973793013 278241183 281275788 53182486 905396026 739142655 442859904 22171783 586983924 785349370 528027856 740047250 139252169 699226639 670032220 773271351 446712357 693958935 905274049 380485575 673275109 46153402 625455202 180575036 840308267 113204431 772032164 597523875 331331025 762234459 631954797 248261281 376976144 818881655 170493347 436957060 419194482 906235345 993890277 696418155 387256800 511508241 988060631 522041510 935548105 965478948 642555098 197664601 283110642 882497675 487410257 348089511 992196224 213575976 581253829 10853063 946298094 521437996 549731664 430157047 461773633 78741870 412470480 716375972 807589833 278954051 605253865 696909720 764915610 75927466 335306101 320842939 218613656 895942872 883804039 383060503 424092687 378967535 452726290 409869772 319317456 413275947 810992351 406588795 938514714 983508395 924320610 375215207 111665359 22222938 418193873 689825339 145826058 498808343 521413791 729387329 239864341 802457561 70311853 678881479 878141796 456196802 459053181 848894015 391536899 542688685 577091810 132693206 74320414 464940019 145638575 832069450 383959532 898858686 52638645 822125907 354772196 766898090 619883551 565570815 464770503 284495241 332036179 433430486 46847957 939073141 222913941 118403014 281724195 307200419 101997566 76668440 71110186 503528456 562374540 979777390 661315850 502484870 996267151 423821024 285393608 289194502 411631358 441699907 672270143 640060763 459933817 489896039 380146684 472510942 549902418 170915998 233260112 326702365 37941382 118978884 799912394 696673503 806832847 48818271 356945629 822708604 892084625 141134787 141670258 96122829 240038335 982665654 920455111 967161923 11306810 382605385 79954388 777023001 104993581 992128816 214401691 83149053 72075779 245257899 29795625 266805414 16402253 908737014 197412804 650675604 61255318 483903497 213377840 437124767 486292756 702833652 538080602 834958073 562580661 712797351 474574177 588344170 655070980 317734926 69661048 169887875 183683697 103369269 378472172 514464470 346057471 81578915 78066207 642131136 672286551 783756387 773393595 126747639 221122999 615173066 71859280 853709736 236829238 368259161 362339666 512274962 194510701 552744313 802260992 834790308 24937610 983407904 989744339 581729628 142872296 119984617 202344240 165474036 191775444 146680909 95414317 168876173 957285969 618679523 284973653 990859239 276830198 466398622 925567282 294839656 432998890 642112402 616107248 8146845 630795315 53535607 615494736 231089177 37240566 972816345 215819587 505069922 456762038 405462725 378407106 202083920 671543452 921339557 92921312 190553234 856826759 439561462 84322426 719035256 252564972 19885985 473897000 202374123 833604226 130809838 907253283 955925721 394746850 281262992 575825735 634818119 929267948 48228322 884220358 264174527 590313262 71352769 816996880 248211199 734194250 879648198 712291996 414067487 939672409 746293099 193115501 329384145 474874326 731623333 296665989 703292441 553306916 10953205 173008235 340362300 478996498 809365918 594923188 386393259 962236445 119157210 879249500 482310762 592151176 424198971 507544905 552799242 179638597 531997505 548874925 674470591 36933637 765819155 449406548 889860754 760479642 251130215 238266300 572040606 583062084 140746986 822404557 83506360 453911435 926775750 782702348 970870109 711810997 600732365 4509759 987125853 912268876 845350428 421593316 884195250 207088021 896970069 934623449 160045772 24047362 426383481 79429321 753031866 677850694 449645935 999326820 435160630 108799848 279252804 671894804 53964095 256388204 434928050 186877881 715421622 94633929 959362669 800651291 180484580 539359715 119884411 387538683 66784711 231592005 384717568 868219245 325363346 313136197 327023397 481986889 440085967 696723526 492244420 523226122 228030807 290942960 40296973 601039158 744184190 120483178 221612274 721038653 893338246 421118333 640073140 574815495 216551471 265235147 886455627 123463415 860435930 690432296 479203400 690236694 976515889 826063086 241335634 869831234 253218250 692535947 92703073 84286971 578612427 586658723 639383303 95919328 673188731 513246346 323946140 760033102 693233077 548383922 13256290 302585111 28649912 744223504 423678651 84341268 468638943 493520003 306051301 268299628 338146850 616088687 829013198 613385178 18278179 435502709 298011873 469637119 266152888 818518600 916363951 669062305 554121880 833832874 379684885 956943916 367568622 457537267 648573283 602034818 455937183 908007405 921898715 619734455 230012162 16709051 57346850 354789230 419793331 726655287 88841843 941418807 589734637 27067711 132132635 605129487 619445881 541762110 582858257 447083543 274671831 153548808 587905745 183842642 483513611 183033580 329173959 199575825 623824899 177359699 668402243 112764750 320730802 904181918 93435682 915442462 778491869 552113084 193269432 244448968 602564958 445037533 881465425 938441020 872030269 794774865 103338215 382805576 797780753 448894814 209927876 705751778 222257668 191598867 194892094 65055150 800648007 534051177 521410084 336694913 989584446 389172470 653795716 77555264 594806603 929110449 736244444 469874298 164487219 281722492 44117972 753552434 555038020 670220157 589720492 372146451 200938955 829561753 172404695 690861114 925468778 333788733 584510347 322939718 681031904 131177436 38350352 946949191 357023835 670164600 700416897 661469659 880197687 620504073 594700515 930883990 340007125 282359442 104305113 449506282 284312516 183198608 561574325 502794831 834168093 854301501 509745801 863089245 739595016 414225455 901896413 277954361 407505254 21911567 708641041 998475185 900626432 635719713 951174556 942736195 753637648 330121791 505674654 335529494 607823268 968944013 487006610 495743120 959122453 796856502 662613043 701732501 58452895 677000629 652594865 390175907 242058366 945246433 19996661 575772965 759316186 451618561 974248907 93778265 253351917 136143215 523751551 7237806 326214495 579581250 897283553 104369657 319487864 778696743 646557508 464510995 132507124 393416471 722475680 33131574 158823973 105061711 514075680 251594688 595996115 815065428 722646231 779047195 164312499 753308802 230336808 374214597 100211493 113832062 802343092 562262943 144492693 88905184 56085009 888842523 898577619 237035866 648032686 391743198 991517143 390504701 501534031 59529852 158490000 922692992 756597190 144982464 151332815 576905743 661789709 974090907 594235675 676648767 85854103 247347894 740753622 108218469 980815073 124817536 992037297 735961138 372421188 830443964 104316856 316856687 202747958 515193156 933518571 595662652 885486268 244664905 848776754 338017961 837069318 57049696 186354131 665025197 466662735 47985449 981201826 567583138 847234347 456186815 172976301 242029649 751389319 530801782 265210653 479077644 170518127 306366082 5426546 27935821 120171120 109331731 185457943 83437866 333732841 557388450 510420848 8884391 551782091 893552226 442632720 525182569 99429481 270060220 218686136 319087089 388540984 63332568 672907222 781423181 832907288 619864753 773511571 735169304 565162235 731955019 349071686 988754309 564704112 28691735 948473237 507798534 614375098 760778315 916389341 578444397 884807979 966089135 707364645 295141478 415208213 643398657 809477965 320247219 452051591 564097999 433574895 921607802 25874841 658906905 633833607 667158979 561386337 194868706 359762755 763297908 737140268 960419620 398505927 151870913 855548984 340329603 647930955 88773434 168401299 19203591 581919433 119910323 103733737 6265412 943653273 389607679 27380580 523215339 438059405 813562451 408183965 219496539 907478986 633219912 177941466 203719391 571793520 267946099 109854357 683617338 670691155 886368995 499354485 462636198 730664656 699974984 924466982 80421628 15356328 550624856 749252150 52601063 558135912 333505715 420734563 494266869 315233144 864702181 459624826 427539069 467819736 364518542 119068723 107742915 716086510 31845539 385150562 187730531 479492734 41139306 791155496 858499957 490926164 574858388 776442645 949854881 806079292 354754376 715737351 555893855 613053010 116878953 523850320 94597988 394204049 638416777 148016000 817618125 602267957 352430781 249407898 818034940 990886402 28431894 240710550 682464925 710652445 982701861 758500355 680252987 431060621 860054537 306580053 703802349 976767254 143567525 491403171 45319439 911282463 160123832 664103776 46008595 222854951 158077346 948456997 163402559 296121256 515665773 251094521 48419103 636709600 538769011 905528047 522269738 775848177 848392805 585472060 131717273 463388085 831670026 492910482 830923537 572665203 964921676 856606810 650265817 239615404 425370151 457243193 697759882 263474472 614108095 191010569 385982629 786128975 101690262 125017495 122484895 299274646 193602682 859970394 554244476 593831191 855918433 924907398 85538681 967875198 306947152 312871034 731978814 162429144 313528339 389445604 879156631 436518720 749305336 625259960 666730300 929037120 824501476 819656599 21379014 872810566 797152178 75214070 592564434 907894800 747347864 35668686 179518148 192778451 4201532 45977007 548083304 275811279 218170036 468401581 856333491 976847616 811071051 278177034 37921944 789885723 918113227 670464467 201408100 133584824 347958666 779569080 689155031 87190695 667260009 997729072 162278082 248843127 787322057 944927213 841222739 985793111 723773593 797689383 816353368 8805007 920404056 246290130 602101284 746102504 368562993 972405020 812455966 897585248 600519429 98721730 551145441 135773927 892161154 520415572 951840293 223038717 682771546 524361083 239698009 356214038 472975424 228394697 6178333 198649401 947564930 465698046 260847730 119786685 747862607 279269301 947017188 564353728 899579230 377330376 23729620 153751731 868413423 974460520 801397550 725060456 853710711 102354147 615084179 202277927 991817895 246189294 32458645 571604427 379133858 861051923 854608509 669392033 845949435 832521781 492237965 922837270 974607861 695430902 372344968 253802335 156247396 383843397 689247745 434047022 124223824 794332031 462452069 311931928 925081265 223859199 499706954 685614672 641082533 773309182 386866055 430702725 584203707 700267783 62156828 330890481 316925907 695925444 610900818 472402045 260292847 849281422 966073337 881141084 845473936 431027497 648066767 573084533 715687651 103637960 420041062 828575659 674809767 91986659 782833358 765370354 278910858 938334858 433961984 783244202 440094655 344400087 544113327 333012236 524910554 512414866 929152746 321829957 144018816 350932073 806837883 987448366 995353326 925955009 385194114 462539638 455783329 721816719 548767929 552158618 884455854 348729765 17127194 342813444 103731845 837201862 270665114 266345312 473099623 377326636 731738160 148948825 273382111 450415251 680672614 583173142 52442492 600315506 899689568 656572713 254602238 935713528 800206492 631761789 611460514 663659740 880177629 737078869 830918232 342635533 969395747 539484812 938164305 2085115 808199217 892576009 392085859 648981011 737474081 761142597 613340946 667711870 688889207 58666195 970688812 931274916 250432723 2088256 566513054 937755821 198477880 194136895 775052664 858122544 43966772 835956532 184505305 912052654 692048118 808296069 850862772 68951055 308007322 425659385 954208586 106159435 342209403 334349874 584110194 795445221 224667545 433479720 401863869 469482451 348974722 805566268 356737289 159862460 64969336 125066470 268218039 450833643 116048791 153421603 318111174 446593164 758626524 566790447 506395625 148550097 66891020 551102073 806770825 719744398 850581166 879888273 739584341 963511066 303953104 536267848 213011916 354797254 79438153 551238447 480799234 11228144 856682640 676194692 435925929 784341474 167250643 430084410 513983597 366253187 562243941 229266295 879697881 687306152 473795123 971809597 283938245 842954845 862309046 943441135 104534721 55573929 705975657 355029044 843571283 266209 934207505 345613217 861534096 379623084 640384861 121643707 466157299 132331963 287371516 679556976 518605203 765890044 107924795 399142426 386742993 779880918 598702090 13087967 629324331 544023368 450418205 824799299 645129162 552325773 24560120 310611125 689759873 774844866 287212467 706198636 710615156 26897787 351780902 166195615 939616085 727295040 868673799 14238507 225822903 623503630 664932980 868973492 52571060 129210163 366511104 283797482 301556636 356199897 857699710 617818300 979789016 404651671 819755756 946564071 813774284 192250280 470211032 170073112 637468103 592076700 840686207 466146306 522530235 994702538 514652502 124257494 449526544 751447488 783825850 93835378 650434100 502350234 105262745 772313157 450606344 233227500 625763799 318091202 715863051 740607646 183831855 20805237 764815698 761922759 901098672 269764208 634352292 666341245 604683414 271091782 517278907 233079087 609465597 909822544 140383726 334805554 400739686 263168465 582793611 752222908 579987058 288762852 232872367 488866607 147325808 581782415 94830874 924016205 560396960 916872335 575589055 769703832 450535846 978231593 996844240 342626578 720003733 61302862 235418209 176996769 406192131 531905206 480056421 681768240 660369943 830238214 803839872 916375851 133040600 139150149 383180698 75697348 613068828 497972124 690166380 344297386 59148959 340849292 480457530 64377695 437950899 975587217 873390554 512076394 273595610 63564085 29961410 545855465 775129970 27818091 273920974 360036909 403412373 337765344 866960293 792935455 924844745 53454781 360116230 457473455 438209515 369126702 388857572 904222363 303110922 704814545 424865217 956844547 250354798 650591683 752943903 980956369 479220324 88330581 551393513 19189287 54449979 574773999 243217058 930544313 277740120 922924306 332399971 629665343 402951968 387591736 452216885 830896679 373469192 202152059 472865193 215533398 149186353 289103734 866336270 152409597 249276014 652296361 920330406 955485898 473806370 406736033 261922298 681034070 60961907 628327888 173780359 759673501 295627703 686094509 970902464 785240367 770588051 823472113 499291505 180187199 605850095 512436607 547008659 50720062 648146902 459213916 429100494 894833102 992319525 171795717 604968126 402833891 524753008 295956431 16577893 755062951 906366134 459841673 905774077 754960174 17089473 531651261 188453347 963914710 811798637 464485547 328713 39935252 182531624 369496537 82590963 285631241 865531027 582324620 460477216 979939147 353639133 417396143 637776851 423596037 635828429 417506885 167765905 573044222 547434049 593589872 979998331 584413106 737823210 866418043 564265123 252246817 537475406 572807649 214941325 170695872 81475723 411247302 519835319 763012247 899159487 373840654 320767752 946333370 309919736 25098732 296513500 86968842 121997382 550670301 371090101 480214263 388845128 778980879 439282220 752676569 962582984 883202120 670330466 555623393 306519445 258043457 758490414 252715758 243775154 30074027 342837560 420885518 738604733 145993427 175549432 401787763 714837516 468215487 20030115 878478066 203337820 238492311 885237267 429109653 648740874 757047947 951377886 557083599 125291716 143353870 230295149 698801765 85991041 275756262 152934794 77780086 62942508 32878886 680052709 189094559 916773050 72741355 950128594 129273579 545654479 321594043 608663530 33295319 321757940 953310149 278353885 864928233 283944994 851077821 607586245 532390250 707284728 401538622 162704898 308639237 856521789 399895708 919511842 251233291 883029628 238665757 158224836 342725474 702749745 684445121 852705730 379416645 76677361 934512820 280301270 116430756 558560787 64905112 110581235 934418809 21202156 771995621 95738121 718509468 949834910 432972754 923665439 819012255 212547441 941534567 71253171 77895528 508809456 128107135 667915033 319934024 36027649 760918935 320578556 224792449 802585309 379429345 980062422 830602508 132967887 199687246 358999908 677148149 428398562 454710179 957347644 417196418 26406515 287240489 956259505 169635812 642546686 583233591 785830612 140114556 455898280 196686897 240497527 982493351 900098243 530726090 795438534 115454929 560278331 266259694 583290287 411187154 323416193 228501150 984904790 926417887 153917345 307937939 580335895 451658886 166648508 869619798 763773580 608069437 37074157 66547185 906602403 869871428 534519354 485039556 913680190 255817578 74430501 56953131 385629179 484653474 725835777 349612518 316376812 99346314 500000741 651556695 367780229 90569978 822434721 517510211 804044426 201788514 727629921 707398399 606172038 143578385 60577852 535207643 801537846 84312875 141770656 909120668 120440273 535732458 264149338 326922387 474463012 980303048 487184780 872080636 139005656 859242899 239842911 589906442 402164152 382488945 64819311 814958520 75246249 557565657 539074552 610661597 394166466 989154819 110912802 829713590 15100972 205862340 56280016 843581374 70121363 669519900 34938946 676513887 173328355 711840716 449808421 825977410 336809307 642073858 476671723 808958215 299667480 198881345 833790097 175973429 627286524 403633267 675677038 664617224 745250268 958946711 415648538 708876717 555161881 949815135 253827231 39780526 559967590 851216112 589415190 131352936 18981790 992266978 333286043 72114870 484518635 56524085 952853776 569267412 205002366 561709478 1555102 434622622 423462546 563658921 574749532 889421096 197481093 705790300 66213903 168625534 827880907 721356740 146423074 489330344 762049762 642541264 970709102 626830342 699143174 571588318 85659515 463639384 957310890 838224896 154203928 753709691 559457980 685148417 230597251 257899958 926877214 738721563 476871119 52865638 164788264 34881929 613849766 99574332 792007450 990906685 267992365 788542100 145989007 208153583 864926044 704984268 489313702 488114264 839394659 751028465 582987431 825150491 418782272 807356263 208402401 458036071 965373373 278337733 135619755 227173267 595551470 724249754 931622474 947569952 727352632 699129713 224684403 13437308 479031179 371808192 374766105 35939299 384596786 755644908 566454915 725512189 88929060 101611059 750877485 927525391 266497434 332407272 48007500 936651548 454906109 576355714 999493564 935582372 476073036 691232670 845359061 330070587 725994012 330188148 510533930 540539919 412300430 699954976 135252403 699481442 832126811 262300538 295619451 446252040 334470043 717870035 765772075 995374371 300646226 48173324 124082654 200646896 116667944 885868368 877021747 419410523 142303933 40051574 343326412 337796042 815600072 870894795 714652928 6056281 790535963 113474878 710250225 655741710 905715159 113613983 103177710 602543567 731905633 304140496 433858427 927534762 228597909 159221544 748756493 902044377 55249498 838590342 397378222 106911251 438214870 884157255 980165843 226888375 570134993 658464810 926411767 378974415 674841872 754373430 134080183 137142083 526996065 965807779 339624270 382359875 138986692 286724144 509870723 421451039 307011822 160721438 428264266 537830127 706861841 825355781 681819086 584406290 489935456 975544295 946708973 836625073 13388589 235078708 925800880 142577791 296896593 743644991 370219367 102823596 506404569 921949897 165542707 937198943 209090024 425657081 681439533 465791430 305731249 599807073 797133104 469165139 627793943 442762363 833842287 898866293 664102309 897584137 61301814 556616706 478745200 206117648 389188011 62585876 915217604 396206005 636432251 131319812 404624803 279951315 74758546 436181680 688795376 171871952 705976665 28016109 585242757 495993462 136744444 66424906 366450258 583507568 449270374 259261416 861228521 231009815 38574103 138685309 46572734 225929356 968031083 284888528 148594720 508749632 407167711 200965705 462509617 387601714 171867899 982123874 740080685 498116842 57254365 266960407 766437350 255052269 400989500 818852756 732486198 597694011 708321075 535209007 350842575 193684135 677647421 832076106 248860937 670242227 809400056 865031843 829096947 943762109 973679315 235493809 990892703 854956681 137362213 328590629 643918339 831381649 72797514 155396070 384615474 345890999 525138232 718981065 936740053 180004208 309651411 514337159 531933963 452297984 642146375 890328743 62264902 72353947 367581049 956196085 398283901 200222502 330197979 995599572 679533395 461699699 67359002 816361129 278395452 9871198 17714151 755849102 933183131 214991119 268972427 50357327 451521207 608454919 400289540 723845708 720779162 591336684 842128249 351488730 398168422 521985169 920751748 217509691 583908191 581504934 151371224 98114844 893469272 743473500 677345865 686624930 667678531 451561761 731916763 335573927 86992645 237400930 345721646 615147874 20803053 889039739 722857991 356618877 400427233 171980959 67618416 951304125 14523437 181934316 270555109 448520257 314761911 532042350 709573185 559606103 686707420 731873708 762089221 338216177 191436330 535460464 785704743 484355292 418491439 88956751 769659954 130454898 556631299 402443952 130072293 466567400 413861335 173379645 273888909 313092341 267028846 188641417 712913241 994353116 734968415 672356951 695268473 982857863 749095633 777037824 64049940 120997530 898300483 102868920 21426316 336886104 52150468 175011983 954056334 162485183 136037244 482128178 938309722 601254569 528935173 153317943 161768872 499044234 174710955 387979004 45235950 646175044 210049353 384702680 134955124 21411200 634993626 461773148 524524308 603509654 568336007 375456179 776705680 272477419 535879831 191753345 345573263 481806458 310711214 306056415 32604004 789523307 383961013 649643160 563313538 898099032 212761244 425843960 56688107 757505119 894598711 960480783 236108391 878867897 447946277 3545987 65093267 910958124 874940591 38464484 423615333 649338825 908786318 814913145 218988097 932179286 774121205 533028881 56026295 713869242 359954291 432253664 229407174 32586315 702769667 176718169 803935140 489581702 435832914 204979673 23785335 341247719 252288574 223297455 154520538 871433474 867073265 454577897 62369856 263809031 496120824 549874979 290840620 159958561 533546281 989070104 220384587 984583582 349237834 17250830 879231754 296642203 896418261 570147822 310425149 671518551 978970839 795740458 231842777 814137615 833052337 973498783 67107247 640876396 28435512 540178461 246620163 139564554 159516275 376757221 681508099 736913303 296364426 784183395 964077441 202310560 850317093 741897973 944350724 13548083 830426497 219225050 366951743 997690097 223073488 895703 474349687 817423872 26101597 849490586 752927438 174820440 307191863 589031735 887648548 486165114 166579848 124015413 171492144 155548501 182085759 349879387 256333679 680299305 306457935 322149908 909233170 853637551 849449369 401582939 314067249 624457115 104283074 895091656 288326147 212674109 898984949 845531549 308799355 319319654 811823783 661380329 256020451 121797995 994375403 423295201 680010734 749188199 535961336 614070151 344216701 211188971 935824834 117464111 321929530 899457884 716206689 418568581 74381503 656043892 11316442 688149275 7637367 188784179 889130555 553778091 848089425 872530508 601252063 148119107 558228547 253222218 707842358 746955141 719262638 133443287 192659151 668917486 429457311 916292259 244068968 563054607 880884188 723016923 450439196 689656292 905377760 225555384 298294369 949363819 928724575 532468268 464625537 343402051 358462489 723998686 890669805 965230492 983721736 201512167 827380908 498736428 78927289 468545239 243149332 423190470 885564153 833638449 671425877 993142439 642078520 991634510 803185976 270746165 520800080 584263395 300329755 504092274 29055784 452704349 58131333 178132213 333740660 402313318 324304657 251759419 710831674 545780629 521644195 589800996 676454349 337935078 450543292 957906676 988777176 575923982 16928573 953987977 713349101 14366421 888856333 123273631 134727810 494903739 617977276 524495178 127971087 243792471 790896579 842514649 323973138 844903126 375076203 726567008 469520232 610551394 524726234 36871119 282165985 834850626 945161888 187225777 266610784 275981238 83948975 256069196 393676533 939675853 516902032 562495070 952046822 452409654 97101670 482216478 236353697 126157098 476268957 544977279 147343415 288619782 252153571 285481788 474518030 307185621 973808616 563523105 305782125 96313063 30679036 142290853 443427439 127601637 269913833 151959666 881587946 161987782 512968338 97898585 509448063 965507549 587337698 89003176 182947086 42807172 997127351 813910436 101069806 131334302 769405766 567547464 279789924 757421394 702184466 229066000 582495129 303781350 167528130 318060939 446830628 162035015 721906827 614395320 122153712 114386997 906825478 629208352 73916052 614044375 461523813 767264308 563719679 191401443 685621702 979549287 752993821 688797797 490443638 187746013 626193128 894198694 641241632 166228351 631679887 481283101 710843575 71905327 256953835 764761765 533032260 438038213 133609659 136878422 898963004 363248104 162395508 5511548 765013337 574910482 393084521 857482273 523316080 277862132 482918354 988199723 609106337 25696667 91593601 97500855 151445316 631256787 216287674 302228770 690228161 959829330 900602232 664103966 341261530 190608213 977101892 813074286 202923288 826933308 858716616 342439204 590309771 935450491 159993889 624566652 853135726 431795557 166821454 448692549 982570571 615756596 776714706 893084959 907307215 14973364 550763902 854375152 432321441 907464766 522693630 216646494 14169895 750046186 160276780 292283207 622595174 555954729 889233902 197263882 694947131 259178971 270406469 36633145 694081755 754425454 702596061 899269488 49959845 990405117 174982781 142902491 892969816 180815746 796949380 708851169 656957632 70558951 920991622 722029871 595704048 864884852 417426695 387362784 697527947 274576819 434386454 238794949 865400043 462621879 790994139 299179324 284377726 812297205 506091052 301019694 329322686 76465019 712361251 54167831 787061089 279736027 127890577 513254165 666568387 284039495 25104908 529453901 352448505 955088450 180418440 806952008 993354012 280704183 296187190 775734613 131066702 772657807 51180420 270706678 965184034 583903976 504744466 947948968 691345422 138878632 858244780 266434727 437967026 357373216 569033000 660750419 115207818 736361131 627293904 841835443 205590883 294835289 244045115 923967171 954146415 30784003 770178489 385698184 230897072 83849774 63917687 678604944 731592555 216023074 255749238 188333625 304214847 815755282 975659759 194169217 438925983 18929126 785519998 993906743 80893081 495674097 969016223 267178898 998113545 662817888 965237827 342717970 920607986 688818718 888474089 502373978 995307868 998554833 274509615 982440695 642674965 489813302 735926361 235667466 231515477 993418021 848110722 718966163 499111624 181748151 104864176 260573857 567455570 434626184 498969737 458309632 251367343 396276510 460637861 526842804 139956264 637539464 28889388 195015715 544279959 765996334 694712992 934596103 646920245 783889176 348880898 710923461 233692086 140993259 214258940 859987977 318820325 319055615 407702110 882896711 317181853 6875833 582760135 192036517 545213792 144235412 471650405 428681554 169861360 957521881 729776714 610268932 230828697 330121170 939907288 331389681 907673814 264697063 960055958 123978942 815484705 364120877 837385273 85065365 85569896 472716363 543103830 49256750 248067109 447932204 413349700 627413482 526819698 377524695 940922258 655358005 89646928 703930326 83072437 999159114 816263251 890753053 565659839 146242397 941296736 525155741 225788701 937183056 620980770 381746347 156842290 910037061 527928043 556604132 866755793 71745127 359161284 834782867 529066382 94055442 510106842 17539112 904678207 906770308 580666394 853656994 644650183 880564438 762537578 981136276 284651151 460004070 150583670 928891663 975027651 681351434 633319270 537301686 926123299 954970832 374406540 403232264 217457184 539049181 689462611 996594778 229469531 939617899 566741192 22231677 389768150 676776846 878849554 729969703 308423582 318020454 636883446 549089446 874253321 688782452 3328574 394092234 412251873 566616192 368833654 64416940 992857398 628574937 758588992 876912759 60513744 100853544 257207253 388342488 218663795 663579160 341002305 554355144 151878348 614329726 501948028 639413322 442408207 800622324 234533681 717586649 706626949 739012883 202106417 694606955 364525517 596439072 125247953 213954212 961563860 307598060 311725508 987423949 140836518 841942246 523441221 181444988 219100970 870451299 705716227 900982928 118511094 415554419 652748900 725011255 480466121 442699876 457094448 918745533 308845357 727075784 518052201 379743101 446985880 682139820 589675817 510584135 500779996 771210622 348665922 494037597 781957731 86507914 767062557 8870846 297642666 237500070 520997837 482377072 71128539 157298901 567670791 981053152 42121383 893933624 643206 443562280 458022308 135849244 789580823 920699878 474673286 281902425 503520788 38347827 460286799 521853239 445329279 210392207 512032335 210108773 705310984 681254561 758498606 438918065 497188492 231011253 868154449 907611825 207585155 627187270 895813439 402995011 510023093 50733071 141009379 830468767 301936573 382160759 688765749 270820908 228364465 493850284 497652352 468893501 116121840 362086892 407040665 95329173 490120194 471940055 99051037 665163173 981357754 90055110 627077911 864319305 610318039 524170508 353964121 995107283 33875959 403861945 815282545 726815244 572734442 304787890 67627368 615322721 153524776 122547928 138275340 441628292 842739068 883821507 777814483 123172196 685322128 932962729 860882946 606224495 865901536 840930995 556363740 668497113 371468176 450598255 805529853 206234842 373642928 521056215 470756143 563386341 493600226 135428273 621158538 330074605 739550729 244191183 845304030 560231707 103243226 38833889 708414239 515780288 414593043 807002523 233522932 717016323 175908333 474284926 515096734 425274849 776885429 637990059 218114397 453985721 496525289 137439209 732543818 12309383 707723510 356394705 918726698 37897356 600968637 538827406 906984606 544553155 259654923 75858414 701406582 537280924 562266515 366287369 756015896 469278768 476154022 818304836 295856729 353711072 447497052 167418100 34134614 633655972 748928282 437909618 879820777 728367313 406668880 954818884 422631206 914594634 121647426 378360151 545112300 371527050 704362221 576570004 833113852 266513823 127542440 852498996 523056282 918306844 185158862 701530998 639652480 329517168 687692739 68319092 614701005 981679861 901612349 546914575 568837824 880475499 260035678 318728628 324143890 321101373 954803082 941549482 1878342 310709711 723572532 887921768 549540978 819189777 512803809 206664084 294769216 761287861 451344339 830167804 586163197 921805999 390798076 581323224 396630321 309544296 174431015 594622675 390712739 86767998 805127217 164516018 170092938 523093563 430473246 85139222 615715951 832260582 527148384 14577597 969610609 952578568 525733669 33984794 3666474 120275194 680099025 702548538 971775151 883557591 343502213 120661316 571553317 450712391 406221696 544163067 339091790 939429335 6141602 398469939 647690361 989741332 129666749 63654099 988176360 984187336 176099988 771126365 788740508 874694601 283533430 309687323 950736887 349088830 184008835 744265543 686803902 85451686 755454232 373374808 763822902 308904278 955478448 112930486 379736520 130949368 133142393 409374280 713337939 998038561 244955551 920862365 648308775 95090107 697349107 762952497 280956503 732731189 184223082 312855966 170926018 723752769 317007291 423522823 914781572 31999941 537225789 901136750 653732615 611659970 477171469 395840551 657121767 567639738 45856933 187757599 880141204 19980371 802175816 775049184 33497903 40187959 932540030 761099303 985794892 469241690 513987911 236140679 599570985 713114428 708141018 842958711 307500896 333276759 378116346 984771967 350119512 167399781 637018821 713137447 248924712 665969043 481210024 659092263 235937082 169220416 983670932 606909886 529150787 459116782 821267261 770674851 175024840 863109567 989358328 925293989 28135120 404030188 250282286 551837972 718580059 748766665 968444194 763530915 58588164 944772638 662963194 489292958 481350846 885283789 88478304 193449448 330688913 580531156 806361945 578117550 341416934 874864938 240877564 572932246 132528364 245148071 364349549 514642566 99948964 552886286 561810867 678266339 126879126 360868246 991149086 317156622 285320094 647375809 277384775 546183187 818164475 801021209 903339186 494699426 474729841 521222325 188357532 995201659 122748238 646660600 99064717 923398634 791274817 478497128 809217818 497859950 708851183 746481083 650227328 530391182 702492742 153812213 175905015 989316981 826971207 120396479 161867795 407037268 96570494 197151585 46788476 23037923 603449647 329309606 579223299 229393592 91858481 150545961 778196202 964997839 645952929 779242635 479606817 740237155 694404535 978354936 303926594 260893380 232179433 470807503 648677518 839387208 978851852 233965538 802334639 516351892 996444251 847010500 197059166 126961333 423221820 876567951 511825393 39023646 433275419 492795514 15721222 991846180 956606965 72464077 83565624 970829660 369902910 600063568 923265492 392133637 103171068 702888275 887298243 286505044 710181856 26454143 897685091 353175565 75404432 844486688 493993057 409361907 682111306 292881624 437776451 906946409 579589968 43338664 474723936 594534220 271765086 259768674 701214998 298930139 938248252 80865026 626121523 47702818 767739141 931302403 289019020 287029269 699480381 633296166 26577414 730466347 345403807 360054799 236032404 514803400 536321407 854104714 200007796 753315711 731339201 64644717 553903694 599581623 365429631 483821324 582256215 87977201 397860375 635411307 174937925 862313106 277561129 700938342 827117066 671065305 208993526 14671727 750879215 400609184 112922305 811997070 220686847 24244993 796130576 348878782 583157621 989033444 731277975 957480808 52598909 917291287 392417604 111229523 165520802 247906040 357292931 788982527 921635163 349979837 397952232 687674683 354094874 129117974 716552439 240756918 69794982 982033057 450967398 357088876 759737590 881839066 680216843 468194258 982679235 117083798 916573254 257947213 247905366 329500569 571364285 762219280 879156535 353588927 658218774 48917618 638080023 513057923 553965833 440234125 849257941 300779014 851172497 163124343 363025942 965355504 193007218 713765517 637171756 460852788 82634344 556367090 564573660 769218165 632864904 486408189 840742694 517555313 29178059 421576304 379717851 36570852 888049645 324560360 841628578 891575744 705463593 404679384 257566949 31988581 32916383 369570256 585924635 628934838 240649047 226223648 959608775 603925108 938144219 644139993 739373606 835333076 713154992 514469920 548972676 795141299 826912431 508780180 324116045 28086646 343882061 472074992 134711026 951099427 244336840 167824801 691159398 610112011 399043694 363489734 88294796 183214672 861873929 81730484 726407687 764271435 460177345 177386341 367148544 290831948 952903045 392339516 58411730 96753280 962523424 74292833 616343710 512525581 973779097 997121350 250989966 91780941 898399743 636439464 164497558 469090478 461286726 874720763 357492075 51822494 899006753 533215173 867599143 55433589 866414582 840697383 491376289 203357683 972773092 995923545 808481973 766656927 447688912 706827451 941506939 848320052 292071607 38888276 713151176 582842691 494553371 976421945 416978466 774083919 544041555 327239547 9337094 643468154 857834998 864243440 14392710 121275188 287536035 812002333 881851687 283112671 371175775 683113025 51712077 653745119 825941607 707956249 969819677 555401303 321921688 552938887 82099769 915124278 483541638 14824081 767422916 771708805 286574440 520634250 281537989 826961986 429958593 611953836 112351364 877657249 102155474 889373605 505716463 679524464 355627656 962899687 283312267 301038692 233405691 78363090 418510464 810433482 211020009 37018273 89171248 553347546 656271912 585320439 160406894 370221429 890736812 47880560 124249092 695726703 48817992 610305885 833826285 360819268 324670697 297506105 177799501 279796979 76155842 618383535 322557268 823805484 525864001 178111715 30836309 135730739 347124922 136508633 783752109 383320872 561818694 742743041 781917322 504361870 956180251 749348099 84489686 269563494 771586726 843008806 154937466 69975484 662625380 299579022 91580314 655453920 323109592 496788870 25944455 447293995 117411679 734875014 257831465 686144369 19336907 720000509 570772833 906892282 956583486 103854187 454321783 469223057 239347049 700558040 914528406 596076535 507518359 787893865 129548082 692801736 987663027 357514486 250320402 821090908 394825252 748418460 745518162 159889330 284639392 779115227 718479478 427527181 55210373 567723757 110990426 552856119 430569049 891722346 278285608 51245777 67024607 887807335 524806094 971680806 330703716 9891935 332749636 707857253 104113042 561820054 934534637 187523728 740745633 318399292 1207292 334343159 713590369 848885438 890951265 764086810 532868568 683729391 866517819 24324940 890406246 486786252 187970071 340757549 982091086 955885803 838346170 403434073 317669196 668780074 291348452 110976821 60075689 561562055 970677014 351552651 296819298 140773296 535495654 506726826 201196942 338829219 261730647 320943516 279824077 197063747 55972925 218507044 916345013 679153143 204606520 379086077 926046763 775825948 929910645 364770403 456305999 288588424 766938458 219127530 309669824 825535769 403783759 561883395 662150965 845170553 662407585 192963924 801955647 975452230 891577968 617030562 205674009 359715992 405319420 730814579 415748415 926215499 69053895 625898948 654151011 708385809 7301673 246391707 627918332 815819548 743065534 335727158 749337444 896764135 50565598 537142511 111057362 895609021 144609674 463430820 19619884 86408408 997729888 706383231 570337699 5661427 196895223 901588056 36493526 968287454 711536243 396015133 787325520 935157795 743670710 192642138 91648057 475441217 263001534 60083284 477941067 10274524 521763563 710213292 948624650 635089883 615145973 346352669 706395723 391225190 331945669 308947251 491311169 170446046 768792274 261758227 109461673 656876971 405295783 763087915 28010942 567835679 168613081 552984591 274368693 868579862 523419172 751661045 700181308 905754761 392187251 389449955 975663539 28148928 468954010 267422961 800015656 496025737 582885990 226607883 562757437 255260864 495586449 274072823 226127908 428827971 569648155 708683350 887625480 177229082 401518362 228823912 557761562 148470625 294340397 250470006 118851041 75100464 698295149 648663986 120999010 967317009 747148297 200732133 706052945 716078886 460431659 230013777 672613480 23894696 344755793 921219844 328972107 698043512 49890971 372735982 557251669 560828292 44496461 508350040 248976782 999357463 259182469 951108756 286857689 705015131 491902121 706703039 2366378 287133287 317186423 317429441 850640514 476646325 210172842 11279116 555556237 14401837 880666990 292221728 916780342 118081574 614664268 75736657 453669431 506690150 110927313 366364430 323830041 181564281 710275817 203327420 141973434 995606164 436334983 556434122 725353338 373157522 704108525 599388660 550311346 761951518 663368766 936288959 222998458 864053170 446997807 583265972 659866387 111072668 290550668 958362533 955847472 130345682 982021916 745994123 97045816 846269671 741285973 922234606 131053037 974025130 258786306 66633345 824156443 460265943 421781042 624864254 14738861 900833772 896251112 143602612 911696687 353849357 764483671 490886637 970185627 171376135 907831285 635732076 258102988 388566830 822433676 844640822 638833036 50526325 182969165 334019625 634915907 821188362 321960208 864967328 680568239 18086148 173997700 223460388 708245265 151248839 576838181 290154280 231752688 413366200 895199636 266339920 879487474 847665179 702294076 757635712 821857332 394182496 352272997 816378159 737773498 989136348 299959876 355945517 763505847 882931154 972487251 626375374 121286431 215427970 628545743 627284042 249713535 248962647 317343717 735530094 667587901 940974872 668745095 447999620 186439366 408317751 845820089 993190239 861258830 501858340 820936885 74287341 431473155 267383129 291418414 628192796 559023920 460854513 389801975 643663574 299103899 96243090 417660454 967542123 82307815 609002040 117979400 151671666 350834287 435103916 313151741 260315866 679099869 292215624 537508230 520755255 386694236 434511570 459409065 20856028 569974852 428365942 454283031 838238054 977156234 432538497 201423412 14829125 617505434 154671121 708649579 499169602 604771970 475962557 76884 739943546 761560000 472601158 487250499 975036344 810705413 142711746 35577306 346423985 493743129 411396538 33144799 972048711 169730643 356197573 862664838 306150115 605367041 20968997 232761331 501054991 255216597 203626791 571338177 605788610 414826329 790786691 565572181 630191239 907666583 412404138 208290207 139550848 775882318 591523744 533403823 749930034 778678269 118970232 428069585 718076794 951842934 280608511 815280502 36371756 185843506 627470599 988436156 953640550 500767555 317271906 128711187 883399257 997983387 965863711 678468775 506769647 263112353 725106678 8464922 857961559 507671849 471325229 830072683 459050570 492054297 277877415 919216883 275610301 585200598 258615130 562683202 606485487 977365945 935490562 876732488 661244899 390673510 912122329 180090956 7382256 663139908 758078330 730889566 409344837 666895088 350512020 687345762 311334409 184058125 400573738 883132801 699667667 707093197 378162478 222392583 709193257 393326359 980297929 185135874 779240816 70288818 292361066 901363599 321689132 36632547 553814077 172593492 69748263 914341480 233398376 615053910 200357974 698207959 950655865 22977878 11459623 447628513 230633664 967778086 985186583 984196116 291511958 811989294 532334523 24031230 586291489 331997331 627121159 46847546 745788076 844041588 207095520 999040014 417584118 272065782 693932254 287628409 441913299 399339019 214013079 186592755 422996228 433390911 324629344 118855656 696088068 553579192 459001665 683702816 320366031 138332964 539373055 958429576 719635728 20854830 806709847 791351601 179881197 266788960 141924798 730444444 10701668 996810168 36178218 150814295 373029150 91052777 262829421 518246273 123506111 728878582 177157105 536063703 18657222 418103635 3831795 966208169 704706764 315299834 268491968 914695447 549085679 599481503 79059729 699839539 997255143 462421652 886943562 879485293 250154583 436234182 877516078 429624441 748453487 990123024 616068696 318478470 370899738 139281012 120579658 960663772 828710629 847605002 241042227 590222368 478126594 360310155 397411368 211120083 402224932 106164830 93040418 252415810 848448311 125070746 997048516 830937681 465132767 957544043 537545884 662605163 820534498 165904487 19804701 73167529 564824611 807123703 613406248 166967717 306097710 248377208 394509901 646496581 371366014 312046919 17775051 490224036 871625663 160829421 502544357 843963881 206115620 406204352 314452545 423176889 938339398 738870106 448175845 238189126 373996104 918200021 598127358 437706496 889421617 583749169 644802104 953725039 848405823 779544548 236291397 749907609 41123017 646517534 645516269 246553750 252338830 640827787 746655628 677514209 293096338 754110634 583449277 167502375 509564425 812080113 992934288 115270372 859173810 596304402 385067959 102634333 495595108 842091623 887370825 64234959 671054739 661897428 732227570 437995885 555927058 990613884 569787615 83126269 706045895 858245606 391938984 252194923 208009762 186341707 189010900 960995923 856540388 724371625 162223236 147300485 79292302 249789909 151467850 3221860 458825940 698567156 270678976 147359515 469353059 501819208 315454660 530373742 600196936 628592374 526744093 771988408 394047685 881711430 767010858 657379188 250333759 698905023 409748233 52341241 436588464 476348513 122294669 656942453 55086712 476169445 696751772 478333169 415556273 60103837 791810210 309047329 267201800 226908310 945131918 234974902 455624803 432089884 76524087 903370051 330973049 383052427 4384934 597649975 697327467 219959082 570828458 230872793 630542789 532158554 585264770 238073710 633434264 88082074 177940579 249626918 612978178 725660584 618057640 898328523 161418244 48027732 169969074 876229349 645988904 926689501 623244254 614291096 282958747 974702049 604231816 623819237 660435987 450060950 171555842 760626348 492338499 772591684 24466957 658548660 501419689 415962042 266652156 307904833 87092550 775673473 538203145 530896983 171620244 964885590 128091074 384287355 850967050 648065871 919357929 928223887 350465856 623921544 776908154 291121359 788222852 158560079 879214383 779079733 527058810 82126753 627965983 758909817 892308747 810651892 593218203 873270586 251164787 764739921 713426288 53751244 948681177 264670000 519757311 308907380 574974251 897071602 233883897 280689140 526674941 31223971 941132597 623674896 83241658 400068571 724165679 236013270 97361775 150293930 707355423 613608997 496107698 262482331 542329161 150765828 290667930 794195238 169868877 255406994 495828998 644570472 143904573 347464700 600452778 905681941 195455771 122256758 823169210 356416458 696573393 441474823 3250441 575001601 947778542 714589679 496006450 542201062 863857665 171046894 613921424 461977625 2608635 883068276 73810533 684383573 23371961 135914955 298611349 676448522 122469334 616212264 910117 61866701 364793480 302716032 519344133 971571258 61250715 201349714 163207862 424469599 875890570 345005594 324897909 847566473 659733401 676649321 293910418 947945927 528759748 379413136 250649475 646510848 595478588 946366579 864615399 727641546 145301718 449937627 998619121 886631867 374132853 514554885 83002213 386740028 80021087 130690400 110207871 387588185 338288345 749742563 283039968 153501070 64413395 116478907 265427374 907469119 863356317 310104935 632363177 618326198 658673763 264819650 85012016 426515740 316205537 258765292 446798042 422192601 400250315 255267901 865628894 922723517 202833933 778778476 115961139 882785751 230777060 971115930 995684089 390241452 789866193 443647996 626606272 225746798 967550411 456319965 943914767 215914459 934181064 970409209 309833343 551460408 721774306 352869598 86514696 549996805 794480420 338842271 328917478 607023325 350928299 382457501 557590764 374900712 166955884 440722875 537841463 784048960 570269529 159458402 127238633 99102672 559139268 68982398 504629773 845724124 481995168 509126353 741503575 318404818 312142997 737942765 582470775 503925852 430625293 389430070 330562118 530543859 73139422 700726781 429492022 527095358 873739182 835258376 626318241 12545360 217073565 949823951 326241337 530502611 948987189 610811798 172473743 767349317 158526782 815103760 574703744 897603375 618140130 529550520 504496800 84238237 299920686 579317004 172766053 558712595 403845342 611811425 45120029 917105541 134334846 538673828 868777756 580593147 412624974 729068537 936194633 731903777 254987428 353460019 200234136 782736602 732402288 535211021 263747847 128924325 491496076 281523537 814145116 514360072 465483053 528988929 353019991 924223038 43877540 510812385 622495070 792674023 41450616 441632840 333539232 752477253 887218453 719579941 657534216 912739139 333767525 356883439 504518930 119150554 989838063 845156934 641287234 520647186 173332780 222197279 363418808 860945433 188090905 585311223 467548908 247022377 66082940 468111099 390482793 452550586 385147853 192846259 901886373 493435160 184395758 236561986 588442239 212350380 510373607 352784228 923134840 401841468 927300651 67459569 654733906 695967466 559231653 214932927 998522628 300542137 78822815 6502584 456225444 431493461 254188355 68456022 795045666 377806894 941559006 143733597 177817408 748731006 920514597 464360044 429009202 647935990 633250854 850797846 941237631 141229683 732266400 75981792 727715614 527136286 123297868 169255009 326314930 122312995 880270852 512594514 807199421 96385285 209985826 773359262 370304657 556905830 683375518 991300921 685635538 794738660 682729095 576843095 894594072 579514932 361793358 280537523 942280211 705285130 709215019 622117512 968174077 218353173 524905608 233120114 575105507 683521983 854723699 481238295 654628970 739004151 954716561 893421504 637605573 734679379 357254340 504205468 953722127 34215058 194191350 705194379 314651583 81226837 997592909 799675191 217245787 795417065 321251221 546531673 711463195 380673305 179640748 699677786 891160208 90353294 690877477 760932193 365142035 173645348 379845204 497771278 104925721 622541980 699770619 450945339 680875691 524120111 410352398 940654961 986045661 201818302 887586775 130046566 230321897 87191466 928935272 365333981 710087417 181702449 367371563 208929510 588965794 142594820 85254449 510004366 465806719 425343210 492625368 915988637 846958367 108837434 515854600 753128210 884030546 14395219 86195738 760572334 624657068 351912554 644592525 851238435 766622480 933367065 604533803 318660560 310382436 121690608 727150092 24591260 5215811 290308267 902850675 881278033 148307371 864318186 965181151 944555976 304376771 926665909 523217565 325822759 558697834 460680427 355615395 868890615 151108351 910499097 722489868 43834022 887407829 843639555 740582052 550239846 172316674 672869020 610652332 74481067 617917690 91764450 689867712 17736394 370263872 592435271 577301326 915266949 594529984 485868645 684691872 849413261 89394323 82137135 652781867 207839879 945421363 264878674 399296288 389858611 283448862 154036645 38682336 244455809 393419512 492102118 265565350 258402284 879023041 873172698 818024201 903590471 592780973 268537881 110036147 472661305 370728321 726469405 561168958 662625805 303087901 832771134 223999629 5628999 401592430 721237635 319036621 402715738 353906096 134411246 342996991 388234577 171120413 684837619 582457057 456374145 739021712 90072551 771534847 476379961 53083653 420656650 217944358 334367663 46965544 160639529 259564086 584120426 794677264 402435350 409659747 381294942 347848196 230628623 940503933 516924911 587924587 608189589 868820975 602796706 833215710 846840526 398196800 117113150 472666570 246687856 159403086 306188410 674161069 965659355 122737650 846040565 563517048 198464780 664790844 114214652 468098833 772303233 61735573 645418285 283348991 825816338 17538285 344912808 467094295 73711524 720236881 322758928 584671513 809056718 479147362 447680399 46001766 208713591 291896549 643687322 884702514 332533990 357232118 163300877 238801556 474980354 375124145 240281193 934333781 470348810 673427966 587708077 454069118 63730263 306762639 412936333 497076142 529404879 827575709 510531355 391489434 557872654 591691166 665516140 332814324 775685889 322137052 556305166 300018734 859900638 367260 387147719 318901121 410229126 265984025 995117779 772960291 257043200 4484963 706264940 70766704 838476525 512732138 73268049 276323652 176713464 516428939 357785869 615984979 567283677 366494939 757921151 360683193 997252124 561421060 721996127 680211353 38430905 389234824 346409046 342642831 80888730 355994132 759956842 434554318 814815482 771899396 274072049 447922182 67109634 991486335 556996056 196349855 578317290 736395268 691487855 995463852 244962419 302708208 21536774 486428001 853826553 800252434 297490106 525622512 530229021 681360228 307643044 168061682 947767396 239830769 591940279 291102872 772151917 656112353 737454072 935868766 108631963 934593940 539254522 239655211 296770915 740402976 730185394 569881287 705322539 126956567 297979938 249969326 891145067 80165005 816201354 467179961 39033844 629439423 825634528 59918088 415749336 858240693 456047914 41742193 756712744 426516256 652208436 222507958 517345268 3045288 450472948 718301244 29494324 979743490 297526228 236289497 90896526 423887899 276019319 435411144 920636502 460185365 488926051 210557958 82022147 651817810 703674242 295346821 375009049 326363298 293041412 339623538 209038034 340525070 541670373 415064703 8182546 728445936 889961075 435120616 57511861 333314425 914032508 547850864 186913711 593436725 538894478 585971303 158924442 815904200 134033076 243630199 424314358 130341746 815732224 72208147 937460967 110995494 850466721 650354104 677013160 856675742 263828799 402378189 916765811 377289774 540075457 467466217 906597053 995130659 907877891 856561974 510514882 213187830 267314610 759232347 333798156 370513296 369512076 401953348 694046503 679612897 269559325 791094837 303533642 425858811 402649920 297857823 962797192 315967343 581119053 744291415 79789241 865285588 766845903 878737654 162742384 338366862 618025366 899451819 214116220 90294391 68441766 435761844 179835206 198846634 841932624 189570598 664931396 409921793 376824318 252015699 122658766 748357907 868625348 951405261 175028013 283635787 800068942 249058848 353579367 582397725 808822277 354761006 811252080 696465645 95442353 832802948 446724521 852032971 223340640 514680309 887081546 375126903 298316905 856430060 64441629 532534759 634299702 459674716 12179818 361395253 514421103 745304524 966746156 102093559 617285752 788647543 127919298 760843780 763018529 537700735 40849763 368882792 796788646 135224612 973924676 534648909 558519654 170533640 667907929 473723717 348590331 983670212 778449019 834918441 431562432 357289609 656468765 229926312 555563339 804422298 41621871 683205926 725777886 112370401 764764084 108595657 654378611 402339566 240572375 497950312 847441617 356045103 535910485 835591695 988663093 803838747 482517138 705194165 464295652 958208707 77163072 712233205 987052141 880132493 929781159 2986535 976151671 784655264 209792488 235426574 223814165 873609964 565918412 28625998 943565161 544885621 717835990 527107997 647834963 211924166 247704171 994335182 172249974 183101161 223985647 148839960 12847841 723484182 521369303 50076803 495431320 690052994 268709262 35963334 227583665 669290753 182925754 818796223 400346394 999502613 27382033 786394428 792398212 492765794 115193566 417589922 612013883 998600200 607915714 706725223 911291145 363642413 571402043 532386240 249765658 350025393 201422361 181175932 915360786 80968228 170125017 408282125 800428498 305610866 857529241 47332675 592491472 135953914 815307621 485703218 308263473 703121356 888876392 805444329 433891472 786190166 302836786 211343455 145817856 298484828 567754435 370167595 779209878 425221729 733997970 166107384 296035463 640594523 853766722 626789763 795731185 889191446 313948448 436407298 962253246 484801437 609862248 874127668 558724554 662358744 499968651 255358514 241102410 723271901 786159174 266946222 548261337 191180908 746923821 93365632 234407677 217519483 616476503 910496018 722830890 556578798 307774286 30596824 50451478 913672814 443879137 419529322 19918036 332124939 939230621 627217142 428523038 24349968 814835317 306085225 232936871 753308299 232898423 990360416 46719 448099575 588203670 281678363 321778499 392307654 920216434 653260981 584600919 372106196 268946419 477757905 554716557 5830067 403851461 474913670 558931115 276625978 936269043 455584992 404584518 36236624 935124201 446090390 130308019 907191458 844665003 717319661 406218939 410935203 201326414 830999735 728952842 968763030 847598484 454536564 608542185 534746978 247247599 387832028 640593650 689194113 533386282 476861581 965830029 464238505 221134923 579202103 729859696 291237960 296433337 683602671 631157650 641166832 60880692 972036643 753200346 695920302 261156455 75258541 482852885 792055405 886724489 689924520 426654317 38784654 518461377 41344509 217294782 739895382 385986267 606017462 544486924 682893553 679003722 267394560 940712857 165916904 939946603 609212424 809833667 4558808 524924551 754884073 233835901 569166444 166595809 651794250 575224613 116398685 649598665 855589348 426377098 698247064 746260387 470610296 577721011 134625356 108154959 718752242 857148710 325483448 105783875 802819640 945767320 424387409 999768883 207271179 860040203 519191665 267057243 591234455 475816994 421057292 294124757 533293985 240851504 702096323 312477610 163553922 848112727 894801362 670932492 708337657 321000426 426033098 331901338 477548611 352164895 716758060 105608414 498763181 596147989 333723061 522787008 902928942 832055288 802485595 160616133 275438423 231607172 339089231 167688960 600025503 664672698 524286386 307924278 129799206 2598578 163247381 817020296 730623571 859889295 633896062 431476734 614080244 482169984 786442828 328338521 360793784 181819134 850112214 929499367 929519362 339054210 561974933 909779799 818464048 12039318 843739639 274611025 923760426 395494890 891913456 3751679 731249533 138182323 199260767 744885158 844598845 348794044 231655563 472377985 68384127 232171753 455777194 379197410 567463042 508973559 955923132 179635109 104558317 790819060 528393420 15275620 121519533 746512108 870610201 664761068 971923592 949056719 61827985 57083044 852240908 593949413 370751646 896281418 949286579 73847174 583564581 922086924 151128383 590785739 943503221 133149048 700497102 901387938 81122541 194615554 703436206 632038177 327349333 756264178 852528103 137040724 44818781 588035527 137273920 81442921 118744677 533825708 365869375 823414265 933531535 476979316 650628801 508037323 896443764 334152839 367130701 836407745 479158650 582165323 804634595 330431259 411039379 212448915 646269746 121503849 161234171 308777172 262141323 259246216 737460352 242973005 56151216 333050054 594063420 981807488 596324973 515537755 63893297 572774322 219812566 220585147 912814127 684750530 22058419 113542776 676205683 240532310 139857618 120462801 460715026 219394842 502283361 541693401 25508861 613063180 103032398 438263131 576002647 674121664 652114345 702313676 985571976 428895205 901113158 122078319 848601417 778327795 930360123 554545280 219631404 731509358 264919492 62199231 535210081 673579212 328159786 108670563 746236635 492904310 580553553 906228575 518927983 770072569 403419505 265226178 138342526 302746944 696150836 318129676 71316968 911864296 803890546 58119853 836313163 725948628 602170185 965672879 977082191 590839767 739877925 387562321 681566770 533456678 602756438 596314168 773301341 465180177 906035043 705009271 25936397 166462017 838512866 206459163 981293678 442057987 430772367 718069498 749007914 698892645 655931681 999931527 622025222 657005100 996807346 530605190 787072613 638372284 456292407 1070945 402499070 736736656 923597257 254196592 736620162 212948736 481379351 208969099 863195725 238875818 441781817 974735758 429735215 435815862 242587109 652079212 965320950 553999254 129838729 347695557 971869688 866649328 692141423 599462310 986458696 394758999 124679476 882310842 118757458 701196711 326475402 285819134 645897979 749052573 382005617 260266040 262587188 810463852 319538346 77075077 622245533 14033227 961980518 242781220 784244687 828522435 391046426 575567120 293168931 106858828 532759135 92424166 49491025 925229838 558887740 949388234 128104829 921997247 231401727 770636189 930592198 854432723 579360397 355672324 462964190 950950851 742769286 822906135 246129356 620115796 850038125 676044167 948142949 188066115 23103908 615233686 658966981 463722112 954534554 460962618 437371923 760836184 956767975 571249514 892686496 93612481 456453178 347373359 479470081 231376298 419085944 18026944 688340047 648072180 681144121 34750660 364499471 933944736 42011125 720510407 840443525 471480089 210015170 530336472 912741292 423246772 934865784 350758565 644154337 344780403 816317227 832799222 616647742 421888573 527659293 633291199 341351194 554057958 678941467 547758291 972157994 873354166 561877650 516889768 946154847 514561206 454073489 740499770 772848119 638873242 495639271 111123726 55349379 699440575 408868953 226455399 273238065 400467628 279997793 580473801 675506515 48671004 901532117 322517960 639185805 681099999 61977697 742362216 246225609 770566331 819454367 369769712 503561067 969182992 52599144 381581379 177196396 1293120 161417200 843077451 28224480 855671448 8299028 309709205 607734790 237568491 866863751 33939645 56718108 630728359 962215543 758103988 106466002 465820158 175874854 333589317 178414097 690944218 206469789 187617538 669475726 761455433 586057586 634442092 504449695 383501972 915560261 170551978 551089448 301950511 804089729 118825769 92904694 166173467 927757925 996407556 535645172 715871878 730060066 892623638 473028901 688493393 247793088 906589265 40234585 3484549 696198484 293993016 868068064 291664267 570910558 17192237 129217607 440118861 483956032 155158417 5706890 950591469 498827938 933569843 766478412 461148306 475547971 10587883 101081676 716710754 506589750 762083039 235766298 135605128 520284626 152379226 557914092 678222113 529255290 620271492 93779107 744162107 876784120 721199708 876319087 594912760 825123100 893042586 675055700 476048803 179821261 730182415 109531998 691197150 941928402 726086367 125327912 886570142 163085955 174086295 815132513 842410630 279342715 22756867 477246789 53229244 280697032 327665158 154785881 118139790 985660974 622501881 814369439 764140338 82888983 638338472 699443937 868807850 248651604 347469249 602005014 577930596 434221611 310234717 694340498 638832105 273596709 904873562 877108426 969113721 270213502 613385742 801398606 830322309 19927933 96083311 368258532 248905555 530225793 128238675 119604269 340978752 461838581 158413530 575517369 647817007 669529891 360199660 397384615 261503135 263275486 276961797 936419624 572291898 440565472 71705697 559041696 640465857 638329864 326034576 175082938 732924565 462891862 136568476 665421326 766997770 442480009 216835555 495409023 656502599 768374746 806907725 663148012 859462652 176362040 368772622 127839131 677205588 447709004 221523259 517585032 489618304 716209445 798589286 675499631 757913243 418981784 148521949 892622793 652760940 750201166 973468977 278043862 347552155 453260135 279987486 252022711 881573333 343681667 75229547 198366041 831181199 318616621 799194562 728606431 987344245 446817093 794481092 624889732 399730754 47042587 318989082 115315633 282820909 704747746 595057684 416350180 704938504 922227395 119481302 742575480 634010311 964413617 969319980 531666093 428255885 640587673 701691785 786532756 982749749 548342362 733874255 670770452 230221254 51644868 604652564 251851932 819985228 354039798 443214511 979244213 982558859 837155677 764566819 58612865 54084986 4561884 513799780 866763927 964729377 845013092 483297533 241234359 154788431 127937078 7639745 651248476 333804356 573423758 823942306 13249247 976457344 326511872 565325599 813660893 455299611 278572688 739357470 513455064 995624680 375824971 630109599 1545314 248073623 330513587 915037922 545660842 707135950 771137654 361713425 207346775 377786966 71623180 282019268 414884859 894708354 904196660 105231776 348605778 150560188 967537845 190389530 837757015 470331525 77359655 357693829 522321858 478822457 852681346 160666187 200655875 601894373 62659899 850359851 653963829 202592804 193589200 451868364 781155979 38570457 487314328 893076534 144628466 921122593 12831806 425436712 612200930 785893173 133520086 984831689 946201731 227865593 987518893 448725067 306858972 412765720 790079466 306568670 858316013 525946336 529698639 299202280 753740749 47197166 219350838 779000902 443309198 87348968 465031443 934015034 613001874 376036252 271119389 780737851 564775909 573508354 759751196 584190478 614539947 724764876 339213034 104145892 977435457 838860247 692222697 766845513 270917363 605991026 703850394 54185405 806966087 985951748 538961900 920001479 967654381 91807609 221149978 899104076 968273895 774576053 602442957 475080529 796675511 658246791 434984333 702547211 922526421 3727127 48631775 84254869 533828663 358740789 721332022 188535871 235056536 714770809 901135355 67117882 675697712 689261530 205148315 514510168 753268414 602358669 1329201 86802543 281561431 842296054 798561564 470322996 795910407 790004461 490154538 161901045 961813438 928375693 750220988 802187593 407032360 175089379 76736596 331477672 825612140 93423583 53324222 815036044 944666906 14978587 442882102 145296590 376236068 417499409 409502007 103324524 863970662 71174875 42405041 59822033 890553956 18961457 8230602 227163052 636754618 413345245 324007093 643217083 297458828 95528995 24056498 590791100 897839106 651958820 42378371 646228570 924699924 752558075 871622587 970662597 654365120 863322567 871519577 392983699 830221067 58477548 299804465 924674282 744170921 73654410 305970243 169099739 120533220 645669497 102906736 287587975 946804825 541514285 483391859 228522866 923141538 658491056 468784492 216751231 458403439 219917072 264584123 396069895 368051145 202989359 654017779 293833572 689467853 945601828 406014551 687467790 67166077 892870098 909186891 823605785 970081697 984190686 85420500 449039750 701697729 794219876 743134181 408821146 962170426 385484553 542445727 111418086 561284458 836156988 248974981 90389143 17223193 406749069 483549837 920225920 989507147 12287971 54631552 720989257 614916216 709060208 186966697 649757368 563969234 792140357 861634158 832459765 818223617 976625518 660569320 924507942 794305077 686176493 405335117 24315563 756445602 512921047 681043321 953716392 266041189 754321045 522188000 362790496 542308986 419086289 655171197 988138492 439816642 246544593 370871773 346190063 793162368 28469590 369961852 477601733 659338074 821338672 722137944 669593825 69093052 588163616 899735235 619962679 453525798 454937381 714370592 776179448 528408596 599191432 828341850 913348220 296983573 355794964 356858954 80537379 353620638 832728153 40706633 743688404 85723138 197267950 67575802 721500517 833668543 511373091 405235286 622811642 279990176 165794208 52700278 695806824 501794793 404560034 645649082 592905133 994137341 438698915 960401257 33850992 946159572 761400291 687269424 312616895 418688002 830972674 390416354 951514249 705110668 349899987 530672025 444472284 72167870 964090013 38546075 322923627 611668423 126624959 916559571 44947219 429177133 267770041 405630959 902905425 276969032 557893569 478080464 14951819 726935025 283396882 338113622 315027629 120397592 196078516 451403141 494788252 730248831 186128191 560829940 740306317 425063911 642959228 256271292 830567458 533679166 833676950 361436053 325805724 952498807 637978474 617086330 940564886 594140910 64331475 644895862 207430765 736025416 373823399 748183230 184276362 589998106 526768016 655303241 308848046 479802702 238666321 401020564 100712309 518845287 675971150 967890751 821665195 152753783 414392356 19777084 103945007 415423086 750557714 216634519 617476313 902214416 932785405 957253543 394551792 601795195 213263094 478966211 578221734 313634455 884916048 768749881 840693984 758615950 675769703 238781278 180394418 577929414 53019908 183035953 714823653 969822249 461115644 642683980 330768560 249668849 676483647 524381653 573862734 701983202 276786073 309706054 219483300 450108456 399375856 24619172 673709706 211767594 458127306 220894535 328234268 314927913 800499048 23254783 235550119 259206121 675224846 185554228 115714969 879230072 222947957 422375819 93162442 844016797 431262113 557888791 238885280 734264428 768463166 78007980 130262116 447838168 606699152 501487585 822092537 165786738 166033790 288682665 894225717 444066701 172281613 254153526 793563780 690950937 928496646 192000604 647877179 806913243 200117752 270228708 974466287 417000754 67803376 713087597 775491 515831777 541715946 187299078 980161031 796570531 181791494 213526807 479976126 225856667 717545044 670263733 628733842 490859689 852156744 992713760 969119619 538632953 886526892 391346834 469127758 617037297 314863327 514516329 328977182 15842259 631722998 688845756 540788485 393065160 325658537 307338128 840428745 439269842 819483764 653126305 851086718 279011432 610089049 618799724 255972876 455346170 477000517 144099040 117978783 203298150 102697361 644330647 505103769 612324146 992638257 291210965 428624468 135552272 237820035 908809101 617819481 854573064 65598403 760993853 179252483 699837095 788943569 581117313 247146008 877496245 429951909 720077041 312145378 780389028 511169590 469263008 190910725 641954934 227299836 630872937 102007705 45357293 714551568 50970959 102200302 981157965 737600149 131621994 669673157 274562912 461060198 334128988 183306551 417165474 190439323 745568353 533889984 45279831 242965543 830078985 683446299 166064783 77694219 56423454 847110141 292249769 559157455 335986535 907387214 451323562 918038594 154835287 887063754 158878462 316396504 410042389 926031536 677021190 707876309 337106868 174234005 335529537 432368097 885732606 23712889 542985495 662737518 491144387 18862051 258498200 744392872 295292473 991492295 555389401 209396029 666341809 259780221 870803813 556012373 453680804 181490645 325987748 697199746 293898386 976941031 198767992 970803850 290358317 157214905 702045290 370897882 315833051 63591508 9849339 213911366 484791079 488037410 917824195 23528789 876671134 27414581 992027565 458298381 43011545 467173208 989837140 539880194 374142756 907614860 63155094 63190069 325337590 709554724 738239576 663797270 357312591 289439846 315363477 149643441 298119761 589880485 797671982 773972433 738665744 406418810 253645171 985222099 322095273 794275416 256194910 328169872 292886338 323163627 918965768 185156659 969643886 519166764 640431648 761278743 948054626 363887060 834405412 694413268 786445425 461934890 76319044 132608937 273018685 310660680 395789478 688130141 453636434 795372896 477040330 469058867 156864817 507648478 247294814 866388583 930628022 435208431 550621623 205124459 161158011 662061198 217514257 993956596 369892695 932349729 39026730 878074787 785765921 296452940 567931717 382391586 525907328 621520822 155301477 263017016 76734176 514106510 968215694 266895464 697713038 976882164 571488362 982299895 213899943 497899210 879117272 942402895 998644664 950930866 899083004 728739761 587039066 459430807 770199578 559028439 485588181 162362647 335386810 808774049 443958668 778325918 746816254 362258983 75103441 120933049 629273517 264099035 473728539 209613926 810547586 248253241 343815068 589285455 90578490 763885962 223553691 162164280 278261925 706299776 369469564 756345512 105325415 163310030 119646603 189695812 17051261 71433922 890481570 333357387 545347350 294553945 285941288 1772524 539544997 394323608 982775261 196312108 152368936 151565581 791699733 689854734 983627150 118707897 83914216 552148076 733809397 826337718 631429339 295584456 46230611 63493236 809827872 286974158 851640324 793913130 907053481 659311884 910529374 25773275 125876136 688827200 937985441 33545611 540343183 602492477 622598061 770909497 943324099 48482514 244299514 966383466 402128089 68447377 846742852 79636488 482134015 571591770 580554924 890601836 910675727 607795434 230693798 443739147 533375729 996605427 969255463 452252548 532029617 380650438 135225479 569721808 554145978 556110021 44491282 789302973 763577978 235495269 804413024 152890930 826050063 869471671 697681340 395416803 421811060 251465868 528176247 581260325 713599531 26094177 134772064 571257639 559813222 766280137 71184661 848101397 108409064 926643168 747186123 454890892 759322288 595879105 260154785 405869721 215684796 236173253 716743106 623550618 259672863 391607505 433058462 170400026 357355156 228068056 906001550 241380577 887634959 156943210 191704020 323773358 32504727 337623655 8714441 851779482 262634881 149970300 947467713 325770351 232415933 206755777 394629169 726941202 710051389 824904290 329015886 117303515 121575204 511050983 651831951 963233728 987807493 490626211 411184712 649910286 541944295 203263346 975333241 360502455 577011627 892086875 556557675 340304180 301584991 318051234 899603232 965495903 545662567 507714282 194733756 540929357 66231278 60334576 555981944 299531377 423460901 813688076 850113719 558756637 960940288 989609102 188378630 939242003 834591940 189339540 693342930 554440890 503318853 471041987 966456857 488216591 870814325 759011026 770424224 549334673 865560141 460197295 247203149 22988427 797492390 478992437 123263423 703660120 283228467 106585659 124640171 784893116 243146988 332152847 414203442 255512307 278326849 934686794 613911408 656163922 852232980 119711773 936571274 799110679 574348715 800181337 20303613 578921005 10346468 905514148 772785961 48135707 619217831 600616579 347976500 783494792 756332975 139689910 463465580 866429314 563950216 817687087 307347702 839297054 855851480 514628574 56001617 62640393 116415419 156595796 57175644 24137024 599053587 521596027 127674417 748621415 220416451 171834096 318460034 98954045 282888975 162778075 447679818 987188416 757426908 704213984 852815987 601128025 166440849 359566722 722082070 401705305 906674126 961325094 868266774 992305931 107955946 227649678 341525910 298084431 165410884 335559882 658188448 787728398 944430610 185342677 19406444 101678005 799106186 97634237 264582129 597587811 871137100 813392086 848323415 832425353 245096276 97153980 636197602 927740436 672147184 576129885 705731505 246188597 100911251 523505668 750706632 293837494 513926884 188027611 897428084 420576343 610505712 116988919 104483003 704603283 360719184 105836462 151090942 275811487 439559220 702143455 707320298 459686901 842844690 230662432 524710285 950206375 998046699 870284169 985941110 100588594 181176156 20460229 542624436 665085847 549376058 386628993 731177616 39627087 240901317 793551482 397941793 655741547 537491845 648578529 805336624 657687197 667617721 39808033 692857059 679016286 38582491 869602102 944052770 606493243 959144724 676089742 330959643 415019834 885599544 976690301 363255483 135895665 326781313 307221462 917355799 973261637 863908639 167364905 589885967 493800940 263020078 110268199 397118557 658020610 610181808 110737492 140418659 820130703 750580942 49750040 220966689 843808812 523042300 220660875 169590608 192200040 575014696 443099171 832120303 549062434 838032902 713542307 52220838 622042813 360462163 907355215 64071510 422383035 198103702 972093542 910760156 521280405 33236932 719941117 582529271 472160574 752082461 187148191 770335486 878524912 165503119 427306582 549338021 548986619 919715315 632692089 417112192 648122354 694437695 927356627 964800242 927798160 524733865 478507 48909866 840542023 696594711 452517467 6119830 386335340 23298929 177702488 733187366 927024417 491689321 15995778 95073371 392758727 879629359 288284829 936209099 108000176 107189639 417270636 228741904 878187487 40611334 733908733 454825395 940318342 90093830 122075858 79743168 415308834 729853128 998670525 644720619 907786451 707517233 817627399 911843312 894685180 24142190 882416831 197277268 328783015 285657054 75147633 717493865 480784338 931882787 512423924 902954563 319962959 154773870 768422179 995216995 202529288 341523486 116726059 891886954 92534918 218946685 971639454 199908294 704741912 917288943 42601632 709812442 796590014 494602227 900597377 558882973 508005577 208724902 199014027 152706268 86590510 494399881 177827642 788975912 678509431 960607018 222724133 428349065 143591523 998069446 473977567 54869303 114826558 625956078 931414507 547084075 353313905 503236844 851027679 682530443 123593992 232824144 31469033 655504360 473280527 971234196 970847404 623458848 11180834 605205257 29406407 265976613 714178460 835157571 333151078 727689918 948077891 791929609 811962477 804802205 930146672 870658638 546334643 45188566 460062929 728172783 96408913 126537369 731799478 423942786 900283440 498717410 761585772 829126458 670432221 72512330 833468001 750623688 920655889 290323122 405527466 854795372 531242508 578102688 181886568 59797041 581630054 353091674 548753162 700972885 982957129 610418518 428523424 176992313 760318857 178967028 2028346 328557719 668924927 604169281 63542429 348619324 971457330 701184601 213807551 867744321 27738554 831627013 921678554 696284016 172347460 482317866 360306169 501522545 55113374 771118036 332152615 84937046 523022700 646026067 29463015 310973595 805071681 154981691 128001265 603048849 429751584 624234899 920899814 196608169 31053722 835150986 625014317 489872146 984309788 277822966 906451632 678371696 378204807 878712182 673790273 177121032 72982489 608255073 403476861 964910282 61174439 18036781 597116912 28096951 373565348 808510100 334700971 763183436 354101718 179722716 740911311 436812791 809180050 246319338 414091782 213172029 61567686 227556823 566150691 979450547 993458951 376767901 166764607 433614548 520818341 963771781 258899154 995695503 566415622 89135822 204541403 175871469 895992352 977145363 402610892 45471000 934138684 575328510 757391049 278211635 861202594 54147933 826147474 899922556 275778875 312926105 680255769 214341104 332618115 296333597 859196448 260403413 560609011 429943966 870334468 385335843 366146180 482191786 640953960 911306099 650987980 693668692 553088919 542810611 281567545 602802357 756987254 412362949 851690326 577821938 685162393 201841384 448917786 657623148 163008135 737853487 590593600 92947632 704357365 995719590 22959114 913666168 479076732 24903166 553208654 897175855 501777976 988893153 760903069 219426105 904711642 175688195 949110406 90207613 603290574 156418124 610235551 619962316 785020325 289088430 262192820 572532220 879177528 233369646 228526186 930102991 16153816 531969522 121668890 797441725 294580351 938009963 185314402 672997049 689175218 103536583 393066186 79963946 228022807 963919138 831059239 281283174 324796839 640517249 438580928 485184938 949804640 712479955 752768970 918451767 779847077 555787833 379540514 993024761 205516741 602545969 18473002 667954620 12831024 930812031 802996678 300668266 978950092 270725310 382481253 189144214 577545651 59937024 957367901 732650251 64625014 528416807 426885620 458401332 614837207 698388815 340411312 661797954 60009270 508209873 249972850 326643392 223503993 91102912 689642284 320682584 951002787 185949862 684105219 838243754 720494229 246952255 823201818 40675424 924513597 461665043 940199863 79610773 871003216 523012604 916877641 595107290 512442685 410979530 820782458 802775163 19050472 772460661 851580697 841625289 400324644 77294446 801514502 54399953 30045678 841629928 613523016 217195461 337725768 853464377 804414548 26810230 628192654 500331176 882081667 481388839 553062094 948095272 222952293 141187397 462901478 732542268 315917055 616732754 994062938 34016591 603310080 875110745 293889108 986197397 967472698 334084050 991994519 402240454 121308512 951695503 803168720 661581467 640539568 609122071 412679991 647189071 444400872 795308314 900848033 11223393 573013058 417767556 461153799 100126000 417979728 330801128 447904062 485527820 654122646 459998425 522332919 132095070 511129937 30542693 113858251 959361077 970378857 329852785 927017513 5797685 126067275 958795275 42006629 411738834 476116615 629248447 408878844 188238108 615234349 399939283 77194762 85959212 925828742 890625899 627448550 452664630 504209273 963734804 592544279 170965617 531636759 727628832 388150468 641966046 552719618 60138962 113358943 680217398 142510273 712900350 391928641 13591634 200419078 766391381 800955368 387346248 80222081 583527232 173513567 485507798 965061897 215752086 406601731 820422190 196989466 688989279 734543318 634297460 866253965 401734117 876902123 412767203 145215865 736637179 653133258 96917856 786203018 131000104 556793089 702526217 565655665 849965033 338337628 490320064 465810821 378857684 491867486 859230057 646630453 267604946 490449678 583493228 157060680 53967028 416341188 85531334 622002956 775362315 673340621 764320840 789185165 161156610 46981720 106678784 918769701 849491869 233983034 122410741 563316195 25285987 479554589 913177650 834232103 32039215 878283294 307670568 550081267 902652032 551888562 630025524 914579633 266639893 651755390 552874660 711366913 429535558 110693873 591473593 624084500 16775654 623808231 3555749 971050682 794948464 363966849 494556916 514245027 114431810 680728505 533871114 607600573 600748938 374802869 442684716 747434981 911527869 130194855 669179210 763301084 879880658 989370585 966049288 45029453 2297976 591673955 259505226 116964420 417634675 333472791 164593344 234290496 59789006 478850129 852357323 770640168 143478861 412507721 896014960 35328349 861324015 526636920 545458811 946075836 450007565 831896895 946257700 12197742 683220007 885500119 426159003 631295413 760603300 964647747 599966540 86596636 603664581 130586154 574992859 135357006 731731607 291804748 182386702 612870344 872203682 502503527 86028829 389279189 537674244 777762026 833060787 274065293 147436361 306557736 818596654 334939147 526009177 379976406 754157391 834946843 474146264 833132713 818541425 625707605 914931067 46482920 873435992 845592035 41201132 835195223 425691714 240890433 783775731 359492954 817529184 415903224 290567835 456320673 523732484 381656008 496542269 100193635 64086521 343334705 758282639 492766884 902937960 483692707 866274672 881140846 658495124 12971229 649632704 759259006 918421177 470168634 342721981 243888985 999387128 491770336 702568180 544650101 679995470 984098363 454317472 963966986 854156600 951361027 253919727 142729330 893568560 874702661 596332977 654412924 290252705 821907635 179081964 469656691 64048038 668691218 261755214 796989237 240068966 228628051 410548795 683717734 533416979 373919999 882375660 755254597 53238489 697627765 37505392 417572784 384941721 44148450 271905121 734328766 652660416 589752722 555415411 272536454 459451070 399674286 478962040 266750629 591720699 919555202 805844738 533571886 20847422 253150759 553653877 421081677 641090001 83469561 428167099 752695872 285153571 472962103 301794847 183890535 22599962 112936206 461104545 850532949 264001265 145107611 3342259 941317862 648071252 138298530 881702686 167659339 464231028 130308473 682512957 744831117 568110592 453712157 366171792 623275088 947586398 32834483 379835052 897332558 914353228 577800064 615985183 409208539 551399271 25383096 713275429 691168976 780563979 278061818 531656926 911995561 133557464 134814671 475495696 895776046 858778004 368626909 391700031 86745884 416054125 832083495 344196367 874005450 705385633 933426853 818207753 870736840 260166054 14850705 194302490 649792151 953226132 945860882 50331716 473654160 670547267 459390133 690026288 128185707 892760625 311135163 219446773 610384449 471069674 77736645 553722757 522404585 401208970 917171880 695001895 78311757 962686551 591578801 948137987 334416608 312242439 430666165 158823958 25040044 272612164 205121187 444279994 742490708 226098682 310050068 372592412 609426391 462102948 982799688 119221001 727842344 127400438 570028938 833442006 32834308 995591792 234247474 243563431 579461431 916588800 351964994 465751134 90917899 433040537 720344014 443223465 375009327 238054705 792933255 228868750 653919758 883946754 364255652 364495731 72381413 10826701 759284895 222299993 186799277 73157748 755067123 414197568 597792008 262052437 651684859 689903092 481793667 928378590 592874926 308693244 334435841 660448936 449603381 649933967 845428716 556697 925716396 48916878 164432485 481725214 882846900 29575342 245724541 470619627 790177081 743285368 434690227 877211020 544402644 321882201 329756500 306079755 64349389 721448432 1101262 999526549 995823675 580238426 602351694 479022027 810106592 891755602 370340177 219964371 960249045 101202506 719428133 440612754 278534036 913375328 264215844 993922794 672698731 408894933 259439121 795727842 781755300 825184158 634943675 399755471 607329058 309056282 671317997 57704871 166736058 208832901 300411864 107891717 59699309 386531615 47305249 84260388 219798160 850975065 643486175 259892779 548220825 336246781 830666397 997907936 134593941 150498686 951814122 167011026 235768786 572115708 513473713 734020558 104076609 125702338 794262196 966906711 217177359 449836657 839176393 186517205 420687576 68542048 121698912 773737160 196789075 691889883 98827895 343591301 564817868 439801802 56386217 153588494 551593047 573076667 560848191 937021629 208512654 25673794 295805538 628976933 168784368 591557558 660157230 654262021 437396234 859296915 274867753 656462135 521215786 361070665 696766080 137762316 748481046 559368435 756861445 596003213 957912388 819272903 655077057 929433107 152808677 309953401 966089491 588428019 308521536 132047285 700586416 372780984 240706523 450453423 395082752 528478916 716036946 133358043 873434365 546815116 776729 529025842 199059950 618244303 265738436 169914796 344764852 140870114 273924429 324306374 996389874 953248904 359694868 287223344 453463974 917447001 757126336 269654180 263048913 778322192 565555551 226422528 972464123 371735990 779584012 816815395 489972487 798175797 306904465 197600657 457132678 29315708 636831248 182785570 391150212 397305742 811870394 982780830 106937373 83414547 912066338 955306727 506401267 483226090 131720806 992806308 927179789 261789031 405623678 222085529 56279371 222570351 528781352 976762682 593810158 311118232 529360270 971433110 723925377 618471376 888820856 941684859 490046230 861092543 49149688 356779583 341835519 473329209 170592650 527700754 664486485 976096885 846635688 793235509 403293335 941517125 636580723 524292750 969957660 355669585 638448982 835001961 264340033 792047913 189378620 943474144 90550200 707512441 829061730 355358104 632619070 965741134 818218171 921941519 573842085 484308315 788017769 704219921 352067576 135776702 925380712 586594455 23950715 273167169 681532109 74017957 320604659 620221333 389757892 772518109 993125869 776511830 409031579 204373775 607318239 522654509 686152674 892179668 235327857 907887260 558774218 550279861 399149859 893214799 969117935 21050589 60935662 251123075 846649866 881835848 839635705 135454021 760121730 314378959 390742084 133552221 190318513 609136539 601329921 527570300 464369792 216494897 808322579 4680890 85021471 609751301 980787626 940083653 344151996 644967656 832915260 652815025 990649217 815096196 701188658 163484452 794114530 346580976 179556843 84860521 552259308 446812786 908285826 126567584 471211288 456408998 836554258 461986000 656869647 348257195 813288730 858800409 176332286 740548464 514746349 696106929 863343927 317938822 598177559 190669066 111340501 927957206 509364101 832267184 118783631 484032842 800703073 456757499 875627322 911807214 649223762 110877027 488426033 369402607 279181943 432083992 25384484 141157484 5621642 658664924 418030273 895023239 567918065 630691177 113184235 117868253 577844983 113794639 462044090 934648750 940535273 2207741 88542510 245479714 335496859 838436221 715685905 186386574 952421346 109167139 747534379 487739584 758063035 241524188 323234876 982336567 49523312 628596981 531910496 434019366 736211753 415557169 987905247 868781726 842236359 716369860 197864687 932766829 300838654 240479011 530346311 718603818 422683419 432496249 405154189 124878967 932827556 458290678 215391538 475160340 758337395 281818294 146842677 54638403 526908685 100016925 287183397 825342891 438826536 682937154 481987942 601188341 777123822 458607737 690414085 160400399 89470731 895407665 281679640 956264158 796756403 370824013 146158350 407683575 969969509 220185138 875989845 6032775 562359784 268216013 839354314 213652711 27985630 975690499 308153783 97967906 539108991 763168707 609779900 494844050 638409248 844442607 974019347 657981947 583272500 219308199 686630643 20792307 550446264 667830343 862217067 96680305 318637522 829608495 912749410 233936733 474210255 114064508 744860290 909946956 951324483 818220224 49891542 207246955 235745039 758860289 713711666 346723311 962288408 341252057 665826314 542498085 909991339 595580659 359574618 999529798 868429470 456032843 963867348 305565969 994097105 620011601 929094812 703508300 110136731 912055676 895066069 303254235 602207584 137828858 86189444 745898387 544235598 749678796 604733975 155131283 818137724 605172828 398851989 157285340 91380220 395220141 383780607 978828240 991994860 484706315 871213086 327586713 629881006 779948256 50823075 16577692 477565876 690397997 49408185 313444554 603709864 458839128 75765554 851548485 656303244 417756179 802373939 221435485 924403458 967086044 315393445 365427579 831394178 688837247 854195499 277092001 177485932 308091859 463888552 607243515 68604444 833665617 9971481 662621024 629654676 254634241 719758637 553482127 644778547 133447931 96240015 698741741 1476275 467119133 174014639 549897989 825821387 72147181 893772266 125618704 979353875 656008149 218282918 820259373 942075258 510197860 654171161 411066365 158324966 69642171 536867247 907468540 622092681 251514234 275747726 530732409 540343326 571413025 724101832 671226769 69097804 297105547 18895462 943228895 962348345 319665068 93075170 527678094 759694787 408902149 117689328 231098811 83885376 129144213 630615626 457224130 796190414 670915089 847899725 642714167 641998157 600982885 807265584 746610030 872207582 187175942 829582995 233591840 62373661 829984595 951855963 663228869 547397961 904215014 783564960 158622825 197174268 781562969 226097744 221999409 689778133 218583800 751283651 347889458 384616146 652214562 194048036 851139742 868638347 559115075 914964698 613585700 261349483 607473624 129581910 323155901 182659442 50318241 63583677 357467489 489658895 419758561 985358472 359708010 153791871 28382645 300481076 721228534 955362967 286625353 631248365 749164690 252259985 543357653 754508253 727943219 199830175 789357027 940963787 440454348 84759796 891743835 689744704 534269984 117236245 131562890 100297605 939087441 307889975 226229232 666215999 906966469 327121833 320230674 697847030 732883690 984627372 288749791 54196809 571335541 969042926 824164951 130273468 628049250 974676286 669966981 407245224 195527637 7525391 688448701 791860225 779359124 878785331 758995361 648834074 587384607 871964800 631270696 4686213 71109431 22833049 205080125 687740841 811798040 447360059 327308086 71085840 59593009 605077495 506812211 997816192 560597498 334521922 205357562 68668200 198744023 820906252 447275902 893639330 768586070 320005143 512747967 680261715 817124747 356098513 912033560 428534059 626797504 511315113 924267874 274048431 218526124 535134904 260864166 419777963 697306018 166345571 255164180 206267398 976121207 963723263 67915080 497793246 551806018 146340821 479379675 390907607 899238534 30796498 54663578 901983571 362048878 55334499 896451952 170455111 51320385 917273839 87978123 136914214 595411081 186340377 954699687 349455446 519112938 592278033 165463542 999309182 915046101 470073056 149280797 500912594 709535665 192137168 132738803 366491731 820252354 639663334 658397527 507230660 851666249 481320485 198822457 360391247 58677639 651299759 791546765 541011591 46990994 412006410 808409155 784380319 687439978 72670360 643366858 704831668 243541316 269247422 955439375 912454546 687873680 109042488 384997803 658599000 243564404 466687480 716116342 425420514 986542311 744422994 947596956 527842198 677054235 590255683 948563307 569293059 91225926 316691946 231056058 588730987 229057521 877285772 262386472 413715429 501670518 324818094 82039888 170651340 585500217 188846483 358984778 358956224 760682160 744956990 242228165 396911555 13027935 758935966 785045891 838200799 895233369 262280595 824725981 333180518 181103219 648488361 261964370 850550900 610629776 333756892 215031877 469427638 791940257 460249397 293534461 367725758 174130334 331464157 716903013 372817282 125226757 366919986 355416918 919565216 989916601 103053048 282968468 838288647 505235163 721311353 829167791 713996597 188049450 860830667 180612190 496441232 95316507 11929583 457965893 728512683 856884377 486512083 997659156 631798933 497756538 607582529 518641445 358841671 277189854 925353613 341337560 332483407 452282471 472669454 846785720 394154593 522869788 450792606 784557193 654931923 116426788 510356251 439086331 716621635 291518405 994092794 815046344 57293802 816703901 786539728 747935124 349598804 915257830 445250115 938240245 659138885 471911623 956121702 267065750 830222614 677338371 287262808 740750977 64738409 451378034 245721811 917631159 562144887 350002570 943554514 256297975 302596152 221621961 471029295 366709382 909692162 737671157 81510741 452276480 222527010 190137374 347869961 719975415 538734049 760685693 777818745 524228434 9510047 506081996 606175987 425608497 594955455 930273965 903691988 832545233 859881971 947240647 926347566 897003653 48286067 196950481 814300690 262598055 880024957 850363686 996237760 132431050 495851413 631316407 334993702 146239653 278069386 918941975 492429321 138767635 733683334 20715890 687312109 550669228 294162072 912766961 964866598 929887579 975552538 947208612 674524759 474268565 998866712 339257618 211077426 354200368 295291391 386677754 36840088 652431059 369087970 385796038 853128432 506166063 538114440 96284910 204972155 823116559 284875063 823385638 580002884 600441389 577593658 170904702 781925949 582099523 141133304 926615830 600576251 571163065 66678670 568179012 802768451 165152382 104986816 859079041 441116240 761911850 875072266 996947183 518319373 675915662 70139125 372349472 487473363 686912902 586421009 314361270 192338471 757505383 618982833 933834861 779673630 360206252 146950843 698415158 416600116 384009998 927877403 19391459 330135893 677374259 396280098 156063966 446271232 708421005 126668390 165061648 409433278 279403499 424649054 384417075 716233271 199505167 989570907 173380967 786227912 620056355 346979069 33930129 208043165 299346579 934142237 272234472 295762085 503630565 738819731 328665785 803000322 835837676 632729802 28053334 57239999 385490411 387362493 191041577 432943575 284144370 232028082 495593413 993316925 762206058 827696966 246329897 950030839 682683963 827420381 395552135 224635094 725512549 361402162 873181132 862321387 811324440 608631800 321618226 256724239 797163937 203933557 379577211 502814044 18645557 983800513 236802335 82216270 852146040 851882286 511231130 20960072 298533712 277533682 862666834 396922217 769770914 676588799 632580546 998261347 676256764 864525379 410387628 351330959 390365722 991550173 915962923 392919217 739746836 249250955 24860193 649363606 926567991 571633281 580717459 252450243 841483647 817501997 705516349 820254825 819789298 951075589 289777514 675450964 302749805 905666806 272900640 355057653 103267531 882431590 701243626 505399577 58954593 447640468 548096313 59549587 417956979 432070035 354261525 246158338 665671455 72295539 877097597 987247999 690362027 932502608 573682468 402148037 975246175 246684057 780653521 700061218 837748945 392815554 814627859 88126531 545508139 60972905 712238353 351434608 670716974 33598739 88888635 251914276 99770595 947810584 177795878 325890055 23744196 415518384 183776652 604543924 423593203 464352325 524297644 7739821 151207872 324060048 970173858 895100038 384813315 5764453 251017550 906865179 7059985 741237644 824485023 166033831 197514604 654407200 803530386 590604329 512318824 741334010 306040824 454382065 547984960 871034923 174473832 626481795 88884462 632600292 761614890 841291235 263967905 502344362 269228356 764956798 664171314 314610630 526267287 550807774 284699715 613615246 131163241 542077384 120292120 917525060 391444465 671094512 764860597 55125425 492144776 515678382 342215547 237237269 171042953 684273223 288853350 907933132 632349064 124796353 709167762 321153674 743333952 234890292 203608172 79274889 516706821 406401931 771256914 650825322 406125671 880396403 913540285 157892790 988458900 733283208 98712412 85848845 147942527 917455170 921521371 780005909 817177059 277730304 912748940 387182986 677583969 964007638 711056222 760336177 210947404 272421209 370533664 711119542 677826961 675113616 693980915 997001875 914969724 266506495 817167720 24595537 306368150 94895245 291726517 596374337 364979250 745663908 697908221 241681890 852998746 7615857 791220605 383221228 760313931 162404764 909573304 965344312 66243399 483461673 7983432 64526938 96859404 119579659 335711351 826729469 179291988 508188492 495667262 453461835 919784033 396855264 33754576 588061873 789927543 131522668 737054769 193637714 763302413 292715767 693083253 203546833 467952421 142162091 166499807 512788799 927112739 514796728 942086882 895611517 547151296 103614253 98112130 96208915 586777310 543560134 567850390 384985212 461044139 927783367 49872157 475470388 803311725 676460826 924501675 901261422 690839870 631695191 207715312 114891705 677130359 766001877 57144760 55343836 351220250 595565390 335200865 468026135 741740024 818691146 83416666 903874368 963684771 805518285 628715030 723003967 114122395 278997487 686832002 479459532 600241479 639257623 873657083 545160898 770238122 374574938 417552972 278012564 106838303 674210378 807664974 585827943 174482734 781832159 26395110 561276403 90095576 308833403 233597199 669266200 265816391 162507073 81494093 519076069 272746415 561629163 889554358 78246276 578644960 633912295 548091476 802167972 756510640 108785684 734714486 136392839 270853395 98067359 386628092 391988282 848404112 570362739 744739462 373987948 734939982 34771678 880948565 460120568 425276455 283539396 899100641 452410445 657941328 852685414 930085249 635555660 9624873 858424236 900972114 524410033 337309408 599204012 710091517 184709742 110010194 555815454 251816289 171784822 322021868 678620397 160254007 223517959 680707022 221545543 548619244 603195899 935454080 176245210 712844892 926957809 531822509 395779075 416736582 520129554 791779582 90962486 535432148 770317499 157355675 438520099 897818282 924564514 569394378 274256341 926118114 395098482 7338562 85386384 383449843 357766664 362444729 104511867 556113134 497881102 636065716 794905292 4840088 707498239 96597613 526085674 524851913 544523252 828173334 682064630 81267399 108486661 830276671 991328839 121750770 922898901 717701800 729925160 939568614 586012902 71369384 103057146 752904410 330292685 484358272 695002130 359014903 285401447 794777037 646519523 739691309 957209744 431639122 248284035 679186181 438820746 336074792 391897101 137135242 272082141 458839540 73232031 198003161 698605525 796553673 508818345 888248731 201103574 4325816 56403183 247690110 373217818 20953616 747700133 638615417 773453535 352121151 467073528 350464674 43254397 641960935 55761480 351127168 813363034 156786032 247666010 355917479 376500202 508028434 41778749 272191116 846837820 387130798 125820908 454270235 938551080 937902285 879188015 817702903 293042384 437537903 373462524 541617586 901418002 879049573 162042749 299619362 715447468 278628867 384910857 364178380 499365919 914299741 372963260 823958966 754533173 962812678 520075395 215855770 831783607 9925404 53324132 945939434 212757921 597824043 587891575 662732739 142177320 89263610 800288726 497311063 649128872 458817724 403339706 672940985 941394019 203597443 887577072 628280904 797873412 300129205 351792584 734053021 56679666 966598448 54940125 909664194 526535837 533537734 431882970 691144209 478829242 286732858 116207163 420528792 43554349 120027595 937814382 319064966 916249719 294890935 311332604 580477421 597604232 418324817 164428782 122244477 563477044 275087852 558671341 23813030 993714467 41847697 780828942 917198521 752273931 472883088 525449271 187707128 71300406 781418067 455230571 392814343 252749863 510291316 509739942 757820742 903700858 536420673 959248428 86220076 300632713 124729748 826449075 787343643 321163147 87741382 669031737 938122395 281701022 390837787 723005218 681416032 159405531 940647759 298300633 357395997 614469075 691673589 465492659 987005325 471955759 441018983 591087624 914663272 739396989 941331356 854583151 24177891 871255037 674792340 226849415 202451285 501670747 546584371 341156868 783432528 499555602 282802214 940731280 247890387 741049890 376500859 85178185 583688759 929964201 559822438 761657445 282924182 741493328 872135712 300908377 26634924 551202952 4592977 956678831 531485178 701783577 926096825 434988804 853991032 638659558 536989716 676407519 811194006 975636479 855013804 9869871 33249896 408152105 312813313 545097566 424083516 661424940 754002315 874586481 768813754 184141331 190904769 558692868 902290249 396854154 539393711 723261657 539441988 288123507 618479570 633718119 804864787 337778435 228253490 428132289 150945601 964925474 251989229 146736206 916420700 576578135 980508155 118906426 29092033 896586904 644099625 596250480 641491852 889720684 166218086 919503906 132320736 909566657 633620769 95998485 580215950 622888588 72189530 514149137 592030078 974296826 152376687 910551258 990199799 319025360 259606090 607126920 358898176 505287035 671703036 208756873 576298025 842280722 520382888 162047815 838391444 730082489 301249057 24503578 737350508 841218218 818576307 482122893 634363662 112580344 919218939 487089370 630741180 759911699 727016309 925652406 34463479 33792476 967911620 86900125 469811354 584199178 86932970 708888927 878576662 793714094 28692679 675789555 673150231 600296949 698442744 358934601 542425220 553305051 702749682 650534557 318366282 85387292 490038706 693381372 261946468 737012827 126805247 394517399 797606439 243671258 756934548 204257515 204955787 48166694 753157348 82955031 995501537 632253236 248068919 954496560 202972238 450213869 371121324 145523946 851944671 912260617 985672020 823011601 766685847 363232009 233163789 296782738 384269179 563517889 326311095 358879747 377281251 939081931 160590596 589395159 126680615 825587728 299466156 993193161 815866630 462154290 288049972 12001010 286051732 12153003 307449163 361096921 266657945 333764255 552019711 954105307 728642759 667515449 409847152 290840793 453719668 261207116 377210603 139599934 626978097 627933211 408848402 996750656 95403202 737706087 705154718 741765088 938466416 94227265 290583400 998240246 254487611 312987122 561353799 57258375 424917919 555007235 137999105 63095471 994798176 55633952 449921542 778230781 210376649 144646054 440572973 534372530 992972316 958908182 164567708 743799927 968791830 463278069 118497263 757017054 684104692 18884741 284436239 463146594 690076355 818571530 281809756 721801321 246000399 563077653 56332829 9521577 955225741 411786933 41427153 752017031 36666245 97564485 276620981 308232647 926905670 880133867 778319146 841587214 412261062 908127660 155618417 123490147 545478174 72826293 188814502 60983276 616881407 136757099 503460458 931902936 390091813 713505394 759341955 88504957 845501252 270477546 340129714 169234869 793435665 668460921 480512615 302444357 390137192 636316127 907163405 695941643 22448514 802355729 737798197 221718677 156292843 166856925 565759130 78675592 112098642 194393553 809468064 811362909 586564192 794769321 770909598 718549883 262496764 303384943 825317443 288154143 521594218 493182309 24314162 541309954 708864461 264806218 948039664 559435243 976652845 695248395 195843059 306597540 588857121 694244359 110573365 527099286 888862483 397662848 533393869 627238042 92567504 531766038 121274232 318291371 166220870 905082071 551362964 749347878 713802905 999562160 245753999 347090108 945406579 752559310 1369415 473093176 288089216 889615092 259647368 892222713 158760799 894840499 771720946 803966246 396208313 259157294 890865411 880980967 137449304 770583243 428529992 217147296 750445032 10942303 246900436 14223960 576916984 266355609 886191188 77269749 646962370 760758516 923734098 637415329 547595865 176155062 906156789 965108927 147134456 627743360 443309699 465193017 960640461 725319966 339529299 419933174 475708236 283992125 306561023 382836463 730169036 898809894 87628250 256729713 17880680 12487636 873951836 6040403 266422673 124133681 87849092 222198877 27705994 714709032 301735296 623510106 276053989 949137999 892737028 293746418 48264013 834429753 310919610 670545130 253581569 256839053 109417373 362721309 854164266 844070354 244507579 63230910 655859711 717182708 774159720 106636296 626389566 856392084 45018184 42454906 781320740 582279263 655716652 856559193 106523289 553933548 226287941 573771058 597235680 969503940 809655285 58081801 165286698 468857088 292095087 723952187 483558626 325054669 131245053 211058516 705342795 60911523 986764143 970286944 112635725 572815232 773573698 293541646 377827232 490167026 370961484 114414033 14102403 598387144 286474058 6891680 612984468 339369290 584734611 379905333 194057401 271408308 646624671 707786474 403732527 318462415 118971092 202717289 225465169 121373508 788290088 324439718 278490613 41381511 182879376 430162848 483283822 998633160 140641708 542316423 872958006 48333712 925873340 47335208 327672532 111740642 975180143 85558255 737792619 640731630 328494290 61209731 397424621 412648459 392767537 872535049 220573133 577552849 81679796 104562536 453280630 332935483 447355362 988302678 895093056 28245118 580342223 834125044 346880521 713592240 685992602 685454577 735592463 412822293 999026776 692859128 570126874 980873563 726465012 157588045 147713090 617043862 786119530 866366657 728797077 553797476 375523538 520041472 435215398 376110979 623738730 634298461 867156841 2952611 865787739 108357386 772486789 441224510 700081635 298590690 952162507 973429472 110826582 109633186 148057584 883046959 315926034 721878739 835764777 958146015 484977889 258063926 611628435 404181904 479750529 215007705 904628765 693649123 704967314 938523445 361662666 857192653 416669696 92524399 48324065 189784596 733396179 786764228 904628311 228024812 723919648 428254201 64241861 359652545 495658281 559702690 64076828 614778394 337604265 25422434 9521302 559733651 379489120 299630676 39033463 645412449 900227518 677585482 957996986 993809983 463429767 103787001 423007515 607417753 817181810 216626772 819128515 733643366 105081339 67574488 985537855 361539005 228492843 652083540 664255778 16409816 25765891 501171707 411966564 931267413 71781605 972798191 610597253 632505377 597876951 342797710 825124832 890824397 370372995 829177699 327490769 741097771 643640555 122640258 794327920 223261031 203003874 147554191 447239290 152386060 890478795 483401719 596036066 457414907 207424480 579461548 525240957 3834142 391279326 271197090 749894630 277642677 817333315 555977017 632680798 940184050 268468658 407372016 781891674 42145226 19578603 288213989 551560720 96623723 804483304 777570397 431313059 2957821 715967915 317679802 898269729 751332725 803580327 231152980 193782356 388389730 620833922 537684970 937068873 129286254 379049302 489958259 55541496 520164812 46030728 250064684 275239974 576654004 139486273 338915557 108347904 1984721 82826840 821816319 3128651 451860974 215402000 305546366 353748596 791841108 257130515 952800580 109266698 836362940 909025650 192785527 445646336 908885404 921744700 966568432 391836322 73150362 212956908 10472122 521089480 741150728 936724338 772750912 322401776 784833538 39548509 429806580 218346982 669312446 841793201 943998346 918882041 379408137 254550916 872406122 258545485 675072969 872202281 815196871 503467943 482346754 961831389 847308269 116998524 573917230 222906423 613628339 812584270 478960562 114582883 27715250 643403895 700034818 879902557 260575868 651114050 615555560 356085019 488748690 385817879 431047261 601384786 603752048 259997995 324213380 721678173 673504697 343504953 91807393 958357652 684509027 646930706 208218785 47106402 534735657 513100378 922608436 652552749 246362705 782292723 800441130 888526770 133572404 642001945 785547815 903748383 418104241 470284145 739832382 145521690 636385447 898918429 69135882 614117477 925641446 865960417 871688976 684867206 331915537 6650754 478705092 747367079 330790185 646497580 193523618 866392862 88784075 59006500 333988289 74243348 755234823 714995915 718728917 137597401 141691165 751451050 175747316 82644928 658466091 381521305 416213601 209831842 437713682 894753371 340789666 848356667 975468667 42183401 440191449 151547909 396787550 484283479 547040177 605814516 65568534 19524713 582944300 874709285 95574333 233954261 969465339 125820861 231658641 424551872 393568280 63548408 363791042 914723101 400521781 936005708 101864218 886492361 90221864 991552947 619053283 556344928 344728505 642471791 517474962 523814235 912785669 694654873 609447509 716864124 413763737 316419821 711417344 601520614 810235692 272221953 157185760 855792805 839992649 636502433 290287990 21051319 805733516 172019798 888227069 71927919 686855794 364490344 927785010 413719933 432327719 359991984 280756926 466269413 467994301 313057455 946627030 920365002 989572601 463939247 432580277 274697356 754596618 471258297 825591946 748985038 744754873 364658415 146199849 651732144 823281585 994349453 478472737 290360056 133216054 737356692 948861930 744147953 95740733 411391869 695029220 846027848 435859525 908001564 565847313 267323787 47533721 818310275 689660823 357572708 593965813 851225464 804766181 887007685 679680761 807716469 537065163 737381181 143068511 146402136 513218855 124099946 496525558 949050459 676102306 862552425 479332164 439327946 690077118 105989512 123410850 514193159 998012726 468503939 418151815 888071849 402526573 66424419 619181198 499400868 890275658 525338780 266228519 332809435 261191021 937439158 514501621 417179159 418948137 432858548 438828590 228782866 576596963 153785227 819256580 604957135 365865831 325910878 758145952 495351585 163495399 975202364 112454415 653271383 203845331 954458214 67933383 63957666 18236510 582759861 83874841 351350499 579377493 393719733 791723525 64496043 88299979 627065632 811252078 426727702 263533612 318916024 516319155 881356025 741775827 179084465 577862194 369318701 508262194 667655450 681350760 349255165 198258414 574502490 419026161 682805581 87120711 577351486 472562390 270416290 699874326 340504431 972909081 922926674 345844314 556660959 509323566 849950659 542919143 788277887 984166221 367249209 791108803 162334106 492121919 253208806 908155382 836726963 843716241 943910855 939982917 379685026 12210975 409067885 95092558 47947809 451517108 782028866 876676876 516606206 669951911 919235311 370849109 801218138 789708220 917844883 201783030 211524663 448474099 214392600 89424639 93359094 316589755 981228987 699019927 77417118 160198998 223072595 590198448 601355218 986671763 572059763 37651289 13995795 35926142 731426871 790255072 607532765 729349878 223242900 470881440 268743893 644957821 81213863 943287013 900204409 833898006 332299746 231854877 673702479 285065992 439285949 759192063 439125914 756414305 869894044 462909822 527190119 73753393 833881681 959796512 15886820 753132876 335916109 748392433 511602989 144724458 907392978 487187272 618971508 412120674 251648272 699263770 802105910 474406145 947282147 277346666 519166539 172437164 568067949 528403812 600443462 550791658 732625634 12281414 157119075 184702168 535068831 124181815 829957777 472060950 857301883 406074278 100685856 590631524 936234668 334785379 438145227 275991904 128512410 988108338 758240792 649312219 737430472 172716751 410350458 474653606 742006095 701473260 201889939 9302379 472232646 488601206 571517606 184053663 392371410 864810552 564386721 44187073 873389311 999677797 721582653 468672335 14945880 518595420 171588114 32715727 678266033 639751924 831875839 483628559 599230120 981372370 803697071 778045659 106111058 898113811 55420304 610182492 617167950 772405644 381386402 911185911 82890071 33731580 844509190 965608190 727558590 806943797 972560815 595170984 861892695 660088938 690438051 42837494 187617247 431297408 798747435 294678567 123936706 45263993 307301689 692187031 225094832 144048586 572354359 2191105 381765132 545859256 721145102 240389312 204929172 386297361 946916471 662454958 705605432 955859940 417877075 48121153 954983293 522949888 305004047 840785637 516761200 340842171 565935228 232447912 516783828 301347976 876929023 869523834 955629094 352470115 696609805 489404182 583439635 504245266 852550030 818857873 492751162 136351762 545089838 503635574 932984833 139128221 520375432 913480819 601111074 647070445 66435248 834586971 681083483 536721890 415934053 407490001 1230916 242931559 600085298 19806156 361821629 655995477 646775559 469462980 586490151 480539359 890432974 814382004 435641072 57483103 264333535 884843432 700730044 665760091 3683788 63847101 510676856 133498254 850295594 976328721 429927153 540067435 675667084 333489119 361939118 947783860 408079266 37070826 479700571 963864632 347354837 745870919 929125181 259135820 350789594 200323034 458601433 3216676 146959617 408554512 10170306 670196563 404922026 778217509 794762201 934047755 277465629 525579611 621688333 608720649 219464649 686482391 749147141 380492840 469499387 530356979 648886940 944909796 157707659 156959740 106996654 384254190 599896155 640045471 796209769 490683934 967702313 872637715 323174793 709086876 955612629 254680139 638870819 469847671 517693652 304984314 857171697 562033530 201452948 83683621 757994918 213000157 158215806 366050701 559003790 498691656 469255157 844197936 161620678 925679792 169789085 726288753 879270050 558584317 919190356 279759421 731650483 453049453 199186027 781111151 532373947 290049022 434762703 825461894 574855225 279797104 607461522 824580797 327796719 288174523 659716337 827747810 156445020 91421797 58919880 467931897 171210938 818579049 962595282 511487638 214446767 904589270 720597611 999849528 254246686 487024624 64816198 190330520 605464507 214968193 548563884 685532737 710713873 962620673 924839141 553086630 413217299 522644304 704764049 496135864 746951823 555982739 413964190 197462262 282001436 497578126 383449720 923710707 663221877 880071525 895088775 872087653 209808249 127759359 866271789 745046370 843866826 682797089 781265783 281836571 455379198 810932694 150596048 793714540 29149146 388373375 268585811 998306742 807905560 491134119 717430655 368179506 362980823 491156960 296288177 786856292 971043099 278287433 335095266 62592668 353943980 189306158 939867611 290345299 600433382 255551375 345630522 952909621 259531943 875937861 962403224 709625510 258968134 488162325 116179503 813287120 89110632 519744248 761609226 202666402 540495642 66990921 543550861 767322910 741352548 584645129 897306016 914025491 181829300 600712825 929273560 187243593 751495479 461220752 343773809 855240609 349290121 467565276 689023831 596656070 621808366 433269754 430337926 58088237 523476886 860720873 837283898 891819746 309780833 429832318 228629884 153100970 366625073 456763335 666820364 115197695 498045802 24041433 260455069 163735772 388102080 416464164 596887073 317223582 930664948 770449971 440872457 366090920 962314700 20906077 913094297 738529270 463696969 42419383 122094774 924404935 195111081 805981703 523105814 32647207 591679782 753107687 353333084 301687309 455126569 670772432 595783827 23877974 744354637 532085135 757092518 57037134 743650513 277468791 601168322 520959439 494912060 889169607 619283153 576703618 764805715 960708235 438596637 277620412 648905817 249835929 443164311 535286202 81855051 933125438 392325318 945759241 995196670 411918691 269380280 150335403 547445071 450421653 221364140 370421847 142498086 326921095 855310619 328352164 292834666 236421229 247109677 300934785 318785259 701391360 787028321 739240274 539939772 571845893 770342877 496808295 140380086 956522602 567857257 950396890 608766053 639978728 2888269 79982429 24870947 835910413 257574634 377014725 890513929 998883898 461859886 657892975 701503137 400288678 320533203 130785080 122764526 640228282 55730005 48108551 781406718 314848479 431808902 418286676 833496767 714619969 627099150 137682667 630169079 702129967 83919389 631224013 84645544 934347882 321144714 351881285 380921802 221016199 690654353 222455254 850093770 188766155 784153036 494662214 776039319 919645192 910087044 703146090 719516227 314441951 843013304 767730630 314841068 20153684 845615310 133487843 602231897 943414101 371507857 130138413 215273515 410898645 848763466 126849174 773428444 788260625 16560735 611931696 640333606 228733899 939463243 120051072 205100690 815879400 231004770 95088458 611792664 782283376 323986248 359066735 74100332 520997833 811019702 239979925 184922538 323814226 644731874 989076428 341314964 362472524 475095332 528134193 602033800 128934956 890243612 993165831 776164692 59034897 512285697 645701624 863642939 140230912 73170749 533279860 540753991 878751921 381212933 403401741 206459198 622946879 241136374 64802156 299937806 917573179 778065142 48265113 47694624 810783497 249374873 442729318 655857425 602264727 280770714 973150029 922783660 264308208 107162242 408113767 618772125 920398987 942018215 97672955 918513868 965943764 770954525 842832685 18146180 251195350 754919914 532246512 255867676 341710774 364170731 781411778 375683062 48519973 652817200 969734212 912107902 345887442 607724387 441566058 977779859 517112265 255359191 630397242 453836932 255151177 416229178 64031356 913941620 588051156 292575732 93351878 180953241 487469954 172180548 827656470 182421110 170672199 318130351 562069197 246002189 84342239 572095154 747659531 972885704 703753980 828030688 725583768 834062871 959870707 740027736 171232546 75155689 906173046 682074344 252664295 781873124 680314928 651456533 225881936 210816800 480878878 902413421 202654974 890083317 497335370 949837587 718807273 753621080 15955629 698318558 243311074 894815560 499658845 387487847 538521712 4818386 278413701 595030852 620489551 170496630 411650339 743554143 118476077 879051082 633382249 492943587 956142545 467621091 402797032 346388163 129077141 992618117 2794323 177394429 526853390 618431982 85816090 42682086 800605981 817058210 894945997 466520585 534097863 484656278 898839484 478979285 678532651 104370270 827060218 924539188 571970617 972517827 902902066 145030738 136297166 750198181 526024581 291873591 388783846 157179568 591447178 271117115 66411763 785262722 705698600 712681457 582512556 841145784 804813426 747528970 240130805 986594782 706113825 682928769 733823718 494927796 164009483 951007998 54078180 460900828 749872741 52426412 637988531 824850773 46945008 331834297 628875787 663491274 549290816 261592837 895441369 981646315 356048717 688450887 191842199 318878306 486878819 826365246 352830354 106093579 897387312 818933396 117418575 788454395 225132827 947439168 778732487 495978595 474412547 265709230 385468194 344041741 458724184 256772686 978116910 795494714 855798825 226978465 885211201 707032888 118862487 285689775 262836436 205424258 506875878 436317874 418304778 823536057 23692944 367715694 867245497 686091391 770290278 20505792 466902468 40122633 878485240 405096614 530291412 460340163 455774307 821768376 355070207 696239430 543802683 143183058 422934525 562653982 8047802 774179992 709719850 856247806 249910862 116766153 472558043 827129701 803906210 879517042 531163227 312561717 604919600 981052342 142958130 525278116 713321164 270497658 426680836 581141354 485208886 565954519 211502363 953923767 166164180 844557225 70451778 299314638 880387522 81848358 951125258 35217214 259171330 928218927 618541818 509883387 895339966 426872496 311557522 105293949 569436360 376961135 840477810 768339314 942703785 724768206 649713012 651779354 499871230 947497143 716993856 123038966 603120392 368911184 956038548 318730138 106035877 433985882 662637675 631977344 542459326 157097400 690038834 599541448 860173113 824558397 164659774 721596385 294119191 990706513 995198124 768514337 483678803 812126086 742769654 468205574 992533753 77209919 199345278 315925843 314765979 672292811 395093190 569809289 908846977 524760240 20031859 950085616 273641260 296188684 997277019 474176224 102284814 690823178 971903023 645758376 991078973 316470769 16499201 491770372 350151841 678284301 254031327 815955013 693143378 995175197 581176743 184597598 565644341 271758712 52080921 676273188 283385594 361431317 387760924 441893800 19463668 60579063 498331212 74499316 553446469 514639418 97763949 654216861 664636056 987000429 226634593 538440500 755905537 645863043 624811925 539947273 834929804 662428871 765024936 201813766 16611152 410527924 693039270 3192475 42846407 630476339 263956688 469998124 92579015 129624790 63089431 960307784 516832578 285642874 96531492 31305334 41512183 891728847 682774599 753645327 848365639 257495713 444810427 437896199 517323512 402775472 161034973 139414686 653311153 352815080 746836707 782895739 921403069 408334806 629175252 351546867 296022876 422699244 958384915 321066053 902795088 906361975 37919800 907839210 477693196 988427588 952813290 997429318 913910858 753896288 586129235 824103792 32905252 41151972 195297080 653295112 125348441 672293085 544581962 321121129 68315803 37734308 67569402 402492046 211725433 648179371 801521046 323433394 132096329 873012852 256174335 563741910 316571697 701596903 777136371 996132241 826751842 706657444 165914452 548061783 794093320 263970811 414943360 438987213 244375083 52166099 168067412 82641192 474924389 597953549 638777537 312002462 373990900 604714134 99199223 315462243 455215979 47804314 899188815 114195131 138844143 908469487 788216169 878182874 870533170 937502069 116701687 223505006 983892383 358707834 515420234 42974184 610349140 575907402 148397371 259566034 277073636 713053310 901863573 990102475 761717397 278393031 525830952 356262240 92701006 693086394 551026126 936841487 159259236 336124343 566831524 60326943 963401558 561022675 261783415 54810752 314259892 661262982 180038047 862818326 560309789 143302428 518929794 230918977 514147896 655783681 886346566 882446238 684827885 891037178 408852356 668612799 749501756 904212100 21295324 888221129 779981548 573076196 583059867 548673243 372497265 118743703 575615622 195489233 721604800 476599317 304677079 234093697 444995746 219099568 700077933 330564983 589237801 825068370 161485505 601511200 737928193 461885383 285485646 739193259 47679858 723616655 487843609 412970946 150479024 355405961 660973000 308324723 857932845 369453830 474019583 943007880 653804753 508779766 904015722 806050455 898864723 113120159 32411115 789867191 285576147 891385599 554132414 347214239 35521606 771556693 568081544 12416468 384045096 287651287 622567240 198137012 101048696 162723699 589358973 253351711 252090127 430498752 77106795 19997829 608229412 51265847 22893067 176312710 963372006 737644336 614830696 727119972 218179148 762899536 319814479 66739547 745682872 792418820 709377011 339748419 238784289 974812232 430395169 416762207 954897665 205755287 271502916 597099545 59541619 78912929 495557924 855136481 993267960 531826772 241163816 45868557 746922450 609618508 421018366 743738319 301911098 331008869 911008996 113007294 179634778 80577623 560805568 794571883 769257922 432751217 771026403 689158443 19732093 433682541 705808140 548701478 446775081 961032306 585928951 235043717 134375511 377771815 151565612 960583852 328618524 349775385 817045909 89514826 352551868 414968692 765090125 410678363 692413575 788494661 109596471 240633048 75183251 631832430 784935013 215240563 183167941 467765624 694058391 865098978 360096481 91787926 825870233 327555486 576875301 651321411 315557386 467971905 225616957 670336532 778530251 71807083 185718450 909199493 437397842 846511985 748475659 460531879 927227632 775526028 841595614 73884159 93618880 480753864 513586119 941283940 226606115 347894455 255031432 200389806 671119115 545436107 643168657 187214913 539800234 549609508 447776719 369606484 138844580 858692491 253043981 912066356 186295370 999394021 244572817 381743506 714449281 823221593 546722979 313047787 300398271 697935809 156882304 353725055 519557831 493480044 313920136 185432414 17464075 979431292 550257212 806110220 818523870 524098355 440044607 811999867 719653342 725734545 3642537 938263604 132010262 821257358 832731911 581380396 672415819 971529600 30178375 567363693 329557665 743396769 864454466 243793496 89634353 906565339 467291340 742696301 211282997 138338499 452650508 287438799 580913302 170863672 668446464 254727833 589110589 797323783 755209020 375938204 235273409 988821494 26130209 675391212 280570172 189953046 740027709 864484644 801037533 181492182 804510484 78935062 400979479 241265921 375921077 575344558 51898227 643436245 428921719 46158335 426228712 527067124 153581624 140688363 181990589 7688364 122987334 591566460 562179414 746179171 748147202 659231439 543732965 871697368 859504093 129943466 563581471 607920676 478625933 200018345 550208107 552840326 159800397 8299527 396260762 90029075 871723188 890071653 663855958 875625859 51912281 4049019 215331537 923329798 976525151 21518287 390546566 680718915 743555368 639397711 111878228 316555396 422181638 260650036 629355656 902055140 583951652 532954662 675424889 199496634 992814557 616433210 284160098 722836742 909317352 648806443 543259745 954840024 928333765 546406276 633368683 561756387 754306228 491113740 792375253 192644730 521150352 934832720 352902957 195284582 248762346 934469394 895177742 538191413 151286345 862642775 670566279 143987118 291377476 976418262 522554838 636945142 464142847 575180689 56505079 671410050 297722413 235556378 154561422 610240097 143447517 853085309 443185904 379429579 928879363 953402311 20201921 744342399 237427085 995680726 729728042 527972759 260488644 380373361 208691421 792512916 602654516 680793989 429260990 910340039 890960578 443089089 1966446 40841035 182350644 88996282 97299215 504024308 343202839 579764113 650099800 382768131 371159041 877474980 472825969 691073281 614130492 114413575 624435210 493463020 825611872 124050181 622277589 766102225 888662967 540981846 701401556 24674643 884861215 556893270 47826744 817601744 77877278 770464027 236912800 491947533 188674169 9294326 900786404 391687509 72560189 534765563 724464464 742896882 166082363 656594821 797626998 533978731 20548336 623426010 444930930 675889622 565900525 345608625 83480564 892406094 741922071 691000009 530914884 194388627 833290671 189832638 353592852 909270867 838341909 952362121 791498971 898645292 277721468 465843175 205600273 18560881 255106871 999043037 807229984 738053586 583136957 339573987 318165455 599694247 513794592 150063312 949264037 268517107 206972008 470378280 12879046 933911819 531531086 768877565 137785099 32037347 353607060 198885438 832956461 151812834 104895594 615955009 46310683 648493139 448626986 568154988 826718674 627232106 28753040 232067106 563408769 989412684 869337460 998656065 495932694 818363309 253881798 58456950 82777345 868742638 128933760 506638312 257295318 544625200 132557007 217508982 405112863 634685840 245036558 885914763 331416825 279649010 991154863 630789486 989404192 691840716 303009504 367228786 412223947 683971470 681930168 97767082 375364884 472703113 453930382 480696537 535263781 591524577 649173601 220895424 420160391 916198934 28533132 357804780 927509062 863783407 269317076 391163125 297150377 686897264 252085438 200492781 115978851 794213533 26888297 245789913 897382956 559843112 665717855 140662609 353737049 92832394 671636488 890887723 534098295 521275371 698210898 26573689 33732594 918337090 923273862 945971150 507223653 153658787 733873088 814848152 646839001 495027089 906900222 225703344 194617467 108166817 895728338 670704642 867904319 785657870 301192580 307178054 963899998 329862282 636391013 237411706 155395543 92917350 644272817 722615786 188646192 4921679 996408931 501197228 69751720 972842886 116295257 184892125 480065007 638200368 891444315 561132798 264189005 32215854 932716641 833844220 988479455 377513201 352523395 117458856 253002261 531794205 983631723 364830253 526518369 326104157 244236497 629294189 281722574 384088036 610507990 187707109 75527661 128919891 999563018 657099874 309671343 936182424 631039310 924398168 761015447 72167076 178185093 901421506 254401236 197295806 477683703 629433472 856946801 485214266 906281689 722708571 723751612 979882499 833044106 459559636 660822691 379372799 505767109 433203110 484293518 952216638 86710222 215507246 226928156 894651838 210874101 756453958 646209279 93196185 906860500 367189855 747192584 868536380 134426313 939905925 236751790 615138205 304005911 526056430 693170460 976500961 555815384 919437918 206491045 287174812 343178760 463396457 663561379 975157972 86107561 174146041 503129917 537889154 663555377 598737524 952541113 475890291 892118682 14453702 484365766 394923192 241293318 254367264 91810517 904370526 423682233 527386447 381752339 274403362 623013976 970330430 597042100 33729024 461425663 953858092 503845582 965071207 172947076 26909254 7516468 595037751 24474863 992787106 154621701 896098238 293972467 931539335 730243067 603515729 790425439 506342905 389138747 688012305 364548425 670024805 66395411 707139539 707969020 852795410 799258501 110155723 281321892 297550541 218830930 850834088 132262835 337890024 635688308 191425535 601254100 454143545 668591289 364514112 342101957 288893968 95644405 169690571 963368551 639731294 573169862 172802215 318639360 395983329 533422968 644952141 757678657 570372673 396260678 333427498 500868235 967328983 631233929 253792593 910917480 269562457 213065886 779762363 941525091 928528926 216700453 54131596 555099612 781369169 990240860 197351409 349906983 751162258 273295567 65683380 579477691 110276593 918611598 605215414 529784771 657301735 490913874 748014777 723741218 554961430 95045643 133832845 473021251 344128360 400842475 383321441 394040243 746544661 330020652 946760402 241790728 382248622 578373579 19008120 492403281 743430444 681641338 9968240 162493558 15725041 695634487 917826366 920408446 171344667 931412318 454909318 25564661 205708463 702105456 57671911 672444664 759837302 300513210 280443258 372522162 366023520 949138130 503696213 182780810 112468071 738108732 979110828 496864378 507083217 252497350 694058183 733912592 369289839 789639347 504092301 774466898 343954817 654518811 995405568 225387485 356253029 825379045 690558707 624659720 117891666 530715927 601442360 661994664 99235273 711315600 799067682 424619971 436953306 36241797 563729824 216269719 232193027 357736842 726936694 860000821 354105694 735050355 141991299 531059262 949363226 305861157 971068404 395263561 994508620 472429201 356870305 698092164 537146613 747997482 806819193 940686148 29628825 302216655 519609550 357546621 82345829 679702209 107482846 113632076 728986625 312008433 454474582 926979114 931987656 101200619 924810297 293592382 750401856 810070525 43315826 23260378 696259051 658715567 617639253 305583290 313881653 942956972 997853001 578435989 361050490 59441145 200370466 377202060 975715503 14336755 41921779 900648444 994273224 75176872 632408224 791306526 167785086 236510521 592146878 530128126 348219803 34875391 156549913 806608774 660527057 499412012 300842339 863728237 924926542 421829352 500678027 167835070 658519479 608541489 606036938 648584224 236296274 22429668 504797584 711018103 54454082 149863999 815188893 930430337 238027525 689659207 839464255 28231090 76487527 837542630 152507772 743666578 843790133 101369111 298949139 629126712 361888708 736738615 812462076 223116944 827435600 516151034 410753067 48108949 74156857 730304335 141903622 488167785 774662410 734933306 888850982 185218788 228513347 24386486 58436985 829982570 554814932 544631276 615000570 557985431 466541866 620162557 906606058 85780854 959320366 563520440 361744397 389934123 581351263 518398294 356109570 352902882 994002243 650362604 465029463 160538924 406335311 912587161 483169054 963423010 783626122 298107651 238846894 612376617 511588833 727469734 45492255 427851780 475716668 854741363 62374870 687035832 330510061 533792887 680095995 476442107 447436026 593779316 277798648 915836275 78879649 87113272 100045109 570481490 102990013 953087665 782937423 817191806 306671862 565098211 752928853 828981890 868796487 347571961 989488179 95973931 796902564 578743215 348828676 670664967 4140498 758219254 593966623 203061871 695079487 674505040 505114119 102202613 748147079 115842443 33260764 462440560 667046542 940127176 902452179 169138025 657863518 87236547 469903981 779713666 608787732 792667689 445499836 697177587 757712918 786915031 630556842 70919519 908672395 529165640 768218868 864886334 520518261 877347614 345379506 768092650 420309419 762706286 85620409 238125634 717078073 57751064 202966301 832562742 728998317 966588316 893495480 452433474 651226336 909422514 80999142 554625203 643891311 26152040 474516023 797279514 977357159 306407888 921129910 869384797 672854215 618101978 879878568 903439171 81499482 123538663 44263075 456406676 870254891 90733082 696002 637165891 876596540 31091111 831494065 78484381 824089905 829237743 22147919 21095427 326830503 893861640 93236704 110388531 781189505 381191008 589258258 762243087 433613240 476240134 857084835 568503977 872944602 643304109 229151038 889555772 382461571 762143590 705886194 105893986 164775669 133855107 879072330 757213415 392846575 782106155 713790178 92886907 254943901 131323925 827664688 338957309 789858339 156846682 783142521 739480270 257199727 548741219 419379093 37559877 724223819 847861230 211218859 203773821 101377251 731780306 592284133 976926151 196112488 510542127 582048248 482857450 416948645 785702310 368833170 256351441 521275603 299294699 218184129 599384822 897552618 493712155 384094937 785164069 692192431 731546851 930049016 619988605 804212652 693269258 793770765 678677550 285129891 477182642 244796216 225352451 724432354 665413241 241308515 130699900 500279401 673338996 684578157 402433342 188574905 237398592 514175470 137063034 507747062 354936505 841427470 180449925 35902772 91859794 220583280 488618906 782394381 304351317 394405753 308126611 98202182 776678180 560837350 466841058 956412719 730800942 527274580 628066684 791561347 196246784 476881293 205977486 958303969 458495020 726836589 600499840 118736014 368672348 473144067 991467663 888898407 626133504 331151371 503515851 466400026 881351092 757636236 83953665 138133115 480260250 821174391 508107812 402040188 472947700 625470355 695214938 560035760 624175186 652653971 39743140 465673318 609686765 687568240 711261978 346367548 862347792 664879638 319861201 482960246 225926651 704897963 91919207 969928036 243693384 669896236 123348780 224404516 786769517 469092041 436941953 307972505 335439948 558668548 163635007 500664602 110886720 573034302 6583255 318032968 8264361 291341971 599242638 693230447 910612605 873604508 241304294 650443739 874090230 4013007 346191603 416048688 589516435 724448620 673124635 865860422 238279044 817125594 309856258 930109980 870954193 109755162 783171429 672590176 58791860 560497227 595882791 360229523 722846176 634104424 240087081 719739748 167741829 529997348 503213409 27333744 389317575 289025519 837569868 471510220 818686851 688065139 53514520 454788254 225607837 941193317 703541519 216312965 293335363 863815375 455680684 295231068 970305826 518739048 737871924 126267548 48229056 340067032 760990220 825421214 303932764 736262202 232473655 251263214 285549700 382003505 383695337 623390797 406027860 169805723 593872399 430564633 631329276 336384962 166636605 481345470 540613717 290788073 296664060 894396374 542823806 82899962 123422198 824100666 978764264 644729734 933029226 659935203 440706413 74222109 439455372 498245378 479623911 341080821 894295798 555094016 753508102 53960455 855876995 302934652 280250854 651241827 178836735 924864490 828735666 28052999 632490623 706666658 782486942 99214523 602185502 735124099 409103635 577205718 23508317 561094485 802632826 3486821 866445017 685142503 973266255 431461712 626824301 192097465 314203698 973888923 579235855 139548021 764522045 689188993 364442212 488641174 354778088 26559133 709718751 408009429 470485976 46826130 832245324 626251447 712146094 994567816 987264755 914613823 731356792 175106392 421694360 868012133 33149149 421045177 379321076 645042340 606921017 527312309 947370391 465236542 919231790 369784910 316736354 513106531 675848353 929032326 957821297 853601633 682694693 203216158 417299647 27197327 457919162 305229542 668896698 850579260 219497022 76257284 402021105 21579119 238526043 873072047 838445064 811629646 731659726 538878369 504504847 799636546 154838329 176018954 982264273 968307426 18331756 917053363 580961100 386841322 79778309 175982082 509207882 733060762 436218263 289985104 87910689 497695472 135380805 492618093 218205419 44008772 609812151 931967675 659094760 454797298 829880552 670196166 838760557 525255609 9895917 399188860 414161342 976881871 182584760 830491691 967979470 320513122 864040926 656503136 937332740 901822621 330754806 376390333 861566142 186102782 312184612 710797857 645061207 517564064 459996122 72545859 458844636 847235938 649381656 505347289 984736387 38714858 213156662 931799935 295866148 175526863 92669438 740445458 180388733 907662095 716538201 726415822 18251925 546681424 106854146 821692511 372027017 29405556 820996726 607693962 46297225 594764402 976815156 602291973 171291695 111719601 679977474 297993493 931322055 280650938 133219884 426239836 361839041 650408340 414659280 205823655 751155802 303215805 531466397 705695426 598805483 908392460 506486274 361172363 650217803 873600177 862931523 829918843 926258366 748681212 679783227 166867340 538083411 895964422 177254982 310352428 365983656 257358285 843246769 449890881 867033179 35331163 674012534 246852769 797552328 704693293 917222324 986342564 970269990 655086617 631928972 896608529 719143142 869887251 436085021 411505823 363282386 720152775 723400657 537763669 925872670 178370066 447922593 184036445 293528899 563329359 944795637 13826177 411345317 520843879 694608598 141757193 590799197 453335277 816788951 919637866 244132585 88397037 263617005 721061547 664865526 429960217 585282751 752379545 311817687 105854656 977917238 876367686 503755217 420271362 770462338 713346212 624195355 332212990 468371594 323814699 758675450 344759845 188617224 703942942 993219499 240146302 716673523 481868531 925154259 338495733 127197839 873062276 136272660 698617588 51248753 691397374 862802047 6028134 822785627 800970953 115818897 176832270 901479111 809411924 459770601 691503470 446216299 103810276 551902572 6165702 973525262 633942697 781505515 933626535 154020081 518817464 507900998 973396125 12934163 911166784 562157715 957509011 956556310 616958966 797155183 420981166 495874346 300023634 607183068 414559533 609654634 290652097 893947318 516551406 900688968 154391083 817439334 353157399 894297098 878302053 282066205 619059622 212483363 12503225 283780382 821815010 8921561 500530551 876943155 656567329 643081826 702261886 902834178 870593419 462368321 333561393 883727737 740992783 822433352 286031472 942300382 64797798 900986064 107121407 567934698 31994304 608800441 971827155 989832104 613119455 590323508 687004843 310819595 465378224 364096806 771676303 101196062 347750960 15417099 414124630 209426375 205813000 136707185 606228996 4361601 540948065 611119737 79866635 989521600 522577144 830164911 595958890 698241420 275068740 394634515 828168959 538691752 922749320 173579075 472552693 613694044 969351265 209303003 71818815 326875831 804922177 25525007 585538048 511568493 188341549 920111663 443646499 554222562 851631563 745844108 122941279 976798245 666181852 843385963 96427773 129663901 21382298 682764290 598298138 101412323 290127739 239586571 577662210 808439601 71919313 627689312 679103215 893681951 829692489 342673252 857267705 799585752 725488623 61134686 244333027 326358122 27947965 592319072 130673959 599499248 479529666 153131953 810805891 516995114 413146213 719439658 33007002 806666903 667934716 731220145 127610891 524835227 923542812 476652219 783224120 736156618 223652949 572019272 208847906 280091097 91985622 383241280 414813925 138248202 567949612 645303389 189459649 640574799 469967306 987281324 411310235 761215709 867700437 526151935 95963670 79663779 23818729 259027205 261207849 605812220 530017897 635470935 893194302 579443298 879056417 704379302 436642140 99187129 560229761 857658573 641192441 170911613 331305992 250209521 437773964 814639122 747919423 279909896 321696989 464490839 599777229 747123814 583585562 375392606 253677800 285625563 857506942 994626142 724488313 537530852 433371297 788961670 671208683 967246875 901743876 889313290 391825332 808395848 914600185 448508356 677036303 990710003 98790720 883823181 600036665 800008690 104835716 559108607 660197106 222719361 742838358 817445470 47277504 929563677 636102368 552971904 9493066 200170881 904550205 236547042 705557497 623112386 933619465 12078332 639044024 30753172 400985222 731144811 355237557 787335274 480249876 711489490 311900619 829318564 576405250 595561286 138886872 657848571 868461004 114125056 853329862 713046588 579010665 40084738 460997258 493356691 876335828 427752743 356708801 684313644 836584459 436522096 933737802 336553760 880846463 705193062 681639263 944738045 920756810 338312095 788950598 594510880 640790657 892471357 115476021 155135677 258949003 243157050 41608320 306311046 45014014 956745910 136761871 930256036 546562974 483003072 904870570 783183264 735622559 630665671 76934452 143177275 51777116 351206216 751084570 657977107 117947866 340144416 812590004 756403433 571387871 131904465 399575962 747281676 441938408 408874954 966216071 787735801 224944640 73167118 736875133 202764764 433257570 648602198 148091849 78785639 873324550 501124074 125830582 379216330 613554392 57423460 493698679 115586242 515212694 198129772 605975339 225032784 36337463 294574665 648321453 760783910 663949771 948850262 117122879 295398616 173644477 955899000 929962640 162728391 572834537 769214473 957858606 383931660 32008574 308447622 432143218 771251715 908368382 386975355 502720161 332791612 62230449 953296787 25749748 390098510 327573301 763260954 610612786 314890732 295527251 422315047 853054590 485150850 332164354 379827461 689953476 414291533 714771228 10681553 802693776 580189722 948220222 255762273 671185953 511259663 593894901 258187602 77278875 768576669 998316935 827953305 933111110 474168388 669232541 213574967 106473177 580361173 591377048 278684203 341588850 430010071 785446240 122614688 707397637 428539335 630655959 940898059 801050185 819925908 799096989 557914086 174008336 984802672 741478686 213821839 634208136 631893084 216581831 414802803 494477876 273010359 501428796 773254023 208518995 269440803 906020463 905526129 488979960 474914365 409702896 218534463 468933432 347227901 214658835 531735343 93559892 177709950 713598411 754228058 717984478 182748870 313090714 647744120 232559932 55651439 839723213 883092329 561507311 353726998 128929079 326340349 207210234 122934034 438215509 441115672 535382080 660886420 660367557 581556311 89128169 541119822 952931856 517306085 379696069 568380185 987685814 312961148 418800651 336941295 311370839 392066634 121416036 264519528 375030984 773379197 328653853 668038652 439831727 720330660 687217243 138957146 238363586 97913322 461900531 451844591 258280157 138952544 196858098 596759247 687593934 268375016 419694990 578969784 446305163 771988992 62634156 504593877 719179822 603126377 571891877 386549769 811214090 146222947 825874449 289936283 651906382 121785390 752143688 255304201 358785012 315021985 460912734 195330758 236308055 192445743 617946836 395634225 190760481 656151556 495249479 551948116 983224304 231829281 86156430 28864037 828006300 862215670 214412541 806294729 476218965 578585381 746570698 635715005 882091579 998460001 320786952 920748290 490784641 364725738 872735856 80078670 475628852 160789001 822376302 798661327 447031789 268597973 409917363 598077322 802049744 724140453 192283261 692853003 414178205 608597551 908945047 234426861 347245377 96411199 318160978 821946837 358145409 46127859 874339363 617726698 274829946 530078530 37441277 687193656 855501830 120902629 32767054 415714229 425353139 646946922 507306363 623752080 487225909 265828142 728215945 53805612 705631734 156212708 23993869 717808446 408761433 307916751 54490331 423373009 933362501 11356344 857039111 406013072 786805644 49451683 332654033 630134720 118082292 405006813 551929197 330109187 301279609 569323289 184602517 217174220 60722726 312150795 53540497 452658275 404933636 443951124 938907011 432125077 805895029 193951558 734286776 484754304 331612760 79345381 266548301 308660591 879459287 372981419 101888660 999644886 608835121 756956193 812074251 193577090 492293427 433709234 716522007 234960204 908050453 432107325 336269056 594400199 966372415 625374948 951618847 62969115 993343223 267647843 613097412 546667220 733478998 78859457 796754544 65729128 7961218 640138170 112370332 47736114 626550533 90479434 114200236 783212583 959911938 232526975 861963345 39012735 837076556 66765619 532844133 659389329 451990555 756621075 426256642 631378015 339398111 162701876 499329399 972164997 162006370 467359342 123318886 590339967 118757071 287809926 419193273 215590111 598912361 717080012 480461953 403690638 182003700 28115135 619092446 519549146 709613556 398573342 148741502 198382671 583946182 451062934 204554971 520541676 182457941 653536019 743405379 35593417 742817454 862004805 368645278 582370891 601914135 754371448 860238450 451964093 165934475 911149781 860823466 461576641 193430396 185395030 816269494 715945116 586749847 507815769 709890293 331440947 991672958 882982756 75969667 705639408 746391927 996775725 602870173 219079266 853572110 838336752 269833402 353957292 29037039 357184122 918568582 83027503 328132308 237154650 57938980 270166899 84612077 861679878 806076549 446831837 563042891 474727983 874871612 889401233 207419717 664598361 31713361 357121857 41575066 787241852 390947248 609585283 943718519 519864324 264783732 26166176 709208014 997453693 207646100 548396455 887501181 782742859 769597489 554119852 527153261 962336229 209468196 740888738 872980798 226934483 953719008 893557475 463894548 403567034 922661653 756828020 307192135 713785483 226405251 821668725 382658515 93454040 236745187 964975009 248707481 761682557 700229236 709846029 557507224 815840349 556815228 950619200 601781409 604419016 714418697 436064880 569380045 104451309 767193262 934738733 211748467 977230425 947763152 928286992 449110291 467305544 522815593 946910198 825867009 810915578 485422737 525156403 236844297 82535940 383173009 217749735 865349170 209899022 351814311 750999435 468636045 826357166 428666389 756087819 434783026 821209879 23183082 309646338 137710836 912487676 538322528 394541662 251109121 233779474 853576276 714535727 564434647 478733571 193203467 535247920 692290781 867581021 179659710 601168767 136002057 770789925 825265538 653694340 735499894 225119410 618778405 898050524 590679801 28531705 347112477 852958054 702927614 389412901 570336589 970058366 419429569 951452296 954150694 874352077 196055324 878432177 746610327 669158390 173885187 324665266 7101241 716864097 729992506 73008455 51701494 318214400 549649739 42996626 807474229 724308007 989405038 685287080 809421144 173379512 915558634 557486818 771779268 34521872 785064397 70667016 878836498 317224335 412118274 483267568 878835992 980245925 594388268 116474645 53694368 782556365 510828582 994375914 401769036 487414616 918011556 863220217 63227170 376715309 615795047 362329499 281755070 301364879 233735867 288598954 598513800 817269596 647572726 884046477 363637986 588432642 620985196 607799671 208296486 135464428 244817427 136538624 473775805 478668088 223488017 166847801 306066308 279729738 860486117 811351480 445082211 40389687 330425485 763087172 314143286 509135155 825808660 828743718 705763045 774616824 585762971 354969495 856098329 547235068 56064212 868178913 190223686 684885483 730085607 193494367 342849079 660541502 394859044 376630171 95572142 97726998 293381029 697368638 640465623 414486994 703606927 186747372 235158514 702445081 192203580 270145606 777730369 250362520 14410559 486956823 385111066 111827974 946743480 71314044 649204247 139322178 806293086 789355426 575504137 375678699 83079163 22221959 573507395 99644449 854946966 368170343 229777813 16320235 418102658 607364148 135816657 374549066 111178457 958302011 771424523 150873280 921182059 222038641 366820081 869892353 636421054 634852496 618971805 10440518 715316324 354985526 390317017 602912327 932772818 344607447 430829326 901219997 656756566 147549757 889329339 270970613 686765782 767027760 588048357 498768141 633995228 67957453 170433602 313214351 807937096 260954689 681251735 957071277 404973098 835150857 217268077 51968968 214491842 765612407 592376563 421914662 162377656 420203277 682977791 238109755 943100285 211103577 538760903 15555436 444866994 667444461 345457593 270932705 171139534 462694214 861003379 147905257 522679545 519579909 494374046 719516598 437555221 750565762 995962458 545476279 517610258 462496037 239703913 38223124 565368191 720894184 491798189 953825070 219794496 349879968 724253279 371961180 145594719 661028353 399998100 837865324 168070040 23835186 624518876 48412193 421715912 363529017 598732191 173763026 468385380 560379526 548146031 721983755 545714734 432618902 645487717 705419029 730692373 182181203 532973863 202802705 160808607 400162375 576872695 198942055 152480398 959930102 339655495 341974677 921615493 703204758 225021051 992406917 691714955 894374490 817933128 545945670 417592336 878440007 887788332 781201857 786257029 427940953 844948392 502852111 638030486 85370579 930871139 223113193 973628975 531253973 800526895 744505214 714215852 289579715 47160794 384309221 862543157 29954676 586846366 580819057 261570224 729370268 186531510 432382962 895975336 752979166 397523800 221424379 852060490 286066505 700759826 88423521 280647214 685489515 116726176 639694178 634103057 825324185 19572010 996400634 241297826 634216224 427664948 254900147 996002368 393444738 312339285 28294707 923376471 964560082 247971365 254309446 576103069 486417843 275029081 515787109 402788111 561777273 586147248 209815244 31148397 788549955 199133258 141821268 961310715 900231375 604879654 811335468 128008987 318271828 299863209 823338810 723929835 459897443 961287643 497419869 887952607 389883087 768501384 853394022 603504013 208350232 830693382 302039564 349967101 933799312 676899946 268551816 301063527 165611458 199500710 862707216 144415662 262630739 193722596 721030822 713566993 881388905 750353082 490799187 342943636 613136557 566291844 69766309 240110397 105178216 538419399 757880225 477344704 632308361 403191610 987277656 672413416 819379223 308524563 143099732 570038378 106121652 218295447 947376005 290754709 111546489 131414675 483427708 504296041 799335094 60122947 291363935 164022163 795864917 442322093 356508811 643571669 141961037 698580532 190962480 659889654 30628197 864867782 419794960 43828223 202187374 622453489 742237940 678127129 554872789 534788953 947672289 784869050 412236538 46262627 563330189 922631001 619652679 20639808 24301892 592918563 900393344 137484689 34884818 831255288 957134159 789661812 125599512 138319234 984368815 19034864 459053138 31413501 141198909 23398814 322537067 758945849 836487405 361129994 734779661 238782286 472254878 668372023 688174049 792764340 479247985 696862430 539999759 505577943 815079623 698239948 855348507 138060876 790684355 40984465 422505244 33474514 618847114 819422684 297223893 289941439 427278366 135658462 747240778 492247159 131591445 310592171 326641512 772214594 335417097 673640207 775276187 974303056 221243631 535049704 799830725 424071675 507739776 626754315 373963482 134838822 3346023 861182892 390885005 624374473 270761342 792370369 736613205 300003155 167711261 381458097 940938036 777667453 678319297 95361934 654277904 840176120 15461318 668918320 4362263 144495815 428101535 640082644 287425199 913504561 331492552 716722947 161631201 651602501 10013650 621633861 230074726 217385877 447790757 38055600 841413030 861555109 704639270 183570398 79731872 273460525 309427021 394018955 905624604 944428972 188058267 928598924 260471790 815678699 448034390 718810196 846715462 539159576 468674500 600227891 471573132 278434483 937474213 710647144 453941277 689944717 536307283 218463023 630044573 647929258 396475928 605614884 696549110 380145399 59997832 933097053 812114473 149098511 884987368 227842033 565385245 739344895 903509401 396980591 118137343 79012699 964819743 478353994 863397875 279390435 502890427 352034686 249856613 719189688 6262325 875434345 653958982 306643148 599524253 722659302 434035485 168105037 613307010 614498979 726276774 533008619 369352712 202397144 661970055 153237133 36995075 76976854 926743104 6285964 448089107 420473209 294495783 54618442 985152300 668589301 436384355 850096881 993133279 708850 420847405 496123850 858818212 37840809 469660788 266248101 65564053 816983106 958021634 797829991 609318081 773774653 638901570 709746834 932100624 594138282 1012149 286808268 920041838 679668308 608185865 781876966 709823084 311292206 928828201 470167619 179153419 551481007 295762838 502989707 767921914 204152840 486722034 158422511 812816406 851748591 464686775 969302638 61619298 750885795 604298947 167649516 438974381 313988836 527656664 296302529 485851234 625118370 411147 959949906 746150879 679716206 817173374 354698096 673330865 750378773 37727127 986811969 250187910 699295114 523137220 900162338 905125696 94518924 541045814 582889615 963773962 987412609 820076485 732203115 97806591 510390014 495485281 701242774 298079054 454550327 271972653 450891145 159942952 605515550 427651946 171065092 280401743 30031202 426976926 590137222 293369038 798709468 409384171 793782161 717572425 47616593 715674874 717279262 993477047 74703872 456042464 204288406 760260001 37587981 964611156 710197492 830299779 567305981 152952692 926138273 477180935 612522737 966763163 604463743 451998738 947515455 781890205 971550699 105430638 530449002 219221948 712127664 256903009 504944530 27746027 625778577 737479263 905662615 752856016 85285997 171748700 506489501 972446198 816661216 120241805 848728696 784011750 599172976 85042554 239270377 854121006 915674592 723896205 613074209 981553584 755811702 93447633 851695325 351799997 13810427 870138790 971226184 354192349 16925987 368664605 998443552 640064865 122050443 176226520 211424373 314181434 998894559 182618914 337060272 858801263 687276799 732528042 384124304 553589541 341254495 349232125 621083904 656009962 976073249 560529592 271910754 38339337 199278915 96986726 790440948 174925896 395227248 77329487 167631599 909942516 91203263 437322577 317362501 972891295 792446772 260509069 605531833 342065062 535764123 251969272 976786961 88059973 158914971 291857342 473628425 905698305 233753032 576026587 830317742 391602381 768223168 645470337 959539589 347663509 616225586 253830358 359134076 78323294 650510122 306454746 885561363 442188580 797638048 609477238 506997786 385578670 330944364 398994136 76799036 568056795 621694633 186513838 788580526 165846703 397374938 952333377 507172477 611152462 232769180 716049091 983524102 34025719 281341305 365826075 542969200 568510503 992993397 876669568 714330977 351778015 330535403 53429458 761763958 29078401 211379211 823654732 66702432 126338371 937491841 108632436 671816481 242437813 139931791 588790604 443757266 993938963 471284623 80702554 648022697 582308896 526035570 546758133 419614325 390988891 997426362 17602614 830117200 947017436 629708174 798094693 159204299 469982410 410582243 172454335 133016367 430734856 828312597 425425817 252203284 574538595 683906271 487689501 559510608 545482293 2962537 889071191 87925356 845816710 583847675 839903815 28447947 536895373 910141978 713963677 539782249 463798164 743629969 963110124 276500342 898592886 518378423 523487928 850969908 518566617 441300718 289687444 868680348 635483722 299438976 461664800 791386766 922029549 357033509 522334621 250927000 577968138 941899543 563216085 27212963 147064747 200516726 555348886 2009807 844590527 882294418 79559469 652502648 703694295 647469213 625222942 506623099 561736838 380316849 392452948 59229211 458781496 445317329 573435099 123449495 897452037 784960370 703094050 457095412 860017157 871164764 78205272 566557993 227228643 793566933 508336228 126323426 649805896 798540446 508731389 496977360 573238251 130881912 820023612 806590693 594848788 148138997 688512422 836235352 435116494 86647037 580964442 687140797 303076216 47154444 435225028 333602647 371796842 513917179 258243811 12907475 558311426 892682766 385010701 465175843 317577491 407013937 551712005 638254252 616078621 941977296 978693807 728972907 429243200 336907712 577992630 674113383 954798868 675624459 974812010 350089389 214041438 309768988 314080191 804944596 524330468 149752346 568452387 737713878 447310387 554507492 743920455 445000159 19211802 131421818 402215023 241613354 757233317 326660388 412920339 6344337 898623526 522159946 451410594 304039699 652826945 973395570 80033118 274132695 337613432 111109300 162252974 798840963 292505896 918679799 74793713 61089773 973472645 614002250 53776775 395439483 97641814 219239685 376850125 91478448 589922652 138480290 720067430 725567501 333636566 402605578 334038537 961260418 525108004 961158005 801037014 385547929 786274232 743493907 482181190 651348025 336975434 913253304 26292404 294907279 223124260 244232868 660978997 603515279 261579693 28552043 283875265 497142038 916296033 198524170 266364520 116140953 295895371 431118935 543189809 635145018 234877305 156644043 377658858 575272785 106246703 822267718 582003914 696645992 936576033 37958013 40733040 614820979 19609038 853166354 581858864 975807979 793721558 351831066 882163813 856035442 351422112 942529997 234314992 845284233 862215298 732368533 254049874 601711191 85250296 896767983 86917310 814709588 958262284 858241683 819975968 426651691 791320945 755471472 697140134 161778912 738787257 796214913 316225624 837064906 630023989 121937032 405861527 689168219 943343119 852221146 182154137 16056384 304151121 738745643 805548306 184950364 137788098 40888295 227805184 618032704 76931080 832789229 196426434 814074815 364958569 604977997 60927603 565462590 152795401 511557421 277554238 545437807 64709998 990178594 600531735 149139059 58719578 461474726 624419419 619667886 394504496 876273948 470875173 631493927 488157835 198105313 334713057 603877908 120840248 485887416 33575212 620428838 582891354 627480505 670813290 805908379 755195278 581378576 525644373 167446959 899065963 481703333 534866689 853747324 930677452 404020880 700046336 979490611 785750498 447596154 378697333 842890908 968277287 490800119 552560728 23296344 332097972 903103642 164871551 283865871 936935623 388084192 572159578 656229043 518410641 641403165 63184563 768144955 480712288 931129032 783363782 96650038 787330002 720670385 992843514 12018015 468294721 645745997 66891993 811637460 395349344 123486871 468313785 331213717 33958203 933991197 156345138 32341767 716327234 493918191 29579525 846850935 477100302 842052647 237734937 359071081 244409388 691142472 174865203 647879697 915945543 479041370 201959868 770295847 299800344 856300303 828369795 207073494 379924682 377352835 527615121 938712535 267314608 621915656 386704890 89103364 160460133 580993477 628760441 230457118 873885208 399271367 712940082 661966020 986192871 76398193 549747628 535423849 937138161 519805605 383308593 52243259 342653139 210941716 126361295 416385499 520947608 546563223 346749031 771765251 265015354 919466336 653354058 427389895 402626448 493829276 757267411 764751778 902342437 232226234 479732445 287035071 851138278 813097251 411640080 735381805 427355054 417370127 616537308 425035200 291706347 764785708 277618580 697252564 127503305 177182514 759957982 818545766 384842549 706034609 241837990 307139500 322531462 426195950 875112747 575240462 857092887 468132070 511449453 158229726 234774834 500639546 161505049 204545978 471548467 440854466 501559346 679657450 795102425 510819492 470786222 642426684 635975887 682414400 763922695 897261612 906976342 213648290 678127069 856138452 964257500 123039327 132631425 944607377 565565096 395222888 274132196 880833298 262247869 630936943 245550215 572271780 978744818 715807654 510095234 948005606 435316461 70161185 251637981 839384330 848416595 792664916 106267765 515144611 41475275 447509850 64910739 900195136 725146718 617035114 599812893 559411671 732358948 376252329 531456179 630550485 699910561 19641008 132078911 449557277 161667368 316202274 161434083 894129229 415784768 733156328 34096416 401093628 89556647 53811590 713593305 862025095 196977732 580593977 83418350 518721822 80592249 226947521 940846696 865417793 822170240 432722035 709005380 983088633 408978288 121114064 999329488 393140778 125404777 121293064 283074425 867201506 262425758 367058555 208780728 183625673 468173640 114871184 894788675 285273581 506096176 856231509 409781151 481975051 840922942 270664826 495938742 521073637 672575006 719449039 432645320 614564524 654861550 661602253 965203128 401850514 762891572 546655052 509353548 798017821 550197949 475187732 533464286 778648703 521709337 681095590 758448591 320705550 471487 456434372 926813424 201638134 753587776 515356469 664214172 180260866 198565239 311339505 30085881 107443855 313958146 568785413 925481418 79238692 975180999 268493088 597476910 942011565 442965812 330654598 432533877 299838123 849684742 394135040 645011547 406824822 754997980 169788922 699063181 109028542 887999512 312748541 823351177 303596276 261693545 255952606 922714088 509079254 324314574 474147626 667498899 421555705 62015962 327550014 259248149 270424313 244823677 451750414 736497706 348042726 455779629 248791724 287918736 77645236 542465904 93064159 188618591 509253329 960554756 654675318 955732173 389162130 474225667 615742016 510901634 4187796 561597323 788979488 977834496 32233318 892316039 428241025 472752899 313738370 714513178 904754114 892028921 567687109 621607175 356649156 485632674 776017520 782102807 473042382 277685565 152352676 656805317 383123453 95824191 334919633 701135981 737531521 617836725 96647329 692903325 333753504 947574873 459004597 775283173 54941290 51613425 166116285 928058336 464526002 808199997 396751243 537415451 200926026 777813798 402968294 250512382 896522491 849666167 864326428 10189817 757155093 906250384 72754597 798248914 641529674 416426762 49315224 698375279 690167487 382049936 843285595 314190294 148500922 462928178 483051442 696693636 538343320 259597458 697015518 647887914 807662473 378130933 237372477 355355598 341165947 776624287 591181239 78709604 686145065 19195401 479246868 321439287 59424769 667392653 966804620 265071789 977367020 642188351 21996867 822613074 888476722 25301961 649447915 389562963 759190949 405327912 382399653 910123185 957116038 362204506 305842444 97191768 54486873 106504108 703656128 574325444 987874308 738018992 483478934 890544876 897192865 580900472 438883344 195199789 882918114 871081206 989324912 421877215 834217292 175535406 348290352 837564639 940023110 502488527 659403907 125305864 205493649 227525755 818884294 983221186 81574982 313977078 876255666 644962536 719912587 364628720 604527013 460477253 682113002 399978080 267395696 773507109 994382636 697907656 785063357 406481813 603867478 642005850 732565671 448654609 557395539 804520626 971157333 603658117 708598073 695588928 336103886 249888176 152155040 74749667 637305049 340327745 670542013 942537806 453740907 105119135 21565629 494722652 845756470 392867242 506453727 388585774 701430001 531962515 306581563 615306747 900958406 789528716 619578269 897599777 479382765 369857748 944283904 937020375 139405982 395759961 874177007 130974754 56624137 500762908 720894824 952720030 130086860 885236655 711777637 354994739 852859214 119559354 379419341 428054099 432828157 210978068 742683608 624219588 908808557 405652234 269282392 357754269 197957110 84970899 845592905 690446964 609206642 297288354 183771668 985845730 343903190 86112712 546851578 386635829 311619713 893252781 491122722 848524049 54259996 336062860 704331740 548993771 466823710 80537099 923014591 672896033 381156397 979320405 407725991 234084253 539354146 815148696 628170559 287539726 760281786 701413938 419117649 871896966 43755734 424833047 527189563 937628817 282298181 875347920 571654843 523418308 277851794 549164275 621300500 337107855 368127482 222353900 51407332 510374309 674074995 131414386 742671576 268502518 409409314 205245793 645498260 569926712 175489615 59059946 534478967 630536756 111171360 331282899 409916272 388621980 637876274 581336157 199216664 718920114 845490376 874587629 473128688 431519060 575278227 55134772 718337457 562653805 559400887 970873984 255365493 146590164 831559882 484856766 987974355 714355090 490019656 150709133 370957314 803598319 448055205 723362055 182010271 765111707 177959425 97950572 878348567 128137400 217843083 795697508 440419725 82853344 821955452 222853590 533999591 681088617 671786121 313209636 920113509 994976789 6307864 901556290 56284234 375407741 961140548 668450074 891568565 685011879 160871746 683777961 253061470 760056414 277678646 743079761 25184635 323894679 627986726 906326948 217306988 603403577 835031737 455005528 711590720 451244516 28741850 536731831 297402163 830952331 905890591 876601671 846199400 614378185 770030512 883130196 357816039 466750046 931619409 755729442 167401736 653664972 152024819 920617283 817292057 364319387 478691408 696925908 83306598 937842641 443087449 397157815 540405060 494034540 3215949 934219695 903385598 777418553 411236886 513164940 945476433 260942234 261864773 528310715 331514284 242766105 481404940 88970944 360746282 710359628 4560832 159467510 326630596 698889079 128975462 59286004 558631676 152251481 588989927 406451350 395610451 593803302 608130858 519695295 992230764 590979054 995420071 518436735 831964226 161861787 814572028 379147629 364241420 649384461 784418968 959539248 434977471 689191098 779732957 603101224 326078079 50191618 611709613 227595624 801874586 156291766 111262196 962101465 853655157 147783525 638878033 277619863 151105307 945081281 675371718 642097481 25617296 926679292 785034005 272669694 133291442 878565106 25380644 190691151 586977313 429816056 220720807 298122156 75226204 358528920 486469296 209148448 885694723 83611636 511293200 187388505 780408999 720720122 68529815 166989704 371025562 596549136 10386534 962883751 176342189 725613745 407581657 224691686 840464768 36798484 170088155 320486754 662784930 207007333 626253014 922891212 279721649 755681617 139971555 85644799 16069145 74083890 421301956 505177093 196118566 672230186 695846799 228353909 439125567 23243739 17756793 849815853 582110800 805536271 887268252 516309552 769138885 962221354 203421809 812923868 620199209 772082237 454733222 504338783 813478912 417152358 259464468 15129351 489336719 422391290 847179563 151563502 339015435 905398653 748034029 90591898 873734490 140025712 159189129 748592822 686988152 755679388 11368578 215384142 592360464 748530161 586046342 794866512 418201514 77456076 417327517 571097111 903862274 654051404 483407252 167908009 753511412 641694382 661671021 556675924 29510882 85305712 498624198 219822638 678358652 500869525 21645291 524531538 226110935 582052971 177513520 447413099 776276168 802265589 53458763 582936565 82418153 727765364 787645910 392082258 652146192 805403217 472481242 340885005 910014184 40963411 159922348 138241309 633498259 326195931 926342250 712150693 685307448 768326991 421083230 342010345 797193487 944442807 280916595 421774897 643758859 548613864 483712164 346477420 964326413 936566160 39660845 808442120 955590836 965193421 197647629 157274919 413411316 473803465 401675656 94049854 54137289 197643166 221984782 241929718 964434133 675103646 31195847 333240014 100533908 76268635 124022103 626929239 79380563 696781898 148473384 997281524 735488990 442585338 967936920 513013632 410847856 534033753 20676039 577476522 453266660 345405893 991610550 678492734 189254095 930827886 908910733 624261389 357498861 690581598 761601520 21294885 980269481 886272920 67285476 22497799 499497192 812771104 467102887 882411641 208317001 148265052 59824868 781251643 274312381 709318976 965236264 319084255 95479830 954950505 529487780 18114309 326575447 470836733 53802559 628525941 127739410 400623871 450295819 847741275 942460157 641926817 860532013 851265174 927367112 763834011 898756466 974745874 907439383 131875951 149611535 994994654 86398576 168499540 278022280 105269061 167755573 342833669 660740904 152123607 550137276 279032199 127452547 924674395 806712105 600875747 790216179 704811323 573821955 154942287 274767045 877110652 917383474 180753252 38911211 659022810 48343805 867722000 66876159 183907746 229525505 894341878 936332602 777382642 56579293 826006040 525999730 190013258 7446208 277646090 780321450 596763317 152417709 733261298 579154095 417691703 979851875 985315343 222887443 893158276 387373094 794341415 117722828 929987436 315663608 986098717 431072472 439466949 799571141 899496959 191815626 114993065 933235578 313658471 179022933 239603556 358215131 845354454 770597077 947082648 926066306 902589743 414168137 552678586 314513788 846899494 34072932 711579526 308446889 602525176 50096321 990620529 426548954 900122272 997130828 766408793 812009824 995644314 566907231 246043875 790630001 833597690 562579990 709781041 325452507 719941745 999503914 595715126 928462342 552506657 80752227 283377533 845699401 61565005 201328204 362635996 833246735 994942953 30593063 868243911 624473056 455554559 191916099 678382627 101243288 842648617 993426203 487658745 346872017 781909869 531242374 470426543 112452758 411820655 113642510 491225941 490274482 746719763 687731390 690864436 339764802 194604365 450309483 63571752 317018798 862139854 760796875 780258206 790052264 974728608 147442094 906608231 683485428 148927140 808840690 778848369 524337684 903672411 387714159 757742275 314828879 250093638 959905516 266311399 480324172 151789694 883223152 537905919 478782562 91143322 447835396 796209864 996235061 579159496 314852677 912568086 3865587 337220219 625061350 933683183 821437393 295479352 499784279 396009289 937833094 604287687 824250014 411297232 651423034 185685049 919059875 141500608 738579546 275537694 629825100 433565213 887748452 425713623 105296838 434696903 688575855 205743007 974505524 747418744 251532205 443479099 237902123 392322881 508936187 10338528 152672945 657180156 577811874 857668426 855488904 452987032 595207724 33162376 997539251 640894837 628628237 466919850 611079065 653353189 545296366 476117189 32481385 853900763 438570981 637662463 487106559 737855524 431049269 408112932 131654708 101626808 83747579 591578944 843013862 399209170 182746347 957123319 281541428 773289285 573389841 528851924 493784945 927881158 555131023 200553256 137930631 997752041 719924287 733711515 327486132 844036000 926780190 177339040 902414647 867460037 898292366 947425810 875658953 99664749 427452514 709643026 680522584 490390846 118526213 544610243 707788409 810671029 974001235 215306964 258154831 886024470 732831647 326938988 786851020 586525572 538818517 278233968 797677291 581902395 89286465 761179283 179845219 364503943 648468752 563735472 582627990 452078973 915047781 138608910 218781943 626884816 682059282 244912092 906380252 694337332 572940729 389924326 460651045 34102500 639250922 890189412 869399680 570156617 88919604 783328510 248824608 465966439 721640432 756541168 860898553 204606881 917133497 633730579 238949465 518620146 998082727 95920260 228144819 442002358 617309697 341267000 468812967 320868701 578412355 420226495 947190076 246216464 422240863 145604321 708930561 373801802 243131017 244225150 76498764 922834709 712498640 266477053 447513560 392799994 616285151 161787283 696341279 114323555 674865990 952030276 323070161 459012890 615966101 983970940 638585301 821958152 874785138 481361518 449546612 253635269 327400191 265009673 31743868 624325688 97514834 607029173 192265133 718262316 629304946 553050097 314750412 695456017 118188982 837711746 380633066 922803315 766795577 623234641 376052177 90697572 814386010 521570200 867627742 489730790 671415347 208518198 304536458 149409641 877805417 37359250 271696585 110766601 327171421 716876878 513721806 262916947 431940014 526014791 684299742 993451444 69236953 859975844 176729270 605474688 378449131 893913901 678049171 152642825 224169205 859540077 515038318 89751151 7819057 10619685 861627543 204236313 324318877 786535247 123799413 666608044 545963302 125076013 517848123 721019179 894923996 557240995 433252984 114876077 333471015 579239487 46022680 62140948 493735075 805144625 923723560 548704233 186388794 77656548 818631437 316759840 426179813 31717144 238970553 67631612 29668465 392164089 473311454 577748792 890836452 911863785 344738108 431911494 54148125 714611876 544516258 693670618 649276958 972892658 453682885 570537117 781438651 632978611 860414269 421982778 567845091 758637696 624408637 356389056 126606664 66050433 468968501 711472392 603406190 712001271 5722360 788626032 506375215 882317840 714896074 937174814 356986856 278829483 243230556 633947516 398987405 816889542 309724633 800551499 355712505 786328663 515301481 597002123 274763987 876747177 387754557 726272976 224242135 863711389 783090685 580830036 329909074 454607796 917742106 557424702 292114390 218014773 249818689 976127008 718576046 774263577 279246886 205741877 173533173 924144945 658989032 192548796 143980949 564819330 85976714 855999528 567600782 249892063 4488159 860373070 308827582 128648002 539036421 197140717 847139465 43425302 531852092 644544456 670887343 675557055 453222870 429062123 215892590 716234951 48455249 880156316 446932703 456255618 863184570 790259958 533359923 239592799 977389730 845714097 706867741 379160717 568810094 783836602 268102706 15694769 41160535 10630641 705106847 382682238 261352344 628701583 859179543 925355107 824399088 651100751 182950901 30358349 255772457 578810132 301888765 228771658 74844077 720556080 457518188 948416531 81653355 548475245 958213531 661860364 491997805 638083026 972867385 885564514 914542001 285069473 939422724 960350318 961535505 530571617 840072375 584222194 373620993 288650039 260207074 442642865 143102416 832859408 526651655 639491145 598202125 679356757 287356650 192185658 726439364 820043470 695446239 333137788 241593583 540937828 796270228 141805235 577565995 801846701 453780334 598155836 643869392 535571650 867159496 925759597 88551100 442858899 645073560 11169907 115939348 16624605 744105781 367739333 194973498 688712036 4542945 687777089 423097176 743521657 6388568 729092238 751256968 86158645 773741757 324170527 708375805 441325224 508958854 888394380 688852141 197293381 964029425 251971530 621288355 298418260 682318228 77163182 940041197 299902098 808145474 676129745 860882174 111498663 426714879 246734056 372975170 854484482 810987647 536577083 489459438 246800551 684147517 489691963 916582505 806096983 801365468 517738545 277008483 864664045 167059328 788999692 225513008 488545576 399887417 531504740 681415803 6874889 263476381 348784439 134750607 986886029 288017428 472173511 892295974 971587702 535382614 622369965 394560105 420347558 217752462 265384949 999151127 116718544 759479205 274559569 640326627 554398558 836479826 553178524 376501908 985595491 809643575 864924408 61200577 451745699 93101761 856037956 892530256 188566489 690141143 666336044 730122725 97314491 60991037 986530348 201771045 707110898 54183650 512639527 100013066 867095412 949487145 983105128 769946558 423034642 928938091 2811611 968060938 816776703 897141374 747331695 595628377 161006846 604900121 716525197 683480956 289535481 378527143 137502014 617805442 541588684 542973905 74220115 10583897 710313662 160158977 391710946 334683575 689322712 624884102 455764888 732468318 758160318 931514263 600940377 309015719 210113565 799071683 899172731 285871005 745933107 927351966 297777445 768782474 418897884 902264077 482669366 379476110 896725713 579029094 323845408 638955526 257533171 360269404 505993286 843158915 440650829 115413765 743364259 142508244 974263396 34108331 254758654 202238350 767932936 466035159 855889479 873937127 428658186 910706108 434440232 137564751 1485901 409131153 998733474 548222004 660625442 679711373 154168612 37586766 752254601 949920788 576717623 524588425 160466475 652365172 893389975 868449173 459616821 88569013 640045415 27881696 341942033 867601377 375640010 744301186 815858588 256512771 885300830 607496902 74872872 729277632 249151985 166609738 634614544 930669888 335649242 621164497 687008974 713131666 58737532 780908074 531832121 242292844 593760803 355139019 48002028 536721604 244842579 285657276 499910598 411466112 523441357 594706440 813169991 142079533 393965354 239172055 574245979 876573134 251970661 798333274 749621005 226173759 283050579 794843828 11849261 579854953 671400169 924281519 355662222 6818833 957106500 401077356 66418967 842637519 624255120 946140188 893491501 984375314 380060042 576752882 977729132 304720922 189850736 974999095 822655069 700481628 718990655 157322756 633936966 739418880 99584806 200091071 406893942 445146474 954856930 891027681 13537314 759885049 963656910 126440271 252554372 496532589 511515839 618013305 500133927 620978009 504759990 914799305 41458320 621452828 260390379 949207938 25473365 731996585 373729035 688273686 992805788 677690496 35928999 152196998 185030545 669065254 705539601 252313292 983741476 819491880 779453117 450205335 391724317 315521922 938580191 907871039 106847443 770786257 281524801 513049115 217917569 805401253 173752240 828982715 644343949 1530603 119367914 747699594 147917757 867779403 692652624 178364826 994727923 113055850 190988825 755518150 460018695 794674328 420345469 696776431 907684016 842387731 728308076 459357790 467916942 775029107 684123417 772761985 586049779 311296851 783249935 77150275 510889195 756131017 40436866 702723042 937994357 219420829 468760364 472837922 500172683 371581848 328068581 656992561 485095646 226438507 929178225 240082103 630170148 653464113 5972964 266300391 615239036 838955746 673141569 505758760 639849162 274971053 6824539 465840120 898548193 189190965 751165715 344152793 236290959 10387937 138832149 424279697 784053556 141692776 760650562 55444854 751152695 215994123 598694351 131949155 288410508 590493139 145118297 653379785 173828551 381622378 78879614 793555631 210985299 369708380 775055660 971910674 314226573 875857045 773982453 949821304 650789192 704542111 423406053 269360237 779755228 755569341 987667753 33603099 844896321 187980228 143716074 470227163 290792447 21152260 937968976 677268011 625341806 323445679 722925644 12829827 816870530 58046918 486695407 684196229 163262655 606419835 859569471 365388242 862672755 492421187 605089812 320284950 211369043 576027635 808992472 56698965 827227274 110075776 194407556 717324330 84085098 57590900 551040343 614993903 826799423 213055039 585862713 571060912 989774387 906479482 774142439 385668092 878744611 540389988 179382572 291622379 505813831 802700666 821534751 709505610 919030371 968818489 49089555 270652747 947939295 183901436 135735865 44468267 227833966 802052932 899795031 243082347 855954855 413425678 523501418 98162778 560132161 704737246 294591791 635588134 23748562 984910450 67390185 671495104 894681133 423053560 91944660 609402043 830064189 558705624 686402648 499894748 762868792 801320837 148424389 534820639 420090106 137291393 322729172 105657092 787409468 890819048 159272025 829063373 376342244 558382992 217797684 935060624 148507468 4788376 902619048 504050992 91248349 959603923 990378159 323127412 526245944 186390396 596914642 396256619 833190792 562674383 445375723 514996951 577741251 397271054 585451271 98585772 318520794 58080726 976964815 642595141 728943195 767178272 773694345 261593063 657603361 818685813 559309929 477799925 255991000 136290623 112233988 13974026 835285194 185021706 913518287 834274696 965840166 849444464 109756285 246362645 331393984 142312733 920803577 726722797 295479986 446164675 189549661 107321452 699568077 454618740 902789479 255512599 258710096 31822506 250458004 601751693 484857288 9580224 377382795 543637449 75642338 350957541 615005031 622159352 806073334 121658443 47350852 626350811 66193161 592170844 521501734 637546746 508638248 442623648 81429765 615918505 708577529 483543707 912161924 689161780 399735360 175946118 614834984 189082350 894853600 159218174 531319715 825556206 497156715 821404693 161112204 998392130 200457684 110158090 232416657 68829725 136168130 129896916 642582095 217987104 133916659 689975283 491148175 90480406 809375553 60072517 668655387 482588890 854868551 554682961 640661913 662081412 932597748 669418962 407616043 422899268 954028009 281428740 788821764 983844412 786117585 709293278 598728555 822591975 90603912 76018124 188337643 434073913 204840861 282565808 512532507 843185317 272344499 472159376 162151777 445490678 161406161 233565001 157814924 818373782 370723962 260838097 688912831 809249544 387868327 561618685 839536291 180179250 546287001 495202269 552142116 117094399 285296740 898373241 451221168 609769727 659928904 68465425 566168755 797324895 633017484 636592052 816360107 495582305 590552911 727286947 409710035 521218748 564802624 161999699 645460881 318847733 415545713 910869726 521821500 380503929 468464585 955649458 683675892 752161136 901318526 246433103 448691919 594192494 803576930 722935661 677412887 430797241 255408213 802477452 537298679 411877387 690706208 359160051 26319008 802181580 341016274 415119930 344913727 371998971 858313882 257168788 626790019 307110698 47334890 495801461 965966539 186128877 924388369 558629794 776278025 268879976 463003017 572502748 284453250 385537117 189734258 591105795 610865687 258548837 51250319 370954459 718811534 700167652 799041942 466797622 932387106 399140149 24144332 647915700 289497628 506530231 950629682 644426409 752053948 738348524 811487369 181248311 378149452 792660695 142309205 431712385 220813122 176091140 936435886 990068955 889988955 764964626 824926668 867383534 189069482 559063862 180729492 423466683 25771429 804970163 419451012 64712311 61552391 401871296 805884967 125884100 714850129 124911362 758922128 212277543 569461175 532813312 757593459 784486142 79101618 154783186 604002640 782101086 732184037 524613304 318763565 13837945 122921257 639847677 632522646 831318448 752056404 100263506 283239792 269628818 587902473 267083507 818626740 408632496 439130570 167393130 461966011 300783509 260409058 125437438 908550207 460356353 589252038 293356341 823878341 992367853 777658798 54572086 522282597 271367330 511240996 183786467 272174932 382695507 711682083 457287562 626497941 36191167 254008444 110507450 430689311 166250444 829975540 995286141 490556687 54341093 945649834 915515440 789532555 882642854 218555877 397074511 837074137 978848538 690192970 94494658 329035843 306612113 310788500 846836319 92873941 673007033 750815823 158776922 324900594 378796516 342599371 625105827 267285257 544882773 401612808 216990318 743554812 462075748 763563474 521697144 879213553 168878017 167957647 217270543 942852439 673580146 70585662 25734527 875386680 709527714 516967754 596158599 395324468 653577843 308239840 423317675 577369918 509288557 100214896 568850735 266599779 896724840 162369926 765828670 150823676 537844949 804062639 979237063 781825884 136833969 882283583 293592978 260486792 562791365 419115101 861361706 647326919 211277038 251403405 653028552 224164242 124556519 137803704 440000145 740798558 225788460 631666331 955123288 296112449 351226566 787442850 11129429 748835165 791290515 740434373 376947515 581439963 146058381 979700670 502088677 790406494 190472587 702302615 142214773 127411908 669124819 886684121 745608844 327054745 126377907 788528483 473814701 273263161 168470363 928637736 182002503 948742892 87129897 633074601 165828568 879586055 516806135 832619057 723781190 852073999 248840365 60371931 224499927 186977717 34759992 988666315 796148751 949668624 778582326 172243008 23228866 102418035 844046526 569646777 55058060 823273356 201456627 51656483 739895746 953509255 443983338 308872867 72496669 53365251 828633581 712892483 739976866 551316602 803073392 690008635 674789895 60972484 110339956 77267552 928397876 489012506 425370204 377273660 86751055 878642940 438811480 223332740 998760389 769128276 591584208 595427589 39450351 463774488 192018112 480756802 244476129 236168800 654080997 700628228 471446769 992185519 89937149 695754920 352616619 530703977 710504938 249925073 477681276 321036136 5351900 704877200 376690664 521093319 735568508 637030456 966020277 327634439 426152963 161318109 545080388 209709578 889211438 385183405 939502093 546107359 223852265 169286032 978703356 93225951 315736266 12301213 631424371 816255270 824335852 287618842 57639150 292094079 199160412 418502498 996070999 73256585 810770991 637161361 528848137 982904298 473577327 158496876 582250893 127242723 329962097 907763380 921320003 967478385 501357622 257559989 196552262 90856736 287364347 582829325 925636326 920895523 234719816 103831632 713549686 821035361 758900019 471367108 464565805 123450878 122802675 747760713 613605682 88456963 164412694 232357192 795963794 624259179 227579286 681316386 217903074 719104473 172473093 337465956 804745636 351565295 211491527 221026765 183086884 253649078 237850726 579408468 156300162 918018338 199931658 455680692 983987942 297742669 351940093 510568791 967584462 154278669 914548233 177691807 52036975 331954365 802936324 251035779 994567881 841196060 766713593 78819598 346816320 360677755 210269495 444410112 95844575 262070602 674722460 496146645 706181555 360749025 506233016 643519758 715359585 702878349 415666132 540609022 365468970 690294243 570381725 253315267 341974263 415537579 353409329 279705132 729913556 662253454 749854078 428990933 328846379 411264319 838296706 704857954 629808094 395589696 117892595 549886773 704473524 755535982 512347683 713617678 516039248 796604370 259339452 215341664 214000833 139803089 664865053 73861039 755623324 286892895 876193564 67471220 113361867 39723715 385123099 845970316 761865673 686118152 240516156 869006524 416907038 145323208 735410893 693597014 132664179 388610886 321532940 204727578 99527014 932707957 867317382 179418808 439182172 293494216 810079375 619188326 26994332 27585863 896678411 177926657 394952718 406463612 130520253 893295804 869236226 547840442 855948495 271825461 399790086 236085425 495924357 784312859 129002940 395573467 216782752 235845087 242425572 873716602 343241625 825961086 565788212 150041163 582378541 605504386 486300321 172336222 982523326 110879350 678657544 259382245 764102280 718293277 764713234 380078394 796739061 48603156 976432287 62394895 11420689 659951883 362273175 452116303 94504730 192746336 524265057 983499191 498123418 188560890 25480806 359335497 952254766 241178377 988168511 379727745 798238933 52538261 865620217 804360871 224062002 338051750 814910944 324316473 375300927 194441961 51413094 645285218 602578539 26923360 696353501 866503566 28786547 538974499 647834931 466122532 426449176 47187315 97551520 295611139 822394040 429327965 957786523 477318038 123540633 715071054 997970563 940683047 465988594 938970839 8664295 636212599 530051850 886521534 133926942 892044963 286835808 913381602 699046380 287123715 600671363 296307684 394466936 692139607 554791539 876573693 987265023 849969712 658342529 400865998 639840432 795325861 486072795 854681636 234741481 375151927 171336164 544617496 56307924 555391833 911517891 549296069 717696577 6091481 226376378 273834500 754209373 540838957 524570093 410706356 701482778 280387751 644681004 173581245 219703614 733372154 989828023 376484018 100993367 826585871 486646299 676406515 171162084 182192379 856456546 91138468 207505822 774163477 973535661 686026033 829028485 583342855 194015558 296696897 797277286 810007123 746502713 171565838 323801177 990075195 921385926 540862367 419314234 347594729 262910717 481553114 533524286 490621264 380770664 804731301 860720742 942009001 461539303 407720258 128539777 167828122 47169609 105320334 169653103 94025646 408502462 379498329 103393350 331334724 400985537 828289133 82604392 495623356 210833246 350767770 755116103 891578328 727747010 856305592 564837838 294819192 424369259 485915481 20193503 216462976 474694839 576318818 509779882 885010927 673315176 405858455 787995487 115479592 508473770 558017486 593213315 691630215 308912955 707746754 245615236 956331810 296139800 361237071 379875207 294112554 15698285 704141136 112463083 919076364 496152845 523204818 167989315 358182640 768158052 11049166 547500310 603079793 759304988 939861899 198816578 384138269 994902538 360584138 793481512 635728554 111525390 483245245 719102400 62645965 337197021 101321699 825829102 29202543 506034613 999110709 909807204 134317591 560392608 979293912 978083554 62650371 963935703 712958017 807632110 324506913 593316074 549833861 703803873 39273234 818643966 878036467 704949016 81304297 695452628 469624665 781091345 31597891 38620756 872597061 524175734 895779358 324035374 300165006 679894221 15410160 331009774 29358510 516042858 423356052 648308316 783155282 739656596 585025943 948174143 225796006 429673457 622806113 273476550 432542497 236683584 354225511 312033569 774638941 879707169 543497993 294453494 610936229 666503473 758905037 600843959 397415082 32058245 80558042 50052342 818756014 897472861 629560923 77620602 502010799 740674172 850659729 946362789 150097491 79866116 451978579 872255881 269698239 383085807 591964151 988484251 635941030 541748289 128278367 89427698 311002750 309033281 145808473 688433246 259489073 698162869 683404083 487302004 772965833 828382874 851052877 395848854 316576152 581129775 19398319 430455957 506621364 437241048 198656367 617580842 757781186 703801408 669590321 840760050 598705742 390704551 221106962 940876487 209139287 798671635 942794407 976149081 831378451 967761352 515431245 687359830 703180409 347773130 629269921 526705802 448515273 138705062 509340473 915258747 274882070 105415309 398937776 261667638 36456263 361433152 991639985 599737164 195134814 337178704 576439962 69667230 743264229 112561328 811183708 650352094 304021460 656379252 547531873 451922280 912269506 442551715 322549780 308321492 200114602 643961752 823741068 788433777 629466199 910785849 13647622 665379209 779897710 90473421 31077023 433380138 166250232 110751960 80980759 434793999 455913860 661478274 509386802 562724386 167119008 642500005 627008899 481081802 105998411 971547148 404411043 568465506 374649136 674798525 496070898 801708532 746062103 247678385 245475641 698966876 805871472 611962426 419826478 138882684 497694127 803636459 157799629 750030899 676420386 493486645 210102961 277033445 414247450 624572295 127397622 702270338 721700878 19840727 602433078 236918488 213029871 427311312 324714486 755184383 768836223 200490592 278223476 798986352 316180300 16755038 558841543 732742331 499777509 672885266 984967321 174729563 562219170 455124519 258301076 945267130 713009771 428765024 478806321 334386819 774065108 626364909 215390633 157178123 734132999 387946658 262583483 623781131 81826344 370383981 531842828 694801951 370489312 197363581 864565814 425401140 826016838 736401501 483302793 412953321 885811571 530885336 759463517 101659958 933702280 392445445 695356790 683667682 290398487 792775955 633933779 304444359 867570170 802717268 685124048 913576950 132961202 303447132 925146612 35297469 754060642 346350081 629766973 104206745 933851463 360937786 244216030 425135239 752269728 435615083 772824876 618306010 832387583 493223693 629040344 234464391 44183637 801722167 350108011 61598916 678777784 564490674 421069961 384364381 289697890 138615764 894724680 138341474 363403056 582325929 745727806 970307421 820783138 711567974 194111806 486712624 159625189 958837766 203380401 497590607 455993136 230780620 126730301 51984770 780946270 990335706 623119563 274131463 978011793 44424073 928259783 472179461 319303867 65429988 824779788 277298328 275404990 487536686 731516688 145571330 836325354 635310064 306949512 702652495 781127482 430390561 554050738 887783991 319015894 71371549 295086959 778503305 527246751 380863559 915277387 116420153 738174646 274278082 877719743 675650307 772823371 443430150 247212960 51080748 140459733 254521487 263150523 87725875 929729158 310986513 976207338 517879819 52966793 42207400 164767727 214940288 372281034 371027304 485237817 993940571 856658771 752571077 317298581 117858298 482962808 355048956 812981647 363503496 737539040 514571990 521903594 196457755 195088296 501835584 16994485 27855135 157666565 523379690 440270596 699306182 788837672 458321157 33815001 463308525 919895756 857773116 753589707 578078011 580244481 554165059 600280010 370318554 650920553 667090072 684309813 220142423 39818800 592439377 223977475 897624063 893006289 679271941 985315854 58764314 469172651 959464079 285788544 518607067 127973602 154992249 395579291 781080463 41615188 828404545 748314132 900515576 825241217 788479189 903453957 96147918 694218075 276434201 564463264 731701749 702593098 680494502 987070573 170219416 660704013 448998378 873085326 654508257 951762961 967113580 78134712 719341075 246661513 545260302 334744423 662127615 619417205 945570403 446449487 512019863 212363323 499736858 646715055 575332260 740088791 33495073 983424436 88671869 819562751 470845301 612625270 234488555 856271967 669077561 764502368 402348324 458540256 233710978 109342911 91244803 477929495 403660395 863005811 673948885 223254599 573445299 5442530 122191449 65743162 235089760 388660555 837893026 221735672 526239697 52317602 632971634 602712132 882736556 985373301 401429526 208604316 67316039 8528972 479407585 416755807 50051444 108099698 474987167 459142742 659558987 117799632 98769279 653269337 509077631 451838894 56333821 235317212 830207874 74191140 486601669 104242812 440464279 954932433 718806406 14953276 775109762 384355324 490082222 629447181 724964888 339786965 60845580 738491516 530009943 93698977 676715560 485361227 813695851 435412732 405953223 639400450 266625942 680101622 854183116 713980321 828111345 668483917 437237397 672897501 5601264 15966401 774675796 389672681 17961407 935945229 173160294 636085457 79305776 166952085 236061948 863298159 89637835 181289724 965990873 349523719 938524198 926606534 394096912 603790280 195878074 971076356 314937015 839977978 998718165 165687764 929748949 913583756 395002516 716311060 717530485 455932058 812159509 134680309 54827949 48174149 659736510 175313050 184486162 648172038 742287104 676753587 680755444 795186746 43851413 456696812 535740020 34217855 810010221 687105054 313994105 863579046 697965020 119683486 556086611 154333981 842408866 575421608 382828699 502864951 367481311 844437971 899463705 330971472 257399517 894252618 511919162 753497671 921277198 156265642 446532653 774778612 627602948 92258344 403467086 66150570 508562842 307239260 631780857 789213633 181946248 821211342 304150936 409613325 470261564 606516302 563089957 876760176 191487690 663318149 668410133 327333918 908072659 290980294 922426926 710067274 225195626 55158701 436153121 26274175 314579120 313914162 34393256 159998983 952353148 476830585 161734472 218384151 821732888 230983701 120869862 513365517 937362457 519807810 865206148 496591508 887196139 431280559 914523634 743021512 285751084 183949297 72866176 955658171 523246097 702175852 466784180 912625581 979450269 905683201 48831763 459061959 156287117 355037168 146094383 478283031 974495731 483967299 930241671 840221882 707879485 665401382 692188226 15245284 451894166 577065469 916213037 307345333 440008189 633236568 448035112 609839933 10779442 362247485 363178758 681136888 528583451 975133519 124883792 443534633 836978257 583358494 283343403 516868605 771028558 700826620 721241760 267715911 856361725 182867548 524189491 189499244 444608405 26974132 869009815 871034469 661847789 43728312 974668605 539121187 880479724 112940898 367357981 39541957 892998274 894827640 739667539 385201224 970373621 566867910 361525871 720590450 401302602 98898405 585810523 779513350 35730772 58969226 440924926 394156670 25955017 841401830 48573601 933325395 597024397 633581000 678795948 67388610 878617061 825612006 185033858 834508930 692338527 429407310 955642406 929595979 370396530 408634955 454389100 123567861 879134338 334378752 481225082 115895393 331872850 273688879 645057297 360939273 21447134 471509326 152370550 179815262 91756339 557272733 242214382 998093713 873614491 782276558 592120587 978557059 630489741 21943210 570786901 916289060 42295905 591149109 89461672 137629281 292591733 411189198 493446470 953037992 878057129 797962282 846707986 301160471 944638518 197594732 769692480 589387779 59347906 412325161 433596210 621811567 955029700 808162888 694211242 164362164 396867024 930087624 94808050 487860185 388542685 475370975 654667644 301508132 692849155 888861404 165237040 647394672 29814336 908859974 565292067 298675373 271496795 888030130 555715376 271768641 376693836 108818601 837125920 463631375 363872895 992376264 53686601 259989901 34087037 295393471 254448104 952658895 6414557 613022516 401072444 375417643 367719060 65616694 385072789 633808912 107483078 401281228 744300316 105878419 931927796 940895546 74227689 656968274 640718769 549468762 362253385 461815933 672191096 563979176 811948651 434243333 716059326 76603840 623521639 744750041 620458871 229819056 951244686 100042801 337419672 49010278 420070625 931693345 737262386 62664380 547757227 346525329 464414954 65927921 151493787 826697461 306090554 148946051 205718078 436443672 175136466 183653195 468397204 327183140 9499367 361730594 80851850 397316248 521871931 94097998 808081839 554809732 411824954 447897642 264011262 234351839 11466580 162841371 141436632 86450678 127293234 503742537 759439433 74306898 139487547 742030671 379435415 694217689 844240030 333575227 775055316 950009171 675577151 366777521 734072899 600901376 445230043 320265002 940797062 565811135 652309715 875240065 934856274 270124521 423010670 154220075 974023076 989495773 414443944 585889289 269147891 647260517 216276105 310031308 466223438 919542707 724667036 954401297 137751019 561937775 285309218 823420196 340808151 558882301 521742694 152355925 871715679 638297309 416366530 626645723 347767784 372243702 267939341 55383227 718825286 510453237 145337066 740517367 320230506 908995074 742952341 424392600 118892602 886484492 518644539 966270164 648188123 896781584 191056471 273575798 686553867 285977935 137028868 901656172 334040879 643535934 458462740 211035524 369585757 918176931 841368577 254736410 239544970 286029748 621185664 3170650 708349029 961272129 659153499 475606442 459865445 350395088 658810403 901638858 841805459 877117276 982851401 216033030 364473833 642229478 789042435 631994407 494670813 372111594 39076694 124913100 910711988 1415774 485501458 792976481 599166251 396295370 24601981 545393030 978256934 829636458 523218630 834861436 491592705 267565280 738709393 160193998 781688387 18769659 66882251 290206716 157275597 500583974 788423084 290303823 799525694 875345254 710088047 228461228 812025079 34972360 506851804 388932707 119017119 351034051 21434346 986749950 897698221 437029081 629042833 136325711 607093634 663550519 916905326 622712713 604678116 197719074 317489213 170416308 597502589 27306874 77622836 438803606 208347955 735193425 99063719 203917382 757010874 679591466 121440641 923941621 730849022 948444317 847961818 838198222 517475537 514379314 168426335 885177393 81844636 973422221 184577560 951852550 176396950 605336443 979251300 945583446 338975366 609276117 619130577 818346647 255442758 939030273 338665151 558237755 576180559 770470784 496328865 512715908 858614630 265224497 669667678 825081725 409407775 728604363 831972042 61127278 855734791 263659557 806095542 39954628 159228540 176800602 136792289 552771559 1232657 515183746 891169892 557299415 464618321 662210175 130063208 459278282 681663488 687253920 183399642 432968007 457597453 704556934 434986704 537944551 800562386 28726041 550438488 6731576 627145 99743970 83161683 7259740 478866871 811401781 992356924 364195167 596565613 332282088 573944773 947698847 868860588 841481887 300989851 252207448 517095059 25696286 999144739 681420150 380660285 682945655 148549066 744506332 152542721 798992965 398169798 532909959 400901116 258612569 273876289 444357802 778710652 416340547 254141715 940002862 919692226 447669775 991404969 272832608 595176504 313572264 38888857 585178851 499361656 12516562 629491331 879076937 591539119 345993417 520748152 989653134 585675072 686419847 440724966 733130991 410020920 38378300 768909343 813355311 862913695 206599660 546248890 975416851 178253156 293664674 166987481 353842379 119080397 364727552 443938426 540210059 463856291 947127427 325202565 900757644 929314202 210790641 597205937 225746863 723314865 214306284 5558792 877393344 669768391 377097117 166821136 270279762 926613323 894959854 904608147 336470329 368982963 795195668 230698590 947435404 691346924 513955339 881234992 731867945 404206478 9642929 846504806 306404798 388972664 499708563 738479416 186086469 978428790 971453908 408122999 576416147 414315099 215724925 16219627 556623490 572763361 851830647 921289980 760853613 934818668 677464777 25457350 182843966 45789565 716573634 398886204 634582030 882164559 266801309 452142939 272720916 350456717 60251524 783638077 377098662 100806422 619868647 242312311 128346784 24962655 913398487 632097349 267805258 686641758 719087525 254820826 803152893 982527682 109076775 475795147 554438319 416566282 806374204 54964811 404085926 149785527 42103948 828280399 183620639 638345165 895774223 992227449 817565931 911245790 927659087 5299480 153209665 39471611 460095081 579624506 275359521 9624501 475387343 334017232 689220314 93863198 670868425 87626881 821727773 862764859 448012399 937167796 55448708 463133837 638656388 315756521 689819811 852827025 501657960 178701802 8236767 309129304 527648057 397236237 274134477 585564983 95347900 347346637 799359650 864948335 130113813 900180620 400894678 94379466 217082519 962024964 718973542 88374307 409325327 321478482 714499069 291250615 63885824 801129337 175269778 987037377 458101906 444826909 883085335 22506602 161544415 38404493 969039955 459681469 666100641 373005585 46373376 426922514 973422366 159515726 105556538 72858452 95200049 653425411 116188479 388934152 282471653 934812250 391953026 829254146 110465805 902179619 276454966 457748857 134453414 923117431 64129325 860031439 765423486 171134345 973549513 305387803 496828949 996542428 512312579 433282222 8401884 209752639 770980874 566661758 305317813 512589770 377292573 792477380 656501736 172956639 289297969 199783520 494545410 463392573 819278599 925264523 359669854 996652446 509413447 58452375 740165393 979637191 818802771 721028606 903475439 387923825 205797361 892510014 605709115 822939032 736062676 573872225 804109593 59480806 435160748 976791448 659556642 706705043 148630844 47102321 145625549 693219992 501110272 912360720 660223151 598707485 849888820 59315724 458806340 935135402 971453128 751230458 337737441 458180252 13742430 89995686 39076306 249771796 123511006 737174235 972174211 292199971 586265458 759134098 887906835 922601187 613598901 713494425 335918603 687840281 142426326 753121633 503568758 106973382 424557031 59021391 810733034 239990141 153848526 84278079 701889733 984320694 742463919 331995760 896265929 810291175 939947745 430155420 759956796 684986500 714494833 491952591 476482896 880211231 482205575 201802277 647097549 563381978 46241794 280288734 76384081 792553091 173349439 256563395 844022805 677959352 768973905 676267218 794115806 432606994 874956162 409819327 673616825 982666359 814443081 559168536 680270488 434108128 755895266 109583062 531947812 212503637 536089738 644844776 359851043 446278406 892786700 751409858 140199572 804639612 134803874 424768570 669896071 589759017 978057063 888921726 846659150 278316500 898449156 358869305 529992152 991888911 221090948 623182921 875153485 296084724 456087123 174347908 211126045 517792769 753614531 755407278 126693019 330263343 304219969 81517660 637078442 86275915 962583730 34533524 42229637 828817296 474947045 90403510 774225674 334161312 224211670 145289683 711085891 244089787 369824677 194746943 502968688 938027538 787399388 257809552 849019764 769883806 224697628 36491597 457508021 548472753 111924307 649428542 16242000 687442852 464650728 310325299 318876950 315604132 975094345 685945034 464330588 370005225 378971974 161676858 136363788 180183462 828974128 70422501 661414615 825000755 274352303 819881243 679073275 28524454 106920260 609972108 371972606 184857291 361369804 854972890 465492209 593898140 69580794 429381466 678988261 701504190 475122451 684275192 654961790 561514387 113352007 746083659 39922844 562728981 890123965 378642041 554618102 219778113 928298196 895013004 594497044 476260224 117002334 632339633 518150253 692697999 480123374 491875857 626664229 194550445 203613737 575318736 173010488 39680038 909413779 777303396 26670606 272896906 876762591 888514507 613240796 342505946 217672560 788526037 85759382 890229647 906768153 493316224 251693625 691337813 491127902 362222722 510950456 635388387 884438353 743419943 205981801 249433147 974581482 18957577 775225642 624785832 690838262 664204792 795447384 619263923 253843625 930345453 95094258 202071469 33006315 959035445 461421480 737607775 294233907 824968789 445607152 228143408 203562358 928876490 714672118 707193222 405790201 173033742 753561815 547498493 126916099 723949132 868710357 58816989 525048170 944835573 583740791 542755919 102350997 432028572 107641705 693598062 332521951 117806196 795082661 983863567 397680450 19180098 551006035 303825447 952305832 809898394 440866363 925097462 470713184 657039347 61545198 426264915 821847105 945302475 443301848 894868088 998136777 111812816 550467846 499772810 74337252 695300006 309264312 329103971 101630328 867616506 913109207 973565144 173155917 574609501 952180893 561060109 966733962 390417091 141505999 676718040 123025646 962259028 582864908 407691857 886933910 421037614 734106589 890847229 636665387 75079312 515967347 713621980 744064758 849723254 694123585 744028996 956916212 396447451 764847252 361585887 766048944 966426972 131464138 451645101 80948390 132754340 468719274 799231781 480286451 925507572 54225349 720227901 396753831 822915918 344544416 954250401 691997027 207993318 973879900 650967306 93592071 526062416 559279402 902554548 984035391 954202069 133425133 50277902 880628490 55784712 289344753 145550970 776880374 123545747 836229162 681566281 713088807 204932071 900677578 915995024 728431381 25880859 936209227 33813050 298994683 384327850 265434431 595564141 482262321 496852947 786371487 960623972 899403256 685611553 957298688 681468049 58545974 973566862 739301035 335311126 560220107 215358510 949837461 63188141 604888380 299773657 287894626 972487679 637353458 21975637 208351789 441031285 108371224 375775571 374316991 954621848 577708524 119185690 15870496 445821899 216148388 562078653 380352806 15883924 961912523 537138445 907857435 297865013 490849711 629992879 571907556 56117595 666830364 283706633 274995248 527107247 702510799 943213805 944068040 946600235 562401710 4926974 181642377 610242843 732757673 138211863 844482657 345944299 797437553 143652414 567629277 755768290 273957366 648584118 452123736 920164719 971698772 28597443 71246819 384291465 898581646 231360305 803748719 40596798 224913683 882412480 964583787 922421291 147980972 574257827 592127321 818939893 407099623 553027394 586300070 610873525 439332943 286544609 85724263 376627288 63223425 199630141 615096687 750398163 402463189 844637915 659270967 312424254 270642945 346522388 317634709 114375631 369871496 503717748 370540989 733209590 934903052 647342052 723650519 808837538 986120827 827709145 808178846 158646724 201648678 75864327 205035497 944647097 670253167 591099748 421646464 624111650 431721138 621312522 984223306 854221678 844185491 965406138 113378723 526833083 924291985 124375867 96655261 201405495 227689460 109973481 988721992 658150230 567272241 73853893 481303905 914422339 100856603 506894072 948482643 949014235 651295590 664187136 175539962 858402350 506537446 814007046 617905183 471042520 746936492 386218655 148992326 288499917 737688169 808105450 576100742 895308391 945340657 795812153 417069369 112788879 647532475 4454852 197375105 7753246 621066785 997385676 162156539 809304632 328197487 701893177 991296572 906293823 382550209 164674373 273291257 206415942 591841807 178989695 980422819 319065156 720581304 712798349 802397434 299521864 652164362 980789902 843991967 435126833 27416754 338824709 57919602 533184743 791193790 469847641 887954810 630210983 517613424 960369913 319694272 731733776 212376283 419903 368687209 508452525 461051667 875751274 734400286 16896227 500144114 617631351 359308369 788267689 442872781 44189323 701957785 774011525 328296038 897197816 784983059 521540336 327640783 235649071 157376761 324886924 731985533 653737583 478589064 124153702 318449519 330179883 522991124 293675264 752120820 247951269 447284398 612610049 599731955 447623536 738850173 133053671 838613856 170177193 641057379 773420516 109216601 534502769 885290347 733097182 605247809 289357302 757557388 230039120 852073964 119484942 208283604 991992911 434238495 641350080 491916645 775279982 140911879 715711374 280776630 275083037 571805509 588052891 501708780 660017577 6600213 5497711 404338169 469013921 965615876 752294640 791721587 820117529 508189536 898659275 497869364 131543094 713251958 469173425 141855743 98912660 288591524 166813163 266072209 226662458 37351793 819233930 386606983 833129488 730470085 836098374 518663096 333968062 986068336 290262375 647848682 628353530 619796236 425823983 953116102 392109218 160342431 83282103 657321516 210993216 461045666 941088780 372836265 1445677 735409711 384046804 232231825 558796300 621025153 75192083 568571681 513411650 654793555 380977597 88415140 703020520 263743695 95062737 62243478 606948309 646416365 175794247 351662993 54470603 841253826 414018754 274980652 466172090 347606320 57601517 243542171 67920700 906935276 105040561 854717340 75123612 467660078 999083734 26195901 144920340 645945320 33759909 581284824 494480791 585840153 265406438 181990887 270368889 397190771 662062566 27133386 90234346 432242307 318242375 63893820 373729896 338972706 907792823 124627921 682870481 941621177 261384542 96340305 991592055 321327582 417308640 395556840 246301511 980567351 981570277 662143694 842212224 255137555 89917725 539472492 752551745 686408717 873240439 33874402 330319419 682359358 585818877 397950437 903164950 597217633 800650213 94477235 942395979 638893289 608766835 725229992 477201315 246962625 662145664 15657482 542981712 894578071 579078510 76662441 951176170 785689886 259055108 808766453 745673658 253051433 296601753 704935214 697401659 723331935 731010758 134201691 601489871 415403664 378170273 920587042 603486003 102569755 231910502 674699865 7172045 792796684 399903191 940688344 374103868 303804737 267319292 928486643 971023139 3633021 59129429 690866786 288551643 892577643 803373486 36363640 899906543 722539455 406909581 342755655 51210196 711443442 364812820 397113294 117924787 731381844 416772107 618357442 216593540 701771353 605786652 315779597 753969094 25174500 547800004 88042454 791018908 125509926 64674970 714788948 186542392 91119801 840613072 502688977 826761421 480513134 576443646 594761747 874780677 596451543 636558056 819728303 244532127 376592485 93145253 990207734 705789900 280022959 536236747 36065270 783516862 578692428 820082427 204608178 904783250 214051797 988522441 437195295 321643630 460290511 263994101 45972987 370303523 911920993 939449939 161091663 16805756 50790875 856814908 45432172 602569715 909602674 805091623 724180246 3834786 584963110 682564810 864316522 454180276 486211767 742524506 318923472 731010055 95086918 821580261 165546998 741696692 42453969 997577587 146786691 231044180 468587613 637539903 256513810 747759628 338185431 46947656 410574129 794428851 873904451 147939970 713374250 748904545 121079697 551918178 428361480 819310646 640977866 708103196 768671680 375236502 92127309 386651942 722322283 883717102 169596211 356332729 792369091 505137966 721537572 71912775 97445453 325647578 674730127 283819615 728682092 344599174 173022012 406450957 10192336 986361702 959771109 979927589 851436091 309359872 74678259 12743980 439567056 479787966 6698288 703218069 169153406 413784037 60595697 411750391 103300709 932678396 276476196 397129265 687919314 209469256 151698979 297935399 213576573 699536180 136441004 580167636 664566785 96309178 109505949 399847720 913790684 370172245 83396609 396111201 11237119 335893856 426621183 619984321 439189772 208682036 767379654 127021450 219868015 764969365 403341731 27434008 631797413 391736652 242303895 402007591 598886400 3453358 442002725 655491004 598602086 548701829 599799664 892378767 155000333 648303158 749417063 734032729 531069624 73114600 598865707 716231483 857668227 345891132 812024598 131302920 673026989 714338797 124948034 563684676 552624552 155045078 111582412 617747856 399248642 137372823 650694121 401971379 182246943 118781530 791631899 387088453 118080727 531547543 419774216 541457076 859152919 49257009 447603636 338961985 933319329 698472540 703522388 135761243 706561381 845665116 929546444 265601091 624542506 748087048 652446166 875005552 223905070 571572735 631181633 331007468 552395808 570408349 603496493 59165929 551476803 187514975 728398381 240958212 948617000 608964320 547524028 277734434 241047822 926401998 104154203 98499234 475546472 604673813 468324744 139396241 837827315 814971410 993857449 919332734 66829751 112743901 31884669 450263617 580403715 243740266 401062179 923603466 843628915 619459685 58370090 414202595 360128277 45924138 60542858 243078087 384005884 896515643 213272590 222770054 895304127 606144787 581152573 688955095 246846125 417347057 496210877 413988272 169642591 650575411 496490017 881997898 584247796 58732466 943632128 852871739 142055192 114207056 368073817 333548214 652335693 88928617 672825162 561291396 235260746 624036437 748996926 377085794 206289331 570909111 994258058 124972905 838327278 804665414 437543776 645474299 723498648 216005479 325903076 577294497 303951153 581363893 756580045 422825979 214550284 227783867 102560606 419330423 714833582 236497320 996150003 255773169 129166766 958650937 711328588 748061135 76578394 511633390 781149023 298127705 656329535 262878033 377182518 379292859 680202832 790126769 798665959 328017634 664686360 529961283 825052443 917718666 342572048 273416376 10299024 494116992 303260222 356749252 457944589 779406501 143267430 862688769 895165655 931390496 238861346 761508678 242167782 519002586 556311259 595364605 199482914 159257248 133542694 619452043 503961998 645005937 469114419 566643594 543149844 301637906 439603576 360023735 566828473 97623150 595711311 594703418 416450710 178597732 272592584 362814700 239919039 556685912 290875539 370505579 789097847 583770817 235645469 619598727 428955511 190479380 32584008 76155175 784601384 608523784 145508879 124576308 468819475 18817923 168368635 791383354 393844630 168650976 496123199 276656656 206840615 492834588 441112445 952775875 583786277 187547716 111212855 269012704 670603088 488648279 45934295 569104968 456035936 538968378 222142760 962774249 15138485 46932578 44768355 726504128 202869826 55104483 265987038 798684358 972054384 729936456 930536379 813694682 288907235 141221599 153621018 98405489 302963571 299025601 118108418 305409639 316515960 800744651 299610372 438147917 715516121 567583454 753542228 620960929 119035050 467523169 525540916 34137401 124614206 876517883 971659375 282758073 447515320 921194124 93115719 445305652 448395448 142872711 424311527 965831792 493895167 337808698 501323381 317970340 15361334 436907918 372736772 122834093 317871392 219767746 325924062 276452804 118151903 762579432 268348378 369173281 809952291 918470999 195641532 963712736 948085084 831921747 131813397 367341558 626244266 681234943 707809413 37631816 281079407 120367043 908747598 405449821 50450403 756191425 180468752 550902073 790308024 710733355 195043225 338020752 74523708 212855623 630588323 808162890 625906798 113910656 740837836 703695770 891822669 752426270 9547510 140066670 400554666 40155487 501636033 824939937 989139142 17982209 765623175 631801655 989131091 279730231 564439749 626490316 384943061 190417731 602786411 962796043 692557972 721777820 865639477 758019526 861426400 780316262 259924447 185488299 793196120 317409782 101745879 457887017 535889107 944930444 533858459 251254959 639865119 152085795 370527504 164822399 483313163 335881051 467238880 587463680 714006289 664591036 480194551 855937596 973139602 977360130 732078898 140343909 491469345 597153085 439556856 890181260 243536395 998821446 922016828 9933867 496735575 780672431 396072719 302978648 658286542 114052614 793871498 983132215 902510118 450444234 971871710 853101236 728258857 853402041 39113745 221350692 775792449 660554001 312041683 44374302 638396777 869442249 14504598 608218422 831302746 301715432 912108844 351599667 990325962 764972701 153112688 637093454 637460943 649572993 46383044 487840863 815931083 126985302 501954129 5371725 104161424 649906112 590370165 371228802 136306664 793116376 460209843 322594299 848952280 801081412 659128568 856691709 408593842 265047849 165793326 508980706 339230674 725355883 857758130 19885376 329669254 17972238 850499903 572896856 637584003 85982213 571953724 444865103 326889307 479073365 518389106 570468832 5472844 86525599 347105307 814977210 942734002 152909920 160913780 508082370 784900363 925803558 740533394 192458188 902912722 476026563 583258549 96491187 564219436 350059387 395078436 909818827 809251496 793215422 138014511 891464505 36225230 296996113 257984202 320875599 634654558 704534569 17184988 959884169 644279337 478802838 357280303 480043240 165559714 124819672 899312937 696658483 623415513 897636428 528167284 893699162 280916632 9043540 527223880 768403576 899266427 732144203 544068311 227407941 752284302 716997462 805214509 583575482 924635450 987857297 547010573 857342370 82845168 579960056 364175032 263938385 994272728 961809885 113166641 856918874 453314168 298116735 762833496 776747540 702216441 506187572 659854838 353857249 705242007 247892987 573367480 132900598 747058215 584456745 429580284 778698115 837564881 722849757 944285469 37504373 748210714 394264496 352131187 771171401 671696057 441194983 999306990 439592975 930011557 35247445 984362101 342439666 21047477 322136624 800087837 192080337 657032734 831982808 730319818 543724392 968375384 309453639 267932932 195390373 997297270 248841504 108322252 925845675 735099210 342172885 189986942 954237391 746201261 212325851 442908519 330033718 741085436 908203885 424097321 75696380 925039036 679290269 619235311 134362943 249228604 106377593 425231019 201193270 473616454 194386518 862662358 974781968 750216867 973390366 193910663 205203120 140911935 610179434 760032740 214284584 601964262 633272504 66778706 379103087 307045218 662290458 181940396 240558995 127481813 742013849 850077040 610342497 552817498 61748846 91465266 422475594 789163391 675160065 329313759 765431435 556945934 358870472 232258565 31223895 828236336 531471945 724611237 57841745 441431523 673027973 784100674 255900362 662766822 123455576 841027601 929317666 183733763 401099723 215604451 757755075 874626501 200157421 214889731 699235207 281805703 503949473 176370131 632363297 26243659 9945288 358068475 469657054 621118418 550244528 874145750 443983399 223007704 527567408 413006549 82436330 838553010 805429225 569192339 405520584 242812145 286536338 921783865 34587274 79934813 132370061 18600978 550018535 537086389 382013029 131698250 614271334 998916499 94191740 713967392 880489521 161473505 856623504 81120876 83733412 521873691 339336328 38978610 126386815 629288443 687017876 741981863 992114330 714402291 186927634 28764668 154979259 962186027 121465233 929786774 171073406 130040481 132896004 813400356 705015855 119019283 667973138 799177099 127421060 714728034 927979266 3680921 910170086 188570251 208469161 413519926 517182201 201326296 244652411 209617306 969827713 808824166 449546182 705800633 144531801 319511435 292523088 571592518 169770753 234479920 692501659 46740101 883059517 158465234 852316753 299421125 491643621 973508552 537175187 193005305 246198187 402254425 124949911 680241676 299502678 686975434 524968621 91080396 940928655 279949074 375359982 680255855 579592410 567835604 69414244 655605492 962631556 211886549 312242005 579906262 450320461 732184355 924093466 172291527 384994927 383282670 461079987 910578026 181461801 38581477 454342957 351515829 995771577 290730681 370562574 569341771 716981142 525309361 931749690 207788573 986509146 815193801 471934773 664755615 618585031 779280553 840589070 721559769 288788182 988723333 132529083 769311643 270135795 838584036 267238297 131127713 993238770 178483301 398318134 116225690 62986152 463438395 346232837 811831695 273808585 585421000 714137814 92421199 568687903 425254595 649594427 623909248 700649851 197071628 899057243 588696386 675993435 741046316 615818256 535948107 362559621 140122016 768293719 850564553 101196914 745337574 807429137 975958401 492079537 749604953 20687815 202047856 186135409 423502091 933233021 746427169 627161224 700045096 335618099 914079104 239250847 150201798 419548551 236904697 450089159 391525424 190418596 200621840 183304302 202906238 79424773 872872624 902698754 698743799 764882122 696344508 56830101 363715010 794919192 618721970 832285893 841122906 646891882 582719330 543468217 809182773 790982270 763805571 849116318 651028548 298872880 859858086 573116072 85531481 763015442 929560188 714469008 425913855 965540707 396654488 964028038 164066926 140367867 919676901 451317310 364401933 471589968 528984259 225099902 102469516 395376074 928636244 826373885 273021554 434239311 641483236 472069750 88953197 664570230 899932604 207882826 696866291 325605849 635473345 295786310 493700643 533200032 695232234 647742285 355187916 47076320 221664435 860100024 561703556 582849431 167067755 161070571 150444847 325042016 450569796 441614932 805541737 462513501 316547515 284940172 877442035 297019631 388869835 780421563 924001668 416413889 905709400 533387625 350732734 774287770 202914486 536619613 43314856 134931957 539885868 541807112 739464303 897180192 389878933 666283437 526654454 418803639 468593060 511165815 265769339 405971177 528910628 596197755 390240683 682168162 711436569 470854208 673134693 939692355 484956022 177480202 851647250 373403155 675543733 919003726 815151678 266483002 230069589 88288745 699999054 715501603 872473258 562504578 832127342 991598997 445860969 529405522 505846239 234890802 371164881 922218043 599891706 2101865 688215158 960259976 616194404 7728238 243749058 627270618 817775752 858558141 273360073 289072955 963374552 604289905 390292808 840437771 682859866 123869579 948969558 903369341 51827739 339364112 658142748 179890190 483000812 695393775 589285257 855987798 264359746 396336254 409698432 593440377 849608819 242817022 352899373 201783453 936306793 852696325 7177136 873994012 569147618 251404757 9119245 228947751 760797893 54029978 686049209 796398698 528087715 197805223 649887853 576322646 266681543 881387361 849817991 718116692 499150212 495833784 526023838 702250783 13095744 67801521 136207660 604077389 357582004 542919610 326162396 152739548 602030788 119983348 663845201 121856189 537884222 927987263 189913619 80877956 781437117 216744131 138470315 122647972 492560467 904803487 164007917 533787322 870654159 990177947 523331851 750024825 786163103 828258169 777964880 582085423 626424299 591360864 967184234 170266015 301628524 858105232 906892966 880371069 162112733 506786572 725736330 560847015 144084810 732311362 733072934 243166759 879603137 574235909 519108041 181613653 793694765 865379195 231369024 598615604 523853475 430505996 167760704 744348835 502452971 884280681 94269142 927328271 391289598 314250865 403512753 601850115 411951424 530433317 493311213 179144363 454958366 416493720 146157814 468882544 181552795 51691984 466269784 254533891 88066160 99319964 55997416 735565393 18264042 343556188 101361862 136110804 8744469 851315094 821614411 849491205 426957762 312960911 634394076 863633043 878061043 470530653 167726566 397949952 977893980 112956388 992926623 984506160 252351496 49483868 934957858 419855234 379547704 61689104 117630097 211700948 353527666 433236531 295607070 535262061 970685663 996506538 160362292 247861510 799754843 528646460 209586707 464763832 80838654 836554602 320327280 187357876 659568110 260465560 962346404 99091175 267750853 769196949 910505722 679559805 406880106 15559665 115707142 239842719 659560239 806010081 365132712 21320235 994384751 280698687 297281916 899398752 979998445 235206679 920056365 49916189 289627891 498669882 955443425 49480403 115202795 738933872 978989011 913006638 143192671 880953735 544683426 325369089 967469675 514697038 94786719 721752627 502733108 652937171 919279946 611081091 341780605 324518861 247406103 828154451 842890106 361755752 358226578 37905262 567096799 309726886 385398401 233118619 117365993 899106714 330519359 159496583 268468180 461006273 635892026 149057129 465870701 261155613 803638049 914905602 594463530 175341847 14829430 813732319 877174097 232979394 939429147 249831104 38133591 305561986 563382025 573156068 801344352 841116254 910780384 497814555 78809584 83070082 946103410 984299131 864621420 30808741 74864684 631276667 26044487 406122833 505219654 643212884 518281130 918324651 163272798 463562780 36195397 7904961 756970047 205348622 584657068 645279941 38262290 664247002 450852334 435936680 120548498 378871112 990224142 721011888 857202836 578997196 182212556 254789611 580009952 238622256 829013284 633772558 674695474 64732742 72272422 842095730 417800847 185249212 475437509 324448993 310702823 435519996 97644338 885740201 14622986 96444908 960053942 953374115 753137235 478939701 150666834 615210907 301931483 311742778 202087256 309654407 403387907 998909203 844151908 708883943 819650737 907432449 979817232 610313379 664184804 819622556 75513973 454956137 177371620 129608344 216562063 880154518 661624659 647945908 294427748 205793688 299310783 127791949 22654619 298437551 107429099 622265599 703385899 455221726 262885341 608518155 516918972 245183286 236414024 519534374 49208758 506410336 714314626 761785367 539178713 795596588 811488519 639857588 32968576 743457163 647590363 64406102 829466854 755362100 617451918 941086735 918823426 934204091 36466995 246984097 981769625 791752742 762524318 869446974 974364722 120512466 665994853 177729730 823493885 555357991 209476298 874098759 453513443 602711775 97895536 895631578 701686071 247316479 841382696 929291424 630363413 799522481 62155894 584889573 612349265 434394130 687784383 90772389 20124105 777736807 692240757 194517442 310897499 989769615 207933269 436978100 798030059 13040084 394201167 969811045 132514686 990713208 539492943 682030596 760828648 479957568 616832170 150922396 734860414 917740357 157952802 498799606 981194270 837694206 265498713 91600056 445710413 527304381 138744005 336262548 309318166 789309557 437409911 360721476 205591174 254413692 812707748 115385524 36169723 864950106 26539940 383392529 998981012 261212579 220843679 318483258 986988348 112841275 413817699 325742600 991692370 865473378 530074604 406517157 70634406 56243798 644227154 182165320 370393466 911148317 581521308 488138961 802496856 551457678 20801193 466373867 306664571 89158795 289530664 359572579 614446170 815337490 364512776 77755423 203849505 577691465 939727882 412603649 36308769 778522534 743529788 909802834 207101744 809431368 214952392 105161950 136648722 177137505 689511132 553865528 953572813 656287720 270149874 706392525 282832411 826682224 661855931 895942062 391710243 413513403 684081768 42823095 44302208 545272720 101021226 939892149 482247597 351874328 339277058 256843933 489303834 221090131 186871999 952326507 858204235 376994465 963951740 591710847 229501644 312207077 20898681 948359255 720013067 40540169 390435394 726406770 35893033 144959842 972119769 810084355 300530300 212206239 420071890 549835830 599792970 865597455 346240842 788238311 452205014 49932773 434438441 547405043 44660763 5524400 655177526 495142966 749226223 224876347 772318187 75892454 122521481 713314844 852271817 24084341 927883639 665089081 667775567 364221077 103877091 30058446 825954783 802452856 581207191 633111977 912243466 94367461 616658070 493639715 487468275 23513346 119433261 811915674 167622736 469197875 191599742 78036825 557477415 343220848 42505118 5567219 431190454 309745860 718575336 183575694 902739828 78811407 709740049 564734833 835765247 900431066 133023671 651467721 576676454 352609758 479350454 984243908 776958688 522481096 103626352 8461838 282041245 263161409 402422219 39495553 349608808 788054145 380907873 160634673 982516647 279778345 664310227 500124234 813280149 343577290 502072141 991366370 461769344 949199533 88234437 840346290 360637307 395293950 849114231 23732075 511169724 566431292 708123461 811372571 502034619 756610909 518107915 800735659 224517946 618552491 838489133 847558972 894030101 431392245 258480038 561509826 725915500 368637962 449553611 60998350 381829885 291018625 39105253 859675815 397496596 705114499 959542561 674858235 704989789 891220107 864100744 367957419 518459614 680573724 818505435 327213571 328586256 442844921 625064500 967646549 623154023 179620984 778889198 978801958 778268337 381722996 717620903 753000994 329580203 61809259 149400800 896758916 88106332 361203528 835252505 103286605 898555636 253154844 967276077 143003565 79270358 781338475 551977444 358422180 531951729 327821496 308857990 16478956 472729749 429113838 652415451 888905589 867205826 439042212 370129412 648163846 746587365 967536947 561043645 319475524 637786926 135360506 963275993 739455066 3263169 747127819 221514549 590700553 692664544 381009810 335127507 631290674 234329277 770572842 342361946 71629902 816509740 25411520 654760708 211171450 406211586 475900381 728028618 316439167 259032314 987568491 875969001 989453607 55815085 742350869 545052389 654042894 369112013 814700547 262788393 164492777 215457528 645738832 957752669 610339169 957662327 561261258 770165114 53992674 19292533 571109872 571129485 674758086 737142847 476123067 565950693 697529483 184776766 860719675 71538460 713127538 841853648 146252061 143258173 548914971 146116460 751162093 472979204 988837055 821828752 533196294 386590374 843512121 678440662 365693004 643127467 104917301 82481675 518350474 655949827 438679115 994051637 607397288 240472572 668118939 193719962 816183870 87666412 341454744 494811688 774910125 367743647 66527929 377205890 528282342 322496758 250863772 943531702 746979920 352532066 308972077 436236573 937542521 739251028 631902448 70206687 840854784 828205608 366468423 862681955 777486531 656148624 373130622 969412770 89145933 457129416 349812141 820256670 22928823 477123498 908702272 564045921 960595014 904550871 667079594 690772777 423064796 958374516 29072215 648000831 333755795 419822713 843682630 443199854 470105347 760972621 493205649 229377733 722454583 156423743 727999417 999155825 621183565 572009015 911153670 780137232 830002403 686268585 269272935 446860816 869075265 298067675 893003693 140532118 452175845 55752807 803757392 91135075 461776415 689184676 642814093 739341704 554037425 142926539 767357450 41802064 398180260 545881201 293391159 584708006 298019754 990998643 679605814 736319414 687701184 43914623 233044481 747919764 271497287 68912319 78216050 557535816 927426532 54954070 515759953 460276008 848619330 425531140 143117032 892432780 200089453 852988422 885111199 23518018 589059388 487992710 823041140 374051133 300237852 484879824 218532676 771934866 323686047 126099603 136027230 753105241 761369579 204137611 84015179 706550891 757134404 514208127 96321967 499006818 262832544 984513552 300146940 839267289 801178849 672936645 88745365 2154545 779892183 968436458 682878873 961158742 530150418 8181351 525638156 41612487 678585656 803534101 543667390 693738749 143478277 189886916 390403518 93311559 334142641 885193138 718561810 616919888 238347161 226735295 288616378 106238243 965301400 327684495 379296569 578638542 831702572 730224714 676442618 797066151 13669944 412941476 652869164 723714005 485885170 61120731 529209156 67043165 553091072 745685546 612509538 89909630 159794164 596668576 733122232 331134097 665573260 781326319 70426530 843248280 37366360 251209122 553990988 22954447 685898905 988449418 537705804 982227136 119367574 244982555 655306599 715684372 968861711 497268176 445990566 802996758 280587266 642015209 499729996 799119010 991489934 884338516 315559053 665911317 127260537 998621247 224289520 360918101 515557675 108690842 997987038 820343565 864653993 844331270 433918549 226619704 938726974 226426177 417100001 533417508 987592852 766545156 993707241 298595703 932505238 458131603 954027072 928531017 954849289 70798698 346647225 392019798 166549702 974200295 847362737 554854137 735468777 813599548 118615536 824703662 917069045 10846147 630169011 214242509 675728821 795422435 835241464 888602062 735553578 75243514 31516956 59933844 150942233 894786084 301932818 609346301 280699898 705787505 994651990 522942685 357026057 22166918 986811648 791220914 181767486 798676197 734462822 810605138 101835797 950144955 778949097 106376192 145857822 161006528 410609983 304281025 627710638 343096838 226057658 62518314 674044297 72635469 867978409 851859467 227796072 991158699 73429465 184149576 868495455 729252406 667190206 335770530 341175778 263915004 360192510 146403561 387002593 686725345 446306145 723531841 632882780 964835716 626004462 584896295 466585081 524030544 540306533 335150705 658754939 221327650 998520946 999467195 912732743 794604347 795162538 725822870 372436884 621095202 545393156 498535823 491443169 521193672 889129028 994049001 96211689 291693204 874609124 842911248 285555722 187580200 110635981 769513875 95325921 928316304 848743009 892863182 453249230 194666850 280821756 925341041 266195384 898876157 846625012 955740840 426670241 688380550 152887145 991335571 145001539 774983312 226574834 932664404 175108561 436996770 424091946 290639532 60393733 614150679 416268758 306369278 1018880 51379764 786549665 136456366 776146819 260077364 531876334 680672607 486585258 442229381 266933114 432221364 762213548 89118121 42964118 176982785 391570428 337001818 148323282 40555571 607389094 118041495 794142506 88767840 985079136 656402623 367728587 360241742 278581143 864293047 645743652 299457475 388882415 696455040 475080092 774334905 269383049 966473591 583527326 4065881 236646815 876414281 460663040 93734253 451827325 401841446 639931089 213952103 50748372 453885219 862642934 536339763 693479266 8867956 935496898 173276872 874383293 650487921 358224692 769551657 72924973 461124164 364235203 463663843 887132496 469674817 368735204 356972672 648198306 983438841 920578750 996462735 488239271 986047724 326627512 67921795 331179556 421540956 434231790 306404178 480036743 684223290 406654548 938354610 14200771 802875032 497076074 185865114 728958584 765197002 220374321 602607339 704717999 878271925 405129769 123954164 183197251 196510574 769953862 455996454 136305907 739760706 668977154 70822021 694011157 72535809 510011218 633736651 946342155 397223264 122077446 924101220 584280015 270173513 857509662 469448681 945246441 275819233 32125437 855565041 163904593 69921255 323602929 869519360 509203280 741358223 394772131 297074027 375326267 835231596 417709106 385432279 851400932 227590566 405141599 636730234 771483242 461617729 220005222 843903802 404402682 624211579 229732138 111602992 152805830 738167502 262992223 178608716 266220104 407958684 471154138 321399530 924395291 69946966 152083849 859488607 30070330 225043920 844532819 47897542 596076710 279350766 774631957 461988846 10487210 935142191 997172403 953715855 129412658 689571374 446997441 337769339 590844703 956310797 716319039 469399322 434714422 744277120 743386110 9602037 105570414 999370942 893035584 394009187 570588095 897344239 445579481 74289751 696236863 594000021 798297075 353040413 1396862 498658159 950305447 548724207 27552044 16451104 265430532 926126381 237452896 848710319 17644997 64809060 518367937 389294869 361839718 97357416 609301640 580312692 832352624 587550531 174404827 26560383 57780714 592928427 172911598 280764606 87288539 81158721 584439898 150116322 790122626 951988072 696583335 960809612 551391268 449604225 813448604 545464023 268406353 352050010 484621433 637183962 596327696 437885581 916111950 569330493 994488946 708475205 451917745 368191745 333822222 515628040 958566766 920181760 257023021 138372434 516373420 723377980 728729267 378434280 810420250 225522822 882476298 946685693 291982237 424249032 425077064 454356641 165148152 97557659 39300676 808837964 551309935 979018310 362730538 781433539 914806427 538958719 686675106 339664379 807486012 660409396 811168504 931340050 528460428 537619672 327543571 607585308 691170536 129988036 638339400 617308359 278673162 340045543 970763430 812121907 599769533 528784020 840236981 263637361 893570485 710021796 332911178 143541597 109525187 917334575 228453048 477663496 974059788 661472720 109693908 958667940 455442280 242232020 281257996 396205671 29260843 914547472 623212204 1088147 195233363 293955359 939258158 894914938 361216718 659522400 717879307 101693512 676712201 436355598 21341974 616332963 935127141 856636445 739124613 139157833 538773084 934054736 816424150 192348759 574840742 759391227 105853036 965110867 61235245 874675099 133129194 131648854 434947616 521012917 190832413 625663635 995902053 729744095 672250448 827342109 392482830 89617677 123993087 245232258 368714564 116469817 631018036 839384485 52906911 592033052 954605484 249256601 943999495 605645754 315478394 896900532 846512645 247756752 296686366 421883696 73335562 722084980 265793500 181704972 678143751 76880337 862825137 724397619 804069301 983200322 798318004 821645434 841406244 754197887 778141221 502577328 103076226 78528350 492249478 220159697 152837178 957525287 838505593 328483377 177528201 515371584 619409837 530395842 64926108 588359290 742996724 938649235 987720811 738231851 642069482 450701036 672510771 281201013 526390208 420457 698705069 152928674 946524427 224015506 492821362 362495794 38575239 495508390 585747301 915724156 976521898 725715220 831278830 941274701 894820991 798526930 839306212 749637912 174065900 548331432 65888309 664517771 69362156 432133395 978639097 390355187 768418237 718382000 217814433 9676608 639613684 758931859 14781679 826191758 282124774 371169903 886496308 420166183 603082907 323120789 99481310 787621868 418593758 290133162 927480575 466266012 990357265 761100333 14265008 885411972 945364282 933004720 503984705 686267722 383412423 302535352 412119414 943813215 260954299 378614003 288651353 594372072 595026963 974219138 926627139 877776094 583113176 541700548 385241089 206844502 245316733 566229639 636504322 335951596 680387981 429257401 792449981 64407161 603925099 312512210 835969309 253695772 821169928 9431636 242048041 215131163 933397440 335084173 190328746 312636612 612611371 778194521 943674316 288026335 371842142 149659934 830745195 585182954 634634715 107723351 848031 161913961 867416647 355683071 999517193 942976381 767483006 665945396 586346314 730918335 740792789 352335835 824276741 983885417 641049353 830126169 777463057 882458571 687921350 417375452 340725607 335001903 391691482 172031716 828105054 505577571 972027003 795965015 442902720 241556214 238798748 878935122 422470266 604437127 215061571 140370574 234871459 184464358 181372657 348368766 248615478 707965837 589748424 882547033 63818841 730008679 306584885 630131568 487732579 575848610 19135700 95518457 345802114 563754260 868026661 685012528 904675201 336815475 574570158 1785875 586056760 479378016 201259661 821227817 434109470 929103930 11186356 330000364 98673922 286199532 114204602 538116531 720164255 326455968 940240059 916012019 817441764 35796936 981035473 452588121 184465054 973949841 440074083 115671053 438674336 501336125 448223764 353855792 631182215 731980683 251132756 257811466 565585320 895507947 786002598 953546532 44948040 800587809 93393590 764348392 922473384 581054316 434871739 273769093 32228968 708139782 642611641 144702095 497321899 657148533 981472822 518790597 147580128 925129460 388966035 917549337 852004835 299628219 454474657 104574325 298805280 889303744 831980437 675072459 215234630 17630581 291268762 18470861 273145108 198792869 505799712 397802807 567524692 738427937 322664989 182254866 367111270 811844440 373547771 632472663 87758614 266529107 818237134 591445350 254774522 879785803 156746869 134872189 412294533 691053244 721868287 963714638 886218348 571089912 779544594 510250269 78575139 278816059 541260700 485064065 456314312 703366971 444393164 318888861 44669637 431613728 170577905 668421434 484548600 169677300 783696061 244924737 460945127 720459262 969607710 840320908 119162660 408263557 964117490 282804229 182910636 868299131 22397346 356732547 80501552 102185190 885919973 307208904 552066334 247764804 719957327 131665830 426749689 6717456 923654248 944373369 760730970 102887023 663436351 805386490 996521116 580662140 887202183 122676186 863221933 83651281 859626216 278577322 414261912 60467321 353869213 486944714 145707778 956014653 342588728 584564355 857905801 940730498 446548254 701752466 23126227 164785886 539688731 701413649 895190314 653987740 893241832 481630736 919668808 119599297 866345922 618968532 483210844 762592047 169364501 106208698 837898815 282804395 349279528 692858598 620158402 705509727 556915553 278787344 184717931 618134419 937166098 446081347 439932773 418717370 398396220 643419185 545633136 878672520 825308662 915245855 412850636 826877340 900956581 685242327 810696602 428603228 302391188 837714775 212845399 114983569 578933125 190250151 651940144 309396867 330041956 597531100 64023565 875622889 533751541 571327136 129665646 431107042 233295298 346701928 951456833 195753503 893298017 3226202 647292491 283959996 892839041 437830323 61840237 61700355 126381997 318921127 984005674 193859415 833126285 500332461 874663906 33839610 97754061 302325739 110209532 996557405 359064907 832709337 32702974 702096645 158094929 505902449 176626165 194956189 690932348 268449027 234995622 330246916 4083126 765774691 497720148 450499431 497564428 397468096 313942846 452998648 279445068 539025971 735650883 534039685 587056288 604140041 517569411 424933975 510950905 305652616 446446345 97902724 102122237 518839404 325443716 882813107 565231522 285644868 138552980 385204679 515858390 192683041 79713188 734388237 148102289 262385639 357016040 365440747 491702143 5019916 223923801 435253530 779601505 125762939 933917254 532208164 376768074 15174219 548986863 388124738 345175605 842768419 738530520 800470878 623759382 344613914 386318752 369305961 519276494 125916175 726122519 291145634 107753702 989436931 105791916 395059157 314290023 644531582 807120265 479738602 758227460 495607216 934781764 502444523 781321969 364935493 361771105 623477798 624387493 111653387 158680718 477184578 955170241 778707800 447165271 977888956 663053384 377118891 828003108 59723727 189420322 550122671 842668309 967618336 184819795 395408789 313936304 79936591 780064684 628639694 474582873 371228204 999792062 572753057 81668141 384560182 659198976 157487807 287776036 333182017 782758544 770064123 981637768 523152680 391988375 885212599 295503995 889919640 164675259 462487315 84776245 18907608 312080419 835603716 70108697 543694279 207681076 877207317 454735023 463767922 210203140 234247704 929236663 372809265 294865475 256607378 551608381 465000514 297527157 299112687 18478068 627015872 966689747 125818308 552206989 4701886 395492294 934510803 808194245 328279207 986106307 806642539 562415505 207202772 829141767 65300818 825269263 955487507 196700285 641944324 399496424 488767046 797707187 490976113 545412124 815324376 288152054 574793237 748924778 147961187 388978445 935037638 555094669 394681492 105089703 610846028 817958743 471329921 832708942 706233700 222682633 56640615 591748963 337891762 813886038 863669327 360108555 99635350 594862697 280325310 140345351 832015536 822955949 578045867 206798138 369612598 851582995 432153545 217451071 614722142 35714324 548365439 589572025 856678675 722343714 213426270 475853598 159287111 15276470 663320368 342619377 416966879 87587522 358866441 361222125 640838942 55636284 266564927 639239985 527366098 188222424 578120046 839523200 441753394 875239718 144949203 467812161 540292085 932030144 517931329 424238064 806346639 133962159 622089479 159729876 765740728 734187954 436182047 302108601 121075862 41391200 132821131 529711623 176253396 685394974 903743471 975362927 678790911 424801628 7540004 179817881 303367126 543711551 958747145 606709201 139430935 817202480 955487886 834002573 936754787 764170736 442869757 553934616 440165944 403883612 234030570 863393399 323570205 942612776 172502312 138252188 9382958 448274615 292396602 116605980 795267186 776439973 163119239 253249865 197227834 867416245 470652291 506350714 327323084 205124965 492252374 371500740 729316102 110687451 234407372 482719607 705020354 462808923 421228829 191923435 296403782 661694077 892969451 925441892 247778546 47115926 637106740 892050605 242896508 621105292 16160002 437841163 370262192 517996150 644320272 372454225 269045562 41411983 260255478 193817735 87242514 203548607 229120190 966957928 125268692 841171733 463241108 93588868 515135221 346102718 865732315 880468467 117058159 556075774 396024633 168019606 313359507 729121784 551456863 847247791 298750752 958177153 546252813 196232396 356085691 892747242 958798162 656428237 321691281 531554412 790543795 251202272 177342400 480526022 342858827 694905132 716514010 400060326 531404545 461423843 751565402 187223228 117302374 2385895 911618682 660702333 721839992 157780145 438983893 939125227 729039028 608072311 920515413 951850174 983859254 890835165 901783773 771147185 91751861 60639184 567260996 142865183 617658229 118106230 982306683 470364539 585220488 962115229 311925520 339724817 945315418 841896401 848044169 958372475 133392152 514058853 994699510 467591704 859191782 96816221 848847292 581963710 173875316 456579887 538471114 569314717 176071143 525351574 828772323 189021795 133060516 847479687 839397628 346121163 195526041 87096102 379543628 42093557 473786148 793140420 50751341 775041493 891472104 987252456 148640133 239157923 231106262 525572673 943149585 678981736 83566642 643343211 870196786 189265859 602578590 959985491 809020071 920245691 390354172 915861906 733313245 846714142 106775931 876942762 656094567 487481457 688574786 185732876 692491568 10568322 655756051 271717997 571517122 565394775 959557446 55503405 59980102 16968996 682112549 634552726 154328132 669749937 672458702 159586290 265299435 386636328 485874966 740446064 717860655 815174710 399060678 203244689 722364015 910109977 190220451 651605575 949091067 51233194 914118951 270265365 557709471 968768319 548945263 296714913 810408078 902535951 123277542 733832246 402497843 250463797 760898991 400108942 101938082 257537695 436022909 193292013 378649303 828369184 148976340 503379390 109349401 319764915 558334171 793723501 738804690 932369049 607311983 651617224 959499677 853916391 160287371 624935675 715419912 920546459 445198056 257222460 630651965 736730289 655553684 552186127 634613384 522628530 42744043 780700792 696390402 602342352 452540169 696418625 367095328 817668449 858147119 447845705 681462423 974097138 524373410 739365601 808409125 885042083 396348164 405752528 941389444 155320887 397254 688228071 464866922 221837473 591602729 700269657 883167583 351591277 190005718 26127695 1735426 238608554 115932176 313417149 99704052 956032761 185842239 580524585 126297253 994790157 475949191 239133122 533308944 366270590 699271210 277859582 638125671 350855808 315223425 810268508 690318069 876820630 162736627 770658007 883755533 374415669 921231165 834122115 253708289 71805646 30939228 608944147 450524396 475740445 573854302 657388908 462561327 173260166 260264572 43733418 452116175 358962386 448940884 887102615 340702503 761232956 444682088 506800575 981444025 281733979 435456338 698278979 487376023 589302937 930457459 100803506 915288046 699350511 497165573 567606182 754040361 617903856 967904953 241186478 256924444 211358784 68211620 615544994 252315515 157897566 683692639 80062161 59856392 624455987 124459930 456403284 814590159 774804167 243939778 585019722 584805908 210782604 805348043 654842140 933659494 775767960 347234666 417786396 785866437 515347225 734015453 998961955 226816931 364471022 96362588 880088504 992653227 94961781 305435371 492669014 804822077 61252264 309895142 300611185 890426179 342019028 927364031 601764256 987454066 459107470 595267634 85065774 350150917 54690862 719538987 405953479 978256545 318922794 854809597 459605444 233826910 273991346 318886702 212292971 257637106 552145645 56870460 389716824 113097328 48678207 195920866 730155051 105500619 914650886 467269979 204089908 574759207 804370067 989932806 523643475 949682666 923858864 913138178 219606791 49502608 528574054 855384078 994441314 911354697 678420132 671446847 194737246 343103800 480449665 380409562 921575598 622834066 9018648 586000644 868649743 683576794 701960982 589272411 936443128 296357255 2520643 432582409 700732047 221785960 909391203 502501731 616412534 504751877 116311621 692066168 385904558 788697759 468539935 532216547 922995004 522297894 950808011 270850796 899972060 916442773 430515178 450801653 253223234 432950040 139555553 955015751 454550226 107216401 907346614 658255286 967758242 891992968 850014668 146489340 126593113 706763104 430568970 980446064 547626286 438143511 444204009 727833308 736089248 112767858 608314569 845040306 123378825 366920341 881419397 39151385 521474006 106616553 541986120 258630333 603174983 456455317 385815262 552355920 136405006 457209935 146017892 13675982 712758364 423611321 242730568 368840641 669379403 322188038 132589453 921485935 934621848 194967044 619895817 958500532 943579725 605029043 979715715 266621394 664332864 592038060 518646982 718314805 652656203 307170028 512683182 538803046 630066417 692199399 154056435 217649558 754025111 218315933 540444402 971668769 259445210 265008306 285767662 14670588 536001793 768567179 590840433 922578520 879324051 509240204 12627669 196813708 890359749 37368968 690384462 286672094 188408069 436893892 171632659 384006085 176308069 850457638 824520915 260256701 720563756 20602274 298228717 469796954 641007205 624168766 489085896 13465104 120739281 829087976 711479888 604432181 450881717 561316279 993927209 69794105 939295121 352140710 202413633 130025579 869434395 704900655 452719585 502167488 394270750 932582489 439852183 359747550 217402908 830206702 484408302 605258370 19415882 123296699 47546212 9636021 139641755 301382348 385185276 291544445 677932849 348643569 149607042 533254553 236003250 997738546 537344020 613557561 428789030 637956790 403821226 703952028 291492270 890450824 838998650 950915590 694596599 705048 613961275 379757470 708055565 514293436 549071082 479172441 828133490 936161835 417547798 501336921 44830908 415075201 276933939 518518520 127469980 405919019 292709721 846341528 285907606 579251882 166120367 433573937 519613865 844206777 130959351 540770977 40679035 170494763 224894227 364104560 380943338 653281474 447250391 157756954 17111505 289159574 540107231 318321236 104659833 377461675 737726501 331334641 870582885 476875212 205751143 741733918 259061281 792238536 774127088 429161224 2806536 600310849 868519452 22670935 650694997 859838965 252346634 952510438 325291566 465017564 815122510 79267858 910887975 881516128 920907939 768787774 982718700 987778635 427294250 409307596 758430661 690124194 820790304 850045700 502813289 417662270 547360756 757060865 472447384 56617256 859068231 813197943 486647894 498586083 800737089 154468285 32634024 787195858 316836435 441464539 449272622 922425067 376151094 969691580 55543143 250340885 641611281 189102185 227871993 162837038 970193228 705153477 710119383 865334335 247513092 669572127 428752346 244361858 971908194 930073225 357654031 200541706 866452166 99595028 557269470 324951975 850393819 5278120 431804698 468298340 171427284 821428612 952543901 257573640 512633005 381064491 99004818 539964445 109813805 628042238 271690855 443413731 919016059 108233027 721168070 58023774 283751310 852833953 798544953 458577280 465339256 589862417 930491084 943007487 384693836 456888418 112227852 405497874 79152897 308941024 998518014 847521542 165324506 634554950 2414378 915206492 421038492 277322926 602091207 937526626 870644085 17270363 622312875 921007237 761310857 79956701 999474733 223527610 657373814 739804609 728054019 949191769 20230516 634406356 664246288 768010566 591249216 484257529 937574474 373950576 24175516 587652653 878015520 381557496 582128985 372835380 108296894 966644990 127147847 455688767 518966781 491776891 358810429 316708544 828727276 178753667 348843661 307596371 289777711 57476027 518391677 549026591 80183998 254591393 321725985 710087839 158440606 178777318 765343113 779046472 792813161 448505388 889836437 604367885 733403876 994960661 208951959 366159768 890272152 441633278 623812539 408517957 699004296 324602979 31415491 599408116 272203278 950857751 315955856 439129360 846275556 514810460 324209699 48402574 102007163 572546813 143795724 296652773 17651339 778604251 147571232 339230785 959091671 345270406 740976159 512736253 58899962 753034308 450735120 217228952 57085408 375225803 879463200 640039478 19468352 50710719 666025791 573040544 394344129 203656888 516445948 126200183 145978313 562145835 48433804 615772227 930581447 13445923 346985353 885583403 711861172 789590724 603263550 382453188 796265905 849648449 574704791 682814200 534445002 135770835 64392218 331668944 553185227 738764985 174194428 53457026 252731697 494645916 144857342 908079899 889960566 859179865 155727021 323104545 48432708 696692972 853995729 965937417 684123265 661327489 64952954 661676919 42879805 309988072 15446359 779786529 908760981 59928190 824560960 118098159 161635538 177816551 92786674 560280966 810396921 91110636 714995975 390233466 293364201 125248244 965473353 327825804 813504788 571067396 540979538 441154773 233479391 10027266 260728156 303461732 450177881 595344629 212655440 231289597 572027485 779741714 648930804 381062422 329175048 934194340 835660326 256348471 283889923 830138678 647688122 762336055 939947884 311819526 358247491 517874750 893781841 571002062 127282284 105924073 643020336 742056556 130670175 406603136 535829841 589934989 104543665 629166965 760915539 125692813 182962443 475688327 280798641 650120191 415309991 417469206 968814085 300965001 361542736 775206380 701820360 692464996 108121191 813890997 345190617 561866869 297179998 921001053 577730423 356733172 137209647 776703791 407855322 897264034 903773773 387581141 531779606 506647381 952623537 592436457 478829720 793400841 896161456 379371634 950223177 315339928 13616636 185104709 582996501 602403145 436634053 442193218 178921608 846068914 768276413 233358739 152478760 886322538 1233891 292002350 498506941 669981547 627162389 940285691 337206042 928586319 383553731 283324289 639905090 336961950 495365132 504227899 428290396 761678876 688712799 683772363 919382848 365426597 470799322 184148305 661979954 113871363 385020968 34524983 833670243 108728572 455558750 231090192 692066245 911193203 497168663 453419536 812180042 374264262 267993462 768821564 776599692 529728007 394410212 927044530 7322219 428563377 447909833 287439103 431407262 781729152 141580201 730218601 604266488 876804715 565491268 252690531 885439533 973835777 927480098 638000499 32403842 918815342 172764836 297075374 340811514 733118931 686759928 994846422 247472199 77484147 578670014 965518600 130661764 330642389 226478748 493415062 630891438 181039724 908726754 631338996 215661469 69064753 307465906 364418020 946489569 267954945 822379474 431486650 964755960 287812404 546113492 502102616 215876853 153959130 241600158 847092268 846226723 559705608 46056246 990236340 367274487 191590468 148713701 934091139 153523909 924775475 724165329 16164984 3738029 217503392 410231698 816951676 178037587 845198313 747813034 908355301 639338521 756080904 296234291 407859632 500896961 76053681 158982888 988722597 210181741 242025386 658423490 888699810 873943008 283384561 406406144 576337734 455988723 252742634 244829579 684931311 592219614 200964474 275401656 515152347 244980918 198354342 636312003 925513717 456514762 148453693 899556896 809201831 578318034 836598913 374237314 930718278 789211497 125470875 616638331 177308963 800247842 282019830 815593775 626013675 134129049 466472558 261029054 592519136 176708274 871803520 48921382 900524464 402252746 141450452 475151777 401144739 368175118 335494084 94181866 468436425 944484341 957567816 970765878 367827029 969044989 266003743 372342395 37383761 989252813 539973812 645790503 627765374 932975956 750024266 992489310 275750164 60311863 344373416 670955084 38173568 611700364 877966821 520628381 877565433 472178290 847839007 158771110 432457555 877494244 630105954 797848107 292489814 862041588 966892791 30582695 28471342 875062530 237455533 326409373 427602346 503659479 151391126 752319697 958003263 419278089 838095601 346452559 241543975 43265847 830785643 267181632 283529484 407660136 305053163 736523574 968811657 90196985 556055820 598805182 187510633 884951934 274909688 210608406 736613959 791081250 610105329 955439540 222696765 463431237 554864860 910197561 220287308 653490293 833028095 99449621 200995789 371699496 644666217 450239420 32998133 440669854 839668461 504714082 272460171 988668177 245914742 166362126 777440115 681364318 510907810 860987258 279617113 150191139 681587299 588003442 474084860 569674269 692226589 184038975 586914978 500829725 830104594 245044477 809013536 103241994 205671232 653654756 833662304 384970501 41641958 646180540 769504630 381344303 941522540 817658777 882764849 936918656 366228752 816560696 409280632 619837939 454155684 862148687 622908196 80931000 445874962 473787635 348939374 650344431 589531498 365486607 668919426 347316866 51170712 805565746 646368134 638225077 500661315 838783528 696128702 486696499 637682901 822952115 50638456 298716103 211040634 39414035 816593113 940542128 567776500 552930781 36797012 203952981 724874732 917986783 119305409 51361037 523735262 286910189 722249544 89422620 932094386 254731597 769878269 348359721 984482784 734012361 415993561 859916579 836167838 110715446 20979020 628207165 311967184 983264645 287032371 18857176 340062594 681816536 488089515 700694933 971968151 338243003 599609367 178683523 251678368 77201041 170026449 841572129 106927896 810868482 643428577 772347357 999921181 521010841 951114517 290716100 726054663 303833146 140772416 487256712 650778865 813277753 984094960 606158022 657160745 817159845 320083504 850642157 68815878 108456086 27466861 295777342 485194979 700677459 914658025 700535427 156832026 953633523 770892832 314568931 311889871 67891943 795268637 147722984 489533022 933514638 154939015 235459791 395130605 633255242 680062840 870362834 165311886 700485040 235883785 342282000 524177906 28502083 581768340 514934366 520994614 575573640 970855721 698462323 218235782 678373600 555317349 843004927 894828378 247728221 374925346 102717739 884532391 852393432 428136713 125043038 973207220 247061203 954241058 582852507 788849302 539142466 496438197 704429816 516002300 418466308 655282651 726030456 716809461 977893542 993768256 645435065 607452716 71055844 325924584 896466291 253041229 479157463 232205568 246055773 91179105 744301332 321926199 414619878 744452837 968265737 585025047 149162994 287112551 697311981 221878591 886271273 283281536 433422313 600622697 915546834 328980246 15779520 649240163 89486184 33085479 848508373 269356155 291713441 942717000 35344170 488167908 249786459 363279972 798086191 266629278 112342221 617805999 63914886 154253483 346828151 217790713 643770612 706118130 95670490 619342511 88832047 41790960 464523573 635533228 916271461 789153045 744744383 506502506 928626482 447051761 462630180 265988161 538962173 42213462 687344345 451131650 164814476 277655938 833913830 965301385 400582498 884555051 591930433 524504129 920095316 729592305 646291317 687635625 101385773 407983076 451725942 937975785 473515387 910151516 56330969 416410375 730989535 47389104 990974507 28154816 795244008 506684261 581835690 158211662 40990683 577425064 438336009 111468146 440852664 148622719 851230157 229307971 238478896 206191438 945039471 447722040 245680988 600278 150155458 782681523 499689273 978851444 38155681 287820535 178052490 160477028 97522251 484473056 474412919 716357264 576247720 897308628 648063641 256398286 51441641 545044205 577491018 308728423 466320190 988910050 897037607 704640674 587223475 936557758 142820852 679909288 344752924 863677353 172666348 586081117 72611959 875171165 4468903 114624114 141341661 626987047 179199474 676685996 399420973 59593871 590640567 25673409 947450233 370222681 106010988 531145479 315951172 849623604 673874188 285307027 769081713 648357257 378900038 260315810 466364254 593404490 438500437 628575264 674802097 899524907 296692929 216405979 134986042 755124447 638958661 169860852 179071964 853329916 921034720 543146552 124362460 276722008 439615250 166326096 882199771 431939101 929914890 355038323 61228495 493287739 844537249 568281751 777496069 998948852 985866237 447721491 85697289 649490872 824845885 525138658 975617009 5787549 835734282 461965803 698529919 664814885 158328387 558555571 480877947 192611957 378011937 570064603 683053222 942071929 530081859 925372199 108323235 636872049 402641227 831911054 893715313 460507442 637062570 825651568 518443655 320389728 814881142 448649798 198273038 952841518 768456304 612695563 416896852 834940249 256911550 318476774 51242499 24548840 810233664 253134167 538627925 16115122 6371055 982252555 905000487 703942300 649953971 961318106 93554387 374566790 978088036 239296419 689087428 475292064 8027674 77551894 131990686 644394773 452496560 850167749 745343026 785891805 585896226 587424231 944800043 854799204 993967981 137959853 876396975 658708734 947245893 14795573 554744513 16770213 337942812 963795976 160851956 544907820 82611825 10363328 329223251 160386202 942480185 523060524 344055717 424218091 826525078 111164370 444435228 713232605 24058110 878984725 623204575 744174033 99608971 4625405 820078319 58443257 850233982 57625910 490012924 220385062 144284295 336669809 249059754 677373334 926488506 571657403 597379428 244081439 525441067 604786646 571213795 994077018 638804827 342405160 615756162 886740237 575115753 632748587 584133070 581050450 110681178 996791083 614417715 474536699 191866690 710891604 278471184 464497475 469446148 406653364 451560139 924643611 815489776 720595128 231992387 384563438 967206072 153443290 563103561 88363872 43826284 585056569 289527640 205674402 573189073 21807745 309339940 980703666 948790597 250952254 173871540 674298490 789934907 826723035 393171313 252162032 741696586 885316025 497821028 323780804 865568371 45813245 876134557 271326439 165452698 107567993 859300824 68015230 970556295 320719785 691768501 773449787 837969109 128475107 363164446 609178097 212471503 998720056 816243591 86656137 109589673 708413699 531382547 893599653 616004494 503620716 850965877 173369200 242559406 872968300 611872592 308166027 396089456 350089415 772259747 395104837 637540102 670738687 38926654 182144339 96589627 11646121 755562061 98262009 192552009 421194616 593594017 183026421 573081255 983852538 175998906 854706641 824580742 376988931 778439138 907173696 150341887 151640107 672233153 790248816 572278706 673300023 526769052 408388458 722050629 831338856 142315067 779233168 467401120 767466168 597599641 644052855 288602103 236236434 880771076 911127751 815883100 924659407 141379081 549924826 303106017 68022645 139633685 373785905 523673979 877625758 152560768 442264390 627132363 451797687 289438056 78104260 516316728 74017304 795951981 303566669 843652786 500397542 924534016 191929285 836172155 594133747 492510739 947291136 21100223 791212735 453652925 913780410 890977212 923240454 639147051 339778299 336324943 490393422 96920219 979296864 485685133 90466916 441378269 979665727 498581542 122566856 848810244 705954082 87407174 72620813 975573868 682354686 998433262 663945256 320171452 941605045 916645656 155301494 370287961 50086421 983192746 102335014 37360073 566346752 272620919 567127294 664170787 286175989 290537576 806392341 89375455 29502840 512740271 657757595 968699763 373383371 577416785 782619619 580147189 701377852 734988143 811065294 212562008 287705147 496581028 80518331 959697536 994746269 804818620 448347086 203418022 359402552 526924923 9661758 379033845 542078607 653407498 220542951 76139355 54054490 953839760 872429939 65527323 883481130 827986216 73808724 902180269 726150427 344343874 775494292 193615684 660563017 192220267 784123771 404105318 573073631 808465157 159573133 396678883 911720687 637988124 422753059 432071306 473426643 439457881 688708278 916482649 933491682 911786011 480327848 491315238 374696121 890696809 583338837 438681627 270013672 908858315 408577777 755678098 580039027 883957302 187228589 416195415 555369931 527098834 658943214 334348072 632670719 60479913 256773682 585739236 626510120 904856520 412679331 472128805 665510064 583151682 961795465 709462904 930603274 917542991 149795467 218688572 561045339 31153877 166583363 267044248 457349898 652063451 291939428 71717916 24208146 761880117 931959212 305929722 445353917 396629896 940402018 28060060 347943317 636523814 468343398 208723943 162245086 448765467 839480925 825568319 680531523 873005946 73224413 444054942 756278462 713038828 878387993 35959590 484615595 441297475 802771717 368227201 803751362 127440888 980168110 924069170 805441490 892368483 133112555 893341221 90053746 578931563 16625161 26042097 985565117 47362781 331707298 144190957 463355525 120535616 480619442 135769860 582855172 571960742 260263173 635009199 278157838 90977610 489747955 178580364 800997094 328992508 21692357 114471128 491456651 92944435 713358288 216221941 515917687 475335404 57498983 803027627 807844273 884134905 802174791 248455563 941030331 818878901 744907491 154833300 271491966 327378628 13272027 173026530 266585540 508572422 421729095 392702924 116766563 138428773 474752008 699024568 29712574 7289980 130477783 210959481 831051553 52870604 911351324 70431911 253366217 202520348 859251178 845481458 320414863 423006084 10102561 573460107 703004685 331314996 391338554 489628044 990354012 260122996 840478565 354906052 396152411 106342616 507235308 849396248 580004181 910996832 492786799 66621896 809130636 916695898 132332988 148038283 250527338 645246493 175865777 792966294 457402340 240802384 449944255 242421467 93988483 610396003 191665402 303620019 861312578 671267758 893417550 683469455 592159792 97594825 614482643 342177937 885162161 497284466 958366676 603264988 59595265 922802259 675506938 721758783 247889445 146117881 97136880 28626617 840879001 34779064 113418448 893571534 650490078 45387251 386316758 402084841 109916971 826458088 684205341 385134363 866236776 707430511 253184492 457601237 490831527 87268888 783999757 458703369 292213563 16033970 293855087 773805955 844476081 393594741 297596445 896050085 624191656 979061881 942462736 307818029 344129611 130561021 595456651 987919877 772644115 195331612 192403532 350958908 159332225 905854855 300777060 923066098 14279615 538341299 856210823 617959560 870734337 140726856 333669338 69515260 819817315 97132244 706030910 683271224 468298145 222329110 564860525 771014892 878570818 295447355 636350890 661936318 14561060 133612159 781470328 925447372 526420749 476472363 566993852 130467884 19561806 860372555 156408557 819344860 129176753 214784544 324590826 336050704 153543106 348708525 102006218 669080584 575461592 559358289 182721782 272423746 702227777 617335368 755062541 5684582 264470925 108953594 697703674 212844033 623394685 221101433 161701480 486231361 762826599 914028732 421317574 55461127 372868773 803080304 738028252 594920834 386059560 853741182 669874244 980594676 375787492 250822257 539996378 118584886 635845669 807745384 581147639 411156689 893625301 497445617 135177995 574120540 228207253 936688405 633976181 51757731 968789916 958525652 101971559 965788014 109084889 315890130 744888515 613560421 57243860 71960264 381442259 443258870 331792814 326212516 749453826 285763316 74761445 585238793 905646930 602217198 307443369 914416680 901667776 105940264 410321022 412133899 273747969 908475780 886935495 870273209 817541809 491495666 651961160 974705912 930554195 827387623 338404950 728859843 962460673 729274273 880427697 136296696 823998679 19587009 209519159 215506204 736338571 767836900 696740069 960079743 568403047 225545991 407472729 726389906 303428492 136394634 619995413 848481381 82893216 405017498 19877024 804168030 240838914 526868008 569705298 610141199 179398136 371297583 417763808 685226510 780602430 515162056 308587229 894147731 921957407 634876135 688448485 662666340 628524641 567683533 305542667 490405259 805648206 627424708 203618807 78809709 628494328 809860951 324060067 228521228 479250024 421160835 610843523 50164699 838665724 607736103 341024005 23379623 337534790 574247217 700507234 964859573 118094873 641375482 666581738 421205906 455061223 441441316 390148112 787845778 933900659 585507262 985601218 377256095 469583956 781581737 408333347 278172833 344553196 728633373 900670655 860193562 55168135 727234300 454126807 863145254 962361284 912102889 602810954 279899508 147788096 530319446 710688500 771059938 502777439 78038786 551379793 182653571 661913790 763243605 181068029 282887333 730044426 908575787 459878713 242656249 102380585 15071764 810930595 677902108 767287388 660392548 795480811 826386767 467706165 629122435 897625027 734237659 857399873 450741501 769872150 648005946 642687272 947187893 420836429 714335904 333594903 839776509 824339830 731691567 807011099 920051762 86244768 761504379 32935306 157754089 761026287 586930041 540974572 96133376 908190287 395026057 428476710 533662828 445148713 997329366 869846697 484585128 547640 727392840 255407025 714689713 259659217 562568736 922384681 201597349 820196046 828273245 968241383 682690933 340281205 827504870 157726684 776821283 984027267 545830062 117939834 79732372 769276258 500099874 928331618 382973394 945317363 184265663 56081334 891955249 34538165 980284795 879493927 724186773 646353861 269697279 165276705 31647301 745549267 406091144 21172014 887599531 605866897 169669398 510790305 2017762 823760271 798041780 39497705 292832931 583031702 711929488 318681738 746042318 670289338 720267744 458159111 414109505 389864014 642715699 29025034 129746687 960981425 331551182 452795307 284992520 714553389 479469091 927152361 213707965 446044251 142090393 825563930 449544582 695087473 185974991 413474114 254615584 327884293 604150896 176514301 807373152 25281005 630147915 879172470 875054528 91799748 38970990 816326081 549896874 956051389 700840746 600738138 622449582 734244061 290959130 30332503 225586327 286851602 533615426 283549400 249712049 432453034 116937220 281888837 74267655 751513004 647827198 747707351 60088930 909432045 282948564 164767014 446304551 152675831 24396510 462599793 433661053 497130166 50351325 171347022 637406148 348086440 574519744 96463041 598302464 529757934 866414714 427816744 717700638 923657366 412644788 246372853 355422448 898280263 701059641 916865946 102084746 465949029 380116933 480442167 934641062 95746929 393879471 780528722 125667960 224360842 901761045 125215614 545443542 536139578 250718793 137720265 221915386 550455989 271344205 786764519 827952826 423268569 818788279 823528012 104165892 947644698 106535674 633698014 539965791 797604975 909898477 926577335 19556163 498433307 912558515 373076034 476986787 621496581 953902596 926380110 998834369 952771952 8652588 919393232 512968312 117159106 857978104 384500642 43327651 171281060 863394840 623524515 890291793 248238046 311952206 402966912 258448792 546138273 556372955 173349531 185299951 711854260 278782662 364102862 178149383 838603394 956778856 275720833 421633505 854951965 394781577 367255014 804329706 953422745 458815907 878222456 659014329 551863031 820929933 254525141 919993999 90905184 391374581 940214181 140365818 681742618 909725671 790531050 22830492 232175665 760692961 871609876 275273352 869841011 268913012 636115023 499856311 122585596 552627023 282657182 858344262 432495271 437123955 543778217 29543159 69697212 326182993 20381328 500696749 286982997 885310173 577413089 272982637 335984891 17636131 492571810 291844100 158046868 180370331 309612636 15479001 819834383 156224790 966975676 949572781 607971728 515275298 576491225 80272550 653538817 602114309 939546257 999448344 513267246 892788164 678557459 778159376 963152331 126029647 176461944 927091067 244496600 744024822 994575520 763423109 300730972 183830424 693077302 776661986 806651165 580116039 328811815 411623275 289630505 430428197 230375294 551303797 571227869 454025440 684383220 472854654 304812703 612360618 124909810 925439238 192968151 768159937 519227998 786334866 792672675 14397103 702262001 480539426 148311615 999381731 331940210 754954534 510151388 870643155 512263862 830345552 274561046 358075982 759796324 830242994 794555228 492317145 330544990 252699169 334292976 591977799 582711965 738048190 590953784 534807167 416572547 48009943 498170473 118949027 883912526 112269947 187220053 686179588 13906850 338637368 935513851 649758050 700847771 676051388 282831784 693353637 52032864 669116170 728754008 886689886 350590454 49633763 927943465 592724079 42899693 9014145 245860079 843197174 355448008 150861220 706021095 13075165 284350851 800951931 662255927 875136881 236557579 191999648 481254196 882526245 760819870 745438593 987082028 645488483 218200620 429365649 87458157 875722476 194398926 282534152 633032387 594549439 553213345 224414223 880069831 641685471 329689086 914380126 204198767 915382985 945983649 942358309 766949167 658373889 288046199 890284493 274829116 819814811 288210688 34301080 63171131 425435269 727271886 246379277 427292803 149663332 730527012 203051034 247677458 992385344 450643361 160143487 843745720 417181171 141338111 956885607 389325041 961708216 525862572 950281386 942208309 25118767 119780462 683032687 204999247 325413155 998966787 31429582 742315525 97604848 968560738 239724062 278739028 254247198 275820824 200010221 165283658 723925785 847648626 447757325 413845616 683113400 323759132 186679248 106278189 274206844 903144564 703411767 505807256 60528994 408197307 717171093 7128027 900198126 244589088 374014951 403829961 781705955 927802996 604593917 765920750 841545413 294254926 967343794 386105 204012329 887249821 624884678 455082057 728125102 43746584 435109155 170889934 774289009 400909624 793255919 634613413 835354719 685729479 867124375 686482457 770600874 107852736 639335678 100114743 915631132 39439003 207297715 87731446 682673898 364045345 676647103 602849041 225931173 341788174 752916169 471825239 594672371 833314599 275293684 233486525 270832389 287598580 147700310 293528329 390004566 627155805 862111418 845585542 453403269 574315699 235236391 159597481 738974426 853102147 158302879 5996779 866887276 147564195 131998323 309215185 108841748 498276055 964109852 119714692 571499020 527175496 839243641 542358727 31554978 73032891 312869290 396010844 839174850 766634170 802813236 49505984 973657078 457316475 42214735 19811813 823461517 111419466 381692507 626807033 774490738 519078440 346112318 625541388 401176827 626885085 326980691 216646764 253355533 906111391 430593247 514174523 69515612 668097482 86067504 973021446 351382367 16583737 211572026 355319438 563397104 834022299 949016364 945220078 488961135 950867245 939166410 84279421 142862442 52422550 55987202 68609947 47865187 351515865 970509220 299080430 541581900 270789863 401677710 75528379 841699857 894789679 469556279 145246117 685988534 851121024 735784396 324400717 270206099 994618099 915818308 110389309 846328653 249958654 46916827 532991854 963063684 422757239 278757248 370063243 932670546 121364341 485550904 723102050 254828253 280048580 943085563 736102459 560891502 470697147 404383839 320257509 113806980 975334037 282876221 803968134 972758278 201051188 217578027 417823438 991400489 106997622 881082306 431109107 653834479 232921222 521827108 146177129 951530036 214258395 726683943 288257543 665829749 95906126 228637825 169697353 624273165 952311286 164806765 47350568 364122797 886464710 887730752 83616321 527303124 288226461 880198073 219974140 295627751 572106694 196527553 664386422 437108330 14639185 754744045 675071837 75552131 864697186 648043273 539446286 877992806 258452448 25653634 761074732 937162269 102198829 647484794 605428334 688468719 128411216 244705392 101596939 685301031 460680827 10837917 11956565 752557632 515355509 187279092 836837145 342024852 937946384 728060107 461748321 369601756 968427573 902314726 68252008 91008460 349624599 395445522 141713168 482271143 88844859 544646924 885658536 550036333 759107088 426778076 389528665 795006530 170746841 425937691 868887911 951648066 457480969 377640636 576683030 39739798 215848573 244438769 259036303 86935469 855821374 244644687 105070982 28556791 741717891 13061284 516296438 815624961 790052766 653132364 58167716 526672926 408445881 758671772 957976471 690556864 721895019 338157633 399917209 363977737 48437167 834798909 973137543 243862389 586254279 323848893 233750926 515820658 735286233 766192915 145743561 86346910 111356007 768999138 103219346 840933207 271296080 979919488 810846206 527318417 118258953 865018327 340973240 189175077 287176466 368442597 923362232 473013746 699721666 430395088 166527516 696732129 466351012 829971520 506901295 772973411 559271460 314674415 301705768 881324793 524044881 485685396 701437790 254913162 539613564 562947651 440462531 840898308 166519004 472783956 820302650 245648443 190778284 863570859 594042952 225383755 39572582 291472685 860426941 678077366 513427807 572337308 507499523 493551754 361412766 815551625 19114689 108930708 974082395 462292759 440208739 877305069 427170646 455378708 961966085 359502900 314065967 357681392 96185711 580336023 475984383 280754880 243037118 498836078 803103115 158883127 542834209 847673192 342977686 253017311 270712658 892457149 561391431 946365541 858212509 742059083 543478251 751591490 211173581 400779651 364981099 134996166 638929175 504212178 955263203 619084495 870953604 947793804 499115008 350690406 820496348 796849675 227703439 739635226 600430366 816030824 725470335 399143503 71011726 639198700 403813461 254943932 560956984 88844055 961936275 125641923 988213254 763244559 499167182 141518956 293510089 992988881 601114360 672414890 335447911 684659606 384470003 363555140 705075288 818971310 210262902 904320568 765896733 198340933 375390586 880804370 685347727 851604020 955561651 296456710 200717925 903836927 380857529 518971165 498067417 517008629 743575818 620478707 104850089 265120132 864132119 585107151 820321760 829539792 357171881 27287049 553576437 237513339 591610413 952203068 719397364 619064282 399133741 734229438 539830097 776813385 143079424 664962427 440776005 809890334 86260512 259059121 631734054 559618790 889221239 735895238 415074319 346858664 321889284 318301732 427906378 364436530 429772354 338425381 693735902 615145062 329281275 893200876 624477185 247977402 759446582 289135670 725060590 552740858 36610928 554503808 640761101 93293415 164456882 622175732 165246089 100854432 336269164 337344947 542508979 996620187 131566196 203731894 317146564 561950970 151938241 165630162 522720320 559420354 437326624 677728957 174427534 854344909 560544704 939411652 128769966 484582494 652918343 625594959 793554039 310955200 627862311 656497311 179588142 847901391 456597976 151997162 97654448 714696115 800961227 474164447 691323766 169260136 720113847 392375467 984247408 202798182 472181242 242474729 751058491 690653684 365930309 549338118 709082443 230186897 457339489 712943876 896125276 652716007 190442287 736462965 498834684 495845812 664168997 244909133 517255767 377517372 914870711 585846016 247989486 884049516 459198992 606262892 968415271 807899543 628074696 194648639 584901945 423748757 937588542 827056337 385430146 241246049 227848299 930169689 877349874 79123969 470889328 503812883 803446330 106386501 756928775 905620027 444380014 554535009 153640 726336932 293020644 931719629 721505308 124514887 950478941 756571512 104749707 275293465 473044462 671607673 290944800 364786400 71052456 275480476 699531826 480594552 578461261 934733009 221624405 245402027 505918460 108870422 83589621 597604096 258605818 236353781 841118916 795256672 94094180 874527166 37670285 652607101 48980380 412854014 173162564 463019955 345661708 648832560 758846415 999960565 490913435 792036726 668189157 763299237 784987292 156456836 821765726 755171252 78279363 946766066 38688680 570355772 200426710 821767280 159827218 134479766 521903569 775196234 235187271 572927769 453233887 56155908 845800944 832365287 50057357 646099829 638788728 813967117 945237797 917384666 869540169 592082265 393247633 699471564 960872422 148272804 475401211 14687743 920734101 809367424 710495151 925033911 809425960 922827920 9470759 528059241 682164969 763068141 657539210 10688522 8424586 180214985 961010146 319207894 853603087 768141081 948766297 83971063 967722041 343142891 389072035 559764823 638787584 779542655 589981080 55880517 564209993 340339401 379119161 366994112 497936438 439356786 598517473 714737910 546572108 832012751 383910220 605126431 631702669 227795305 303298979 324826504 578320561 838488259 891676595 872930405 116442004 617287309 114426606 662902892 712936942 570716390 716238573 951228074 462207404 470581900 963587969 433998638 293134567 761529271 228090984 628821038 959737415 753921956 200612898 653227194 578337670 620420702 41048251 595848649 784821568 810318222 11924179 316521140 860689858 455867818 212312692 512432392 973202550 809247797 118016932 504264458 740378508 560145001 402440301 269788599 573975774 210529001 152090596 415446500 626550157 799252846 999458944 943238867 496816053 113976821 948833539 462033206 963411956 976705327 732851510 585648358 897816307 950219204 397114818 505550639 574164720 122866398 671391902 779836111 299876445 652297803 30188895 423991717 478199436 375714270 11140360 771108663 897159193 869645774 537713192 822215011 131516450 919970870 792499692 887360120 355437112 680040248 958447984 333005910 288985173 138623243 63805368 857571612 552569881 193864478 694207858 768114526 679357408 445877336 986119310 237133458 267739482 404131624 956255121 124469780 941827599 248878809 598120530 637792901 530780192 863205543 3383866 500789037 500629075 61236702 921663990 643125409 907201444 929911569 933332531 195086641 612807534 616351263 802700827 947847066 36027553 42478098 665642410 526052091 928488744 508449429 806354047 658271386 184134988 855910957 88563535 469025420 14890376 126015847 886739279 110319237 798840707 136403605 551288798 461723249 262557477 117863346 985335632 794497145 580961307 570199393 80099761 997969340 57587535 458610731 626379136 555883618 164247401 223662702 520040728 428428620 432486040 827829263 288280975 634304935 888393447 963426472 589904316 284743308 90630243 603019064 825170593 615146898 872005856 320321631 455711148 40308573 720072633 212174977 239494653 994376495 617942798 957628814 461581608 823019301 783433281 858347795 527589807 20372842 197775700 716206227 476740815 729394699 670394439 300070454 655695539 899297833 272054023 607263637 53164944 982215995 528614745 423988042 170580795 472469119 71487256 909365911 907175054 590730952 729063745 542924535 550448886 245862943 186716744 635556646 90381805 128340513 901324790 605376335 39488393 716526581 890799073 895001285 458282940 629903738 646274973 73646772 836398472 553639290 17555460 71077253 235506897 78757355 557089419 672810385 132086189 335998322 732780033 79416720 709095049 843638609 184397234 287877624 423576968 175397029 806556556 138396936 277598219 374251281 858478337 278684563 761632469 694425949 126660185 58708471 816243485 894945611 372258107 193667666 577530452 330754782 743597501 474077389 960360077 969697146 389149056 809366439 291751592 93091181 394025171 548060680 23735598 129392466 711971053 221736032 595133472 806364539 403053518 255068459 160159257 589211658 357124754 438149713 196345088 705791716 189658288 824572902 76051045 952310874 947106174 540290312 752358866 39014481 537735727 565375282 973019503 996250823 176949785 849699170 344773554 854669829 637696891 282162701 922503486 39830187 738378191 939098263 862794149 871616817 151859039 53057507 375796553 817894783 822860276 444803484 739841256 479925538 209920149 880972533 243164095 654233198 469519918 682520000 662039167 973513859 241110482 186392439 45377120 321991931 830479096 764661934 548185568 285847917 505278847 983661080 915963879 755534319 486941287 502009663 578918699 652646475 738173837 927151985 511702549 117004221 987041403 502473832 526569945 76003971 671405645 864451101 285382123 233605358 535266015 570283235 533873084 358322914 581929208 941713700 70124767 290770554 900758646 992572875 683194354 785508437 823969099 725376991 111584689 454893343 379146114 513787758 60574344 675590501 320707660 210973599 914374358 944099160 816099191 474909867 564510737 976771231 364199251 380087745 481314597 775239071 186525644 527049385 345853214 665816766 404610253 562908366 883083342 64524863 635446370 126567281 607783909 314035455 162823722 414980727 624992143 775064524 761420664 170741990 793622578 981164108 800060080 600636106 794686996 132803128 382097499 279890668 626961818 742928537 594956595 152426701 302905686 101954116 115632791 787583226 715642691 770902554 456940564 10298269 802498302 42756805 442025248 920689131 988680620 464483154 235945717 370715285 489279789 111140670 424722103 844544736 699846809 926077779 777248769 685240304 362023412 83490908 870363779 174503479 606446092 912679135 264677868 217552959 858660173 790724367 447896130 323011589 89597927 383745964 796794272 110249587 117151911 626942070 694395885 171414108 186806059 158003554 94090752 655949702 809310522 234050082 32331178 277860280 579781839 288884619 716751159 135017895 907579000 807857618 702060592 888609118 460488492 194372444 435686044 160193346 296239718 230221622 762744089 774788709 419832484 182777876 677834277 716672593 600814118 54528226 237272232 608593102 945108993 260010113 829252687 844928045 568781326 953905896 16126339 25736247 671548895 735691787 20632242 420223628 697858681 866976610 668347815 542603683 307230957 97220904 652501333 805995540 395481720 882720165 911389406 588660720 125685923 90554273 271754922 780663827 706643529 139641764 950292061 506548768 258758747 215881971 479233237 845447717 132293830 99367696 854192106 89542631 719247572 70932699 465495892 936480415 47587789 187371992 461945267 220169452 385087086 615467050 712064906 354125249 376017914 567151913 603126652 580583696 769853213 491911561 826137909 999878231 325325964 331595024 548724286 731203373 473385018 627510792 286244141 428239211 567544558 37717690 291719539 215992686 968366089 915476211 614556618 550063942 526791541 183971452 136253839 698095060 684960800 37169273 728940955 461046535 534136239 920704237 101158843 619409784 498167407 42270847 353510573 163779822 801548054 283532306 344506507 842288343 678743322 752768194 312419378 88298436 744541715 199726530 649885402 555578150 410101728 237951549 478360758 963054770 327541303 946101747 139889302 373506055 849363560 516783893 784679191 540632337 305036110 617559973 173240299 407036675 675408628 750357100 168512169 524760316 183893858 338682641 383344807 173076152 83535075 268064800 764720533 7456644 409937361 357551000 122444644 226825403 720113516 457063442 98603723 813640604 615906404 287654239 388117469 836493472 175137971 692350271 345655929 606096718 127513863 84686986 643204222 443458437 851513474 501112220 314698090 671339814 101356125 800871451 588314894 783162845 282486600 773669124 304568370 336130799 779048651 35863624 172882548 814926048 466665811 687154954 961719323 131478615 634959895 135486242 556042443 389865805 932261758 194431651 453450065 966047862 450606390 583445257 822718256 354576738 211288485 868791700 623204975 410187059 365804666 959850593 685819513 191188014 369631675 371210598 585825291 461379053 322031681 727648099 718960205 850410903 132470315 210849991 328067478 906369978 256705458 508434552 376739422 189255063 624981641 666854122 313903304 322228697 177816749 217746901 299620882 218916675 839600645 574814886 980589694 36665390 465281119 638379576 194622464 828520151 34177851 752413719 653054195 354864661 308668311 274745069 791611045 378952721 773038162 227469535 188734764 809864145 884449057 851015260 101144005 248470850 307791072 968197619 377536285 367301718 555178976 15233367 854240716 885380222 535568435 176345022 285182809 605875297 95630082 13811593 196450240 534213367 263287982 833149591 116677383 383998912 11525135 403092999 776372792 538917359 624152883 64549596 479506343 52741687 387657936 782962997 180017989 348103355 669510102 442804732 152222215 993470368 237465013 689943082 608941235 977663593 508859443 719196711 468605535 897327239 496121682 987035720 162524566 347104795 887085320 629246979 376733048 640826342 837107938 559415419 164877035 691744388 890968044 133188214 7589935 218738930 966051654 306929159 655209046 235685058 166762741 20536514 890868008 270586947 437891344 787053992 407146400 975676274 846520431 528362214 569016301 54530536 163114642 514650908 829528814 883861769 710879139 901293320 299546271 759091129 100704940 466734855 525686354 793355263 450677141 98393851 901149404 525806771 456133248 490514750 366071096 671346586 590467685 674257016 977429835 7040133 728730082 568322463 890669691 641989162 800099599 129282528 39884184 733738145 413016384 348403316 137051919 382568029 571967359 112353453 359609710 954005608 852086691 307812606 734037166 372773892 654026743 78235082 831833564 857017387 259632003 436957357 536156261 616253096 37377580 254478666 730823279 754452845 280141031 29862506 843553208 524120764 531065195 274031196 277579586 549776066 227358321 553439562 732457084 333840422 290869975 229786431 169102773 933696438 930356149 15981979 637511402 685516532 403719150 139007055 109055612 70634945 312291405 328188319 657794738 487102773 744015517 136190421 895595941 407525207 476830162 906620113 787557269 855838001 877597972 578257034 770544725 801082716 700242119 894613282 22387937 923286442 652304315 33153071 625379318 200271236 465763445 437260900 641219628 974471766 484428534 315306902 535292399 408507186 948180055 271966504 336714762 938501076 563892142 362692980 476687286 231204605 193530891 328106905 961577696 600227374 718746950 230533727 282765893 111271846 650387886 456144977 751812757 101982209 922689094 287413752 418034243 152388401 496359422 261132228 819533195 794655186 568519617 726102109 892108840 733003768 484709223 519980565 899385637 701443983 530559900 792239916 191239023 974506339 41763840 853495471 691847069 395916739 976087529 762915918 75743489 141219257 896568822 322940972 951431601 189061877 256029889 715583792 45176710 766851037 468454203 339954610 516982454 844935567 631654263 349865588 447600539 519365164 365074098 390631292 312955653 357047378 462125327 270827134 781618383 381834716 778548471 336419569 680303981 721520277 113815266 670298371 130753069 86221551 397059703 95844644 626332280 917840630 896083524 557207890 918676772 373008306 731403214 715266659 670265305 603988540 781469703 233211548 218258526 623868297 38329921 717233704 80905250 468968284 431646220 984273660 104488619 61413843 986699406 816481563 633532988 811967010 215408704 264095743 776900577 848778433 729134225 684650598 399404917 469668677 595777731 257271373 946846153 379150734 49367999 142227760 237040528 941582406 438126138 541482552 511077251 111659179 853032394 966148320 618679015 886408796 231863441 91787671 887064036 666836839 168254112 33532644 794838506 200666994 4306353 726280912 613464460 745721878 560695470 839028137 686945083 9734846 67549177 315106467 275526310 29606550 651606859 349463967 116957420 720411889 185307398 277489886 165489558 226703890 995744474 404057944 95879261 281113976 842075106 241957860 557830710 212503231 245132662 343111356 338158429 823607855 957613143 428718598 661800031 926775390 12217830 886693118 524558336 857440063 12624335 320404873 980609096 987813497 647550637 717482554 42766794 675892586 253355628 355507297 420185150 869662540 724793181 343035359 249350680 282020251 721634722 515241275 291708600 108805709 471030132 989563509 347494071 349795042 675745908 328366845 372458623 144383461 94834760 675884572 584894035 263676928 291603998 2281234 386078296 72882498 30749463 59345899 163779688 132583841 12470482 163368460 900627641 694236129 327436564 982881210 108004849 343562225 269128470 779751435 141368581 384496199 454449477 684489351 756826615 308601577 264222854 572081969 635197857 81250291 205177161 891239812 603569271 585894352 263079670 143344155 516560062 994075032 59657637 948658305 4947905 880536188 722636036 894128082 668879879 925656355 494780664 80993947 730472457 960710993 496809297 736504467 521949634 502259217 236866539 196355220 694728906 966983049 30298176 426557406 499864252 578197892 378748235 235810233 330337070 327396253 520702825 617332646 971582794 952961401 930463485 997367880 149471298 139415679 938745948 244103644 12765836 673835426 415086833 182881819 697302645 509036688 439117181 91455716 777748604 571163134 854703841 13770952 308891133 254913155 60143801 29333157 32564513 297752777 221246255 607228028 307105314 214039035 330900792 623575165 748361185 418809952 326653959 245012568 820628616 742440131 531760473 622872886 915706331 120936983 901244092 328821203 335611714 777318770 547983615 124617899 802459328 713253512 148179663 325096602 540530660 987517770 682707033 425537639 525910626 809919296 422169627 410903072 686980779 412493698 626460944 506923698 462882243 128541318 854114390 31156567 413271783 765625594 158147251 585640576 323487591 370617184 700611847 494959382 15874894 618508800 557851419 294866934 48595007 981523123 959905308 712119542 208577854 120664259 456034301 479014897 164965226 28505138 604681670 351301178 193792401 327924445 722835331 606261593 579044554 847110555 401258843 964992603 596662118 379034026 318751967 106193959 499273446 628328704 519827894 805512674 691037717 50120839 597336048 563813229 544442719 954546118 885556612 483280254 195848805 645951768 237215308 284194440 419667150 513770277 178098063 62498436 572838927 475937452 611152726 520166398 712259729 872928856 717009576 604675704 787574216 428837632 34960756 432420484 516117995 445748541 149855711 769555134 368979516 459377386 733703965 856767680 58309160 772584819 982180828 274708386 518616579 76697692 930247041 225107100 430861711 514076826 979678980 627366461 591028866 844502354 921764527 182017381 764080800 967370227 462798510 189683698 841714585 684943851 765413615 370509914 844209755 336187815 512584312 555675875 892095524 302719117 723045668 672093616 296707432 196699344 236624863 533358211 389197097 687361173 485367726 475981659 282192932 572345969 346898621 364462469 464303666 870364082 124765318 132252489 582072685 704854972 922737820 424720515 718508028 209257219 385143043 569437621 499421960 731367853 214171647 319812520 137030970 17418039 403416388 587435146 843619137 845754614 486749292 365693401 118378888 431144490 206464993 227500315 769714063 391727065 435791638 811672724 793665650 419864927 821962081 573690214 951929575 691681475 46170607 451662189 496998272 740766216 496162609 143454489 184129160 998370736 194121664 198099682 325481865 961131739 63663646 508432558 661291650 481979421 804264402 12158890 965014582 179134574 104548714 484934708 214112717 385239818 500018173 434008388 194992418 185180653 212124917 58473873 912769859 596120668 133178738 365942028 661333902 597433526 61232889 994259855 651251545 313328519 705492962 468925939 755868846 898634765 482145229 10168685 281000423 657026028 360503214 360907431 575948859 52355816 869020884 305336222 704143330 714719097 863415201 940152579 21953086 709053926 910099936 459048016 123814618 710204309 11641050 449360733 240194813 283773929 351450894 157297262 212934396 565591401 850185035 808321612 406647319 889261876 850757755 991986371 989598514 249433802 206397616 354128857 198531797 81244498 448660910 190154801 807363022 406166361 512508622 536279123 178980585 650425392 397014192 426764619 956063602 521158367 595541688 784866112 258089973 28956532 696482183 762277785 930493885 576402287 344209829 623267929 601940892 34539659 338435325 806151891 959456566 759159770 392306 609685996 873657627 268478453 465648298 836580414 665624342 216857787 186607435 931134458 817658200 994453235 400771918 329114621 460965751 325834218 263636399 921078442 131348754 743968874 495421213 562441260 560019231 245187923 262640662 268956822 470931731 397566563 414324654 62456331 469795268 355721073 10542826 165899934 617795616 770930262 551516794 95921215 307077200 966942831 14171856 186471137 626387618 147413861 368218020 934751913 402318825 103106794 613437175 477780970 750262907 649931073 535004699 507575318 918971523 279486232 20775878 733768400 368658382 506762659 153456037 750006144 49145068 250696917 691804713 38464219 894994000 899023800 389020593 395234863 418563040 773021742 191370176 938218377 749839430 44964072 243108914 426909995 531986981 576251651 994226066 294232866 772702448 262602135 895141933 939402163 440550234 741216358 733554682 736288808 582486268 349567300 26477016 871326562 435018358 136032562 277401082 177974618 391559944 915612484 942223810 14334561 972565271 420457918 658593684 785814070 609952053 940035417 446717611 923654432 172456769 828304432 848651138 392928047 674535596 289510714 412984521 757333599 609986393 613175141 368946055 263424152 184273892 805393552 975768279 265020923 987150808 218345979 113751390 109837848 936556327 441208386 855816934 725871991 581903682 289793414 985987879 619451439 207930527 997386083 114770395 819801411 741085020 601601152 784547677 104884237 152066401 489444286 412223889 824968606 354891850 981536838 284699241 593217495 855346550 150089917 208346681 667912579 94772147 581675017 781322048 880016380 442790312 649419881 216458793 737944167 441391203 484585670 945294776 737780174 32791220 330604339 704718714 52552440 319916653 142132113 709155012 787974795 576964288 530474641 67683052 271400478 255283723 993079860 504326578 682784920 367716855 873117182 528081694 511680130 263488584 685418229 671500496 954009642 139717566 367060775 390871968 836160906 823253420 850422689 482572418 92696494 55249129 682674480 748288987 950064752 271899133 28144591 122478068 608021989 547393824 975972104 226439231 197182505 467654856 478510410 816011487 34286179 161790215 773878970 442524231 928707427 157282676 282398700 91077473 513907625 65320629 65872620 385790834 775947766 428833563 742968971 511699633 907669217 34712854 328463834 684225252 72342491 770771757 895383798 17138649 64536339 87314538 562775902 749302055 903960703 252836511 416958437 397559500 409727579 850695639 491666018 126670833 361666548 482474579 31636501 635647456 939561330 312816708 187720516 492287100 784556318 923096401 306949354 424362984 366100290 237616676 645588876 579747979 723685622 83191827 395375534 303688558 475694744 967587938 700536064 760313288 8620017 96983087 735102888 571018879 572180400 448243412 423076013 575177116 838865811 828212116 870357595 728682627 828937247 192957410 838106832 143489363 40399175 396706008 135530822 48769100 814597794 99457299 933679710 167395634 354293207 186096011 331910536 251650246 850829192 595758209 872158408 109187019 949702055 932707210 119249707 389422992 454608111 521770759 9874760 76917610 207811353 450200194 151250149 914096765 996811283 943088046 194404524 114019038 779808048 497657692 602490139 408708506 942942257 445503582 851406481 524956687 869458096 410655923 737089472 209028873 9289911 517417093 162807547 796107723 882372619 816977741 526691701 367368731 302282669 631782120 121045848 173753455 916504445 890130322 340978169 658077561 291561233 313212058 424851064 912376291 794202507 112900252 570451142 267585554 197107744 106485175 80017783 19905519 800529388 163226744 750010668 579133167 973598503 150299066 166391391 386606187 924880828 479010399 977611804 525741188 674462324 302762122 226262585 844919024 920918724 94613897 462438931 192482959 541558750 207311306 761690375 818126510 614902044 514230352 733182902 162125915 84125096 768315084 969448670 489958458 270228825 203753700 698661031 14102911 82402766 72726957 166571845 182941287 780719923 732033839 320094633 676566413 744503967 948462866 80611309 646532557 300969439 864454278 326320283 118418841 752963964 896790395 132527297 260226662 618300316 941462461 579325310 804938380 821357189 880777648 842928927 633617138 360472584 593626747 238718975 847666702 207841036 831435811 892857071 10223207 711969221 194926800 772389695 596402575 338660687 267687867 492283274 471557849 464497643 523385866 85619379 592543573 676013229 470705265 505443918 952188046 215123510 697787527 188468763 118730032 902298997 868618892 625970227 810156331 65814546 722769193 590256111 173639949 272323218 963734686 851058110 540254041 65357093 561653702 140164513 629049116 411390022 536241811 740371714 468965893 510293451 499970293 756060346 549968403 624347693 374772495 392044424 884840097 645966976 744688358 577111407 565875698 726471117 767643828 23222814 318183830 400796110 122880398 248135041 2014849 514909035 904683216 925218837 573991315 475759763 188519692 180470686 957156463 455733382 201550299 245616056 423922898 542021063 695166145 956597622 850873386 228907503 628940956 476160709 723987257 148126383 169714172 248020147 739230033 793800876 706277324 686971420 430800535 568276558 207499702 899991077 17342539 231815139 829968556 928586189 415538686 855941966 144949902 689212127 483224889 228688338 135242125 740694207 849605095 960592711 69006060 394037081 526531833 915555598 365775932 474601477 301065786 546039608 69483223 6687396 316917367 526152124 678398429 868518856 161604831 869114518 287914781 995491014 956436346 490147429 125249357 486440996 303872778 538361990 546932075 56665394 940032323 91834510 634039863 473801184 761689511 783123765 330539647 550590558 433913402 372142614 445915989 218384990 538869413 156455484 124726264 462137172 179021834 869473427 784274059 579285849 34552145 586109449 622853105 396267715 147341108 363216199 651356151 353338575 985476808 558710590 179440316 457149622 970931594 468438033 263497985 944020627 544446749 920920606 38338958 360412033 857974788 735292537 264334156 559083058 900357005 775361654 353645699 446613228 433671651 105133775 146710151 319404838 389821070 27750089 560174558 396388546 464298626 990951235 730651586 240668785 906683758 736358872 845014251 244384345 994313162 79547713 250128163 144319783 532819353 437689128 847374089 794535078 961371174 928392656 417068018 924127285 375935371 842517261 39251591 583701575 84760800 72143572 281022594 560379864 277399686 825305110 714933892 353683303 141569035 581790172 670357324 875424772 438834167 925097833 471985612 612142719 894854859 635858242 678516799 539690877 768479297 153956361 918693827 242014857 67969807 265250735 552290354 931878771 935184301 964344663 818510440 851288891 793622220 346530269 776357483 870529482 194027752 769309179 880759964 144387614 696379576 374523246 238233383 380378976 557125108 662979430 483729575 347033279 976966325 220524871 623952169 565878060 34450967 61872043 879295298 82562041 840980676 770139831 778818907 565482176 325214069 208517496 377932459 510608444 780010041 848293214 811425107 866759170 315741714 716815988 13216130 995365857 725839141 145460376 255295936 213092352 972110174 712554768 283187905 96533022 753534912 674500254 593340295 365523781 471189252 880503472 381702377 61654418 17728927 451030363 452375669 227045060 888345620 113966997 43859749 166287375 191763838 974516519 811338839 384266434 669363765 133509417 796261044 277142097 408256100 474910986 762230409 910738756 786184576 284596770 942659915 748180016 433531545 270102567 89145625 625963305 940281278 959040829 806218019 414755574 551852337 666945016 364234378 930482499 988076271 230331220 713268462 664892424 305998498 759997054 516820368 946938956 960688608 347104191 809737794 222498562 767689820 392000137 3748748 975274100 893467247 185599362 967652550 198581456 731181155 384243252 699931982 618275155 341925933 299892790 26559295 532151675 186758992 235207237 566496952 118324051 554761745 594174002 236053060 585091245 279535487 533330283 557003328 444138579 596945911 996914993 307565062 712038370 804787293 547833469 394472546 981988202 483674170 725808066 333180305 82885560 887222687 891731277 464874979 811193862 193736719 937731655 392064123 578460016 607530661 784748929 43813675 974689432 443017780 517543067 506543435 490163020 353199720 669793344 104271387 516820490 474157080 718433330 435658443 221691937 916129965 385374370 141984091 606431428 247656089 566153987 959226357 679659050 572354171 368515060 565580462 119117222 871442165 103328170 80484553 116310849 143902334 606818358 244141211 70520482 763757976 627035212 8833421 815704247 444912971 132355383 70989294 614619011 334744664 65704542 547725739 283783852 876509408 740265138 798425045 733578421 705559941 665039226 849544899 211137564 748677195 534130742 309476970 340506204 501593089 360795613 204106734 62323374 872496693 426446756 306920259 749909766 800275093 309570936 775423240 239454496 114150059 972498194 668236402 997967387 581667136 571086028 317399068 282826283 962409620 343736896 840924303 583354607 143719258 424514610 120636410 95783105 999374910 550534150 659872940 990722525 572425095 550125241 879132103 542209126 406452971 549094555 630418454 375390844 597145651 66726436 917985552 949542034 116043157 901983413 56406366 700894106 601258636 749741681 46873516 342271454 98643618 591741633 422215754 730121793 997844113 215492467 524880011 813344292 3017392 984136655 150624274 504810839 931321088 572698097 130754326 822374823 436073464 372466367 927902838 499132604 682417272 90390237 710717898 358888799 872216402 748235768 62936633 546622949 231994732 317431272 128587179 573916088 842539480 372541612 261448550 123067328 31141403 182397141 799664380 441706910 202025715 420936251 963956390 177515901 764379725 183496524 135096605 403644502 761230644 844035667 360672382 641492432 729992348 496320600 274606905 168678332 195497937 52873074 209613183 83703683 524285287 910189160 777153054 35715420 26217130 419180578 823633925 125639006 544798670 141408255 992967651 292647380 370512458 543227121 243167402 533776021 895098214 473526972 251475639 513670558 4170739 632385871 566773514 109622136 894176530 346353341 802885224 728246763 464737425 271550615 712970010 188587991 91928816 771133857 115360080 52595410 87076434 44339946 9434759 768947086 191865797 342508000 146750573 819919495 578141064 32666776 858782058 11066186 241426678 6887065 24921240 34541457 323110569 857625592 770375633 779590604 82683248 867163779 942715269 152325862 135686005 426100940 97496607 586370420 78064183 787792469 941652976 794607587 805080548 645713414 725159263 352655210 568741810 675994653 384338047 295302665 28218643 984077655 420333049 772813376 459817807 688928902 39739215 493206790 584495170 258656916 903650728 108282546 120125355 250646648 970609150 811959251 860999148 387128786 738293399 873815722 473109424 825705143 129854967 472636657 45444743 822276019 938524982 828190484 363120842 155523563 396946720 375879304 101577863 3161951 546234035 167934599 720167843 653800772 87369544 659673801 100702517 993295054 174485359 961962609 97598218 298802409 291040457 522595712 951610248 331618686 790044456 629916487 544736177 756672835 463014863 565383509 301285960 114511729 448588154 439207232 402637907 617774670 652549917 109656600 286462434 726286281 957069374 268142096 991195545 653313287 379754986 982007288 948800082 125633558 506205869 714460382 450102797 38954769 592816270 885668103 854727176 641013628 453389404 640391262 450030221 147700412 544742760 589203232 502632671 214038497 211279500 513286814 497021512 551249856 313946147 133617694 450119153 443009840 58725644 309203541 520616834 272010049 585139466 395168531 549064809 749472924 276313152 989419165 416444391 821126392 557584199 316294639 142586682 441946764 683787870 656551131 467616014 396433011 327182886 813404394 728544253 157552260 298529898 40186309 924767890 801791900 565714106 819939057 974942773 869681258 807613143 691218967 415015411 978597044 402860484 247760071 993819898 548481724 25812072 669362549 986814442 863451135 566148171 498204286 491389251 948543080 887084699 961888774 519490767 628264925 275674524 525984476 781175432 940907186 698740428 825374419 583963838 895110135 200158096 380287439 532515642 617965983 130999715 852971802 540819401 561298012 785307316 469457346 72201849 359312048 21745073 496170201 899410487 989788254 233745748 72440334 935397824 588623860 121200874 920374178 39098823 983573366 560144859 997859957 69503041 167416805 467870661 651335777 822866767 186197394 354553621 54891823 197165775 11825812 65778345 5945321 478155116 971532385 421079492 942841273 872649573 541855737 783168796 927745917 122719341 810461560 859019997 484438025 401113173 510413204 386361033 70649928 986442775 28973794 777200874 302089544 997988217 225415230 603183147 698370610 214602416 436555844 551832624 878991412 859413738 534444815 877465347 862274723 663489842 66650173 448342302 724523561 929707714 617424741 42381479 816933123 733011175 40941801 943272363 218348167 903031094 571261394 108857826 2348768 329759408 18824818 379859545 50081214 302511608 244265411 123560841 185214374 135847904 177447154 307405524 693351353 355036648 790654101 498536881 946173346 299176992 623279926 704821684 620139568 221217991 456637064 181183770 21525631 372219907 156285167 347661207 80268435 772121976 232364856 555684059 895933681 193161818 279509154 690055744 418921438 878542447 236826165 92845805 716646074 588281504 335215867 303733006 903377955 390312053 915477529 250581870 177426793 416101660 939677220 283017592 325418782 63685518 851904519 981560079 130959955 982234646 487813325 788821909 355990974 342979815 736801930 240610659 857517396 560796450 121345804 687063008 868602978 859317618 101800628 931439197 381971226 798366555 506965805 160250793 384166135 835087107 180412681 204613136 86637510 502143449 347825879 811482940 203251944 566143223 598451248 77993319 967853794 944865110 798047055 558809575 924122846 710247723 776943834 944713592 626496155 24694803 185088634 9270178 4428003 139140963 697653327 733586983 697831674 699690698 613066979 225627786 595128425 357825400 22533441 735582376 32514112 445856807 85211470 777709039 644303466 478394277 730344112 591899853 959671900 109112463 894274794 350392513 255740861 293290122 583352380 441409640 319158868 81184006 40900522 774585339 297189693 79918632 654471883 181178553 288220592 364280022 893432370 983554668 347095912 393250086 3749056 215499913 108330845 919448792 585582278 93903491 534932922 895970217 119526919 492339813 622466017 231199090 269817443 863694623 973043747 159312043 481569882 377009172 572146748 528717791 151535471 320067283 518416391 690075221 135857562 651081330 504245966 577277975 799671938 832537426 252441219 114588246 509165940 595420202 159154385 954535386 18301002 461478394 389028264 381233767 429829403 101169524 518646638 155156170 715419577 470910064 126834685 504779807 899852300 376141906 10534600 753890258 341983905 716351533 24449992 540786338 157853181 886311111 938932641 900658849 400465413 179413654 924321271 641994663 957431863 413970441 531307260 971003191 526511337 177392744 226412248 442508854 477021240 901393136 384881090 550631612 156519305 126999284 381789287 970779960 450526957 911843388 125158680 85466550 78828881 172144427 701962247 81192454 383202978 151510776 272921742 536322850 239319871 475043049 542804713 423137857 19063687 804747985 856086002 58970110 297672508 606250390 115502110 440967762 367561348 753155402 173029857 531311000 246590575 42112648 108286175 777970151 815119094 115755328 154069128 174106672 65524785 229121999 326762765 894887620 771223884 716702580 455002699 789911789 230991064 413004297 476879755 974512603 650291165 714078631 238390721 440417423 153977486 134680412 390421658 653062388 67734579 138939958 428036166 642799990 2033265 35360278 694785031 423700223 195813446 712663679 896545719 86763822 249505480 324611168 182142226 2150762 808231115 254681294 426538128 612816033 571745347 604807655 417077489 813563553 811261660 106992189 45663087 318670142 121798579 814269409 333173128 903815292 90425217 403776048 798227133 898407999 652298771 567046251 977397656 286726954 448020746 839607564 609454032 65594424 611703784 856054931 339645353 730181551 316877171 230882430 387603246 585919793 421471867 125024833 157204706 401084691 318688309 533103119 518527308 41493467 803675971 878259416 79135606 70557274 363978870 954124551 271909384 617764847 249863630 677478087 47468162 142934718 691837721 286375967 46703976 996744316 108688834 249867073 592180305 305581000 742316917 238450739 931962309 474223115 753423453 433021255 838407931 334074619 801330432 593117682 572494427 178448265 812364207 674104086 461490927 446117678 694667565 817863789 2789895 832369854 223962562 310445021 12689382 103102759 426881938 207519093 799778936 459785445 36129069 32199550 903425313 590110554 493782846 251241035 424523115 868561068 195887663 6355304 611950106 127700132 763141046 62172812 977563718 126061167 531692041 710409508 387051298 634488997 211626787 850827856 393993812 112116143 404501230 540950092 558058045 928685884 439487778 570822271 507298615 178573723 144462110 453696234 896769765 895583014 394610997 199524905 562466156 636642003 449020554 797387036 794205596 525136230 415483887 358053912 120089176 755633713 563213005 811538777 762014901 555839812 871205623 970997185 291431583 143580874 672274282 481546314 100747458 652465269 992684945 395001587 740165896 255686706 133370287 877323960 774777966 985685869 270692841 576830872 14974973 10563629 662305840 8109131 338098235 833585072 904531720 466993855 121595693 608339403 515531957 524385757 97515423 354997765 538869711 171895835 937553207 606607761 486931895 796664456 810560307 628217969 348829770 625222617 432996230 815620047 436258347 196152241 954626524 211401273 72742995 740557699 338230916 234700043 615135033 251603158 408137202 142322387 570836481 602507528 198313875 68970143 751268599 767777053 169007608 517559539 42840405 637049947 163642300 997909387 188738623 139606812 319396494 920716982 353830529 129990172 311549335 669268436 13586864 271694983 819370620 605802231 174687389 548685339 121451806 122164138 552337878 308740304 183881204 300084245 928215889 726796150 352596642 171042446 350389326 894323235 678291571 103876903 689539035 419850954 88755479 719070514 835534267 112502622 484896284 88034311 658158188 571137494 321872330 324459053 491644442 915225644 265457382 224468862 295576908 834239519 758048947 180282898 92088856 982765476 85705109 954076478 649506792 175765511 490995582 672364226 703462237 220426928 476720560 991525924 500505295 472945572 800533040 883372566 111517372 392177774 366325792 430564289 787372962 320194622 207065976 902123223 315893617 102672032 631028088 944415744 781619235 279560105 147141159 534349050 487851712 257365058 778913017 979722981 623952171 538867462 68863008 569680332 27616205 628353727 261145050 389745759 881584795 278263899 400438919 870192880 389493766 383929959 792659317 499151839 568155952 632807818 182781835 947077880 587798708 126752020 491777756 407468215 51960466 58247941 770595638 77002236 663234884 375221295 318596020 752804270 746627052 748949580 153424817 278766140 539429460 893722854 344163692 952351992 477704935 196796474 852688709 146798295 160129972 811427922 408689387 448271295 906798585 801919751 959747265 885435158 98638317 441582173 798148901 103689877 974970628 433540704 124943820 302334935 61102540 117452512 199556608 733327716 405791358 711410332 194589500 263495237 416678662 911070685 137937698 112229719 481008060 345180969 685343306 132453114 528847612 695022703 44696925 820927410 978460863 814034865 63284159 701544898 200153486 558424911 482229310 162243046 629667538 163855091 149764649 68096169 133289361 738339744 740190010 786421451 567015234 452111759 15358841 5621374 800661990 443783437 125388963 366732646 910827063 118349833 779529660 448832215 209083874 451370075 148429 513187988 829629212 354977472 53220382 135693344 116836226 859214227 361838618 290940919 237124824 672800290 205344721 122626399 33521827 750132690 284905796 515251848 30911958 722237850 398310829 914252953 254472534 906348863 729843012 577690952 213845997 53070785 548718909 233007066 996063913 200988969 148798910 151273139 628108562 736340046 797253184 541171315 110992889 758411668 851033107 961795040 735507813 520566412 246834051 520711642 79721532 399194703 796648981 662912634 201785895 195569114 885096951 186834650 974118281 217487986 599550044 461842854 131479174 469941609 127624 752706029 295907096 519864234 484492991 41145009 869656676 172044834 82619232 659642418 210066392 994159993 661237837 124461476 130739208 658150696 780863174 36763718 321623263 27223838 144177889 381957886 732178368 334887905 924612949 977854774 920114560 256586541 662985068 451441292 8242921 874032289 716264848 875609995 715067682 111841761 406737721 859570708 49419829 979546999 825296666 976482871 928480419 378018665 166113498 356257260 538519547 435749200 952989011 977446918 487518625 17553978 555843464 335635422 222569720 18039622 241654176 807819877 867089920 573774494 513017511 766874825 962155984 135737839 236954581 193125873 815951551 865120467 486333236 283229801 724325744 475135931 471557589 764354430 174568791 413301971 854609331 572569491 72430022 425708652 226554530 896103760 56091859 495904113 791491472 999417180 990586165 49918287 595320392 491170288 460257323 713003023 814674651 781825680 270369363 345295245 560178650 482452009 479926457 812979841 148674134 48305651 886974745 763959490 260826722 938233069 575439741 885407343 798899572 559944 488134546 234818011 492377501 848839084 249323112 494772758 616220520 381857605 747890857 606066023 887680069 54725340 883288446 492289850 33031504 457214048 619808495 907282169 152336879 157701192 813659657 397965623 211295893 813437163 46395603 425304700 211806311 728123804 885086434 721584698 159636375 673255544 33123320 708562069 298958183 847384330 760999421 294505735 283868853 485813134 824747295 761987378 241611571 817789822 875220 283213168 407261795 335631206 131249159 129453656 367236553 966186748 295351127 701502898 282675336 999678652 750763594 970646250 286274512 180402849 170902248 907197563 15692359 941997738 313259811 432196557 524249308 556565135 612922875 669845105 113781906 653425658 680310958 511794785 303815478 770976161 810128216 600680957 344512449 451130755 24231692 532437917 840770901 734554036 847444717 87863144 798191885 561911748 315195392 787216386 160781905 442072287 403388423 458079258 254862918 422409548 461044174 61497656 385144334 944331615 571705658 729340023 729502576 404327728 881407914 922267890 509446913 39621043 480199323 76130100 296213162 116738423 186207986 332757248 170662469 472911153 88422024 829444231 883076939 765929280 943251841 610337356 442714299 200667103 493966138 292167538 501095787 412776227 59036708 852289470 543860554 219026695 956090159 900635909 766841484 809872764 12057240 347023190 194624405 361382091 637547178 312306256 476211855 37884583 270159682 951578106 818796393 423387060 696171034 656264383 582175033 364221926 307441014 867947685 140392423 279815131 364453686 470385683 506339893 964741519 273333080 517955703 962433313 919390191 900409004 384382207 139816759 19994021 358068847 175715563 868882375 438984717 711709542 372378286 523271877 24516773 368093738 255580641 178657461 127388745 407691237 500693971 846972195 310834312 468233467 890128426 81086983 807209456 498344894 791111217 410179327 48560747 687093192 645017919 963809510 804375143 762152429 837153427 702390308 671726941 397730810 436726116 249487274 617848596 181131163 243842052 639766722 997714747 143286974 725552685 728495019 91291191 487662023 260767213 476199896 598708064 580460076 504893928 571515011 273657823 446858685 143036435 446571251 68312723 743191947 33006035 826418243 127431969 990465224 343166050 144421023 836354888 329833725 168675416 893112827 53804917 739875762 145448046 701599161 82470376 42172898 630594862 634927454 666227110 202164565 62251777 684101498 938338180 159607819 150779668 911993237 590727204 553235708 422243349 273583942 940950514 785407307 160582767 689457663 711268154 509340763 561373413 911186767 662854755 633038204 632997291 515799770 520518016 988621880 92731938 296912345 967063856 442320283 161587641 809117282 737940333 822955527 557577301 432849230 634937195 502298898 12536959 157102520 375743949 669737620 874896584 171285554 342456055 328633005 764655286 475934966 207802128 782065203 87511648 433253204 175596546 215070979 439616875 692190728 890450591 437555236 683641593 570411637 75023088 136994817 527574186 788328188 591377871 905972795 628084214 357276676 684577838 460881738 700814903 514512928 570074996 657359547 258179980 722035301 450808350 66830886 178738606 616725917 553949455 717566571 42404035 976326193 138713456 209880138 607788586 640499489 868923609 87814699 90522794 227340778 146487097 12737660 139965747 800265896 465983916 624665236 713497802 773007846 858904758 660529793 989916781 39957409 887287306 993073679 44270814 788799544 491351399 240665369 166620774 49044150 904171801 888112782 321187747 867195407 27064504 856157523 637319603 727937183 660920737 50887331 291175623 924302130 618881291 71150024 861591134 380437285 582115032 986958768 340720517 466427351 296166421 131876713 45518887 638063069 452384475 120317002 251163452 436061890 627740249 250279309 688379643 476161978 845823155 794240299 273085410 840857812 78030540 125561492 339998058 480711537 182594980 103155409 30132405 928628751 484846706 460829646 630852060 722410337 424832120 72042009 469108429 476384891 911251327 35774738 538087602 305407686 152010836 587018284 308059226 462547507 71656563 648875245 79891271 399402586 550872514 240867412 79883387 978445705 432333196 699821485 506208060 217440687 293550504 174657651 260320826 242886515 862575035 894533995 908184316 944979776 977852831 686123908 486561841 515624509 528527225 851867865 563394082 583227851 461566742 539651368 650989606 536109053 182991223 798505685 416607268 436944751 900610306 356995329 272797481 505088053 309947340 653323469 80183929 86858602 775236462 249088046 884069848 627747033 841925558 49387499 909251402 616479861 130915030 516926789 299297938 245813707 63096884 72789349 650119166 22286082 406569809 925287909 913230776 878450231 31781714 448010428 650857168 617977834 587871040 997841504 83671543 221089312 425683976 997371038 473582362 813743820 847685379 900408443 790066344 384271082 597604688 26842600 252139280 178601056 413901837 42961207 364495434 126361635 641133604 546176661 210123540 293932717 463474060 649127674 511528459 395823067 600917671 263975152 241377257 870132840 522644412 500824722 294793242 511352392 310816952 19326309 862123762 388273792 70125288 722115501 78042674 45393547 679097070 532370971 55862199 595396687 38298034 32090950 937072482 428823303 677964791 409924195 374403090 232421770 344667487 83850034 151782629 86182134 7868518 675947542 386243575 294237484 488077412 872010553 301897738 384623811 2969826 408883207 257664096 406804640 621702518 260711410 758478671 879795677 547186469 908640404 516863676 979645062 401005564 774502017 784628255 573764944 704058660 758950026 999248462 116070007 242301675 829905092 302940758 778753120 899592143 240199154 224185949 540196630 529494193 165941481 610533442 258384688 302744321 915307489 679615045 876812280 54858283 733592128 940721155 193980904 70159172 947949973 543722573 548602825 71395544 51026201 185164221 797985822 96203790 305182508 476270384 926509767 744555676 720583139 319253593 22146302 565667066 802119366 203911781 978440789 844203926 197336408 411604604 335243743 166815081 236935342 846642708 475711791 969828400 445184044 955658668 808960398 444271056 938637328 679337831 998397286 148561106 662673254 352281331 41778082 723864444 13619054 27706728 311475666 608614162 309878929 544478851 620334947 34211642 465640235 64397949 98555505 170786074 544021887 371625671 678764035 598622671 290987982 848580120 289083185 969501366 548942090 174505088 430103043 773380757 316123470 212613263 755565992 550447786 924056883 975693507 860320177 400029721 51344038 128452506 518268498 250588961 358854829 642893488 435980335 654148867 978303284 876768314 444975779 212239600 664795478 200761973 404628613 155002459 997437746 880294316 71309596 286288021 817374858 47309697 767676714 810911793 239440352 907156541 518325442 633203991 674356396 686590674 205455448 972747164 682692825 694074537 739582469 612632916 555105664 129096180 873822888 999023952 424082181 326501577 270211658 728857850 89187255 170198210 915555326 812103483 939159904 356790545 158544991 16835234 575745463 927074363 450118809 251483817 7451655 448611651 918475499 125192044 637090744 526402274 33395346 539107640 414494404 494786149 4423813 318382582 75601213 486854591 962560014 30688918 885504214 657981816 649825491 629741274 918666246 20289530 502620892 509560831 73020478 156154667 212026989 349544832 742227633 413809527 624778103 391320968 7782597 552354572 698954 645241103 801519510 503397566 683407747 212003006 804937529 842675798 789027806 714861224 10400309 661547677 237650935 572889616 475207784 137950020 518757939 445972416 925147263 772232746 930169510 238608343 225144456 29427622 758490745 307884579 839747255 949995299 996504821 346728358 291527690 347691498 752295152 948602503 358205603 339775340 793281227 480625320 938727015 449028998 676547112 73894360 406169534 475789144 132786234 948428490 375441293 614118849 879499699 872434057 982768772 852166568 671560698 419948620 662784174 308478055 399345328 802684432 98976947 675995843 238982620 550727107 972046535 452978475 520623946 49697645 791038522 212063391 23212695 344085691 604499448 515167093 29458568 805354388 732429527 353019391 58801616 585842328 968367463 258283063 93543632 444012838 121778959 532321728 541496774 592675117 390005644 818597989 176719248 694988459 673898393 967571592 480601499 84559165 661404042 226610791 751639181 885633203 420010441 554223920 873872755 950425035 863205194 451794777 607166412 514199945 558550217 993458185 125411402 326992863 293410488 926597257 526875373 275639962 720799452 307319318 292899882 359864411 828380078 284962039 712129070 80132540 876739346 751184224 641549689 86836822 986801921 812504637 556627983 661745937 356518281 38064153 818672381 52154499 60105414 544788025 4973331 381143857 594272228 913606175 230112580 15133593 354525997 420711586 22398025 142422893 456533358 390048018 65041603 935947649 987196742 900456467 690040085 53548629 499211308 879715804 626661476 828464834 418422182 741017023 654105609 508490030 479483711 857100378 344270726 184245846 87762372 282546121 671954288 930911624 128464616 664805143 326515735 290508763 243398127 924037713 215076639 612069140 88446358 324791660 345934526 264915278 62575521 353625799 431371337 928581245 53860685 125136637 129949606 104807832 847823245 93314737 251745111 26002863 852985827 214634913 80986355 737047080 416794057 175093734 360543039 258190448 617343773 187691099 308699337 196472802 956319059 801589080 481313689 413098364 911724411 474329223 735414160 495328417 664810015 399182705 538773343 272210287 206632274 875390903 870851599 108760277 414773611 630623109 206420504 109239767 715314508 770217051 132268287 344108250 302112596 747870277 769873686 499161126 422243865 976695652 894135896 198740822 746945878 711951724 380915295 489733042 966383872 521951665 885858934 300644087 709605866 632885846 306873665 786662440 952227597 280364638 579908033 402151799 359491864 454097550 457595759 999000512 720963989 546722650 907395765 60406501 299143840 568792227 250678671 278230206 194880249 356495339 924594768 191555464 873294715 813158415 370803174 297635533 963808763 307272329 257008743 301244432 14784329 194403574 481927132 963069489 14724530 629591212 444009504 217578798 149355175 188150280 432464581 650921094 923646630 223162183 255201184 910174616 482178886 70209299 942665156 396710570 406105742 871935023 739723965 33119453 306979225 342104801 640472961 476728296 626297558 889342180 546993147 561037745 304940986 904579181 637326841 490949282 6735914 480911143 219447573 469188384 431682589 545433797 348242459 215555827 55986574 351461835 805864834 765913190 707416168 125684774 483948096 791061691 280691041 944586215 273853820 516616044 156886623 394071482 833472900 180673295 776017266 141196714 164974896 538300896 233311232 297207044 31793548 409083236 794454483 478596179 601289425 342119814 251474862 133841182 591518377 799006874 662711833 704237206 205487183 779540090 668355950 766233829 250369376 547577587 19268754 899708893 673439685 240632092 885707598 220387062 142283735 613447964 962121212 907515976 913252282 961438729 581675151 651269789 533515585 196137694 30917922 384200580 165648833 476035649 127379530 894874000 986639604 587399492 265019369 474786810 514912996 17379512 832922965 925310490 269061213 446211202 808515757 281711397 283867412 61936140 421934374 306373412 478608077 928045477 376259699 182380704 346982136 559166168 213785006 568146475 341762921 669976850 305501628 300856066 45056056 735467473 464935927 824306111 458428141 804655986 741884235 566165795 147074445 277594669 762021416 488083753 168750771 681009327 703889952 979533954 947184174 761388480 156383505 332825431 855480295 262159567 220275564 860749263 279734561 848895499 4876885 457925109 87058139 335038059 912511624 319992052 444068762 35077823 231800950 566936556 936200211 887564808 558536672 764781924 670923437 208989244 380651312 19604322 409630858 256224056 738419045 857442144 877147370 669108624 86155522 18582106 509586108 807656829 855521792 956995755 743566038 351151589 910152655 510136426 356698621 198668846 504542451 726575010 780489061 491959032 100022949 271779806 279263456 190910815 172078866 415315218 358702596 984013906 495164226 544856242 593073093 734459070 317157443 324017312 120157674 833033362 444939792 588562045 72842593 328550046 184022485 723786519 4350911 308852062 730939477 891150184 174195832 10697285 631306081 771209263 411115337 525726595 341258098 212281175 828469225 786611761 805702405 267713985 183815051 174295874 392652549 413869177 649596413 21658384 652380453 826127301 696352952 31254330 515042723 398553805 783554498 365184418 483369548 872208325 533250811 822342953 503037709 785280557 442323187 954917552 548628436 416077803 74072641 554022903 840929556 61588598 239611264 100201685 756574006 552099824 26931954 577430768 19321315 601827964 284438601 430773917 623256164 441920166 962563139 486377595 301610183 576273442 524437249 237374900 934853073 111694057 656991280 538920524 870111580 971792146 19871526 896172862 184679531 283519548 264886355 579307411 516694 615739643 604827816 595314826 608044210 79829813 17078940 143391766 198948138 546819638 960227472 155867784 673180465 472831267 639724950 222237908 538603687 401099393 272918800 341474124 789064035 260318410 403464790 623884519 422387208 309499913 263104776 448669838 927514452 378393912 320027107 503559508 90284882 462395540 570146308 648690782 846330520 503098107 846769136 579806386 632091449 218726175 5727610 371274884 900470238 45631950 26044872 164342654 628322413 537530977 326235580 573445901 786101929 12067063 966515045 117021872 423199863 80995333 545656634 420070869 94158662 429716358 490615605 208946887 935013100 895450669 378485888 990980590 107447971 883531362 115595850 133778032 641266291 526857426 35192419 142264384 229231873 447008612 497894778 358479990 672793580 704722925 954339667 799986143 590489031 493560267 577893764 435346043 586517622 387722938 772579039 37504184 816904358 298197299 920944080 56211535 51157745 683072354 6858037 837768914 535296744 965058189 696968800 99101829 882233987 320386641 407541016 565264032 759208066 43001361 172493608 313123293 56960632 899072501 351975361 657694808 727995340 279742946 847844806 207539011 237280560 877343027 275807773 802871331 195515513 4134988 371338913 194062692 79387359 363565069 571320738 270296228 663621297 971049289 293898123 228983885 703106996 133946100 381443013 316011101 206687733 938268283 590256943 430949100 612862575 902190256 556272631 90923647 774495303 707275584 335834508 336097825 724620130 935617554 135324622 106687404 735466043 258716439 702263151 790895945 437213373 575596681 138600889 527882990 26283634 185451831 764290034 271447653 488081795 241550825 957908312 301209178 692734961 741312350 590883544 875680864 542717371 509155556 805011233 518170572 84579171 949395783 643376561 995379033 804861013 350376975 199084813 816731637 72261924 490496060 131223937 255160533 156133694 856548011 947561032 779788687 328628536 84680142 483224358 644831262 568778853 1468099 359413241 32919749 418415749 45147192 700244823 382053562 691416079 716002444 380426508 968290146 879746699 571132748 171687825 402135402 27851296 36619476 935643633 863734656 607458434 791585925 112945662 922903970 654194907 699242223 180887742 611709655 546873833 878068803 536571928 590950629 378644134 425349319 842143162 242615260 90687130 242855076 512801760 607786350 916758318 512806042 295699203 529238935 609474412 454024410 5978071 447088936 625740659 107879637 210697331 288972979 335293242 306784753 526526647 21606049 538962184 285467217 748527863 640502258 216694209 23531058 256909575 24328924 124456390 442431821 572602287 802870071 697392120 747574790 634392255 216852856 98466532 322228253 128096194 597451075 344760224 758650813 912520648 34183603 896423553 321714595 265152694 902438122 42532937 981605235 312414360 51955157 525741093 934839478 207068582 647777048 878027887 223628703 450326558 382361439 971233178 989449733 461505235 650337706 389753014 89146360 649764164 211931303 320773373 69539659 217538275 708382925 900277445 121699012 18474085 731573864 39372704 610750540 648256390 447549962 599836078 934847737 347664763 412294436 793278201 609323432 880248478 473103893 900933763 601754738 612099631 747114101 583592870 863567000 954341135 70221057 485397007 403649926 164620687 360163549 978933940 884215889 974410626 697525870 313754317 818345489 422279722 215114122 918423997 773233031 552338047 13291659 471039740 604528474 821555860 296116764 118153543 600263363 143219390 328625768 866335085 507373078 394757530 606230312 846124943 353393918 199597746 349344823 406611978 483666273 34938927 258792100 946673175 297268473 230118142 35182128 153471677 104895682 48973859 980121953 132522218 814990181 636404182 358851105 286143373 709453511 304535011 521894206 623533975 465871385 893266292 183328159 524753458 909415337 832077367 359508404 186454129 874746030 222480157 620091781 656432372 694719444 325284749 780643261 746151310 834204938 111980785 49148200 88778049 727452976 846278598 67179181 650775794 886215506 816718017 435602951 702156699 164605105 387471355 169685854 457647607 653843900 891981219 1559844 363242676 965270196 426292796 154798922 981346594 347692149 173107122 145623915 772008179 748294578 363605697 92322845 71486543 684478885 280371232 187923167 387744510 473218516 991282147 113853182 465480974 840381943 166736011 333802029 712498165 200866068 268473798 947913501 944782483 489002506 604883980 343383682 235991959 7673131 631294367 634421426 773168824 82919870 901022028 752586500 475648667 254993795 980807472 310242418 682893682 19434773 150700388 980722992 756697881 917323949 364445073 130195115 346448665 851524860 936382094 430744977 929795514 452238450 353945615 810570137 733663498 74411624 10742447 310154046 840404796 747739277 453385728 644317136 358229346 844730104 339923489 84411264 999242061 341163942 795709839 626138198 321724510 317476887 310647635 285851556 77583819 96628908 783400162 37599950 554556095 194775333 326185318 101222011 904801799 90468361 258346639 889917878 883486349 182273502 392855373 294774929 937288873 77742408 378032806 460966808 227589638 632379451 111126688 903222439 31768087 400151451 206467071 628472046 746485208 624891683 897377453 132361963 200825441 890913860 690581980 37868318 241148126 785205313 176702627 277047753 498871826 872222848 407613560 614271318 196317096 163510953 675834453 9016712 117549706 865010565 957207983 72023772 725641937 642735994 372839701 291569680 725262747 478579306 195682347 596930088 862782756 646450912 500224244 723118955 867424185 409220192 104019972 348796845 678852303 801871788 516389413 551744567 375972296 468645025 85642001 764501912 507772655 955733057 519705128 859947216 376399190 257004429 214555302 808257354 65949577 247780917 151021961 36355878 855314109 469635436 779122122 441072733 733430616 846536869 257947646 993157857 271883513 171685924 375929915 505467258 451702350 767849244 748909188 785756156 135491724 989872411 461676888 248065787 75254816 749526828 305781264 343460063 235950243 474054361 885375401 209312990 876372020 854651814 213951513 54495801 762117953 34139397 122831126 392374793 260602354 674181690 360856561 677149218 246019311 258681464 24834259 622921076 888734002 956709754 277128142 995895960 841726434 963034219 916807415 305825880 299828916 44213233 202797210 597385338 495986231 987303285 632121454 45619963 458421653 418111652 933392011 529671301 456048672 192591224 501509209 547137283 380068949 624974798 174786325 375727343 163561076 739769326 57038650 505786878 938790799 307031441 217040308 4549545 884852176 978127614 404436482 950522363 584450052 957541114 771282385 335783445 996364095 897819109 468005742 410500263 678382060 321723578 688913165 332786909 286861362 665939021 484778371 748898806 183031994 889599111 886791384 812743659 959207731 49169483 487686136 834992656 634638900 943697285 979619646 203220532 312188657 932368376 291849682 760772448 989215455 293714643 696784499 814916127 883775135 735332684 125704121 672440361 33308340 112519079 578829952 961271719 511111099 519488085 686416938 855610831 687617617 347140122 347908235 4530611 987279848 601258790 890460677 529468958 245978189 853112368 404638484 981499872 781054447 305534814 867183227 442042936 491558881 818912226 161729591 442070346 481350603 328949813 933882783 105788857 603901953 514657456 147117686 746704966 831585516 901044532 995344505 923478863 401969570 175378214 839279771 393140715 454080027 727132708 947920346 357358599 820721584 444706215 350299818 730696104 173252390 720824817 554342861 311062065 375670181 441469717 693081269 966167961 221881550 108431367 36160166 242919185 286134215 436804448 424338220 146252397 658183514 473242340 816721736 77894359 319084622 545479868 604532870 84021656 564660424 718551559 286919062 258991532 340966509 822344447 346154038 236355461 544774820 445073561 857151124 395903866 341467043 142709328 735406724 400747403 723843514 876197175 696018145 806426861 247424942 568796140 169510771 516306447 423189430 286575083 242916629 420888150 572714074 785774966 603987624 220432401 431725468 882550831 867002375 168233467 555928073 395162629 698383229 374152702 53779617 902882339 897957000 840577481 792937052 861393648 623467906 184303719 61792158 94424700 454451727 443863954 574091454 22629312 833538747 191476962 19910253 825015501 366528033 566277056 730894012 623412297 367155048 183512494 398024917 759013949 445502146 370254554 231280358 110210870 678260693 814768169 915063476 464706944 879171113 634681357 38982421 362923876 708956781 228408709 204216984 380274308 959051851 874119991 732489848 233884554 464487059 402640642 774860295 35327915 835779876 910962188 44125232 720632007 793167668 683968156 401389153 502747086 513888699 116392143 633739459 134312304 907180590 128428130 162794791 510718920 677473875 305941668 553295109 999315604 585542166 17127766 976211971 35643087 121442123 214442835 424244848 580041910 910357643 790679477 934882893 682452543 162466394 539758967 676341267 992871005 745676124 559969686 195254201 52169469 738306868 223011555 50525860 758505288 890779794 569674064 372058878 166560642 12945924 406506651 995552929 154626469 850438545 267687092 508687099 792269992 840827657 411114402 871897916 909645643 581210894 82073222 128850644 629313062 328279338 391886124 167946558 1601582 556679173 499427369 138862070 252254297 411469635 371521326 681532927 985402796 747584477 195049413 435750844 381907490 280132022 320164535 948142342 461053482 297026604 560485694 352187791 87270077 490858740 659904236 713069588 331668423 579817153 777598587 493705462 665892196 409263809 668837463 312974411 740720903 95799056 732713820 610502651 94774661 315982247 441536517 810347928 139982218 9490286 409165325 768038570 941367821 667957945 96653561 258955582 203746006 144474618 371616941 810961921 58203650 51862637 864917613 320665597 47197990 245591038 646301104 363564801 868762445 158443545 962508779 404460714 584015187 440409121 846029881 819402627 65173126 349858009 980168948 823297834 973025214 91635192 836752451 676573684 309659192 464296699 620594695 751741488 793483734 130031306 166168912 249712929 927494943 77174177 185002773 441139834 687381757 490628008 730180643 62273183 563281250 308154568 556655045 356217626 585936705 515738478 745764319 185101175 390892595 140364235 495381955 888215938 635788547 860774422 674529083 462674712 398871018 963320191 789999954 125671760 460385851 155136084 551407905 892422321 886810576 192052142 924056008 774234908 571160360 416811522 434291475 887138695 491970809 480890800 669459571 392315592 461313779 877215467 440757240 102737428 773455776 417766430 748638302 943783890 7812485 874114198 902227890 434958183 527073601 818336144 836126944 112182799 529308955 794668717 96342110 64765395 519610055 819153292 363372371 93607174 611781545 415138238 924323671 13900162 503987892 661966628 772161883 143622127 660678448 331982713 914633437 533585966 200219063 549117582 70884702 466156647 172515825 187395658 52306465 840191001 727168818 122930300 628060912 656143751 292534757 375722013 692603493 506706349 170660215 467201340 646890511 936753796 446100378 545595141 793833386 74691176 680870713 162121706 254990314 730364063 951658001 877259599 410961935 276461118 944390668 648876768 627654088 488692963 150223666 158035150 647431650 686741320 541906032 996336168 243135566 152334385 478899927 29233211 655770762 510186424 475026725 751561027 700566563 274959698 69765011 315092308 633356492 938907778 816785501 161507989 629413169 251564433 6390460 876397416 30708001 264142395 205074602 432594479 858251769 349205936 254872613 9129377 282393326 255355395 321108724 90996274 645520999 732711702 693423025 739518993 626529610 892259124 830914528 711857592 513671688 378161556 170696590 530891593 552341387 421011008 172059899 131556278 698953298 514354674 645078503 198084420 436050828 985435138 93457057 206129380 6542541 751819707 693327571 401178199 849570413 551638440 909502919 279623902 372379976 872221401 576798424 210726688 964435331 717511929 63629958 443132078 254556838 627329865 955552192 251061148 242547720 507837603 602058562 116892886 236796392 510309479 198073563 413742932 896679245 259649365 858094841 546394838 477245442 264627159 330643564 6193729 875093428 308300923 919812676 865552718 534136745 766665324 802140952 234334310 405069992 960451173 234147015 490140182 104132443 347866122 194846917 5412417 686535694 218381986 726694064 98307584 587990458 219310954 858106555 569485742 966827904 190607714 27518130 96675344 508464671 435241070 722719917 60018507 376120792 702171367 358744176 256178256 679467238 898542181 587290422 278415765 624464327 423443423 667145906 303321991 341725705 415392994 632259961 138911378 303273651 848782307 644613438 633703165 218081541 430906668 653216487 484439390 189434049 768660974 162152203 258150448 553116631 634621389 233960380 729385823 171137172 107620418 550789527 868383119 893783465 943805298 446217815 20971606 256601608 542628208 652045859 596445817 945462119 506108663 311254770 432043284 827944284 527877927 858781513 640674915 454831743 747010902 328577057 572613507 126794594 398008624 781245518 914437961 715322339 91616836 782425085 89411731 193279271 151386083 169930065 480922983 632055673 302493585 481816647 839472467 730820892 857120837 479257411 327730222 780563273 421308952 92738266 447266047 931809952 48486481 490673101 761508594 852865129 720814254 724605846 689267697 473431618 317923089 356660936 336623982 180544061 572652228 129598057 341700592 219920336 346634385 711911181 621307153 533711759 110015862 180114572 769802547 250464558 245175135 263356582 439859887 229606639 528897300 521252400 929745469 288492497 448215991 719820261 352503270 36066153 625149684 741710896 472035288 717975047 960493101 452895476 222520274 721079637 42752141 374147599 47828733 614741038 236760700 277701102 851416759 842121194 581585645 198735390 295227593 89473372 134731814 51876753 394583395 984712351 114856921 906708326 108503751 682065365 820979477 267958128 307456461 457802598 522925406 762740450 104104007 929802159 944714986 453396371 273296207 4789577 49558336 453958677 943183950 765287444 47196244 978360764 29668992 79483501 461318219 971067308 307075830 311345694 438556634 992110089 895047919 364243119 568850561 687175634 562664706 821050713 348434713 206846866 291587686 963516461 459262636 499360656 265725582 935636058 998998898 696217041 291259642 597204807 583371176 166600875 337851263 215655652 159726650 671289997 487415420 944608175 842499393 120004043 71140816 492670172 130519929 610202985 684764608 777490490 14194551 638878906 161311787 401743500 129100154 196335207 141371287 21963526 860480446 191965075 364766764 983227015 465405084 170769939 615410241 809228904 743168577 719226329 765959509 122377009 869480207 967324704 637852981 336009465 836972680 326292870 6819041 764067505 963148994 954375001 106832844 462376760 511931518 928134957 386627914 757739902 52017375 947349055 270218894 229478736 338191660 287230778 269442833 953147750 572301866 475272658 248597899 418233362 882205642 840394432 44403846 17767442 818009945 855875096 952484966 690796770 647209273 645289249 15607879 745635736 314814209 676726608 449462107 495168539 688411332 954620210 518391236 852883140 323012097 739250264 472766971 531249291 479624670 331454981 714807433 321669876 406714266 32125038 682392582 593046664 59797632 602644459 838109645 832193740 885418141 120222052 836011313 335230998 273330787 419510389 754748869 641943093 998719330 167449363 908306487 76298913 889232184 971590937 736642381 590936020 244724234 484258176 864705142 758404019 841004307 283230833 142704138 772706255 217246691 906728049 812909500 667971674 981285827 512811151 482207240 886701501 488960390 42240768 834999404 53745564 942774414 848334517 686356495 195667751 680536934 543742630 919180553 69529481 527552845 266171380 743735105 604523536 134490103 513698033 734603781 938586564 607159715 817913587 609846357 851720811 920060747 797039273 861785594 328742162 951332794 341273366 927406635 470611749 72502261 753217748 27641633 521165263 358021110 648045513 751098045 247178254 357076058 716940565 827996955 520323939 138924561 771890282 910559629 90725585 525193553 7313936 508052756 799090738 100293585 760719531 349543347 344574459 697884535 84659677 609989119 177575019 675317301 807621703 3031579 914887507 531592032 62129902 509874010 923121779 61368382 767441631 671767451 106709201 126782339 790314213 33516011 224650298 32524748 860995771 622529811 197427104 806592481 56200954 11290722 315150641 923060914 228417824 527459977 216850204 868639188 542399609 455752008 686215478 175349088 49617428 725822906 240170031 992102485 213812739 783176455 43204062 226001578 691102235 91097962 132543314 692845735 366762913 754569855 450620958 449131968 783988502 161114861 645531398 687539226 703804036 888818135 665495002 552509269 138119750 245451939 835827340 229420420 444617221 678015749 772000467 701827052 49762892 895851799 764417255 606660292 318679973 863247460 789012081 721776284 611779907 831272249 720123684 676531347 31657591 179086572 982660120 619507863 443777425 365255012 790309070 492959734 554220130 950487362 775691428 543851369 586432990 658155161 183875155 113055959 748141212 69679881 587589819 55774664 402886547 716563993 489816977 820241900 920445493 36334191 274883840 220514771 498698133 731780294 612754726 649928973 975157316 950487238 845344358 773621695 911288058 40823257 933593746 198586094 968252904 908242530 116406293 863098990 480632390 674831555 381802038 134457263 795980205 892568012 378550669 893651376 365872182 725160585 553770650 182384289 766017461 814330098 186563882 549268265 628159300 561251041 7541536 670414472 20936585 505789952 626680746 747180667 927066068 764516451 890653342 433022424 816288496 912634620 245848862 952579499 481616112 238406120 86342047 560361171 795355391 810063621 75107029 715610758 972086123 721809722 221975044 926378348 737879234 695004807 896848008 415401726 359890125 904309107 195910494 341780180 631889328 475526301 685971263 274158650 582133178 460849064 367545964 552999851 868740039 657845151 287693832 442690563 644575550 765300069 654984228 443413281 934229760 851708680 179169069 741220870 599399067 409362154 411225829 555093802 58076852 631062896 628756874 727037911 954477045 796544296 341665399 182486707 596239071 741771 237068754 234707464 538924636 761846706 632855884 656660162 339563201 697020376 300311529 889206515 863868194 94366518 221713878 439021688 9689417 858559065 917284803 278607170 977285915 882845701 610909933 199135504 169408166 233700393 815749468 839012787 160582415 609053354 560010732 619531035 428399957 437426299 751481174 950035954 170230744 422596524 509971176 713332323 693809734 983561881 252733574 251381149 860219321 614994900 463072307 894277862 451698791 91069663 931331463 289119483 378647086 454390432 439773618 941382496 549439167 115183661 829423755 767936872 640096670 842555080 313927898 330161959 974841575 166483004 422956341 114222844 933173925 571076099 33694007 421574754 523772080 93810385 935878189 238627117 2181106 221584339 538963971 629565653 143175514 884783834 790366839 403138673 237740178 247239134 52576758 172815006 510946556 842031582 987708531 884274581 145369344 631658288 923776551 969670920 247574590 853810819 130278935 434910596 946525463 282212919 703980792 361449038 43570366 975008184 728248481 19660115 441221275 948273192 439948353 748509706 195698720 404903162 931511833 947250160 487040094 844354150 738797272 615263661 664290951 445434633 208540976 554906876 607912075 253953778 568592770 789053781 740036448 584441477 134320073 392191732 263933711 144671951 180929353 231319091 385770750 725905867 310554391 558325448 982298190 652610431 626415957 793060333 433961050 239956708 712686735 771093132 849090791 842849770 344058350 818658043 791174311 872868258 203376067 942848435 290944871 514586149 515677334 378569179 377292597 862165808 494446244 731742787 268297848 251574710 685686331 315897095 447085512 284396441 517250911 618706644 920487321 736410742 163275889 518566080 875674278 849956388 427261525 365978589 57731985 479446266 208669015 746662610 49148160 721166627 694874255 249915139 717418251 366183667 528151566 874748301 639043814 318901758 764708961 516630368 149894216 821047333 541377773 74294881 423117955 791088900 862550168 200039016 757809046 745187451 358883412 524432725 816017360 186567218 11731782 186143794 181385656 561495680 420813580 989980244 814065310 93714957 979219475 456861194 613651434 747562860 142502273 717659589 519264913 920386735 162320054 894707349 849786052 803379198 862026906 442125482 73922461 315591728 305842911 784995141 561416597 965267882 452843986 65059682 409175713 466083252 874976522 299018054 140557293 788563536 833670568 286343180 222615973 123923189 50675775 973949183 951393808 425844296 54321012 954972832 763011686 916263373 431834107 229406976 97731214 191597862 877019214 298187528 808306937 287525535 426476136 930396098 529432150 90539486 260553388 899559222 597747849 633538565 841240739 180310908 804712739 325850656 599396465 598011364 924788268 443471836 88521314 177101314 633785697 415124380 930105959 361987933 825653873 163448408 329264127 937065979 284502277 356392202 130071409 873350011 590718888 223160674 922994154 100307225 860914696 232228477 557855287 924169930 145892177 469834749 678756380 144067023 604440730 511592656 784163735 544426769 634329392 194831148 354001058 212797759 515199539 497585542 931409062 984643572 677697716 389363754 348805420 126419986 971274754 483701510 633511712 312440740 488057282 379835900 774915525 363354692 296383268 901755058 166708827 515593105 46915741 842303317 526588082 438707641 772524213 721622906 912079074 873555625 365264267 849684884 293322411 523290671 574764302 372096913 504652952 557132417 103934826 627848652 416732773 204460451 575055446 946599974 415789315 880532238 613527771 308560079 99304818 962374715 983694157 632812476 121328676 220025831 317790641 881601625 734524027 978754392 537590178 129148722 94772459 336884732 933778044 927414439 553280251 87616756 626728365 512646040 685467850 463939684 58592593 566192783 909510480 810708098 515434508 553023030 600468705 413440768 125311 401427755 914770992 762014329 267847426 700152347 770024375 787252403 698536058 954030187 583521040 549584260 212822746 322989002 163207274 2917004 175160691 77390493 638964512 731572403 947986164 603454730 304375840 846105024 647993057 754806792 296655755 67581824 353596009 746199058 915610545 585416785 268083163 861957187 861150977 663608386 969240687 320409896 863501454 536363812 160072664 848417044 331231936 113404774 195856285 351856226 317734075 918992882 121617964 996098887 386129835 56374026 895004033 821333493 449671348 932345569 95707457 890767244 372803678 731164262 865003844 549895467 988128456 290722945 506316660 507778176 341346944 942748163 339329433 545184117 115821365 64183356 876761749 414186572 316814800 824178309 8516759 569868697 365565235 527229994 575194851 217140416 721349943 400969278 5239647 349616917 425857114 192710367 177306488 43532904 660948601 213314067 963998275 890827190 641235512 424788691 893000383 229216286 782066785 778086759 499381540 893972365 77719200 782569840 747895577 337763379 667776715 944364247 685729221 878693232 168830904 988263621 218823746 10740107 410411808 271746922 385102164 377178393 819988390 398107730 376290056 499449560 317052020 831077306 478802744 634801877 387847786 976462303 81663878 576978202 864110523 55641180 270285425 297466043 211234972 172361318 371719210 609815582 743055600 635604959 340319773 952767902 655050721 552512049 467662281 245743186 639928587 499263388 607721314 427602796 676188595 374289276 961368035 385399418 50226721 282655276 959521645 285886384 641671442 652958499 2080139 676499397 253261745 941547159 705966719 815491642 311850225 798082472 476348624 689012194 711563844 900429920 907069034 773894740 782561019 973926798 138373548 790631599 646576523 346506555 594217083 675409914 21417103 896145757 144692802 11926169 493589900 654266073 506279355 518641435 572268464 741219017 252872704 790958660 796298888 919421869 366972428 97077068 239894741 188626780 935305707 682209608 661249264 647226480 736414360 124947936 341886495 933664390 970556469 291113037 660992785 12752038 156140005 622774892 916508558 970658025 12153465 19956973 195003193 200765526 635270046 390739651 448701860 226362116 634804895 349253818 606677166 208671673 261586145 842805497 288654927 924423980 485668573 370232775 348466228 234860185 787731379 213469391 165918147 293918699 570426780 714861660 866236403 176553420 314352329 956873711 746065025 230797317 41987437 872003574 100325325 875101418 619781486 396116036 589903785 915697168 356572476 78802080 667392965 157965461 239127215 297373775 41481313 403193346 18150835 53286409 913248012 119046065 859849279 57924894 718179990 791408826 142843966 338720757 403063128 418786895 840858683 9325970 983500529 989455608 92661584 620956104 80961484 170538849 242969412 145648664 806229971 127543121 368413993 793261866 109407101 365682067 843107845 576096454 192952375 597914183 69356276 696974674 77130746 581769579 843717640 397331964 559437423 363674613 744415069 931150035 616080691 954440783 176925885 184844028 70738392 518310332 547849855 990141632 342296545 893935389 40602401 442675914 580921147 301221367 82076526 797737826 41517681 82672977 616336558 217098017 360150140 85894811 487904713 757221333 500530797 558336049 378491798 349114858 976825413 447418738 632862843 122444002 228080889 714994127 208671297 270221970 652351393 877695046 257042183 157248346 234780045 430553445 622674335 823127497 108081472 904832282 131196223 18232468 663402361 813983948 181296972 250264211 765215229 959665302 910688600 1045951 815143625 514147325 344058587 734230985 608908588 867758001 663788428 290221972 665517432 425103823 490356701 692157653 565198161 512227417 783015386 332335090 130476972 114611672 920622088 696714806 32903856 130522189 561335603 676505678 989497301 139612776 274134358 127299600 641785904 642562819 121726231 300075545 597775040 336932126 715360071 375256312 594197718 336454797 843003764 70118516 162851676 957079484 636508623 96157552 154207801 73001941 786699891 496397308 306803387 16242986 163461185 207738404 779573526 182323972 836131241 481110572 998210001 42684520 342353835 89355124 47064238 253155962 562641408 20769138 767424623 624534411 856180034 519752227 80861302 381170545 610400248 589445320 451080931 226364177 407876383 415450520 261401733 75286246 955339591 6301603 429964839 177053971 522613203 983734371 754768118 952247433 910400156 674194098 625781342 237059772 683028473 496558303 909131454 358391644 912887147 249248184 406032491 657075209 754286936 782620184 109436311 200702328 19735854 825505318 399391334 808558361 278626659 118909866 993471719 807997737 968349170 889150034 385184248 491225813 383016899 166901419 58392914 637992381 687184176 861122418 648578372 213224606 947353425 967133574 89337871 44600361 255255814 64756586 139114402 45531350 976293468 75499300 697933466 646078378 315263708 285326408 496789218 772750020 99112407 443916217 588025653 760293102 962341603 806343006 128373689 231656569 988827778 165982404 592054212 253294531 680444064 56872823 93951212 559687692 213925880 107169296 778223120 412429588 225983211 604089021 669793199 292688839 95559173 204068598 788673270 537830996 844924366 727417391 671784434 450549013 699587027 99279266 62868157 153012185 540644082 695913786 277279194 26215145 558190921 432533809 9485204 750123050 19395419 356998396 673607460 938452459 589898447 161810916 752126259 298306373 478524817 307343141 36014439 774397519 938471427 227489350 60200101 51089920 711346662 792504825 902201154 591022283 491273239 887025418 805796941 171579595 991771932 969109273 843514221 497830483 365595827 985140424 24103835 219762844 987311249 176151112 521917309 559508044 636241908 378294562 739297199 893661740 290997296 506089750 457573794 605068985 243748187 640513002 496079286 970670572 32175002 170014154 870957231 364226263 210092738 26604433 539797913 471833275 457530209 276786684 509547316 409970200 389413899 577540350 868314881 475555046 306592126 862412754 347513936 378064059 881518752 896735889 648319180 791878309 574011074 697919187 518216928 742135286 443633350 947326234 773953350 495683138 515686838 80853600 888292828 179150076 751428179 594141694 930932404 336928475 291893561 348436402 663666599 828851930 547028855 774184981 408717362 964547481 927871069 248076590 746002498 708222404 486321198 129942553 973893812 543004235 896901769 964272483 83325238 128585573 875217803 740830137 910098349 66021011 272347391 69419700 258245193 630542697 129349815 635740112 818341386 824438957 234745410 356735779 411622976 593275030 923505358 687026627 720409639 997756073 559342858 606860878 727810201 510272302 767054771 896536747 104066282 545507189 453365616 952853277 84226962 833245480 394075855 836311627 376291766 509212403 580034233 280112017 821039406 204093940 640887677 488034391 649987196 141780982 380100229 846407305 734421482 291698272 840952971 399875035 231872701 216461481 18966723 471079059 382110112 286646965 227401009 481180819 750821375 669265398 921134695 797059720 383179143 353727733 60556619 445733715 578193482 434507468 789480475 46251813 952874740 816778531 460796313 196375965 380336810 152715130 824486569 992263535 135530319 383863928 436093385 3787936 269064326 308107718 600935617 768432896 782526667 296160011 682400159 39745504 636168032 444073441 6044804 12892511 549621711 149279166 98919656 209875628 853075310 677369564 766206295 912130458 362976649 207975575 535620530 27996654 760735473 218573505 865941060 672730650 5910636 376161760 704332025 219184432 989770849 877567007 939088286 404154360 461019044 45363869 5171558 583087283 667365822 764175485 13184494 739470928 874561357 314377469 344349045 809089445 865128094 436316448 778676804 691870660 572258371 126976867 895154114 839483278 764083593 288046938 207647941 637227369 301309406 528777812 811624148 146107423 239256539 684334112 158064026 204265447 816396544 816491329 540481818 656715328 490912959 279142177 226375768 785217494 473611752 576612613 66226644 135801201 321047197 103140181 329135379 240228082 362854294 274867931 420240145 950717852 266179069 926438010 124624918 473419527 595772898 664284346 40779401 56976400 874882779 710441140 778064206 595817300 390684245 914762352 565743848 548468696 909332320 773408448 821022152 933869280 458060323 626821884 56389714 729126156 243332850 961272445 386124962 177375411 536037877 991964161 364271045 358177504 565775995 742795935 780258181 243334860 307683303 595020199 934463108 220672078 465730437 30999280 493358067 588559798 35818847 498400409 84215260 141901830 856925982 883661611 915100818 987132997 755384086 116802462 19990333 237748984 80610191 20056487 649252591 468392427 307196139 747878172 89174494 714068868 130819755 692121077 687755570 894723418 493530280 561367427 583208122 245161133 174671452 298792853 475386330 112216213 861343642 98332164 724116477 845042560 362230817 131511731 993969004 954473534 677460827 91123075 503786079 271120845 777120284 518180499 185828564 73771830 184644773 521733422 290119122 826667889 316845517 570569536 46875995 728338036 309810304 566341029 525913208 862642138 48839801 468563838 734640508 895253497 876128182 999044945 939196402 606222980 445051330 944034754 659382259 422640020 128126823 319206651 803305704 696114506 796239868 458636401 951925060 222632159 900589542 595626361 274717916 751474490 643419297 398472943 736719668 138207372 305595266 122857561 647512342 802581875 266579657 735328517 12095942 249443753 378132387 926540325 189974506 929411869 690821780 578674973 723309985 495865220 919296108 84609705 100077390 381098803 55450273 43884972 313166100 38345591 858069483 306359572 924151149 627687241 321927273 297319206 21050734 909783355 733369719 851799103 591071321 337078422 359353535 512981727 468151270 518726377 855879955 998032232 464827843 619379235 848350783 37945815 842057362 135475244 552030612 631673244 326826507 555992560 422322949 131637589 501929857 511874497 803991631 831102610 341761781 151588652 987959852 418403782 838127973 553989594 939414354 859601835 983947227 914729026 71667715 550982469 715404845 677958032 715514883 188299831 584776232 891712738 1308981 170527728 652479780 700443337 660391215 739640281 275759141 840589299 25918916 808296930 18962227 388149202 141985201 633583841 522635784 329468540 176959229 355907041 20110111 849056137 671588512 245247689 859815819 67250902 928438051 980461203 962766716 623640872 960787186 795066378 531393519 956547129 291240181 785856690 281858398 600831482 417598696 145292020 196510933 244103953 120666749 820171083 675736142 699987658 456551202 240434655 740714677 690184805 440456976 610259862 728354883 495436170 689662079 717534579 188862340 914883527 880781588 936507046 152725706 407722826 452085089 749322754 814605066 375675199 798140379 987339548 82331152 175248309 658474797 951431293 157490090 700212074 782048516 458847279 426429395 790685300 256244121 356702768 268207055 722671837 290753822 752411956 297545582 828792011 738165707 809925054 652786353 327315821 474390516 77732833 871474963 995807418 338339028 945633441 752888102 59756937 734538076 927087572 27173629 315790936 493487238 107343063 231997102 368695060 552336701 979797677 16942506 949230963 253167232 147568239 291575825 460407631 928757749 686707570 152410036 841149750 154871185 689228945 808504129 314909366 65026927 296576824 691606351 544216336 576561451 375007801 88407750 43160734 164509602 513594938 615089543 169028736 477798518 972526913 150329213 277751995 492007044 637350218 551831420 355036657 945781718 685825088 731029205 670791805 136527250 215774175 237092054 93607090 157920374 61312385 993684015 10826605 216455861 511458026 431531483 636766800 829842330 586362513 322310918 319581569 113532368 105702161 52633893 532778467 61621267 932208762 186550776 391755068 2548778 165633508 692246625 612872428 930475766 86389154 24435816 811958647 106041407 419627183 108289938 9989549 524271785 759094225 643625379 155090748 754163365 544338840 336448074 605299847 457679734 82826398 521161099 452857723 652296414 772604937 501920327 860552955 222809152 666800447 729522092 476284975 159909564 726049842 101483731 87001935 646231715 451652204 179645927 758550741 462074863 372532938 245787020 868589381 405572008 415611496 170999318 807021262 234357167 455879782 823901366 107979280 349587705 22262741 813494376 125879736 101264088 621893196 80790030 870058635 980044406 974465336 167508669 429445208 537342816 992969902 142157507 936152676 355509465 592831643 246315509 18242957 331220645 273706707 808972452 639973732 549348027 332412000 629978646 44445411 130933370 668410691 759919620 516732200 791466342 967482041 523638916 713857511 420003207 345734478 275410762 882328659 12884123 852737505 875833607 157085969 980933798 651221098 473675340 306865347 927934523 7847504 120480016 810241116 637182795 178537178 329145146 710071826 836561576 144068698 818724151 573692940 624454394 563803799 627395320 815804668 581094917 600975847 679295584 702994030 904255191 309734918 755944598 533476131 449072929 222730767 739825412 22206893 66182932 146049586 882763079 34596699 353333087 185136864 30978724 174918686 582923822 51179802 183555994 613287137 878194707 815851493 8579218 559040254 195627750 294204461 459537702 275992468 454488434 239017819 512417609 876918895 232557356 671565091 181212597 645846381 36040162 43871939 126214070 352737007 797377440 734108313 388915086 785452153 85779633 231845728 281237708 376333339 446234784 296856465 856452941 182800587 903915548 233711083 29109872 101640296 409363428 814954026 7153722 978115137 268281339 606825832 501832071 408938171 946240155 916454615 538565076 704589848 767603896 953286313 286789365 722943785 992813690 272183975 374735112 674409238 575382114 374712268 513712228 582585018 952476254 291284947 716303642 240166825 556817543 128116691 745116614 230165153 649886500 638477194 164648183 352369164 923371425 352186501 264574791 674402229 526007741 240651912 931617675 555586851 340347454 428698377 87841085 664423274 215346529 804891629 324708131 847441636 958265111 614517834 30310144 871613758 61181265 853251517 929693640 736114608 260640990 618311073 213887914 844131321 981200543 707064226 53594328 706977221 263914207 472323886 407876648 982225490 724807536 672150563 311130203 675509951 629961955 877585122 2898549 975907924 423840998 802585401 748390889 60053119 718594651 204930201 200654933 982745316 354450383 652479296 217905294 797783515 248912305 167527799 403977029 68837030 417952163 706975712 351961704 649758394 468660010 774873792 868067054 673990778 294765054 501367630 493149669 443214782 943944280 617818276 388826144 311020991 788769689 91437873 204865140 183390615 207212594 253380091 175691969 655243012 161771280 111096317 9770914 181815360 367105967 647344005 560090698 216065669 318228606 269588740 427559936 55112882 204514396 811861297 193595083 295021245 851247969 991929422 635229519 699567459 769042711 232938450 444303317 17986409 37932645 198366396 497088256 896100795 731751515 761197889 311864572 386147891 166824015 82728966 866570536 545497677 557086862 672250395 592116679 88673931 777537456 749357389 215850283 218087965 412545441 906477535 524888249 535989404 28046399 308224847 615206987 820401732 531271458 907707555 695749663 56172780 425754225 915100147 411770462 232430759 673087937 705624576 576350443 439431790 125965731 720616117 884999245 565228319 571072989 430420631 445706077 129452063 564406210 568508908 581571386 207774717 270990770 930227374 316394936 983370267 848704514 417598431 682623859 713860259 745889196 350919031 561468250 741565036 676523247 743134496 125019323 284893575 137465075 605287699 77699307 390575733 4502543 229181957 49625041 709084486 49460316 533035673 229242781 596112835 489255503 352840704 344124127 298033247 460007522 789040070 318135158 287650086 797134772 949859300 362987032 427067714 626309736 99021146 695635330 775234915 357198463 928437195 61753046 201674077 993356001 70736877 566952592 299562266 743845030 254589607 708971952 602110952 795838013 720042032 697276311 404406407 851002161 793912408 91493542 4548930 862870549 288473270 170015684 197089602 415926231 146155325 846693179 232816474 387513831 358573111 741140078 67717020 419755703 869915250 672604260 706332913 588090276 487966955 258095919 882728102 208365625 170805182 320446584 45088795 797862988 59131601 405315720 644940622 595626630 43715231 820994222 586229631 95437278 409068406 741573608 434886529 85488860 245300156 434341616 800255988 621941460 717462690 532302361 762111985 961589240 375786797 601130356 776430935 751086542 647742534 213483740 272594377 69203221 218780822 603416655 568614505 594576108 948471258 805527944 234991717 191244403 291941955 356784062 55628228 299721603 983456070 660939123 934719028 229760491 78101316 984073494 591782736 187305936 557414832 318389409 428456661 218332202 858566520 558791452 557459486 144414202 706393363 505802332 168270359 942024374 163859262 102133786 71962878 855396418 383658683 78084229 21458819 870883316 959692381 521386614 769880509 17620335 785886753 655800919 604505706 215747868 712633716 36740449 800861946 528190223 396975308 825881480 904641138 1293335 478450171 916731818 37399554 185621852 454586376 873203767 265986500 44005974 341293355 886405255 754313890 48769069 551334854 22893140 49836876 359628015 414405008 683083875 59455572 504376398 355187778 585188301 211149555 651557252 742390230 717182885 623116269 40938324 454664895 290105992 326015785 341077832 381693935 691227367 242751577 22416764 675114546 350051013 112609214 171732447 529036970 241517841 30750508 138637458 35366527 329679404 94758959 607440215 796475900 186717981 774283217 421871364 822007874 137774445 857471943 421886942 438329341 579970545 385343298 588630026 275726361 970680866 474659575 589075743 787593130 694421484 777690655 499277157 83312594 911508034 286554757 187951408 673734426 774908844 873907776 513413519 579907660 518747980 764302285 506038942 519369275 798574549 937376479 47812472 642919416 687147258 403585708 898113088 797195294 180188235 667275511 395705440 400721326 420158167 780155966 704887440 469626325 117133013 223733391 82495467 899406433 835405989 570710133 319111595 96169100 311622859 906170668 633432453 216405589 345373530 836070861 129952187 288373361 103274520 437868338 851095091 134169885 161357797 648174100 309607334 505395784 415369282 838599943 58447104 558007816 900198743 543168089 548057789 945696294 388739799 526006326 133669350 309110877 282048401 845229640 821274117 199514718 734263935 165969849 70974997 821026835 419752657 955872961 48729207 124617710 614900158 653193857 989973020 834981705 178686288 558818694 512775773 129208128 60700547 865055534 226255892 170943556 900078153 243591848 872769887 175210523 858432545 160722828 65227521 141374204 552643683 726385362 7037946 308516789 780240871 455817091 125230316 746891221 257004061 335889330 309312655 72695533 835177501 247789605 567532214 755583082 794235168 835431277 666082263 708558844 678112903 571835971 178925587 858573082 451814409 257423804 968817750 602472254 863537509 479114747 993964014 167003389 170983251 76708411 295953569 577356307 310284972 252932431 945433446 202181199 47923014 315769716 826322652 713332243 106807333 840706052 67310805 415593857 399531132 431113085 466846917 409011435 690815977 853796564 793608666 404896830 832332974 57332110 805035631 172104847 599395650 289349254 445060183 342973013 901928680 921947983 306595219 666036558 3261259 726774708 911668343 690088548 266143164 518174963 189184952 371068272 792219040 960725200 254114019 727991327 68490112 511847906 33461950 16418964 71321596 9574901 69789442 743746462 19350250 358304506 274864481 942502911 292516084 495830215 350993359 216953424 25822961 23077432 190962567 36202166 623386978 71464446 234492844 151769917 873085415 647904326 468587043 31161426 798659167 394253085 725329160 375010463 346179508 602443479 746204137 492209961 909249002 248953301 613714132 887113723 838270570 140133538 240347657 647826935 44200594 124584295 950724174 253492675 973583884 447957178 181268901 388762304 921906686 692144156 293791345 766093298 233714448 630873006 950050994 862774547 358984832 912773439 72144656 991822193 904900467 900748595 407117971 524237821 619757296 578372933 112703221 3624450 996410746 442551925 376800192 662928939 562570001 996176997 352092415 953682689 436205102 397787609 436765705 701732312 685483311 628159548 279068377 933522808 628075492 428139761 146800721 39052992 633110829 56932139 836662337 840005496 805331646 430672143 594843520 773267138 597312903 212659143 104786258 813040945 974195382 928546690 189874606 97172974 932086923 863688136 236786872 520494602 317660593 334404572 199464882 928881858 419644156 659073913 148236215 552098411 92519714 924594207 934454512 40997895 892580087 102979352 601263141 413876693 119390019 288748970 231037721 171973574 418738759 228003078 766328086 680065909 216482275 906642282 720634508 161092469 591123741 326918303 664526036 298989732 725878729 214365922 739243519 121989270 765243700 314920699 945406357 331664313 414790946 234776278 826563989 706393062 611218850 748506623 512907313 489617086 551510820 720658912 637315459 790800252 604910472 405230700 946534745 501775310 378003369 515210122 562322770 168751783 822186698 258630564 947542898 299904107 921202726 455144786 213787289 240367286 124601820 122476366 488584391 544888467 975429942 714977406 886036456 291413516 423737726 539241625 259872829 218327523 810894284 525053269 601418942 787292141 447414369 866582478 630237074 191322791 262258539 225296635 351635672 440682617 276078562 324877894 252261355 845100337 583245481 489650532 383289369 612926437 745828739 688770492 445787167 742059016 583687761 802397743 515760023 705313208 160148460 596303515 390886088 854878608 19787335 68527931 403755403 514021857 890971989 287056273 162718774 970402647 839204122 805820141 917880908 45885532 977908043 625224726 617161291 797942938 904744798 211243918 873886583 749698637 735682295 90402715 724311247 436384087 972386585 413878028 287541859 150838077 102814414 234928316 592883441 538173738 605121214 388650989 83381401 174592617 965107548 129851955 349919849 689167363 702069587 32386673 675345055 555140621 929005327 13167975 329964031 575836976 340256401 70888209 139691114 140319332 312616780 581414195 21673319 946856481 317764943 862491076 751106815 818013549 31819190 873910885 716436940 634728313 928908219 565923525 461079505 311024723 402741412 651198483 823834784 789787047 605288128 861112372 77384930 189293611 11321525 95253161 971494060 466486315 958375642 435187380 1418751 33202867 664046168 277395098 94364219 519866682 728614803 828859822 657452846 945516634 606315695 716368638 769517047 75725212 792319418 936658737 779568955 322759767 827949786 488315407 86495603 668865690 244003003 472750061 467807938 303306438 776652476 721720770 967276658 556657741 862745379 636627839 797372336 909800354 835162547 65169201 968453440 841246316 995267949 863479000 144411344 208010816 218715802 358537584 798864783 133708210 237358352 228515086 142646536 959740111 317660025 628522739 8833198 624544393 965061756 331169954 359181913 434214648 212006408 53156746 199448504 207398772 517643741 46078668 977574514 322348212 937606752 811935335 440966792 845081731 290563139 989947230 399342024 939667412 444352935 226078096 861518040 157043581 42866691 744332155 189607916 971357030 383574553 234547205 258188049 195400394 498769091 274363365 100203234 204074535 310431966 856837558 991560129 954883867 936029574 709882824 689016021 66980197 949185285 971706751 934906160 230840816 918807600 269083283 780842114 757647989 137491762 757606469 290329625 760898497 9373547 468145250 229081004 712611804 391582516 859701555 223788014 182717760 901937900 669282126 556296020 942361841 737689413 858491490 135003783 197664641 394651173 285850951 26371247 749918423 278150999 664856761 182602783 197530528 397772008 844633310 378504349 970881642 18737873 467706733 491420438 947375696 67555004 136480030 7340423 751226850 669667972 173596536 270284252 734523932 298690598 858669199 963500001 92641706 195359799 120848053 702758624 345787364 185826780 736565976 451129970 575064717 725687055 142080882 667691628 578352447 406315859 604648235 787355181 315762630 270135237 160062571 225899877 419520782 727530656 837740616 288446067 480019166 236402018 781406339 80243461 973661548 460467508 570998726 141896852 785398086 590532483 783813442 361303384 365228203 924242988 4104605 300560572 452819166 974707309 834208775 526724582 153551288 646339162 294087142 856190102 396049779 651271249 472626252 497947956 2827673 131129421 973927998 535957655 697456215 861629050 865884615 417717685 93235562 77403863 834014892 994807578 660234704 727229848 372256163 340569101 320261865 536469494 135597655 869139513 346506514 51457824 584147850 41960427 685177776 337175204 247446621 367239723 885089366 650131300 313431922 432959450 765251260 641976962 140757739 440612136 527639174 693780898 148307256 437843356 766601677 198524098 29027914 764739274 930589324 827729073 534503732 552801916 169658259 411366721 181265321 793623661 559999837 508679905 252424351 53443934 111171275 14112310 411910510 457968364 551595822 410277638 934339974 346106878 660903869 580869762 477406143 494539055 730375964 270861937 636560364 833217585 765249708 659506671 407490685 680065709 935879194 352936812 475877330 869951240 499446099 101326438 509430488 972521007 530158992 182302767 708210859 613128958 611277199 655485009 554857249 695158259 315923037 147410926 862364484 507523808 982320545 105705834 186722472 248075647 790945348 670533649 726327178 485312256 182345784 721182845 73138812 342728492 880082175 28360059 856665012 118887294 334194352 560241090 373941841 316783601 885550952 623153423 98141339 597600357 298592872 736496014 333968935 812628102 386750048 441056163 752032708 746364405 564064614 138636348 170490399 623238967 705144492 832186112 677608646 33195368 898482210 643468629 525140684 118430737 556475545 349145969 817225634 9263116 54852702 995909835 174372003 919768815 166040739 601592511 742723290 834220797 513985291 854142247 285094690 781458384 862786232 378032432 270148948 178537903 982197480 57682835 596847015 182336519 539148850 723758994 458408311 601095725 384521598 588863821 150220172 494115161 454118870 883798656 778654196 407701183 34961432 502488995 554940608 924371986 132066128 121905478 917789981 821448841 451713492 139778744 390452135 209645509 176007211 33268273 159522613 561469129 869898935 624582422 509521596 170550631 393887909 865246239 393096443 434924460 347201004 591404466 844975984 709645081 792387982 942199060 926435242 483206237 388010613 948682216 77807070 297581792 409750672 110203958 638268232 624703909 631592332 790132684 82259085 325262324 830479771 161452281 256332331 759569017 433922478 275521560 864029029 553242825 900416608 667431700 934913877 765778026 192783511 833567746 839811222 203576188 809686285 831457973 624417219 866061905 355352281 991161570 33993642 385223391 811955564 7748093 525792771 700117170 323566556 838393695 788306444 308756418 313267747 956198539 178787602 248220949 44123712 759885434 995267421 7509104 835567578 577306770 855569514 953385061 267752299 204756418 143896856 876288548 628898139 222926426 233434710 566161885 614783702 457807231 205513743 745783432 548619276 586284046 670695211 154381099 526067076 727080610 899254052 709637204 47513611 39044768 26987596 775074977 906344447 808359515 277162545 32619876 629597707 291271457 423801081 223550430 377880005 242171334 313347242 541431578 715116363 679526437 389859221 62393853 107482592 896476872 492047441 304220855 210036544 999345930 172334243 336402415 866087116 595346891 343157986 679103968 657590802 417486299 504391965 186685469 659080473 560799242 53334302 446084082 935986087 534343790 639677390 925200609 831197045 463258570 526925118 102212830 449344100 402908090 509764991 268837500 462526750 550278082 256013209 965223931 86384665 440062694 346717389 829381655 358060031 871634785 124997830 680804083 43015300 154390769 849039885 212586419 555963308 417389687 118265179 309913292 173294054 582915787 446617630 786053853 769682320 315024250 368965135 392715697 918645691 396877043 336088488 647383089 275570904 46920611 134860451 47927492 515492680 57255347 261764458 651906744 124884460 547876510 298143834 478240143 23783830 492088289 975683788 912333546 432635044 463111689 49628653 947192131 620021805 697889761 728356860 855087126 425062905 471977424 152405975 669632320 619966776 316981207 507785331 435876875 220367413 194215199 225106854 43608238 305083190 576294831 218526048 640215470 881920315 632535240 549060559 510688957 916265602 344325201 462999181 187382640 373821839 626528019 97280226 404779240 786440425 460222208 871006314 123259320 831078911 28818627 563704490 766968657 698609132 111056702 861510053 526566065 251601639 912294264 905926833 715072466 174270098 17539161 14339271 708162984 791796042 99145493 944335285 500583085 332690891 833183071 426605631 851247298 53857730 480109765 998240356 304992719 267100352 46826021 611619971 875367945 187869359 786439925 337209663 751107144 858221896 884206012 440906604 362281060 574916943 110760338 27248196 565062840 267232723 178915691 371384402 826475344 167120151 981305180 898882304 408784263 573758351 555241402 2151768 4974502 565535884 640101100 536097605 102372946 727648545 157373331 967683433 273590726 463354987 621515505 71285107 948380411 736875512 251228500 360593230 237700152 928591929 346680297 581183183 865917197 451900435 224074773 270994733 404592420 818687453 815160146 882062245 437368792 361702416 986712929 855476656 212763224 733230836 225322845 49198546 719996485 497670117 112056364 390215174 387498087 671324192 376368483 112034111 452223612 34243798 157804382 769752071 133244712 491011110 253017112 977643403 36790121 102340658 291559888 330500659 207541324 658537471 668699561 877367363 111655853 343775883 465791165 613818845 510967007 391069733 21380541 525821148 616438827 137189214 376857024 353343803 901735301 178676603 455645650 484065995 510966408 551431356 315576147 220093449 93962189 299741445 810876209 625679036 57348743 951372248 415874145 807789456 790864926 227250922 706284500 541027549 389294761 34645236 741135111 454434029 519435719 821653307 55317240 150723115 249538497 355846898 48083262 856360868 921603437 401208422 785905859 331819622 886624996 224797091 413798613 106552304 817048427 602230758 544233429 140575775 917029264 915359708 368442777 866907074 949947041 394135578 533413833 582525498 230225163 498396938 664643519 630235283 17809485 196511097 493524895 756198838 699177872 650395686 219607909 146278959 925909154 957021266 162659216 710405784 668953811 800290141 883616018 628309727 320038640 649056740 162959283 291175441 372916892 175275704 953944216 949912258 286622660 394848327 923765221 765523115 965403775 175162373 412099850 203099260 337290165 351002702 516033118 751672499 784691978 975589913 567577093 907620959 928382414 570671057 857668303 646757079 446512457 208131629 528811572 573277262 91838943 461151220 770658594 437514444 92385827 369612219 3318187 911720798 189197902 980223689 130901176 310453477 881611163 116564579 883570757 124750303 639629339 870232381 500535993 222505614 544013652 763312982 638094711 424046643 597511925 944491889 625918016 929808198 408876901 137875441 964965378 204351152 468069946 277128709 626294404 724905274 236452879 424189119 191585666 88491325 292724153 3061708 632507744 982966428 101676088 664312332 923469424 286838434 819009186 891384684 865340018 523996619 308785605 383019968 520297269 252231617 699855139 881993361 755034170 734220340 717268280 250965417 985294788 174038945 285352464 916871041 433140989 161418085 250496948 817590244 2798603 66241224 764368665 322385270 544529208 325351353 664435701 579058262 608930842 406906403 745910901 63724942 992565770 450860610 18022754 317672769 659713342 313387201 373685248 994996894 236036178 333214065 611022923 461129360 623797729 571107474 91551991 442482735 675341991 260871750 229947742 157037609 266519162 360138262 191174104 550368230 774453810 116970160 594463785 502556906 9263924 104228168 90093199 100188936 433018974 599920662 16019576 769790007 933050997 332907913 390483719 70021180 710721479 571369158 793616425 859695946 693871731 520288189 327162034 201462654 275129134 632841295 81832887 19674656 241177054 624118853 888327781 675296013 667618658 824403827 221548286 437557919 182343729 611564451 775706010 194983565 246814753 524729744 975972460 29307517 86150015 946068754 12312925 209185711 320406539 130048174 227718718 328809895 846893112 474154653 914709067 809680956 473771375 461007007 300563807 61169600 888224445 501167983 956793841 127007412 885884011 705660951 420021832 62418858 571735837 738526462 100582525 87565733 686510103 153100800 750647899 487021802 704333001 652646861 78459490 926583247 193661176 809544296 177243188 3567884 714244211 694510288 239785701 459922120 790416128 342730401 20606755 635284698 985146356 726354200 406967775 323412107 198782072 696818685 460188258 237505723 401285834 894519286 484629164 306510939 603120828 975425957 931739925 516365551 809482777 557097484 826792382 509953330 431190794 911968520 729313708 926114921 330397713 286083803 618110476 986933668 675418105 375886793 822685555 743479645 559658855 345309659 697185796 140738488 2483825 709458053 394236356 882803932 259541979 634380057 997589935 983305653 190539435 469262716 94704340 941969454 487688561 729005946 661693827 463833209 527907479 838012662 797602525 77877836 512856262 940542183 538488673 168975958 216021593 411515234 587104962 572978183 375018689 13607834 860170698 516043915 613097733 317256620 849692361 496233621 180386612 308347420 443275033 691590230 729270786 781581083 829969515 36298421 657773033 737204473 447901529 812994006 115703904 286023767 769334871 122081049 481318093 636805755 504866899 694191060 335527916 297667641 561960736 913427013 721942553 367459489 128270013 213295148 376389930 647888602 659075993 447179371 978305501 83444011 585274954 126352795 928914474 706155123 868257318 158534205 550349180 404028157 856014498 846709734 225722021 971879728 200796870 679849846 391205078 727682387 62156594 606665697 462658223 165127728 207108270 646380522 792344712 914355304 739420139 223333325 12388808 417702090 719654177 735291777 872493498 920567938 919767228 523048676 651396830 999682841 955641833 969324805 78079787 179937801 68280617 854995179 210041036 955281284 296425219 655129453 988349215 576756781 472713023 197412888 691636406 319867747 523109635 149871583 928250880 312892328 496575553 468495378 44760861 840772455 509457756 910239916 419698001 204054808 455153359 68579908 272661646 423269209 583269342 436876018 4034451 322148909 874258594 243442417 622898050 759335457 111044176 602045712 159721234 456895892 814794905 182016936 513711541 226502985 944964691 193811012 909161974 782183304 782079813 202529681 418452507 434948902 264704029 576633837 311923702 992784705 655050372 576327916 7444660 487950933 980337377 557288571 720885029 935218673 28066009 689001266 737614331 529581155 721565102 686605604 850984776 164863026 836884532 102585798 281307364 418856853 653427107 512219317 668633370 644892075 156263609 947894947 692633549 423551188 380727841 364931069 186014711 850834919 757022073 783128422 221915886 739533652 273782839 608106943 47420630 522599415 790806875 234521164 759674769 705795527 440792756 526221518 985832764 448389784 639906853 569521386 367986909 427788782 755159880 602807914 336691416 431303344 220046623 438532561 46866138 268535040 953045144 646527199 588968107 267468809 342651547 923624223 132177424 715046457 815327368 462840099 598670795 224877294 21209960 970218090 737078676 65253344 750768968 406414395 679915462 259055231 261852854 546046886 925818450 718219227 703266606 129951998 452754432 617100790 129616108 773200235 815405309 848278876 441616266 365434727 449513825 409277860 181135778 618283398 694900445 250011096 981195663 364443264 454802707 394649843 75289764 508147483 280616772 990095699 695143533 17477375 993594006 184828123 25789728 530945279 909075828 395097742 249232418 281409084 502990496 792811621 811238218 444055522 594641296 479138992 447562403 948655781 757338526 558778890 856258948 924247209 517043401 847413336 951306063 648180099 612133427 768725763 339056365 585959990 366629956 461655556 222794249 909127722 689365116 791029299 352470732 686363389 919357985 707376051 757583752 334055578 226381909 818816996 693359323 995866089 80706615 155231317 333989389 378018669 470532782 506019009 36852953 200747037 419652640 230131285 112734675 49012058 230516253 37280462 38386888 549050021 931494538 260794697 335419499 35784069 780945744 634333941 424250689 894051977 499841992 126454552 242497978 637181455 998666890 333308604 159257301 333056779 495198302 518155509 688772597 510125649 448018389 517752248 73930486 430463950 341288649 942402743 873450783 975147707 836345080 798319897 468171837 591299368 900062753 184128259 650708619 850560868 413269420 804208373 673709733 764557409 525394640 911756258 818513413 473740954 105569563 839397200 22888360 771926525 695353257 260665920 504788529 448294303 851769159 228441905 842885045 736397800 479786255 934496335 262725247 844506549 423976118 146654384 435087013 21764428 721081065 566058574 709123175 547724254 408223439 392585649 276515707 35829287 407276297 882908064 577592126 80129822 975128643 778348867 653489716 90951534 324035534 629085256 675452181 929490068 246923739 877217827 155991230 99137982 165036018 91456755 103468200 765218269 444196192 193424798 356596460 733065995 618175066 668196899 291263323 719052987 53762895 866902156 245294213 26083215 290516403 287917999 170108190 313044407 733488766 528100665 493841215 804362967 122606667 417413283 278716095 75454690 546273987 141509808 266895276 938875265 58021809 71581963 247339183 702064490 970967102 623067254 769990156 256740272 472864257 421138093 768223359 883768247 302207863 828073318 831152942 244996718 644756714 819524779 542912779 283006638 733999782 135673209 453913590 710135729 410615897 324660602 978965358 400832071 944788428 816784606 922645018 952971622 474123394 259303352 932672068 358316445 70719340 40033862 568552604 828247783 155580436 121362713 78714788 540178180 829382344 540799046 38423312 891082206 259582183 154105585 172371090 585355315 380896117 870300803 24130910 240686887 221483190 248635291 274774702 16937372 890267000 235042234 934769613 858016945 966455518 497079520 401443119 7754003 157535253 456869014 14427233 572577220 916383830 205605783 481882014 669266547 823194562 247089205 726191756 36446509 174629459 900162136 231934522 523863539 123830348 306950229 224060968 832837632 711976095 52396873 274667276 469021692 126861471 789076178 809349468 347564688 671027319 810423010 624513300 691430585 418093294 473806060 596213565 45704020 703205711 528959722 442538987 251241649 261546617 30510360 57754587 291808335 816433099 241775368 543990671 694340178 177617729 360178273 324266261 781139553 708576845 108706982 96941177 154429879 469911125 512461361 1103102 795444108 189235246 739027596 86307765 224764624 814718473 249228616 853718107 27351655 832810079 400236210 21199003 399254938 676759572 261439892 454658566 592776553 145816981 716499437 174827897 224039015 176351685 337082665 534349828 925919636 789117591 17448675 706054249 388465890 618876812 431682893 244950972 833635798 736649407 890913022 322364757 626986801 557600620 245499665 628484845 344386410 164691230 427091997 3241089 771518159 648682021 323626967 582962568 99302229 549143657 170294725 237623105 404117924 654004879 782061940 803885882 600647354 722574130 449938369 741587496 160512453 254467869 995342737 416193926 730326325 152647928 466365214 353308952 52639269 777814931 97513875 696540675 318043591 28470644 664792466 436702114 993318025 125001716 339922317 118931621 443753785 155822478 267444435 970424576 881241542 16811175 308648303 383963394 290543689 296686253 118226780 696962725 718712284 271619220 924674797 351911114 79002119 413365197 777205998 416246442 239357332 257398251 572312374 363394117 290868529 691958844 685477738 836353582 436476135 144351022 40737473 850406227 790884711 659340868 744907848 768438247 607315112 540987816 659919758 83453767 345620166 829447606 262416628 569900940 970586099 98881718 343651589 779327628 616511050 646333096 896747444 755131036 551815912 456456888 227326317 935859585 210909008 216216123 88832777 904852009 642813943 131784030 914653083 630264738 356951249 266089750 649177304 116655390 876698281 419118229 531903558 142640511 795452557 42732216 708371028 335230502 965157917 567124575 682084878 263456500 46534760 678070229 243658789 603150711 676226529 541324717 478304064 240016172 126029551 675564343 372457585 562390525 270516126 407212094 508644012 250695611 673211985 317901522 79026120 228104934 599690943 96450954 374224530 341806021 866469699 30888795 371014167 963515687 591784434 276141805 384967480 831539750 159679385 460941824 695542050 266741182 618872738 39445540 167312817 476154795 502926776 999028255 529945446 117649870 330222303 325602503 195872984 369135358 42184652 66390701 321138425 534569349 501367487 703690285 999344228 322605513 664413058 257133814 630999490 994984424 376608841 664210166 115917309 527259750 716004936 671860369 842898370 221284122 465611633 755404 72859124 809634837 845460371 182439450 705198586 231200682 287649637 256168698 190964885 581405126 415653097 525900794 96233646 314282340 585505757 810541810 257040870 988031675 328533486 992801169 853083981 451395469 272793765 370786256 404910829 738809791 201634806 914149076 964778833 914446141 534982438 295677539 374437257 519367938 310275190 927123219 434166136 333677190 43007187 646893975 565651519 803275312 933816801 361031226 240392151 907646410 593797617 634973527 470094367 877790716 621102641 389599699 968597883 244919471 420270590 865787720 126276610 445334227 786863835 797375708 243507320 268488355 849307236 887929930 377830865 718138652 933539701 393415054 597924864 516232749 696592900 42144551 837896305 990401048 159678704 317868366 293734911 627227041 290337218 823734110 905394453 434675333 118904965 424603457 655197458 152404788 802594282 681329178 306729908 879781352 337030105 896248235 571531990 333751217 325760944 126347906 215958436 853850284 245317389 129341529 932828461 765919881 764769248 432733340 732640125 152981719 246835574 371126797 979496942 959895163 963872952 248583595 355769367 949642286 972217180 974457628 986828898 561646364 327783168 826160513 675074221 917349169 748777205 142935725 43817409 898154737 493479350 446665339 513844962 188203496 50445068 152766715 153386541 435849060 355222938 826683945 781927065 213104441 632664528 976431179 292853697 525211215 897574725 481405856 490643511 375623383 228389735 796069535 754559701 15457384 461692158 658340878 996783357 887298267 150311482 982380612 411543548 929527421 939175597 395916167 587146740 881240712 487743721 780003796 917091553 145427842 446101610 642761772 795210363 708970698 269345169 36503576 192693610 600659262 794636431 820091865 5571282 902862398 555823644 647501198 294390152 687543075 232462094 196474097 894534620 789551091 370071885 838647381 295400752 360513379 3116588 187909865 820238726 675704866 529606251 262461552 378169715 670074529 412321433 449304267 821776173 43561541 693012908 908601870 374895477 432071850 424695 33222892 222607025 45173199 616808614 90150639 981645657 615992256 982575109 229866750 645388923 598774008 391246570 800961489 258683870 459626764 512802413 914721846 627107254 637352224 206920441 522128250 373770463 587199815 484002359 120018693 844910746 725755551 429610574 43577992 108766970 804941983 778408180 397692110 81315524 686087248 168532465 633982771 311846292 162385704 664505644 332712062 550965283 344790445 356921553 436214825 184658813 108321579 38968583 977789378 258708486 91614592 167777968 92919874 92998933 978147760 177735354 316654318 394631734 443098975 204678122 95757780 838257340 997663306 288146297 836339658 278493643 556050974 958067328 155965172 643089955 765780916 940840389 197917567 522496609 760994031 919373373 704218635 50122594 862489135 140889796 882520200 644017818 498938416 957396268 412115762 180477102 422479265 939724693 784184072 222146161 220212246 537458467 531847155 104220401 223845416 142625225 826622077 944807599 362928748 283265793 830277725 665040756 588471084 248289966 49863997 300121574 276070959 718142428 106895215 927173916 415564332 438869337 975760454 166050665 585920422 419323054 705136173 749862061 732042443 841083826 465225089 141393167 632414309 492510380 809296200 916681445 511130408 206569692 602802988 321594223 912466621 55895030 330334212 587710972 377591144 886230762 953833776 479924837 949405210 371818656 90498831 781870545 632187502 598111566 108181723 246244897 896342821 647652099 633793455 530523486 578738412 581192067 929959955 714320897 227431204 150700382 669897764 353695467 345012231 190661674 583244919 857192334 791475957 401573345 254700648 36628592 99859426 764454466 476584955 704455509 925115841 984017541 10230304 971486053 242019630 812663496 798379885 38663162 8973864 959468413 700186823 440239483 347875026 79786149 877541085 272451347 351488658 851063845 660906606 986103461 3358305 757846294 932087939 903448687 307661561 497603518 50765182 29561927 981359278 989921415 639144924 32170301 452136424 881206882 620919124 234255221 8391972 134441580 586185822 442835281 830690297 413761222 219710330 928364473 241139467 702419238 712938443 101977028 231855940 438909798 54616182 962586142 320654285 541866851 556856936 712462930 316939015 971124813 206821477 719836855 16730831 106581960 229400443 900689472 520188970 366625220 50621250 665830776 712396377 417031223 387617062 168409997 252630785 265598046 622954475 27959550 969803970 346845745 850730096 886818512 981379429 427953215 25867794 945376677 154930722 566483372 148968409 75383642 852189550 761074804 848313126 338004408 488345303 13214880 820635599 570744328 897611211 346010793 206241516 244320814 809868606 107822789 984997906 811537530 535956273 25682953 294435931 578018121 845457845 534365948 517282026 228742632 360078013 818992808 852945275 642943725 307738969 151485308 726730899 835502263 799107395 490617800 818902845 408345792 927687231 883090729 818865540 626260719 827999117 625805081 742950191 30674502 962616451 784131072 399004140 410444264 494819385 457612569 658341622 377973388 966132044 824808843 392403592 229606702 756137605 758800724 946233976 68019164 712055885 649213843 24584764 171362859 608908560 605792895 680908579 370470192 544045540 112285303 767333704 919593157 301555286 908148926 555568223 727332724 784068 390786565 972286356 109150016 661493171 217050866 371681178 421196991 600592394 441665258 445615596 651138455 417684 991077380 752060681 964228163 938121076 519123002 759067135 334761121 266758799 855349024 190736367 809350510 983410288 727054821 809046560 163225096 695669953 511753312 851997540 438177965 745351427 716482450 872561906 102677979 911648088 379533936 771245081 319272817 361221639 172097166 470855003 258333352 480589347 958717938 952466383 829671054 259838771 667694388 200942689 322851430 278970582 925236791 78172680 346391031 911042149 535093292 758523119 578403307 231473786 588719044 394539274 481047664 811899668 88747088 645317552 385019569 55653257 648559310 725169676 846964400 111657456 88507151 976880144 710204311 178234894 350077223 209645722 570437168 799949203 114802451 40864748 797850975 781040627 87529991 360876590 101762761 918868419 248091691 324761945 586383114 96552064 803087997 711544583 743346000 840804648 50556078 442197751 374347256 915368382 626362360 216213851 452450369 485652922 786416882 76945444 910805594 17888946 210462187 92695758 915619809 585940839 499069508 413916469 602812745 889627264 596870923 228815765 54764699 362946763 879157760 449173288 305959938 538587521 739966412 884008570 262635855 124615839 354100442 529254245 403699146 632414076 82357532 595614868 339368718 905748443 536966457 135379419 116836699 699245324 168387333 70494086 888721534 388070878 77736123 452816921 251729227 20436047 908377104 962523686 217307898 98918914 941983554 139774689 921567865 360489492 633089803 972803057 927068722 690069813 779860518 4765918 289287186 409046892 389895024 684138307 212168 395913256 796732688 912201356 624391321 955096246 555795342 590308707 964767983 886711446 420029262 778996652 606755423 815221135 389724216 731936785 988896838 860807821 554884124 737346171 640309755 956635815 781722356 861816423 201708086 206660810 67135940 534365772 20604184 897138325 429946188 59479209 258752122 479712183 604894738 699306073 13879002 378990068 553553678 124470705 290966097 942719421 232937834 40323515 395515225 266796421 959343793 798908796 323961179 503982658 206765553 975653316 832223606 971937350 249626386 378058281 531388184 62001094 359824444 377745854 19864892 432050625 424416195 656358702 633541924 472717854 911275511 245629185 941924651 767642874 861233054 573334268 507050162 231365291 293926209 657291150 384765752 115315457 274840238 671275566 677375211 747832697 988041531 837369351 107485635 146499378 481550313 891563982 71611792 986990379 511920195 403864352 253749111 401378459 164903284 70599734 523301700 982082659 416133290 757955197 779061248 904393928 987453059 399216693 618900207 469136903 566085882 296853780 610848168 372937507 115564716 446422386 303114683 697058758 970886130 894495203 484933922 583448061 807554689 722928636 93787963 992994751 892567850 463449147 720965968 56304863 608212435 508816876 220864803 957363920 506944381 174803611 651106414 459813355 141199160 111590788 686670403 612120798 559088555 90856994 741818651 93255659 864824940 335169170 527175523 748741486 956026686 927321220 856379754 639673935 675238346 803969238 253765584 461067170 379850270 347962022 177526273 276725818 78106593 821284383 786603236 837766160 380914411 62964900 84672308 992224346 361479306 732348089 43933073 317491916 809639301 115971302 814023419 607745084 135584359 248194067 846899851 454287763 120103049 816094971 969582302 61497336 119789025 606096986 255162895 251834032 577905205 873249032 402147965 194011424 348932554 516783460 135028735 259952236 403424953 104222511 979124478 807160064 962453606 383988958 43758418 309138053 796011313 556596368 240428333 849816851 271044036 241105256 887853607 163125490 782230091 194110596 673908049 749434033 465959661 513458181 749018302 654711240 133351720 965867284 129860809 452717488 158387305 466757339 122672641 443885181 866376659 90086201 891251272 839495056 553358759 533910319 540691122 140460158 454118030 948413591 345859888 279927159 539567355 170925309 578050838 821809015 871151298 148674257 331142458 427962729 420914545 708588923 256888650 953370653 266428371 811034656 841435099 22438130 303460539 736321582 994582040 384211261 254338644 394839761 232881468 353773677 390955171 356017293 951623641 475542652 105158850 232189396 520349239 388335007 898708121 418050982 886254892 282879530 691835985 171104375 473453983 247404958 463222049 153499955 786223639 830333727 166420649 5151104 919299027 365911344 358031789 928402734 332919415 978658919 491807092 660740136 660064432 178730584 779512525 342243885 832525216 941455751 838457403 252341023 227202845 526545225 983222660 294897727 221885682 152794423 385114610 627945219 574687833 700473102 651676789 168043821 731879030 916213931 871704183 116808027 875444965 744461234 386569991 864695933 557337599 977796315 43871906 668367369 656086691 902887244 734353482 357995777 885765030 647130807 714575668 448960354 87537415 730522426 917414959 905009122 734376145 36268898 54000301 296315930 148919691 734848014 469136023 548019325 293246692 254745199 553153965 167152042 17484522 117623079 368648772 744110029 381147428 362022699 538354231 843930965 640936683 121593884 67066305 961147331 899595350 243706865 728208830 117236727 278838476 865649558 186512665 416303266 664298542 759367275 138519030 449503430 379826261 481792573 267214706 899937577 767022559 707394238 421513626 250156708 28723208 860136884 22402365 757065023 556849840 885747571 197739981 152719995 8225717 804885244 235441921 539520979 366945664 738275996 497193086 546947432 324447586 173170612 559280935 479533400 272845017 761762157 133557300 847202934 682302862 489014452 862090287 504192484 297316450 596925533 983790229 595331425 846868745 883685535 799144259 505893113 641728105 542134181 508249179 203202323 946694050 771950619 321225385 532823050 481539846 485318976 73620525 901843143 477316127 664481264 742380474 476514504 880869556 223607914 618515261 128920242 972302313 926443979 866304036 796325876 377387361 975771759 496100504 979181025 563598559 774543892 99910325 899041207 947358084 243199278 806629270 781618124 353386951 778032877 263561696 156345259 253447964 84759212 908883172 311407195 388670099 129777974 254970623 857591883 831356645 152254172 953141610 717429089 538889816 18765009 761097559 743052427 630374646 387448766 48626132 701161804 95529649 25920496 494397614 984703909 534697156 619221746 996352748 756687418 476289883 920165185 893490411 360334852 30905281 636098199 144303915 569279623 874244571 472455057 70731134 728072431 90279315 639379606 532417460 794224810 299466445 168712835 641952620 192342772 851082201 750170554 784200278 636248738 655609149 800077800 107717443 922581249 566119293 784125323 664926370 766216048 87712461 151134045 128114341 981905713 332614519 280903183 111156617 412687933 338480226 420026348 460736427 616153289 609680560 658405035 618273880 583736196 320500119 36301017 47152541 206532731 497582344 797761138 109068054 97821118 944953837 760272420 102956002 246598787 292783044 943440876 411747632 695542729 92031396 942700894 614415505 971266747 635412853 472907838 116629069 998774995 646018885 386765189 754169667 72916305 449083331 11806685 834973769 298072564 200580332 184538498 876380463 766325606 971321773 277681392 690615934 338724657 768707952 731971048 907750952 461255333 846526557 349856582 794612143 831683000 800788877 141161793 351535864 764015188 434706360 802858748 953915171 568783206 791753870 998144730 971267356 290239584 767914499 616153034 122730181 131115296 162766498 162874688 108671728 925172556 176636149 736973694 163195153 966120636 270036921 315151670 452342583 372918286 256793078 402830118 115028834 178294176 36043969 350770083 180733249 433745917 781615662 950520923 532477889 508905468 365464243 649488786 968058867 712278762 86366452 205805396 813271624 601075235 408506411 863085100 697235890 707738195 6511317 578361704 812293729 18401563 616427830 608885778 466896377 658829123 833970520 801429475 94267943 435763572 886746245 676077906 390858762 72951267 305978492 380234794 935137154 334481151 176605184 748007144 146251676 965136206 771305949 239622575 756584417 235763909 834978157 9568061 854688863 699753679 69546057 312762713 369920674 891546795 35534653 762832593 357767648 518910885 885731843 759162843 86514605 490016708 608131087 613535656 370254271 957236554 770967252 815340749 348166095 403403318 66746177 333998871 601533524 65540863 921061759 858395915 823648882 414016739 629571667 202285043 47396454 929959985 165039456 920792773 843344758 575436181 749870963 21420647 852127857 905337156 353566473 660418290 391370396 345319884 635478303 85315520 757937341 360590354 488834932 141813449 242118029 995261778 406281340 285630808 510186745 70154204 912034767 811978777 542549410 113361419 647547175 712147046 173551253 70746401 574639206 395663260 843001036 658494332 271432612 674748573 155211481 224611045 739331294 117533932 59375168 243409673 688109337 149140935 479752172 471435776 193494241 879584606 369075282 878684865 653558008 854636610 783337820 348916691 574678630 886792045 357990688 214605377 616775083 495118499 265707602 822382200 586858429 184971493 465229951 905159047 567328833 228824452 272070900 927224888 992986172 304000271 454155472 497865093 529165465 898724900 151611859 638874581 648594878 164387054 312419425 789651945 52257481 808467422 232028245 445920443 122948203 330026532 608565806 153447121 92674358 103686183 369477778 514766428 939455692 364455903 240051308 653339247 513734478 76641254 571079797 887429363 954797611 559322262 634308271 242293405 243452617 600599675 391805057 312718188 976106608 735299426 51690491 70266243 117278269 685747405 598410906 791944588 918677513 421696908 79479433 230745440 189678700 553894788 681532053 212001490 651523801 342508087 27349350 688411773 473461501 41067499 134039560 122819984 289747104 421925400 796443492 403263583 825149942 469217405 785152050 338747046 727523402 497488582 637824440 390076413 839980363 514193731 201730236 887356977 749605081 276873435 554161185 962303223 352022918 909841114 97021941 634201770 811433192 900371446 340983006 467513520 113003368 907363481 482592269 805309267 665822685 914997994 456864675 947615448 567345708 2208553 135562845 658193900 52960115 889090589 918023459 519397260 582911153 984290728 674662521 167288107 483145135 340167026 53579638 389144358 902755042 669599257 104528219 33403911 645884894 412975833 759878833 504157633 577028075 55994538 320682163 150368066 223048708 89440352 506855135 170698834 395447329 222829232 2910299 999576903 344012695 168863801 843611074 565665138 581352020 15189118 49511380 71012110 260010417 62247702 27632569 948864916 981174288 741642560 113881813 228523714 269032842 737107997 90176140 571368895 39237898 697598954 54778696 397247213 896416869 3430171 336701159 612896076 798367030 960348281 750687163 880094366 126189349 506553145 840493337 720500662 237356836 423125595 874860171 927567374 523366119 490777639 937336655 146521366 317173248 614315402 641177385 843801501 425228758 442526327 467169764 158721890 80528614 135827999 609873149 701787616 904742569 316350899 695337479 833553239 713979054 372730699 745251265 908559402 602404006 171231352 819623911 748884749 495914727 23677837 239917859 1621027 530186154 116672189 792852033 261768116 216901877 512521689 130921070 527141210 47866507 767217494 94225986 112397048 470221737 112549569 946039323 577454455 199122089 192557542 692315324 398902642 128841312 889088296 280273634 524080482 929545204 100084678 640433802 281132601 474863406 631921738 332364816 158298479 172541543 94576343 524739982 918495884 481532862 732427347 404460930 407127208 361975783 823136355 299244071 114884812 443815385 363807970 394412114 304057293 38538595 184601145 588573097 630148688 159060241 785797659 165360683 178083775 562417111 892948901 256877062 181743914 69557724 14814950 156824197 773226200 604708147 207934163 477699370 774246624 405094208 632004176 657470948 593230321 308673616 820589433 107971464 199070418 470080964 906518843 39435637 963963177 584300466 905563870 313668145 213960205 431036143 19027070 696178460 429993059 50570050 434262441 252695581 385743901 564847321 847537178 649717932 572271338 492960791 552517938 383072005 890146970 571635579 174571711 804174289 9356626 864788338 655399350 735062431 770275855 313695149 974346720 236450961 172165792 60352495 756631892 353074487 378593705 394108659 470937208 729333911 537317279 674107378 326199997 761097832 493417512 913247158 854408190 283454114 928452598 670055968 815010235 541903332 437497378 894267862 796808498 805557716 175165982 581437441 430557771 264153699 237676527 956206732 710077385 116573208 872254712 309521455 117783750 665821173 627417397 920096547 383087273 554505021 952871 77228593 854782537 750502516 991583466 348621666 147235668 467286574 660453594 6669133 425879869 206512083 251585195 333442762 980211954 585974089 581705836 465529526 524840074 769798412 24750773 996450737 914433797 203474067 347801532 650439799 325609095 333921367 187907696 423576221 883137453 379069836 869794119 517816374 438854103 522760313 21570227 513651703 54548514 280487387 714058485 381170784 116693198 40608130 146490973 491388923 812819651 887568758 415369820 859631438 684676807 688221114 439335835 157235124 329987976 260240999 527446517 464817012 954390853 325725279 747314937 49619791 230382974 201611345 937968098 735669420 836932102 626565781 453249787 113827960 763871724 696339774 850364842 340919978 397788465 375317385 503317034 597339399 958323046 447628265 89523515 562798314 616711533 626890281 373695818 520953638 329236964 99917970 926569078 524620112 951915537 981459358 298112451 98944919 758050574 491818786 733511789 51479027 211754086 945828786 680491048 948365676 158978371 613041355 330118568 501816764 969662719 820239610 252828892 167478808 171133165 345848526 444916209 28773438 110407258 246803457 389564109 792982582 970704767 126743348 175494902 411926846 412895018 857141425 374987281 785475242 802325343 997955989 364718506 639516779 223667046 261821406 860268701 369072615 185822951 637046920 775609145 848937505 816493400 334411075 376122219 631457796 820443833 592113061 258866539 513933076 181508905 795530352 888697468 256351803 931691905 800699545 363608934 948520246 277269623 525192114 672145606 222164412 91561139 24882798 291777867 300832970 205599672 627718885 305147878 524222166 444139692 65910674 339207774 587162774 572577548 490298953 160309582 732549810 129494602 20149074 617748028 657614667 631506888 389441217 494914364 950762246 41815866 286678811 170465227 820501650 778090132 246364389 598792477 319013081 573141451 685705281 694159452 346145350 794532319 703965415 603911887 69170518 421910942 430953896 951199087 296756293 730973692 469056941 69353115 718211004 891523081 198058837 784889387 293375058 158042363 77671190 664068278 465587364 498239954 496608447 693509322 242353860 348780004 429110721 652619498 881895949 698156598 789698304 4832738 657171446 751678565 868320718 95558406 431832027 846193113 926178482 776483713 222104349 795721292 545641336 434500581 657294512 165259090 827766292 666023493 524954550 493220295 993378563 538852299 667507688 877574779 713334855 115794722 945389672 581957970 244220967 310242794 278629681 858419021 775157624 603885805 767796304 719214972 153173521 380266227 514297976 422751386 327792414 33624047 846818837 140216342 243426367 36410684 391326131 380587663 32338719 930978654 112070038 258645971 333069469 246496767 163029861 289968205 987976701 830412535 792487891 691861655 841311870 897858895 587148004 742713320 671191580 344875044 750604088 338301842 301756342 875067649 668039652 607193328 444493644 305186822 874548209 161979065 574136195 708469446 37366650 548030461 168635158 51514312 464450545 853637412 366560367 273117330 649296089 556966769 878434132 123504696 400351691 488661131 314027611 202109503 572099031 491447228 42981664 543063185 801297722 146249653 335145020 340091575 293325275 28314304 601879671 923295505 986599467 300392995 694208113 683646119 393836948 16820139 691279425 57906788 608461214 280123533 155447987 764457471 591746940 481601267 989815234 57207372 376839126 157652625 276644273 564403426 222211208 149462389 794889681 626906807 278036403 657156471 932539272 860068799 937415632 987151090 944386337 956496446 460483198 916951798 510170198 554309453 710847917 117479259 668387399 739334810 905922767 615237154 609673221 633206552 812225124 421430869 318229483 97359644 323052463 32247450 88510884 938258659 658636987 942630562 385861743 397750080 321161362 731001673 588510497 338674951 678295641 682326049 10490690 738189466 336743387 237142087 139578437 856284689 703579520 828079233 696430851 650945601 117284981 736971592 419935382 852120023 918359003 515498658 435601250 521715895 308127671 651126192 618838558 247503920 860664505 851768355 854248660 73131373 137508471 383568899 657633853 478314905 241032199 212108218 192379914 6491237 376183479 662423307 543961034 292165545 204132205 174901889 653165037 283299622 924452860 528009917 540493842 538968792 951808330 829516155 133397847 439542343 134945385 639407623 377662936 615530388 146767411 903053001 806364349 132417999 838092241 13160879 290668026 975070359 212591143 441084514 697117554 921339502 989908530 388468242 819227101 356375479 450099937 578972728 179261310 713076318 242213633 943242512 141745219 570671368 411383451 120498942 305439652 971165733 424140858 225324380 873657918 516369009 952975340 885579057 140470424 436110928 996237171 159199301 19167829 819523391 817091036 450357098 722978435 700439783 971664391 902584885 262735454 917601880 258321033 587229856 934855231 125372428 173142044 368307209 788352026 488580566 868740648 523201254 240610580 21113971 604330532 735414346 296010161 92372249 785301776 172225399 728359547 331578472 171373656 739023237 527202689 15600051 423424405 829646437 113633301 390797842 790841903 598581744 878730385 880212243 912964411 162726448 184387387 736290206 969516573 825130293 780217818 754665994 265687778 208688006 729413308 629049513 759338841 530493758 566342591 496426319 345102904 765039322 326840533 251400949 60170420 189425384 696862275 331013856 380067018 869417557 695390788 558968072 859541471 878648240 885451855 655222772 7289078 411916802 505259802 384699060 401452708 62598038 158142739 371963262 166465951 795665688 939133448 954507930 301774593 933514565 903833946 605200143 850078535 808396127 321672917 893939646 282487765 965367965 553359339 876593308 926497860 367716304 965509150 541788605 142084656 784702299 100943583 388979321 835821273 613354055 489200812 427701832 70518803 197208077 642875960 270484895 304549278 626593611 226144788 711078789 904323584 610513005 172870936 23294208 463649057 495308075 573879318 83964647 986543931 193396996 293566460 453433005 441456032 885695821 572245873 119877981 714274152 446564873 472537181 472193864 141185260 571003453 163654143 444539788 827619691 120497698 287463417 750270135 837668802 620363998 460186668 143472110 914409530 463196777 235757768 471445654 212395827 70996704 896566689 81739049 420597567 724892025 278067188 424736237 866361496 420267489 263405642 460809182 435591887 974651839 818128158 612376797 313828712 255278953 644889738 446307463 256420775 506221558 57192370 74822493 126113498 609861604 299977411 87108982 906609662 49135947 655304461 29128072 56204785 183658371 805537123 484289708 279835048 661094546 6223829 576862382 768103419 524219496 740317339 628809220 739584400 393061363 59512683 23303323 460445098 245421112 346653847 639759110 869313732 809394115 384826327 984856245 799141480 114000396 429213470 782672451 829467272 851792124 821716789 710567808 762905913 650649485 217557080 611560893 148208843 698104818 998463682 623748070 684125814 324179720 826430773 861103676 588960973 681944993 444223278 676606273 149410480 420260314 875209392 566731342 93131616 259636319 143181033 338154985 17371800 628940443 438054303 129227514 570829185 804840859 652768074 102305074 612032697 746191405 398046607 858689993 529284059 802902164 383441036 67789435 429094675 605079458 889933251 868950524 384149132 208933121 689608445 103643796 874855093 709697646 133433230 759453926 41465198 956806234 964030910 681301004 89883482 818225323 291320457 195352724 191909989 906488830 959762376 649602435 739794999 494992199 323002363 66085188 835537376 719477714 312984149 820098408 18045650 480226372 654750492 851012278 563527718 259332957 746500753 499254988 268532967 951671592 955548008 442084968 963682516 89424302 276270962 205266869 114842112 888459910 694963040 518820995 337380370 455747576 71387190 901914094 739442623 556425546 6214691 49171917 513190466 107102570 525493411 124608345 221256852 659718715 277884081 24166312 599584235 47769500 151361921 276629272 484456049 364412620 585340633 558389458 413695184 153726854 928846359 430792483 139771808 225992003 101701731 20739631 441770134 124072384 457702882 531158826 342860294 802931536 952416533 251509866 716632643 851932224 240330788 173435216 242148818 764744187 505711629 800620242 996660555 239047638 524943611 549633106 678768951 548478932 459449366 945448555 451623045 957152946 981480915 836601286 766082193 776841588 878182222 641011479 149128772 335465561 103792822 833368296 85646925 90665209 319081539 642709049 885365044 838478843 187546585 24409063 805327399 25441153 448985082 440995485 983420649 884556404 492826450 242717169 653497769 981044934 178366019 234621782 659906001 798941053 592120753 532495186 990776346 315255763 171964039 467464170 286192496 658102631 110886954 189782821 899629305 626185787 142573658 701984839 619466826 317137790 488746286 49842115 912008416 851066564 634591751 133727857 615533545 382129665 284365281 713683664 619884048 100852612 81976390 960957242 563518946 730112985 971136237 303837235 925059335 408398246 742621431 287937699 949753144 135557550 42750146 760725982 574956803 609904328 353342468 165468376 730388480 609327713 171428258 364629951 881256281 801401109 535684150 37061880 724479350 585737375 30130077 246836365 822464076 173071167 412254530 679714149 95084287 283832014 559688381 267133911 899640953 802354399 971720167 993983585 759124355 565137907 816859031 336341339 695434735 552990866 859951817 876780278 671236498 423743506 241072146 264592263 723596672 473984464 146224616 239737913 122783570 431018629 445832250 643089811 192954420 357545146 374236036 207408156 737672607 228559893 193595996 382185485 341233352 614334929 430339906 403334441 861502952 428932720 753796063 787903566 862765187 764242977 864706052 912389522 597860018 501081497 552130255 186932310 438466707 192395444 490910824 316443187 61277583 193856835 79852751 864395471 283250831 870402548 369141856 217218144 735942090 88970296 397169151 526620331 123175266 961989759 468138528 945629312 199620558 272696968 45559080 73255821 839301877 820019103 156284750 526051350 766239516 445200635 887490840 269786350 627617198 724650471 781707600 449746709 970756829 788324721 820613780 771714160 820172129 4975306 287336228 831451717 645735020 254649645 486769164 890846485 510274149 18763441 218148004 956323397 702707736 856178664 148560405 447615457 580246341 616417777 440923298 828590414 787381343 380731888 170200900 80703466 992814114 66483166 59339495 540747229 379837367 942160315 574070371 35831341 494613447 482872467 793248480 292251575 603025230 860861267 457206596 236566668 428219779 345731779 929221276 338474498 488411067 999349551 346990113 191744879 421385426 525716140 376312790 298150079 119057052 270458726 137605386 356008537 851131374 455510559 14385357 932917142 480139830 319826136 795008023 769171139 234780044 630375128 490949171 929158793 145692230 205698393 312737040 261619205 608111079 400713874 728911865 819766671 803935343 760820301 291488346 831870197 545362371 822400279 644439480 905929021 703813190 362185300 971116140 402372824 212154868 308191315 151255748 901473735 167033883 479867244 123024933 980030051 408036369 343449055 779223556 695368611 549784632 874839662 483021533 843437916 743400232 965808967 363884495 459041792 292013548 483596266 248576607 193320653 419061628 906590967 708580527 239823315 547775319 339796243 24872557 214775609 55092603 853992637 621297517 282085816 700027011 670767985 878394942 891346022 730744672 774242790 865007960 579434753 775861801 376912392 96955202 991784856 22183343 525033151 129750262 772006880 269379505 120746525 47306529 859052711 773534597 554451905 486710181 394234475 162132493 189043797 335391866 723980964 827294760 853647774 980220755 140610495 633442529 924650801 197775981 516239468 966892518 30577505 601830554 297299093 771586747 134000844 472698380 711112385 582942468 1540163 468365372 889470620 386618178 912669174 220070986 614229553 14952772 861096930 51190114 237534408 863318247 942572073 123956157 835097937 655948454 544941992 365014414 326468900 331007639 390520927 553526212 494213959 552129660 325366679 219529265 331744145 79656281 731214242 592325077 9659416 72216473 427492606 483975094 254708176 999101021 232308707 906042207 916400049 314082084 316018767 677486360 901310592 325160357 953149964 473656862 130852181 155287851 872906914 315997520 734295007 31407399 24130064 525193009 935014433 621403272 125030798 523165781 143928373 455489935 67433128 314101852 367483604 676038090 986089931 632447531 222352442 929396127 211432679 332401318 307089869 218034108 720533947 55539825 282792574 710181609 393481041 802083364 192406377 355378738 69003819 323139868 236734361 820235866 911915524 600271564 1913443 958943607 891600869 463004329 551819641 606274334 548974939 217680891 313275644 573930689 439490019 243365907 230904520 377073713 999150958 811191991 304227176 318103366 498041955 516936152 233435063 567121415 617079222 35600597 188928320 985891632 642207519 994904064 19639994 489809365 175366718 292580465 612795891 520988025 790610124 520639237 102207885 80358647 114258146 954696128 900231186 781751304 3258897 687912161 82038117 596168181 774465169 94023727 824083684 824723330 493212578 210125338 664541109 880228317 339996865 987333761 129490570 227883691 408265809 672956353 494714408 102856327 457908412 220871510 921228182 573039244 540388245 341157848 628187130 725529192 419905864 940117317 939538191 835107014 658652986 318814410 283955039 118322623 117761471 110636894 272025449 330005748 961669768 295933892 56082260 676373732 994563484 103751276 790645240 477021311 159903347 408726951 777114300 779461295 402797865 918595077 454098383 11949479 470386634 492655286 206821120 609827428 371931181 664025039 611086119 299005778 736020101 117645183 42763019 436490948 417089592 107923427 691962983 120440282 622986733 483099229 853532946 142343537 226239208 459993784 862509247 414220893 154954347 287104465 743740964 845039587 284869157 803947360 61462485 400055573 493000716 735606828 636152400 401287570 818171260 346894498 174538905 129693204 536043099 224295460 965064235 456091588 329375716 72007349 529331633 225303715 221286834 177250984 883933171 501280407 536695003 15833266 229578902 189351709 7216966 547227326 354685172 527906032 67658992 632871251 666266443 772958477 241276226 585985273 4269224 677021683 575212584 108150977 937404630 521026752 78215848 495496882 294698209 263338422 346103513 479016347 475513774 531274841 521008297 881750377 660529292 876909127 494447551 955477055 28552132 401457065 653350475 701630480 680061880 158564580 127450943 3293039 75344351 289748704 702315946 578230991 177349423 659318793 492008621 184180954 189202488 907921738 758398065 495585031 72759368 724690727 453690222 544511556 274289821 667935724 91617955 225403482 175591859 431073290 946418677 968213672 630764017 382176748 449733994 121136265 904680321 331488959 717540459 575554793 271029606 123540578 507771815 924159206 709875241 90149005 643465253 434832109 702617449 372309517 833290197 633248344 671092860 260030230 417776622 991688632 172031686 920522875 42931975 13582294 355206423 435558406 101921948 369854537 562138574 357026541 38014316 750612539 211513434 58390013 208959787 567662127 149222518 238941213 18326392 194986213 126007895 843686065 71653931 895908163 586476295 897837376 3992999 320759930 552323976 481970433 848659206 846376824 283599460 155956392 83306391 891592319 701103368 707005097 912384394 642375490 526222087 570643637 114607822 210925628 555114242 865572193 694841177 210000068 870293842 747832712 687357741 142724761 853184158 643433598 753698834 499482840 394204941 421114127 282112936 921065016 608487977 760298541 23374088 546480182 186789798 939486822 544580893 392294297 672954609 90732139 70142768 797581800 618394251 567688110 219139232 1414339 335009373 261870557 391993908 592852095 844477319 625672247 322740594 71609139 975668059 1422743 668581397 730333472 317112193 209826770 646508475 862163910 129990460 315913943 673537147 443588227 371437819 639432162 370676283 510495608 517926207 430589022 646232349 994346585 132764176 502167492 198178696 262286962 377140373 386709660 409584793 459277750 65723259 995968828 140029958 660142405 88274849 154316230 454261749 365600080 505891683 202359349 897964812 968182539 95221449 391475112 279093251 916411961 583010272 408932858 140047172 907200817 453979068 640109372 2016629 912370775 725371883 531983268 973468581 20510912 575196912 911016354 470767949 810598540 527610372 141382620 62471231 821425526 749411356 833568244 783748607 124156993 861973434 527520775 481916352 864406149 248948398 7070894 852064124 490774861 82787021 756884270 374054223 656139196 393340304 624975595 988588888 957055121 535126009 458567756 100868362 338180657 759657266 659305814 695383365 527927472 494279379 471460251 299307002 128259765 47620756 499160335 259874159 621787136 902346542 87906455 856774292 679936128 104405450 570423717 326020342 196896935 531537856 641633753 206832659 353134131 379903660 907953983 39910411 352648164 253315894 100222556 690940371 876614833 713841129 210293040 367524273 797537587 611468465 982792716 909511569 666885508 722216449 866054767 10968490 273145138 668146903 437418493 34677741 47653443 553263576 117269332 839788192 402982836 678811452 832347205 107247625 303394311 998973377 475282872 103010104 872949893 621451959 171149474 129766270 331128922 384570928 674560084 991184367 591825723 612290331 95518377 50218723 524308964 278016746 980395754 489023731 532535406 809399090 302333037 441181550 876540932 653025043 782770035 445960052 179584984 506299021 394789098 424262612 797016023 792864369 85285346 878844212 514779616 693165873 893598938 189334251 317821208 560422722 826679109 934857798 735802486 591721272 522738134 967424578 865537170 565468362 225632291 352002473 503190782 115613567 796187102 752606338 876546899 29748464 686876476 730209725 745109693 335775327 542106016 533910580 331722938 301781217 252687878 724786054 740867740 109811495 589655076 30637894 98754412 836790582 967835707 642908670 247352215 138379980 981792467 720109577 813157898 110234016 142421367 796820155 952528024 309596906 592926906 968216763 407635976 873164156 190317584 478440366 137702699 468315693 886140406 185260480 351860677 114784023 54111770 545533825 829079175 954744314 513144021 454104335 241811387 655765450 923856098 901188481 111016218 710589406 801615618 828051378 60551969 35699404 395199137 356374613 157045065 397423018 95793043 20714115 471728094 400040081 729208552 670749144 91864915 104244399 257495600 586016937 506704130 582383986 992257513 500650112 767173097 716736642 337068621 290816958 501968176 65768189 392744388 789005491 694315517 574325501 411270441 730230755 601003060 849775175 75157899 545749087 676816224 173531954 935719947 953157410 37656902 501221620 455678070 718397336 271474311 149666153 723629751 28666312 191901227 278624049 21209786 810598492 623646290 587447272 311871838 659117363 70020303 682749266 646645003 518285519 324756645 954087587 946369553 794587553 946529035 205919367 199315171 657564340 649018158 262043861 446770157 383808507 195276857 852434648 915297205 27335812 714686049 78047084 263658695 60967205 610482477 508055021 518516803 5927719 646644290 789377685 74574462 543450086 925418442 552978591 867526584 114989117 11321081 198103186 786967843 120377620 765784935 120423828 196152596 989143486 937576547 537647751 961325684 171984660 703457768 372188510 994692555 36374508 811714410 173189254 444559117 183415005 532580113 769658546 19980109 695896199 881430138 815071515 456755808 690172894 673097549 88792092 893857783 936664888 466804330 838297543 426020377 380056514 806592336 467297196 685387133 79110394 502124236 768847353 47360821 453033345 696196993 209015420 714323370 467804967 122076517 470597077 639042112 325474538 101993570 15463798 510313074 647943806 578416080 25811067 618083333 708675660 924886135 125253820 629535200 781327207 901817552 501226078 438683189 774378794 389325448 391596572 177477940 692104781 710770419 278948808 465045580 41351257 936465144 376172767 97916610 794358909 212170870 402652800 156148633 348653550 834656233 593376588 675283680 593403142 89223691 924298125 754419958 821249988 789071948 32926668 807232935 951368475 911168460 555001842 203874092 896364854 512165454 47927919 548035076 183975815 86394585 965473678 263702723 684519296 212258978 483315575 534041688 438993063 514702745 216875395 140745577 121052325 895871572 599681133 60203765 893201327 265346522 747713579 978741204 651078232 316168872 549990521 604326585 665590974 349162542 424334931 554648317 277380663 782280613 797823110 617918109 610295621 780898584 488027653 301776011 445905575 72414060 962759775 443832903 453655303 828605441 424980280 904841162 48614671 12915866 20509682 272694184 334160836 549034959 18351128 630849653 430571520 36982569 250293281 819422263 448663357 732169896 395040623 892721397 246572052 254476945 115047663 939752562 139550637 439184338 491556434 51485586 450369001 970408229 718323193 866932952 399440044 160730648 718461154 43602909 238053712 164510597 952137208 793900451 667238307 481911933 970665307 944235332 178884211 895339121 643531532 798180692 112967916 560613344 193341647 851910394 471247642 42374775 465824879 449443583 115845982 364377868 745390541 441545819 990118276 594283411 458418807 315296532 145403269 609829496 381833225 809116568 231519559 130719313 128025866 447565023 559482585 55165947 447434250 565551822 798415907 169291922 920584610 108098953 299494841 371780771 807716769 556902690 83049716 345127195 143193825 578384383 507101163 730383629 244108900 660889616 194355652 501091732 323066775 27221518 185016404 925412063 658062297 919485736 318437166 832458679 92249733 973348051 803357965 403027217 278701510 338529844 647016742 758038349 386640950 385305013 924288459 99106697 703135151 301574132 555532531 200054120 764873643 305878575 564608835 808302928 380277976 341965979 596271791 399052299 378134528 928704022 67878422 329779478 708584573 585398402 10098938 401508607 901451844 294928127 672689842 915822194 948340622 871308520 170670786 737432913 920740787 526689296 934610135 732445902 203595605 116339985 566916063 892046456 269418905 207563928 433736648 179306485 770267881 812988405 958347677 571124036 402580414 480712927 626422557 972392349 717986522 46062669 789337246 501810744 592157980 466299818 924812061 661279375 441162592 961673457 699823473 825573256 443134323 234004230 864311191 526259981 834592670 962259268 652622921 119800876 863672758 231555771 20731839 864705201 385213797 325891422 500268722 794166652 551915566 663774904 453469830 310496816 867786723 262143193 441414482 754179523 150340906 838467704 794175327 611537273 867413377 473877681 12230804 982307762 320579214 944559706 11729897 478921768 391321560 337807349 751942759 607370830 726051703 842945259 322205096 370459403 153112092 524475495 661231904 606766043 783116483 135966090 262168824 812503757 838202112 787342192 700180747 671672136 247168770 321146527 295439469 919178671 473413285 622197998 617531673 237848849 968006614 148200143 891509327 607058181 8732893 2743232 220262914 589599186 42344326 147042458 461866649 54004082 11609754 18158895 94202957 381508488 582065188 536983117 109450309 974224624 41368585 982015100 404717416 968394004 999637122 600400183 429224141 580559299 100545201 579887013 564123783 698892279 183510771 235399639 961676314 286832882 977941190 146197029 388466891 90204753 167425367 479185103 34277527 267601212 552461819 974954550 535502071 237512729 45949655 742882985 772597895 912566781 541306180 649139059 997592670 194093231 742474570 226508171 258189966 309807121 946791463 693976829 377862470 838186645 991976242 219996428 430959293 833802403 765146792 164275051 435632268 597136473 809098275 139914859 53682455 105423125 228412355 487485506 360177379 382517912 233387587 585246997 969446075 651382210 959816221 192353095 870181999 711717754 88398000 284172452 187273267 37815648 822901162 627068282 367694683 390797560 308900588 577779395 861851189 546233702 323982586 282552233 416780647 465971471 401888132 290277795 359965953 625251708 624858157 60206801 479428362 299624171 102910621 260399023 486986560 167739815 559593287 21676246 565385117 736891967 13463085 761175919 797695052 298232447 41636135 510303507 643093046 707305187 548417224 935204918 808294090 639468932 214370 124395329 926772751 517352722 744949066 283988294 617902564 387810195 324542598 454649444 88418776 935576433 389102352 555089960 922985984 229570321 961678382 224218209 199399209 389661394 827763976 298259677 524862201 10139274 942922788 450663848 784975727 876344697 824455000 357305013 76404602 526195409 821661906 346584403 493890830 412966960 346829423 587878215 328947611 656842464 844735601 398811403 770752139 746356212 172292546 866636821 284887346 531403854 765347330 720090895 504718458 357037835 820440816 122296678 408108388 124534914 989081211 964548872 114788486 31984526 479766949 678694142 643830364 723238093 333602989 335213049 868318185 845443585 308396703 944502209 657908930 5038423 874346596 951512029 618932010 867483953 682450947 226440282 432473097 84026759 392436956 7866511 729363642 552265730 676966061 842024886 820810778 735864216 613231539 591944611 142379756 45566111 561119791 130236827 118118145 867979329 585073121 627668574 254733164 224061411 64890548 908315236 383852775 639920275 458658224 14206596 931150945 926103003 245515869 581234604 542646438 889903650 252345208 756676973 532979019 986742783 633983403 820552102 159677879 448301328 1430572 261698048 3369409 255604256 913587710 977631715 791965153 737568929 111556858 233113407 965988369 228919494 96042451 361149857 624520663 78421213 367860783 110736906 957851460 103590979 104509082 425508844 388092702 106838207 584308322 300275967 826928837 913381540 718611788 656314078 685342841 150991226 401859586 492807739 899660564 130322067 965428090 966525727 990161775 421567155 478327377 569216628 943838702 489875535 838518530 945374858 606964479 556770593 85534183 64948986 220039928 637354549 615046669 556157072 495129236 332833435 713508212 808589411 441800661 850909388 597403140 758815510 401126985 661651285 873841824 507061730 44180435 467329440 203303725 728942568 997540225 567338190 735498398 589396908 655850977 235590851 414870001 712905739 761158209 290680146 834982216 146848244 194650859 755497605 642647686 969556473 229576693 404004692 989380734 321343436 609061932 950007162 788048119 594553414 832934079 226221680 834553059 983841341 903292627 196294196 263009739 935267147 282641412 384237930 929081317 796728135 162193485 727059770 715851374 467245642 384826747 413247643 18518797 443062419 971375397 120485384 99714351 101569115 462669097 311373436 710852912 184680234 494903155 846649645 705429023 773328442 985341213 245652100 612394826 22001458 131831702 214553624 842479451 558937160 6761572 278517054 261086246 553607418 208879389 155643134 383592494 364905516 212422527 938414916 564981617 231755615 95836488 39654043 545403289 915344559 551790762 237853817 521742437 144794039 242016151 730221828 70882015 314421445 751598456 800107582 781007765 347561416 196115720 80426604 174263560 936262242 339677990 980974087 587510911 768401492 217798724 686137797 903610739 849122250 153637291 173153115 602626941 624069079 758178411 905761764 759171454 566667907 500804500 973846630 199521585 506476523 417707573 404334387 314207609 718582298 345260254 968976565 628854638 955370844 244853302 2084527 746300887 313037895 516442871 483388105 533300849 108170751 149732203 773171416 206154749 236276885 301434716 486472038 937468126 355999464 54743904 459690282 507454421 867241372 513621250 133750531 857548416 999248153 700898215 18302756 615165277 777493412 918143813 933173011 674490873 55257028 639199493 610425979 841177465 388853817 303587702 91853968 988654904 802957201 387411174 552683701 599949529 455611584 90896875 182200288 937044055 457840964 826718054 783183174 936923429 238027056 222669586 787426273 94824986 433483715 832862387 353749972 441717830 608213896 722009959 64738554 257742728 355180518 277828699 550552530 761557073 801291251 428525951 441031390 11668021 824660100 792943396 102070459 852628205 621429796 749097893 268416411 912740967 940867720 351031465 485453243 33867694 306326510 185644751 555018856 132447222 957668047 998258882 14550704 45577439 827709582 77625006 748678551 652918093 894225513 660639003 165630577 529814822 553547929 185918754 788956130 282644713 129929511 633774110 915190023 740530231 199141417 857242985 645857041 801070729 30352619 115729527 461926339 916972996 49111653 168487172 360830325 475000276 188243981 216517072 814045671 701914582 948195133 926051531 506338880 145101953 846009820 849204015 238500281 996590672 581449621 495888011 73334933 8228677 586237707 748555450 708663642 67257075 821853782 258246541 735205652 391687503 340713767 718387130 393626238 753425455 407063269 551851563 806414633 784573616 936238698 919066940 833612695 832016760 908034146 760915793 820992645 549487544 350118232 873213018 569560406 235028540 982721745 16927024 304929656 358336005 679109159 727439466 117638166 28514846 762736668 428805558 365535811 621285920 436383850 76821149 597094742 423042206 886245918 359006849 452166783 37465182 2863330 703529147 93314348 440080164 748093353 227454975 197874192 998390902 836771914 980816269 841917395 152328873 584370496 872339194 334757951 60536449 715613385 589866703 835657009 940798057 93851523 900122842 421914982 415757998 853854536 873361113 151364154 474700580 217201188 80309721 943698035 798374077 966425870 146679695 258531786 286635273 506751084 198393167 908542353 631765169 182730222 735717434 453205128 113560824 835070778 143199658 653207047 233253765 639954577 162260928 468703025 314931346 379524694 806322374 639875873 370646643 273327207 641119284 885332133 573287034 700921965 883426060 902312689 35223400 748876921 495755481 15991976 445970469 398437555 855377259 222133482 88195543 574723396 269216681 966294971 863166046 496519737 996304806 920187214 662686669 666057475 767459097 527804788 274382253 742717088 757788887 256995209 277347096 327834836 628580495 760823182 602133750 507207582 749516268 191305320 314294703 938782613 791411090 363973107 544708828 697207465 936956086 675076894 334852798 690956188 226209129 267662846 523937104 399871201 59916790 144717578 494074715 574781846 717280768 155158372 510594943 584995167 617230041 472479511 128257660 249566902 628110088 240093875 945752646 631187091 169266156 96457817 86316786 496744649 252387573 325245293 430072426 307308117 121353241 184069994 404431873 294654035 808161511 304055008 311380395 311752718 417335379 62188173 701738476 215284083 321991376 372759160 687996254 688406054 793296544 535373886 192759267 82877515 81253835 959629808 276824667 164077306 51541778 570390444 940654361 182179154 704456328 145310173 317974470 903265978 239846212 346128347 614731666 932367284 48154792 607667813 746510744 113417734 296782562 407407720 654609749 172973785 323280895 956291529 388240287 275240264 297993135 902391806 59044934 903772112 666568846 725756207 177587910 588201593 164854693 374008256 838433585 932098277 709456845 27605406 204705289 341130574 712134136 161088918 213571612 47336150 867298220 491454878 354517 471578236 944975533 442020507 860848716 358015461 905658762 375893679 799444077 581533160 617371675 652818934 318050491 163462368 824481888 966937318 9052805 313710456 699919475 2456853 804518967 266004602 639682678 790459584 765276871 140481445 47367655 630030991 589960765 880360864 96489827 159851118 333237128 486260584 153899157 307284153 276830772 277613982 582785764 156002103 875766462 691541545 311542214 393867988 949480027 962525995 895017885 562393847 951538879 614271797 699379583 31651365 202343352 83203078 440434480 925469174 976967205 713298352 267236993 859906654 347383693 830576360 391204395 59340937 906935124 674764007 983503255 237346434 472800463 669902265 143773847 519143058 288759413 303838136 773318146 987987084 981454584 896882121 603108608 806276909 502229033 934148400 265957099 259822633 331795661 856560588 692887676 142108079 239539305 837445583 204203825 414152122 260865886 364273406 129446961 613475930 250681087 425858835 688472286 926532739 195379280 222122667 423534943 24780159 823943687 458258501 606072858 862929619 629795348 61090349 417074451 494665602 478885518 152096134 800711668 630805357 867200319 258768839 396361400 538813566 271759212 572707328 897153040 685898689 929090613 635817445 674727658 548048593 11293679 727830471 724424873 60415111 184355919 292380777 849290180 145255595 875961592 737096961 169928313 679872723 383038581 599913666 325594173 164433994 803199207 534938139 267889897 552608920 612383383 228880262 256707144 673853790 399126439 595313955 615920802 652386959 764861632 472753045 445107000 618416863 234292803 442365325 718595070 184775187 963867955 447822714 523447547 274366864 779314212 285299929 89106020 530279401 146179119 755836935 967646798 27889270 898852031 682428301 851615942 570212501 432632189 747824539 531076125 560902537 335092349 711782943 133674946 233003433 61030478 403745304 515779621 764821390 232234124 743335067 217406471 973509186 46954001 160809303 987805496 726278713 255381461 374147225 984968513 840594457 657889622 548590218 675724937 921342564 813826347 184126090 323207823 448180073 7118936 976333088 10825137 710737806 358569792 762620749 885781259 139414583 472903822 610457741 693994955 484351496 990543571 569677637 600092096 641440267 295364528 118320359 203189052 573689592 772396869 252437615 739866776 994906892 641828149 301581284 656012788 20839557 846123762 691770765 857405587 874217032 299508124 402401269 578245534 256133359 562443802 703204415 558694599 924729278 530984284 992066760 8393776 370476470 534575082 178149621 328009052 337665111 327837237 604502893 687679561 302489531 412479516 777177895 872295003 757753741 145600874 944658443 533915679 418131445 960103362 254205969 838784923 328224231 68782795 657906001 92639432 37240518 41677664 349525249 988554695 566506464 197098908 478091183 834327385 739203172 583340492 693916963 781979387 759970141 110674685 287889516 727636952 940818533 517011244 766926669 708881461 298619822 215278873 180460960 740606862 104384539 107093534 256122085 54360439 541269362 456743452 509282607 177643108 308498391 305160303 805517758 404821177 157646766 252426417 673654812 895211765 67529075 709809184 303615519 885698753 658350687 806661084 467149801 138453818 900540385 830229361 988772653 804705672 702021272 627203816 797784147 513641739 320495526 390557764 742986159 625107701 56721638 429157852 580846644 164526434 166968361 563886468 867972724 99352231 974648159 107426596 108241178 382891335 100419650 897665265 470635559 667249139 770350821 5714899 20988352 652255279 560680605 791552246 950039422 854496039 281870957 948902064 289056977 719272395 11525492 291621908 321976161 527774434 453167789 277214607 534849214 930071838 131444153 529250176 10645886 402972818 993534489 843115999 959136168 16806536 49010746 642443689 820717076 291938172 57115815 764122967 659494594 401947813 693342580 92932432 117562242 306484365 618837468 596062017 666816666 396002244 668033140 510814081 51333875 505045417 214199992 896571865 351271482 164566740 308277414 822698887 682459447 374027153 652193488 262366327 93523018 203689593 726051499 140730469 386518260 349209340 367615790 149540330 600769153 779159445 742746963 538010002 762552612 694469245 794610222 31337580 363727799 373246988 388296384 19256031 503743835 573384669 562821917 110796769 421608697 460544997 293635961 589207961 118349053 258298452 519314679 526194226 314634384 354435389 979000727 373590838 668534258 222370778 532837808 92914368 284088038 200821797 435826808 272773657 8266467 409576799 840340107 301120397 565436492 747620848 377398562 884697340 854370837 64165115 697054912 230133110 52122818 411193875 738162797 90943052 293773349 888821772 705538856 65666607 457393992 56083725 442040201 785515682 689859722 321528985 665895011 977625489 741168777 515733581 71017567 731309430 676077102 143091014 243405151 325773077 550690893 402612472 818300516 845834505 848634127 268805179 222907540 787165203 502090762 284499131 931594228 593347676 569886225 148025775 339417972 427068711 582307608 478039751 12450473 913792130 12432227 952102834 779398800 290840811 504692198 248562778 911847744 676340612 160990085 324166790 978783589 768841679 118390136 979130429 377169501 424026250 463345042 74076784 350004890 804538570 495386403 974594954 823686469 147795636 615295331 697783216 958832010 949588653 335956522 6083024 994151982 16287480 168661745 698268166 597453108 118826505 778795020 250287596 55899117 768996745 610348536 621235891 846561127 576304069 876610312 785132023 894048932 73995188 530432789 814591797 867634005 806380984 457616807 634878776 631629773 841899793 319672134 895283018 762052930 762760163 928455942 795552128 588258689 847929952 698119899 562806679 848309601 684936376 347516624 935683856 679747259 949580648 926942120 504489644 821453411 420647628 993002603 603466806 611085134 883426512 239348194 450175385 237072777 185808153 812732502 958338673 349571847 710625956 273870339 96789548 60866233 134548411 77836101 136894202 823934044 725990833 863873897 100930387 468014786 276650747 804527899 654622165 301596328 836039865 807937268 165167128 423712827 581638199 99666382 818640277 441028518 284533506 255141744 253594789 708074343 524521629 291552033 55981934 351525060 776494759 332996571 182588081 204917938 686883770 763556565 488151858 115162756 491934336 203176270 820274361 502789928 132005286 565896375 305536241 862055277 36853309 548800497 753652692 508640395 111127898 757689569 585686295 186975341 356147829 109254484 579787324 185814814 777520361 101689426 708498659 912889830 667875495 127937565 107803498 745692704 378720496 758025028 444112899 201511937 993903750 691867581 741993218 649507534 42482462 399023830 370590537 401590612 804703623 868739344 537570584 316599665 131465904 161262685 434705423 662382429 930226399 133936438 532783139 61728712 247331952 457769799 728536587 764524816 678190133 12487200 946078949 796367438 216468478 634012058 967850725 128638417 939980347 743567795 91865346 551201231 677016797 431510092 828530581 724189820 886390414 905287307 351778683 557370750 867900141 84270819 791413443 799269526 382857636 175782762 992411125 506938988 229918779 46667969 265212508 945836435 545093188 270445837 455102321 729862924 636789368 998705793 730538393 961573075 897282899 99787200 358377903 827296910 7385818 763897522 644255554 635270291 308398890 796268182 626768496 500514939 257396771 106013564 705514778 506257066 573939628 244175098 579782327 872328046 152158717 973294604 252557330 150790249 300454649 960481725 116092431 379138735 25734937 107576000 755993424 550741965 98229288 91496383 523424923 863337280 336846913 826950484 416879529 16114661 524982145 719944036 691922999 512975976 271703305 895939679 783598657 813391167 901317436 924050747 974615670 936569819 193772509 371201352 787991675 921403641 7352954 852863329 121362489 653779589 801749327 383602563 508259631 272834755 445248937 639714090 630645939 478220443 262075479 582449265 839684995 103953589 20362996 654417723 63575951 540008863 280873263 292565502 988849745 303107937 423158529 271956010 56741414 349477798 281081395 554802927 238299641 964290557 82483494 914698178 683878531 835051931 700058490 115167870 53246645 954295678 800339472 827857415 583286490 709386645 369187970 842566298 90382677 56282660 495491367 87451924 386806487 585009916 561684706 547291249 147235802 2331361 886235861 318163770 11516419 356335238 510133195 241899531 652628662 472357942 157718273 303591582 523665357 937621964 667441412 168232767 452788393 846535653 449120498 600093951 232880605 731870054 13735972 553265863 454306413 20881118 155932417 990596044 664363648 772034440 283444942 481431944 57798827 366170567 369207600 562555734 265716893 512888485 336516758 110538418 151255055 356442268 937074987 770267674 32408345 796001686 819746230 191973922 960737188 703494410 501659157 69497316 879962806 274719031 369154749 698134715 258846369 232842458 753453583 411860942 76669754 811016674 588439313 85412160 698793227 556696510 308159518 887147702 58623033 317639642 870185674 109983447 603264247 415381013 406168858 111987127 129629872 969374093 796993391 103176684 485980739 348875396 199732733 803229848 17693094 966592011 470928018 989533767 571099973 399888725 237529536 504459630 692289854 315503713 578228271 460778366 844972512 14173953 138649457 966176548 375962460 469828806 357151697 599617639 708371280 982902361 652760342 144553913 835546716 572824128 112708685 975547880 816512073 591181552 674213264 457485727 631329201 122699849 504755913 413460984 897636793 791967030 590048081 707934707 235720963 782036720 664486288 851771775 897273917 682173636 455037797 741468255 780555421 856752954 422934542 304964064 345586744 292512116 260608322 960067835 654726299 505879518 753328423 181035191 260972071 7430506 892797151 504119085 751689363 913313576 111078140 667451674 629867974 460042365 106543834 437179896 195429785 893089932 318111175 209398626 121692946 21315067 889439588 824878564 907748898 602447251 161586956 442827957 863199636 766794086 15816448 694073137 498538834 266429920 938610009 356901370 927153163 42656019 505674037 384963594 570537713 886814598 709440706 705777403 406728379 457606003 489187572 34837958 575386127 146064868 176270734 485680717 229332931 494327726 260300968 741280633 518890930 940155923 387423099 71633832 974571184 420360456 985286801 121207640 590529884 12564723 187893074 734207998 866047266 295087463 438119816 438462974 127437250 641361124 345102279 585168601 293736510 242599230 290081888 433950683 266857308 639947290 632500282 386243769 743397454 116940605 243759403 628487984 466352318 672820183 225732990 553798678 559668001 211427244 615535588 648974713 396769101 758830969 541751897 721722693 470261278 288937332 30444640 601507576 721498627 390208638 76980430 66216736 440143763 69238780 425849266 519498090 874180621 348867644 338658576 418278899 473008475 312288555 37871883 335158 561007474 995821530 649373066 570253570 457208150 483574144 967956625 986219357 697656436 973346999 39861105 129560328 526818322 546856070 530450548 58426410 629969964 745624202 315950423 858665079 307171758 739390592 774384357 633072360 742305318 963957320 711196029 542496902 791972026 457596416 697162292 957718246 530011832 737734759 175269486 956353659 380254239 125281837 772697384 488629085 317577407 381699396 201713424 492183260 781065260 317700810 1368579 505711746 322281270 490860419 162750862 514557666 279830424 773358081 39760316 63605840 129325751 55502880 234234150 203773411 978832161 745388386 142941645 135820608 633781868 962516041 724901530 718865020 424887300 611613528 547665571 947940018 914314890 832573929 889799058 845730380 287743862 500111736 234018842 593916124 682506130 870685078 964436214 394458560 630912050 588410737 877128006 641464325 499800379 88856540 748346382 963701161 268976379 456380045 82325436 674750706 765875620 984021696 58442264 648245475 960582723 158332258 443155167 367138586 150836730 239512502 838019187 682295168 444309409 919008672 336840180 66997892 619034817 139368754 216688112 583068182 685492071 430297371 652310478 305227837 916895133 471533696 899043140 683617815 595164167 673606229 664408507 35122022 373034751 25819852 83302771 578287506 198314481 773146655 561115237 76711628 933160399 855318698 441923279 58433501 677296740 217427796 119895222 213382342 825529026 368854277 593276872 460239211 509410547 673067752 789205454 210502846 758225229 927412425 858547298 115797609 808000335 859434238 475813075 237257126 13269604 874682684 833803672 833856905 932859919 685613271 321024257 355224130 423581273 628724360 404043058 431101342 88969229 100004495 157158757 466079677 242514061 42870526 134252096 437699818 727738741 448961178 522550495 246524671 795931146 614348700 567320618 416367343 346789185 188712499 33124252 214557315 204350124 853282587 446508155 459299336 413838219 578930299 795743151 469127592 70621761 801394436 598332213 392557489 306386639 154499221 98066346 594599452 74646403 485488657 50979287 722231442 39182959 682978140 310617280 990206099 447578002 851178237 601208592 59688095 260420963 148297034 878381310 148815286 722048234 226610465 397591276 632415210 411984908 64275728 250870613 306155320 881903224 848222725 845771597 837168659 170924676 203421020 504882619 653871260 998485158 671505738 939991663 393475638 123573081 550410524 196665166 920545391 858239580 811506288 263411791 999111577 490986423 748120473 313443526 503275892 841584535 513031370 717637006 545273520 875136472 528434195 695992468 449891033 972808365 448386214 720068275 401671935 400607299 827363782 864283537 135181371 162178573 577910618 851050998 117272747 239277881 921683958 19191952 912598034 920504109 269305153 302171980 388523053 193640157 578214209 729989387 998916387 229895341 563790321 69957145 977233844 60210301 435569381 734888588 256275884 524996886 236065716 61830738 50454147 73438821 350839902 29840279 314383727 306238806 371205812 63934856 193987412 110329790 349938485 557028106 264636443 433017845 339487781 731205190 140551188 599614149 241585642 977637603 909379543 496827366 608015687 867382267 880061744 441314697 378812423 754802359 486026832 952453021 366965980 666251302 912119866 771107239 153574084 61830664 286932976 39960817 71992811 195535678 408319207 548636830 539905799 85505954 323845041 916194233 83745129 692728433 72095330 341966506 379969188 781305647 99306762 217608063 105834896 643112125 799390971 882084842 591736146 663923632 72248751 194111787 907681420 639475050 650771791 176184027 895124641 352188158 472436969 900666528 990376813 54481335 525000554 96956442 78373898 194041519 75667409 63476500 619220338 738355371 331179209 445208467 50155708 846015540 488382814 588873789 414842530 347770990 774972504 540743342 438056806 144617107 484760415 674009854 75334003 236664886 452855260 206904160 127657115 324085408 608351368 514675135 159609762 495490718 50598058 669438456 568893473 87442220 791110332 632378350 553422657 757379185 201712260 164569078 995444370 639418524 747267762 703958837 510460120 384866234 652758515 99329149 269956110 94199898 859375222 907422435 577275770 488371885 463720909 467848519 792245954 709254862 721280113 30881925 819832381 933381562 104931933 368584919 843372061 502301897 884863163 923127215 247299061 897167925 990172656 442455526 902735856 966880498 642366803 940709453 969343968 240345061 810390221 604233869 852212901 456805905 171216835 61276913 297694717 142679111 823783817 192515670 16731648 973387592 862594340 438862861 895883382 838233971 420210803 607965877 118253135 200203636 165753994 739271154 806993296 664099261 968566620 626301951 213175067 694539503 79706332 463070044 761427185 828876821 427618471 211296250 134890663 612335806 408385393 241893865 684267183 833010892 354148102 581314321 516062386 674542096 235986894 945948461 865364777 36860135 194579435 140312965 483143654 715912146 142139437 631797397 9693726 930894603 31616453 380837529 488804393 61914185 100555933 229061781 626509815 684782371 624817699 875968338 547654397 29342698 871300240 400342549 132074068 107918417 172099554 183231772 539216298 114608802 845537702 978424994 316810760 433230375 443075583 701789885 577648941 364400984 766263799 336785299 618280670 598321370 764699563 622322810 865389386 547359883 702285293 711868154 772104460 654550272 915670778 679253970 181830102 334880203 779246257 431901479 327887786 876854972 397969503 446173282 723576546 383967358 564153293 403656266 157167778 828559483 610057037 986688273 386260232 830834479 331098897 85626820 912189977 423266512 579491504 669575085 252528908 630775360 302928128 176081101 220929625 333990088 324746879 857315790 133367534 572410087 219895552 717137475 472206420 679405016 815340688 565702552 820437512 467085403 7509960 337523581 740914725 80928099 382442226 566536854 20084173 450438383 575087595 681569596 351520102 312089544 315499277 779443540 155381012 461096740 120401389 791086758 573813113 520977178 235359747 302979504 967944348 825203189 173655380 393897566 295156751 212332836 632482885 35525681 964141949 4545 693772860 826063312 612640314 359911485 697331530 436995889 271966719 256712457 559429688 940517402 919775276 313445065 64241922 454535446 671920208 542793010 553349774 168973655 990709828 988720797 731129845 99165838 117835758 535532906 666435337 421984724 271999504 383213407 627363978 612551965 508917658 158864693 162862582 657449916 452206032 166950269 31666955 596931491 620193941 204141624 917244552 99964446 447452980 952625783 66498092 214242879 343263304 427205380 175625093 444179382 660835970 717887674 182184571 545346212 384681700 29932313 482533038 37935583 58221053 847893468 398690544 125240618 261001337 11012771 193771792 787247850 642262079 791909162 470777171 104792628 776741957 378942258 573328008 107822454 913373106 659739397 738016898 403846646 333191441 592098013 206140029 697516750 878921198 487614460 369828901 686294689 765750285 668872581 498444816 637113651 932209037 277929424 784634943 909689191 606328702 36090340 126802721 962403650 304519364 243583554 470264601 465183835 753580950 117051239 15495519 737001041 643211599 804353238 384234772 274384754 212471210 924559054 400564564 485568761 157059755 447187707 146497596 194767638 184386570 126905573 402007164 39743107 764260703 409409804 561327808 768681326 657799457 353739288 887489029 923733251 654666608 883171185 893078361 791342774 289447419 40468279 900686156 515840131 172191368 183356863 751762232 459304236 889016157 166269362 911365931 936597053 7932348 906999267 776565824 723047767 562778531 734338157 158313368 469464512 40615946 683582531 421199370 490982152 429110593 639093504 105314628 353916075 330866584 374266514 14325820 696223407 471703103 412780726 993181920 606249537 754082474 79719177 552504276 242787681 82559597 626448457 664145065 469128377 552017816 236044302 185817289 586157104 902721673 266993939 241626423 681494193 488263936 900473596 422046759 586086669 443863027 126567981 893696427 831542057 371591105 116216422 134632445 775299609 861956886 644631307 954269374 85477917 401709910 444213671 424373558 118712083 624984813 594941454 406546813 63187810 625542988 731378815 753554649 18430945 601445200 970075609 55104413 517273904 1859216 922236839 756216841 363369531 960928364 888296359 75630368 591454413 388904981 864650194 979978678 211167758 110118864 264815698 763124964 675049242 864578800 454232285 420563636 297781251 386907983 7582209 22104360 112804003 131287057 260272500 475192740 237390199 892311738 914117132 300623495 945694548 694408795 21733846 567059727 58903335 463626452 191861866 17701423 511518498 804640948 416123823 539282383 606500732 652003392 289062626 75325115 454330241 530936799 514593694 388690876 389866034 553670364 94942985 823885118 447395496 970953453 468381510 801440608 166680996 69726197 213817653 408590708 431293435 128482902 284782094 34966729 411040846 986587746 22339609 991611681 861659767 798065568 65223182 242988800 959115589 829352861 987384251 886136008 570485445 903094668 767183955 33100332 491677724 3775070 120433862 989074422 993737432 731068874 651358320 977981599 487443131 530440320 188128783 157805844 500687820 695671517 170472974 38330770 72956366 711260864 39253464 854383742 229276778 573481563 193141343 166402184 162590292 696792012 908611162 305242327 825358115 947455313 290584507 527089224 285650612 469832693 343834073 952641487 375650656 608206218 705036258 636540153 157181646 394389299 96991868 303340547 146561167 804275780 745540578 179647032 524087910 844641119 298774274 311224072 688466650 332557043 443709352 472594019 580366801 746365764 854264775 689779459 828223933 810282488 150857074 858459257 359035864 336943373 85632418 908080819 360615295 20236171 281346060 929269678 726101967 176748418 268181707 337404318 820668856 587455605 755259585 373985990 211566028 541375834 756657787 736960944 779170958 403703722 102586269 436880873 741125816 425745699 658049442 814217751 8608794 618176409 586516652 8316992 102220131 372908130 59320028 107208407 327165179 103302555 681968144 317240675 925261668 397523111 16761248 787117312 454382665 747884739 329386008 194514191 674888686 745504309 567349874 506845228 677197966 448841707 509161994 761644226 172709436 46360957 775302445 742350616 432015658 275481603 84112449 829075319 547267994 436970442 234909300 16711214 884547509 763034495 627594274 727300348 157108671 415901124 239358390 844151266 919188324 254259745 145203100 379429422 326235628 254112666 651975246 655802695 266900587 156920466 717866381 217547684 863448573 970106278 549146657 237058854 668068171 774512406 831605404 883216027 236712681 270930793 711575131 354834463 542873055 988410522 211274796 531300025 394238792 209769659 311167233 650273030 446888448 848847237 824163500 937413096 748635708 865517713 749843625 58593300 139095655 740171875 740899088 144671593 85938471 939220028 653083142 294903131 810785894 61741066 451715202 141980652 124328233 218949140 274848623 761974949 74659865 427400245 586469239 592043900 82501769 289142532 50638750 465791802 211294778 47331790 797712580 381729043 377482684 669083885 914927046 606643230 278464859 620127609 169236168 148092873 369311833 411465705 702227097 395356286 188234460 380775287 691824643 710679050 338977543 15497763 583732706 699410278 824698770 106139023 360170111 890827296 645871065 25949189 181181123 380901714 781520646 58712118 686294042 501252608 512288334 469933646 155629448 260884605 512168842 316211143 325104944 889932562 69823675 820571935 312786363 722629810 919424733 616163574 805023555 665769983 507296311 195889797 432016098 187188041 7902948 372878020 907507468 261883747 920144607 77449369 54027790 697349990 11710006 141156463 853115290 67250486 129829782 668974547 514390253 25824466 309032808 971994007 886978951 354472374 492909645 329771209 375609813 84875185 295060021 27554110 492742528 42761994 801172710 147072533 896264149 731437706 752868092 199251957 898700147 15333717 834164070 599754874 275050886 415226700 299877561 629659766 404240713 341350315 446656922 680931984 835903447 861388401 563688810 873202912 281771346 533521888 687031065 175702310 20727388 884526713 461724248 874581770 875318358 735694854 900587311 153691539 391918848 86329998 851154105 890898380 560809510 691468123 356182982 950696326 786093606 232747728 327254587 701102706 724315287 897634210 428613954 900210958 136853215 134126097 190730035 708737536 637978618 946167120 157576124 633708158 949848654 856985467 237064629 583925198 765133867 73455641 509620326 927345073 7597015 4817840 103342547 468086136 238520568 131744817 795195352 407040362 932077144 25780981 805958521 373746972 865893950 588317030 715235495 256874690 57157607 661003758 743939841 585782949 82343121 648827851 497085671 130515722 526804137 114624588 320002159 641311779 290851241 41196938 507632798 200763565 232896864 624992119 128764261 430890273 33811235 117377187 929726804 822924147 368049759 925739602 155544718 230869084 696139221 946445578 452748020 322083317 82321157 445012548 8751886 556612956 709136257 659093868 535853024 641180188 726536933 812546053 150321949 185384696 86845121 184094538 740552078 182970968 343912314 47930470 312804991 381458149 698619758 193235835 14705188 376424283 930078661 941144805 149036449 315770113 562384406 288292459 927297445 5374959 955463139 822663048 647815339 967868387 806514739 858271304 479274242 381873598 101615186 800099565 364601220 159981623 236760252 996980137 516554554 628957157 174231226 354524680 307647932 642296447 109521233 588078559 773195957 608315153 480475786 168372372 250442907 189764626 279167878 827107835 510145545 824518600 588662762 588897999 694035939 846784399 276616386 353741275 962774494 35653000 630052158 825106562 16706851 371099499 471289255 945046679 470473268 496850450 907020626 709620723 55914078 858270920 294186233 831587956 207744129 737316994 903741488 815909472 127046825 722379039 956043190 400367396 690399903 813071948 28848210 745975659 394016402 275302587 125599061 987807920 484452063 425686713 955764736 465164021 552092747 701736945 533187804 376317424 765626622 696060232 208983361 892809687 436946455 536976637 553864020 188192340 525776165 229992503 916068875 943639793 701825968 290828482 68209572 71979819 293961739 997117162 289017991 593233844 110717669 143360837 435548230 706313215 812647946 916247756 356792875 202674790 416890278 387897283 246313366 947210735 642509209 777296913 956060026 309841586 31966411 880980554 883634223 979277241 847017602 248425606 4484922 257277978 682654423 308807643 564528666 22094242 150208229 218997283 730616075 124317949 220520842 447988441 41210598 32763925 966664615 586503253 763881968 895429854 158751981 272308590 782866257 976441478 315033827 283263490 971681791 224609244 889966434 410307800 870693822 583009491 914726675 421011025 959805353 612354964 398735223 600655287 148632036 85323939 682422370 951416392 513966697 592164108 944480319 595318674 757038988 38487931 411313774 873693126 435729701 149947814 26586741 477891223 480860245 317720349 898746199 401446500 120074396 429631593 570482019 894499882 747130714 690513101 36389464 848805373 194659326 484844748 910162908 811307484 17355950 274639018 302927240 468233939 288534842 211924677 307307690 817991549 657002147 425613841 844858626 920617290 289180189 699023721 729774645 723970345 32793312 77109042 132743251 426053330 835109829 675311591 488262153 351765988 515564936 425726063 676376709 279494567 374993427 346451425 960477311 721197608 518766895 562992837 396520365 37492968 487589743 871172732 991814466 990753925 461233596 348679729 425308464 122990232 640633486 259097348 808774883 841568531 848232444 623325918 191460621 174486066 969888229 54052183 865382252 497864427 350017548 404392270 965872410 646417776 940649956 971924804 145513855 465147693 298502066 523335187 140302968 339737585 423834191 699179306 615533954 931753058 760742215 190717557 614845896 274123296 246086343 412224488 165929192 361106182 191448187 632224765 94302812 545274427 958373786 881920530 638746849 93451067 920294598 971835033 780894377 148882397 718406927 366430805 45235395 40748224 421993975 122536397 506854866 298478870 528575750 401191926 372488733 367540620 235287796 787126236 358489992 442708456 28433125 430363322 271073414 284420962 242603823 291001501 455066058 945661543 731997326 18108771 992613455 909715406 771137998 469175141 740906675 935020150 290831788 157483254 691451309 826969287 13656530 532839883 242134577 860100866 393547206 88320143 216718471 326576863 70556618 259613921 707046017 120342047 52777342 632423430 95284198 975436572 929402684 681193049 49583257 723725722 493873700 599567330 100802092 598762956 925137227 832712241 220885108 544927513 548099574 389537703 616270234 602106237 111461457 730324013 746445607 438078767 366271344 488228411 380841718 168670701 558620221 955468539 123036626 145466367 488974986 114664684 781917165 99155343 69351106 540049065 242948625 37868813 442612536 196187855 842920149 168675782 394861952 750225790 433868858 12837327 299811409 561173055 121388658 743224749 642455194 131427717 429594951 237389922 884198580 368991264 819382897 36922551 86917592 81431469 635174218 822848169 880611559 292341467 129555748 266574010 707996595 104305429 747934828 31068955 986032212 440224870 37350174 842486582 251406835 9169910 942386557 512751194 426052507 423500050 462981532 721086895 531374074 39848962 656927288 452823051 979049767 381326272 11061287 9847729 104915307 435185272 617576830 722921905 835961456 643459254 550853108 893068030 236979380 587653436 941071352 388388031 533237808 628844533 743323234 865524744 358014778 920592029 457556359 495839492 399836634 724704018 495345132 731979815 604906041 667850596 428099404 298222593 690422981 770172805 316086011 147524477 736208331 794151723 780413327 489718540 456373037 854093822 534345863 747296788 853640677 315969858 538329107 608347358 167119891 384712153 66414109 488956704 470846410 396253113 614039616 529154385 25659016 967159955 382791962 20984002 290569647 125338107 518355527 393849586 173192362 482374877 168598312 756006429 69658794 508726875 192249564 143999116 138039369 515009974 445262419 852921167 444245883 667411989 736903353 233550635 808963139 864734206 446647984 742900288 977606464 921042826 126995873 813213704 151336419 897315886 811347269 425685204 115110554 302055921 92793145 199463963 913778253 790199432 820412295 820085284 977231931 775178849 688308916 34195763 851778038 99924857 615530159 825332808 794346268 708205121 315361527 122026146 955214455 808339922 421361459 321412722 471741764 3623309 142297156 712741260 644534408 602304731 458427236 747279946 205813427 88707502 604633713 634978939 9902389 15271277 370892261 862550912 22762702 838151776 604696508 827441363 393034072 442498169 433257679 578273308 411750332 775548829 972499552 109489164 677911721 983802258 318798654 338234484 983155491 324312152 70526 416395107 408910629 117098073 423450983 644137301 464275237 850036507 856984163 17854188 809271016 418730120 203567836 954511298 117093210 27964403 295465101 615821137 522517738 630864148 3138501 829361121 184857880 414271466 121326176 232770855 592793162 311340143 649152720 30457466 964502711 220116568 447347648 335980755 586352738 481848490 258188908 911709069 172753428 360151913 12113718 488486837 122568997 807312793 103803515 561785973 921094536 466435022 35231292 369917731 468424164 139755026 332024810 588243032 829021653 303012073 47031942 165629152 674446022 660448671 436665589 457679105 522552978 17852365 432278137 695363832 609172850 152675638 661774836 982207203 88869041 735137487 25563109 435817882 113653900 511180428 102008390 223830003 724115193 219153188 438417610 969280674 622739156 332029880 522978415 357264086 133941164 231849 805040218 175475030 838555468 701706413 586352980 247835934 911497935 595089560 563474165 768372006 345973766 977255685 21261006 546275378 148293567 508603016 18664901 243385737 983888280 774261397 218846632 696594631 570445032 244013777 246699897 715662912 214259793 553281963 743400908 496721584 828337393 618044013 729607963 379185563 323382258 294409345 557076278 936752527 387965107 698878776 777319143 305173643 254700202 471053267 230546224 862328744 83851271 12224428 246282084 168791412 516986213 901252001 424950901 822628740 497791624 374571184 651011839 992333512 92919114 303937659 216598288 333706234 996622461 302980114 566685806 803848707 155766290 272195145 117599864 903032803 50992682 838377892 513811004 940960747 737411334 821780727 611449379 132736050 264756194 193219462 342633325 645499423 437870867 508650621 213773304 781403803 448636780 551821553 62572088 52087541 53990269 714728562 467708368 44790874 71560367 390438119 741116692 283969581 21025739 426582283 221805260 317560934 94066457 966051209 563355865 620380838 720076619 23797818 470337070 486554221 582510824 614074569 771832877 904451088 465888368 721188076 865254913 671691768 960263584 725290102 865264102 550282067 129069639 702063601 952488834 41083569 689711636 864229592 256994255 921415941 91639951 270625677 726176208 984164985 668365775 406749060 644836422 614287157 383148619 358064169 197908160 786825158 4721426 186905825 91978680 777034424 531920852 955935164 304213356 726843839 244673280 14839463 421286955 265383119 672893183 843772920 289729363 791523908 795368895 163227497 664591708 414088968 375722879 122025463 616389655 653278941 32881430 337820379 806170875 785575294 314894450 238749360 403332223 649572981 544314598 341451076 950409744 934861820 186133526 389100360 684506484 34679443 313221879 745314592 568947429 278857868 667482721 932888407 871279130 882047519 382391606 764255560 726171398 875559157 987337454 627469195 10374437 719210396 254861173 565749453 685050093 9660247 618822609 165712891 432375299 504290930 381961885 163691397 490062899 38727138 483531017 339260103 112234933 416143884 969363669 397289103 360556150 663642924 929557243 981770017 546188607 838971404 736665670 511422825 263211709 640161410 471558312 894699365 2059855 967490037 669811713 894699759 464851893 267771263 709980888 665626435 533507196 994034299 644891937 293172070 558062404 839426263 347362874 157979853 714573762 197683257 981917164 144251041 394614744 262306495 768966376 610098947 339924655 489915302 84191523 562212538 703647883 897256989 451228382 100255182 533922240 680076314 617935936 98732865 616165628 794061906 254048631 574962474 39394585 909603938 533680540 748586979 316673138 2653830 937768012 184380024 799139977 515699952 288110835 337317955 684581522 122217037 210204857 785900278 830159328 894179621 278400608 267689202 341071828 53901678 531998671 948224102 751485031 518113494 731597624 782404977 797786696 363998129 102839293 861308296 494859978 368514868 367044902 600192273 205742832 88352573 133025316 418444703 763311640 350399733 145787276 533830198 192925131 813218237 196682254 563825355 211674666 721631856 415715844 604609983 100010788 552058978 665506474 495865960 164233726 70259933 869923043 916770436 444574634 800721733 54619826 31646081 636292279 563211534 312707203 203624214 952397359 356019639 676550244 562077044 181310356 663938846 176300205 327924389 645920584 551474887 100425433 816426375 992455581 138314075 932217826 992100794 475974616 697418420 738095176 133735924 596767028 795362888 195999416 218063516 895716603 719802634 83153381 680439464 419698657 923491370 699350614 333535548 155585349 236128638 668481900 23058953 31369058 560272060 272516833 408142269 732084373 665129997 699878113 39495257 593447247 591226556 261271112 484856158 135780177 386035361 241020715 751756312 190399811 422691211 27694190 28510783 575026107 580245971 666456992 138731907 84889778 608591862 643755531 79198720 797391470 144119443 385516666 852119683 601145355 578335681 344856649 421287089 847622765 674883162 357146480 934997443 155217457 556800385 457937488 579091454 240883823 196503886 751418197 517101434 303016353 617323367 906348652 482316643 232574644 831372188 425639570 354413508 791370049 529422421 628730988 247890400 410140410 734152583 799965090 865779984 948551061 240203542 379619338 661450136 420320417 384408194 36745290 697880598 507715494 30955106 27746985 67237701 553378347 148271080 850370578 438997164 188797168 663721152 95321500 875676339 922545818 928375820 907075886 452684449 585665093 300297683 324804455 918741260 542358762 654911596 102265855 717731002 58493617 149192986 220045174 458324045 813756300 994507956 526847100 403219017 632301657 836486370 588164188 26172863 981772291 257502027 595279198 742144434 407163813 340291096 181812718 118930233 784291855 452230727 427844002 178731271 712606024 366909897 714319890 839603872 421766499 654794749 888666862 650884648 259578125 580023832 418686515 378331654 135032513 980630998 295356363 171877379 429356706 380724162 94227017 85794703 571864301 279735996 339677346 741469545 395056939 479115266 336825757 15027236 295245924 316451358 65364964 698579727 151424924 539484055 511209371 161567499 518288906 402222017 389119229 452539868 62521532 426339983 672905406 852999913 12720435 694892995 828103887 281315921 239780483 156191434 384094246 915512110 325932489 261073382 272181591 807833359 335941587 626186097 871606462 286099484 555723077 460989002 739237342 196989145 974935333 893590687 273050405 698561526 695043851 652921463 734931872 311430515 686358143 804111953 279574848 448257085 214943203 474884173 234854021 174115408 357543584 533689952 395252501 335867760 481196943 641285542 367312776 909398359 537187286 621738337 850303630 596985595 292837664 438675683 691558245 349940409 37366000 629433311 463392117 2588002 465211088 8719779 595112261 369208830 933170803 176248407 423085088 246597107 944375581 765717281 559566918 402908514 33551891 586144838 451046284 575860579 427254332 748018970 915898180 144471961 523973014 528084424 409068407 745618483 65045478 834607530 820339088 855465449 665841942 521403775 31595588 804585022 456355192 794385377 601519508 523390445 841492727 924156705 461898313 989182212 796195266 844635484 106105560 723515623 969903631 312113137 56975246 477759639 864503313 559641228 486411197 306975271 101942491 604093252 121078773 942421726 304722217 553073763 342706193 273811362 499658197 809836798 959228440 977926669 928187540 613769694 884617800 435660051 468883722 810817169 973233883 781063757 861618224 494809927 855284150 784489421 688507227 218424832 127460150 143045280 577631246 355211420 996211398 677232623 979137506 751731527 756271878 467523142 393760860 756061351 891239468 623516979 140028543 641418093 995964307 486441650 965204686 479725340 698775706 443189458 173775554 204754741 460953368 656110823 796572839 282140967 344936824 682253510 608243547 405885212 749423393 131820273 664912573 978001506 661185219 228446498 87141645 246771025 822180417 90678552 823441256 254305773 812732564 954788111 840817219 161816495 773874367 288739071 721236692 424210675 692315508 459411524 166146258 806663163 435428022 206218622 985664823 958376778 420693079 736003859 798294204 143823529 216775327 784560218 933435378 51016334 295455870 568952558 62163185 828834059 724798434 632589151 202203553 688739279 140926030 146162194 996000336 791766977 849927766 314831400 443021316 418672601 304235309 177292403 700426278 786632851 435893177 158313546 335700262 224103255 252196540 345181734 900914769 627143053 823615498 792482537 156375417 362971303 156995925 134126594 963019933 586384534 93005316 820668904 482004819 978445490 236798908 694014705 231220365 815050932 443815469 425206831 170657175 713703100 523380179 24971293 677561646 674044341 938314257 406300714 817042056 364997462 75258996 822269934 414641061 22812092 127253476 196366159 636957094 72939975 326680825 372883551 926383605 314601209 605883677 242364526 423253133 760638747 852642795 173767344 979996205 788220703 200912644 708916383 138962233 88619942 882113022 227694146 434957416 21092637 678593960 92253113 683372702 37761400 925127727 683606266 157498085 742390542 522769243 399196691 433269730 158388363 875860039 892220736 407707091 434902023 654666109 139197937 873881314 513551104 979790157 757588220 968756940 33410846 276308180 641801452 606811021 652070859 317417477 880822454 113783790 502427440 5531363 307636322 21490972 356537144 963060299 447853011 959678781 37853311 923200079 940755303 797224560 455736302 451074967 515708094 321447758 744042460 828426631 339539866 308669734 455808010 346970926 531893844 393470615 387567817 698197277 726072838 170217818 790375184 568199063 651147608 627011764 944301074 297234994 251358878 462960512 330106048 912446240 414358053 934230758 882572819 755674222 55732755 348053105 160430274 617331557 172327798 928871983 531596040 152356011 742404396 495766840 535226132 651063406 982658627 89631179 942858606 547570258 73541351 73564189 100557058 851898202 891066170 98134904 16350729 121158800 726252476 761441432 62436442 295418950 249551323 451757636 847117676 460490030 151177686 552542055 566534061 161897807 780285346 407917395 204208188 698733223 51109386 587658073 170531318 622760202 773982409 943958164 554085785 136023202 265246887 233141076 923796509 705947920 905816413 85249902 146837147 254786991 681322647 794310433 12357546 189883685 226890281 356281852 798730381 252483668 666140715 482907033 544693880 391910891 154714139 406490652 198232655 457878837 696092989 859516587 712176677 597301406 862947799 402614362 339558795 728409874 201959080 669800371 999889598 876626614 261616720 660693035 595236945 673803333 923872320 355206087 449279679 892152624 259356079 877256876 266172825 679156912 742387230 423251990 37210500 900722676 578043640 915715137 539305222 443119757 553803319 333959230 413529720 612436978 262798271 445960929 58357007 726419683 100632492 793563991 97993301 894180475 962498956 869537319 46866907 949888498 334506358 662928225 9087977 846783451 784867205 228962173 626174897 661182916 110962872 419284651 961417005 764448127 346140957 20079327 936039136 589152859 897554834 254027489 241859895 62411387 371636168 988704964 696434385 304427479 102546355 721658445 994719281 474283683 182053711 643347429 457873756 459805490 54732379 842575485 766120991 894688468 439041188 945277575 176494138 302112462 234397274 138167230 347261806 366914848 673705785 502662184 849021895 361497488 440149564 775464726 569362283 801049364 21284854 866738323 772528280 144490489 559024461 680061311 3307382 612858688 112740744 867870874 220527744 353749823 219698005 709821423 147192043 397089145 634029841 388569727 488831219 541593439 114347469 519417278 890386437 336360594 934888207 56124836 387170897 459236120 50621648 44559893 928830834 772610566 263406793 932429855 816823062 423890309 272424874 409934995 442903839 906232803 628185712 360063465 853031705 16807693 273454289 971022205 650890029 161388614 939258300 995842692 548299177 303535032 522079817 384530974 457341236 491186205 132454789 28888657 413323920 446361846 487236934 862816651 284308149 102491569 940347622 841706588 604122962 802854974 41972128 828613295 147968855 112121338 17331067 816717553 216191423 991874986 24806448 262099894 99481132 211193561 504931912 771516361 391772734 407877356 661783900 635025584 924859370 608841910 112349827 395237856 52146653 769370098 616381431 626629553 747524865 480812040 59468844 995206627 758027938 538603826 487199348 577628303 401776263 358264752 151252343 867893695 267633379 731347163 172029553 132210656 852248391 525480027 980954444 149365150 497253887 881354185 529205649 878929551 2745404 832884390 789863863 439339741 866173532 951607719 190802826 781958599 549834863 77396143 854542851 90966462 291526823 69923556 890982491 966331996 465145826 21103137 424833820 107522731 62030170 17716300 157789024 55622248 251962845 31210493 310784851 58195956 725840208 528629448 376628210 467140539 96819539 991163487 182500591 687583164 838859705 626254329 526290557 184620036 682001598 889516875 142418088 290120720 120326942 600920299 985182295 468051746 411346472 971975804 93674619 730600129 173520056 233754088 898643329 90769508 332019422 236012645 392609906 51926594 641199458 251529082 785790469 141796052 809561556 848652645 742184824 218067988 80536909 613419737 589437385 496411620 45861696 212611949 575131043 248212969 702436253 845225966 119637447 26226698 149672092 150277838 751271950 192479734 72002693 54020301 446402787 20131615 101786726 410740779 107849850 685786442 717622451 815319071 905732178 22719008 11329410 514974186 618338547 462047701 393345182 697742900 177032153 963525865 697070324 529817908 853945149 372229562 338519084 398622261 369846016 172665768 326959177 921439951 256966307 972666716 524931269 671287835 945002099 245811432 408917106 286951421 556088386 661401377 501238153 960762352 561968440 480987072 564085067 603595939 624237184 468176008 672336812 691758490 743685533 693211880 809862698 325280324 658107831 258192395 976689277 167265621 337045454 736140961 724894902 580891824 264988526 328652938 673145673 366447790 887346223 698352859 595585516 47065276 88060766 198285711 504818173 91040650 984515017 107112591 245456193 526174320 75108512 893820931 219651301 399760932 723649810 503744371 686677757 496655488 261893335 847080866 922653009 62789826 631738839 713773686 891378672 832208688 995468037 549662653 79745413 918343958 423162276 938194388 116993725 235677360 781574058 532605436 828900557 744394069 86273097 334789753 651122247 991844299 974318117 354366274 498851791 160505534 789034554 471426060 185893469 989345440 529803454 758778720 350219804 945012971 27178099 114010645 112388771 973896051 479429702 273420736 318101834 859364428 638068270 896929112 114955143 988085127 901198943 227049694 525714708 25710451 955847660 135948045 680350863 217735533 770765295 716680127 51969854 639561657 329699274 905880514 106363751 341520205 238549764 805614893 581757399 964772331 266167160 698851890 455185427 619886466 547421004 843075803 599767001 907461885 629000928 362433105 789575175 319205551 934962524 139309195 32322170 123658713 977371791 309158342 358021535 375589608 683335624 729042368 353982697 506055780 102181043 642878678 44765299 83660983 345000298 639301622 310761244 315447631 470515311 64035284 795113560 720281363 847725009 977999117 884835279 492446485 412788412 477591540 666817183 757192364 28554530 296156201 634975165 843952166 29235236 21697290 857659522 773769560 909883061 583492241 71907720 444460531 749980453 513427262 19286693 825514262 610660967 767568125 808857145 567331487 538441400 508595744 364997326 460814418 415629777 105076629 817482422 129577462 463999494 876178529 17673595 119244150 146683069 778821777 973172392 833503487 719422752 388709088 189009374 312028268 905479589 201055781 867477732 878407922 69706508 939943718 187272302 79440223 388395174 35231359 578310497 801141633 812428050 840474557 316972013 367390856 666691950 803335999 930130439 512308098 359033638 576356750 681369773 935428499 548299177 729561844 416941152 69430485 862468807 232890136 517802897 66570967 951826511 139702392 385966123 435447896 519651533 443871923 734872690 515353139 634073501 625590507 137571692 963623364 857278091 436793131 312783976 361379147 270118586 106560418 951699770 256836538 597489917 237171333 450557825 890209509 491494373 973782309 718561759 341249457 933118984 83729936 347256410 400201109 364170789 443837222 877336188 484119008 402118751 769549786 497871524 825858345 718674308 446768261 985472133 502483209 599760111 496116772 923415944 346847310 611740030 718103740 17290873 950629411 603397435 633239355 270817185 504986250 123070387 883348279 833653855 474871483 813808555 123893027 128103407 489338101 610128428 563640382 847968181 425879047 63503295 694911203 635838855 575457002 312822091 962061238 537509960 529532620 403517049 460391440 881906424 661477570 510040036 786544281 5518557 338220570 867471031 925828677 581010267 305912613 639425088 472246600 410112234 401199280 251709803 777132136 884516665 240767877 199432052 425070156 416090660 327132903 50488866 646005142 783929698 749009344 670394866 654139836 105749104 321415815 534679979 560373608 321242824 981247052 92001075 948597971 246084915 323170626 411305861 821812940 500715170 893819421 123933517 408982816 905401702 758912790 709331430 584386306 619868697 181494709 649815499 308221364 584139126 881013140 352490965 952604051 963500291 271501489 95326390 132799596 908351617 233361070 697489590 248929409 225008950 512164373 138765809 151829847 691773989 885624227 1786526 126496689 20078176 219470349 986952528 477253905 869717623 154520804 837430437 667989912 28605225 105150383 804860670 80636357 850074207 518310332 669918707 957697089 218249038 555378493 499803870 656736163 15030191 25878386 924949720 70925505 289836089 736929185 287042544 274902282 316608463 598794515 855379006 49311851 635297212 114758143 505378821 45706372 265656756 906856347 594558372 190106593 297290846 687630323 431217252 196694394 763216984 532211876 651737054 620151792 170648572 703096348 782385066 304056949 45306289 122862541 116269630 700795471 300751774 681459711 565343777 274499796 418315191 966854288 857123828 382305766 568385443 973054885 848629512 261734820 125602450 573766178 680550106 710973203 170416507 433288922 35751702 37427581 820018555 127268354 178634524 2985903 708754357 663696475 784310465 80781433 224805268 679017852 752401529 965197063 282065773 387029882 92170469 17581632 201817847 153836559 98146485 74993308 196744791 995856604 89405814 902414101 13799256 2361339 473588359 759961959 313636729 680380248 685308907 408967410 795033778 635401459 691838580 399527402 936019881 879405717 692850061 435576194 846281026 196319426 317496696 241893745 616859137 447798215 977598268 294566686 687910841 848622149 78232442 188257190 505283750 247623125 755074073 238732668 740428691 361995705 402622480 514102541 446478886 758962671 22903557 964268111 879408226 799187005 485780133 989897372 153514997 555536154 902633797 465463605 122798140 183585458 134714671 412539460 425519783 347451151 295866118 517077678 457452328 83125254 813716054 652460608 112820868 962499185 310001244 254232584 20178921 185092547 84166300 518246922 181048576 170948486 458488202 975602327 749199313 682181338 381869353 960321698 560384305 916238531 127856472 935560863 75237828 195602170 600487971 937727423 203194032 684852050 612472928 212498280 727511179 225711744 121554086 690919405 408161990 111774811 191205794 621341678 761904220 526016879 194461692 291468403 102839898 896783845 972392532 322407428 277302668 701992851 375753217 690472415 750394210 175793587 448594437 759950178 540525183 628522394 467810332 971244462 543435966 774511002 29474646 798849632 324001785 260667315 882555094 194063823 188645290 435410723 700353295 941336904 149500259 553215177 531757489 298061912 730585673 395603821 291869017 492392067 155316648 73997394 547675360 836277346 281292551 781854160 985506062 805945634 838212031 477362626 676800774 93336093 177502066 380952085 220621849 571899032 861857143 27326818 152807716 284254826 656699279 192883057 142882513 550300793 64639866 132891768 264175469 584114697 115353275 401316745 106684044 354076590 507135563 314367830 749692888 35211458 347020616 944929050 783954451 899388774 703233668 733221341 486899042 771199300 653076270 430879719 973193187 359762389 899014161 437500554 995119979 515221163 712822462 233313688 288254034 132909406 970136149 328153277 699782230 83407574 757364071 301562861 669776543 174348447 327447490 755473775 863386915 84598900 849831773 55570691 479141920 649325878 395354893 552366968 257534453 208840767 381716394 811302754 51952237 754251571 799529551 842824644 689639082 982663407 613481552 638236944 986362759 19126960 391735971 412411575 587666546 386630536 387180781 982595025 235543538 137456513 269046173 938515483 743733801 487405937 61060851 813373232 619370271 312767291 727734231 868488796 316116839 761985748 59089642 487399467 177226869 177352957 992715097 173451390 434376485 793195535 34114583 852111706 415906 521051083 249161518 472892447 375094550 884872876 189413992 884115125 996965345 649407556 347149854 65443374 695996499 662920191 873264865 81825501 253596577 16679050 953325299 514565820 325950366 640558405 373064876 378935730 49058936 666048481 908720592 184033566 830346315 995398762 52858229 155554578 162238778 825314401 151181750 826048674 968745036 466183543 786675438 549671734 498184900 55463518 807561061 14331555 190359334 173910237 503886850 624101668 996746234 525316525 563442364 195708742 979344178 287886721 411500989 641629012 263079032 536690714 697452568 228330521 990172054 579466875 929345313 597210345 704052955 656692154 788258720 930446432 118236934 870778604 672441073 437059248 509684233 670697299 134313041 201916659 805709330 983458326 875129268 148714841 565708245 210186867 765606749 756817381 479668781 923218870 588799379 86562851 781844746 824749058 293541741 397921174 834336179 991432304 471237096 758273856 179856076 959045817 830254537 854616542 897073759 170215641 763496648 232386244 613683848 922969986 278970177 482509377 824287785 787788261 87422575 305648594 962244013 352542988 393485305 578647114 390350182 877229327 626291840 533846108 212537949 987399245 812487295 619648759 13120471 914193941 232576696 81897371 305304826 655931678 804626756 925027640 562542244 163767477 616705989 751729274 569446173 194432207 175572176 403737916 238545640 960485950 344367416 41213395 221831926 435786425 656876376 479228246 888375814 145984404 998408013 515100003 125108836 961733752 533168851 283021711 267366690 172535676 674332517 246380172 434014813 897366141 540772323 113542193 155963776 774867231 69507019 545972488 452327059 826415967 447658491 565093327 904929276 931099886 899150100 201105606 828887064 357555316 303261921 336104895 847835695 921141401 833508177 999232768 148602028 649186047 279744521 844492084 172690320 450990566 327759301 407550655 688899585 422964937 565877461 593983526 324130083 91061050 213908842 533103158 311567905 731184476 381328441 463942064 416691359 867187454 409749101 847346580 567169657 732133914 252006576 96579113 276750897 205717853 494286617 670913087 840016975 523510646 492803667 526473699 188310976 205377061 468708263 175504078 537665115 684250498 999956249 597188956 959992686 795461444 147816436 335973876 954069427 96754254 949608439 189338051 43031330 755203171 761514711 791630510 706456796 34326141 211985642 766949858 931679655 822036077 486781996 390279485 593203566 290370834 175605994 379410725 41347213 463366943 588740891 372565630 975760678 287669787 134079803 420739192 898516573 19109977 194501580 231097929 954398625 126060805 356219643 909053579 227075393 662464084 354316148 918137830 627365807 181139718 58530723 980181319 817101671 225701683 479296116 575093708 118629136 170213104 808623477 613385223 106341323 748449796 960431134 311795346 466819860 190731522 461699132 515962054 407561334 31016210 768013054 994214177 402889953 825832608 198879847 957832245 1708402 594408368 129391818 791397606 868081002 472538322 773183739 188598992 285012940 145357476 708075419 572688801 766862841 616382842 313369978 501379445 695969631 278560564 936891034 575375622 187161338 641345383 814308545 24154943 370404218 552155175 896602891 920541318 953733496 261621611 580331205 997478949 630170630 434425866 202384253 882473681 499123394 429115096 127530085 663410855 489729239 390348718 608525489 546331262 118248041 357726201 636702415 601045824 507742850 448905753 250704415 955010729 120236071 365442940 39100469 779177922 48534675 144994063 689336771 341013684 877632948 388075281 803058629 25788072 739201210 219773539 606828331 857722382 124913004 279671958 716388653 242435216 908356277 113511470 734052541 92270563 680154395 176924792 953124627 990196319 1157026 610597015 908652725 818254044 197155432 216735750 727054740 2932003 987891515 468188122 767109604 621075778 521770124 746414456 156413133 546405271 296403103 562432722 291146044 98910616 799181472 930271060 29092563 909941706 931252110 922750992 244130107 978290524 350092966 643543094 943971435 495249907 646068669 160063319 866926989 406576640 777026926 22112955 968317666 60729329 47751802 639023322 725853487 159079947 599109643 979886981 642105678 559034482 127486119 862445594 430474916 703195011 465964093 674208306 300101472 899394418 521193197 741453971 28879767 996846108 363798320 80877305 123803112 457392397 876608131 109460010 433680072 869585773 506979217 344053125 879958677 947714987 511220692 693498943 967308725 431303112 675867477 372987648 642258022 422654839 692923626 992369246 914236595 418219299 895709120 417887488 448644704 286356780 215221151 360303575 765154748 401085424 566749403 382349294 881999018 580618526 912880799 73547217 346805788 299653939 323386498 202399193 587119626 345875773 723513423 860192713 710629838 696876818 61347966 759465387 261686737 660543879 817975680 605285710 273610633 943120521 139865170 563589206 993321680 110321362 286301537 15876372 160226860 19816122 824763529 888000864 729075902 478076997 531979230 361499989 471936940 871845829 113814717 572032617 645315452 996782359 823006030 798125894 235238945 301656328 981683673 411034020 353985662 684796662 762843752 682101425 313525843 524934967 993095263 452441146 743429375 476946715 461276036 255425605 111888871 622773511 695887983 429962920 61159300 188979096 703544457 133197984 587040175 866467465 493331485 72300011 284060105 402265661 833095679 173758674 231823356 150239440 32550957 274509910 299028719 783052442 182252874 43791260 355338802 742924462 202797441 356527222 434136680 433549657 667766341 648954145 94093485 209320078 253063791 166622207 644861016 877520528 664507511 935425476 784690238 914732374 321169250 261159467 392016002 937522178 891056204 509424888 438211444 681195198 733070641 769711532 785504504 28065047 904240395 759140588 466120135 431147577 741943286 945412820 828808072 923669773 762163875 946746707 426707222 404093054 411390840 126803403 332599911 887565012 835136961 706881531 40117589 412017916 364616400 976594682 482539525 149196361 207800822 974704128 519462356 389672163 982935579 436415674 153889018 871651031 278087232 317709209 957684261 346771644 780613388 671119000 681080035 234742797 952144518 760067115 337962355 439801119 525518133 323125760 364763507 74614470 621259360 533416392 392450726 479369370 423983264 296112514 817428263 988112612 965922969 982358842 373450328 811530146 761364062 866856206 821271896 676822532 518027532 507674337 360683741 278299748 862698445 273495096 101334087 386513475 547145321 402315455 706304439 625102148 581286362 389238846 491944024 149118420 483491608 411811834 157670711 782720681 526863637 412075275 124926396 791526740 2067652 903213322 128769800 444380148 707093265 111933533 59701887 88016510 618604013 713364603 294133774 379782474 363266697 440795626 983873057 206456117 392394696 865607874 93480783 544814024 496322718 254722123 47945722 566123486 505202674 462693799 561903999 708884890 611923148 961687475 123160436 41005517 678084604 836701341 745361716 268418558 965457199 455448485 164719959 10432161 855095862 402519468 910884948 483887880 405136004 245609538 601956337 945532487 159302361 213303379 514038 957083368 86758587 332798929 795565154 728384231 201710425 74307997 978034393 481664842 607187182 242809030 570473224 799309055 943193674 654877655 133961447 460303795 113112547 249608386 119533586 670455062 279024984 957984875 983406197 525767551 526195877 463063284 439327016 782845852 175256906 958704897 855653559 33880920 343931236 759646417 845902944 88871620 645982003 966681196 134865842 116285371 360583909 187568308 743320524 433222848 597929699 583305134 818467734 905942741 742007844 480889644 412734310 68470847 565422984 564822402 611754375 320976676 405980854 643948644 532468124 89977188 921097079 851210422 380046118 587853414 72638896 450819514 303608591 243589226 976167424 874430955 106351836 595265089 259319988 639173196 949811501 821937360 445415121 261486435 11845282 982967063 562610115 897769635 611391959 318079191 314320319 298150959 471604948 319394389 5866892 132968199 512270076 248958291 276626183 423580771 234954022 525862192 466705929 5414930 338828757 225870996 560260847 23164119 531049812 296616189 935385482 226026085 150505921 942160154 553422094 657883593 546968329 169721563 111457781 903417156 557146046 34212011 745624740 138187194 523319321 361521041 352095980 390493954 476672281 344540220 879574726 411017808 209374596 299523226 857122991 549951390 883431053 846378023 280591868 610321906 43152876 818425301 254266696 159539929 601510892 569938895 78942425 977153089 343288474 194628000 163689208 821343067 652690415 664229404 111114709 64242954 303555007 663289168 43189462 670664306 20439247 962908273 918425271 449082553 579327142 119307140 616339917 362117178 137758919 921605210 296803123 63889749 280446653 788428611 349407345 761842110 615320371 680777231 293986154 4894060 23557654 374798372 672346167 401147941 852917057 679516780 538733546 747352535 234077216 327394114 275797861 236933883 425832327 137065292 468686236 534683527 454804987 634840474 553199199 126137 402339795 443340736 99543045 254045448 247796542 459731659 380909547 945854190 331750983 146434278 555592919 49722072 697898326 894611123 273086310 896652231 961305970 544800061 719451979 318179848 217738891 354782203 181914313 850899325 730152923 634528961 615261352 611246834 610230144 172616398 461537184 981292057 439794725 869820895 163449456 104750114 341258822 152825099 186506520 957767025 100157939 407233861 315653270 126215688 325351181 553705724 707596974 63222925 966883772 409109701 260182594 30682029 949925994 708122000 638163058 590108809 766333854 197549600 165818926 140264288 692585118 802936669 30088632 937990467 276270030 833158046 415900502 807274108 434047132 126909178 17197879 597273763 278006849 783922641 301265007 467658956 396061531 974570905 525484531 723822447 56935427 54865855 360696228 256071212 988009746 384978521 22316145 688052531 944495912 816042586 762946777 158358334 218861598 711394105 857059963 525193118 360508981 357825920 910141755 170737666 525621275 999649694 690844367 417121169 461687807 909320109 712658624 197809455 335637087 892780632 139983833 980076313 104068858 553274153 611025027 646073413 159455200 165475159 811952408 135477710 395680576 44214246 51631309 826133608 825390208 261169574 189317849 58148580 125012944 67549255 557436571 545827416 455091227 163488835 949229335 546565022 121140817 733441012 159096189 333334606 660052486 501353260 516485590 687233663 441008192 808407527 364827822 135778591 628543712 211780018 171496747 439808781 324536660 720201983 509090625 516528625 365018640 1908654 52044059 157805886 287371727 997199099 660645379 308561019 389251575 169202200 417645711 924314768 423007768 254228302 710376653 534848396 810161449 802901868 343794158 684934618 233057575 998837223 266566689 94083356 999873944 673622991 975286273 66610209 930875694 316710252 133439256 742501054 402729549 38809272 638093989 689652469 246339280 494106609 560185226 76982384 492420243 726718045 68170292 956659304 587825690 163407595 687366817 152853649 260860318 256416242 500918128 829307339 250977959 914946957 336399837 863140507 790527210 145505201 364193113 695968123 461256875 712104139 670989390 779283106 567058448 956353382 508979109 687016664 779146367 921513188 712196289 333357819 873081418 854433615 418455834 226719565 261014715 234092859 431916276 795041235 525345426 52093119 328999516 187798435 314550004 261813992 189573018 185488836 498514013 68757364 953302385 668410182 511197182 6915501 508544779 910595145 646301336 954794084 931805849 259357265 402427442 644532229 392472051 847885106 231580893 350113263 937933036 528589807 986337619 237183563 809953396 331081124 83355479 143626709 645201432 450226465 758297058 479896094 154493020 397248988 39153608 867713965 854476036 293188545 18408690 444053778 312654074 391727745 593499627 537555935 460975865 484846918 613832292 583980046 770243761 51624486 344901506 446133519 547699701 863613089 910450777 4591745 567500658 630057298 761734735 224051603 491324922 677633904 831168324 148902978 891095953 224080229 115910484 263200824 661144526 631392046 96516062 530149112 371649112 689788393 300959115 313565268 396164415 362964579 732754032 700283510 92163767 130981778 750010191 925030441 401831191 140422831 957053105 781540346 286042928 151638098 693055852 217895476 930348667 698143090 505117963 248771333 717498869 304261504 28290353 423726617 220587267 728168135 412651206 345478705 770502713 583539309 292062828 864477495 833193947 713301662 787843204 920830420 834242249 466850707 892874521 4233282 255090344 290311461 717834050 33058507 137031050 965962486 178767320 121771280 591767026 121371136 477069309 700674804 293963258 137907277 913317616 136838749 929410142 675193322 182785347 476929175 154352108 413753748 97985868 542165273 821349512 746996609 962973028 70869772 279122912 642779261 609759716 369876774 392097736 948873585 964245136 890606062 38409450 342316104 922111269 157421770 76155730 456626934 633901747 466748374 412208030 310618843 857422808 859222201 152927717 733263638 768378536 148160027 357159391 335597059 512882991 194136342 532662271 903655086 25437724 97433076 55291059 717369530 465272076 77603563 808435713 347131467 947990223 271649570 544460986 384997390 57925832 737025181 319338176 839763543 229771713 774799310 718406207 766100283 100153498 741268212 490542128 102053491 879739734 974551548 11062950 627300419 771708715 529030525 988721572 996985187 270102844 140535527 273804894 588862850 692292550 336339331 604382549 198857226 638437130 25336452 717333740 349598098 935242020 516708542 318218279 700712910 389184979 40525552 757329483 112283584 372447441 791919359 642445470 599641502 304606157 364410816 480581839 74775023 796317310 471978018 688725480 77911686 865642402 314622672 883348226 381617716 168736323 394769317 119271205 980270671 278820887 535111972 815800291 974636296 245372331 130608863 614311137 867075241 464455471 151721037 964096349 160532048 262734569 879609783 68788101 680983212 833661667 762818364 275176147 877761969 740573588 366488043 922003274 347799881 199776663 246593688 831027066 95854168 695931969 168477656 452468247 834020638 632820890 343294580 697030571 252597054 314472979 566312459 19375643 327132442 359882718 43519232 533836929 693049145 943741225 22291638 487575084 677405853 472460699 118874304 21790786 282055277 713155994 597116085 811833207 93917820 240144691 753501018 594338338 372482602 55973057 908503168 111849151 930226725 286564208 230761271 520364540 793955055 146070036 475051375 933915733 657799417 481526214 334425255 913752875 478095302 389535555 254619774 314680980 675769060 331299426 923583629 783073132 33746747 325957322 220498933 151898793 404412806 484853037 908992615 455932567 635552617 367172101 94382316 859833116 482110956 415958968 776203848 42205272 150695464 216273955 426146809 70194249 330029293 652840617 167810678 214639418 150639406 932035089 970902971 412869432 876809370 659987192 652724196 866285211 127487739 901341526 127483703 298537120 614214433 511509642 178735170 573956561 5860256 164469191 427567199 321736717 60304613 696476312 479300113 252724971 656966079 709458638 638028962 391298455 64076946 551082713 587081386 781842466 289369922 570013914 232264953 106082762 431003270 832112384 104291905 197370210 970974056 447516788 212837967 323512851 392344752 460677425 840929631 724828644 571469565 788095214 833206158 68501699 429418555 178960927 937234627 159568728 393264621 366893067 681417308 693237029 885009552 51161605 218249681 918717926 596840235 706908300 33698350 723960010 142951155 826638358 485500197 486604096 680649882 107681506 188966615 713198512 413559196 918530345 640495146 342533381 444309053 864648593 922493574 818644585 99168016 817247864 645479800 383399580 653872632 977648732 255113827 634214840 398036149 717278944 680165337 534846427 338213435 47344493 390286357 540900324 169315931 486657695 996107944 681234597 625328213 190346741 775167279 24197343 715374628 401202376 558614313 221075321 431295474 763526574 629030780 423598962 440793561 953401511 983255596 431306447 860124774 304617294 364647006 398864678 478622657 968005350 283409195 442814060 895115705 198389789 637614363 964200788 339611530 437778718 289040737 17702656 26811361 777211531 843253706 699688619 871704384 351514500 84827757 481933214 575338354 862659195 247126660 48462646 696039424 795077365 520086822 766968360 369502585 643684633 415831781 295797649 52958094 141582890 636676167 222756959 559038208 607485923 543384171 439894067 648878701 683721326 774361685 602535212 494915858 758645678 109024440 171548784 134449814 932298836 469532696 916874357 548257251 524951453 695774968 633781804 163579023 233599782 760182405 608839188 696780836 255006783 691742919 198321586 225336226 255046458 440056823 440378777 536782241 916356596 841507336 18899521 492774389 800232039 533604614 765057939 818807773 924333536 247573313 339007204 949646609 173923321 886661530 185309555 322125869 72972351 484345684 22794946 53197704 240541247 362117243 244105291 664049787 942419819 96826185 632061158 867379874 891993843 356150201 813248548 251659324 916341086 476844935 906429373 334779173 557981562 879045622 838545275 221268300 96134853 165693736 302634177 385163490 63181575 79178890 885820555 80817623 222674247 890570681 524294290 363073731 923372617 160104494 637430858 894507200 286048713 415500797 187473440 556167978 341971638 640853467 999419276 3595510 47490189 616499416 635260983 966954654 340879821 738310017 654153158 377154045 845190979 410480122 317687799 256269976 97918206 973755726 597550487 326514915 973760388 239981815 808134398 538888560 720981898 638105620 283834024 915195059 462391011 761447501 831546896 39891301 932265147 625232881 64873132 72518925 640255314 386666719 676261643 240436184 440120969 727747167 517752538 188113656 933282273 817721423 794275727 476266863 435719699 147806632 265228531 137940035 572066790 760574542 274655705 73287739 680491845 195372202 137760151 851608352 194424214 291333269 841333511 113736725 580223740 358459118 412375898 411592811 608244136 812377140 475421318 885393995 672658643 381678463 845067377 650283622 635781036 58228937 549182292 999318074 312569445 528618970 977960297 315129519 635803548 480954899 863338365 839365747 176755303 139067866 982467041 572894828 462567476 434109004 577585296 289964990 415055178 274317903 97593274 758272867 115172610 804525215 111549093 686430308 475246288 763318767 583167067 991379376 790940976 965334203 272767433 204291891 622860974 672458697 950005164 865030314 772514861 591883933 518797135 961408051 632668913 156785348 502469908 852658914 421825719 491959829 597902468 805909170 411895710 302805065 146637281 131096969 957862744 920003335 391395437 143333947 232774495 876288065 55355124 845508744 760891927 162287109 473629146 389266943 87217065 449718707 329040459 186749293 472882389 654725523 125038053 757748576 445454894 126591972 893588082 513194006 505602233 408806547 248372618 452443752 523406345 854674791 908032171 394073339 385408260 922933861 902389160 912623238 790715965 511520025 854736837 876462278 443886848 362722609 362468471 255035867 852886886 827176788 789106248 479021607 899090563 379248000 31108404 15705296 341839922 959852967 100589716 262203650 494590015 477031470 454058673 786077804 510619278 355074249 464165988 589319282 752659628 417770263 386156247 185940282 31078982 499000386 997580754 786014955 173137610 784125281 247554263 498775951 837765591 854929158 209849220 50181814 772206828 691875801 811591774 634429545 904266295 399342127 333448815 415129948 109273064 499709867 666805723 35035548 544297379 183311751 949130156 394169184 720395857 116317951 279205202 191110349 108912332 38490678 972609653 455731074 710985287 36317515 404961742 681661058 517965404 933555543 422118042 122141505 931367317 341512015 219869895 688032511 313248148 990274803 21667762 843871376 278524252 775829875 706527864 770358092 454178940 507611768 293354656 51094377 814009949 702801412 641462573 698410842 925932217 342671241 687435405 882704741 923334779 412837695 737940402 36802468 626124348 691096892 669007960 757298132 194368637 696111845 685003732 574571796 897647761 641388698 471754691 306157695 496229472 862134705 927979871 802162501 753844880 369567997 265300997 186296959 391748328 778693534 301859526 112476154 770096147 19568283 510892912 278150020 855395139 156007120 86039395 864776416 988892730 334475420 917937991 40502277 307504560 579642935 882269148 1233855 934721493 316097753 621482576 228459947 651147729 403222375 595778043 63595650 577899412 987131361 385122351 913146438 983934964 917237730 317528719 833814989 355084320 336849326 438039374 940444986 48802760 225648304 380722412 86063447 702793126 86433129 990774853 451048360 64825531 130272708 642858404 316215384 112973780 148275758 239570799 140620890 560956631 220549486 406261540 89063299 685014026 516638243 740596786 599892727 97147028 394334750 317432538 442246932 428339492 74905991 998610767 52673758 239802443 939882622 607155517 66844061 545086782 585851205 803116004 266295502 632524627 159325004 599442688 457074661 657365727 461327113 749971835 189877803 85941426 84156818 478354723 51903844 320331924 191264173 222500802 557639938 918463916 457959332 113772584 383879153 61162222 814146695 380489908 434758850 146910526 901903321 26831378 664282102 669620821 181984358 736723655 659237464 707021646 312044350 214500007 551102843 824058495 366141811 236453377 816856820 445226125 523907966 365617354 774846479 224676975 671821779 304421960 124660877 763724941 233599801 475295444 604612244 643593764 748276967 732308098 573032826 439130148 493241316 793619223 611057324 850582031 566582671 302436786 367312777 102534807 219039808 17216001 728410213 794692891 787249697 375522991 386163499 294997153 146530707 746898449 411970261 953378803 532346490 51337915 846608931 809777554 709250785 918569019 881963207 233975165 500264906 256839798 154631206 10086282 335669144 290154918 139652755 283530963 717303612 252171823 909727583 641105768 523852558 895272168 210881937 219402964 815528403 87391809 762258079 850263679 359060123 246188658 34454432 603730646 564799269 329438083 410281621 642566603 254602292 124199219 807090118 835182779 484698811 174737602 681455443 505189243 792224316 333352019 197030088 36972026 589766022 636732670 744025670 626661258 79090909 275937595 772438594 511979626 517530535 520479660 528945312 893306601 666639435 735234832 919841452 35892928 21233504 786948975 657708941 653003716 88465719 500518080 438986197 196568812 347274635 10283902 138440852 269321272 64587262 754594698 513322819 394141095 681713546 120591388 917523628 443461504 988471175 216943839 676485810 41527279 420913863 626067063 514372050 289878000 557710764 497293447 819054195 797403770 981314194 70743135 8561410 253286610 947485529 702703289 182389017 786824162 605390960 526579807 660363420 947960855 548402339 56046537 345994251 660539959 490295257 112714725 510516820 555809843 433927578 968322745 541656335 778284472 25204993 776931188 309847339 721264232 270970959 36690247 191660667 83144886 824899552 942334240 666385082 283641003 651282880 242109716 332660114 27920916 757444522 2373429 722192203 340724625 111310196 128040482 586634640 438339565 495934149 369178944 466224538 418552764 989290523 721010867 737037476 209368128 182487702 876340595 2012455 377092056 534050546 519657335 262727128 531939440 887026826 315980214 939545517 27941535 819223315 260736017 531495200 144310960 111827761 673424424 310458785 120235836 430307500 980806345 919939929 11315812 306244078 672011113 633376434 878728078 947898213 473222456 613249172 562679007 486088974 183655911 702555655 207432087 811768590 363032451 561915810 573604239 753352315 945243013 646411355 472262317 471947342 606781769 786609376 975447667 686861952 149489739 471120529 387351622 116555876 922960469 333062692 180460402 67294415 722479374 688119 341169261 269654782 315751011 392565818 433318041 464638131 595626642 13968422 116727593 654355000 70411328 996396256 650684392 687124423 794681261 940738036 796810061 599110336 874947347 578566419 660779759 598442016 686793601 509152473 653466237 332667675 623682610 325575641 125221098 634833858 355023193 326578011 464623065 386740864 781824187 469388825 380616012 729903436 237365432 227890287 674227460 391015805 35035574 401737484 140367224 506488209 28407775 943851760 310702277 510925745 487786877 139256612 685339957 162850521 513780391 366784533 11380633 289308562 397472459 183220387 187041382 457041129 675903293 197275846 334252412 517660262 746820310 740316310 352392445 731471887 727710292 843975305 274834357 138079296 143002709 530179456 966994386 926512725 885894921 178513274 518454074 537907775 331938118 710713009 75721244 985292387 409273523 927710627 866476847 33796306 858217878 488000775 158279831 4872530 596583940 706741867 264135871 137613613 815775603 651783157 938323457 50370641 359187175 725410044 980948861 491606324 624749891 550067639 994332182 564122520 894868815 510498487 368803583 631136032 76942805 595851605 143387623 434163243 87891910 483796697 77555073 688266524 739807797 754666560 829236465 286038085 833547457 715814236 882774920 749442916 32936330 747587711 618665951 104158229 647724934 740403775 162243227 443170409 967323297 809745540 166660803 524847437 665905940 272453984 90576484 291674460 781234015 533457279 133558819 690521271 743747663 392112706 896234769 657691585 374470983 87133558 372796477 50055571 297631331 414180807 78150814 568390602 393274056 4230888 610833916 51515053 181315326 393246702 334054498 243596352 838522028 933084100 961325662 137128392 271916325 902660062 513682468 682736659 686579231 204293680 194656423 328901311 249258018 400563727 430377001 497014397 324862800 8048030 138477443 694998948 534747855 631837994 546831761 961839979 661999742 371360598 726087215 19207055 356885782 782860405 329729095 923686697 938883507 245272095 43480958 925768752 897733943 451363950 618857158 116548618 585820769 49895708 5069676 431598528 576485307 783943644 832021301 790836091 718606592 590268727 82437146 575495141 543227661 568329998 146027243 137057057 406531141 803564994 298397756 836213167 602889051 210118975 208252127 194411924 776624805 671892134 958059782 665821288 743716124 703655754 876110247 589064103 744038851 886077941 918064336 998883806 968506896 530765151 160465771 657168741 651842415 132149596 256325524 896205885 451222815 575569711 831813742 580440771 612156508 72644527 670698757 685468509 28736587 422529758 433782008 502200705 964868655 52659146 456448480 226541122 926398129 940052664 736458655 190588074 964599300 941048207 22877224 914026183 956937165 169470248 553645392 701267575 915673819 655192046 89024007 956680084 226856320 574672995 759687249 118735236 861689796 406316418 887732708 300601534 705737529 199146547 734313152 404370276 602936291 244363094 646636043 855698767 29214497 782280587 765434625 246565667 651918266 583516013 140533334 100407635 270366451 921466521 540391206 8073932 741407412 805561506 597627704 900517781 823420665 142671926 774754605 963304378 92180848 108366476 953304263 441495005 893294291 662568210 750000652 825861717 867756836 175071952 90121364 137448316 714769051 878793332 525388969 108436261 708308039 449119770 353698944 814252088 375578103 210180965 434525397 443928879 764871122 979211367 288147871 164934967 38152735 617480931 156788985 493250367 170826966 460312379 923123092 581109665 685211221 875429163 277439318 318187243 292773623 523580514 458243995 979273941 989103169 230472809 134674429 547776231 874888271 334307646 855020674 522012426 363731860 723917739 716078014 782765069 438321703 782141774 274642369 626212928 958611884 620046682 138641043 90942978 833464347 390918456 363873839 36064567 176283681 715066432 796272710 362109888 23324798 703654866 273169851 342351322 85196113 646625446 380307657 125544082 204302695 62645904 768005042 701944211 185627800 958191356 225355324 405019986 515931799 498331614 912753384 328695995 239498858 929810616 416131265 397900063 791324652 315661456 897332580 354478916 330394790 694188858 857052719 534276418 245113007 494491868 942753215 686043512 699569513 543056133 583936093 277475134 384616655 980163936 428428072 943606779 775286878 122805093 541091738 544510956 798064500 674912406 635190038 821484391 859140510 442944643 135776396 246105463 962280126 980830852 239304253 579931551 63518595 141254485 365113225 41719250 953842057 875030496 397793650 185938139 203567204 516603447 715049039 34172369 474302316 688544045 140272596 918369305 69490472 333608101 506899771 797772304 683458746 306395888 908682111 618985189 621240002 857522481 531772515 405450577 944166473 918180337 513977281 576889014 377189371 680090519 997515315 485209367 305596022 280325793 782688414 245524988 179849090 657228297 118120188 898464251 407499666 536845630 538201466 401723157 359062994 651623392 241883915 251970285 765761413 389686670 423529325 863222320 931307082 953091733 295381424 316147591 576089468 470319227 32107177 287655761 560153402 435489954 943292509 77578123 854461509 606798680 869013028 955073738 916013209 782908195 874207248 803197163 426634101 75518746 681087104 995580706 935610606 661980234 433415747 200742718 885815450 918398250 362076090 536082887 762403939 163802061 696303769 891712423 370339471 3837932 326634435 771792373 631597690 598324812 191188103 955979987 477590250 820013146 571537634 376738218 536002395 181941709 473010445 172049861 833163728 428966951 516693377 689657466 345198883 565663628 889994156 819519805 892256364 108082559 974957917 22385362 782923520 618054726 953203442 776841188 891686273 308150576 589324462 957966381 128066429 209242163 335516095 174188112 738741796 49116214 64075537 229141296 85707597 12156496 507986683 788905465 488065717 729766366 338923683 59545146 96481985 90312802 245267098 388212676 33351678 72601709 606595908 481396537 415118415 548091159 86800613 182825600 898549090 304848824 325116451 539673629 157843320 280537816 998521976 195880671 882958761 5409747 664582486 185360897 543548716 377486963 847217183 906160595 886934500 385316176 868574276 867737153 682899347 860776572 611512057 489733455 739326904 454873470 918406456 77972506 550049564 812464383 757404490 224644816 413871639 409655320 488709721 703946670 71087578 976126516 557037024 353423220 973792055 525365484 265970243 790135911 183902276 717692029 750600434 223390479 667664043 125934636 77042865 563487041 804781174 536308559 313998206 237609020 46417593 840228798 597480457 367305079 513054000 958013168 898972836 517147440 884261267 294345700 206930602 654840990 204982669 10183514 612464353 545404119 18008979 875478631 915406321 290859488 221026548 906797987 565833380 812291421 677333995 11021573 477574375 746117920 327324198 465168637 914574593 284829707 76029894 687914828 677515963 319935426 563758803 976245937 345108590 550668320 902883641 32398687 993917878 316386040 380730628 645029392 974282250 747365110 685108092 479687472 184032320 289759040 53023482 14395580 652044696 337596827 136035728 947237483 488161253 237117648 432081903 77771751 523793712 675459599 732198373 960990411 618306149 919570734 354171354 535109615 684983237 108050537 178917582 581766493 14733557 743407577 471804269 159052334 129471154 100971879 715452852 614183020 113953727 547801262 143816395 95611266 285445521 324099423 63822583 155749868 170665078 362638202 860252334 123512566 835133219 175882217 632917680 302615046 65222280 680339492 280057173 757613297 366471683 339380966 749603949 231824127 771598327 639268732 604842343 881922407 114626879 451800698 287552734 277972890 951759246 859442260 283855602 363736977 94006176 338881761 854957869 938132686 551703940 672915533 685498122 856846391 591653578 306667917 6995222 770916168 298222101 984894013 764822482 37463458 320560089 145737804 443913235 50257165 613697954 925860149 901282975 157024949 116282313 798591470 525920931 565949144 143276711 541109695 429332357 993567344 130085115 288078040 380273381 197689191 342792934 567714249 518741522 666859507 871350518 829660831 120399761 782787936 52342541 376570330 471159726 393122681 168947015 153721006 618300575 995654215 247551314 443073326 147127566 287534348 635293316 344766077 155855592 714851348 366858812 932705384 325075132 83176862 67314364 667453684 784360037 351224980 418546996 539726164 328492750 387925325 162850147 627047289 747603543 94936482 259598477 454698733 41794664 184006589 482689340 276866037 108850131 754274706 729598019 432995364 893172260 798459061 774836885 579766684 668331828 362791649 872867731 848044238 2846174 872437568 609355370 744025984 700273052 849997464 431620281 538376156 778169162 821990094 703922567 784535752 735327099 113440279 612134229 481929703 954500991 913234825 802010582 411467213 803590701 462895767 854940898 962747132 133010599 498213603 354636455 880853199 460379914 392258103 383422723 771457297 464489448 650794918 628403996 226818567 349737627 840195383 613652904 125219149 730954988 342611425 429790415 477772043 993706437 157937191 792992880 719086974 77559281 352142848 703786178 852209445 519501990 311321945 36609730 466617806 532466315 286765206 355886458 719183624 289999045 904814091 364230756 33402879 637655406 771054315 836007814 170917597 837643036 934653806 930622029 752000461 976056153 703409260 264683218 950152183 872617867 514839521 887684629 501562093 618612423 772457677 660037760 354822791 65846678 315256857 775295320 269817973 444762236 351750451 281275294 916495764 878821728 181493153 344754695 370009872 25321882 281393887 556542382 307422569 667611549 477378662 873155800 810195123 808001540 395985859 263448893 461894603 38250634 747780465 852133205 585686106 719668940 560323243 835621358 158073122 941185311 200642626 495716404 178827623 975153982 148787304 372791806 832669295 767942083 320953986 60345061 397851061 447192232 862054991 37354099 773767277 779320162 979261499 828332809 728868046 864955477 917471839 557150769 151280578 289571263 116181620 970644697 761055578 429680795 353860983 849857996 427441685 871779778 112747544 409759217 374717772 52766729 260495933 70028835 407021153 448042154 628745209 736545226 187264133 351920584 788340271 930981371 306953508 560612998 267290384 185208285 229873469 760697777 65415076 118289616 850671942 407046117 363965990 434613013 563458803 346102737 44105256 458754050 454362426 181457320 981385954 159909341 8696659 237092264 704115545 858252488 578121458 819927962 297628769 46407477 462712822 980189221 469429745 285802606 888868900 402942394 914459366 619856879 231333285 237362229 52135758 719288218 575842785 949503536 557312724 336282599 60608369 71587952 950245185 734045425 242015384 805341349 531276465 699769968 263310825 851901318 395049152 244437288 882974767 518403621 958076661 984172948 647450719 851735342 597695252 896771545 644712971 698284569 482162882 35985866 245965471 430814513 747372803 337666221 997101950 882068836 759130745 183464527 104199358 70863122 34148817 787079557 709900696 482697288 872531854 50853739 754198444 204802986 819729120 725945764 816098752 403969584 710177541 54902367 680366971 527321651 694558620 163464747 785057117 654482168 803930851 213457934 625468087 81391151 835862537 779281171 811561521 733568403 860668019 988569886 473302130 35681673 145428693 278299607 71648935 3851905 689149741 88676380 193417028 3772748 579058554 455794928 204555358 552178785 234192996 707608530 586628243 111530245 921646155 688017202 799480809 487175216 118291264 542443005 527035578 605013840 79466328 624484010 82978124 544420362 956067276 672024807 313572420 783343262 303781269 308293340 886727916 909139057 853107787 113778739 303364443 78833636 115084122 424545821 550957803 154617217 634528343 874879923 394147891 107192865 537766857 320700082 510476746 338726057 347219476 194630011 35832885 458829387 860149933 278224291 35044200 351118926 735829153 260662616 271688601 954988274 814720547 694082579 535088438 137019190 790956225 283032029 541346284 789428651 107641032 23480666 620905684 501535062 780698444 133859311 268210090 984771179 33097049 271870766 413448606 55252172 630147903 181785478 806848365 121401491 321795805 783896429 715109111 199332392 156139570 15414632 142860889 90360139 400823107 619985539 357516992 378729857 455883275 897409436 416692438 22530187 84785030 630625007 681231785 180282606 156487309 501221110 571175438 497363724 122394629 510495327 193869181 672267193 112743070 21380167 262267189 54089899 960356448 566744155 275505956 681894382 429584527 41062274 655736281 150677242 522622951 899659003 221774189 367144706 628540512 18867777 229569599 96957245 836748811 62350152 34982340 931294009 563387650 955660326 799014710 451121307 743929394 100840591 429635577 729767174 434519744 707630810 763460404 219490097 692988840 458815846 145649421 687746409 821217683 490858801 189377986 26571593 522726681 346248271 719323062 301940014 466680901 639022597 547738853 94922560 683017867 832676791 225086930 223339554 320085978 838625993 278853880 502496116 536087774 44510723 472468489 152478818 179869395 882933774 668437693 629299110 401441815 501699751 767412600 680794088 326138933 868501972 570857433 760857629 814019791 314364805 788388069 353739786 142476505 203435085 444363217 425433046 554409022 57308535 778821367 321958529 999318528 716230278 748238924 667793438 267493553 8917424 410326397 624388277 292996916 904000292 629129187 556310542 675799822 70965872 786766266 845461173 167510989 33411713 223678536 660140768 471907476 329787872 458669534 144200197 303736230 596501851 818694418 231016146 721221832 873562783 194435236 520343886 94070806 327940083 906193365 334545616 756156952 577715896 635136779 336971446 862757626 763001425 352677559 152768009 947575083 774114952 405111060 254628049 661706554 152245035 112134922 776556440 411730036 721574303 293610175 692905786 38640921 183338704 555597792 77923318 79424549 25605174 400781722 578208942 294548893 640719585 433751654 22890507 597863157 339536581 566839084 194340485 386003159 712040109 259897568 408954828 30007517 108429969 307716997 149339734 417453375 262424335 306721537 928516211 484126462 202163451 573038249 421272793 619372173 247530725 892911905 279907185 453761019 169994833 64646640 652400831 899069590 339874395 917291830 113409267 541159676 784014844 935300981 293390455 780182846 597386704 17692384 34708812 366918542 684122345 536329685 678498249 550781072 373515614 583059444 93465250 18776140 735193250 483787872 632803261 993712360 783176504 989346820 511747006 716029570 456315370 405881351 110058862 230084855 726012801 63555328 351424551 980325835 596653800 70908875 248586877 446617659 840993505 98288457 70081616 889411896 423864046 842528965 16662434 504771495 192272779 337245822 330094947 69713518 230539379 952318521 798787024 971454744 509905244 975317430 508772964 813123423 697333330 594865661 40346432 840740748 419004343 561125409 92831433 425132273 978487651 740291543 715817665 420064623 299561162 522263360 116666021 637278915 62379454 816200838 144487300 2199970 380571325 465688067 417005478 605837207 957252998 229400762 897105460 971838715 975227681 64856622 371839512 793276171 544394548 778368756 199001115 432115152 795908542 395470078 454897920 77509678 701104802 785512239 955042764 491379668 55202726 822765448 869272914 635517713 60187695 40205815 346852951 128493581 767417317 764072448 448906245 135788295 714419308 772128812 947626843 81893553 94706599 16663385 340421568 385531181 117142305 813328311 73579416 262935237 172193766 209384349 99071230 185018089 11951706 239204368 693838348 456143829 754227303 238127266 678750275 363309196 402966777 988950348 563596160 594623350 548744272 633668005 412822767 448371640 988895397 251882215 884966343 149282968 301696232 582457657 602940799 82681577 402797972 896108760 39287498 317655014 451465996 840441812 802922517 174024409 383793978 935585777 994816726 713906118 799327984 619622456 681363783 613250683 958307040 603631045 724070979 473608391 376211741 318951432 351911402 88074268 319102369 889870383 997232190 413917849 53180230 319932589 566338804 327519779 856746121 198854667 442338667 155111743 806211627 170026059 930216493 248282863 877849763 466346005 945909471 340893324 280276549 383253341 950953365 820449064 471723724 832886411 90377344 869112880 940293445 15722440 238543915 64353107 408138934 931306722 769889867 652297234 102681791 361232167 815357268 238591300 776096966 145094815 28139843 470960456 932464259 19663555 461971013 892863418 910257943 152190185 922732210 521190014 594201979 358188886 79479342 633801884 713423908 699702156 900797980 815988921 619667513 206273210 862839248 827709404 570517156 563299416 908818975 976220572 271824954 817648790 199806751 493239670 136500067 567387652 466225470 510650802 127689815 537233342 663551445 891229431 225531527 3335798 198426314 794538487 480741079 954080167 125507609 814645469 238402903 306924748 18052309 69440285 475734049 932099647 802752691 166371324 282606978 802183884 389053118 624351001 80445620 789946051 368953934 46829485 261981359 28686299 740237640 279995678 572256220 455842421 608456781 576081852 376900121 643125657 709662939 300676986 590475219 681054212 757503112 982453196 508645998 622317425 504950371 404911901 949060132 967733107 962038310 332409848 214175338 566390576 846409106 530863997 987400797 447408060 586801702 241949970 446802044 203916967 440446424 363861740 493381193 791712461 215221886 350263591 795856056 356847452 244333265 425491309 600912025 810674917 45345458 659824733 755398335 441971814 715375858 730611397 460266287 625689167 770229892 360012562 135055471 458032532 840633604 591225792 265173494 107427343 943165079 931442187 659528707 354555611 408820996 372293087 433039990 265183297 710700634 356034139 566093443 403523577 977819735 533224296 39910148 684046415 592332135 605467167 316330884 455258338 48055373 546607236 705037423 5153947 437052812 210145013 242781478 827932525 949018104 238221613 540059253 40818746 618392919 527128015 121728726 56750368 928101066 840028129 650180727 669241895 271135693 716511146 170558630 196510578 117262939 46645260 687141973 104279430 434611670 698631139 561399323 690903509 669784090 413110586 493813621 221101704 846595970 800123591 982914441 96984779 221515922 276696329 579003697 666650747 16687042 132726917 134099844 501301992 824567282 389788798 699258517 704254926 4158364 862017987 650926438 74244607 407737723 759712409 211753650 40830158 26105444 105249358 600369229 79031241 542089729 54108864 98556176 145310710 612514167 441049393 85354174 911674862 289022358 511919263 568671275 13216684 814421902 488082232 850558428 241398205 836014925 768422804 473612665 858439832 457832162 829803214 347662388 252894349 28767545 512569161 382911304 793839649 632936209 483288568 699748283 10459623 592386939 603322735 689962855 253425664 54760522 473266052 220813178 127154366 95095709 716164320 584471027 409990702 837494284 406099650 498568924 956704568 898750500 530517981 830409539 54313207 146485151 947052492 756890397 608773514 970523130 107837663 957847853 252830008 11305521 786747197 462364682 620544451 16436848 176008867 698633284 204319337 353315487 688071836 921119084 388238164 185466107 625094749 720180514 869397436 622513864 914726954 93430605 492429764 380084939 946277581 815047122 288121929 81731689 699989743 494618954 277845949 148451455 243801309 733085801 710488207 666115450 70650104 529994069 266056040 198727628 568121889 341078302 565212065 592918072 856764913 907205829 128435599 439672317 558997462 43120282 275961751 411104176 514004917 516549020 346749304 196392684 867539344 305821243 832040376 793526791 408410889 980789091 258377381 335830442 950205963 248926229 272744378 911451331 538397454 521975794 242076805 860996107 536714193 410821735 75883191 298663859 767262846 683707630 718069713 350097996 223370685 976566362 999751355 851250927 320061999 384127768 587470587 374333927 978918261 220503168 705903253 657801369 297116317 314586011 275335283 524052592 762724298 450451897 299823798 835432490 809931097 134483540 56932784 556778795 152841221 614914821 817458220 214240324 360883998 997314092 424307686 87009628 631752871 88397453 365325906 769505297 989791613 572990501 383867967 271761351 90116338 452467546 30746960 853509395 682259102 725860420 140623078 993315922 782896757 207693498 552120744 417972104 760815762 308092129 851661427 904046861 759201132 8184362 891462594 76595826 170031488 919820000 800594669 430638193 661222207 694784688 121054778 226736901 87151698 445456958 247428083 373937254 679166396 430722113 179332485 999234773 664244510 812356512 934854301 828682014 896127503 97077624 793208099 349373741 612559324 465631803 94295492 200973404 867510089 595856982 273284249 128678768 769705369 272991108 485198832 220974329 711432587 83037274 916784615 420490116 268763384 116278623 264501333 377738656 15285942 230431349 138001996 757783049 60802492 395500541 543397159 536723141 549749079 397686961 765320973 423291826 358066167 394255128 604230907 917413344 251879270 62096434 97286545 465180825 924051629 27541906 483916764 86379000 824351900 220208548 674780198 721315212 264427897 426301710 92827139 32851892 797371151 684864159 902368965 617662103 721242117 903338434 407677524 513245989 992893261 411885731 541336871 503916067 202822766 459055296 178579651 11975640 814038615 83408684 195145652 804043759 73158640 245855076 535951662 424395256 932160534 99001306 601007055 881982022 344904814 229878122 805390665 991478656 728532934 228573552 764246665 726470931 62580362 33146480 975280810 609858148 191109972 214571120 631946376 304738356 395376259 598219993 826135803 603789137 625289725 834438639 528610835 392457632 370739985 845379631 508614158 575713744 975568635 175926844 603840507 456530004 82557058 205652237 211117138 637080180 796342060 452642942 319642387 56700235 162899701 929293655 808841441 322163566 49514788 462329694 504006651 674119025 148082770 197230276 330556119 990306982 287998277 703860149 634307827 691432576 703472394 920470143 102230479 514514422 733590672 822217416 415246105 637673585 462367409 12922533 130402531 607745770 138844245 620064658 222957894 758985819 390411749 26130592 588816462 731298679 785148579 694938994 515670158 535475003 768844118 590219395 647520787 164800815 43714699 627291040 437628864 614899432 174771948 747977238 21882179 526812981 179464493 434458115 686276703 510135361 328147471 36998813 784993123 293854129 451485012 396732426 710043907 634978916 572882938 796807336 338803025 181666823 729523479 336720138 651175890 432250007 926072715 140124985 338520317 270368886 637232270 565720671 820388543 58447216 612832360 15876808 361091673 764839205 650812541 376048980 521478842 932021290 972989246 825676542 443782109 512710542 842237636 573493358 682302743 471220923 270186666 670952362 828001208 12665161 581671142 523383807 79546441 451444548 29549629 861242637 271373067 402694079 580593640 609229322 671191954 43479799 223615448 985245902 414403763 569391308 400087618 364076741 349895734 996792819 93764042 869390021 864578785 91048465 240317110 391540555 923927693 222281427 276869622 923585243 35699501 608839038 635316006 404775476 7625567 356858958 918354740 560405857 539615423 748264580 853825963 632557538 480814187 652959955 96318091 253063875 902113767 920715965 730892560 721576129 371385163 463603 401959459 912726760 269080023 240611672 743166998 158844553 881973590 935523802 24215489 182593861 598982874 966713741 510229425 525765153 180492923 387905757 666967979 124993701 246788062 876621067 503677475 768529457 201972142 482524857 668348693 342872411 327205820 927778108 651409574 868163605 851756700 230956794 391951369 294579221 63032223 82243144 943589068 692369728 22725873 989565978 543018752 726148137 340670893 946247242 495980739 601866227 308582652 126960832 28449846 840197288 806383902 185341527 571193334 494328800 618773359 121656239 512919259 741666886 218008157 349210711 845937371 5574227 549172153 958252144 210488500 200285212 363490915 890604779 292593614 201351010 407267870 17701196 564970043 826446436 927996348 558964189 489398248 770767911 507511345 866089172 686385392 866569101 741701667 418013785 532717226 198805167 486228811 21856186 348306882 977997914 77811907 959164535 505813207 108352129 332648794 957697005 553148934 589841991 43612516 692499230 204790566 861867509 701515496 121348154 348968899 188989589 661134683 834113509 514543876 853689996 5181805 771105369 170961920 245276872 858421623 443950292 227793726 850986468 293349694 390853343 565209570 976314989 562146682 406139811 537751959 745313371 235637324 93633213 813192846 801706377 797150057 132518822 665975111 997252419 205007790 802031039 905222497 742106689 727450507 498045880 473298054 788886715 462242033 964588741 748805356 459404665 422902948 574889905 259986454 683667034 729132848 355296301 351629644 574515889 973738726 456333615 9063874 772902240 840555439 99497897 995945738 333305127 307601472 749789135 877479908 102864496 104296427 358663985 378157006 30190061 13131169 590197619 311479659 717586764 188320883 551574892 931873222 971139989 246743454 62786533 763245513 31093874 18712945 543994365 907041442 420317382 341901110 620712785 400098046 474694438 795674766 504381937 976166539 245780749 48962791 788721321 955040274 456001927 767908594 642121282 435175832 236903160 259164322 669751095 759060558 610714717 190600191 382446497 510649226 957478585 563891988 293462882 672596868 715493997 301638450 567727843 622211360 834298471 732537201 544078067 209516081 907670029 814822868 696346957 955444188 492897065 578061383 542246976 86087412 443862215 6133211 285394499 126813282 216000524 472970978 399018326 477287827 963216333 595320240 955539647 24386577 190683506 944323671 654890654 695430548 98849457 371026288 541786603 811232114 383586200 693436826 614383797 162145581 691653377 40751211 831320935 881667937 798194178 631555048 390387769 833113135 214340763 690078478 918192746 394730836 24631920 981671040 339288670 15591130 259730198 522922338 131331602 179295589 412117635 708376179 500264613 525965047 561397229 756865533 606963740 901617131 233197696 494078148 130866998 970151265 935821576 590564875 453724784 853967994 487025583 433540307 831754620 123570773 319825355 772622849 630865705 291671175 845630679 581700838 168765177 824147394 32719941 573672875 559935207 458545489 326386368 992780053 213668832 893969920 56902300 239959122 8709031 808970095 993053846 214382690 105760942 234414482 465501159 886870265 190616874 882080894 366818329 108017410 581712530 96397709 931380050 876492943 898372879 880576474 136290120 217024115 914907863 872419410 244423285 73835471 638676522 692922247 46333806 584779551 786605001 378222954 305389390 180727801 918356920 95958421 760600875 365461988 580943033 579962134 464914422 978914724 509017957 848653032 975358664 541445819 369505010 953956061 990140641 74139581 764752875 57218915 693013492 673453904 39545301 138930174 475264347 908376823 670305694 251195532 570946672 846229677 407784688 604585813 795931948 324309415 774043251 380776419 117484604 345286563 642567373 761331983 316665465 530201629 503796145 50264913 287620622 886929629 816947537 277867106 840282897 780311141 733419818 986561407 79483018 366759107 184566968 588114252 395317512 279881222 428161061 748481334 582177782 291757202 809736004 902068484 361758742 403631570 765862992 413220827 226743071 495364793 541812636 719027929 761694895 315159998 339635980 94542174 224974830 799276311 781209185 113019690 946293206 69528595 720281329 993984641 939221373 773543593 375875012 649751376 393693124 424656836 464848461 703612865 865126233 927265979 242637372 284040446 437866551 653209811 341613284 828756394 250821446 707679889 679756937 891628379 663084220 711706637 270669415 763381240 391980568 328805849 523078900 434616893 510788196 969525792 569267885 741028973 613267749 102540544 182503895 240803316 187979178 738868036 219054607 315928763 980934977 881390457 277013306 655512370 242679634 427702097 765123201 925413870 934993694 507204171 463719725 956091937 68738298 359798206 455386407 569184591 554602321 776630734 557869160 150311573 744685399 782201435 167765735 364195007 912656293 316593671 279501116 291347645 562415301 266409117 994236570 535164271 898190130 320007287 377931129 59284868 603615195 448199929 156628593 373722585 706075080 833849066 608880493 873640318 795092006 524382533 56209421 297579641 486320740 488096191 633569203 987896489 934229540 334229163 230270343 540171085 764754689 334205177 624218029 235291879 109115228 445855852 542364322 552722760 112752099 299930186 714440536 441664567 954535180 153820506 809708244 594410857 319270412 56888525 37453836 423595144 260772940 508501110 859091243 753024311 738388181 535646072 198659091 902249838 800618947 324682866 81660624 786308067 197094276 746895031 989817176 640533812 828921229 651488997 202208908 311275452 583447719 932544313 195250962 3485057 170202402 145750500 995765690 38365098 704644325 513641710 467361214 297079457 787654005 226543810 79557490 873140589 159532358 730993133 461842333 485151153 789000 447699674 381391556 74577852 546742573 697705045 404477697 883892187 274657278 925864104 436371232 895951823 329582500 901444894 275499334 596039204 363370420 675943394 966339302 158232664 739546460 427037828 924917715 772835663 467598985 613927116 873456941 860292597 209410060 992514758 151988344 246090335 979266786 524579384 870415505 186881632 119454840 208977525 557967631 662308644 371462917 233207490 873322224 834112226 439240204 620094599 803702085 903693219 824031800 127426793 191028561 973465473 37604026 618436348 361508373 105031148 187071970 705633350 338670753 431698330 743699497 522296034 576945204 29454350 684378577 960089078 616598890 160261306 955120520 609247859 181729180 925614742 719164900 958760004 176919823 180975293 994605411 783642720 723548282 723720895 656810725 728341534 19807264 197234184 762355259 910629423 489601098 285184940 86180450 451720040 297167827 621172964 611812685 339459577 62936480 455900991 712577082 381501156 134435448 201006060 517547596 452158154 372263876 584493315 357106660 795091353 412026201 468920637 233717248 225880539 528658468 92061078 943553861 723341026 747517407 923450629 167399760 736806119 19930928 773630195 575894555 655054544 489638366 384792874 545174005 575104561 882136359 213633161 716831139 925813741 863702929 219045859 467083358 150217794 452277688 276080002 220313694 428186200 710527038 541949544 820631029 297123938 135982801 407260466 513505139 486183869 674709949 373421565 546015023 863774085 219640335 565850544 346824210 556204506 391038924 537613920 38344825 638412865 41249759 407554481 545115586 255139001 885082055 683760377 235283238 360912686 948001153 219230458 774319145 702406966 446256193 160472580 191058727 227804760 758194466 71173231 191044575 979644564 675081817 629971603 804812125 438439115 412175416 942655192 929479527 841933676 2452676 48987489 591671815 78126169 516471150 236886024 495401501 558330452 545524288 406911215 249827734 924793220 192676647 400655579 642625950 187890362 996043186 371528553 809189077 626392913 195689980 898097964 673315810 416336674 125639922 651286800 673534604 62068606 185037781 555375775 231424434 733063418 695274771 417549461 566428609 161949366 731414635 750318702 462466264 120535835 953617862 838709581 935732527 667335206 85894764 82346670 384052385 323945276 501456910 598899687 96486430 720387051 913952228 617995447 771366650 948562765 990171073 650700145 429018111 286994031 718683323 13287997 235285381 557744116 167401686 471922074 371857622 5079515 285421535 463485579 169042750 894470259 566522702 337807135 277629802 665442163 807542722 288073643 339331021 962465297 531836388 136892724 445247016 748326998 630274751 783671301 266802268 905384103 728339916 507536865 919516921 514193921 141128156 728692231 178990851 353474589 55311289 422542339 286626866 938441675 29256619 958815557 849501081 236401259 406640395 162781536 239289351 10702284 981708240 29902996 598658921 190330749 803602030 478632585 16155748 123903381 562138195 100342616 934156981 200666513 705243184 671050774 334477628 886030993 718375859 268509155 89546655 708554203 809522395 388332191 88593469 162377285 588390532 885284464 981878029 834651896 913265950 582965659 795004631 258533853 737948010 104063281 659003615 6368605 756112685 658281710 580723057 720580316 528861519 442349123 97676929 657327395 705885663 221665880 588020287 159673481 287166497 257209779 363016929 941853253 21412449 488744117 856839232 24338792 580434057 506696072 136252046 669225032 432055424 170781140 366522009 887857216 421080424 737822600 761406975 363005626 844574000 709771776 850872447 948820450 768462584 463743846 662444646 337631873 346205096 161988765 382667963 290493349 722824020 295293981 498589412 160197733 258066755 531789374 138538613 15069405 606916197 988169388 275448171 508599351 31395427 674464433 435915163 855319664 452633462 764193011 435605807 771208658 530832645 507972114 914308163 769118231 336215013 835164861 592243162 34338370 433592530 545970024 838382340 940083463 649534436 285965188 369206690 362887955 609690506 516986845 408217203 96225178 265984722 964417114 202815437 629338944 900790339 944294547 596576401 864304751 67313603 864515889 14588249 163193861 254721596 40798915 35349820 615229699 504756839 292489198 961903634 515722211 758230754 981177343 516434390 855011870 326218975 590029033 307193876 898645674 6121445 754358916 393202447 786908556 399117484 282385409 730356761 765647759 810788495 96319744 643173495 33677454 383981493 55802890 991779300 4341408 616835824 43429024 122674675 689140563 868054353 150860568 660563327 84102387 807147258 883325056 525521680 143816844 889433263 745524220 822905243 14761518 204717581 385182079 438859888 549025015 447878476 944022304 315488962 576022508 18242483 525059261 630183548 749935094 411240192 895042752 147268504 611702451 737830556 353128053 65266958 587592791 806226526 186747240 713635585 378736148 625812557 561111332 133072638 654633756 847502898 49440917 392694797 156083483 229210791 779992778 708203009 190468756 819663572 540018698 995197534 552551891 712906538 895663356 901071673 716495749 385554245 316499620 89951498 249401871 742577420 867604562 438421550 572289088 864085489 402270410 455126339 767151787 844611813 121913850 586698503 542319310 216317442 553633096 76515542 21763246 368298457 87105304 334780848 155675959 192617096 291421055 234971924 718792659 180720086 104466651 870936302 380326271 978378003 644694305 514696440 354263947 836810291 762432000 238855806 155030383 574362403 133896897 652422796 529709256 351060102 513979234 118000953 209801346 948257981 800646833 754613687 8448602 284586674 367436437 808926879 618915649 219859013 51677840 759933604 348576798 82525222 834587866 604441536 978188226 26996788 728529215 339136139 657742411 708042237 570519658 392055118 125227993 314510768 182569056 419586301 187391367 855205822 509829482 819309398 178329319 418698326 528803900 868079023 174844930 114985243 201207815 725930828 288346773 278239290 515025486 550108609 399155981 801049096 657625834 376566623 467399850 460688194 34887210 779616511 129832621 103107567 242026694 62471150 963323845 584011546 529256570 782823322 587157844 423296105 910517503 615893043 100772936 536576108 890451345 40505910 733345672 204391091 962798033 824863893 613934010 344799694 297458104 278186746 419827318 106605939 483742421 501695967 832465989 532926252 991767232 445414058 362692407 210853851 724137668 490900108 726160384 260954776 877492329 119930825 188747879 848860450 875386246 108997772 252423548 180964709 739828751 819248302 953253278 399259639 431233351 705787985 667217696 488236905 961917315 775410514 794630258 967211102 277939188 617966356 461328975 675074908 552744347 580451380 287632901 933404773 593394327 31508174 362724328 432616878 554290107 259049474 313861551 375068717 169467845 735318880 268275321 602346671 633768956 604857235 220317137 352861138 57454651 279195893 710745033 760591394 311643093 690267107 206282177 115232413 431607546 810951740 636400413 793385122 832669752 37788122 807522693 176944161 381962523 50934771 930431110 433401183 736530892 415167204 364089697 490488143 819392206 942199323 602943546 535329067 521589564 696803250 165209429 592769734 854920917 677933137 977502428 996064903 788889275 579956992 669005514 685737263 850442858 659150293 187787726 616129204 396952521 727943413 334174578 858493840 457868217 356431231 415259843 928168088 848986645 212712343 161297040 210956805 791426358 697859055 114294647 177772654 260053847 816166751 979017500 500088474 294886677 767182091 132606190 772469009 202253474 430083457 735489626 970363917 70967900 176756602 816662868 344895548 740488465 884686837 738773303 298280519 306119337 707181390 126361989 295844376 648113607 552904644 336678753 943605685 164665995 503655407 361273016 337033857 184703121 340595519 241493727 318756366 393292720 50302727 127039751 876837816 813158457 920163511 312105465 232941674 50449281 29791673 33801640 880868371 761900354 768359228 416454887 292106784 377890585 296331159 769382225 923924011 9039527 656750056 190018644 371504106 426331650 816584207 466845847 367768381 563337952 281325396 290667874 964291930 237894737 727420515 614311902 130411726 714635816 375744069 859954865 810059 112275374 297872640 803151448 934489901 639175002 361394959 691095407 810625819 752135438 773488331 628432434 458004484 655684630 75177208 224444164 732471015 603575136 343351523 963232904 129575310 961219938 886249337 940391233 676844999 212491051 718957578 71920929 566490549 548775990 63200300 174791498 662470347 332836880 243945773 363519102 366435271 201645004 45072527 852364234 64304988 898703373 953539890 618100184 623957836 642502106 194543672 422105441 483005648 340711985 654921912 8670442 673797346 218119099 903372229 560792935 461566065 263325712 176672725 98515007 467391429 192119951 328105020 317530984 173606856 997310969 978636489 845728784 28437577 360104544 598010738 840162548 249172671 774276478 124270660 579692583 441598490 766858597 538238662 672142359 978678361 225616624 974245647 880542563 281766952 410107803 464682261 458546150 517467668 542168619 298841343 618610422 702784602 743197900 411573962 640994267 622232798 26081425 48921457 742418837 213262962 388432537 189896543 747972606 167564938 940792659 819681709 903012883 478065814 862974685 116666280 280813251 495578070 784675426 424452651 82145262 589455658 609476869 98485898 655754599 297457329 480896107 591076165 613320968 767378015 15002267 260866884 472193676 4055359 89991248 400631335 585434810 513177163 860986689 392745321 731620986 389336493 11802998 213038098 803581080 276335161 803640091 460625268 155341542 498735539 756021886 445169513 886325659 914061454 885210359 3006763 692323942 653371573 32027518 998582781 494936431 278839832 762772883 24247050 686109517 158490430 477663242 699070988 36732801 804438270 52870500 258989551 816427962 112533890 550224238 975953188 87509977 983079010 147404318 529042383 102424212 475268168 75728159 688216419 111530911 941406666 816195300 261833211 771553162 779738225 623267948 587758610 776236931 592703160 89134478 687299441 591177797 507987354 434887651 137965986 612367387 213716931 942373354 996526005 358584066 86460210 415177429 352362636 705289858 13832783 466371825 145270624 494686860 95604543 708061514 406984243 224058334 157260967 904671482 344377682 11974931 831615178 861429650 140696800 861937197 952986784 27825486 617570146 540723270 753478826 15659952 562613073 232317384 393322868 431278253 778107247 438395358 269780378 269208006 571495434 493746817 843502671 304775759 306052201 871282059 978092520 172027237 787425364 283536921 66807665 104242484 140906351 919520279 985709439 709938716 807463748 715762840 546736294 912565499 29141498 933512614 860209691 709164081 235164094 903978528 64790453 280514035 424118225 610112420 603940566 427122567 242228672 944128412 135731444 802298019 118821145 18878265 581767073 991436390 765629619 278752143 262384244 708781031 894038758 966474571 442529942 702749908 942296298 738378740 687322340 513745155 205937710 185095509 891367533 467554971 343521067 753860542 216298465 641548420 170428321 311622641 203960778 457149730 566783636 28846422 292023105 123823069 243316286 229117831 467628031 678181561 31305740 188342475 341772977 390590089 342754234 88152480 571728087 38537853 407896408 776109763 50814902 71586762 823476698 246778012 983040953 998376153 733747197 9877713 224997518 50931664 392142721 444464351 168871852 913035827 79484975 179428212 405304940 379386098 126452987 854324174 361488897 931597723 623939265 913886829 505011901 860098667 194186335 224058945 589447483 281800607 869563437 101359986 236775223 27097552 335669006 642768499 770850562 881958379 315000335 287404338 639715373 551423325 280302370 144083524 100354753 568211159 962571659 37176629 375154243 605847785 344563729 64941871 456661827 552885884 860943208 119641232 777733695 154206863 335842691 106990893 895861036 581095449 327233312 833199914 981907713 416078975 954246493 824168172 237881069 557712378 554222659 766955742 115362161 781554526 781633986 360514358 851245183 691618806 639755217 65686840 110660854 525706209 370526869 69306280 38087473 166579268 742991865 22306613 180320630 318293549 662061566 171794317 806340762 606042790 199022925 555563308 141406870 859532601 301372815 746649181 592211306 710604707 543106943 191202348 11810295 283914205 786441734 674079300 743821518 174674737 304716419 505218542 609632080 754117479 636641892 328277256 295996496 47244528 92474379 223671236 172192435 753628074 308619708 543960678 529249996 370074701 224527691 775027156 697934887 272326981 36031999 642166989 321221194 103421434 401972604 754389418 736211110 213383162 338330 301664062 978112929 685505217 73560000 422639561 657765472 211359005 610340363 814459410 678701717 13765774 185875483 474109473 305370198 181655244 602106550 768963289 234871391 335464996 625304123 709801839 147965513 311815272 51178666 848183189 542778974 392025263 775875 32655238 77292932 848987322 39762747 336567459 217696450 70416763 658831359 46595908 762583751 15349416 271946737 858756595 707362014 896642564 441071715 389569972 303733209 437394359 256931814 783370253 200035952 599762222 173635212 226666516 4985943 892440800 447546076 889632229 997074792 461408725 68992984 252342559 921307452 185525554 399618668 699479150 521112934 898471524 746071998 709236022 625008879 617128842 410798379 587134044 822555935 997437337 87306575 577378187 373901703 847816872 143423762 58030865 729922442 898172276 59520958 170942067 510141485 979252204 221546082 934485325 156643111 889949929 957116734 318945770 106352921 182589011 68475074 823231741 894303513 365833836 825415986 372825591 621227498 807098381 748927651 280348684 27872683 292611292 114326128 564536028 817632048 61291441 390733066 375631611 290223244 214909856 328788084 698928064 476875468 303075129 360171532 404977532 373480977 395273952 325747068 379024737 743284583 941290080 193616380 220901084 637531226 303242611 414238639 873012970 918783685 557739617 631979377 490395857 422129117 584694766 770414524 163327374 599446858 238159811 836867832 99259656 147772538 725363174 222208056 580471842 638840379 222543740 714463176 116693445 204509448 113686637 537157379 8729345 53621273 867942600 189203584 873222605 362858759 600755481 15628808 804685356 665570597 250436442 936023606 990662706 997819212 187245131 671337343 627557882 972853470 528162918 76162978 604893906 345181374 326546119 959523528 351927149 756505713 945029396 408904471 363644680 231765502 758773167 977438167 639657553 377308085 746037147 445896535 300398617 889426864 883190111 541339682 961586592 989142849 937073797 178018320 161043755 470367617 240533138 210389989 184180298 510490252 635938234 101413871 960997284 334909497 297771773 821982007 660350717 480730819 724323328 425436815 407217009 43624267 537906061 762967023 47893431 95467540 442837768 490758468 383164738 236980382 109577473 477914860 28530989 144400568 656931986 743406814 845395167 662435324 180102916 413981639 386276004 61760228 315106634 91192873 350581567 338445610 364696426 935672102 671533095 627797267 934643672 327652729 931214059 319390027 866508553 162943023 215504115 83543813 856520828 721355445 447283777 244397613 281308975 296257150 473248150 585221882 322043222 851027703 249561060 213024628 508374594 863591863 522093758 21312765 404449653 720157903 838483465 364645676 999652394 212538675 853140816 961568673 650387806 711238331 411643810 437290011 517741603 828200091 107373131 526556368 858530521 158816659 298051674 582264828 504446858 148898277 30677550 120905894 81631398 612954666 137230775 275972824 231103901 44685755 471114349 936192588 89833183 880630782 808270212 71321581 576363496 331541152 858567940 105036932 262864053 617062213 275767245 409161236 142122622 576901535 300682093 723045195 7130309 796261901 94317115 238689902 558232678 594153064 138305962 562965669 26162745 269205482 336358273 985768886 424941765 288870073 813711181 910135526 459281875 334687402 914881722 249246489 942231538 82860374 68616298 487922559 826484659 410348087 517177818 924076242 103105851 194304580 792294001 130864709 826238002 951947485 900989713 369570567 955831846 215490786 28181159 62064938 462373459 127699448 220516639 163379820 24492445 418136754 308850490 740216119 329752763 180022345 421525714 246299287 406682118 725521444 281412549 913071526 327736372 767139480 564415877 522968548 828633976 474660339 958661162 338949868 981722437 350252351 443922483 348712759 261097737 2725785 508250378 670062890 995755122 169912462 858231413 203943878 682057752 259262242 940181806 221689939 750659321 236609117 42027150 181243393 204307168 599905880 546667571 167977578 99643687 385194346 247760850 69553487 761737535 519213137 382127142 604861207 135529621 122775845 518597297 819667072 848051283 659621634 709872431 978860443 403877715 495087336 762033680 896875386 429888853 650431318 26453518 216225390 451596806 892409066 466986278 410395091 6131644 296132950 649808711 829601233 410150230 483991309 547778125 75492349 807853741 575511557 971048146 91340037 103054374 601620858 342047111 888023028 769479457 185131624 524692639 600268402 856170006 208770358 821741173 813312378 32221620 962305228 231323757 281407917 605232942 130143503 548880269 684397191 380764033 306514340 107047686 22936449 860932967 525286533 200070626 445835147 629479101 825814125 2483100 105335362 560799740 308860541 915643054 405040466 99481825 384389666 218296419 651723703 723087376 406923011 436565658 574082262 334132425 820601339 581596285 151497407 280130760 706320838 354759315 548145323 175288164 977371876 731724840 915878832 736280408 848043604 836343841 149861542 869620597 562154902 155749629 397970394 316270762 983624633 518873265 575872867 970434046 495296730 995568537 190254135 37064989 796160716 836652200 639961395 491746931 960091400 656683168 33928695 416502513 525246256 943998477 545581918 925899047 818968496 852303135 964344151 909794788 536939904 716485825 260976888 873547084 67101326 962638513 970484451 778823417 977195932 297519715 505881506 88488504 243645524 408461647 71516804 654755835 116205907 641129709 726082609 296900064 642022842 132408206 204989343 845878357 916549094 84668572 811858022 311745238 104394885 14929991 831633508 787050861 59005529 681066902 78483810 469607589 495145577 263765658 831662541 668764455 462210519 485663184 736258010 179286642 252151996 796244998 646452838 860517982 756909253 285297137 765305924 41905685 281056718 487981688 62792794 92905491 440825700 866189888 814044969 492166991 547270537 907180 400496955 945191591 538744376 729077917 433230614 830837495 702918201 878518293 243808489 923740824 507523390 863819418 588131424 379124423 939213581 34858541 876336457 725098218 69840484 236020930 814202722 280210150 868613932 755828540 698547205 7515534 864012349 841597571 470889580 616793985 596964120 827624459 536171625 841522591 870822158 312550896 902726341 695093552 528784990 810140364 282253778 605056705 498509268 407457076 206573851 474447806 604212292 901260254 376295040 867214672 471312311 135201808 847147105 490847639 999543034 7800574 522934777 755334562 81757394 290911623 569860399 231924592 463638936 465065807 765720793 853830716 599468345 489445981 418253139 370593578 325234149 41189566 671127165 260892167 215131827 649160780 104300974 978340645 672469218 80634267 703834393 331769261 325745182 340038434 197910942 971997282 55899212 375121701 590744925 710679079 426604451 756111868 50106403 844545207 795308602 827712928 495171936 359239622 431086631 549543555 862978638 417776238 99646591 928817862 14263134 286201304 504116639 175624387 470358030 990073597 842381180 918104480 670175654 610134410 118472022 100345221 667314085 492140268 464577972 99513179 99251327 623261995 680461452 82703824 403075715 218521098 991298618 650268382 628696482 707375238 954379289 923268214 432717807 480832100 148225223 56109034 182769689 238923650 232902600 949906774 126649853 871827667 413105012 192797629 531328624 596204134 175132868 990569993 356952583 941625822 851470688 481714180 842208843 187259945 97877660 613201176 154034127 552890652 391944358 647489517 798553754 163730009 320140997 894441623 986614724 244900653 867956235 247923801 798211893 562181534 879067346 335926223 245509402 528240383 684443828 677826396 804505514 861040468 959592836 385555646 320426301 650724922 956751045 970325628 170770810 401017845 850893933 590621846 349892943 784500150 131607309 387767023 636292254 534907364 865435309 750006986 643486930 984970407 770567694 974259303 330749369 375682192 644742609 568787718 140909938 339116862 923342027 916341862 624207729 205004684 340871255 499904020 905977564 518726635 151054636 362791780 696991179 330585129 544282823 910676157 655738085 959022323 223865635 582070541 758210127 64739624 384707609 985056187 21492753 300635708 235231081 599528219 116708017 551620918 243812734 36107860 409425177 88668944 667929980 804370082 475915386 451368155 386322276 850472093 74657177 721971498 951078389 883843011 28540621 451046867 346971161 854868808 880145310 911749508 375163019 448321770 376075202 644081234 616876297 478888779 931747528 189697775 777194315 34157776 764900891 325324175 823000240 54424328 430360350 389136614 193753891 860324777 602224195 63720686 527794667 106469031 422553600 925351903 468009125 321152686 72147098 921891111 943493323 290027602 173973321 551798979 902993514 16256389 542105617 963203186 546518321 825882897 691136169 210295488 23280953 36582214 554568929 474752382 13049371 874127128 829975382 304418840 720693274 907562246 701140400 569055696 514129501 460865905 586822143 133698942 490331743 92819069 378016517 116317888 818572684 189364959 121565190 518241501 785733398 122450875 300484967 437851293 762759408 24026553 24703322 628518097 511165580 546943061 907959191 685011437 726147369 416670692 737957951 722988649 763214117 937059637 298203831 853034846 173463592 309264626 268694774 12734384 614142035 13793269 429450634 109099812 7172550 696656345 728084353 694167621 275171167 509567338 875110460 362475993 623363383 233489198 791386730 302154063 181064160 537786022 104141076 155541700 381743184 769384477 407595993 26552482 438903788 24435772 364232769 791499775 426572990 952142343 334248234 502296894 50317647 160122984 287640142 295141478 48687447 128598306 982233337 844323792 619530490 197698689 687440811 822180427 626730357 717007518 213022817 978448241 806509969 615547703 102808432 293142967 457518340 73438453 272623189 823309121 891858352 525162914 798947011 121246899 909783857 915458166 66165122 877459359 725154738 36255826 999075854 770348444 601384313 734606761 538966155 878005467 205867803 234798917 96864457 637532348 345236136 197891217 835847169 487131645 381546475 784492529 253708309 322818447 436269782 130855615 390796170 591195382 837596998 385856211 468640971 837564653 421324830 668698799 425590411 182747783 379400881 389271196 362563779 901410249 216758601 256639299 68577766 260039960 74039529 835524081 939438916 365605826 221924238 24261428 620957419 205226200 813770832 874628740 508956444 172570062 824543652 606971541 404071256 423798805 464470265 101806070 635958019 632086001 70379533 156959782 568925444 881547424 810273691 768515259 949347926 850810024 708888499 878735758 547871483 554638870 977585320 988029530 833084268 644205811 266601217 903066745 750758431 525618421 959670940 865271333 335750324 899091759 92325463 776573508 621590772 271575675 250159129 869673303 941147253 431447134 554489770 116662713 70652837 817425334 589636659 785982790 918245252 454068404 390222229 609243415 410351000 933891278 454364215 648333991 488524535 245543805 746173527 986568025 453810580 239370624 457826198 19632928 337195220 84175953 641109752 51825743 464376798 819511633 4082955 713160482 133447757 169124748 35445865 101743925 520594618 195627052 243064634 795980663 526379141 628886121 516681069 120578316 206542934 56469949 689462637 507408235 233502598 714886257 936816858 152112103 641400287 355360605 991465327 88696264 794446898 862301164 983999189 869908717 439059867 46411869 395537999 37007279 714094787 795510196 935195887 308005425 702411797 503076643 235053242 285546338 149144523 301945593 826616743 326944497 959562484 875684936 12592620 978858956 190233291 726539954 689091179 189192065 514129020 733949406 568491465 965858358 668853716 909572967 424933465 294832598 586653477 999947221 597398788 747084727 944459204 739136082 917119095 311623068 247141866 289019822 242354735 727642187 817515265 180643491 708553101 289485738 783365544 454601696 840025050 284558937 687985781 811136652 968899531 717967219 276906324 57714795 427495687 220448433 194493750 72226121 66152746 448367307 117672786 745666879 574049685 576036316 35329398 871938356 419221725 665611634 718503113 931476908 155782326 171268791 450474999 566562170 883151810 887380088 347197043 908252114 174155829 325506442 940404504 1973544 104303054 585069309 81779930 78434974 110709551 859324778 286572742 834539716 489474575 384565844 104190397 570122691 565968877 430536647 613977091 284776138 511143582 484010919 692640337 517247431 424472530 437108538 777024962 586877760 575497549 114069059 498640870 852983110 934123113 778659500 802138958 640333442 517093960 457322148 937664028 972732270 75426798 11975881 928539003 253238298 626097815 854830092 820254872 548678231 221255807 216058069 71454281 687361746 561159524 120112231 976760161 755805084 499961860 447199567 201907303 902193276 879291424 827039294 428174247 884681916 275902741 379096742 85668021 334525032 920347201 340396508 593710037 356250633 908637777 98226148 554553003 237537735 959881916 788090536 683917712 166404164 151678586 528370448 879169589 562164466 67101442 382241043 384341306 21761930 70608163 701700869 78574053 498901942 616702352 577903658 778432482 954685039 656833684 981818196 897496357 624159632 777874121 35203954 888218208 358211066 73936698 589840664 111725627 119868428 658305159 440359570 854484465 206540360 686560329 658341293 45002963 616484914 442485445 221100669 660170779 967804445 36420572 197216241 495180230 36538621 69814340 397976152 819258422 277779911 631125000 192958881 575555428 481821197 301270347 657892617 665588357 463398979 217218464 564536173 266389181 561548318 650302950 264313635 184117082 820078583 313538761 496609858 440777805 469740454 738990319 905301225 617408521 56972000 759677698 510024760 66855326 483584164 384833269 755131347 974977087 956331854 70571903 382650853 863981689 334729495 877836771 426588244 178974862 824570646 117606064 650715026 34736615 45002247 846856983 116672670 189200506 822053471 699974336 109284419 387080623 774001964 24319095 390571297 861268102 787004137 628982542 949549806 377165407 894979564 505098636 732023018 127043407 841872043 511461096 458867116 2259636 143802237 762884444 931668173 750465687 377804260 39417259 594056587 792040862 828165923 922072538 969616620 731801697 603553762 456737720 771388603 705851778 779455365 832538079 840995100 989448709 201848364 27495009 497819330 785404731 225401339 585676298 920613699 9898687 800670316 810737722 918478366 752266574 877389485 842550590 528608052 747163324 221455506 51649129 804705586 90366362 78749057 206903362 584330878 45568259 836165672 579384528 291923559 907574836 729785929 257470510 477536917 248901 859209877 629600061 36184909 669030552 101502433 279773548 263467262 816399665 48613948 969681457 372080571 597249228 135942011 55404171 444820008 207381934 319809250 293397848 867983194 752067245 843199744 796256305 298632893 689930297 669174318 985519701 698581755 414151819 512960350 292119717 181410258 241437234 82664018 63269742 157146348 478909272 244163926 440836417 378587188 925763437 280398958 60474260 505870538 425884905 287806691 96945549 400791861 842631999 323790909 637727796 282786851 529110281 715856244 340618655 570456921 612005517 563845566 886085074 735759437 470420445 952087192 231454182 111884676 112447569 277570006 227446188 600280902 556526286 966183219 501854305 409152822 209587634 154878003 155262303 110186340 680020698 542090005 181684061 551927898 401783392 248879003 784293407 29168062 427236946 997937973 108836823 81498316 43380649 172749623 408423837 827019933 21358623 631110604 703917752 751204768 851486010 423391908 668905569 191875626 409002888 105846961 47013049 124173800 311929844 301180317 147760735 364670623 130994635 118528932 556075058 497860475 119491092 193442707 423752731 740490505 387876267 193150275 534823943 950083200 839773409 440174511 9051844 984107992 839955786 815040725 696167361 760775126 901126390 994530144 859747487 234986107 239311226 628282031 406245810 310286093 766849620 221800630 67655683 308600645 667088272 693892880 917996657 141175361 67753780 605594816 137829111 870249883 772164671 752229450 484469229 652589831 13502666 499045974 706188697 298491957 360715185 208425811 307382614 944214116 660901407 890844057 451523199 69357199 982620395 947938772 220379622 938849528 746866550 93991241 870112429 58080134 306991803 956124846 310630007 984912180 622354391 536692404 273675954 266728054 244199819 891854083 270661005 249887827 307562649 145559440 609732185 449749649 517587622 342345367 737306230 911446137 367814620 658649474 956630720 629351308 279874567 538547960 600336905 917092073 550211890 872981920 60963883 990447629 714113889 107785988 453154624 701871326 924030226 539593652 529938260 911648844 653313833 11738047 552992431 190872427 863855629 102738796 52162187 224778584 575500889 303743413 836168246 338107311 756577450 42588060 620394458 122643458 969016332 426221754 755346509 93541022 875139150 507099551 940045761 250594175 138669696 516602452 713810729 333679839 153984478 558052471 808363782 383104192 600823974 801293219 838792398 514248984 957510327 939333068 356291853 747456140 269503251 582807776 490352426 436448114 436885973 824503960 175930822 810555908 261789365 105914738 472960180 666535519 541962272 554719587 526445735 34947490 670787154 144143350 767116421 73186582 270192253 99002470 392369247 841911193 401437598 996478218 606626969 693722772 232512110 934866545 781497347 906025030 250312525 293829837 475879258 637011597 959296693 3264522 166713683 23245784 973413088 190599837 612364340 928179345 570644555 175182926 786281150 364888914 30826292 306699113 344874490 968462886 300975068 623401265 774017953 548083879 92062648 379514 116988005 520809989 682482704 399436703 995713763 647005104 185799038 690757319 565364364 386058764 747341942 509149304 571209900 115527192 461662335 988491603 78673601 349825764 473269658 11923735 824781856 964318830 125551382 893392084 90806976 714694331 122404348 718061124 268450795 425971653 501715511 313916279 520645374 701015523 882240147 168202851 332660718 949607201 433237443 139846572 123252750 210962916 698566107 669707822 442588731 916734082 936917107 558113653 979628751 259613003 937620503 679318781 292200759 418102651 280220989 112324812 840563540 24044344 646900681 6711460 862843966 274273620 706128056 197996054 913422359 695796519 99576920 623580086 183166245 390304127 464632848 704106935 176319462 131672221 232923151 37304168 266362413 972078534 407344090 850524524 943741445 401054042 673668857 354924516 512762084 556867491 490277048 908760965 401697635 761408743 933746386 702394541 663878456 92086372 428460374 926089883 341975925 129221635 107215184 355749286 995473061 616974640 780786370 770210404 4031963 20501081 624618444 138370542 273710262 5061286 320362937 803908843 123153088 282096931 862347623 843176604 894670894 284077694 122191152 454168942 547967048 612034285 686852843 114819852 648354102 670053214 849561816 463045595 249835465 993292362 886261818 287226845 945148906 990466611 934024786 47556098 905851076 937232310 309607389 753254223 133446376 862881865 908044824 393360355 786658392 338201954 596807975 534302737 276920294 631345674 874120613 43832066 746569874 808484472 344445944 284066629 62698638 520190238 580308460 860502066 374451630 557657613 752101656 278927364 327879213 848249555 738132744 575236500 707502269 467810618 26721386 343149987 960518214 977572223 81886010 764839769 18503618 822907362 472937233 988222292 609348163 511963986 504688315 450683375 169780022 2959552 448871675 975683138 496771568 786282884 267762051 95985678 994898987 14395007 629409158 441403215 756022810 595660389 825087554 341843368 644836539 96236022 326464312 846973028 497960489 889320581 260581806 33907720 445683320 92080556 365434902 958980057 224211040 596233920 975944829 358734136 456649016 528221134 268488029 293093206 158382050 301632576 796866560 306356591 829239471 368922045 493975851 484525337 346546285 99466949 980654027 513796838 314981526 621430918 906113107 574360659 783416993 989983029 777801942 196995101 840732031 603536400 325867216 442529100 210352707 286689530 664609514 371395550 197298844 290911274 859389781 352206686 44151655 490914190 913815980 97285504 710905302 494319628 825834702 974859136 605584595 762235911 448470150 204325657 546002268 563789828 705662579 349320195 208853531 997513114 796105148 885218701 875782122 195805112 918641925 952814547 267893302 3658337 24854381 20184188 656907063 533045310 698390996 206886892 373390095 126284065 399283846 650302746 862760121 416549217 519240538 86985835 247858045 70103292 613989880 493203889 44560522 447616243 696630859 346319959 410973008 453855909 972916139 417020871 583869961 278967710 879205894 435942826 258614687 752695113 682983854 97128018 164353685 538014270 126688941 227132868 374528562 970718907 306090403 43256123 867035320 681831954 829200721 888302897 320484731 634805533 630979046 936149677 163699710 43127808 360501145 240492149 48201274 401703865 411359983 299914874 246347572 462084734 170308653 414649337 602605832 345568675 495339513 266990498 379585620 16480164 800118113 324992257 318734273 931083123 707520256 347177230 441418833 787012223 467831302 724281793 431538198 780264299 249041732 526393233 853742423 197685397 106081961 551228034 569057267 56941232 18639960 864046074 448504466 591460415 393315919 702314034 146283979 575420608 995697834 693881123 975249257 386087188 776500236 608155245 93309378 860245183 11338503 288974081 958249405 189028399 632639760 178093629 739127521 439598938 566048860 735915392 997599326 853725779 157510549 51565238 267560422 480850999 310626437 405497914 241628269 95036966 320801071 584277520 755804261 273657336 124452973 22958153 952145201 279880618 497316360 953938120 734229827 546038685 536204857 713757020 351921022 517275604 82633298 849999372 72132598 53168321 758639309 363097143 272588109 741593718 449767412 71624984 505066499 150728783 89931077 204815993 578976363 669518613 278731359 970546420 188952782 243811334 848863846 757336331 671222812 310710289 583991303 490320479 720729782 723141523 724261943 372973083 836082007 476798990 423352316 972023639 748210171 471031046 167987222 818789156 535350339 91466247 95577629 95092305 681075718 596445295 939626729 322654223 49933171 860409251 146905172 292394771 641759183 501451524 885429509 93695910 131416269 856633044 629062036 571261939 47513044 544528914 560479676 823234370 283178399 751979895 540739903 616846605 216852944 644464700 535060374 350398098 167312647 582116077 226397546 422907190 435381163 694601396 412092294 472292214 38966269 945988086 856151170 399570264 235059732 622488406 279235827 519391097 772517717 381909309 431166858 766435258 870367712 676350077 921411925 146770362 575396522 530007729 125810080 157142365 274727165 281833677 845392288 271115615 340189212 992402621 41776341 911566330 393185619 914013266 182707251 464080441 151212698 51683357 111995595 101324246 51519242 848976824 303773529 923213912 352101102 34387798 145030420 100560219 146397613 102153782 982883558 206451734 750405449 739542188 415991705 814643504 71346098 63071011 811319047 131100605 265490104 22778352 81346263 676675696 246358974 254821395 1437492 764764463 128888701 85794858 314936507 79429757 566485736 54079108 242257690 997725213 777308682 427189065 486010522 902577497 106416472 893584493 564859293 869417979 439638847 259779918 83434645 310387263 718577706 723080701 122494668 345883561 910708273 909638382 980000866 850404091 280969632 482992238 319142416 648518474 704688485 566409374 675985281 998825881 549041254 683495356 652569520 641994528 945400587 489182565 808748117 168186952 691571182 886461745 249913710 973605510 903766425 675747733 99491060 356047571 907513780 824789532 951078309 374974126 991377841 812175835 684513601 339736338 475438578 39953097 683419348 383851510 126020856 478692684 461249877 238644094 128469640 4953504 303460738 690777874 542676147 109716574 267699683 827429835 171133328 80255381 990532039 546686053 133289518 460327473 829983028 850167948 74464715 669990590 989060690 186439499 458565172 846835892 857741538 1546037 288991519 340746155 166856002 462078714 715096261 857983426 77465725 664861637 18121683 343107144 81161763 794166710 645452007 219470810 203117828 186291431 945518266 127505416 999295327 378579305 724187208 195910185 434803223 42141890 530928965 273330709 692377942 413596586 68478868 592687669 322435780 64473428 518853699 435148422 799388041 947433906 381092993 944229798 897677765 185475692 997188199 579155149 249104657 567585744 907597088 740729484 105779894 265648394 417266223 58539595 357388939 681881805 749311221 40374219 714677519 213529230 957166888 194388651 284290582 636952891 633730700 920487530 520503650 500922643 231658680 165286655 545985950 202252340 331870319 155905836 222134094 297200314 46136184 42423328 780965487 277606167 531679751 297274407 963281134 705913322 574429464 558984158 809428866 646635524 65771098 786723546 161654217 685374331 333618914 525561871 973034014 907633920 524092355 157094068 160923107 821118845 169294113 488648489 999801896 812188713 480856271 831332237 702523513 587490592 396689373 206193770 116218159 854718680 134210995 950347788 534804085 215989161 752817216 70413110 617219677 467728343 789911854 980132200 938108004 526309598 576372266 906737332 870306284 73303545 850155946 788708419 499845316 282455181 868944985 496607051 930838455 793911109 454616053 238517092 539034712 929339242 131200672 313955713 21970111 47097585 162536977 491481817 38920244 42016057 342630994 808534989 213204624 800444945 828956079 205569370 529580322 855896128 426229097 717610921 184919280 82981866 770531667 400290649 951057413 196262742 491330354 493702041 44015536 419929678 417188199 731605847 701035656 517864425 934912977 21001756 996139813 996562795 471069466 335342006 157526234 633543153 636999864 252244162 783088214 847384827 815681269 535075947 989798851 206405224 919668293 743072286 770395964 199003662 189582939 229435201 612810382 67210341 69148584 950753540 244837627 582723698 928872443 49257151 651162136 239876459 46808471 671120666 214891647 910676575 815514313 243753659 308224396 259621622 324870026 80376902 595104137 866841974 256165568 987839928 159213860 235936089 240896501 482061804 432551430 352611176 768516796 124963158 64233258 921912992 776695517 323131724 827178773 300524091 477908580 381569141 667940308 500767416 128439892 289323186 575521045 284227523 381994645 45699766 446627493 817557678 675951220 264429254 223771358 248240907 143255991 621866352 895284045 439051124 128192453 150984349 421289788 504069784 288191930 276368743 141159080 789664305 622707453 755015256 450012260 874387489 373239409 242199357 500831550 125548358 52556069 553474618 293565871 86720679 237161831 186560342 447938935 888054036 568047292 373326655 343194754 73403863 955650146 349974488 970814481 420793209 146980353 108370731 682749109 983649872 247119878 218120608 63384905 602050655 218662332 567664621 946186490 335552501 721046702 698367728 899501442 390579458 895452640 969448347 484723293 140741982 357653034 99496284 81587830 527372152 919130663 719711812 636021406 507577752 436185709 105045036 993095977 957981248 176460192 401729249 173024721 892623892 959033212 294163049 872040777 747553113 615101495 574008446 877288319 414700220 918242470 111975797 875065007 457840973 930157932 964907251 952032990 428529427 982477781 376993420 663377458 155969329 394719757 434183601 7022650 686177118 600274612 485825571 869848671 789096498 456866108 554051954 938631978 653703351 745021596 753110563 456514 216441731 939439064 206423224 2160296 688958722 590931785 264770607 460068665 332458990 706922730 329693697 375644664 492211698 98133376 500320955 96560362 223528682 187860338 758625122 278157514 853226560 784576093 622320286 624435209 102188067 636037576 991209944 171568154 877229853 168040958 39823158 985768273 136504380 566425311 682852692 529965851 451071678 813063434 100988791 163045129 778745279 184033499 523725436 952636751 52860432 920159241 181746410 683079492 860271639 637230883 361218732 460891481 765723555 858523529 808785926 155261183 854240307 100635361 242435089 449284678 301490198 984115967 774623345 673367698 38980980 322884578 463145787 598025089 652182263 626498953 586865758 612219900 536536359 148155560 956934215 981660560 49165025 337195879 965935942 82871590 504725454 205486802 222064543 233580588 164268605 193851598 353562483 391861745 480068915 578090156 901111088 130139702 552443646 900270959 389088144 170118806 126184087 784351107 986035056 61080807 210296305 812053433 344769580 823343631 508805799 915354301 915242136 915374275 535858614 7114905 527609511 247933084 726582250 335767501 306926240 511775529 132264745 737294611 763704593 714620681 898624420 51861979 974862997 485264433 486710931 589871313 657413120 667898263 346911416 656544434 609289644 142751509 800857042 120352551 65165462 904877681 90654350 417203355 298845202 175858839 742376016 438484182 20842683 974184683 470515900 873997403 382969219 585762976 573630819 410988413 453443501 574188227 264090705 93355290 959262609 492538632 273266463 46524731 725573948 702198992 674247282 768594275 785263683 321525049 801820951 304265640 991784471 480637203 216308814 508547219 263644488 585990546 171258562 573464768 752983706 258492002 783812214 295598244 506722671 269931996 896039529 979104088 880875889 454126034 619789791 768092781 916332012 555968693 699942588 328521964 664216750 879663611 178322516 365027479 61952444 426411868 148659619 86615826 767758555 539380413 182591124 271394350 793988139 578043872 108749387 864387640 658425019 575632312 671646344 553319909 30008163 573336311 326361217 603412714 253290348 552764778 641609381 338432860 886785689 674630258 536232023 170052552 179700507 48730118 303129503 923497704 244270545 254816302 887157029 452167675 871853485 160169060 680623454 481556963 687923354 341234698 299326903 439135603 634836903 917022493 639871408 154105102 631486148 666818326 377100999 559779551 684567844 468096075 995713376 318129507 128635278 468613368 910982660 897223281 247506883 172746097 361444527 495029469 917071029 13586446 901880250 488614124 679506574 646661859 530546220 310658239 315160317 238395060 524484161 387119375 235688490 255582469 621449843 510782908 481394186 231557499 195240631 65405438 968833666 23434449 158678444 464922414 723297513 132161343 729780211 283002481 328511616 252587401 519476850 504858797 711315705 717137595 423198878 113848967 260232699 851784934 343487692 366383337 956268526 478301591 773870452 951023583 214694198 196043292 629494185 676591701 742518921 434502569 659323305 628657804 929090747 585546870 319630954 292583533 726073003 58016622 694679730 637703703 542453018 242152889 573587277 755401350 486617509 703676990 16907743 515338030 286215210 350360917 798595552 914643019 931922487 134819695 222548314 111640351 618071128 534454494 379070771 740075362 868245682 171311762 165171427 744729166 909866302 249068302 627795544 274979179 769917341 846942452 642608653 562587412 176101097 47710455 788180869 530083040 715873262 487733177 741848602 103353443 751070286 733705692 961234586 800546199 358201575 258812569 75542663 963392775 567182299 594099940 270273164 941598155 208887586 917184365 314400010 910029242 443246555 85073560 684237479 875350765 380313572 490725733 381829586 845996062 390830094 605874059 476935892 508716860 372560554 161604390 230768786 61630809 89003278 739551964 226389840 192453824 101811680 273325072 326330553 829436793 12576102 572673111 347810018 64066980 351071522 799077693 379724632 787308823 160468735 899873778 14281406 165261053 829981976 843726892 424538343 852580888 439517286 116293069 266612449 403512827 279526525 649219662 647459937 862832740 573943739 59714983 488907230 379474877 375172922 173679692 546394264 313927415 275279898 502808890 53359790 453336022 774694041 445169533 952119258 403598844 781599206 560631071 563043025 499963478 503061554 117052522 843987292 433411502 514606171 463126686 781600561 247623050 878853127 959362005 174056562 336221837 863917993 362575463 237506386 107541159 806563359 462796112 730601335 462114709 705575697 459483025 439848276 870984910 741880911 608807643 819876450 578992343 161153459 585108270 519484032 110285696 73936796 2916600 56733436 27183757 312673469 847888762 318889448 671377018 579327881 872012479 188373619 819505975 926549435 649976472 854511038 465621252 280324235 629223289 424948519 943659342 116944276 719163005 487435282 375603129 152431913 935128640 352503998 502880564 173058121 314516213 184477367 648369559 983657799 881283496 784197136 592425217 353204423 577452106 890053855 339378834 481182259 667122546 369893894 412011633 696919179 766396788 175335422 75698922 549727224 298145029 936637483 606041930 680850707 476092660 400306740 926029916 328593808 545292960 783842703 92322920 785413186 619732999 513685185 464613470 995167252 160658515 787057222 638316738 241536296 255254152 18538460 547166575 872292578 98628449 237678637 872336714 186447865 225518786 564670481 273534835 798609102 106267493 508882343 816512916 497951198 217516499 32115557 685461898 459299925 172189316 457513389 445228220 411041203 17169716 43565861 413167470 798872053 462842496 226818343 713516170 554185395 967965174 724329587 93405720 512359364 256949832 228645400 651641165 554498463 686962174 203181236 287780511 400596939 215140048 607266630 900407335 395985081 966519776 83110522 388459439 504221556 246921408 182646823 291592019 780704183 951723047 90752800 400368877 794841598 358197599 692726646 322646587 390240880 289044997 572339760 141418067 611535916 675475189 434390371 392220031 612448798 600955847 797976163 751469403 667741556 524967209 77698598 892244497 768199599 17994612 455572887 828483364 686528686 259646482 486731874 632036808 417314428 965913441 349111981 409307240 84682797 587069665 583181745 681618262 549154921 873408965 373304023 264706208 974983284 938623354 363164868 547682099 914478924 333728957 101018533 759541722 114217481 118731137 705666665 395626248 300777492 428247338 192160901 500795550 15029943 464615824 268715353 524834258 901610340 345774442 735077021 530358364 538905054 976065029 149925330 724992051 151818574 147470305 795773909 8984370 539421669 959766597 211724862 657867325 850200591 70449327 450704199 901687734 265906824 590096914 286630795 652151524 571518171 783028635 891743469 610816703 5633667 715249036 111505697 860415692 162654031 208767569 207144448 340249798 119920410 722507646 968557304 734658153 760084155 670182957 744295953 705904415 23683084 118862623 57653952 719704352 400810140 856156324 769592167 514654896 869868518 506878717 699313162 882955491 640315939 454303138 61122020 749543027 503897502 692836733 671419579 287552917 899745788 27349153 700029385 479103175 964181685 681388753 310523084 199678722 629713940 639647381 754268876 702822007 732916786 990015053 594514455 896963492 111687944 394594374 388007637 381070068 649019870 720353806 980933221 137761422 992748330 84524203 919436214 250243935 468932101 139858073 557967545 998487301 551777904 983571391 142833308 648483114 910898297 281773198 62399913 379350340 464554526 461620627 191840771 118536804 68400399 894663417 730533130 46706333 607856157 94344964 923516059 392396334 981317021 39682209 579249629 193125128 273742415 960640074 471891851 601961633 511580290 151152821 698925720 327659445 230040236 42600605 362322477 251551204 798026463 50441520 526565305 762415309 501393830 801142741 872775083 715893181 942648662 496917328 588614167 914839295 210136051 857487364 970640972 76506421 73194400 268370164 718911472 195206414 889227367 915864898 407533773 351831850 291629912 234004064 695946883 614571322 973529132 993458853 571020130 880048485 799195620 222995135 860926671 804160327 876025623 161358523 742050247 95267877 195294186 945646475 311169142 533039880 546065716 925340193 483649978 994224365 778402722 262238691 903197443 165908240 692331316 114398447 175389364 826875076 728486731 755345956 173468820 307082510 199223688 528892882 836605402 471911900 438426685 802442892 422345665 90176799 497408721 763060705 901584668 94471939 525802424 392519217 115600103 137609614 37511911 992369651 695325165 974622080 931509760 241314957 326562815 44525103 442150901 290942267 834524078 348286287 537298243 848827769 748299167 655645621 323200776 374390231 233265864 335692228 750878587 3847528 581919869 375490461 550320609 89429234 354386776 9904209 41630493 221099475 119513913 516829385 136649367 580012708 965537489 914090943 744022452 662964482 952978884 968747406 821292048 511347224 56893500 269554462 292228693 496173649 611288325 495148719 880807652 927081000 885257303 713924463 729211857 656013782 245814151 442137426 596938095 877236480 25003019 167882674 864537932 41856799 964539988 847662079 323261659 295254831 974934750 465030521 240140074 408866198 124851256 5459368 691308221 460572634 804243882 85399139 311765939 342675729 667113210 889975546 160681856 177496822 613841150 784702303 576601930 51039050 724988560 313643128 562656891 485222101 270106088 841004518 433078020 500598209 517675310 267831952 534503025 696492364 703743501 511457531 924368568 743038221 634902869 371319555 920944655 172124912 213958785 161118124 488019401 491257044 457164536 820180453 539147247 829790749 57504885 500630531 882311090 262626087 676384890 771233563 325909865 884075247 982692537 85253344 247616407 470932482 4018520 35007450 574758541 404859074 604710391 341046455 578311746 585724809 436668967 31547116 511975272 500202070 703118126 636473295 366426201 425731767 715334523 862472927 112771878 817382552 187999555 859735474 656887922 849834886 986042163 830883104 435291344 10889920 817992402 249246292 155238743 48068495 599772309 773271428 438624473 931709293 884087763 128557697 21442763 894228354 39760150 766967498 777163693 438464508 619976941 246467527 709179044 392362167 613857223 893774201 188634577 129491950 511668524 889960572 861420278 506750456 587774721 401760423 260763546 84432479 13053481 867422924 500258629 350302367 724038875 322551058 811414916 722395042 234499263 551507397 676182038 897882363 641481133 686266380 976101242 575496793 961139294 226963328 580309901 180633518 367984822 198402483 521766190 156612106 139214173 582986805 265925019 421897286 863362025 673992133 227706220 434452718 766348625 594777449 523406702 229708720 855462010 225731422 629674007 450435098 5578854 268366504 404258668 945252338 786521153 306162476 484068584 524001629 436445666 682082643 756932926 526065771 672208915 142054077 679458421 817136509 95807453 113246348 885180792 984869118 201317818 516987730 128793693 841160549 787420322 564738733 625241218 68012664 677400738 753495804 317025645 535577295 957977301 969480175 128228234 223347488 86273143 854210690 299142250 935512032 902660523 444620824 273541686 743799766 348856623 306516640 802722837 315929042 240337341 954065828 522020672 946268619 45055652 348865910 866435474 166319120 932089614 250933795 462677528 894748146 413490475 640667989 68918128 81396195 389387815 25423061 651039701 741316711 690777422 492653312 497762817 839972290 770403717 350379042 301159587 983726968 938327129 844927482 289906215 312092418 669605198 69538312 664756784 267108372 987685080 276170764 668838691 962375542 22341674 120257575 967598043 516776730 452020902 346553530 794821097 195559621 727262159 87472413 48212686 916185856 130834347 406871206 423619309 730860900 543577192 524706963 91080997 196750480 140438295 235848072 471494777 735285352 973444371 250167667 610391284 379699777 52938553 374982631 669578546 576573966 781622769 830966276 542506595 743253029 185299978 136480385 316270976 186113474 820982540 355651488 729866585 457681788 366222700 272052080 172493962 458809558 561827137 132273381 131155266 298084141 143628858 764025560 423175101 132549148 493157421 661601373 64642405 557776386 399440138 873531400 219733726 587335033 161771236 94398358 537203094 836873596 163148613 390899577 163234154 206011288 653981399 738192582 79701179 956768998 632564553 760774345 153640965 8418656 942364851 847070590 121747803 615427496 470273106 59384699 505729854 766106070 515362192 571739636 458845009 482828710 515505528 111813506 488889574 470531840 728642871 265283616 372373855 404620869 486192748 218499755 564089161 910415256 109006450 16335561 10908534 310395384 178480198 928739222 864052789 663735413 873594636 938757184 614144623 181452288 904234028 460207437 855089504 63137982 31857053 191485313 613039531 640578118 715225915 376817240 146807927 882769749 532015786 644075342 294247526 963522376 349293613 6389992 492085621 408949814 595013625 966319180 164646320 351569584 66000060 608678288 940886482 691570818 694148376 441462636 614104401 673732636 149299624 92548499 870948317 285225767 549782000 545442577 391283064 197305847 348261420 105150857 916916026 193261141 708976383 98157416 135227292 585043460 255409358 541421645 408911225 347973906 26060031 520736264 243042866 72547928 936671391 751701670 261931221 26415010 297484296 526865111 259618164 139314420 970207174 906572509 746678760 822863199 246492407 685434424 867750286 174412309 362853279 111634134 50541398 122274468 366641511 834084483 192996463 964752779 885864565 586862861 640710281 735975957 595343540 939686026 58066745 566401423 420460174 580299309 319526568 438457025 413165203 61883532 894742658 560355095 285213495 177589092 721400435 60798170 31918459 270213729 838531688 385094586 59645479 547549430 656708832 810485174 687333466 262756298 12397950 635924078 160533092 974894658 388577143 620786762 668481628 892738484 782819787 816950592 350385553 315466127 398350805 145261710 771885683 576866094 464048518 940811668 886371680 689036183 216122729 551690913 234702590 189418344 177549960 514647648 179537229 369336056 682587035 928473291 971795941 667707672 365245299 974466453 417024706 572858813 873793315 74989538 978169439 918790902 323316931 125060283 824599375 233961430 781946787 387993684 214111294 20053199 306171897 305000683 288094352 638708722 292508072 72846705 353923614 86389401 215868645 293993038 587268667 392873232 586120722 10506730 60660661 556881742 441119141 446091853 376406133 12216776 960466373 920108017 883139327 801352776 293859174 568304515 584352666 616065258 678972004 8970923 775708985 287039156 676656018 865390374 507937157 156431799 904141936 671965814 553717800 971330162 418765900 615308300 289416033 60011822 501847480 605903333 551895954 193122532 976278373 660234296 178162313 538273218 199840283 248674641 494722 820708278 783240958 648769751 548738535 795258497 110085251 22987721 871756588 798801849 451660404 737566407 918082953 85687984 225284311 482124215 552822902 664343204 500390548 201100867 355938513 882835496 703933943 186737492 10803852 639762998 103923883 223153502 820983802 171255328 463374694 406393531 61859273 366746046 150309711 27170934 393295895 399336844 101790289 66350190 561005478 494119373 290844221 865953001 14490977 896346185 217763874 978824249 242291121 424724202 615752969 758840585 128823674 841924274 665928430 107313861 251953308 613431107 913928038 730488338 640314379 569253753 711910298 234008379 243796414 15378976 214634882 465028523 322114491 328230410 394703481 572596416 996661824 784923508 484832566 717817858 465668603 927877041 308211570 224732321 244346613 38403727 202890620 717081989 984834926 350982885 359155946 541074372 587692431 234143721 590592571 224058766 134418740 254208364 639372983 972993775 866097488 640477459 763241232 450823896 797912400 159145858 941942826 872857450 941636341 746583546 287685037 42364742 580778952 571858228 171687488 780274843 594909505 626349519 661629188 766546462 498986342 729715293 119835998 385397397 996699238 449439825 997965963 683870031 535204204 425329663 457894062 803409571 506870234 50291267 38206350 610086005 779594523 762188165 75805779 620850236 680923133 264991511 184451984 144304222 197580568 358898305 986482894 568612273 620396715 388392210 515450090 692225381 280930437 592221870 247680633 655872962 759807907 149445614 100963669 994586322 935202144 131073816 498213629 803553705 863501757 940097456 689212706 395196827 593556711 205078115 878475217 825268717 313384555 706228380 689581655 101889542 636390737 97212222 517391315 603072474 935878798 348974905 701441452 870854602 73262132 469506927 105312186 569285706 666487007 269957769 714784703 231658740 333758453 609667958 378196455 946146460 473743559 816068963 142073330 224949075 147575204 290586919 731493087 454403025 670329732 410304799 895160256 920584874 394791442 464160495 905856263 766753292 206805286 775250989 255758256 639273880 860280069 56047184 722357199 332695310 429381926 755628162 136973788 640778727 574363004 787231562 479568095 871687577 227513448 532996321 544586059 178597865 414478195 522112681 838994265 295210617 548542969 524112535 411336098 952756228 240113245 818004782 341363155 145377357 958945244 18972863 68876054 818588186 260874491 325177948 622221192 826888280 794874390 867223064 811051233 507949896 475384538 800310158 418155879 485612346 921869982 288136896 25960540 279954305 820876403 184954835 855365713 258235818 82403839 168448246 42043461 83958472 423542338 3852391 709357599 153561665 625869559 660703215 433943308 578037618 372092434 439183836 715040356 911721343 508023379 215819471 575709166 630987887 512610014 921466119 124396843 4207299 595262739 365562066 168818261 229977918 594924813 697125637 308827331 975623435 102589443 833347223 696942625 451073699 324358914 257229817 180340553 677647445 23175616 422544522 877494908 784278986 436812000 398396969 380602799 957388463 538712785 14466476 755128315 583046497 70621776 238365558 735231466 237012266 204541724 479819009 743570237 4031800 745833151 572236378 427114690 687815621 498806604 19624783 977276492 759160384 305665596 192305813 858696396 693254923 430250613 42964704 530927184 333871440 770377204 465870864 417578781 979448018 328877226 340660100 418365263 324975233 229521528 366330762 979386172 706233955 708226380 252734256 779865640 541258925 226521374 378685722 658591622 544864840 507428024 933802227 925889229 694119800 837185990 364457858 874119591 188344705 418345476 33282087 592889306 560860560 33510531 756403081 35347471 686804746 713066607 168646277 903240305 636063702 555156639 940647528 420566528 169355985 559976648 997829221 445131992 525418668 410903924 348378756 354449934 507506091 932253088 356521817 965725105 149241668 338374781 827826902 98934383 882230575 461435795 976454740 362749356 40200166 769246948 130228681 836447587 410033414 244774714 108331345 243665242 217380144 610544010 593334839 69115559 265962755 587885240 762519580 428192265 154622396 217290604 277282398 908998597 669787258 371203004 820539039 669649558 755675532 632000146 750287812 346279192 99424107 558625686 639791066 690896521 854112555 597601974 902544476 711404921 290480156 333455556 893101269 216023557 933779764 191230562 146100826 784340062 550016856 832774476 548904009 927109940 770401844 603214845 746613476 856010658 405763184 665341271 248447965 130964421 941006499 947173976 961747209 939277317 652099070 879548624 450589850 530419004 305641021 718657644 923960109 288700283 835757233 383739137 946231885 931267125 129700145 829524405 560689365 679875725 561168509 938801941 174659803 842893486 526382574 974860653 191596207 891950096 304663132 519495572 330477648 626668652 595230315 230439946 195257757 758300546 817892476 869927731 841795824 827284227 514065574 25612598 477590645 198983120 719040179 145413042 453426156 533916093 502004980 605446065 932155602 628624755 370586455 162926455 803920201 689976465 198490673 465209301 422337466 508937224 414476959 820931486 900490518 333578296 577671895 242125724 408480753 541129496 935580837 692359227 661510139 401436403 322853412 962881995 201491765 589304167 399574379 844952441 497229153 195400433 94235886 504606355 832673253 663513303 569419142 682565319 99682496 101603938 251176180 63791957 970036159 607456193 168696925 428888513 327082696 906651838 660579535 622216206 934485069 889078755 616093045 870256999 256516815 217201593 998436988 268418571 169274792 897581785 889391059 348318159 162067055 884621330 249905823 789441788 663156753 924705721 90186859 241463901 621075876 412763027 640043393 372211222 96289021 321158481 670851248 225055477 899617501 427667937 826886783 253544009 613696716 734808515 836928065 405428356 551897489 192315 331330043 506253127 235910440 620623778 760731354 311339069 370734755 205888632 641187853 704079453 148908292 386480810 200714412 215616702 109940675 200724185 293107831 926206962 967793834 193209964 925621826 856792816 259207218 434800542 512728904 352648514 315561993 901857013 203623431 951598201 242769265 236179538 67707337 587028170 390926252 160425826 339844541 319202177 77381808 589308847 642293012 251834151 325502966 732448408 763158270 405760568 857199643 356046231 933305416 829795955 726413638 151602830 979917284 18253525 857902581 184585606 400141780 364372628 449768237 848058121 920879707 272174223 861709871 242773203 422525608 801733107 859680821 650037485 114216626 958963899 292530784 957910154 578941228 489861840 581285174 62978702 323648939 475386982 745252391 439902548 544917866 636967353 416545111 755403458 375224887 299840367 639332841 539237598 906750620 449083087 121992413 843177570 801723482 613504954 76530971 317059306 261184347 591610788 7453690 258585947 507045446 924981476 148289152 59688741 337097167 937546588 401234684 672329249 580779963 354760621 119399741 155215374 862593489 992194810 209913939 137725074 648318108 230005390 50620149 934143521 581900550 338977693 747797602 177027014 946947949 246210446 345588036 285175567 782300147 636854729 462697928 153168113 83758755 948512936 961956488 267111695 724433447 789205155 222666708 210279597 816420580 774900081 562680590 810253493 671967605 885120387 118049449 708795047 522081573 789252707 886602372 51039680 402886601 10855276 65268064 161800309 314655344 923143994 919529526 256283529 400532686 640664796 846290580 291739337 898435290 231571416 96477939 388474900 849442167 668433642 249918866 622324997 179318543 686766779 396161661 986652106 533334297 108254127 501107549 88882184 436677368 446907421 587918023 171755094 295716850 759351267 112073872 480706473 536770116 309117595 203129026 449991903 697338628 557191046 880196365 402429882 106507354 424148552 826070943 718893161 197364193 818237365 593910884 270311875 17115195 110079842 710178773 463125122 705945645 249062176 202500082 260399758 350935072 304319530 185149859 65575599 801900562 29866785 564872469 772299659 363197622 695709133 118272929 106019689 841196865 140901572 808944074 308683297 791180114 75593210 59131303 470569319 840122550 385058161 64148045 173062475 291152563 121143872 766359510 556675028 33391573 867974702 757224704 813646223 837312445 752687003 992468844 309520222 841970999 486484668 728233385 338012487 204612441 749363344 624712706 876743969 411202755 665704525 542967824 323363337 741440351 318280984 714297183 294889160 74949863 524493591 829229466 342936293 748931698 458093043 636453437 972842468 868457783 29098344 513114304 638361946 898846272 888567839 586610834 66816745 497445008 454199785 78268485 529202480 254337854 169986889 187393704 266440334 342732918 713081168 671502959 136965682 834584623 758771558 927133934 578558225 841599823 11876797 446246697 721947365 433953571 461455138 699975429 579167277 965795249 611055665 273672198 105997349 95975458 159659460 676679203 17900496 64537562 676826661 777811696 889389194 922731558 990931469 636005890 131762913 101845602 574181223 878450723 715377055 53438846 303440175 504414155 122874051 857417895 506095777 882151256 620928142 499015894 426974809 666133390 941134750 766215973 956141816 644462728 252445695 852652301 270397291 140995296 837571396 748951506 199546207 222711454 697300194 275571804 949817731 93709191 712585870 387773737 16686328 999501836 9156811 40112550 719091853 647910918 25458304 801102827 562496343 142324794 393316267 148876913 902640381 704068649 342857092 45745443 638893560 660478199 558711518 922642083 328602862 542994777 945088823 249693051 548606368 20787322 940790090 581829605 512690782 815249786 334501461 414457602 696120628 922488934 223105681 769987647 362016298 977515380 954836566 918108615 440394446 222071640 651234682 819082680 964716029 692769965 678020071 840343180 472523980 515086855 185960653 475378821 324558519 239884279 31357400 999214941 24400304 254164155 378017517 337860964 818289858 5637233 69094120 123628249 439403806 764675215 266866270 92171704 728375567 783590899 520802304 510865499 833929437 282124491 215827502 195570880 158170663 494392313 712301104 786214208 824930871 321203379 905553188 912277807 99142913 643702923 27292264 395295007 683545067 942336412 763918044 721676947 179429004 615200662 367791903 365584700 752920807 256183678 765646218 994331216 60555980 3047774 67886289 34423464 377722596 826124649 762349838 345284000 419764195 9907844 702968650 353263926 684510949 500315581 666593612 128903572 456269087 56571212 254565208 616640421 980288480 213691965 146129290 346850417 140968022 431862410 207275317 459342987 75851525 947638737 362134335 364027983 452247077 168588807 35007665 519764422 782790668 943892797 76103014 921695802 28908393 243843032 612820347 129884124 817088721 667268482 539740522 932012209 43821337 765117054 706655453 221507855 959957361 467442771 475291065 425449853 854739780 751099303 35708432 636806913 748500675 153952153 139141428 426318426 192594357 124467763 286329403 159366480 576816318 487534250 322597282 60431752 376442300 757373268 764330764 515562066 294914548 182047404 452428341 750921622 723223884 312725485 680331317 597728629 721824100 565860953 505464625 720968744 951627332 194330308 293063413 439505246 135518157 637857745 499667219 674569366 748364579 235036797 687190901 529520717 262416270 852310665 376325882 437912137 779851672 864153640 786523033 914732646 345336172 147531823 67902595 439256684 503972829 366380234 496711324 885708001 996760171 158501350 42397736 643277615 983453988 60297647 799235743 43645525 222645751 368637454 16099935 763030086 91291714 42877411 846050124 114184255 508077820 899025262 865705270 280686853 701196087 539637937 549173493 541164399 962754597 488318900 124760099 39087891 574780450 84368231 798900646 646319437 47229688 381934992 885460299 924427480 187140816 777235554 776524840 872921111 143151662 22764026 900501862 55520710 705302676 738486194 876906924 189521920 423545313 159646952 687898692 863141761 143798877 649128380 718983063 172283204 55309275 766334451 20698288 424410363 256909575 768151432 804136366 497465279 95482455 755575217 79982886 709684679 453650561 272224643 321945083 307089023 21974892 245081682 264901410 454145091 261227816 322339655 170581162 976444262 195355062 866244180 751031073 555900731 508231545 312143510 173530895 373732669 380608218 267154437 282143818 22966539 13356902 879767069 134118046 659483414 319922052 979143791 174406701 236405388 155926811 57135270 389897995 638171496 571015278 928615742 975672485 307022787 197208646 73132336 813551780 874055536 43195423 390853753 994034087 913174070 779877757 470417367 660468771 443810976 823612637 799907871 130402734 280698575 971526676 261078193 760026628 97620826 814825798 898768129 585301575 388566830 865800095 175360955 742919513 761910952 220193666 239625511 798911705 251663166 271927716 522630095 46893966 432550729 729275365 125922964 841098308 639610745 633673982 277152953 701473373 232002570 384516678 727737943 360146778 665679291 174761979 153420162 891319338 48654439 790504044 71137433 763678820 75860563 215865451 491662636 162793068 973225971 464956732 873227028 445883978 655771336 816170036 434433933 564432262 815596658 435357816 939404565 409989586 186719074 99731657 389417291 2663825 828769965 468641743 950366392 743893416 365566573 701505489 760774940 488827259 230610090 141457537 484001506 385093354 314011276 122247637 616674549 783197178 241674209 492389264 247621471 405737314 891988641 499228860 181828538 343809079 953632682 777524469 74582155 721286438 166170195 374464615 974312843 833853730 783556133 382989913 209049716 351326063 902043521 801933267 784796489 245452208 469745749 621083362 17272586 373847869 714802307 776200614 706266333 535017441 674584647 301847706 217599823 714943957 409760108 458527765 258611259 618200486 711205989 129182727 801293235 539741697 440453264 736817959 979415109 647719352 58080752 304744868 456075746 94515496 628551891 981027761 869258834 76484549 647589896 453116467 733075047 923218561 5542705 630686339 854857319 191455549 411615620 532546700 898685252 456501038 985451121 53249368 197541157 446012222 274661993 346731341 573693138 551518077 93300886 959131376 935582151 236602380 996687563 836338479 814533621 70458846 185735548 420446845 250207624 212085880 571868238 646735129 649554475 49794805 401860322 867629830 249351681 597841876 462235047 213784955 273982314 161580179 180612566 26453105 278179120 935499126 785204959 974102632 562464374 794560046 982713446 703517803 522966190 694455816 130675601 655772022 604177323 487420535 824972218 733604778 400320409 207640364 630348965 358827081 40301073 13077332 993825231 772922019 38974069 992935820 891173892 442163841 49686503 148835176 202957996 466068604 173417728 977083078 145751366 663435601 815431849 639372334 578830942 313908392 581599911 587127246 852896210 59444900 938092460 112462951 242380921 938303256 355066125 336869416 213668382 700844135 330831836 600876440 829210788 442779090 77517920 380575407 774200773 794308799 634284899 778067345 490483605 918049774 594392910 232539385 349499770 786714677 458015636 860655450 613041482 759577323 957309942 35887902 490560649 534039191 744675288 915242733 989386098 274513180 210874313 437614650 53340527 546847972 387667625 370468811 496809454 17351054 132692146 53710943 82899064 458760936 669149423 433390820 740769880 737182338 829798298 177614992 91318662 241798837 172231645 524911400 772198886 283948053 170667244 500136646 615810990 859231342 218505184 627448867 496896268 409131087 143467455 407771303 66985697 178358021 762695448 991138349 854878146 753403266 912885662 840487691 15958937 450216446 479469831 552814923 421824056 101538134 700419401 940015709 657517283 205830937 704563645 137518522 193651378 672470100 226684470 462895984 598165570 866811297 331571305 205085720 926292622 424383842 858935252 273295643 809591421 75027839 265965071 434817062 752739928 923212189 175725905 702155305 787723102 107420489 907690477 248236104 908784206 343633751 132768597 423012558 60882116 511305430 509969448 726821322 139183363 652701525 707759297 150719861 984398564 307435119 723021914 783216472 702434394 493783439 836461359 404894447 750629952 391647794 790971873 70309764 313062962 543503867 636622279 824816954 326817341 930796464 217019421 556806091 925892231 685143533 854462790 627328792 920527279 393781105 215472311 759835725 465161181 719795000 862819678 213718812 472640953 179599993 482422055 983652374 83088188 532512550 318897382 96430630 118979516 929333743 713371972 255105952 477909898 316280586 402376327 472129785 47418461 628657876 294982590 200031778 870754397 62911258 841717600 310452683 219571784 845407159 849256647 44921008 873456382 21759793 242913720 979099453 97850101 728822320 581129566 182241918 268454337 822300596 238303839 938216373 588156706 488636748 379546924 306278396 170966025 443001218 465962854 988036687 401844530 880292803 285751530 408713844 427370023 608219013 615385696 75597126 167076955 258805134 669300851 860536482 833207881 204094777 816860309 750051704 593131734 572357030 263262758 741924520 258787904 721388835 519154824 769055392 669338570 890790235 390410174 887921483 342403810 932787210 859965678 117420234 588489483 522279818 921721231 484309753 220622568 245920109 137038260 458635277 47942083 879952942 221891749 943880027 95685040 885283218 395045934 193200834 663908319 694095413 576084321 793198395 248246972 47975371 1348304 884034962 562908200 921448808 197475407 95501942 471039690 470838052 439116967 261995947 570643444 692597182 169947533 824332771 656090849 268785675 70248778 989028971 282926233 35978967 167222416 870505100 232458931 674365309 274366270 624892605 741424026 890566033 256520829 218989891 138110635 588182439 844031692 492615973 343873152 594465092 430125005 875768520 434134082 632447691 232179932 595747809 618156590 397639375 683138582 173376214 799252773 235192228 346173218 967400784 435967204 485919443 654849058 38953479 183194640 617019313 366780045 284365848 409587903 753986031 647071427 935214287 182657605 79892105 463604887 959797158 77000757 206333426 656069466 905101252 177792857 15895208 332152920 879251235 561294796 789995954 876718367 311565568 372970335 879721333 553068133 172462170 853119735 392299897 791655774 933956770 631395028 125208304 159234956 781644698 980607023 942350132 525654166 176804955 555722624 598746373 808702122 179962235 357540372 588710872 791678441 545450099 744936276 778150571 907645348 228579540 330836953 414552962 967530182 208179977 595587387 146855948 370985567 180134459 521507651 17992473 605393116 550938591 935179235 730708223 151880403 383544478 517236736 923996316 548725180 589224520 659191041 146422043 180935125 54981014 713613699 534731127 359812996 81678714 127950733 508736926 900187115 408251369 459800231 626813867 794207903 645765497 430862647 889401953 761998747 912920313 693859172 562884460 561859363 98487654 575849765 314163740 582120002 129999316 542879511 843317476 731343512 242448578 114505020 814158109 776141110 460230456 113071403 399643186 411977529 866783220 454721627 295648183 422707024 509572427 751531667 415011251 430090790 744669626 841142004 817454428 628289907 347453942 517891432 305911059 864600358 839027532 780461506 417781368 524994829 903275101 985693785 521208581 973221882 583962984 332062289 35054840 892410653 724911599 661114855 852018146 666766928 843393917 466592038 326166498 101774521 272476800 310628059 194021170 628732447 792822412 785736953 575823163 46841199 119204365 976318030 863439393 315308258 784500238 503012046 159188544 689357465 809228954 598372703 978545080 698107891 314884074 936272271 616296234 284586338 989530575 866864019 285514961 669403320 256887016 498914460 113792419 130186772 576218891 510800254 827016049 35691084 88399398 157994238 468498503 765472375 470580271 437597673 787805177 98744782 744413596 639311742 800245484 67704251 699585001 80047645 458313916 241142665 431061094 279984515 238403530 33029164 96603980 167587515 869540057 260072170 336687208 299083715 684491852 632363319 309079472 407688545 772536205 232854374 169506843 135496630 48958902 579179082 595014624 501229620 469380172 564906581 825554095 352412991 936646715 545826833 971899137 124447887 229464830 917546166 870620966 909688481 676697208 264451058 501998883 875534435 650240539 346790606 961388096 733295178 422669319 128389220 640596093 697901399 104282662 802172505 776059013 675650507 657709769 760009967 762793353 81994610 473343919 691701216 199125600 605085232 15988247 652539642 114536653 391871505 844140976 534662085 614426948 34903917 128963179 245386258 784061659 969992937 492435794 381320672 715673058 446706903 691018547 724902633 931659795 126033708 831907771 602908023 458892042 152819294 770983037 726517814 273411939 899665574 178476177 680638435 608626300 591348784 489493926 680990898 141871383 405484572 26825081 102115163 179349102 672754716 35864360 587002494 673619290 422592150 375699459 29042664 542946770 980725792 443970771 84972005 776875053 701084214 601187046 495184281 858470704 105595737 800204089 329493648 290453810 250119415 792148548 932830712 190139916 360363429 520431063 338438635 513884413 413210096 291659659 524301120 296732912 866217717 382353647 785022673 793526430 475378913 934376382 956826323 330000140 897931115 273546439 818911037 939434362 362115272 553493009 699526801 796454352 664493186 459133726 959543369 323280942 445308020 396194873 162355028 146550916 621025942 211213763 291118146 910472881 185120890 832699587 735981933 481015145 726406735 911479038 292286125 64338979 796552305 400112284 910211331 810798452 387793798 47955600 739414232 627953697 367905247 401159061 393590205 453694762 240633323 929884480 901387973 894885102 250902330 493202778 968811268 806579391 84447983 248406950 356153376 873791446 613627235 480061096 632346407 173743466 667878057 967072219 822790056 100467288 538062758 948953967 515052122 790926258 723825335 231615889 51353959 912569384 124374199 756009354 404186275 719282775 505429063 682093453 353781380 304631822 384953331 282513976 23091029 417971383 472034177 692037684 308477619 474108557 632971004 831119318 580174295 897557581 280735133 587267308 633513709 199401249 45805532 738991114 332061095 56510642 170959148 181332481 962467885 922851178 243709547 449231373 819032130 827608391 213021733 877298308 395303516 691745496 648964902 908642347 824992916 276482636 6489689 196358816 271128706 512143917 609590088 738175436 725013710 680795523 496441212 621541528 901108963 562751043 349624966 963316354 266961850 985262197 751029893 619129576 612761006 897169577 748573749 471021216 637610141 78803578 284092629 144870944 605251321 575538791 157523156 227789842 193169141 577409147 790433232 699697155 634451725 944062988 147063442 723089279 544164609 773743288 588145072 802663124 328316369 78898266 225903390 645560549 854754449 346655243 704933779 426868652 826177269 301689651 6851980 187663338 737115379 45991900 717152493 790872781 575479001 948150934 80129122 875424075 625917339 674539313 23938218 857772772 690114447 531105128 966179164 521848962 551375217 172971148 431612106 632732072 738128899 630092546 655425046 785245365 654064062 17666551 94797118 375738635 790554195 644142857 984093081 182391531 226401695 448106707 924719295 695764437 489229735 56913641 809815474 153633120 456077757 566204254 262759284 994887822 45537982 683526149 768762730 993633511 257771065 503948354 97883029 693358410 894375327 201322984 981351970 318188183 382723245 852028959 455997717 414319733 675747025 836318428 161951867 806880082 822968191 192285117 131545791 832026646 272161402 317765412 441040979 954929407 101487643 688112302 640637384 384418318 234948186 668199157 392850613 543736409 66032925 201050508 543004091 21676580 538948073 866029046 501013776 923260508 845448853 323249127 565766413 182447579 89747045 806734796 794395611 766657164 518618419 198615722 412490574 167518160 857066785 398741923 735083889 843594550 229512025 689265227 859633217 748880343 395305505 19457077 997030263 442661084 456160538 915267722 248632501 541853408 114550419 38586164 866045977 342495449 423261132 235430877 533958740 838115281 931886041 238119270 195055406 986461045 748430210 216073791 705577164 250182781 80093071 21804898 432216101 38172357 321014476 917927889 756511425 483940441 889115194 868749924 916124230 527414371 107539866 386079466 335274969 379611739 922024059 103947495 5251418 765783288 323075905 149872724 398633524 359187360 150380994 903985474 861585556 533295151 857804035 359314189 335365362 187697681 212317396 855013788 677623954 920889707 624403021 53765746 170747087 970373141 55500292 160024443 852333424 851374330 894165081 888926768 748278884 364673198 229254929 731750127 410881807 125954275 711203830 935069417 608854687 695118386 77081274 382804922 250088926 468060152 817775869 207501015 69188372 120428088 785357598 713556978 607912200 339346961 512573219 648722128 410580032 737184225 247434149 628173082 218422079 278770588 390060618 71910705 64893858 352832212 493687918 612548411 272167214 28455984 737221662 549814222 167958284 44197180 928477663 722403511 802075216 76626127 364529526 964245743 343866757 368988626 804378760 697620708 489532351 602172833 957470102 107216219 35456031 325013583 161504404 292206302 472389480 840403669 287729589 323652311 32482191 216779042 563077658 575747361 417994315 321584329 204051103 619687636 354127652 379657558 165708716 538840354 894057880 533764442 834200588 774989296 242789720 171352227 45418391 333949534 888923675 946151349 363190126 602783382 228494683 119260176 769220912 221828219 852382132 189146327 544348772 89923181 515833304 676277746 455451916 395833358 654831991 253888306 298425564 683509707 599890881 930280762 488522265 43095842 74872184 679694377 692544962 181415274 161389023 758313741 136798835 906960921 167471284 176841447 369158845 321133965 446325049 921819563 728274748 927875353 285470720 429359703 121175481 10425750 64654407 704496874 251041052 272083848 381994909 331524236 427851156 667861124 48662220 484014446 584731102 302135055 788277665 683560466 178031107 102848237 660273707 206153491 505267305 415768440 162640299 212107484 838153331 651601840 827778786 492661380 354397066 919612835 145057148 255086806 48251437 990680023 713121876 637744024 926538543 623788961 638957689 677869827 187106967 841002873 298508969 203220767 688603915 980413277 29666585 599633665 494564563 171848993 827057835 567116700 667835317 238757591 885196198 986306691 345693163 338972874 923982033 378508013 517316631 309256887 200769526 601908674 400485733 648501281 519947229 741848259 333071267 988602303 993495402 350402075 254084585 672529251 551457100 663414607 390777318 786803660 148425360 890040614 91844778 786446772 395990703 427470817 269111798 300739430 310202245 322056163 906383180 127823733 220743473 506641816 315042419 749590106 62329522 509608153 350827282 825086773 19811297 236030495 672909284 249989589 465637248 626818982 817782382 100318608 434485485 911562947 598459080 568525005 262472128 609507268 967415640 112764893 752208374 102406164 276113765 504014551 787476566 133238927 713550872 553703488 57196139 99046570 603716809 147933167 499247915 245448974 768406382 695684169 181810517 721159721 683495588 782076499 159510285 278518594 908480922 124248025 248279378 92756954 497256766 61514907 843490357 46394938 669547646 445037705 758015770 539681935 918328517 798960419 71419615 602400405 836073152 921048100 18973232 713871498 817901311 487759973 641813650 493367166 246707760 8927573 144763101 867688240 778122943 751068850 842679558 918376647 277125884 703391996 911892017 527614308 431683724 545346053 221283659 851810081 996464957 371404491 745615878 836712202 665869277 60635794 517558055 457107200 954790337 998391853 928777621 962997364 146732516 981532450 504223808 767323082 635173643 608371795 79445722 262375861 67450204 908533473 483174209 394297587 475903661 406562495 181990737 674940959 339307706 766356659 510805942 20986262 665717767 844010963 874390714 580968579 362939145 17430478 534875172 158761127 796615513 818205362 303653390 446438532 439323164 728518156 238933818 406370520 243221398 275944617 455319671 614565367 236615507 733720328 178687363 650141159 614916272 123994064 774220740 185502758 92168171 492492801 576627150 386034727 549503826 934781822 391448744 643088480 89285941 664083515 671407728 899478017 228391643 156151810 337495743 183556554 907123556 458441152 932797260 884321512 830184126 190392218 480215349 437353036 428025777 737902567 935096596 114571755 959459166 798285232 367399184 829911546 37186813 355429843 619140916 451452715 494564657 92601923 508328346 35106501 105419523 892340190 414064583 458267400 770228190 967937295 420305286 709163301 813490066 821559774 872040491 44629422 348546236 750437928 966956405 148813678 43773512 811598687 746875229 995257621 952578471 857672248 333352976 615489897 274665859 638263603 995606279 539946301 707109889 518541727 596997856 695361145 596110063 966858945 929710315 876835329 845515638 430387323 976006802 552213966 740925238 465874267 936774326 534701587 746559613 484188031 879127828 937008043 774614611 329713862 954147987 785671592 47671961 279214758 219379069 885973422 888670580 812352843 874780373 747330435 611075405 212676035 959184149 592941794 406966651 492114881 704560782 308131300 877118096 782887449 710263718 60757502 244602424 352304540 124952942 364992443 665469855 975022119 593517875 319098886 28777993 921451494 443401435 633919484 793777260 984690415 34802906 283465417 419757406 724222724 691734479 501354906 849402405 431593936 463504537 494360974 516648454 684903078 354530206 875548414 242517720 112123519 169486387 948038303 700736727 117960500 715637074 333099339 136984704 618567460 210265000 784292230 625826294 567063960 390929846 882898094 956480465 980902449 570829807 83780043 991439184 407513166 77961661 786756598 880292600 500345190 986129245 621006593 473356045 114606400 196563912 747714790 992923497 663676205 661503449 359891404 840762349 937153469 967371904 11255677 913886762 588264144 273293713 659592678 449326550 362457620 745609502 992243727 755109950 342099627 916547610 578508453 580159726 854183066 743608137 89424823 795469545 153249023 356948445 318329892 229980587 647731383 634532452 594054779 488572804 684819029 500366355 555972142 876729245 528866667 366585134 370948974 402403575 479258672 970393508 332988046 182372945 280896623 146847221 901652767 145790083 14708962 793727684 803067537 123575301 703835869 282163499 144985838 859385968 216353441 145786059 578343320 199758992 19831287 837772553 162020943 188902969 748420328 80031816 927484668 415516837 963227211 206159444 258353386 715894134 787420155 896560452 243926282 868122704 45399029 324647098 542661965 109103558 992552374 654856024 112871717 938358470 877072498 557972158 814222991 255985617 768398865 997964375 869066621 628999763 203475069 704734666 26650415 329997771 673277252 49801725 795846301 522930954 98346768 527673034 521911753 788701982 92543482 291632388 66541685 880019644 211036458 147128900 220134087 700379828 700840454 397417747 459633321 719571503 72132162 700362496 851062743 330121767 692498921 624861665 277693686 567802468 629536513 643187972 646192962 479940037 361353549 919339439 943765603 966758559 413934945 343856980 607824514 768343579 478260232 841620739 985934538 968947169 407677793 729039497 36257768 534850815 919501003 166695786 99947207 77103972 231980823 714466849 944948668 669187078 832440851 34551594 474896246 548035781 435061354 421094921 442491901 402796327 117390601 961790222 589341673 893740091 475005164 573951995 323774913 568482549 528350772 35826211 922700958 652363466 501478826 937582490 841405260 106773786 704489114 738088631 869907331 702457211 151111914 442330889 388517151 567712658 923845988 687198792 311728551 756425965 320097002 193463728 333828732 300673694 782451959 248039316 357858216 867045660 90452770 347360900 217093559 12859909 376736470 266946153 308887345 910107290 33026748 191130836 324105851 266487667 117925785 214581386 316287918 578798683 774296657 849315503 525058918 828812103 770853294 336716275 627188045 540383165 409913750 999464239 53495492 245354720 585004870 605710054 50729494 497160878 631050788 696465954 452926362 425186292 985308233 418776893 490070037 208288577 370013394 955398583 297258767 719111642 342177352 987926078 388567520 851942757 616199614 7031870 810323962 889429925 206667761 228184828 207635155 901438520 502100743 864977117 789420348 351831886 475898530 767054669 768708334 120051325 441153248 231321856 911666268 320993827 206915616 899067568 655673235 828912848 492692419 23837681 370686377 383090622 488557277 350843120 254011239 791910460 391061221 598344181 206171261 937482878 884911283 972183309 298318944 673091116 874635309 700743424 526998410 231100077 424833475 15568552 84199174 441606894 92244416 620124095 337789801 597050756 725227333 727627079 211887391 58539854 341283958 427693948 344907760 57206977 976465691 252915829 73111404 640529392 216818269 294746959 807200907 493688834 703973438 204173170 820853657 488383168 556057366 601925213 656135659 513258281 387939937 123185842 45196078 617981076 564830802 544047413 626407029 696790288 652619482 109872758 433800452 551838585 276813662 752380844 48083610 828624860 688981808 882968568 143792327 548024364 885890513 725948835 133809121 756717218 527016924 344813724 319404219 206927081 258431601 801854728 557588311 158885673 970464589 329842850 395822290 708386430 623263019 124663438 796489028 882452881 654389609 506373053 422383909 945465135 626406148 312841214 828638609 879105916 366613963 789450593 429271659 671791522 255990413 638960257 106236651 388354285 811374394 955222407 853914122 347355600 466664731 697672815 31264660 865405308 783224725 371498380 204276088 212696152 248573972 254169940 215442470 837577625 332431022 156580020 520745520 153346797 157293447 235157335 346358191 581377469 813821803 325185005 800835287 523093624 827857642 910931242 339925824 845066155 876726197 248960433 137887906 657637452 513516417 618612247 935263392 345104037 336172227 780559165 323305897 355963439 606640822 54631476 841379006 977658787 50983336 360960807 208933485 394536870 846880250 392296394 385722087 654355223 637005197 364811226 337786328 851946806 77907449 822954616 470560419 73458500 389541728 460506562 305110967 540134240 439120720 246291447 754375332 165895253 439913323 630221872 297512822 402280650 649832673 526384654 375400767 473750376 197016083 946122371 725909152 286653625 637690241 196899231 816914754 396890796 172977657 137829176 194153179 400285708 241814768 883543737 332638720 431422709 37151520 909057418 187663463 251082272 664155553 334401334 687194443 38990446 467418173 649839937 324237065 823461610 646727298 728871740 239491656 366823194 139912750 204649601 915457080 770774069 814546203 158624403 969335483 141625128 944558073 777434563 849896855 981543268 542417565 759722695 570762353 354726511 416269771 111843121 329380789 181272979 463440797 963480552 699375501 893928006 276179096 986226264 982200448 471553309 213384658 266861306 268036614 93919563 669807569 896977893 246569313 717633424 656502454 648016501 421252442 850024984 217147814 730310047 527584040 166548711 756811001 512251352 2051281 715203182 256335829 458218996 272659122 10271815 237606054 525992426 858501098 469776758 198963597 909933550 753596741 587722488 91345689 230278788 850002334 559639345 151169190 816012804 51815867 36760391 248536174 229866090 662918652 466044007 992577967 658859426 916901754 321986133 257854069 940778113 688359370 551716665 532285918 113869636 96866835 622188338 190352811 994249319 8876894 81796124 747171487 251053291 556710404 983805399 142288049 5084341 833237692 329087169 304157654 688923830 137812744 959764985 831784736 522873973 261731205 703968819 999537218 186580509 605267196 254638595 193483601 421195087 494102413 918706959 517415115 529434914 431946990 572261163 869136767 862002049 817053149 750016673 218370436 87884266 223508421 491860616 312704981 916584213 545434928 444416905 22391287 856820422 279294122 201874233 890409160 89285117 977554609 579864443 295835036 323352291 784044821 857738068 985884563 277522132 591328840 186514620 16874157 522579812 553031503 740366854 547004154 63170784 368690721 742796005 107659827 588886161 606622931 426804077 876724821 235142905 640123416 392427262 970764178 586015442 299065357 409985536 143438565 81884865 609837727 29084778 6203985 305643221 227263175 249642199 968835316 682105672 396909231 32334753 776442506 69438476 880454136 35400508 881812960 64893754 784420989 265488802 689196641 967023652 732980011 118029980 815927908 267946068 331646349 170231931 609491537 234035 867113651 35140351 145292987 371410087 170033525 414654217 983050958 886679074 455487130 842865225 737496904 849486990 67267515 149371764 826724505 31928363 474120598 998957508 534229201 457449332 30436547 999842581 311886120 980132280 160814809 838936330 406231216 325104326 793682660 222346982 124371306 153310638 422814463 590924312 745756751 503746356 142881854 52012417 978970950 980377858 209151292 390802455 213021172 483334049 344507111 177340756 583450010 342372795 905968541 518206351 30182335 8159359 541791327 614993290 123350286 439238134 22413735 799142616 482332947 684311203 640178558 842929412 185710635 442310530 476036234 566089892 896589179 889070771 341370001 925120860 413710974 503081777 479041938 573155461 47947892 141775693 778193663 958015217 106332935 238739088 763075124 352051231 334983907 525338425 630377405 75770935 117562357 742137176 517397180 850359723 415986701 183407164 928235240 712464454 236525460 522161258 979702318 470286604 85951675 863519998 157812034 451049156 199979837 149815599 85103015 603625636 594469140 65440390 297214966 302192483 664491829 159387121 630181443 394820014 345066925 694018035 97912494 289876202 157591570 595159087 318244177 688436747 171004269 941232086 607700556 459867805 217412497 923283797 106533544 206516903 935404753 621352290 607625730 444758797 165139198 918774707 593968692 995682753 94200910 429442552 691639162 777300333 992050358 10808477 113744881 343796069 629983367 722374418 972446923 46057252 513596947 245096713 375918110 628394617 886893805 185266296 271795910 132311452 17149860 214927686 365121433 797549871 812984056 252907168 985774027 651981459 136170864 778589627 151569373 445884790 968583288 572638677 767877565 878390962 544635164 218380059 438614375 308400614 803819371 215043595 905263435 122816866 623607122 512630879 294386448 920336676 291296176 255242024 359402666 910830878 658462051 517771830 172219578 863118085 846301254 46306083 956908383 949883263 368834731 828744982 942936449 814871547 851781031 239906998 553395262 618405670 762849992 669310502 800201717 196522365 203516053 883776804 800816032 32842668 559511469 853401662 141053160 821462331 697077367 443034207 260163064 919099181 635899533 993678082 196694110 385879295 994891622 116664355 477309744 626996530 436294291 478593427 522367660 247903105 727878941 430402902 138851845 565809371 389164455 274069249 930694253 570876950 123343065 649833941 331899211 741646135 589446950 882935043 18849843 37751767 263161845 376758557 683404767 927330700 476069285 730685651 462360836 812911979 413440119 765273805 623090079 223348197 812530833 786091255 129880372 244263777 225722385 242407393 55432533 600803799 688539655 532339075 609128548 143480435 725627289 759905793 563833341 600690468 43229245 905688940 42245887 286209255 159106291 497199111 768004883 567105713 758309129 669334353 494845912 135153082 645266630 888899251 582799274 16012670 383229250 553862381 202785002 494105061 509530857 702439937 921805405 839999057 6327749 421452360 516022546 746061870 855010031 183054726 677278338 549175863 775216371 740465044 641582025 945650838 645961195 193287453 929997449 790747166 499249745 86155900 76962918 14344531 702334678 148449678 18021756 549078577 749950781 973214583 552746613 53388299 50401349 709158523 886316992 356136717 514611234 558929927 751481368 884170774 189832186 569649046 818041930 687087684 281842414 166926395 658733437 535148504 265902279 524268338 32534989 783291099 671892442 911913543 701218649 810404601 321384754 995380184 955834868 940556846 726370528 184133281 68662401 546578524 708433327 735617708 612236574 813224457 485358242 238506126 173254486 630631125 113182809 241831572 395368578 566226908 704599444 747849439 899129614 230967904 864186671 516694893 593780643 907029918 416583057 387507920 898588432 266409807 472092398 123270457 138440498 650008685 421181016 727885348 182987720 19690931 948277547 854351048 243694031 620040160 63789314 226011694 97842389 287041424 40218324 333720148 517856469 336812628 46717187 655640024 609854414 135038661 158116619 834317877 394314155 503086981 389563812 7448492 526432646 343897566 196990271 472477631 810964428 467144931 78159918 69977552 728376067 661043810 653366963 137493786 421843594 250803434 202981413 945060006 102153901 148683732 773537331 196359267 34014220 47042476 971436652 186417440 267132018 796582448 79347080 764876319 687612355 187912803 477954412 715902438 144414748 488926726 110886774 567297509 594430557 948511667 30690275 534688668 61536577 235486354 938434847 132107226 794564136 481478592 920847941 329334174 703590011 717497380 677892818 643111947 43191338 289767654 540544792 626937070 224495738 950192158 825599550 773217244 532450197 823722642 701141855 47965648 861444072 506663175 317803267 852593736 19209866 943247129 253533675 187645584 801442236 563188401 738117434 328051212 296664915 480840236 954449104 481266564 296061925 342870211 405055334 490572644 883700054 904354068 411267957 730695028 593431920 709610477 618526952 576444103 730133534 945425649 304591150 55608683 951532506 129175529 780975139 313482947 92993579 154861344 75980303 495879842 889295199 99606429 401060243 260255495 600960768 132179581 358108461 767101011 494104566 233150718 451799688 410517959 166947849 213980962 149312965 132642508 869230097 222686972 164813252 977025082 813301336 411586039 895158193 589665349 786580829 741908758 481809464 78857482 969074783 810136448 182932610 807489133 803692207 976148476 656785116 217541717 66166851 400849942 669505469 969263250 475731605 872984417 580843661 418190983 599394584 858279555 332622266 449591637 236781485 526140445 75066076 674562534 781119594 53015630 230987185 286153870 620825099 350778735 283099646 977410574 702135605 387629784 105904220 356557464 549205327 417226140 509339198 251870432 912845556 932300205 281911372 212002801 963301022 243612988 354312741 297257933 667326294 807343116 813722839 105354240 223843798 109478949 919907044 231517186 484905159 452729507 888447542 874910280 397675268 851758090 836745594 894068969 747865559 57110613 783070000 903154379 27025819 603604232 727811818 94197566 461054239 297947840 611755238 175037818 808218802 733303852 289735991 245550528 294610513 862395851 54329605 428632865 756747129 509787110 265007781 662499084 33159025 510061618 925938407 6160419 386390398 881182155 147693707 249597315 242667675 914359679 777553647 659160634 562297831 701960588 215076740 183135032 261633593 425370886 717390596 458759539 395360057 318624409 989083531 655883738 15048967 649446738 278413357 689191200 357659134 878674888 414372856 916249595 84051104 222909337 663678287 712406940 825889210 200988520 258481784 165128119 879908342 410507221 350925640 323848754 187894145 97190876 219022067 650148416 827332540 730172546 484477961 676072437 694081231 798197288 100362402 757694565 990884663 101618905 780248323 862004459 470958200 347844056 58174068 875552546 331255148 724116733 287147975 823379275 148905572 929241573 951350148 921744600 573479935 163788841 738425644 280348210 52304027 509511687 295030242 875801785 335544374 856000326 531353714 177966847 126909856 599361888 283657963 387054538 511281079 383175178 75398472 284790333 367635716 239421378 64400411 854850751 448171066 11046885 51909929 895762532 715829646 100410885 370773343 980913198 373489317 725640714 514250975 78144465 927362358 914948554 203107310 730657248 291908281 531794065 219435544 287732508 470599566 190190384 296217054 728845501 811662422 372021656 469080420 664624885 837337880 53041884 154237340 63526249 605827221 627954743 252798455 380115225 372255678 424061353 666980840 876382933 792391276 240206720 111668859 939322080 220163225 313828156 394788068 457147529 577093414 803505579 853218961 688953870 811844608 597022671 897417104 73226701 932553957 478643053 8918131 939653940 161422129 664856573 611676673 4750131 937913229 588339507 959119939 274834299 770805633 980711551 579221553 598757377 557596329 104825963 722608149 105023770 173574851 272923579 439979493 342383405 609526233 957213437 510032928 628357183 691107364 925472977 514913924 828903560 441544911 87122613 814560656 13964372 728825999 204661949 428332114 733593159 185278356 225471926 526556689 73753707 135620115 528408966 126363213 874588445 723292475 655165679 118315335 733988499 336009114 343646755 501443610 602133464 543175030 309909151 359930843 549773295 405720485 354643634 314733072 769887801 579137426 599497427 576228099 604123097 464045845 701960559 693762174 302829022 43546029 945469658 449440990 770069450 688585828 769806673 692830512 465584487 818011309 941111518 821287649 392819706 704692033 990545628 870865829 191093228 127441104 603774911 987570311 849442870 991678230 804648757 887521983 735675628 545153108 659748217 514989486 726192922 574667926 109704477 567097362 892011011 49500602 740287093 691698372 457570667 970522996 818085377 735832599 638050759 756567315 841608431 210554766 22584442 279190208 972440770 724110091 151887459 642621505 779976324 828456478 363163314 646535390 699452332 341181720 201557627 584499330 604389515 519330669 972327248 309566754 427766700 308707633 686217152 779337249 865925998 44446978 447635422 529315161 694808555 394198149 81456990 176524835 60421669 369839711 580828781 560190521 601939995 487364071 540473431 330297571 823606740 515037503 325764113 856337645 901361662 135462955 869633583 503576906 52514419 234305692 482587152 433640937 806418725 359736047 538516846 457878750 571049005 493824620 200504746 931546057 126819931 369798354 356465381 14212742 903338066 495984248 981220743 630011398 117721105 78299044 74277032 425967716 825059700 984159730 385384843 703236602 814583110 166092318 225590810 904968355 797498712 399303315 294334122 477829485 900195517 506911169 793851489 616095092 151466164 721554528 327228799 396609286 993248092 223657282 300366883 725655727 491415008 791538076 127570745 92592913 491937662 571409201 563228445 609177799 539682097 96227476 977608530 299201427 596644891 862414607 99476473 680931813 704416969 287855182 965229123 483357990 717904209 148814743 998444238 989610846 599778800 260431833 562707370 113825490 648868704 906254591 339935694 430646590 443256917 346591186 27189734 976238660 487713887 78427553 652213971 808593498 94911875 513610828 28860198 327659823 353881363 757262382 5817308 507078748 320328042 822932044 262724465 111445338 250751757 781564155 624779709 862203247 483393770 843029054 70200092 41997256 756679998 895076546 549794075 306739609 240238491 304924911 629568447 113247504 250520114 173175676 518002430 923084735 289422869 216764433 480473876 81793805 466047605 280961429 253109037 738886452 352772335 590793578 889678952 734907591 294703486 449412327 448513956 953929542 270014845 863663819 910774358 904978617 62378870 732527157 584326637 561062303 161228117 739159058 481490555 681557848 19019090 744574433 85969662 324612144 503662236 105803954 126996972 136044453 363691567 878499584 301586507 543735699 946223215 365042336 54355947 447443957 929452909 145036190 348975407 809974264 833363566 541024090 967209484 470297522 117429627 955888454 343473692 806349945 82889696 609302220 639716400 792175747 457446429 154807977 291952467 185758372 107734667 921487732 493484037 453320916 632497249 585907962 580425887 786472556 228762630 133050012 265073921 270759459 15241656 753958193 97224264 256569409 74877865 75324011 293521745 760427721 770611645 808926285 46974354 672882152 161968193 347347598 968011737 154966353 652330205 807540236 769063255 785875598 46078666 562693909 34583347 867905780 777585763 820132923 914944125 615762248 104147755 384854941 757528912 618438257 230199542 980421296 420701965 361251152 993960121 406725636 323792770 14332411 418973200 33547780 767605750 622164101 391520147 585505639 756590049 382447220 236430541 7392653 286608782 895506124 88445391 467076826 339226960 989456704 118809682 821563104 744530446 906068407 60194557 109658663 2990832 122653167 320975188 303613329 192894532 491564410 501917075 783915058 355725316 60357655 383872943 693674180 521506018 42842067 346909719 55750274 763093341 833756553 124272193 268767462 709258797 463603971 696732036 163406043 545248327 712752355 323542182 9097181 944380700 710584808 742486576 514371370 845277258 124674548 663920494 326946804 112319196 211210028 860480757 918054599 43629732 285133498 841316415 232652831 334536825 254289616 437479597 632152197 392047577 991375513 329504420 154464977 927246784 994275267 986845674 896386305 451095799 961589468 911984469 631106815 319252036 309928384 726881712 442453791 217598895 68105304 923044449 76196664 803558227 410772194 584786689 123471481 113564288 165012646 503286781 140628890 467409072 746117917 399816074 903769319 332650449 718819983 393810106 797016493 408076976 727167727 15559779 134186954 795590249 572952001 972397859 618681602 221641911 526890769 454484330 632401473 556012669 986757331 302050339 631555681 707335644 180279429 343531048 751930709 505920459 633430439 722369679 22566390 759642870 929133192 89095001 582772882 511416078 751169630 801066351 213814957 889940796 853854171 879760119 206695511 611796361 489089319 341783789 590614122 746967509 413480111 973305315 83441128 625760241 450048368 36838740 792250514 871459536 690193947 454111260 634073177 347348392 98968594 8191164 50214488 260105762 582610042 257697826 770032097 945213059 67385220 398516896 628807299 103298509 129623893 374072366 985420843 966924377 400130631 86256489 181692317 136395891 285901499 534666577 552569412 469812677 574221268 143189229 903687498 771225330 832912699 719322030 760050763 859125563 340253559 262547928 863704179 593852542 764691210 261715866 836617661 882823562 644795746 993048948 374128851 183102699 975171287 831706010 250830495 443218351 164163335 280444764 130933301 144660845 89611421 619595331 987241858 866209746 632235288 573524923 257203398 960704289 330020197 677625885 158902339 693476119 392262014 303839282 17648294 346089805 190280991 701344432 605926551 23927841 282200971 621034093 528048558 678723500 247222621 636370785 375089603 696015512 554558839 905231194 797750734 432630760 686815597 263831737 660609254 569715852 566523785 153443278 232373493 79749460 222922483 435508483 531352413 668506555 742023148 666684649 327922120 117761299 787028334 192791671 162131770 333161759 30834736 242111190 390686404 82039817 206282228 696878294 411516805 730706374 173807787 914404025 877007572 628087903 788545147 719550355 653760301 881596374 769366208 257320642 679552643 918821031 182241517 47312923 305108938 417752466 477064030 690821947 566389226 77687594 257001598 434859023 190102460 857570201 671998026 675073816 839660554 237056338 211235325 389085828 679365364 816193183 640451422 240620651 541805194 97259350 706147131 3890188 27845290 504340416 880970739 693907113 331199619 131075065 626957022 224401837 798320209 3129616 239775417 618685755 564937462 537377868 863648171 269991888 350989727 946541252 259713382 332305365 677707287 713274762 283761405 436531542 404068989 535143600 913547305 560528196 764594472 368158780 840316699 567394392 275351769 850520195 141983763 374099028 263701782 45298852 209365915 803942002 891315242 571685303 279868125 193813826 459313388 65880090 971312499 709778365 779140286 670950735 52233153 150074804 611118628 652216140 159151411 14351689 715661982 319831161 139161757 173168290 220101822 278253834 8974654 341445916 130131531 231606617 925018976 722809413 177999744 39496864 899267010 335747201 198845942 63361515 235467755 629204904 913109300 884672439 598045566 963512995 317330863 934377357 281479576 856268235 581584582 439139865 168414373 437224176 334058458 885280199 652707737 360179196 831445980 615507702 219914753 378684878 775014460 531475222 465639611 388789563 565057610 189088283 267404713 194733492 672809845 483552892 751756153 921655983 228343170 986198806 928466996 562185796 148560906 510704500 372552108 769493120 359372461 481176630 160207306 956776231 731946361 849203900 321234534 22621365 308785132 963294950 868307411 700786238 217375512 301035531 936503445 885331839 372979749 246679154 476724639 149438142 156639846 27538468 737733076 86423910 176660813 14079893 385509164 196454880 637745475 377780465 701812826 314337775 465814002 313640938 804422573 348588752 665843914 693224579 563579532 353465170 874107267 988761324 265084433 391637398 626473245 168734655 39871787 971122015 363186393 165047095 932157913 755636513 932896403 687160383 385166816 240484470 645781212 579600529 743432173 88948339 944848551 528532777 841006506 640892148 511724232 403733580 32549370 786411709 740064427 250407962 431977279 465663070 551032481 23704273 320957321 757079443 126585332 212094414 30216561 557392168 205748461 730503746 289320930 315238117 266577916 872000654 245468872 745497763 158907725 794690041 568690132 333672294 621591147 881189361 28485073 52528888 835335107 497304939 770967708 18233120 345135990 795276347 778405265 761968774 306755043 28800296 310411754 3478951 188686934 218087991 623548464 270774220 748362514 703711152 267850162 89528223 818174402 74563519 574390808 819712299 98789840 752639262 338100599 346480692 297273501 133485288 893529338 765835891 730500228 102301473 24190747 235429754 913153528 609661691 855507848 918915307 416794105 352921820 410102494 670105747 392848949 769203924 314840052 455388104 230283033 925403088 98139948 286200808 672659802 413073875 535780179 366508345 87669402 38307835 31903836 98369455 995606056 476221713 700463623 714361713 659036450 286759513 749606237 453672026 658708357 325861349 467931244 32741436 537073358 373440924 548431865 69288374 389743014 258165311 282656141 49921197 314802798 74715892 457527867 636058823 605699088 971389145 413619662 606623824 265984812 635002486 714787152 543862206 63437377 556038263 598566461 892721925 474864435 923847800 100231157 576947937 537483558 217375135 507869864 448684729 651619729 861339345 86381472 459132151 893843034 746589987 508758509 749297157 784115444 866944036 313261813 630503142 329882292 688029229 357572417 87830748 923222079 312194139 384993911 748436726 212119352 224013073 730938382 985960330 219310449 41184653 830659297 294516053 666195621 72168152 976238596 647034067 735770360 569109230 35339737 60281844 339808624 52572652 147702054 355140646 167425246 984551353 141769851 748364122 866098986 300725780 670205690 884432372 770711488 961430251 336042966 710568853 738498357 411237299 476909893 395834423 399147020 310772558 547638750 692246934 608176928 370426754 86291238 399429836 494186486 820349314 392766932 987890868 345345948 403850837 932378784 709392324 576333787 581808803 377272964 31619345 386363231 118900634 302886350 870126576 826208430 964736273 296392687 380978766 878681452 76920775 874010024 377411891 349368956 27617401 498321516 268592055 445140780 793294669 432254254 128439879 705171252 649001879 730726782 861887534 959593575 114760680 983427484 157393685 354751694 892344597 779246778 356821550 353988296 110507512 902659927 827825661 674483527 628197835 918402911 84244974 262305946 289337001 587374482 837493784 970883204 368338845 420501333 881850105 355761071 989535700 294634975 220538480 176473537 830255730 627844491 964713499 11871166 166939965 478911298 311095606 983370127 716116106 37969343 711830982 666058806 638090589 447583661 283757225 110581357 2050172 583870024 99002376 939922707 928214850 227199811 864455128 82904691 258709578 232795473 889554101 811080919 452415870 749918389 646659657 139294984 533574133 556633822 561969445 997372475 5776392 976231372 775046131 878883728 334624414 232865165 618965204 610346271 897744884 341328837 812600039 326669303 921491432 520078943 12586082 261435456 279954896 620607762 332840603 3591352 763673316 483236316 78026749 957938078 49446383 620273600 702556406 98885610 787496021 982725907 514489372 302270035 908588133 553635491 104574317 864669423 255079980 675568482 730312492 548668867 970590734 281023267 874799798 63959621 969582552 811275227 209609096 791969328 959754821 940820977 188007848 143582257 485132820 55739796 818536924 95394102 153103480 994757384 241083142 23397125 32905790 302640333 367460109 47870151 972733424 14770869 15363332 284341511 298254276 718055456 512242864 483448030 540609290 934556812 658338690 513619371 102139682 991139937 75247868 283546821 621699302 611368680 631242652 851621410 724082366 468968124 558504322 473955178 124726724 541791949 417752682 234030445 186402377 83497162 873613686 678582617 947783112 414771342 442522528 264200230 44669611 367137459 482308232 88605010 868283071 384562518 146986872 178450832 754834666 658110403 902071576 723968382 397161901 721727442 604219419 904470377 12684577 365710621 91451261 860386599 250444827 972848990 216738809 721350307 907960992 397178710 752482866 931572680 354957083 286533083 662189008 337684957 157874498 812221585 576066574 938742646 86475650 556068973 571484148 389935804 392204508 402106139 610498797 603428793 667205813 541214997 648546690 956729437 716104449 98558290 248570892 60040494 503666619 901676590 266434758 42793496 135743604 434298477 138683179 11264949 74587150 9147515 996021744 658356396 919438923 439640130 568248150 262075089 280880078 207016804 376042226 76666062 935346416 978095705 924361431 59051964 699238721 724657424 496706950 42481501 136379841 138933041 310561010 961314525 973493748 725290920 940869419 899601108 227617944 609415884 778375349 239823521 421763777 805888001 206127581 59422600 160022258 8503084 12804791 335405827 568430182 456547859 263366159 947263225 447405595 922330397 76415681 9235386 749000952 747166914 491292917 832097016 969400737 14954697 752871119 38438769 99438500 694432501 73164600 90398743 450903698 670963573 461350486 950372017 703213413 355792869 777539107 802614005 82435628 474910387 78732243 754747346 973362057 918644468 677857394 747110787 573103459 755194872 953494010 508103686 325652115 562811321 293347080 908516538 258897087 594990744 114006240 334132957 29087684 49578333 277814047 388043364 481685783 845851543 346379701 963024354 552831551 813460728 218413151 171403036 159326496 923858930 837791771 493160664 298608214 812508528 103116085 281619293 736579890 917503685 332609022 304715832 57938243 860308532 307914262 850686533 651559866 654530454 951506240 425630273 359036450 731491109 734950966 649972818 665542684 715636345 712660528 19931802 65601494 569325556 860066651 912865866 767287601 483692592 816881071 458332855 311401048 612793370 244042216 202675369 968961790 839475986 896572071 584017391 843028842 105544349 162849794 892752081 127321498 834036960 128326743 83669096 793651367 145195794 36641789 944753291 246574928 354017752 215601981 900608453 87158994 15438556 894452912 638427089 930777419 416257955 370549896 74695085 790935861 452618168 731638691 691158828 479456476 549747454 737433726 841689736 432699571 255490713 321178675 577939357 870934659 668554645 561392668 212143447 127451584 871278913 155908111 448577002 391022850 915816440 452746620 11574627 267508167 119323205 905846999 339659606 32594327 305003252 956862932 89180508 95989010 530496607 207210252 886160663 111095635 637861755 807519898 747783423 600727606 789514159 545217522 903272608 385984346 489140788 664366519 297515059 402423917 379316269 265414868 152886652 865156946 646515115 75587968 429648488 850680759 611545783 940241030 580431202 169241489 188234559 633359203 879835506 960452438 408136188 243374356 749787518 212097350 658545690 902732686 860076529 619948824 2376501 831559753 307083856 219016241 297847332 320100685 348599796 139413935 102091704 276009119 697579242 841317993 547574218 608767870 347024587 1878806 718527493 121832740 601809520 598770917 777365028 643262505 437519002 644933231 239889973 479470666 483925477 713756270 148221467 590488398 605552756 255802008 552032090 398047737 951333677 755017593 155119911 738957671 191070047 539266630 930383869 863984895 56971557 712316548 363821747 199608478 751082861 267663171 669912559 929992218 10712603 966596195 303247899 461090991 4821910 901119986 562496181 768630609 480649225 100034006 327776846 31917539 138767016 375310412 230862627 192391773 251151659 414214998 815731729 725220090 767142196 160052514 376642387 91482355 161532265 594440401 140415201 620981555 960397456 461024198 214730869 72487213 573194319 925237022 431312292 834998953 12983627 314283522 950059233 820839769 739620039 373126030 302031593 703368559 166995032 530651495 856286412 162712428 157822805 354791874 854017462 34333976 508951880 82763599 322219202 318758608 424276049 81224653 495631966 278543234 840521860 498099966 580399594 682250854 328688930 636568103 124924693 668318293 628059346 706977431 639539620 252865511 395870004 638480265 493964055 518970905 874254722 39955822 98395119 66048661 988648332 520706050 606327373 423488970 277339852 991347893 121707775 803404181 286806356 882460046 53942840 645636248 671882961 663522385 485752855 912498968 843075891 549588621 819148840 883812218 549814671 670147587 17458108 560884490 791513982 460097624 42451736 599607767 460243767 107269742 997361513 371091983 243025874 295361169 985139606 626719114 753199592 259979078 414416560 311871997 472934085 509792221 118456268 776792451 513239772 609024250 410070259 421157645 218632408 746008423 888223696 723885350 937644454 237938217 833555788 36148177 110199207 976093917 836718757 692066688 344820430 82869191 459243182 26645306 47033908 915290101 819675822 883434996 383434829 622342937 694436448 801613911 821955735 288556510 699852860 495394988 626641461 30074603 621898577 803859310 509229155 644437964 712833521 858805433 954251236 376000775 886368077 160612656 935920013 103049490 92751147 854661886 589361597 842006639 598197981 963744198 472484823 74814978 396435926 158827195 816912045 493997501 504677616 322271846 995738213 768764915 639181532 892802976 825111734 398858058 551758102 770209834 469615165 989464115 159682726 431484484 136679951 243150078 618835844 621368810 108077354 835866355 545870004 870126948 993516448 661006416 798321316 128714023 318739826 684027151 758106352 572300881 265138957 282212078 705867092 266700183 675833993 997387179 162935000 389705612 227273177 495641142 852731317 774587062 827147191 711496012 859968227 367784177 860702911 756453335 704916235 254247989 39116924 660054487 850970243 327860498 853023036 411444322 192992906 378246506 525750648 72437633 629751875 514492341 898063002 356297866 141705263 902789435 729665832 214889698 664970157 173092017 343622153 694273394 871410011 688439512 235652835 378263738 259742161 523407109 504149968 793131624 265827620 765692397 98321853 942235723 904075624 218736302 259283349 315773999 677759685 905479909 745320469 166276934 136234359 78770621 4662861 722010456 517490934 474275852 584056663 180322886 148071201 980675797 194278933 886934885 574426605 171631161 965841018 472122467 340228522 886659256 830899472 863887819 473406993 702682537 783074037 779121196 656657021 850983128 664120550 524455430 691537173 552014482 578086866 104275623 559430979 202682458 20538625 135084622 247025437 1657326 228129520 68416134 13128557 551906142 930318269 149381615 659404048 699325413 30539388 176385870 31332421 904372212 198771276 940848884 791160586 203331153 244867181 214400075 950877673 326422316 165535943 318556217 97203835 103550421 326360575 926435944 303101380 918454354 942116879 905343276 397360751 635623620 590467822 15500424 192969887 78118348 522792095 25909391 675676265 251205165 158939062 904207284 17380142 169098362 42478744 416693785 726620271 420979891 227922192 567777271 101287214 283196010 634795184 900158399 523902416 443358721 414079002 821849078 970433098 728650256 743067514 568646795 478967181 881156411 618888120 203331487 198169320 518602245 544673776 477942005 203290607 243793623 631116294 901998 138833276 807767794 245641729 387077042 957199878 7755049 961848055 339496079 638795658 614031809 736923841 322679655 792407760 81717466 428222177 216424851 381148845 933333521 709617122 292953611 634609441 783655768 132329525 719329011 663128618 363536587 611769629 954066245 812231771 968944985 782369256 399135739 917466235 96244722 502495950 871688221 213433464 234601523 31279233 60316729 96528337 910591084 588055688 292547225 461138287 691698434 2992724 64853338 565516724 367350977 695874234 228013838 53775264 842402704 984076924 819939430 388846086 863728227 419848600 901688095 760668417 16385325 329118520 31289308 571860526 353798873 703581129 598054970 868386484 639430909 202524821 969010563 956087251 796112506 781889510 164850798 185222540 101022047 301152761 592723966 151892741 997553861 159367143 975809795 531458853 811896381 147510495 588672870 556501813 950060379 430533754 142315771 213321995 200422991 985877226 925375404 964882147 318681277 157472578 758354444 867504209 873961723 73047188 714682032 538210764 937994215 944160972 406777309 125857380 308482423 986769509 993778493 475648505 131588247 946502612 372771649 915730343 745651368 299219882 547291452 276287863 717753235 271084786 987541153 946116464 203246617 985774155 976059403 221153862 517716018 109157657 946813463 107814651 418341061 296509061 933329031 592156260 810339547 387994873 165620038 360099639 114495010 699900769 982845019 653687270 381174343 265005318 335292160 649400223 740891031 131943634 189025358 18267198 565427340 36848127 442416063 15353606 77739795 552651496 453618377 394307052 958500785 794009460 167429249 607654602 558012159 280467785 382637829 6012517 318106893 979771134 935026015 347795332 386263400 398509345 822393244 711655233 971865821 253234764 817579361 548101227 181406918 207297589 103083170 274196487 633844720 131094890 802439184 493163200 380107093 732391604 109187956 826503527 470837213 425589105 144472527 756560805 599988012 673043969 497725710 698227530 498502344 131117502 460156723 403880449 137014856 35991886 944852724 726705100 314593597 271104905 478760145 116718805 844414899 481584031 504014373 548469668 366764449 626465341 564266704 695396477 504138949 891772719 226005348 223062729 827934005 16788747 59137507 869597784 845926418 80726311 795039309 419895265 66009971 908886066 553246258 454540129 808829608 348383213 913082356 861674948 826612070 559571000 786651449 41175086 579939992 299063807 763615126 987033259 562895978 424243837 147675514 693676376 245756409 667881089 150652241 402803776 151100788 991884004 399159292 765945648 99118290 428213234 42612222 269360877 481479534 738815367 310214215 234528413 996475475 88993121 79204526 785721457 987709190 532953978 900633544 805297288 488065976 454081519 828522163 418099312 441459364 445294578 135435302 570553626 483456017 262193801 381908912 321848432 579174067 311694343 473624209 968624073 38811757 718676240 749053483 83352316 280881136 638297146 449347299 865606275 522468909 27021795 359103470 571481058 314233122 454393638 368489570 744936831 439664083 698849403 353523353 637781278 961850803 285608695 934618131 246521460 347391213 379163795 208307107 564035039 566389301 406262582 248420929 515764024 972240474 733832463 705905733 722813834 649637311 15362633 683126418 261878530 191733272 94292155 607445761 567771857 664048532 645155546 506076888 524391648 565056941 646153517 588005425 468422259 134742421 609786027 37063641 507352679 10912067 86770607 803130188 870151401 713784939 323320069 600183818 768496680 971972537 960336845 641446911 426860553 865922718 728970545 202033363 3611733 279721880 893249617 115987508 725928227 447005891 530973713 833137456 657811877 677007716 372841461 92679271 547178537 39298944 782121182 642396342 974419962 594527234 162232033 476771525 809439975 587645662 986257493 20725971 407915744 845060550 103260120 5798171 576534690 391975695 489326765 667210077 406270509 121818882 1980908 752125370 438203354 631854654 592803791 611318129 882133116 489258322 926082180 316596404 406849083 324080652 975961921 339159910 790209582 411715058 976208800 188865441 836519611 369172726 658257139 250650611 973228025 829673448 831234191 568015357 85097246 65484371 839081173 893260611 502894740 458720163 120619124 744555788 42683596 45874641 383618690 379910352 963805486 871481180 803420643 694646207 917116665 965607438 35444373 329447307 856065219 933132251 79771619 236284050 631161036 25274191 47086467 686368354 500160332 938018057 249944016 451058312 260178443 694253428 115989205 854175626 475856473 308045189 153330075 519371302 730067339 766358227 428311475 191354397 951486486 620688152 61381189 177595373 344756590 428799583 397689135 918449210 663222841 197850139 984133268 496492324 811962573 326629361 367971912 914818206 467096839 271251611 811174676 233553405 288173753 43775733 386852446 937456742 350976246 949220976 736876770 259796735 15539431 874065701 945898767 377739786 735155576 236108668 490113400 21577453 78582194 776987594 893856424 169395177 520333642 965631584 931608733 694253063 636541665 701521754 839777257 205545934 582707108 653876333 671171135 58271899 94598242 805604054 738735788 123438795 467180338 829316124 973397528 997450218 508752302 968315647 645171542 356544485 258105131 756837789 424185865 66883373 505515651 285267853 535521193 778436698 968931091 210229098 722418864 278194183 723985174 459884087 705308354 978765938 55960771 360712975 500784841 738794053 36017968 522203803 544015270 713101718 121506275 987834501 568129868 897803901 841689431 506264552 863283213 639865585 885492719 943412312 600198782 688524273 869745688 156008924 612203163 975170316 251469830 428141742 780876702 986543868 941224121 397255545 939112458 194653850 447892342 617194265 497939945 12221306 315905122 561547721 10800549 82403055 333711252 349257467 211590857 30367986 637196017 817244724 39951969 432703938 610471347 75180057 798489242 864469915 535898246 212927898 73564825 611932750 47057021 268415544 35227498 479082553 890482067 329322380 998774783 432782231 290016824 687820247 791738785 921886582 881687957 788523991 276010495 192494213 87015559 178616017 593162435 433037968 586847816 818958118 359219521 293232957 989445322 1285659 227778060 108185389 187854925 271221254 130642801 61516847 843378390 741300767 682766840 375265475 992866418 797970618 956540093 547625913 920368546 482849327 95597402 364808326 980942214 777709105 685720141 915448684 913017914 994336152 985111833 322931674 7660298 223883483 919279333 971250138 417649528 481345704 703853047 689925418 964414146 862412807 709673102 615702357 40786224 561244146 849401976 804680027 47184741 210291689 960411760 23347727 64464818 754077843 752705548 918544499 494847798 588740511 642098607 451466618 419984697 250496977 453262270 263263519 619250722 988686835 667647589 20547821 845770600 52691718 642015595 12889150 600029681 314949130 619387256 285483351 761976338 317462126 352002278 585225996 203475408 696287999 978702545 965148346 246553417 469621578 830558332 255655650 805288165 849441627 586052753 57435598 344421195 139922938 815340409 164031829 758101396 581361270 963142066 358123101 629629371 706569731 743641151 327909868 80613125 963104249 59496503 412780860 996333876 421941687 339810488 194684023 201099556 876029919 580201424 589381927 346847487 418098911 95756647 663829418 835832819 947890222 789154753 822982281 733070555 471636584 631279385 844197104 761748650 303852722 495450412 36144191 911288989 307772041 733067284 553541427 298760660 879029051 620816925 315786691 279919550 589161277 38197586 110272218 1375723 771252950 478123319 571859860 324119400 661883001 207768702 23946635 69989403 638914484 838053343 951262879 426631557 858460842 753689141 605132540 318847166 620488575 413487198 779461688 572464043 357037631 371088764 419617972 786128848 520776676 727810662 99419186 80498735 780595158 304545246 947194129 580644228 672630111 964459051 778296586 986594352 937003930 946678335 341663315 434811276 778217960 403740677 601804596 399629308 790269337 703040708 848724723 148000118 611231926 305112395 346081824 954198958 662644475 798191720 174930355 833598358 566448926 811758671 800804159 673242378 631189974 750428528 10575332 816148291 526333950 976266645 832596071 764852768 448243371 408085792 174223266 593614913 734979652 653240678 425827423 553184765 548400841 330837342 79477055 689343875 642363073 573214061 937872348 718194111 733048532 865757916 175409313 140385721 464588390 62935992 862430371 855245778 881738143 664802273 151115898 508253486 928405431 149681859 923025635 393275134 120288145 104693449 856278953 944088334 675673538 995928178 971848053 240315986 870229453 863656974 923940136 373819363 908675724 995831533 192748280 944033894 368549225 667984753 303989688 380443787 438858709 890416347 523133250 930228271 472891135 578745518 887829417 746716348 525547341 937468139 196412359 518729342 474199102 878212649 988013464 899582106 461067319 778755877 289178834 942184251 364288096 856933555 964570684 968940240 448961076 864596731 479849453 347112392 439770500 725704104 486456912 21572096 61436568 20800716 827707834 445083400 399798878 742861831 256319598 154712879 275032410 719374999 185801117 411334 335207269 634976889 661923609 574661577 33698525 957856492 618256306 998719317 929937183 20245082 891240228 163792882 701974820 396832742 417491977 460895841 594137242 487402546 642169304 45417084 61170728 779263453 551278642 221515371 456890655 369117807 797856233 88822264 358295605 173703584 333300236 271979674 77558870 839034320 951789001 511439531 941129009 639455429 275692845 607879437 435186410 761184306 237395917 477200098 615432090 44341708 821578279 847387757 960410636 743580874 116504903 747506456 125599141 980154524 674940270 268257163 204130743 909724410 386226712 270836431 972619267 703609589 644797417 453865881 318684749 571763013 534220881 520824701 42203366 563966934 93308520 859436591 873612600 219740860 914182451 671596369 82321114 386930411 316388772 195713371 116332849 366108576 771730562 313363417 996502311 413902517 537591997 677670985 709907019 499261458 499546780 634023201 769261026 961848925 648126217 427292807 695697160 422840463 364999865 717127107 897622769 234258172 642200281 921213961 608137151 887805296 805476021 520974861 565935618 404753341 464278880 168678338 457931333 303048761 911370462 854846545 980606378 367582486 550027810 213038300 1840 352327540 734928249 379360394 631583498 466075776 75386545 707110233 654310213 638662256 643639208 924881942 349711035 190841942 669514973 434035852 42365064 806842914 229386273 505666825 352916950 769169603 650292026 124449861 149476600 899829276 872877820 335596283 249786326 5833170 155972195 643311311 413793839 656015509 551634511 795468003 77467134 859815004 718261224 603772289 546186466 131443978 639266615 992825189 105953228 7345836 314087265 113985624 332313596 917248909 795888326 983592175 926489759 311580692 127637054 774276403 224706759 566217523 204172424 691977577 617672708 553933708 997647868 410850591 940494248 933229501 289085779 94686429 842706112 284351510 845643509 469751636 880078577 664720163 350199731 146404214 363719641 32463560 819180706 566265579 7815564 800363028 674484130 973445115 542628556 292565419 282740032 118053898 283577418 890699225 730292778 625346429 771421266 950203325 922616198 742674976 284399527 161867923 535305540 22757852 122495554 798263566 648888743 791872311 621364734 962098650 841300435 649761054 729512500 530864547 519413192 750787947 182275616 16686748 170043195 185888020 946540560 537757541 222380774 56826625 55623301 677309533 939345877 836796564 454644601 212479622 303924544 498813259 531119951 321855820 305002912 703220740 70615428 653598231 634520170 868517237 552754687 364123248 568189919 712709991 485113746 500290140 582580816 734834107 371001087 26819441 33034408 383916583 796670634 360727669 103662639 241110385 636298315 615487937 114986601 340840183 163197427 168456006 557153763 601054520 305793719 792741036 775298964 951482157 332883872 434679178 296012163 827146219 283981817 388327632 449528215 387571651 823814401 294394243 111102865 632990800 930653143 903787584 340426152 482601764 122889617 51064068 356635908 654529376 569795551 947952840 136103694 217047649 273920934 94924654 346369640 526581589 559007897 875452646 461446902 27201555 840739493 32384685 571547025 470632298 310941048 792205628 968630447 84700721 883839611 6458540 449913167 36174386 845874681 464934624 84855604 804695364 868762737 705422945 555662224 273172922 383567400 207061308 299487577 122741007 81148493 591333873 630298571 848106318 208891930 916629429 421503473 298533195 89003993 427398884 778971761 174466153 790197620 615273322 430435347 983156175 523397880 779289675 870986043 359213340 110724890 360930504 259916866 742803126 898098759 73352339 646753562 423455456 844345197 888569587 76812936 929899663 64585983 816328777 937332725 27908077 295137632 387334716 644488384 543387576 845555689 602863921 780299469 772464887 804872237 368321134 219606187 460751211 755068423 14049691 113671587 106088524 792729524 710395476 162540493 197336365 529171611 642208729 554035102 333427022 328207948 783189969 19790076 215307910 76465817 780659564 610025237 246011871 517187178 14021120 341860207 553091317 966451465 765628234 368939627 577368589 556866422 280433719 523445069 56714212 338841763 816204531 901592796 580792450 202737385 683127288 506113902 159597444 137541873 27114 154427943 380304078 959353747 449129384 568126803 374910728 762336181 503694484 882503229 774549746 96199959 735162609 344033983 573394754 708790958 976622197 282959983 952579564 983182596 707544772 203521170 276197834 705423323 795855450 571593132 816003923 884610850 389343073 732980209 340595494 343520387 516867692 7667097 107238456 874660258 569637193 45181339 508440731 803034656 306453513 478720804 432324134 237481512 375065302 430723360 709764495 220714719 444658289 130357860 840031460 128966914 673520740 668246727 201776785 513277109 88860368 13528624 803036575 954698970 78565547 143817073 899806726 542075072 78619302 146403470 965763035 532161350 215145083 424671184 717366184 877412807 556969061 65610705 257006142 938463919 504900545 522651811 860361945 765140900 985701669 873204195 608973756 448589641 704926581 163784976 227064152 514133041 801479622 925042214 230444620 498833733 442653102 185413720 144340771 687177414 962612244 409517913 123726285 121000881 498403389 431892993 975496425 685083693 985596650 230344742 294353978 126034497 884137700 497925513 314303989 134530823 48234074 58065982 796951547 499555990 782241509 818674066 132659973 78077301 733950096 742633519 826531538 66251717 748631773 493676217 217662634 836354038 54940452 725123452 654580391 379578383 884080740 151158410 45080435 762398344 705069124 312038676 88099255 638441029 346305781 946444149 100084659 402178606 417817882 298525682 694515008 248297922 591155293 59895486 238808152 341092173 109425419 786232226 477138657 862866361 185429010 563737455 157595078 403980921 330764529 911152608 105850888 122647553 986697731 659919598 721833768 996264820 986869067 425119411 490985755 695734221 453345301 781395771 533425176 910023159 569106112 247364073 979051333 761605483 282852609 614763429 942738995 867060081 344247074 579554487 96747967 819642237 86345307 908743814 857960530 714334072 158132822 144026043 778576094 139506087 357457662 842306337 852122054 22174012 799371913 619444608 111622579 316731546 244299999 586633159 850080361 166356176 407314820 384218077 455278157 744175008 942758124 20483766 135484847 847521447 246906016 441520809 438662344 380083508 396739114 809641570 316107199 580874252 542768673 807166523 304387274 816987082 889206407 176251209 821420343 578999103 61257140 973889890 192807081 621146835 639017428 218118925 398034783 741565658 635795768 487316355 477704793 127375757 818938219 865778666 613587206 517551198 508610582 451389880 810247733 722162823 834647650 290360202 983977995 30281890 68761375 872449690 97776834 296116107 367059022 154577406 318402645 176115087 265943952 805655040 785384206 822600433 463461662 163142946 218968374 518078447 192431455 395248964 96352727 709194178 300879316 38372004 556460364 467314317 174025808 798919592 786392162 720726289 349120193 671280089 935719479 442898212 994629478 293236342 567509048 210134377 242247049 594787929 116290899 271118227 923003962 796319636 601006705 134612129 439964552 911792510 255962425 519319086 572040272 489808914 495989313 152949511 452903882 728270949 639976653 866138063 185115217 829136922 741079375 877857563 874997126 394022345 24620212 174634679 297928823 492274013 590469501 374709183 677962145 951313872 739845759 762469501 901761348 850279897 878581352 65845098 487653160 76384220 574930708 238139239 40736935 853027574 717834814 206215905 837712374 714502541 388027778 165042577 478607198 462034439 665204889 509102219 939123312 28868838 877945837 177540731 738707176 218274556 964208103 323606966 230192639 794965379 324278696 371221907 367442585 840829490 668303662 85091586 157590801 513978947 910114552 452315413 975338155 771391013 354649282 776851580 649566828 542434927 444824001 162699328 223706489 385166807 95374590 685886279 76783344 59742531 337893393 178560154 180119320 756798117 551578832 915491350 99143016 121306987 828661862 471508468 817349076 640347767 167354800 560258543 845395121 169781143 646180749 562272175 416135067 110683311 80488227 713783695 979830087 661057854 215216416 635051246 458073856 680209575 994430769 500204927 107313896 441103374 66692930 632737969 602713571 668226393 814338337 670253369 461116828 415455930 976465634 392441364 391222155 289150526 467093785 416979673 111608791 598742375 484328911 150558066 22192039 178238179 23300385 427763680 345256250 161232188 442748986 666754544 779290826 95573567 686583446 638924964 379236618 550803224 203790031 329199189 576113463 525869403 883797937 478754155 377626055 741751669 102239884 152922405 822556430 429274762 13069593 533860684 580554631 569149772 291587755 971328499 804449848 836058558 613407882 522299275 201787934 954154683 383355270 122695263 81235035 523862590 949023892 914847753 62322605 688191471 658545667 749903806 456952781 824122833 389319088 684292040 901416080 780345988 366519277 413983564 838090955 910301834 714903424 283968065 998847896 878921531 600911412 107843688 648203251 908655879 144610608 979796898 553444858 776148522 657881517 623408366 672548776 657126908 783140375 492590366 281801103 977150795 852824808 178431195 237727524 207063754 144797589 215966165 139783495 706218886 957311344 95991424 228484922 362721918 150018002 632772313 946670965 964025364 112221169 866060864 188496428 681537760 780932154 996013506 815504524 265262445 700511653 867664395 560150534 577809734 842830798 982217465 967587462 950209681 253470308 265217384 687142309 592413931 327753549 982666990 797915286 264406254 371482779 867626419 631947303 536088814 933577173 33293800 695875684 931560154 3489989 137787188 287002752 51380887 279173860 670366724 978439605 197849937 17470695 662142000 78084266 816891358 128545051 109784260 632183497 745139516 991611791 965207853 650498186 139264432 149742210 107550329 377602722 453261216 896715237 578748025 989575018 583882259 544718507 319292814 440119596 36698199 971043965 321700360 89582800 136686128 844737480 329877741 136272430 623662988 464149503 338790836 413379748 48890004 426985221 50856062 477900264 318765243 11581326 61083845 900215901 696418868 629364701 120331364 734731901 869918175 22340676 569442222 803043648 289936877 372898867 377002370 172705116 510335443 830895375 882925376 177001256 265249874 310145725 145035962 918902875 409291623 90319217 943050473 156322385 767952152 25167903 148308441 396948978 901707531 358939118 797790475 65366393 146584210 842574149 909645505 988972693 73221137 636335869 240256946 529641163 312055625 648457236 27700875 642131614 385606859 515140403 78376338 298149942 94195264 500054059 280239803 818727461 9818235 55482694 574137375 711611887 590460950 25712129 420754775 623683970 731200517 751538306 644997614 954452041 882568549 379251830 931036399 751561594 465245273 612852309 733863737 516658511 763078652 354880265 188248334 93560540 528078848 152084344 868364654 706359140 255361474 925847687 552751456 343763752 672586694 542717882 338880850 303687581 894522830 685081698 603630632 848496898 545581107 255979018 640394066 616116265 345868147 315160988 515924703 608196440 135314439 55777086 682682358 238171617 395395518 969398122 802194122 748848972 595630375 101986509 143871225 623324627 130637258 647582051 97925908 293587976 260899453 712371377 143814408 33328552 120063661 201561083 343243408 69650380 706285599 915195222 671560888 489200557 492256693 481759816 265721264 93985887 976675376 753675110 669489969 430921373 199683099 192619842 507225767 214474117 791530857 90871286 489813713 552063282 508289924 685626086 556541671 714914694 83415900 281921155 976314675 531399481 322154406 578954173 968121508 207683613 972322507 576727199 906195841 452536260 230982972 549661976 60925770 595938975 43125932 89698688 795285319 309136830 720087510 753996587 986323892 500930627 15136847 72437359 395043698 943386892 60548559 421448642 870625023 910949672 152616505 292967567 139559169 96104117 669126515 107034430 981437451 629701580 251732369 392455620 14431793 685651861 927689669 123918316 210903556 106398638 765826627 945362920 214980228 686007353 326494694 787898886 478095216 132367717 834086528 318703060 908949633 849477632 326130894 219187011 233027284 819807442 799814043 477584552 771634235 610792918 589979619 123807290 743647986 634642302 686473987 277396910 343970552 496288068 68442395 823881340 194121176 264261630 91141166 237321755 203368717 100970780 762549579 388732978 974603400 677995622 252499286 435223934 434544551 515833992 666400144 975451344 834955807 636521928 484817968 106374811 473800026 865523032 874678379 948520511 835594653 604017842 399752226 98776315 225326883 44989974 466442411 804143376 530961247 221215191 520639194 903452494 214411542 750861201 55138825 998132648 913532992 381752621 228972214 92564670 599152461 20083992 160406563 367943865 759129658 497680211 169687244 328826691 320003113 508444469 642854130 918052331 290577291 533355939 236297280 142985686 74360645 956044243 74474681 664960227 401050828 337521933 301888302 858167913 888377046 492942044 597381184 405716418 246329855 911301893 571860030 417411341 260490179 353524597 127230668 405968082 507229060 798729607 59039942 764937253 340300110 222136998 569718306 499163083 902256194 130623990 343172400 861544466 613692191 251433011 346159228 126944598 44719830 949383894 638631606 965248640 190419032 978157838 422627177 619821447 750584527 632621144 780020302 147869916 642980926 450901245 927901983 864149732 700281739 874794174 107731888 654520349 916300279 833994134 157281261 504666794 310896961 221849190 830657089 652059328 549340405 255503226 997547626 590625557 751791552 52305745 487764592 498786741 391843998 542289668 488214758 482786472 361025897 634247594 260456231 29058029 565714090 998684077 26278270 6596578 641658618 846702722 772988232 545027835 152601815 504348208 462868147 797729519 901408178 10091692 225195499 306296850 106033972 952330364 764369500 914982072 731391808 718594662 408518662 261422582 351107868 783499508 581328677 869265730 707957879 697638906 684848397 294932670 851980195 348333970 639372900 193588304 538292876 901952283 802158935 660852665 719517493 389113344 512346950 889665925 991114588 919283188 34238703 544583143 57647207 725885799 949398691 442326800 828286323 365555460 980219697 26444054 180903516 976314265 231496790 742191626 203976341 702578806 121179366 498287245 749251517 132587258 701585647 170383383 179275817 478974517 448113894 796195806 404655064 312167675 37852938 941099378 811047681 344550259 827661527 244574109 222881726 203474029 559709343 905515945 41339227 949101181 23338445 686048727 552273730 487719032 496347485 338217098 905913186 748386027 64338590 673075925 515755477 985066681 470358853 545402629 939969057 147663658 327045617 951440344 208630165 71869672 180471041 553696904 525812098 218545522 46278016 467854581 207261319 4333524 866182671 716104800 112169735 994134643 633309107 318769451 165556613 879165365 905635559 439436205 59886403 800112477 509575290 557370630 528625400 627414286 458998836 312096063 208332615 36854129 443551514 78951834 988200774 158066725 84854811 158345911 56572540 860172169 6345217 268433168 367261712 553288318 686663423 39072558 75168850 288285071 932730106 397099313 206311041 190799913 959243658 437482590 442352464 958813692 210097796 971866877 258671692 211201515 884236831 945743748 484926956 168750576 910104343 651701532 682296473 18449048 161039124 148084258 271947616 618136336 438358520 978695505 136179215 811565702 301640595 821356634 22759514 613398116 774892075 958794272 749927505 717165317 144989071 505130780 146582011 801914527 319290566 90278520 685381860 595685142 474975248 120431899 850948053 75817106 910111892 67719270 442223919 63878001 943805910 514167574 708639476 679009780 317517785 128260471 721886263 920628713 733240646 390220155 544868311 85121691 630549608 128251942 402465743 896767771 357842000 70569252 645217458 187762467 7548475 761243598 328062958 22378643 48469695 169047798 628741139 275276878 619133126 900667568 831163074 506664461 723804587 688444487 920116639 177204274 284539957 800557136 389070905 552054217 979947795 728318243 491436501 940300484 72088648 86364381 272083069 789885860 424823436 395237661 357371922 840163179 605502457 699287570 8773331 604830872 471023310 105586699 687716824 656005397 137252012 260972584 189615277 136780453 291388288 929858234 610191440 246328792 612523365 183745121 143096549 622739827 524017621 975457130 350475587 910757367 501277866 342095676 893415433 132218770 1272934 312761674 14170471 80753062 40949432 614864818 203202274 148329248 724982411 376164893 656777038 550240230 692494141 329085743 849427087 702016675 887967664 274381143 349604314 822881040 604100911 516317904 587161027 104394703 543163614 152404406 293317901 144131875 734145143 239779604 941658944 600347736 95082793 853533426 748185335 328488684 903170454 721369536 761939781 385463005 711233368 869147413 412723448 281710708 478615785 755855990 127232480 496750718 726817353 20719582 743414796 638159113 139298728 342830728 175252885 247277559 960806038 822177647 52909648 993897070 153615215 956285893 644482817 623373282 43638 621553790 403384054 413682007 621851124 3098658 602638042 747859619 430464064 946799736 844483503 270387671 36185025 171574979 566721967 725820227 311236145 805616468 91374654 328460611 480656673 577043461 644677135 507467800 280296276 813470687 406140999 775012877 104977436 624746408 800310201 283120276 262103606 975145339 535183589 736426367 549680475 801138951 617901520 325950100 289579725 868010099 966779020 812006012 91323489 950612574 385568445 953607903 911404395 461505410 8011384 664267207 406995833 226255600 199080784 421200649 688633391 934687930 720873557 187306578 267704039 242392686 283517936 66459168 191887376 568338899 89675615 782568597 603662499 951153426 703103413 312495118 524790438 469097386 908570681 133082185 128875328 705632495 104379427 965747092 134205811 984938290 483084680 844680171 573126195 332939745 884236793 980074060 734533973 665689696 772922263 297236137 829553563 682534122 895897784 736334645 103682674 177157513 356874763 867907418 112129296 871453360 631864973 582157336 549191189 159615282 894115426 568454047 796932060 127670351 236811289 961432951 858521716 819055910 842654067 311348605 222661791 427666687 341158531 129195588 29430340 760946249 188527064 100320761 356907722 537996266 447981410 557451603 828661671 391803033 144359943 525688962 623549283 99269719 328893804 185872507 480641486 552834939 309472072 664888125 784516371 716638272 951853538 648251405 449892976 649206697 568067071 714078425 527518537 779933310 9545887 38066688 853473756 729420005 642843385 255059355 7984300 884923523 171494204 345275466 421540588 457556088 407022106 520307813 203498587 158628614 34575638 244408712 616788647 234686015 596200372 878874813 445645052 812002728 888834477 896191342 312407009 734784346 737408066 88877300 150375841 855902576 951789393 491172258 578969008 459374625 835997852 171051316 466655532 428001959 359026326 522931299 432289027 991194718 887275277 953584152 189091359 250410294 527550551 800770013 256557135 585016273 270842744 251979755 466285907 916848458 925716754 243400625 82746806 161654919 942983960 204789500 952885147 885594612 227727725 266908690 747808822 922082560 424685316 656305323 82961666 994427309 83730303 708584036 964469496 320565170 282065702 862679763 854244133 325788475 746742952 145859659 673079025 460214115 159428598 884048884 907181140 95159541 547507798 385261774 594773427 503623625 289216487 648689577 466080301 590951864 737451152 534576837 79472956 310659898 269184536 998752838 578940703 538993345 67641169 539728600 55442986 254796099 15469152 256297783 824069645 907839656 269709079 750420137 668808684 55444444 253746117 300939411 336094020 145778345 886834677 282483850 32686982 158517024 173900581 860238462 464136436 131107832 744886324 528068343 222061454 819702593 857253809 446734548 421647259 10480776 553768689 560753336 150027271 540865922 229399091 244275916 97496478 767215187 931982149 210895066 469870541 269061668 533562071 694164377 61743161 376250020 996486082 930449256 465148995 348173606 707250261 49359202 280929599 960314880 88457313 627770047 142021243 164125218 586889892 351706915 93602966 905580598 988654658 976662197 144393438 213266104 638728019 855328861 734346603 701782879 550774037 522514891 394788461 484691566 499943940 335954557 786372294 563490051 858468786 447863914 173597744 550710621 422070148 773683333 805944997 478817032 218727014 353586237 373378744 927401149 593071191 687082822 238056924 636923185 717463620 833340250 539655580 245325864 224812063 976673491 394775210 117718997 170969416 11804061 859313008 64697591 832946980 832946939 923903508 411805173 164085862 74482861 175051869 625003257 573101705 41476979 176715612 285870607 866236067 151855270 362871638 140278065 398617933 478169013 774853511 484335183 83583464 599205977 197652612 125837976 731293721 740531694 490125050 429980216 41789665 194636802 561457546 376262337 914958857 620759787 6983055 761246377 439961103 623886556 316703508 179631611 928021508 54711334 609358030 482066401 941997779 234702962 515367117 153251523 795911753 762362287 296635719 887126318 503417848 615657280 334145023 945836051 422282110 639200389 680639366 83740256 409880748 210256985 352215141 983221396 600959087 314199677 10199288 390261024 236171607 165486191 344007816 659995070 148702407 339449526 999214929 221459190 693283523 383039285 342177226 847070627 541129479 112156054 309455688 427085518 901258160 365238748 516600761 648917683 120678698 876611834 897769921 156414188 116339092 747162558 844085533 236427059 387047464 344470672 760717552 473255351 354077010 729691386 474334746 774700703 892018675 457889997 837908536 643974245 335287186 120325226 836276633 515761191 732517302 220208786 773653587 69761947 838746415 975494651 112128941 333807899 845744713 648258459 279991488 640800100 415282596 99637001 92541689 704670744 968548014 182284903 27974970 529244532 387748397 144247530 120321600 384197865 208389237 643965452 266334867 575475369 326940764 781188905 164674326 103298386 171704293 478976789 458107590 287684263 671911462 568722491 509110455 108492505 822303998 704136791 689778493 34647943 331414594 809217628 71008612 751282458 715450517 851965346 279090670 704325878 534160952 20622597 762502606 790814973 362623282 265183714 800973912 439415886 479739989 787285910 132896387 608421471 32150375 532444247 227677065 248852468 324552488 220332264 82834993 426250372 218997086 982794974 234702076 974919211 778962689 867330108 847652414 96933544 176843763 432699244 176725087 978073291 314833444 918668836 482611503 640138538 599429587 123910845 763958245 430392632 817644206 91565336 363814220 315915431 383848236 886958113 796896282 705791876 917656473 368990576 813014186 164100766 162603837 624639106 398467304 73686703 71734172 55755798 318403751 87397021 633601628 239754066 7444593 149739020 759773740 715900499 486477237 230015416 245712033 219938834 113395566 429923520 129890767 691574726 264026430 375584057 358502417 867100134 389717381 582582225 542184359 791123458 915164965 839319852 107292008 512319345 235574909 211863997 176601202 353735789 614269037 679332351 319775853 272064416 223269439 137261902 537463260 575362409 280440987 123435848 964229998 725275476 459999582 124700872 54908825 679142110 625059262 539237909 380452679 647500240 230733704 943461155 270760357 17083846 635521797 164599643 718245768 284173407 240706990 84385648 371633993 904614062 583543255 660980525 233827928 13907697 462186849 78327173 969591003 974107651 98406243 120480728 726008256 904316600 288211250 211096403 476713435 406077119 908662247 602677158 477511075 532213208 219642159 232121723 376521454 734880212 661725280 612169301 792262371 974808163 723283558 323099360 482618092 553434424 267992064 533259807 440230134 718356427 242771501 192498420 769767649 728145105 517359 445687321 609901189 762960892 328838556 223121999 82279441 988490538 853378974 208680128 546571304 581679171 700651087 848723602 558767828 455042119 18274385 962830998 216694070 630343697 777399566 840385957 778538843 303325237 241267552 441339402 471018611 683872969 155173188 902861252 948902000 165477001 900594997 201097265 463739773 833007180 304709126 41141866 641460918 185329082 668749894 646702299 876870838 762800001 431941752 453249828 191925140 200794452 265142903 273411233 930952545 822816706 496709932 868179099 732953095 215266413 31355834 576132933 537050223 416309931 869534374 703862999 171346664 797063419 178632474 575040722 155746691 156812032 749762091 142088932 315818936 15934459 746048974 653697788 172410935 969122660 108303677 27670089 622435599 948964244 948729485 133293760 102298325 586623079 465473801 416551383 254343021 567077011 396842805 683394626 233851055 341737109 197119030 693747895 476814405 725956997 319424177 643237057 424294581 414325025 646347957 348677438 41801875 208654517 476543785 935185419 466458519 724876123 954235110 374080448 778071797 576707054 651110591 607405183 521698814 336587234 624851347 494739061 523519246 990570566 355244954 469439886 978310728 903338785 916261762 241791613 877798770 940351293 147657847 747449518 677688426 938388300 129038101 756938330 705099348 727773597 17007191 513404583 465365462 629055287 665088281 264939753 994850915 756910229 406610531 618034174 478536591 878961298 495040340 254731796 359067094 94955970 649056528 979301241 534151146 504133479 26738180 206901812 942357492 936465697 120304619 147600456 459894887 512777383 580598149 555361441 51783341 728255683 361362379 145350307 486279013 961645988 258760241 485305661 428923838 452979722 617838552 241880046 927571531 875953159 911646160 379474252 294196855 468942224 158126966 313788831 107270875 778714699 993054684 676046329 331531996 53819477 863758327 29538148 363245907 555654191 24179177 495272117 586452120 986282940 759981354 113820823 405500898 526472244 368547990 213465671 640787787 327731554 552974284 26729683 749483266 508328176 320974850 107839244 919555836 527476606 800215258 175810349 533824803 504904562 30340891 717457930 59917046 411732750 111428355 373376064 699258927 946138855 911358161 933736496 198088120 653101420 747886403 247031066 646634340 707593305 315050158 976876131 714835077 987502076 320382877 632852696 251118151 590263108 461448833 417123178 930184944 380879266 613130135 891274509 884566089 853785846 995061396 26951528 998247869 43424702 51033501 667587141 688144500 609877663 512761555 52042595 786332407 572785266 903213599 448628061 285124460 29440595 983757407 839296468 87088152 928262379 487500066 439834417 859287958 989724592 108005028 307768258 708384825 27216296 128594347 536424509 49143585 882009807 443313481 496374 839209853 917894901 203506971 717420 454928765 568007960 902526015 695482695 198538331 872677982 574741851 369263529 794594889 512482417 995141355 654308549 520141092 262760342 82253679 604577264 917498060 618251787 344004265 471557455 917696328 877582638 739223522 75565417 593851270 310135028 316842937 179955156 153540921 914501104 126620370 738646393 744390980 565404849 984542355 44309462 835869151 909878470 296878870 79788511 681299910 291567150 638112731 316381195 436743580 450230719 816897321 774931746 939222856 445893629 791548441 480161790 665705453 955512792 687200943 678509161 396300359 877964962 621688916 928440962 856601896 190025550 58170269 398198945 83898597 598463428 541893743 565071729 89101942 59003447 278561184 878489257 301731310 345788519 959991757 984318840 419600871 833258010 581219795 539081071 430614736 953062786 635907469 275343872 128922709 418704961 683361537 68953060 167675385 167980858 584681192 879864398 678839217 500194623 165774231 585234709 110384551 841370917 404508552 649781313 929457221 228477555 589750579 819501566 771373486 112444418 906397937 377143689 139912676 546095509 645249827 542771563 697888054 16635392 19837894 839628118 653682395 491291263 275602327 928173250 916714749 385818689 592904959 713996001 101378901 316710972 629395847 679610735 515931154 729427038 208099829 356085839 776388927 55618770 36038067 774346725 256990015 667763949 77408720 465173261 350076297 182285689 528436070 771830422 141846810 582018856 537465910 198399173 68140438 944996923 192670516 690538579 464459778 94810126 530182912 354437434 611383444 586493519 959723772 106360670 758164207 647194674 135596941 81504959 596031810 520060790 559169742 513717159 626319448 331858721 585688991 452853428 744353514 540240140 503740573 931144128 139579513 45102024 56614899 391923088 606638180 724977699 525333240 48336607 14996780 810194712 339318752 350716426 905519531 711615793 78006174 217650727 798948651 333470618 177823209 107600263 60492946 576505336 421762566 893455695 269369744 741692660 967852230 61129805 794816320 129426116 714697059 194571897 560163576 111925161 230020537 794656343 443990837 609439161 508591669 522111585 22130635 823448248 368915140 538109605 357596020 747990614 960396678 739958594 965554605 61805911 165914473 86935133 967151784 768716171 3504393 974350626 53166782 520113218 54371068 141940703 22345692 955199008 289577844 208167038 962843518 917815716 637119297 673325188 655916595 753634566 166749048 404629662 212610863 907537564 619510637 392855149 919074915 954448582 777289819 916738792 319565503 843034067 976007986 173538293 9998996 206978291 223120416 506848006 418998079 648701500 236932783 780514154 884413194 264701448 984387384 170649411 306810056 332443734 327984764 6613886 928921360 160477808 677268430 294745768 838958983 916333889 410189954 16325212 515332642 720332990 497545207 222864456 182521651 188214496 264439175 849519082 409357055 131500719 123979101 530734605 681545077 156325516 421864172 634662114 374888185 831667190 389853543 250603342 763853140 21325104 247498302 761802795 298499480 332349800 601484777 874431915 918965038 370176712 502263967 716339351 624946063 961172869 915109519 14072886 298549468 879045536 18587133 103741054 715098311 266396561 989776729 590661269 768936367 336535028 533264530 743715776 897577010 811907685 74740545 693722856 650183068 463428633 207434956 479774257 261294510 385300071 928563216 560045848 329934383 107598044 629494114 926115979 402568088 26619561 972774930 608499227 491611193 51717976 605938545 999670437 899923663 791777236 801826000 473521049 160316214 253296406 838794160 432193906 515540967 708740982 257434341 6289961 344099671 69829644 198543854 122927416 160942895 769012023 828528333 710974994 562795925 179730095 659947981 139491930 661400152 475264452 325471535 379195952 700782164 104381943 524885558 789912756 149873106 970850267 127078532 605269621 585429792 893646262 333313388 408661169 109412687 313605081 898318549 240575808 180131974 969339484 396471261 719936118 878020683 867030321 441635562 273682288 942714267 245116418 404761707 448693752 620295053 865385119 107986784 215975996 104527659 813545376 146415600 410618360 863780369 835611566 716835346 702189726 264086472 542973109 354713596 667897075 176923233 122505209 795517326 635470606 225213623 633708768 631827374 193955662 297375352 4780384 466367007 798869743 833944436 31334904 927423223 785145631 128006887 286545740 441631270 830718966 963356477 739015142 789850162 349765001 326703110 245493380 249189756 300457683 683556965 986891156 950419085 456032039 877407661 407234676 852494302 606745008 724463377 340328438 889301215 421332241 389983076 673490626 500338209 630900211 107800825 81298652 12726169 994708982 347153596 356954159 119146677 528978020 270774911 43044501 635248738 273948097 612867588 95540433 369701911 560577769 430833468 45918218 115101881 131127831 204509447 724119086 594370760 617820795 908289029 645332794 911930678 810822024 539032758 930189196 119507177 595823420 717503648 689494381 94858567 123386856 160862492 887990267 261307287 155065559 530713836 184316075 257024331 575879877 575943466 914613649 763619745 23692699 960807541 624631874 958681048 712452463 690299998 729428481 991318819 818112337 410329488 832807896 493676807 52094279 263358462 29228175 670299140 53446650 770197046 722128291 398340698 709144879 268313682 169988923 64538804 651102270 910622389 29211663 371919674 297998430 870753794 490755728 690279706 772699336 464286494 776930796 652358162 933487584 879093408 979241232 187549829 29119680 159707761 426200246 171925465 775273276 615872887 663735671 574009293 675959731 876919199 469507467 471573551 863088636 248027629 382170276 942193019 726229378 389601291 713040656 266692441 802232889 582719772 827649403 948447638 889641336 893474269 5202625 955728488 496968213 860604723 894224876 887174329 77554230 431080786 101828708 365958382 707267367 811568763 299768781 841861347 778478110 71990493 682480860 947844849 926632701 988600428 740586959 458039564 362859824 173409100 195864142 621075513 765387112 711431352 938068301 320442356 204356695 147736227 281379633 877001558 147999645 981481010 996227298 401327960 464530205 370974601 393248728 63043732 365479893 549722501 109934561 966169640 676741797 432014581 533865911 284761163 872964276 999036715 535651891 910603437 112652792 303962075 840373358 54067076 884884864 778529040 5122727 919900844 666958307 691368796 906676481 45178944 219442883 772361867 929329894 422833865 475969718 32342381 135547707 322076931 793191596 766055999 109176646 490258937 652441039 281814167 880649895 490362979 687502795 615567755 818971029 194461489 157221243 405637384 796785308 643499699 36005155 365802752 81444700 638600551 14903237 858953933 622073692 730147718 68514058 594398087 718885174 245431539 271487365 193956172 630512763 756454167 582405843 796089968 920190495 588500468 945004751 93915722 880600359 136483815 810041293 157600384 282794081 542138976 633684294 162079369 242402978 556747374 21993372 829449232 531730507 330633450 291138144 824818348 893243994 740596581 241473797 90720318 207190216 767335302 469855746 377113044 13218139 625002180 278371004 592210771 952123029 318842659 440295909 310215369 525548580 141270115 299332766 394337067 658524323 709669506 918397643 45511009 281641587 511560641 374883905 153658976 609526062 169454175 656554172 808104396 945590964 367740001 731808905 393909579 327068784 476162002 177346152 711660225 391468796 366572486 152679838 193813625 182057764 315639800 746651918 281927025 8866994 918877899 650250611 268733086 503770755 101176670 149092132 591262969 303934877 855371767 934905694 131441500 424012982 790575827 222766343 826060419 205586295 740856350 90205905 964032575 296450487 371056418 838924199 187956177 383241115 337706207 655093048 18148839 107199243 591292232 667643884 680633496 554305415 183421977 550453612 17844326 338223094 88936587 536122767 924965580 261172355 992026315 197051686 44340946 122330502 51407587 544031980 582746117 506906602 856092086 372488162 477007339 139934627 592581353 124418780 802840697 131585243 449153583 713564276 283403790 535132691 204602338 699024765 376756069 729211611 301454763 143919787 771967088 573690533 322873094 116885459 404695364 872203140 804112579 5920599 550001075 149090510 428287241 716006469 486311040 633283498 716868710 829194301 191448578 611079225 849044610 132603784 77410585 262681843 898846224 693286344 864806517 827017567 598615468 950277367 724372255 801738133 685089869 548646149 334409523 740536631 578175511 298785030 504582110 62752477 499996849 766865388 869122269 855213916 75239069 897067468 3789486 395163885 275700565 870804188 664245534 490763954 985191033 25077114 201185527 359501011 814668813 53161232 134215449 747323132 759766059 712156319 874339244 504734080 242350344 864672315 979627876 875459464 40580204 677766175 855323062 66069928 332575544 842159856 504267484 285398785 440308817 102542037 804822553 526896622 211096794 197820912 427457351 383751307 835815536 708841505 841988764 915130657 502544172 519950059 138374220 558521387 840465380 965776761 857029047 329410059 622596426 427302026 230789276 496800591 661942780 942588542 512834799 16304211 725392513 798998192 392149885 648244624 914253368 168283439 147292721 602056750 33204797 935842744 355330207 886813825 243045701 63529837 607413448 580006268 24494958 661873220 631267102 460910844 450184678 338236584 672901895 449364121 547487348 154585544 188617131 199141377 709936173 375404848 477217823 557010743 794873769 578905146 367393943 934007652 630676611 601895921 961684704 556083496 535821161 971926263 390522993 883552335 821652416 802999536 503014409 317434765 798205360 792626655 325742052 19669831 921526291 4580508 499658794 902577096 139630522 918566516 645180261 346594017 407912322 793960734 953545775 188546071 272461827 131735532 555872039 828161614 297231240 443067893 726505288 744010316 544717182 317602305 857634185 197670078 351289446 396328379 950050769 666718154 794707022 695076164 491090306 370702447 8728474 989480595 647549672 361551999 679278225 317413947 101949565 403634045 692902708 591205354 79376981 586360173 405240608 948090231 586411737 135179542 775129513 335330718 591315774 133637076 427220033 344806496 340438674 869905277 786815899 242729174 624854336 891511051 616166749 247440947 320807152 510303649 502638125 789135565 192320852 522231213 833407610 59315527 265872057 638334605 86815963 11283338 909794314 551391203 6547191 842051970 543810774 32237119 362803674 153028931 393542585 340515721 447580219 469811554 328664774 543904341 518689733 219915186 71848835 353568787 148702987 331372057 984668552 94685091 628570268 122718020 342655349 870097720 857203939 6164718 159595195 876431020 47392753 242903662 165117981 354795921 90631244 701715360 617254404 170864237 384589738 714532696 366025535 885231561 418566139 975745868 361798916 344645911 296521408 438820732 354309567 189888294 791013341 419465537 378627400 31004186 798201225 747083303 633891524 950197597 232581768 968801903 724159923 769926354 488270702 719238184 228418249 848498119 785024238 772759927 961269274 730729410 192379927 123874649 805046838 969179722 650369999 200360583 483875056 466426148 875287513 796339912 858841367 908592631 613944591 932975365 770526727 64456257 732765971 318649580 201415145 668977642 483929220 782132449 194585582 637847146 752114876 19093977 120993987 735541650 814708563 838458785 463452308 73792536 907626592 562489683 17970570 179283180 394069529 586187972 459684776 466322261 376517623 669024142 512212208 375431901 68501238 111721838 779062348 319240829 160854630 795784956 272216002 698051711 464245885 239945824 494095332 847845744 619810951 331188728 457561418 809822560 395735495 783795608 164126967 212069918 143736195 464357217 580197453 668060011 718349459 956527537 701061319 53143690 35826694 270893469 182908979 690857248 433321318 256343759 455554236 928362270 841178653 136013864 804931359 320704086 858104686 979595172 638780923 443308719 436858855 412688528 255676644 855666876 668123163 390724301 490191791 936166733 743707948 704385952 46808426 592381058 934023962 300664673 977877575 488373662 677443016 504331302 650314441 101717758 892669969 956629839 457721287 438184460 898606470 444999674 591663083 161337598 517821395 204190544 801146433 543191283 4078821 726800284 131190240 148382937 272999283 784394688 161920490 320187088 884370846 599477716 301329770 938166045 414033417 309163567 786665288 650550212 569226406 593396384 387125894 227252044 771821824 586527541 467767304 312738857 60830410 353188971 719069625 347408621 461054423 618804856 176998417 980480689 133710269 698239073 62268076 751434191 900358578 204315462 505868806 992051256 754689860 994300344 278882710 506124814 27182899 207017144 915673029 953267074 623944171 43888537 325661772 440381224 624298395 554616516 1273861 884254101 175287303 445794644 139332900 808086726 477141998 409023093 344491306 583336192 207144149 539178880 211062259 556390486 172621613 428829164 426024243 522549248 616358928 107379001 553643941 621515134 270632395 114682472 727064943 977752709 319429110 600984763 829579068 879558216 44612923 947127013 987968322 235038563 64636832 231669491 881290368 614516244 858972845 230957609 884663469 54970517 798875105 133931814 246512689 205216693 379394887 356068044 528276848 746214548 514150865 276868743 511412188 825347942 189698728 39164693 160481935 321370392 436633705 121244868 752192066 616839839 652114317 77640252 401773302 475070423 657508650 210455506 174997191 475262974 166775350 860576122 79245049 413620470 437083693 158209630 930325575 444282411 429951002 240063826 299783067 700116384 583370343 775472665 973369559 347280085 160340655 936897598 151338708 869522233 218083176 8929300 301542785 663348544 207123066 537954872 651097815 868520456 192099237 974917905 30991865 713964147 841003258 622932708 241205466 977548417 689826079 500399594 457789884 876994565 95690652 379671324 666176521 70285926 748883419 383873999 803764309 995096071 116383737 252862852 956643810 701421196 832505638 127785060 465464913 534722172 528540719 130790207 665702166 528268434 925150350 674527833 454277335 210380564 919346468 539939530 350109993 163889252 298288020 813254470 14546173 117191224 55975690 886528582 983823084 335605058 495027224 156025512 27264179 681430562 198066983 585472 753920689 99138290 282660939 685164564 874790302 567865252 489740707 409253692 408794081 383370795 628639122 279328524 441584580 640625867 455290325 560704142 66730032 787535245 661328536 240391965 511134635 725216340 176879923 355069316 214236414 122280270 431604353 325223323 410660549 755214911 809243602 655795400 527522234 654305576 259128871 117637216 235421335 916825843 704090406 569638521 558694024 924117444 732845253 932973049 608231089 27773778 536879815 636531152 283405561 672227583 765427765 678266055 11855727 346410897 413830278 703256900 784726786 870605433 438386631 747263769 305348499 167518552 501205088 211085268 376792703 54158726 267641904 277996896 694868154 120202462 277718274 564995354 657427747 484483228 554012925 154541919 906280492 870001079 279349780 663282195 614331669 429548488 343989999 46479592 490993614 655497145 643125304 787685838 173109108 287598979 384194970 248306836 272978825 456703437 284944533 49383739 591908578 747803392 375070471 895537328 384754932 18267422 267326967 242017509 110056668 421282763 942509444 18232376 677373991 266991935 390278548 670539502 147448078 288844918 313686870 721686164 685216214 588381632 314139565 354634585 61488597 363363211 567959629 747657403 213867386 442815239 847892890 239682497 929679956 184809289 584280528 77769670 856496967 978928106 737109768 434860960 464287386 6005775 215156789 450262652 552672876 824672781 201194219 634425947 551873411 53652560 525187841 987308898 126940955 308507360 174748596 142440881 263933218 530331416 144450610 492625952 134298239 807149938 880564588 528093079 115232731 788229789 705261449 915328615 937142323 183407185 29259809 890793352 656774117 845440906 249302075 377055837 919977870 712715051 628606825 600768516 713948244 329027790 812642326 194062423 123827155 944354265 999266237 452787540 288383409 436434275 65753023 669210769 132248755 26681856 24947947 830168490 835999012 875430500 631466901 147091440 726838053 145810598 800496654 559468088 494683000 627569604 586167668 20361160 267514006 328868019 272120714 16792280 262097963 865310573 530061973 880607638 681479018 68298829 957721259 226650093 108746000 622075428 175500918 888742151 407647984 183866716 811634295 392451342 841901143 227640029 177104184 854335877 199183812 966701435 340618361 948395718 117115956 194190383 532974067 676266335 118700668 375141390 960557142 264703996 964930425 779695284 78540112 724683941 540431181 783560359 671339294 985261731 309484994 599042090 914406302 804869785 630544456 512549839 764780118 972616765 514941774 433513161 188192985 872566109 549309656 292436543 221057782 658024000 945192837 120723340 184830659 115305139 277376881 871809327 199728997 911034690 674197371 337376561 946333608 411471638 982778638 545731383 274068157 825812579 571972071 177758499 917428227 668784659 965939738 826974629 107645413 7488786 487719747 220037508 200659534 158021728 551205054 308086037 962823642 971365660 435917523 773139815 979505946 570648204 186736067 620806579 224798815 987674537 296982741 59620792 610988550 187509994 88936972 966295910 999356572 398637673 258523841 452716903 263011724 713994888 331497551 760931976 355220738 308286313 28649667 996289903 9534284 633640884 891908201 305506614 323216552 496637165 979506620 923487578 837168802 893647697 51052185 67074249 837333527 933596994 547128301 393404909 134905418 647875952 679574108 19658793 836352651 570399840 494622793 35113627 340681312 329569596 920753028 450098538 714061365 655567370 211857405 461710058 913003305 365150655 308168153 49114785 313229631 770743412 502979427 411220554 949058908 581136200 833167697 326633232 386134147 673232714 698330005 362229852 77035274 405267793 656826130 188586433 648199923 778274669 53834686 728959263 498996313 335182092 5762026 370838080 1776497 529808681 758661243 46207808 286432028 567025052 76949561 60252744 2547788 687433336 677133061 26983242 402145287 425443532 480684986 678588289 358619848 721540841 26139041 500970924 496922754 413169033 222767189 554807529 82743422 998668767 75482049 996433690 951350432 867838812 421117287 225386772 261803869 634701220 476841758 726817022 772428429 33859087 523849721 381686925 128703107 54447049 27492432 636904709 893555046 679571480 415650479 954060196 677065463 262560258 896325129 610731590 355441331 28550025 982961902 593402024 161536277 78211077 155884192 376410410 468109375 270897634 96931215 623255178 612751080 945026523 438814411 639738513 404559152 844667967 104048299 225753154 835312009 254763099 902581435 69321020 300453494 471656690 325966588 934458928 653607206 661454742 316991097 557228495 769227093 967061547 395411599 486265896 436180508 697611805 308321834 957357701 168309169 456537282 712941970 694986458 996201854 387531420 973752938 767016555 837770886 619246001 377120638 474536126 742348450 903287410 93549533 195516556 724406919 780502641 53589958 326572455 473864230 404816699 678281455 951412451 218134392 35007745 734499072 424631190 464937823 36952599 39114759 65443384 246188707 413239251 134951995 572048529 289799060 779131945 463570779 631412254 24093796 676281363 780061361 613905151 935506957 75591518 185763377 922495542 997290041 736562944 127349541 381625597 380284991 213689592 185520446 186902791 531887827 229330055 621078759 894653628 273041797 937275012 586600111 460508783 184840643 117355838 279439082 818366641 329646175 583147393 251268249 985207235 736615363 867648330 244207376 642198538 444987689 952455578 113529701 539247008 478588672 699063195 249378088 831664058 638093562 209795260 994237927 86263719 111644704 782596447 150910072 277409511 596677424 495395803 252602188 636502699 932116383 16614775 473273420 36011594 745372702 570634197 312002612 285008268 745724467 346755064 511526936 478245126 53534859 245836196 458835399 919814628 884594533 882269950 63813311 818521261 659175271 884920043 494181717 79271187 900015411 247294604 604929973 980369151 687283898 473419391 572061082 610303132 247654674 294213055 669351834 505704270 643455476 580514888 107848114 269769958 933420810 742429551 993678358 694691191 494620344 307443564 919569962 704237393 401985362 932826151 408596858 165823159 966685268 68319774 580110592 491367057 249174488 653510058 3864592 492861975 786222644 889459967 995182487 652494062 640151963 514637707 755727591 330154403 466329003 255630467 90862864 795931237 142169810 123882842 203679265 928977183 256883480 577942279 945885503 323782865 19036589 432044073 678537592 59812517 353051834 545405011 900592240 787426185 304115185 87406366 461529291 323600545 872130055 124214611 453744844 862015261 719786723 372657834 792821973 585124253 833091211 271330516 924617366 478325500 325402247 539476232 681654620 796506127 347671001 779211420 42545571 6038478 550897062 815701177 174112502 451113109 418392465 844284520 573379442 951866071 132442118 593255195 83063912 961687918 355906350 648570761 61615240 869725025 44420004 868975668 665340358 3815314 652253244 362216333 725317042 294457004 913069118 852106736 152122867 743808683 286145427 791574251 540313724 139937638 179839483 121809429 800379812 139466602 362974306 231024308 566237313 249080307 742424485 86416568 992836372 104080206 833970689 363474834 557464785 611019816 515425997 168103875 448598877 318037210 264285035 113788610 522196007 72336811 391326469 498822663 985326739 129105827 133901618 733316964 213295526 392950646 414562597 949348883 861003406 207426790 595096056 444995238 718898227 765033727 971162461 89228342 474569951 729755313 795050881 992856831 698492484 771619262 632809909 782016555 373197760 906392775 717163164 479780467 425185253 56142034 438219656 630992191 125162754 988317702 197888703 583203716 167648876 732800202 363519251 297891159 842950305 150610344 101236959 613462934 315267085 971537205 477430381 656243254 342078703 119888828 129805094 372329025 31562230 397639309 376339513 557103859 226236420 739290785 734267509 25564029 860761646 271354422 944020657 270918355 380054242 601651720 253316265 897603736 793490730 128542114 341822650 922066 163231149 660822416 81244240 96971151 589230705 271266280 347039546 220848434 568374173 145886291 597348725 390178219 890356560 261939820 921518811 30111984 680428667 175795408 677323959 58034246 123990950 745578291 790271479 805681949 195519376 980095919 985861649 72445425 396708020 960347911 455429023 54654899 990808377 661689936 797478191 118090829 156597242 307993318 463764109 75018200 2935862 400290844 729905216 879239551 614239077 205062948 228527201 442302318 635460857 536350402 165368884 734826962 922929894 857757918 385250820 618248657 728089667 729015976 176229157 963521649 533438624 557895040 834962469 559994642 915530173 347584311 597497855 871914241 420760385 375053496 994434401 252200364 703408815 847403167 314462510 358086571 887992091 828860791 42988631 275594248 829965506 159181009 775484569 48412186 112168784 549654477 357111408 36718302 123371886 242496158 190955895 490877460 130228212 249642753 313251606 6916117 47585841 436467677 309245542 363714211 183791854 531694368 360630468 469413380 915502874 984909734 13770876 21142223 676542290 610959798 37894688 170889498 667321789 760869658 681498877 284407844 50196122 768782890 700575635 60380582 842328904 221248965 511841718 565289251 254499448 776598874 419283687 600576423 26040082 521972405 381089942 662114175 516365006 856797377 409156710 246673435 213222969 499396484 698331977 530812369 126557864 520177431 792684382 71902625 335493779 274670401 212952746 702031349 239946566 69378715 417346352 179329317 831207364 664395656 649923858 522950512 595949506 324434204 387345248 16419711 365186561 562562316 126770193 761397883 150271799 142413198 854257139 92541787 537743754 429306223 706212743 623755397 256841156 450807176 384332470 14051720 876308748 957347568 466411791 399857313 320021819 199946815 458772246 495502664 356119987 152774640 722479510 154762510 951012793 32374042 173920591 837795244 282106133 405704699 638663363 704584083 816169203 67355153 133430250 347024226 303171934 7577159 441694385 76054453 361204350 295013437 171834522 691662152 186534904 357680151 243419911 669412162 519982639 956185488 977088133 904366932 777867466 491456260 846938120 120319729 38576266 308364812 437930364 459393062 688615686 194382922 885016650 426728514 434389236 823024791 136072473 866100570 155755057 978924251 979892988 34972087 132846718 492101591 692440632 950044683 644882781 102034164 389483024 147011971 280024504 41735234 90131198 402873665 135251777 120773617 416289581 321698490 8690565 335303950 507867525 688339778 923969599 379341202 293732791 83622598 524608050 295705863 107564972 644906990 944025440 752706640 911588345 597412007 526316230 66753744 700755107 402538525 62400996 218597877 478261246 246286990 130649490 109436361 969583276 536922450 287367538 304346845 863962303 229923442 166364382 731592522 495858614 110042730 936884678 282721100 547688600 301837979 910702232 478516756 969632860 754617477 195261646 431164100 440911464 673594415 263971128 767197788 187283034 988873495 842048604 927142563 388131566 556976051 69778564 539732167 620950425 224800296 236518755 642188274 789472762 340927340 208364700 73644689 323877957 106632479 521206428 761943167 663498248 518852625 974725064 937812875 722378603 517936391 730398175 739375775 169506444 855718541 583194334 746782368 107227067 504343156 84044051 273112745 489179174 354409898 22617908 532447459 808239836 334459007 303799656 103791110 616387610 399305065 121229813 309620025 679134738 456323799 482829560 216465266 554750143 26590441 59271023 229485944 169674185 279193532 331464027 144199042 342121622 610314195 176257112 950567098 667269490 386660098 230571500 431581806 951072341 126937858 177179852 477469812 499602155 695753593 320292190 222218638 30245885 566718609 194339012 249246465 774842461 600156927 863727765 292537691 554299245 934069969 893232043 686637427 80698435 626023585 197764029 333782815 122464824 998064202 196171581 325209221 770897806 788843886 612185697 432971289 988751401 514243358 7823213 1260666 980886290 351614420 432338110 477700801 232280787 112987868 987409186 164085960 738690643 137133696 718600251 279346697 716690154 436041946 40307115 971981782 519741784 298922834 837904092 652814272 820777227 259467217 170178888 396596580 525624686 82595754 544359076 966291011 987613881 944103962 7323361 54704077 995541633 440216768 314764834 310759016 864062497 2951987 509083397 137892656 526725041 973345267 770337257 477573565 210395048 574274894 924220241 230859442 41352612 621654692 9373950 384437734 907151732 824812437 194779948 680102503 104534347 120369003 181826810 419356076 649686712 697542213 715108874 267934978 879103996 586589808 559322783 561825235 639966847 222796579 936251277 644370403 942531563 156054639 609037695 851850176 758813361 123823780 967143217 906395870 912515602 487023165 84041376 218805650 135220144 101351100 155525347 302869760 965205697 434111577 206902857 819062153 693796623 550229110 935500285 146553605 523754080 407287548 356205246 769292933 104659147 627040323 188681533 293524386 21151177 452532282 238298568 309185862 526072502 996379127 27647299 474045655 679776782 764307421 561120 335702731 250221936 661441460 898603294 663193125 542106497 151004176 149882575 794248663 394725699 130979943 383033882 805517123 562716168 823576436 785571819 19522664 995557364 233476991 476790278 966291701 461487553 462899853 615352561 8949905 765896726 206178143 688055252 722024011 86934413 326800908 203456272 635158205 910170737 955442567 625446598 952362391 748386472 585089287 802336009 7355952 982533183 509594125 512019181 733096055 670533623 728830479 536742160 591519166 494032803 184220365 378663489 436810065 939180339 380976679 119216709 828983675 16873688 26086046 19352399 486044189 292889625 798395817 645202318 404210856 295944814 165946798 76567981 446153364 564688246 328093355 221195965 107256309 267875799 977907918 108637309 378789110 209643037 748591873 143165998 546997868 936690972 57425627 203949210 486572278 97156940 410854870 246751090 526617873 847533327 173594886 956431058 189040089 269635967 603203442 223705307 438746209 759725100 824795579 465636606 442727155 991359444 595291354 825568152 889541434 571241563 457135890 283855927 717530490 342185949 442887282 938998163 894940214 561173179 862511140 252427668 535403376 272691116 187855922 266721499 922419190 90785892 270615336 999130817 158882714 56697963 765440472 398381250 758712408 597995005 120506064 810632665 241105075 351630388 863534663 590502227 919198458 641509884 234768719 361558232 385834419 411359624 301043639 804000770 752319758 339422441 214844006 871196892 420673045 841803305 674873750 721750499 964392832 318398657 356799864 111211738 544639175 206842475 997796400 547312883 993124832 361220149 616173828 111298046 834548115 95550544 173892964 998544177 891561510 635751540 423421990 61610378 926999391 799986463 260016385 275151055 191954581 111573223 367622437 918680391 945723625 101191883 953009064 563454289 62226120 751616706 662180539 754330792 476230028 614302525 986362215 120143743 885715914 817972820 406758162 704759156 854540291 265876392 815774717 62910154 776152966 796891280 856815002 940799726 235248068 513364644 260264395 444738615 668640470 268920974 517001024 456861405 687255726 523304073 649647681 934539726 784236666 855183837 2756883 741701685 231947221 274128061 328229861 490187294 582834765 792435692 21125089 127564629 555832875 360002256 179060239 936021014 118540272 440134300 238825385 233893442 878248423 514396354 198514868 35955401 896530484 948966866 350269303 83128275 49529636 699475555 163332253 609211423 57558329 995636945 622584660 288547327 655553901 775125120 382947048 217599537 640965389 784182781 328837408 153536210 925741517 45977095 39850880 164740723 748808923 891524982 827645413 659329558 513516287 715740470 548783161 864814977 529533476 191128879 827541727 923028508 218626618 3530174 889528789 913751661 73995480 62010338 594042635 354664874 110222217 554756225 298756914 811246852 334656655 475124626 705962962 645020865 902962054 514553290 19363166 313446651 431397946 264346711 510230612 798780409 188907476 751967228 112185530 725188955 888327775 839785697 678859380 517418796 149010608 954095186 694383323 949643926 82193723 581921388 926128141 647509097 359767032 947231527 125328909 255707532 354023879 48230706 350611617 144177468 993663887 515020957 581543788 495337555 602022457 288065816 396420446 583588880 764976541 22736733 980766185 421620947 866673110 132460678 213906402 206803687 408615637 189418108 156642085 745018147 422259309 806620507 553306427 800431325 660003055 879339513 318108239 320449062 395210709 450693647 654585857 793740774 752173707 865764790 231691057 708170592 475335865 867984917 218635462 585010276 269094922 888256282 351347621 179031563 28675056 353624946 775635764 218993818 302043340 25599379 881530516 575155084 152479280 755634682 499361092 914022707 217602466 993989200 662110905 362461435 47238892 86548470 860868544 59051802 718658155 297583345 494132305 478225317 615175386 932904652 106664824 678188751 90208043 203746691 606927129 441344256 122438806 644791157 715856907 96536350 133910723 256920364 384313344 536259566 128184798 433017039 770364199 873632630 58920842 870143168 81748072 620589382 691597659 887847547 882106655 312931375 50056810 484488783 253791681 396845552 441206611 463081042 297734583 275157908 389198649 93923027 656631243 4506643 276659196 206463365 863186977 895776666 960797685 499629582 529977733 823367939 855650745 53728375 480842560 122561197 420300816 818156221 398051328 973705726 991346168 266290910 890500216 646036911 658146278 408471761 898275211 516190281 589850949 939585456 360373116 243862887 968627319 159716698 497154991 548586100 357074430 711230450 579006684 632838476 983609406 71659188 708454900 594836697 430006525 20559585 793080596 838528690 299099104 305933313 580999900 128469004 835085097 785873317 373940581 359585512 144050163 31249748 755599619 483615106 992182126 629738624 428590002 480878755 164052078 943894363 724141268 706127263 147810560 768799671 573793035 278229616 198923493 660683185 732846044 390046881 584281741 952999131 510407627 869145183 365081692 774023676 225887532 485625640 660564517 551717123 848044108 907619183 812316481 315115103 211970010 317580464 200809710 519355167 340086871 413186442 557379705 559996462 81640184 409689611 69036385 294760181 22891418 298340151 893006391 118103738 345341579 883088015 562344159 656133433 31178367 358170545 365120143 955397310 860305658 808441613 594482381 372287203 257555449 535273448 72231774 954100554 711540820 406051704 804521297 566985187 171177398 832265222 433431497 654506818 830874849 324030563 738910253 653846464 63134992 87638842 384547530 377586530 546852991 595195197 585765280 581509986 585964865 330648740 572786682 646504774 807558933 851585262 226879381 338188906 709145674 722146869 274664569 685402689 435881742 381944559 728393253 893577039 232171990 629700342 874290189 137161362 635083698 79357153 923978998 167873491 993394336 444116691 903315225 451119004 726824494 85374481 657585466 111214865 188036233 73200532 862804394 674976431 196488337 678775170 79402308 870942830 257783452 188415127 115900088 799357840 109619831 869283057 722981744 231084264 290589744 240497826 893191904 852664437 172128990 330452753 412140710 502448511 461068838 249172464 396718417 776576409 56057613 45804324 593708495 558789783 168281951 911757890 462590487 800653655 747956624 483931802 143391251 116900970 440660958 918632196 422081102 249103036 488599168 607228887 184822852 905823487 601904999 778927121 483326707 149752215 2134052 89638493 553593632 335151406 463375413 336561849 177153676 17802916 114012796 127316687 643294203 3160038 185863979 47918712 568694525 341176714 496680444 702733038 957747873 847644552 634074359 922622743 784469524 761782068 165826655 282961181 542008410 921104602 549768777 373796932 858702130 699068811 908435926 223139512 178794441 906343380 438048910 810782346 448145251 558712181 412609163 756557295 732026167 56460936 965358806 889849569 632936431 316189016 594383132 939783309 560530498 650186353 840723741 270729010 594100920 785747704 259070834 650502489 718158736 775447625 805486523 270008178 812403633 829525364 589449163 695523431 341728691 471291362 539622629 970163227 593393742 833351349 94085885 211367411 161761540 283794344 671039898 305964704 90155544 165102916 832036331 357327074 329110888 964012375 861830676 442294985 297238983 563229285 964515609 410639298 511637863 784928798 927219608 24002166 254676181 825183806 246817111 7060691 756951004 807761519 220605509 802859439 949375821 406945834 819599301 405769073 51608158 30782910 182834596 594085432 419998482 619764626 104144599 192731824 444805325 66350790 174100754 445376922 502347347 778097380 507988316 186015486 515010943 793997621 3997992 317539229 9525025 321928719 18399464 456878795 839662932 353941681 456128420 827650048 739756713 450355962 983938003 177519357 641697634 661362108 639592081 184744595 126334401 701242790 865116386 529335038 947331179 635528070 302212996 496773759 190230217 126418162 500767217 816608557 953541193 34661267 395673372 101787570 457695630 632411357 396880428 142418225 126826218 989188962 97805571 213347963 225487840 798954085 660525880 158715357 656306460 975541683 238943084 982594126 185994801 13824007 891294212 282375058 420421631 690528144 560393138 428394914 959386508 579566226 563555490 256642729 610472314 846575731 872151294 290224888 346074563 42263085 312765648 500064592 758731238 205411730 530333505 410101321 426567928 492461228 398527449 964184543 671398344 429762354 690920306 618214096 23499904 716850167 30363137 192213242 434806699 966171499 445439745 590577847 58522957 779335640 992302079 17361755 430339902 359256214 777727496 245867151 223858803 227004774 325454408 977215347 127511848 584385055 718029059 239173769 385270841 413609721 518722623 629126401 364525755 962128587 594073523 581591196 190292985 672414805 827638485 328377955 417848956 516886812 490411689 781869829 444254931 190984260 65524178 525952283 363240588 976739802 709575796 588750781 173886720 348406968 134137488 854581399 315619113 383379244 875082492 97264123 586543487 292243959 102003182 145256854 574176833 735782236 841907692 933896469 977780563 897639869 542740375 911312565 794501448 847366661 862208297 637805398 105453097 319254266 792585469 529903238 298012581 144517893 328856237 822152676 649682803 714793098 228198904 96661269 948261547 428705338 517401337 931148976 256565767 75593508 214587777 293070849 734207158 376963944 692481130 639458329 923417818 99719429 550224204 725293290 492966042 981991895 76476309 849369611 299322397 31049443 789806464 241331283 683974912 827642166 874101802 873776496 894938939 592303344 376994845 365858816 471512393 955108083 784415571 317640039 966610616 835074500 113501153 897642865 241234937 886159398 328202117 310391331 793270785 891698745 451687767 214891987 860914427 684440989 358997768 188468321 177016719 424189551 553889099 384419225 551586335 480129258 974489803 538833222 744929672 761302893 70506650 222589165 982760646 150373947 498409157 162308939 524267964 147973717 927012269 858760613 724916998 763648909 916819392 378508401 935268877 189564385 225758280 361417112 152915463 836154292 305171091 124427704 308106097 975099535 649366080 376379299 992814688 747441340 866575943 416522141 220079936 374643064 477104746 225480892 487005114 57663092 99979228 440376942 293044424 677613788 290414027 197002305 257219669 59376161 846787846 785657861 438747819 115200372 575280608 369937579 340384914 666569211 396382016 769493318 836277791 588941699 948879861 293265783 952806662 472990312 208140527 423392919 460189600 360335201 744995825 39436334 328738014 500144701 473934328 479132134 145100828 550040869 442206195 984605115 999120349 101160844 474075267 61662335 848862832 443175876 624623489 177133129 350310030 932356222 489157944 408882121 316500334 155110993 225424533 969844309 875338694 62984790 366488026 620393474 216945039 134500167 649808216 41235183 688445889 107794370 99280888 87405937 211700111 640343094 691657543 625713350 508074298 565114855 600676833 34605974 462344692 926224798 678741837 30139991 418703806 577786823 953710052 774055748 55759612 465508368 839321337 877184217 369358147 888602190 372015956 96924453 733247417 574803309 95868820 999531916 982935851 753680090 40769101 981793806 265205724 818944661 24749463 400837009 388261215 440802069 563745126 447467954 808592952 504703511 753299455 947633725 239961696 859505032 317015253 577477248 976122984 899477355 230444562 435517353 415653532 403536795 808336658 103822172 961260982 825186456 477053952 960328262 795694682 970000100 260150410 396092886 973878119 963869041 615866503 464032235 907909328 145558068 348666530 836337862 744252970 869014281 574909651 163623158 114503153 644798105 243614831 908876159 257511919 62804565 882794627 974394568 583530014 670479865 492826520 270962726 647092393 70466209 593959112 93235866 572210556 618198080 191430057 595643629 656456026 722448401 317093881 194609526 202872996 628475484 714062937 743106735 317571219 889986758 124827299 881883085 37983374 447489208 983616287 334642396 642093602 979559471 644283906 548287365 70201626 916942415 230389612 509580458 154947324 979525252 789328272 897189041 390876162 939036802 578604017 902595564 917559160 816083567 55258189 607004068 84823902 418481467 139042613 766819999 750569415 238336264 999767844 369120365 659581580 692788237 819657467 344369106 103957352 557431904 988248132 231488691 384545978 849778998 791030758 899336131 517439271 699356235 332331603 21526283 94567130 355182594 917848002 645206678 129242313 432823744 704716356 801349620 248972477 49968154 658293423 536370960 474095042 424268740 601662356 988790935 288918715 740155377 335988044 241626337 81273800 410811779 755807925 946632115 697021434 486488645 3746509 990007254 511937540 77539340 607421446 703759630 874050163 431555365 788821620 152198526 46669548 685200144 361121782 120611 974748539 461160961 9381688 23805130 497461909 745256113 382607382 100208196 555041912 584786954 111226836 366200199 609370773 705551110 178215630 511928942 847988423 604394556 776809508 570353748 725485190 501428929 846786146 694624610 628295470 782601909 125635611 769924890 96717173 827700472 166880609 454988619 732620291 429919452 208697325 599682378 920635929 380754935 775267218 19368612 412499104 557130640 722183995 473302239 868591583 693142978 888042948 953317725 86769147 715814032 897735575 25253092 124030532 24437813 833602072 289296899 7555701 28546685 117471053 786770904 517884823 488231050 33382212 182260515 533469869 191169071 280726275 657304171 159065587 913741370 579772040 58518354 452077152 879202561 536562044 922777640 366422695 193314419 406632748 683151206 747208228 453133589 599172958 752846588 674847535 470007642 600266831 641857364 727066430 382760794 802797816 529747624 562013432 667419665 284392255 207308943 414037081 552101479 960016472 666486431 226470849 406029190 249465124 16397464 786660831 39167152 377717732 798414002 822075161 263973389 410186496 676737083 165701324 499076677 260771728 944297636 406796168 800738578 467034363 554229572 564213400 333301377 472253364 562239878 415572876 977609811 466818346 129747677 534799841 62119557 803428745 311316040 331547603 199706571 704482063 455458651 667304213 665807740 821521107 787572372 436487919 572006820 655754617 614028083 20651543 594903723 767089696 751223574 925024762 338868215 339510961 525224281 916376848 418631283 172068131 92021528 401328292 951572223 388829212 340944297 833616563 763572296 219127103 672285008 451788171 1319845 291861127 113262997 303546317 859774213 461737417 614637934 692186294 312680041 275739216 766183696 564746469 289901161 707288750 15435748 966027840 941217733 394169797 850511172 18721999 200162025 840510806 363351992 317889705 944509780 362910162 392060112 154231072 686828723 695603559 178096792 380170727 764676956 833598060 912656316 279480961 300060394 930930917 192270534 589317094 311006258 676846672 951784086 943798234 376414481 788001457 731559554 964053173 818485703 526177931 185809923 205063319 307625385 306956992 813593491 56000398 602365510 244925175 532525093 39986423 413304457 952783342 181884075 794903225 376385567 550207090 666371512 745446269 249692136 376814810 163577778 775390867 885953286 860765960 764462168 965694943 100017430 325077564 438123822 84928098 207941136 72875100 791545846 148770810 594526225 608133257 889500210 549207323 136507838 429243536 722043572 283925058 129383125 349454695 355960472 675514381 536189932 258177633 546414734 593475912 165423250 551689105 764674652 223426855 729563130 991181223 445374486 387677914 937518216 323293889 100494382 22336091 664309661 71611229 779740309 691813517 148921964 956842271 456897322 637309485 214150249 317966250 987337991 185333091 272514520 670015857 64063449 405738220 5993675 71874108 194141202 493844773 182080065 389450170 477174651 402463439 605673730 356188747 414990094 725031002 767951256 97546650 363518497 612519136 578168080 700801808 53242072 764114414 34166347 747763064 764336771 359212266 160853945 657492331 546068042 239631675 839404436 794202190 231825272 722757477 642798140 146414147 371161897 348502285 367378602 576948494 677554991 953938942 653438453 122097405 540582887 989128561 870392293 585515101 294140114 26219523 230146192 385940049 906434848 232304677 976854875 476471221 868331437 671726676 374648633 228480447 109035151 924412195 257935565 488407923 637737801 770138965 910283103 245775183 626492277 342554093 792310947 618338639 150040586 245245982 742703292 941745764 426077097 242395479 218158262 827115144 637775329 231368213 980514696 534000203 660238136 23680632 858815264 607817428 271647760 853034933 328971453 795264239 165325859 847888952 916762668 799149779 446836565 334003855 595036600 210150387 640369373 228386507 577599395 450208180 708688383 894278569 272403356 31122285 554297459 842663855 69455293 770749445 374648094 631234565 438441727 230188020 742245338 858387075 791460616 911855256 295909688 124487641 907308425 362960641 254761051 92757904 871553282 515634797 766179030 808377065 190680539 821362210 60730961 437676791 877489052 929198220 681103317 633443098 527155767 925754041 858634976 508281533 935398592 526201144 94398598 359308179 260116752 292210727 145117987 430803471 332371236 356758319 565825538 444221516 103123970 95529245 851238068 466457124 129722714 650389421 411556767 539252286 165400687 84520273 448560116 10246751 633961667 301516858 861354099 337933961 363388777 924952468 708734755 290070150 216248807 938607741 544870642 829167193 572980888 322868246 757235172 962503503 469387685 836353477 753286378 258216252 632519539 99132434 901147415 369578273 284779395 97008760 901619512 450966394 704042445 822934309 268564795 641205291 689600855 368438968 598596617 223677758 386781112 919886068 487600056 19475232 677196019 752288861 735804269 522723904 362508635 707309790 165687589 291340660 139989007 287784363 579692693 368855407 906230872 787264912 294748468 544955957 805080199 764463896 76580891 228185580 408756357 650332046 922939477 34161964 789126284 145316365 783964232 505065345 938268496 502919185 926436391 374648521 172717996 524620539 144597065 538355565 893463176 942230891 84511604 884117288 724547367 803640411 622700995 129837513 988821488 224547927 521723256 94643382 278791438 539821036 763392796 607327488 108742530 222859509 144175868 459063229 681158805 689063446 195962841 342493602 923013604 482941820 426221287 409491551 838974053 206281539 938780503 305613066 547251544 291249926 271287039 387505114 138418103 242616865 279142330 615709168 781877948 829342545 76216478 662834093 427900570 78699621 655213005 312060039 599818947 826524460 216366315 360529596 75389056 743541828 657306246 992764954 529716675 237263263 650504879 523974816 504926029 8280996 308275556 392672770 43552383 532971757 760294925 995429526 457695189 693933345 842088331 13696557 107255706 144933889 812611405 533752334 598565434 807342244 128144145 192683947 228875861 229417909 18124591 620470591 823974099 362297709 824803190 516168103 527936086 246614909 297228589 428237524 666985635 698233070 453879653 118717666 941551948 655202903 912609243 805545013 267057930 847863262 862720875 987997020 82533524 418093797 499952551 2402974 235701061 103382177 911633157 68987520 363117400 312787967 964181160 164268337 855973700 461737890 370673754 338261275 249804063 756032609 968924745 916353019 369279834 68416128 968584423 273256073 689238935 912563540 385955552 770436853 302249275 486169960 75386872 249276894 749846743 862995939 958074446 333865007 137149688 166056024 791558173 323886593 825331004 241390329 586276812 169408460 88917192 959451332 275398005 52877316 398664760 446477040 510260201 343917974 547334259 531696220 944670551 679276908 531335756 597769842 107057759 84006071 251002411 543591675 831060329 24768841 115018731 812992148 136490862 905586677 863348143 584063100 453156051 483166426 285651557 77853378 44118036 827589641 323415279 820203689 26560233 831106129 260061122 90240079 169146708 637718664 616297151 87057867 118309988 887548042 595334012 854808992 344486957 404171870 523388249 647566367 143922162 655306053 267732428 407778651 661938561 907354451 298204305 765119585 318296833 959956191 224802693 217167629 58271375 162643556 228879785 790427736 983323473 323193127 874462376 468209899 192694101 715670873 387780725 314559615 441130328 433028258 858075486 274432130 249675826 909490294 108800277 701614764 68242801 581133587 108200519 806455882 740350987 792789008 257889458 307225458 123231135 834355730 222257823 596018467 498922755 732212980 351026567 935854086 301550758 95149197 202132551 989109719 429946504 265444427 612403192 365073231 678865027 745844346 183749673 776579188 248953080 78194247 699200611 679434667 155155091 502654561 563321780 25558971 179605390 600727795 465638581 893913108 340728469 852824890 699010290 862051291 618431586 458925899 836084102 320359273 83896389 497805942 436543585 378810291 183788608 128833225 301744412 685176572 446082882 296920931 534412788 38307802 663941401 95865914 648470841 365680671 91112760 405078182 510892453 623753805 607738202 529179198 514792350 429606326 553337067 843197231 158985868 658153310 887009839 518144244 728936578 577107016 61748586 419669483 748196407 488908447 165299416 769225665 641248460 276269905 903497689 35479064 529252862 315375906 216050788 457726452 391841996 565289822 171355254 288622269 8792691 516667539 614074671 718744150 461496149 936994007 850683652 146359388 203999031 550467384 182830400 319368012 640424810 237993900 435024261 222156301 912350501 148337236 478915296 606652109 100842383 5720835 430942280 844399830 343777578 470335664 555638784 199386051 138843413 946605469 226914351 273213235 322161880 535436893 835656334 839006649 437164588 559475347 789645985 600296317 569135636 962367760 176620530 42727929 547340531 915893869 570119013 922505239 219792607 101729539 630813869 725866269 512341309 400058887 690659233 630164277 248098358 118510186 684423955 251916196 302252285 84106460 471891408 190859969 15800355 30764018 161656477 312862455 427700737 739844955 687767747 694938543 452017585 504153377 385674133 314466350 416755914 963366639 976163099 783339568 363696363 29607381 306219216 598759915 819710107 100777462 403344319 725703961 992982724 610880154 199961256 762280810 327290429 323797752 247782153 471223729 551300378 193530753 730527635 787873533 192288883 84044345 227454820 672075265 767117629 635410410 466946989 36035862 442562308 435213485 790354669 860691917 44127086 496549287 135027835 410723454 823944480 878800279 21587513 491445157 727735975 385095509 985074642 457921551 818418377 229490555 511450630 258295090 128358536 911867037 713706403 233789858 463002636 633197519 361842791 215532060 247611472 823780837 842159298 152980918 444195158 152150401 533371522 724134053 709245514 784674824 459668863 58075023 645829060 659706042 879085755 303666402 596152335 344792794 896692327 430705319 233806451 726531649 524800886 886733818 258616892 154890067 432682015 153892676 741294746 976402053 908849709 315557790 927462130 474862022 210252638 255014268 946994374 443964177 162166849 331273641 323468271 184268227 246953602 29694809 843450607 406174983 408556444 940554216 972340320 187425516 414304174 986499229 376518145 270593074 622803589 374671993 652077507 126567232 64482919 318911420 715078047 64841649 253632072 24428707 865844097 105675694 400767397 9301397 462066371 218996701 900952710 411917069 879144023 445581329 600099397 378384733 440800861 643423275 847123728 476096711 464840597 278835641 967522600 882761926 124043451 40404750 687974623 548997344 998515042 452099330 898643073 8201715 825138779 281577932 629464030 222904452 171743981 831450615 73980923 103982823 318093848 212855962 228827389 29874104 678526077 535374801 890427043 864930091 542348545 940944769 312020191 710780572 360915060 140565007 329013880 664753214 340756417 540336945 86196446 147750931 402638822 815759696 151332797 931533620 532430521 447405437 688886075 624534358 105285943 737054401 647339010 867384474 295291303 973903458 180127228 545332020 644114639 474582507 44996032 500816882 285984149 954856691 715950338 862721775 517512883 880649754 254441507 433239087 59143580 843903598 937261574 250470806 64089213 490687927 938867695 445316661 733590112 265478735 737954438 166374883 150594554 841329595 809114290 742674717 677226090 430030953 29954110 670624357 720788560 229998587 309989462 393160797 799394869 489944499 376354256 843138547 153959156 595343730 869275748 623972750 335004920 500511951 240275574 186527121 417336142 773970771 684303316 285922531 810796722 594488568 780881161 1840957 998533347 991186617 450205146 347151419 316273523 76411924 830469864 913097447 142349620 17028644 67637073 583679776 379407114 782816063 621873204 188637691 534882893 686907510 868098621 793487966 286194906 244932686 944486608 340609689 943260129 615926783 365532457 312203632 935662213 361268935 830411186 819393564 366753371 99954721 866549784 23302719 133515413 352936866 610917407 708203262 252367636 181138428 855903942 664368631 914734889 68287482 341871315 759251733 24915366 186586904 935398358 268975474 365711493 724195421 11577781 507950291 390808880 619260396 13072233 294846809 830772580 313381651 713054144 252334525 636970298 91801561 813684569 365216354 304333624 319292734 920897818 999261886 147562324 656946835 212904656 959712651 44097463 501990959 835236670 977268855 407995136 258493294 745419834 452853778 623302858 8356263 45058588 134372678 909459080 532734710 172688906 847795439 718614936 866645843 283164979 75008821 770823183 46458391 498687619 951095081 581831187 62701264 368992491 493368625 225824117 358805395 489345240 756295449 913206807 189999550 640790142 961988065 186156668 342112796 115378067 265754319 146997023 648566613 152080053 500808705 111919763 184126697 286669209 540307260 607883426 274446869 457344395 858175171 782645447 887903837 446385605 42537782 167110993 633428982 16099975 898502119 840352866 430513371 760127735 221923106 814936861 913981735 475442149 394015711 147144092 153068075 750151725 703417076 84755424 355474732 363574788 853151448 908045235 505814005 837642303 983557103 221354304 388727516 812921753 378762309 471504962 340648490 815584588 303939743 934006211 396412172 865072732 439932644 617262093 459185062 138405820 825256023 342269994 179917220 544013425 119745663 15543726 425678422 198440779 818582807 260298084 979974417 600529233 15873194 915873658 634072009 643860303 997801197 934475871 176258282 671564545 91664452 112342499 793562380 102621598 618260773 735584714 261633176 427646536 35689750 800450585 43919591 467908582 172009311 317189448 25917497 107305425 295624598 244341001 571789565 103439582 178527866 712414103 592079724 147032544 799686926 863821118 832972930 943782583 176645570 791190794 72646757 631671694 315283137 193867352 847011164 333697782 78386226 644589722 821106438 231908992 832165122 154826429 344700137 60579977 163627735 522689719 760143580 781053933 568623813 766489597 654382293 992742987 807968577 126534021 760532245 970601973 529639563 901776287 698069853 298859151 546639949 895769220 473796021 371271696 204890525 609693429 405118482 991562999 858920006 371243517 836373474 355546874 709519469 714571132 638572015 85626808 754997109 97675822 140635357 264107075 927631035 436613449 542928628 160043980 810546723 246487266 94760560 359653018 636512920 32167491 366374741 887465439 167268468 550834193 492858390 344297012 911969628 253265441 29264323 492893623 392319612 314891593 512255459 816992447 337351743 801713190 652613314 745428293 74052785 78526006 924857960 592840497 372188647 52722952 591111602 459479511 362250410 714440853 711802517 552078644 258064338 806539578 111400146 462090104 518940557 464203489 878652243 487962914 827426296 663075507 638036338 561739871 800138719 270978199 136702092 311443102 51425523 230139562 931066020 211393476 361057043 359941404 689505123 37253501 341523023 144971396 962507692 762143470 581272833 266923026 994494726 220732509 301558340 88864618 450704234 381431035 791950043 616505406 839917149 87274120 998428424 651527560 784487651 378736843 664302071 854751412 401582628 686743179 894452220 383274534 780952454 482562300 573600 571316424 433209462 577147499 738851323 998936626 107206868 422070775 596778343 178959727 365213685 466601486 146250857 369397579 464858273 836892538 954184636 434175776 998937179 694101044 439372480 883216336 271441870 2826606 64245567 468336709 585516494 900443809 898522981 238132051 210007253 956412497 836010542 918560192 726723491 461158594 821198635 884781791 215988393 331404388 150454956 343330511 502079817 304936419 144113885 781043680 798016188 333815129 102115695 467041103 546822199 814144008 351084326 677513137 998367442 804812601 722202151 830009942 974335521 758498625 802971696 928799730 312846930 593321331 880839134 277130479 346602406 541062256 77130420 264540235 495376046 291338012 166996338 448118531 581205056 943922140 550989859 119123046 781115014 266691225 771335337 620133382 208017160 118349229 832373165 946825629 146763806 175551452 221352050 642609391 213938869 882774657 696813973 35472475 464233286 397801852 614974521 476976403 374709031 136357207 434669157 536618728 492710894 986812713 164910881 68019510 944131687 483196145 373656250 593450493 443503289 789763200 404825271 95559970 584721442 378773508 378848303 492148460 649437239 759790391 732353754 828609568 505952386 707543050 609107989 320135292 296384248 236721577 654809002 780001402 464039982 461991792 445316958 798141564 984365007 537555306 34311413 561181272 39191345 748760972 690029249 534024015 223378018 997663959 120013771 756524949 636180794 998509998 877587613 581213334 763145981 337947378 893165992 899964863 663429875 839002366 831946826 223788820 419445209 695840569 588447772 353432219 477637551 571864584 260941464 972726039 991582950 346230896 756326674 789294693 424365814 685946240 882529694 516928118 274876011 11235868 419171953 88141596 515757316 173552069 900513964 316410018 296906696 714650692 428427285 192745741 183727304 514450910 735362777 495850661 943575911 662480676 743139465 161562138 220003464 330227118 132496591 134765906 698048336 789190446 911026701 829836444 930026851 541565230 730474084 617995378 18994017 715728108 497449450 100552431 390697832 831307152 977879945 25902864 516729089 597458302 349285751 514194413 910640149 701940246 702473554 378907924 259181657 846212765 753336409 185243155 890107752 585422957 751534115 891140170 86702697 924041543 571957406 15632898 349599864 711124653 165825040 619894573 712769188 992338845 502447821 208080385 968621475 340210622 638889732 893811095 486655362 360462687 658230130 20828301 585203868 877460755 629101557 558267088 124629235 954847655 737172271 733162780 318659656 31227507 535411644 458783804 335674827 210393294 265639887 766942933 185200271 549571059 411419295 701619908 48519085 561245720 122906682 178442855 980004824 94607674 182301145 903899545 811151684 948179948 738298539 900236228 765917635 423848524 679130027 327768000 770547187 868644625 773435980 152153201 793929805 804190808 940048650 517028359 665016312 365570199 420957701 368295666 483042003 592893462 1397533 528726169 27662292 51000710 658106546 445722089 602596030 953350669 870760079 771966798 4657212 288392150 426508577 367665028 420204680 173304478 781756994 212178210 596520376 532854476 400375289 468778475 665268596 53750636 300639136 220407897 819598109 636867967 883306156 781037962 32186549 302193206 733766312 749589337 942099555 528915545 363466490 530287080 863440985 854676737 194972417 757932658 461587717 358252061 3871760 325430621 406333248 241162569 427591311 634581893 104979431 685036209 125665658 822042360 830846214 648766136 944139651 864393479 692511709 37989222 598191014 51435207 569754052 48101574 148806647 464216345 425081966 686625383 416722532 75989357 657376233 394577251 621746357 453816188 23608637 397063521 693902581 59707208 478393232 17078250 119435255 412114942 703523557 586228038 641444526 400614481 831798307 96429750 130737702 578377803 533353542 163240598 825551375 87922717 687951661 558587688 115826475 457309496 798288055 656466060 447314202 218388012 313134311 709419185 155012788 228178263 425110195 112279422 382158732 359572342 859816790 575932822 84533805 888885481 671467219 27612698 11159766 421590532 168066803 807883844 29815640 935142477 364017389 432095001 298840683 105675055 635596447 384383645 773394270 106624269 459720855 206760138 213998542 533590565 223542183 309221081 610494408 913680873 714151501 729052260 125230359 890808128 847817959 535433630 693558452 337002345 257500215 427328695 561605409 995757190 643051556 35608593 418955640 978396210 364840586 259036117 952138390 968318810 91353469 869449770 284161050 651855189 244503281 439563193 186205192 955066663 716694865 15447814 747510750 357860851 957305526 67039352 995373942 972074631 217209932 489285978 149229533 175189312 150033996 790290194 132217793 385779889 162711599 189931008 628393517 410590152 339337275 417847402 305000387 975635320 967286336 16332298 493718366 414381548 518009932 877543089 99797339 459346967 268554821 625752383 448398005 503436029 261347494 364975254 847242797 632245429 852770611 198331973 82591907 761323196 213998615 450598256 891508648 537560547 305606927 575780393 159940292 788954334 770234252 938182826 178607731 678291796 219039025 719352867 415158626 359353366 854117601 625632212 506679354 697891669 269443930 6896150 454947763 744553555 289380117 475587781 49751742 935346578 488093736 857281361 110244880 678796204 426218364 844151116 902365553 814254131 958983586 29747910 567696669 143650778 735052719 284762575 302677697 370802958 611524099 465429850 424808677 223115740 454536363 166154320 198863555 556702069 952990062 770347123 44883513 145691485 285219064 763685974 661107549 887579392 278583994 917285466 903357457 384974260 444470286 438701156 210860825 315480764 822536824 187884882 883478436 399135691 932324703 427952440 820025384 496294076 554983647 251901532 634347877 590096821 685073016 741783138 953432795 355996041 9799323 709896748 89512887 946216114 946694461 441426571 292530846 247953148 721994022 586306675 942796973 343436745 579161385 777812155 297932783 331985141 664481450 84264601 719135584 653217601 21862943 428862226 579492006 411052375 423817479 184926707 192158951 79268069 765135394 403565973 752369722 92825267 417808560 285852883 150968948 657395088 823279729 872833063 227937277 734505417 130884208 162092880 321747985 907890192 140616795 124576128 682300627 31537769 682050053 936115489 234271212 821232195 560298864 517725314 384941536 768085670 563804109 133922079 417427850 940412193 539584557 257484068 450195584 523370237 824399873 632926906 915302840 980542556 769780461 473231296 510509869 980826044 463668799 389787458 959319390 512088359 313645956 441986595 907054628 967532079 831896664 835693588 168008847 712760049 379149442 596290762 733582479 779926508 723434147 998233701 442609569 201835548 773947713 69953976 303907652 264641910 292638799 106464363 344829905 357404568 390367677 840866515 205319902 190810516 39138778 825988868 659751665 994706085 314541287 854605272 250052256 831463412 913416637 590360976 439450955 394994531 415306000 72289094 113222537 440419961 360571103 524332721 80098683 921773630 250027808 12129982 81642507 281388277 764576241 452463963 235530237 102779274 143571188 813130215 237713003 407049223 949863261 75926954 945693657 199120828 430010729 630541968 904770404 787842323 71290930 229874588 509692944 823941847 415062963 442402 47974045 302259292 924533198 644647846 163882041 100064956 116071349 943275303 733694394 339245172 8099072 272926162 115348140 433548914 758726369 846920279 801319814 766816020 808238521 632299198 740488818 776681078 770056667 685136043 819648279 145979527 866441778 913361475 891442871 290909549 81744630 600567431 419479003 340715075 98121417 685024533 785533752 736996633 220435898 581928719 843102957 59891493 277895789 500257265 767119527 998191864 437530523 135969461 871280152 655935425 877479589 752951931 321184837 124890934 16978334 410307397 806651336 477242538 402702182 910048802 574261134 346480775 215419490 899115185 572923716 461414760 799477914 766050520 980950871 594670954 358840074 565228950 59914717 101855501 775493644 846362319 981992437 142648991 7728483 297762223 264121207 389264579 779722686 84916789 101168602 553520921 591393725 466460075 291021560 659752130 887931211 180261983 993140132 103563466 70103169 978200826 425013359 573238266 253443495 269007436 612692806 403545150 946275079 444583620 754232805 174146179 722111355 954047473 16872299 869612679 740334834 106273525 404789013 794822410 476574304 331391011 624525351 345509605 653747430 293425756 717867236 857262385 358781593 107196792 891886419 527522171 471431473 661593366 880882383 961585467 596741376 123287693 202809431 487736850 739899948 318552026 597351661 362431096 347299563 678319512 59565666 9138751 278978619 988442343 271181831 218322190 604066476 863362161 426910823 186166025 120859587 206532798 469863612 774121430 899401752 848317837 120012719 900517151 327382332 127360686 91201770 463483942 870264035 168128467 693757867 980320231 550280538 442991786 972116555 850563458 823899944 522639234 71270678 22674659 117541651 369745211 912381740 467905012 953324489 716868431 188006514 137974755 475554860 508252001 616813241 335194149 369934357 6487773 878805916 601725961 991461919 159447084 791363761 153305199 449603246 635145463 587822044 114522745 879300495 453782776 798638837 101984745 223503910 946202331 442049169 698399964 994617451 985544830 980836028 827998789 468158745 762779474 762973380 448704133 76508673 880799532 131062636 104557895 41101390 293911877 620265659 112586267 192564480 813209651 44177829 787150420 589862391 522480606 876622629 654427979 619535492 457278175 43070479 345203400 381410755 461157533 463706860 802531634 192360240 817260423 609340308 113918725 162093379 724817213 709829140 505129086 947113152 279411559 949253808 713762203 402739833 522231313 118752346 809464926 841791596 205944657 94655944 38816720 145172422 380544994 224129429 67836668 702954164 242116468 158082799 869919953 150751235 168944509 844152275 13588416 119332406 352080265 415732918 700582821 943215930 201057054 113636286 484185782 832582372 81681087 658144717 212711418 582984262 420251825 619496843 904274855 629811409 893059037 199215017 759467483 33660941 641593609 808933742 530513626 577446392 923130447 973374701 705201723 328976866 159366425 881792258 379955979 176190420 772552402 77999269 653607580 122319444 449441295 150334649 757015654 359755180 161959800 268482733 640149644 845059691 225261228 703981567 927808178 304951574 370198954 62136426 489252635 120987509 649916652 209813565 519754811 241384467 248486238 327905977 657979266 491843583 83216582 723574993 903393973 655138951 887535499 662760215 247061159 979478139 673432864 302496795 922528659 987097568 459207258 244289303 367083209 9028150 233202915 579109481 920115203 377653608 361854762 731793280 7327081 386136911 656032952 197190820 565981898 643294134 669615555 72324068 649668586 830726155 418473718 572047883 401606504 412486336 515561017 17442834 150001808 371730625 342623741 627772738 807440613 132585452 84581812 506551736 12841741 89400303 311301490 641269887 720573047 73901844 201310169 551931620 354139423 243877570 865811877 856648016 295446827 615587629 794675568 279536531 149449457 89782083 478110904 54945950 109113910 556314807 699474607 621270538 303740364 943659287 575282104 273651409 695832827 403093620 930548803 655887361 518755353 527988657 975530305 675850327 105781685 728633671 801660286 680813988 608113354 381500115 262423773 678797650 23647655 963808239 487437203 469767846 143158223 530064074 371262169 175383069 50713342 604152336 210931574 923722530 950342340 868998320 984478904 53248068 235101576 643129105 910704053 597480168 287658054 933165870 862061071 940215241 111604751 460497189 303840515 705878669 112323256 481430551 96502744 429782554 787411451 818939781 883626516 339498760 782237833 628027259 805550731 726260530 565103222 790421984 57404637 684202717 497555517 995372747 628431633 197154727 2969654 934367139 295658853 192203871 347292979 837500984 542655957 170329105 587942459 598961641 658912859 268241173 419046592 187885321 465021673 461138606 31703176 109820242 822131874 57798724 253132717 788668440 541629481 33848125 685615657 402574269 771441705 79674283 322393593 653625813 202985759 749334194 277301438 717295674 957359749 431344779 319500452 157669155 729177418 749155400 597397509 298940892 826506919 559654880 965640996 998026337 137953777 148207057 522255024 998063281 149346413 409369276 888022386 801484586 907879923 909405462 173796816 957613146 929462377 556149348 626503571 204588275 270891397 637079939 629501788 758318820 724168971 600220897 473518213 840949703 453043742 719757421 812979127 437078293 788766925 606296859 923941742 254127794 421647015 962732289 697758080 279812163 91945901 857820886 726907372 706815279 136580860 291501510 893310940 460225630 705659818 482409536 689618559 843583913 407793136 928496066 428463185 545984499 350452466 495554595 986101862 62959682 41773739 400792927 926310479 337225757 887226764 248338340 457100366 590315182 136818427 512848032 34580504 511225387 280944270 396952602 524260908 260707826 616708220 194393065 890304620 18563123 871898036 729409217 661244305 412695628 249653879 201225050 38695993 833136224 759948041 948829081 490365967 449338695 526392186 631559227 482000213 841107178 825122356 828331998 335111820 17138916 33680892 278166399 475054398 781083222 724098400 703039621 200364130 631748795 220730519 690720998 152319840 412480936 452886757 948410235 977760812 779256512 442757158 603897490 884478267 690844861 699058710 84426768 168245365 618290677 931986401 556116123 538841280 643612156 995191850 90803630 625917891 916418499 426673313 424595860 555354039 461284576 493894114 424018981 184769606 993810256 457803390 525503454 922816815 816783488 36896196 507380996 531998726 638816624 582970149 203963258 362132269 380070840 937872149 542617066 851494805 966708757 36986375 713889782 249262613 920546322 281228152 66595775 660575254 184824357 486431251 702479897 86883384 52305192 461206016 498172479 907345372 485818109 67608337 278421906 309099384 277900898 869450226 208662680 725134568 516017989 255541926 30395765 650527671 318387423 498466111 819023261 198801631 113451714 370655263 204588890 385171558 436463856 753314179 270829770 148796800 467848552 739797616 933389123 283491482 209641649 208001850 747260010 664730673 986357177 213169834 188755995 561195566 387779823 466879514 188533249 87211758 580042710 776340483 534806275 309298795 788479782 530544270 66731460 240665283 875446200 528697890 562255139 392885165 833725631 768737797 338793823 129275624 200070626 852392546 759594875 505796917 937203197 277212359 745836155 333597916 260204791 211753008 946574499 409180960 798636965 530794823 523621699 283112364 466794555 340842092 356515588 392321845 899640869 182312423 57942510 883857758 487561819 771165045 467075407 925885504 182719806 787983091 984620154 896725787 172585842 214402487 890209180 820980706 569678453 981644362 104199176 397388250 355633966 74672116 414052643 539424921 387430101 698131553 996515769 704857548 864510656 703575412 605782946 218807169 866820976 57647595 200580780 319987037 870150166 387003838 762662097 751191105 825247191 488858441 866771897 409932100 790269830 676202387 386179454 585138772 419387666 866962706 682580778 510304526 26005847 291279746 84092697 910732267 106968083 310379551 727470893 925588588 78556603 498070301 620304065 486335154 201034920 554339216 393523341 256574173 734442335 212160231 636070685 913066644 866929430 448533633 447065719 705522754 429445388 906954460 291947516 228417813 409709461 637115670 985310940 839020665 507845867 489371862 525120395 683786320 339222834 495786329 876051195 902887957 906153962 658983520 286789563 47152403 476436044 70449479 49879099 243819454 835743131 212605695 238191613 701910826 635860470 11508317 269016538 679672027 339883109 553657098 130090161 12762540 201735037 419145526 372013386 867682766 14612473 769913302 330702592 480604369 40782807 184515114 946196297 517592349 328222190 946931475 59867887 557486600 817038362 642615129 483005240 658834752 667864658 696077385 5539573 445859919 84073435 469072451 356250593 654817844 91343461 769158866 590697369 384218505 147632059 678337110 573703933 312674673 395742968 484799210 1449096 202567983 366055831 925798923 99074179 430736815 180050548 755719628 655366620 547248199 448615980 990242778 808222429 404251640 909021623 757695387 165568135 140360475 470102039 955003707 321581005 108534248 736558630 88862119 580182283 994736467 353251965 430563457 201621690 197122328 565734368 570703482 345480729 230832941 854221115 932874778 847560580 696731025 642560035 749176404 674200124 563512375 401253955 797198613 521096754 800993807 627360869 212643130 564959228 876960280 258513553 586489988 395683150 195311937 659797935 116392504 140701877 782074240 719269695 293423090 975124420 152841257 827651378 277205704 466955464 14394672 830252178 309070111 358186043 317373504 658960182 77913983 675113572 50706369 706862489 982680042 51397738 100317858 417909216 972950459 414555100 877920649 509818632 920886512 773217645 680175681 817582628 318065704 328701805 973171739 617248084 315172129 415240119 151345562 614325339 490645468 534934399 278035628 693289407 609265907 753090049 737706313 757286687 236098121 521030016 16966632 939083404 69551443 302868868 826928317 607454390 314856518 17349208 535090036 889044569 79164013 420355166 726855488 558130556 635411362 438297352 42380538 580361622 657724920 100127602 707728406 967011401 183887057 634863963 804342586 653257522 794858701 918584465 304652760 940790751 538666435 956058031 240912030 70503493 341974138 951671890 185342218 87943075 347214519 400592987 455379470 243243707 378289295 728050516 791883946 940326234 880385576 217374670 228895638 624060649 232032957 399908072 633649531 505025597 673362786 833362714 56383167 207838294 740014424 829161308 14665219 293176670 839132270 819483183 338483885 540152096 231818463 517657341 966722791 312131658 799524407 718085814 786782116 869461789 593955331 673126057 506538390 746579356 298726872 377477641 508042390 596700043 142129853 687999538 53477220 155895203 788091373 543639907 965413646 574769894 266130028 920912237 949023122 302374115 321090016 45337826 761480135 872108167 503014178 621269326 586152330 654275165 558564065 500499961 965914716 303203762 513236548 956492163 129750925 377363209 594399551 361956580 160796386 890129745 73048221 461847731 449329535 730016889 848028906 156908560 606228366 177862011 720698325 205341311 115867902 339183290 82072545 285118939 469943358 550724893 383165755 227393990 581635707 48819143 246741091 214627950 760701030 156800931 123398833 775084876 528448518 223431113 128130704 65942876 522659483 752206118 481547625 797492491 542259794 557242055 766978186 664169238 460088374 186396969 511256458 391144170 621651693 937415160 689715404 681626763 302655770 805315690 990784228 52994695 262195761 74588435 242385010 586962235 206214174 224832866 91503446 562263698 395676483 655977543 44831228 937949017 787657824 938088934 574557331 62968750 494182863 796024132 476514257 141794868 171622542 444223074 714088919 588628347 745390541 89514343 814980008 419160760 761569321 107708612 417617307 397344637 868193117 561018193 41066618 151736490 179695327 633151460 644522327 241887742 878692689 255079767 694465886 625198623 768923752 130668946 485230871 572247578 954753054 78278617 530881942 215078130 93035331 253137937 856806876 290003233 505854942 510221256 984489550 26923312 930621343 248699767 252254915 436291981 474335221 696995775 708365976 856092668 779463722 566104732 254783483 813003888 409161279 811608735 672622888 8933564 228972125 336495288 672890374 299323181 865163367 588931037 924949468 967717708 260435967 987282890 485363148 855773432 116401056 329888421 286376566 490780187 424406781 864420973 181640362 364667702 945927083 755239237 17647154 980621330 853056686 34310583 808499233 267603753 870181739 849317328 669073524 418862977 8544218 296969633 689300624 378491677 716311925 885835236 144331911 397924164 160616168 909086020 33767085 754376677 939961314 351960306 433997251 370702492 592567211 323144667 400646918 453456055 981877963 680649837 946081224 53041470 767313063 25953000 828234068 92631981 819260319 642826869 237160987 372873798 901279355 712206261 484741316 382327890 59469151 998528801 88133797 941151509 703214025 953641105 607836241 393073060 639649873 692314038 309715344 98676596 642984929 532129153 954117644 399272796 780108577 896901298 942194284 352010014 765290041 950195642 176625446 670652099 64177805 517955320 620971416 731561783 311922984 222222427 201764629 24296052 438436359 679941250 896960346 58582452 381189962 83864011 17907766 842382522 677305798 691657382 280625319 544123667 423010325 606391757 419234802 981471291 821677091 679623447 417279747 876369336 556660264 51913935 387976600 175390289 613597729 969654263 433717349 600273836 832226671 190983222 849740325 903066778 46264153 471511241 846732061 414889705 319349988 183702084 421010454 168358940 444562331 643217656 755969062 879114960 383712203 670389936 874744642 455878716 57160829 843009547 978707310 940535633 158731010 28751170 432238441 791207007 744603482 47423968 661390090 301442491 241756706 457386002 941902246 846122183 879086742 752470147 149771121 206379176 412641790 340101438 625973698 206246586 323300105 157764039 624550945 801165010 534247866 675748672 248600360 541069638 82247100 550858227 31124251 472192293 521998092 858487588 404583564 185263514 727478344 544684276 573021275 82079421 604268470 975506197 463069263 681247172 966164757 167382778 719922013 756521710 717369716 999267168 158413730 296414041 894068018 723906077 438602744 422704922 512814996 448997426 634672402 682757184 508097677 752639948 287963149 372053268 684138262 920065142 633344630 969646145 799919924 328233224 635648773 987057797 521112697 881352041 944905070 40016925 683842835 702271870 957591147 368049871 635921422 979067477 689641287 693813214 31835731 586587335 151568302 476322811 298049519 785607410 896142169 819659923 425370892 353103572 524678708 793979451 385157653 535552993 242513817 393036353 60424706 383150611 352385624 626866568 341984639 162959035 877067104 786271690 48222026 423825458 320306210 227356403 560613516 944551414 664063488 566729586 199516405 872899334 687791893 981314845 316294247 717315789 910129222 717592755 306617910 46920023 978059798 469224408 701306935 614871357 739296276 386267596 5984563 406557829 596859225 740602833 104968672 449872159 385834671 142861702 194383314 857520603 686591411 222378899 749486573 450039 843936025 425906835 52250783 537703254 989498169 375452712 302412811 182950516 26902393 919036353 207012819 480655781 560875087 808531273 70094963 59812455 652457236 703463917 861421246 777981479 307560692 772360872 690936574 187739240 762480880 661826342 387023734 855649383 879391698 756734980 372892426 786941988 265604710 97287229 796476546 701007596 465473923 918886048 262835471 227417961 939471147 912102270 994225330 217982778 83877413 166161787 545954518 476123374 861915204 81460113 721801355 840416693 536627131 727351998 355844889 751346167 227182172 613463690 308337817 993868964 578109256 486992858 309815523 390708335 470895074 72638146 205693564 665754621 930786194 272497277 692409536 261317217 955310660 511409989 68372665 314537690 922825356 999894429 465275564 390814068 422615891 467941325 619904387 895507179 478124697 319380465 604951161 993967600 661180504 754166519 526366132 422483345 276314038 560942695 767084129 678912148 948441751 502476577 120878595 705656605 578452619 327577056 589730194 384909153 27772444 699353930 390401717 431556199 359209661 286360003 979080918 813336288 616972538 474348655 608766542 794817918 190415778 674291146 220473855 744123881 163877809 321423535 50075023 357427820 715264220 814453004 357809097 666148185 384738833 419066649 357392172 484233346 709608169 549224930 481594836 169362147 549058904 739984640 47585489 869416271 300506775 627113905 494464616 751353673 260890585 926619965 233250144 881510959 223849582 738443717 966660645 265179324 596581332 394926066 943959123 151506979 918117429 762105008 148341694 583973785 268885069 23806788 848465858 761458923 927889202 548674488 132713311 559535484 564588454 318787002 564602674 257637859 136458096 849355157 408498646 877469519 380535877 129764806 486817429 442367670 651415020 644514284 272845243 41889673 885121782 240640631 365185399 330181831 423558717 848184082 173059580 680001139 757678820 58718803 76647107 27532824 304679255 470179696 822807557 117519521 34687340 930299711 822812675 415915743 192013316 196014892 391520915 750685365 79557815 433579794 727879039 503230756 117504909 364208108 260585027 962076239 352627973 916976953 490113168 768181512 809742444 105903384 294694911 230533303 529527689 539818222 120522585 141045063 255698527 507792258 346005083 917515196 733505058 508316201 983451204 362400497 730737986 685466239 742618025 389001862 436439957 311538636 637728964 652458724 802223678 53546668 844453076 401165501 285649642 937497744 614224759 25229999 574015561 661537138 593924454 265530923 145122010 796165313 266411250 529302210 237932335 504320369 872635104 956158100 334086893 490591407 614841931 532303286 736656173 965595775 562214422 244555821 411586757 82671153 281815298 709985431 749767666 610459563 359287064 617211589 383485474 737872715 493470937 704847102 997683429 337310916 374342582 61113479 594199122 330196161 505785590 958205279 30875043 412901797 683073651 832057968 689692306 245280597 764431394 66245914 463817193 767843387 664027120 680782113 781802742 243381798 959718183 817878639 512720260 173922891 389052193 508567395 386538154 58663765 976109449 75167193 22369204 387321233 477094784 131472456 294554433 714733113 1713211 978245199 603004037 122669785 987330954 816948777 294531962 751095005 912380990 846002848 138780882 803342979 159557715 756392159 708102881 344854365 364932493 571115719 619217493 261347103 772995920 641616709 466553538 283022778 633664880 268772177 505618846 945372505 683499003 360978195 539144167 903190126 450629796 917999200 803493277 242660333 5182065 622730576 136601804 838933122 620676701 274785903 54997681 479685034 302677035 138792759 886332791 630701484 970014078 865464782 660533992 648165579 825547244 849898949 649963857 243977915 422412741 985701607 899906429 313147822 144799522 847778280 459788035 132503108 299238863 829196056 108665936 897154947 972781570 505510451 262170815 161320829 874453055 59684678 511314996 934599885 466632386 352293811 852650990 912819747 288685726 515669637 519058521 622431260 990732369 731707089 728125115 674289080 201872811 45406355 161288282 441065182 28097374 280879869 768770602 976402174 182669060 817636596 572414551 590018242 960863597 55835768 369926729 474906735 865780501 478263333 966304870 361197774 97224469 377463157 731100361 313031308 456086921 744215660 295342494 912398071 507570799 666233492 490885162 499376472 888423132 314040729 646030486 520752132 480202436 150659065 360404698 276581194 541452776 956009975 905872763 703118096 214693655 841735423 58947670 741021171 158505336 511526056 479138004 867364643 659816367 73491132 553656401 199994959 508715051 593922834 992827458 333806189 905485871 396415133 224699490 883539198 153463572 633091015 576004006 320405912 270478269 3845264 654553776 132525830 735208079 208492889 971173151 96417646 745543039 433596046 653349408 427928615 798527168 173745966 392603304 669907272 4444164 506611696 322163160 949063505 87825184 326583933 20640054 977235402 959003931 836662511 34035874 820921122 836386036 978161445 115836075 254354943 860295046 968193438 745535103 220761063 98901324 731848117 488291052 772036324 812111734 46054386 457968383 314375165 124796701 558844838 310841766 298853300 423953778 201742759 788166073 942292986 613491603 924322446 527881350 720315884 825183772 684186084 629961114 969263180 55869484 522724888 818319549 13958087 88943507 188269198 972560886 364915868 939526742 55304029 236285246 823546723 837329888 643576889 646191962 587389289 970144322 986854740 553263533 350522328 319887708 768791822 331603928 969707991 797362488 951061104 456855350 77041372 617329548 843200 562603654 560029515 329469187 983225369 777540868 749861931 795746826 786953194 298697446 107573876 753162839 38208853 138763086 201490796 823743537 826569706 941563114 897345651 755140488 779399165 847509172 305937899 810676954 945896826 751890630 373986191 273546884 411970713 420856666 19586882 71066082 398663784 598261788 364388881 788722133 190696692 697794972 613126938 106600621 208937518 526185005 750995854 152619015 397384776 287214634 823759928 169387269 130898901 642570526 799009762 948400560 936362806 698829615 280190209 735889111 240398815 148853905 39049214 539638544 415972094 211921919 198882140 400657359 311372681 421518878 140816415 158700986 207760763 652779685 929266172 853259898 263883978 239846995 741906077 206929214 927078655 930552770 493468440 839803081 842956764 677840379 896599483 453656050 952822956 166592976 907910263 462245044 452504151 292491831 948269789 778161284 910582916 405809792 980032734 46210486 261954112 850212692 528546468 523238689 299506246 86167245 155956385 744374020 503951343 246144771 134123971 977564402 9038340 860275535 641536598 809260522 832682769 894190833 622316679 347907755 984317345 71131828 245834003 587026600 97063695 844900000 474537942 864232699 54342698 898543486 891858162 672148702 698854482 104754854 407371038 580424294 655586543 244066133 209056836 311486043 836173036 804407554 562641570 120664062 86276 125723953 995217402 45394557 18897615 561943370 360168824 363798917 587191365 990527335 502154255 416523257 517623865 724906945 732461387 353114073 898845349 625155911 419397895 148416442 846791906 394827656 432517770 768531045 146489308 88446694 429527703 883980023 510084043 613241437 872422750 612674975 504772663 734709115 798859718 70307451 64782229 323105045 415785430 164984648 656258686 777538327 669834670 494258848 945325786 442181866 558602422 47945200 892059530 433115304 628398102 148900951 824588046 403664038 845661861 916735025 524439536 26595270 457560263 684645740 460456438 566222246 584417857 66606859 586444701 406089433 902430832 33950247 819992246 817095412 223817899 256788925 602590754 102006139 676812178 454610254 124420616 170013826 192224655 259959217 696079531 817975824 605389177 235573035 260600924 245701991 621281261 332970508 946606694 611186678 782543766 330230750 473215391 998989698 338218117 856046348 150322117 373370686 699545175 809058082 52304165 682163838 666741238 621720785 217519670 726070548 216090041 5396893 44439446 891941253 624106765 43633099 562724399 158931852 479537912 55068771 836078321 473254187 746108968 919820330 96584227 105981450 517637978 475191292 539299539 806359727 942076440 616783277 629240355 929727654 329957074 842410466 49977661 80688580 338179488 381872406 683480958 747697836 226029525 142703054 410701428 334509112 553817190 228019189 245687334 353560892 438976851 211777618 190215406 593417531 226607584 605539273 223271521 665135815 694433501 665764935 820238842 77381582 671404304 724112946 747041919 93224526 307135545 362232016 116349402 165569017 570954801 758680924 924539137 287384542 12766867 45713601 767549747 165740909 988331039 495874840 809353421 828477226 434007790 59767120 63018805 767953947 556831973 4269872 166983470 57009347 77145246 711965979 665022404 356950477 573875436 801369345 649670344 42375122 414241210 945253649 599089705 556706601 745433164 573314384 895467775 612036254 931548790 879379842 683541611 262242562 306268898 245901420 5783771 834033083 18244846 951949771 939601904 370072419 617170101 945875745 978194215 610040700 426615866 925657158 387014661 529038565 429051984 790874409 114477946 943417419 789760370 967852725 547647557 452385614 215526195 435725915 543607577 20296944 53825514 710242509 68662991 77146001 793034355 331366172 772465441 34730522 198559169 968598313 111635174 831545708 850032955 97381466 397764550 231896594 353036162 112267561 447459336 604390494 363139168 78196281 704965607 571548557 570441307 775486553 472478322 300641649 543762889 262359792 667905802 397093627 235879914 883485316 204120415 26563852 72792796 62967587 419014493 175326776 367744448 20028676 575217283 89416120 462804222 43196847 592627453 107463705 514642352 320591987 824086916 990769758 831148452 705024015 713431880 162191076 704439349 495343138 962420397 198250087 640018950 509084986 474518176 462078038 684384712 983350965 873481896 978770749 623323930 896928216 377644562 23046288 706795892 26083323 95050166 279551546 923145982 593710446 686657673 45535128 902440395 291798766 270994470 687971133 208914410 743553589 357522946 442777455 772314876 32696460 201850335 187849795 849681107 234124622 50813940 313275007 557124846 877393924 437916432 196511127 684489873 851426723 65713408 976075769 82428532 832698994 376286967 299873753 572711672 747716643 516057756 317413018 362292952 110525566 60378016 613499520 156848308 632408955 885192459 166672782 432672114 516116437 285803043 961212278 993715763 603365324 157640343 869664672 236060619 521024827 175118524 383573030 590216593 250430582 819814517 870822604 225012799 382384646 542912346 877637882 344638899 472259301 655310310 958919350 244685513 488428189 397820557 550902609 534023673 790586429 579327784 133299630 525275618 30945556 424260677 830065077 294561220 550203016 659626683 306750483 163661007 322804359 416664920 331629369 359039285 544087327 204269762 627447084 315889939 350935885 891685496 722960013 441035248 274123307 725711853 795051231 146845515 357841593 871262387 947223726 670475473 454726142 793743377 957242053 118480922 873927429 753937674 788283158 507024282 719935695 842488409 273107939 135114788 619898112 614379441 873432824 180887881 575561069 776081515 626471630 41495507 546982906 658729791 11815028 311083833 999808105 739250340 41192537 440750041 58052846 859888834 941092042 718890865 943709295 848118743 822764319 751400205 78480227 469059874 807626926 909026043 822943736 815796306 724166222 254637858 389528002 992439242 416246285 724556082 795126823 619381278 660968776 663577556 311319660 513735203 937110345 822115770 352400345 587977090 465077418 264078797 233336105 10286406 758533428 16176932 596998697 744701653 708441802 427790900 975916066 740931455 788519168 364444968 202158421 780160786 755948760 37282874 770531119 231137248 167075701 909655766 305323722 435125474 951420505 781812470 331445848 201386747 722968196 75316432 149424407 299039576 976775251 757086465 850468044 66059712 789623907 88222852 449484213 90529797 163578387 903096524 173396322 811181604 310087433 975220767 272049905 805750315 541175732 47277153 937124596 37352079 959933332 787338707 286618703 466008589 908157610 800840169 941622532 572724171 90363374 585890813 2246164 346464157 805140796 923074963 907618548 443750788 311375423 825747577 11502683 208948164 563727691 952975084 68550344 162066307 425008843 138424342 130546668 664302478 761914520 978383189 38222938 724018034 907494238 335375828 600629185 679365800 782249895 213742906 959551059 349290339 863345701 924627926 105246383 351371757 840561207 902416330 354872017 836378561 802936076 255449976 52763753 185489597 261557183 565536344 707877747 362515369 873667754 969431052 638317849 724038422 383105370 259388609 826313898 700386519 509829160 565996260 454960003 193567880 781407056 540706812 94153839 514495100 932829581 839326335 667624568 803798409 772577813 596750046 184816198 552304095 233209405 559741949 527020297 461959563 495166433 566706507 375946903 743081395 299374119 481399724 815763706 795816260 793914881 737890939 492821621 849470936 563916295 522243269 836665296 583706000 493990980 958577531 456912570 743831609 366549713 709869386 798034154 100317062 492932207 531008478 106156057 453115341 355640037 415460233 302051296 326967852 181936805 222763085 276089822 306300136 541602011 471071173 702172352 889424302 545531857 600519181 707466671 798644232 442764115 494582555 735579890 678845599 524227239 919902387 886850614 761557346 33175241 845567793 522533257 122964753 92945546 798880337 379401834 630536270 775983128 559392407 815434142 840021261 441557167 886011462 661228126 417804796 150804514 935745502 175980676 858943875 407232921 104485283 555932265 88232395 344734935 6590012 43096158 246647915 892952869 205362772 24619504 485663717 560702335 736882169 861753694 520020644 572028917 404653503 958936287 286488643 71498632 359729873 655941723 900151968 928793254 165855867 719256079 338255750 609880528 586620843 874394010 354925605 477015309 47274542 360477379 27162683 731772706 73061979 164507560 341763014 416909649 580863383 483577460 586464749 932570004 819377409 757048479 291794859 747320522 950766176 390962727 795130813 104708044 167238967 527351994 719876463 87924094 568217864 653488330 548750327 416197930 927270711 126940672 340649695 28177000 241600016 881443115 185771349 525215741 978875159 950825773 700602649 256385094 440910435 354248278 430291056 181582753 798360053 678950515 600441341 256857763 416749078 530092700 51747292 653762150 830296487 256693124 847955062 33500903 811628787 757448604 464616079 327837181 769356394 173970625 127162691 539490696 705922518 739349600 65053972 514060005 577399855 80542925 56914185 299539763 904349287 20596527 254613391 392214723 663485481 540704855 8607327 656935461 349542055 410998334 517430062 610793958 803540491 985625901 181428204 258822133 793273360 970308111 63816014 415434456 895139806 799094330 803580801 692764933 513006122 608227540 362079177 210731576 156641075 73321162 494608405 200409696 869530110 164844036 582218637 330236794 294962068 360453423 283768385 500726106 572010912 182423121 572185001 856488266 97622935 438404074 971270098 183505672 893506911 525420826 203534439 677111109 52050587 936752450 295844449 614108431 312835702 223980372 249065611 281465746 950898301 333508644 19662831 251968921 272115534 269493948 44236713 741118168 816968596 211830119 406490576 700822194 775565575 279112935 282869201 122638024 671782585 369291170 956697001 643603926 628579394 455456412 17918525 11800941 219766362 944059756 953093692 888766056 722843357 808018268 899687491 253204041 38746481 380273566 315160576 818099772 141221430 100820041 819783185 424450843 898683025 514098589 973961691 783079196 883169629 275280598 582798606 289906840 425433398 254440271 830243251 167965523 706746793 248552810 247588895 227368195 993979353 484954930 619684045 883473648 572387752 914375176 673063784 949414064 942833168 58130416 823172935 291761076 855861911 127105075 764974354 850332230 496355827 806129924 640618688 26535719 190839003 11832595 529899856 694974514 715485199 81801016 389519383 802200193 908279684 458397895 69952964 598035356 617113001 827130935 351430562 467300435 442178496 574291565 916057839 249980330 930957996 227543822 897121582 516073808 452642011 619506912 365980242 817414286 341025665 144155160 935324966 653844272 423986691 490771279 155249068 54854716 451559276 435147601 204231743 294990767 847166532 107411629 64284214 577778290 370576591 579300105 730386944 34828230 749635082 7920349 176695929 101241076 355893109 624278869 802093910 239688876 588754079 529600985 710768264 32091213 811749094 199701774 257553304 132367350 874918482 846332672 907012728 329567672 183624409 755305274 29515886 979202212 461055470 717730271 879130568 780186395 296071831 176450789 816725113 568253976 962211417 995551241 301203100 794162893 472379349 589566222 538074781 949322541 618928513 138643814 353187863 797981431 102438292 904937281 994202454 963953199 989724079 171635690 61243067 628470287 603590078 976904983 300990295 531667972 391005197 487646650 929643881 353173589 921343988 22121625 903837724 180569256 79618461 930542790 59183114 488700529 12971007 39091715 161983924 932668446 440057661 257022880 253368535 161213655 304606966 673679971 720397772 216682290 4682432 416375684 491248032 379716911 493007818 763697327 272339935 950822469 240888732 831521011 310746803 976268294 527878628 774352078 797520599 725941372 90070467 796858248 266909407 602066237 553896229 749686410 701169783 795923082 333849020 715459768 381519470 3959730 593755574 641832952 603348722 104678415 480414043 561153442 485672629 416337100 45712518 425210372 949619535 289746478 781514652 105469159 183687422 378434109 444222248 108622796 691396665 528792757 133785432 223434645 318183976 141084355 913867089 787725503 517866726 800969682 978227243 909000313 226767265 710597665 747421952 322508730 179726594 446147674 251339643 439466244 516311377 60019329 472789695 714108065 728100025 19122779 477474503 830377327 253427092 757146567 341397823 628810266 889045417 487640492 740710162 898008274 886543269 160562767 483699806 351794793 322707717 468417784 145323373 883271372 331479947 829340739 193963025 522911873 49231369 615537588 547088615 8561198 309880056 393553435 77066314 522682501 542138455 459826489 341133257 807556972 651871242 656703599 52602613 19385762 425297884 770136967 190693392 893493335 251623430 595925382 670888966 614428286 121905930 335928361 884674511 772909072 884507729 303169456 950571523 170869631 418061906 644235943 696846605 375538319 482979836 335490872 786996964 297383492 928856100 532815715 335888806 611617396 598982700 203992898 405694061 349849570 94018398 499466968 956725183 922679081 744756811 603987998 733025208 646383067 909854835 179088339 696209282 668538454 264057786 70030508 7830853 681675438 290290759 297676421 594968546 971398002 868875525 654821022 757974213 955749009 540222317 550478259 283790748 996334784 368227977 977222477 35987594 816038719 594173584 748734459 500093856 355847758 920654488 510550949 419810131 752646548 674654351 998069188 236855073 490993762 641847371 145995235 279461427 606320909 764135358 69761823 843570002 160015034 912583580 169619597 529657922 15698815 942465661 551647273 506573415 513561497 698270685 779009875 75173768 417913470 55419219 103777422 970704841 897761487 736396153 51125411 784033977 150955597 961251223 517648632 174022852 314910946 870444648 983784051 506360599 449877327 80548946 614814340 649609421 953910313 76140356 470745842 919005409 164373914 117573683 57427425 401858680 845069198 521902451 649140986 245127575 128513042 694498989 946388799 8867525 315611792 253894990 179468189 159965296 155830661 223202848 655659558 455716229 722429290 653945398 921078018 714565218 218029166 347274401 778464597 227221607 113199597 60596912 344670926 545520246 488204961 861808019 691574297 67273547 828677486 357884215 447730437 854096948 835024375 935764100 725066435 418982061 977719206 780512116 422893834 42374856 470873341 329862853 5745818 785501862 143192004 563596805 811076491 410916406 498448534 899528129 892247425 949632732 148696219 300601989 304665341 357277017 207476109 585968446 62548402 796973262 579942015 391006672 840117191 237182162 486258611 467900398 823667982 98913692 810000224 20938380 359090160 445014970 322368949 231252565 69731522 174975157 92938663 844653386 727992325 152071748 279706827 999904471 32116473 72362934 923616922 682580250 77404081 701507535 688101045 629980057 630181716 81591825 126378267 517134634 153681945 198463741 8878177 570476663 147738574 5535103 827706336 162699958 405419950 194911822 739124147 839106931 994376527 102697308 824121390 831727837 688427723 31646642 971472081 479100232 843144937 771794557 116565384 445149764 719696738 134135498 824995176 126049854 541151384 102586266 577731018 19326371 119831250 735717317 153316415 363823352 207123685 782006614 656505361 790041510 141320874 65589037 749267379 527195804 523513515 345779403 771984256 439707478 47072542 678754765 228662884 358106169 408282375 735892200 750498062 388838064 637191403 95756924 532604757 923085544 659744577 741947580 630423481 892771356 629668254 293309420 920128386 914628072 359022815 225546928 608802124 772522697 23063364 976784139 969243955 132555807 708485490 940897464 104333244 460764701 217510113 193037509 206915147 253585562 252405189 674878147 335884731 502318983 771679027 328874442 541166636 805610031 160748752 128182961 879815203 472980793 452738843 45524449 461533310 975391190 762569978 532533871 185717298 720239838 653942428 893414004 641513389 443997204 974261769 46484151 224808963 956294026 242174924 717407819 784760705 55618 599787391 453998162 197394679 219256023 62051508 968379882 495228736 784152077 942690988 79085793 878967040 624763372 17126351 698761916 766153814 603981019 902938145 420866 447513912 785425134 554544619 797633718 635817884 976276353 530315610 65327671 476136225 714235907 401784579 605109842 65315158 622421800 354457283 135804159 970319745 241256492 331356615 228094631 520443332 570801758 788407855 876217369 872410126 605612317 43926607 423696203 385078368 130759861 463747716 841762777 614354540 668241144 407691219 688665468 623516825 318680010 14387202 192156849 405835299 648679931 849601783 779092593 854340768 491058771 272538659 679187853 854994345 741450552 132579342 734169640 957403483 456750096 251866944 597241536 485275753 965582046 484846794 791624814 560530722 866669534 133950032 531316965 472004004 39920064 276095572 488009716 658438467 239514040 858325105 720593752 682476974 319273522 938249961 35477940 626691553 641615635 542640059 43994275 532816435 602048913 523766766 648665369 396118520 327366017 422031860 852806712 508283290 407524539 344871936 127883072 483083840 769918368 379692239 418774067 818294847 143869763 109469927 894598758 109521879 996416075 573287654 823893615 545592699 759326323 966561002 119050869 141565338 285301729 450393363 934557473 511673395 22907292 346062994 369409048 80454910 966605123 728052898 413929626 302220065 13821835 430775317 244214604 131915710 569725560 902964449 766691413 415566949 91595606 751697195 474603836 107004274 743105071 300324702 857813578 138016348 813955447 251929775 466287520 427540833 121205311 577221684 522385857 672379568 249799115 630913990 883716133 448107839 664611083 675787798 235919921 438879607 602733304 575396027 45551088 636849355 623051215 14885803 370276327 393255953 408411803 425297427 513872330 439172780 285254660 846126175 551528779 145218940 520749192 222318936 109730179 36647476 401105474 298491136 94637932 297517664 272677087 802517796 330380754 579269921 770941747 606764316 365282035 227296991 197690514 425016948 77729413 358668556 469990691 349888284 734917470 174039456 795095759 662810486 772071564 71604987 783744751 784659567 589832569 871695409 739697550 223840930 771280955 618701918 816966908 111791541 760434483 43598597 892904411 795932656 123024419 681156332 570422027 229379827 30916692 448730171 585248788 356683528 212129315 833738666 971219060 260702136 521007036 703131816 382827982 584091372 774077986 826864483 467325236 453127307 745417828 954831198 606983509 590783411 493213581 757320453 489062557 33217592 517874931 137432065 354715061 304901478 168127014 515811904 395495271 907901356 228692512 813979224 365170065 667718238 506189473 270874055 562737406 195897375 575298170 426837404 393329911 25462316 755694199 581567033 560697384 332820608 477777889 62961254 739887583 281976928 409942676 553537809 32976533 955642319 497340676 933549150 925810557 943893690 312074440 44860158 776549021 355695082 708235493 276682148 98662033 167398552 900699255 968018467 307885004 107402141 143007474 130503078 111384501 193718867 101957898 90462985 551024015 367481769 134996152 924811249 27209802 353570212 41626687 187869508 333735876 613564988 598520712 589788553 109373225 348387225 317265546 520084410 136483360 209053624 202028909 556377770 134922281 196405767 611759543 596966319 17007559 607263274 553071268 900872240 810760181 827995377 849284427 277044491 641994697 887612029 654683227 523429570 257912851 544024640 386636506 46912584 655784920 290335688 198898194 389421549 444205258 572698272 308931843 282568163 846191663 194853656 728530256 905303128 21839796 811703062 773370731 545863140 786083432 972688797 617484179 867718685 849905715 631144368 631301558 430060949 963606417 916362281 467162708 590475827 784936390 429858173 658952248 415760438 150094582 811515133 608963257 139790197 212288776 762981568 483859045 595388438 244493791 104427862 863544973 608744798 105421088 760528778 124213301 376285557 858160751 757183018 893716464 720419674 789840445 908339888 691760564 405875292 404722464 79390024 326957348 604931806 613324949 470745280 83945059 315710977 66148027 821947804 297160556 442355092 555517579 924254206 473867463 581306070 385047988 955892558 720299376 758732344 433525754 894396478 254780583 717036982 873508002 454235184 968595146 238272343 792028182 734497110 64945185 920698377 254981997 397655681 346265125 374973974 370337155 928288829 246095857 90320095 956195484 301215431 874441772 503631989 770874698 487858129 636745234 686318186 845141691 952132003 97714930 505969771 977622143 397691141 325511663 922221051 839094309 399000258 332118689 219575210 135227722 581509982 832706663 916479842 356213799 401561840 386840550 941607327 203246152 407004912 877149453 255099629 392742437 135197316 530281193 662091055 80608558 439020376 867875414 231817015 531195510 865408274 444085643 345407396 325539732 672847508 387246680 81719208 789434047 871462903 536097410 605670471 407196064 452956108 296849861 340874736 345275768 19243028 518632826 244416598 336375397 601798834 232965477 808424509 783112881 833517073 161563480 56383979 361222865 142895519 646171438 753516792 442851773 841274389 496979783 443724589 131564710 37515589 84388147 653122644 496755591 552117704 668442393 237046497 669690011 193717176 723355977 334883996 87335808 714329759 541302153 946693806 481600354 731994757 522664427 74573308 821431499 925949447 550679792 984198499 882278208 339405726 457168712 368581252 578352329 957456352 910947398 979348135 971090060 790101446 940661491 930777294 167338809 658648797 971092596 151694017 719389180 139918607 305999519 405063425 175257879 982816065 894755313 152260919 10434190 672660784 368213816 197885181 346417590 805105849 504534887 150855175 857630075 73929711 60849110 793616932 274937846 790285836 57531371 475666816 640456824 533171470 795251286 310363529 230028249 798044808 461742945 585983125 893979990 164667386 193537831 960681061 328375227 321861705 66241480 502287767 522409527 755394250 435858442 616925932 722572454 290383606 880047098 876124809 715106134 807611113 443644593 117528135 738862468 797920557 280656100 632951854 362482309 295053396 407287699 662554419 653652 572918831 645766298 73868310 279270064 283172166 704800865 929327153 880850998 512706078 144112519 78720808 17708854 912978726 192129218 252152860 747894177 891985555 996303833 789805839 344691322 824397928 422294439 968553893 298675750 968764607 97078114 220155821 900961105 623979680 436756664 792728703 355330955 758236110 664796131 995945932 332801621 355259280 615010674 115505552 928219441 942310918 576525572 473270828 343971162 765532406 162432097 946791634 652704105 581350245 880409090 814008508 162825075 690732835 707193334 542261567 19151184 716283547 60739510 979979924 405367155 664140007 665071569 665451504 868176158 891242129 913878519 592145094 58619265 597135491 908783588 422114163 192489471 499870563 302788990 207544081 484204602 698167859 165966215 713062458 699513779 214772906 366204589 141420512 233350121 839909710 769726593 995538467 746962401 548916885 257905030 981076395 505794790 368719469 967586555 781955415 441747665 607369529 214414037 523171571 769652528 470848642 306453574 982555555 797364404 717680329 837193710 452526402 141924649 961045116 450310190 499333740 547472814 397152159 816336398 577559896 950389943 590285331 162921750 845279137 154961889 385976594 962138366 463363058 183471182 749158185 661153027 441822949 204150734 19585873 575593888 753679432 643686824 737843945 337512626 88208799 925588243 441375386 84863109 418691388 621075543 884994411 694229336 96944694 119259938 429777781 691240602 807181654 309917900 946600161 846928207 653305708 196690704 102782106 640444339 821784593 976719643 996896216 991124306 825270288 974165026 737543777 383304058 138655515 21067794 836573577 979057317 425057121 888818061 306375036 76223412 698969550 535925735 684596290 936583712 670377406 246627413 591705470 55783377 687647319 5634859 951463876 668095659 647844575 626093987 494662379 676378354 175252947 358114100 29739870 544683565 62405245 205872326 574698005 771437731 847829670 516507406 874565590 571706261 901105181 10949540 110256165 995503585 402606404 638071220 856743368 22972386 294228034 722928463 617924298 141027050 571693088 54502762 40649154 895343239 167203035 842402886 194062275 812913824 344326789 824056213 467869424 119271574 361230032 528587236 412164193 354828203 403790233 198092250 194161375 756745919 5459080 529170051 34074393 20634208 563352794 362193199 141710918 803598370 419621995 57934111 26983104 249071886 846165034 839497684 575359524 55173301 372912408 478273228 813545236 381721526 839179968 369942277 615691294 58976494 846110810 250960675 2970450 849672237 931536058 364464883 547990727 853112216 676969216 867492043 590710221 980696468 328534802 634718056 756975786 789720497 902776177 551883386 785649620 916119496 626207867 927281789 513437904 589229975 82087750 350085734 761166621 648120111 451488894 984780215 253446996 543733335 220227056 807620074 745506481 436695106 826696790 117242420 143861336 266551013 839091090 100061062 935572840 602761266 726372156 971012244 959707786 192210098 582282917 854835627 55775322 543542047 417470953 723887501 554088858 783668859 242966352 508023762 469523574 283390681 845649311 613432945 870887681 678074515 588312189 471381726 660124625 660073405 247197521 790549775 834217462 816795836 348690246 480841580 209702806 749757304 855162139 761858505 81800847 622065180 504645699 369375033 639638618 234651608 47478057 836455405 763315491 778377569 873857785 728774050 206180823 630144502 231076453 629944104 560280743 561062789 964225305 42125858 823966429 294902088 649613111 972190120 943859166 858606437 967825435 126522255 581046513 964126130 219768605 96090270 56023501 254540423 269962520 962536323 794957147 371034360 313882795 681839975 262482946 519004488 912347602 87312290 360064913 641194816 31076803 815521125 320579062 382337072 699520253 907866937 43614224 586434253 269312422 182690763 689881674 372354408 695551229 770563407 337128913 71175110 533630372 975293385 37547479 107307109 112270196 857105850 499095638 779411531 784217227 251652704 855012649 728781004 556528327 677468019 874209135 543013010 143444770 497731363 773623562 564305474 701649192 634361216 244215327 21565404 4004334 60209828 167577856 313010590 768794694 324291999 76900009 423113256 534635495 685422401 84375151 93973218 597231002 53353609 789488816 466244129 550194690 652540805 54239545 327176959 979495038 390463431 91557675 866006160 162692497 916977103 472180642 908280716 19625461 519008847 309285912 917728972 905540360 873367879 353539951 863518923 49333838 496491085 665695023 895158394 681831810 869923404 732693776 881321386 87501231 674770648 515837818 502487306 762229830 957494210 90331172 261894458 984558617 40047249 243704524 842387781 763184560 714932054 626017299 949686685 39931779 800088563 110276410 745751414 147888956 800000181 949415840 911987608 501657898 349116362 100053160 210175227 667355958 356764545 705084035 678610570 436976021 455564581 123171568 604292456 83770785 763752323 287884611 718782576 692402813 992710408 387155762 325610201 439347729 844087967 326556153 272576696 506891780 110378747 527346275 227184835 944166670 28512815 560390116 319103836 637404829 840557259 277109461 137561897 720626294 765326372 113522068 478642969 88606775 264210293 960156109 747802256 806863581 805218060 174657525 462734011 800941781 681501647 641112608 608807443 879918464 467650019 253067252 421889677 299991183 263872312 746449296 753409875 576708247 620873485 653670898 584313065 583862790 413228314 258168763 253959831 991751296 726384886 728785613 431480856 975325883 952994392 576658862 453098687 751805468 2545040 229820328 504323597 322007391 760012562 930496214 265260832 662156231 614980340 377844379 176838995 946691456 248064409 602510172 976754713 299690907 949752112 680904830 311554680 388134315 944109752 860548359 230259043 237151523 208919298 893509456 266722393 367055133 138429663 386105553 369070523 736598319 862931494 873876635 593540670 494957144 129705860 452559108 338291231 993573563 828875718 573992567 630501823 982879599 575031253 562002195 123744481 891785851 385640540 825716906 32767136 429028716 60537724 270283447 305057846 790226098 181767141 102193846 864775339 489843929 873845120 300666438 812197364 251505005 244305739 7964365 938490200 315444430 63393636 550661636 577913028 788924399 952207603 227805381 895736322 242753910 107922837 834051702 310321928 265225405 202233508 979444509 708084392 244715962 538181727 97547052 631571438 239234488 951306202 682114471 624819037 245292854 500657358 829051284 692950448 584692006 368407553 663732233 528289701 416266944 309624682 987037262 336165587 248102276 228931357 619815928 677344617 547141512 476159452 603953156 511433154 220956671 536414895 60848447 668213568 787864901 513490671 877511750 864216488 551303284 399136592 90077585 601731877 524831514 446898479 474074498 937961714 999576129 139842487 903494415 216770386 971935064 971627749 136252031 491705342 806265835 436551367 903172281 545630079 819784044 187596642 473693442 322321951 949480775 837796035 31164270 121710465 913023005 819247277 593554446 158216935 963955758 247007835 786337934 420530890 346474266 658137845 980014654 683296937 503924284 523733614 630305138 330417219 738064879 907830907 76665552 484573670 172011619 910683381 871001282 535450970 182110395 292437822 705478137 155625836 928348721 254912266 157025018 894354967 695954895 473112601 727457740 840712089 846680271 409137142 497659061 646026127 943374755 728599954 911204579 489625307 8240070 76539220 831798976 512514455 650075452 26877812 244387444 61546141 903845829 837966317 899702517 536705763 310310710 95609206 821905587 264390794 859661573 390286485 678576417 968098769 57852035 830159405 525046711 486993764 382038504 92785363 801531864 541198266 198389997 572306177 12806862 108021761 789375917 213066489 574843273 486299077 204839453 678469840 642310723 853773533 217145443 177150645 208936349 751172460 522783981 245297523 197327427 412027360 640846769 200679689 313230989 210764482 227668781 897957607 895217274 506793895 897147287 874056679 107416483 875285548 481651392 435483972 167364165 161154914 792704832 870851374 232482624 955798499 503756773 365673378 994084281 988220189 229486622 33791627 478764693 155811326 275884442 697190332 359876093 67097586 954304557 478632660 210815468 637545484 202863868 355383279 449575835 322031997 13710277 539552838 911719998 376360850 504716530 784286716 7393368 98600073 933401132 128690688 486429518 346651614 301946432 335252233 966287252 152500686 568110726 170366809 444109926 875018635 642179698 657247543 640071599 777420394 858162531 767105473 521083443 594008761 760259582 310435361 166496630 561220888 97556747 137622303 395719261 746449010 875910642 401955311 338419865 170587368 176742417 122418739 760356608 223025857 211355180 16511160 741686344 262667639 89743862 752904065 351227710 645532277 703311127 336330448 512029725 878705217 605114274 651862048 160599635 133013531 988199045 689624852 209089391 490279246 690124003 601500052 773862357 99410858 47259435 636179355 29709289 49211982 525082228 349646539 561208331 835601927 608879965 999870189 734319198 463626850 147571884 381695428 470675815 959411091 855561226 389453506 391195286 479768912 349780004 170912255 103481276 165319319 721371210 282289490 978009858 759841603 878766011 85832524 159349957 606157748 863767387 97186092 208559299 805238484 723567648 829606767 504548443 718310215 503188119 694468508 290654324 886537476 389361647 704187569 830151556 123738574 577589732 606261503 447406911 718693176 602620862 384192740 397420014 186594327 722676325 502093685 484041367 133118710 39708356 571179630 871409378 87647077 503547486 833499685 622937661 278022672 834933421 655338647 231789204 605152416 150765395 980357756 426750939 138840199 950391846 7459874 612891418 946608104 216178251 601808005 184142953 746608327 92792776 154743976 762721100 188176634 424089526 987697623 171028017 472995557 337994273 319812612 784786331 3387614 679878044 312247599 756479622 181205949 733808931 496661064 972411825 869425377 144505850 859438634 816842979 68204001 431484584 941818603 135115537 218716234 876544800 349519674 754928068 422183014 657186191 258756502 301735951 100428580 103714794 310694772 674812595 888835484 188147200 457556577 467614896 460000700 36691122 460717775 76862691 794265056 882070203 714513984 658862939 528660849 688023236 403217723 197830 226704277 673595044 533509809 144903125 794208867 881779976 309617216 561450809 370714194 482782729 108946625 705741433 433405361 180074491 345532613 807852367 43309166 450898370 180138978 739464702 843682171 986366819 335872480 862607297 274651394 830517342 364737103 225601500 384144176 361706760 893723779 645939398 383156380 499348696 999688425 450920602 902830436 465762589 934226915 18400264 933914120 8648017 39728041 763779328 400670391 222603310 188343831 719796907 48453139 156224651 179051608 411445819 233875408 836580620 14162470 727117649 158361933 123776172 263597528 856325891 580339534 923809764 281411522 635810121 484932409 594236759 403304344 12720394 223456413 85178157 782237123 688531446 212550865 518740218 302233041 417491414 922704255 701239621 61611798 37644139 63604862 509851565 67935241 407810734 704910963 1187250 37268465 879169515 409070501 180020101 374420993 344875675 806795015 355732769 798813000 864630262 751615317 9611934 772077806 429681914 547911333 680675735 522010464 870208550 495426248 341886511 779202690 278592899 579183580 140726173 779232222 759522086 324900825 118929333 481388051 62270581 987098804 194829680 412086724 539670852 651427358 987808928 992506952 757198137 399052686 270280099 224062423 155394153 736349165 69206662 388093739 683729523 897793166 904344085 661219648 873929916 444271379 7106646 782677164 737396480 948328481 117234268 169245768 770076309 384560518 672484016 889724189 219092824 533748418 983924201 940726191 935864044 932450667 193787386 441055026 960960340 60631940 502963627 208200083 448361300 457561569 28908493 665561500 440595851 721601200 751134993 599914334 507681620 824408619 200977115 516714972 51922483 832177547 408340476 316532487 741740740 670277999 870581379 680684448 639694907 728532159 218883639 323368327 293192407 748403015 409782907 299591041 956404446 17568831 410429059 977727448 558325848 967625915 863524532 845912484 139295549 522452459 663491651 148187573 968629469 716438563 736163170 21955287 810535146 455782550 605420439 769502153 729199110 471987537 45677924 368678725 146874005 534990466 444613934 642038398 535365939 127529123 525148904 481814265 6961563 825329975 235908676 168518850 873595679 812954536 74975042 586975556 19738352 483512905 325550519 34941113 181065807 831994162 245885002 8357107 521873825 51544757 578309005 158529769 210162292 414838703 302506113 852607677 189910878 433287797 846445217 306614468 892704098 793252801 9846148 98724075 20044988 993106426 168886190 430478486 772153792 43560771 95197857 811941091 584912235 769681703 37543501 628107621 690420646 612127098 326410136 849925174 111753597 103571603 944830290 309364967 47452941 168376927 426296664 422600175 200845224 891862356 724288488 609177858 134950120 714190937 448213834 357659860 963660306 65141052 922215083 124642229 511616564 194948660 958794055 506964869 13692333 817918207 634015161 804564009 175423610 397656987 295210775 887510261 668005668 242295086 735281611 69587279 136486352 361490211 566952633 450843772 219868380 887307895 645068594 315094878 861373560 960743983 660969888 952039755 316286227 373377853 860140347 369631191 350340154 427403959 979099160 825569789 533913596 53378447 650937720 378451415 947617150 400082877 827620865 867496783 955885078 775387898 121936886 96972157 521349861 916741383 424538865 800008913 789068391 874485548 560885123 198968009 522107813 263199982 797077017 961212235 625930077 875502767 105383536 679304803 765383308 319344426 860233832 402230257 641520009 1763106 37093584 701688370 567966975 131598245 856180979 174507945 854113932 5766513 786957496 800291749 10029892 60537252 832534767 943774254 474097987 542509070 387871482 488113328 830051800 33675462 498976569 108042310 165820955 522675850 433878149 527671863 347935205 125838944 840230782 742610370 14121828 649090509 992162011 788123481 676676772 585185812 408176822 592879623 379839934 360426539 152253795 811647903 498590525 351053186 844235940 805721367 455605795 696398918 967473509 783942971 32076547 143705127 116607082 277143981 672449266 20522224 612066788 969548046 334941181 371409956 225255724 902214914 41744772 856415498 832152824 81449524 226680598 510192165 133597187 962443603 298234881 617994388 830630484 783998147 900399190 986119219 667581205 562554609 366859587 220195435 977763590 715234517 172275111 189950866 815787319 805860542 853599634 367307106 79403306 897931386 407714537 908500605 626810707 169833839 567171349 593753235 847716938 751137109 375818393 217247850 154355813 513676659 114196796 605421746 761395829 292567005 552076618 701064524 449638173 46795785 543034073 258856787 51329444 315236529 268473304 612994202 172552942 465084340 199836005 399760774 235915690 269198414 114277255 985096467 114216507 168520946 821839281 628667420 960221870 534537498 266821723 896154408 867164977 472373668 318524390 362136862 624138343 450785523 647531361 84006761 297050441 346539069 656268982 168824475 901101140 196640238 310240313 568060323 630999629 560237216 289611167 777002619 269101782 881408751 112715884 764861199 149396098 214333017 446503281 134358987 165793279 993767724 731163811 600715230 971365045 255231158 703859412 476889859 386824640 946596806 266892427 822936639 737883706 922268443 10796582 550889772 372035021 738678065 570076134 743707390 766517101 434342728 611305500 65068958 279784872 718503445 813737889 10691370 860029913 779014915 522518126 104681039 757703284 840990546 544004851 678694758 167521407 792801083 274680920 129537178 189466362 395563292 604178888 437695877 432007122 455559243 70068168 397892584 446970146 723082113 49406185 529995235 56072559 873816953 910566621 97398012 183611660 356650413 157804273 149031951 68900638 678815227 346829697 82977785 55237453 514754039 425296766 356077385 333884784 298740473 45099672 149715566 627202953 606359080 875169876 839318280 105664434 90935413 407797056 496650915 662300828 816962983 318987046 33993109 732506880 933889626 921147224 555286389 796801066 418193952 177813042 812981066 649872651 288589982 48385407 525205614 634538817 963355152 739107649 164069534 71633241 125409407 109749235 79368061 593941877 745564232 597006232 175295887 946360226 494406996 245519228 450686173 109650548 590172521 145883178 191361732 237545227 122449935 894622803 334941217 81458061 547877173 927424078 362799681 173570469 713920524 998371402 912307160 881797683 711996853 151591403 786426698 771192779 682775641 100123114 637167445 39976272 885081854 956512913 938804938 295874958 562286785 570409155 711560383 879532988 270120292 761799376 235770159 687993281 798213306 701358475 11184739 542852678 348832366 272453132 847426807 101670862 734328523 267304389 264149899 219862257 75244801 586616346 224895698 781991446 148829114 587582634 310964720 388794252 709634324 614259799 163559462 262825785 43235967 149203241 404178695 221593089 654932923 351277019 769158803 928983534 249579703 942568965 710997575 743348521 516079950 418807872 809873121 130902237 623723387 790781842 269908557 713944729 148170171 456029241 917780743 156242625 880777423 104683199 917851182 647429220 480517920 677066197 724290297 973651622 968086349 154602490 193022016 807136959 25815414 401460618 919976778 617576716 915430124 71359515 35062496 470563183 890540412 416041509 118961757 604032130 295683134 61093493 4363748 764298498 749701826 634165175 696789748 930000550 339440170 31008871 946035520 314112128 920834949 133980214 705537397 591472882 437566648 630665931 69513496 300192593 80413024 456633870 886594225 474153966 635304336 615592172 829601211 925447972 939060027 846009582 478776127 189400285 850703014 782999268 601509561 228268593 36749283 107448264 911482794 425155895 311234504 6051551 489724972 980336877 84452661 714056632 64498604 495066865 242175962 69523226 73796554 551018320 675417472 525872220 884624630 408877784 316939114 269515733 141523062 119166839 399282275 59905603 542260576 745726485 263783146 164906511 137218672 557396217 442162059 793241743 437930820 916204425 967845425 123133862 975574369 418451169 643633202 409281125 645315111 18897409 707281193 370525296 666175634 917776558 308747516 101952524 396858993 525585732 750535931 312020995 189849111 786230479 444657253 604766779 113676593 727147988 824670682 547487507 785704620 119290227 657308491 426911608 775295642 874029747 736149198 341766180 826007004 720213087 101096178 31682034 919620324 221205896 338143302 94301057 922974992 520920946 135072948 218262034 800147391 463071145 133965621 291179221 464459265 345666494 158900152 27561292 456567987 745282321 25558314 395396030 137650989 291133031 540365863 408863890 13988859 759016508 244011227 672606978 642601020 915167685 169981000 822216759 947483694 358519032 96129028 731823977 864334071 810385088 818788182 120328241 358605948 363562004 764363320 616844277 703079115 917966019 962070996 233144389 205653096 311065113 523013005 197421551 646209892 321158876 153205518 882806745 695189234 683888746 507257003 629779223 266227969 986716921 712869405 428642834 777611577 526437555 111455262 36728183 805039702 776836439 518904922 686181203 702586520 87916114 320608947 943516950 917537229 982008178 253137839 729868370 568542214 285494013 685393028 149460370 799780327 906152166 272776662 370885462 331528313 36994232 163635807 52118716 808060416 182104110 473996613 624004049 420220533 845628899 309360365 595122422 189828449 631836281 14757378 52009163 914235639 255964321 236724618 655480731 707222476 993529241 39906430 66278753 267742486 85435284 825028516 449112947 130328970 46334373 119534556 580372211 176757847 877317617 704388395 311998365 644360670 465721421 273063819 849268618 773882980 582309489 385500486 545322934 859531250 639584209 140681023 499598533 377809183 382758365 607383645 284186438 292084728 139085821 728893359 329398889 690458966 33279641 589332723 760043099 406177512 929046450 394236499 365922089 373389308 509753040 460383458 260853269 561081700 573580674 81888301 76455953 443696366 417392771 945236253 959718794 376878923 740538207 793239437 723477852 847017984 870943765 786607038 940616068 812373302 213007724 73964776 493655325 84397926 414452694 242544986 952244930 515332862 797158705 590051367 103041979 849273079 422255385 764466115 399458993 498624508 981767667 186724334 89092597 133715697 912376175 61780017 538187988 845674910 713956888 321253621 304307560 551127908 444749751 494530947 607755812 16237548 301183298 321174110 153973963 209999281 645778230 234974286 687970383 975621352 833664023 278928455 921475185 136586218 244558674 524566169 219841208 95154323 451485712 164039532 666811583 132848130 36017175 620515434 269684248 722454848 827603017 884670857 922219930 173737927 813251925 893719522 942286422 67978234 866738299 914069636 959532079 831448997 582502205 270749831 724554590 454167671 312216170 618821624 709244229 71957938 711771083 863213355 179882785 295739389 251000609 859922599 95591294 301415026 593046208 371475811 475527435 270144018 637219438 936379110 905897625 91922085 464823569 519236398 703120579 366526766 392580072 857542734 278453905 326684361 476968370 597545680 534041044 114467251 332763935 315531989 115295663 7465702 895553036 509658568 477296320 534567808 908990682 14343843 94426513 178692101 218295117 427399202 190267864 744893701 947670912 666810372 356457575 657777411 730486931 417705521 89579729 566981448 164522994 423590306 391106453 792557792 383936789 328467070 609031921 869179045 548554860 606526547 763279585 225434063 271878605 99153421 327332289 126269224 195484079 798823594 50822177 19165776 407580851 153764179 171912307 898514872 392589886 916788595 120147183 396690349 29432251 744631715 643999481 772004209 452237838 764716261 103964250 869996029 54066406 839819754 883069871 929431792 767482955 159427306 128598453 886072634 833247364 605787263 558120326 956273241 170244107 868279892 911995871 477470915 255383063 88961145 672880065 390967804 641449322 54476018 481258211 733740087 380342949 222625200 597290735 15558710 265846081 362519097 499316200 409898081 824898504 775532392 774502101 50194632 193248788 766095180 972011526 615337513 240410622 812014064 362189600 505849792 956230029 902423787 703539485 399338474 68512178 53640814 337704408 519522449 472168315 15942778 878594183 537281358 866743429 858814067 220842827 419682243 742719655 144487673 563681299 46451230 190444794 11342893 700311811 469661573 386386637 307085583 783863586 142576999 939840856 883107856 647911632 465807326 855767979 461989357 204660993 456136152 88315978 83214479 86110511 602599619 455945143 900669178 155159660 462009043 821193878 170855375 33671628 79585516 378292255 180294355 825379571 509639501 834494133 180396656 567023485 797110063 783931102 62091937 112584202 461699955 335024339 994528808 379646171 432888466 880869674 551937609 585979345 509814406 768585112 382076535 814571890 574910963 739949740 551879710 787460060 712426350 111051024 27372555 370721520 681419989 264828520 627311731 191261906 810562569 677577230 173552726 67249211 618711151 393167897 730025403 306895802 124751833 533931939 823068603 431530749 542586182 748464873 80707333 450683678 868605378 210058892 210183466 983167243 564100860 332432202 412449900 816099516 823139322 124192274 620939306 63134223 485213658 137799958 256343612 168085783 431323953 20218537 229790565 762227812 593894337 291358059 336421414 315859910 595426389 862575926 301742482 74049233 71729819 419028883 222559660 576536704 352889888 562333185 165243298 549516450 512980969 799545873 469175861 407971118 701243028 142343409 591610512 900637514 340057996 729245609 91997884 792986382 794558259 320004880 619025448 622424335 711542812 663899495 976887430 664122028 392278848 297423771 859214067 984164656 574522009 523837348 229587981 91301510 199047843 167223204 290795383 425235407 166913175 656626674 369160235 157524164 721508972 982918739 650936256 194889071 426182245 147556830 318092668 291563408 401632280 535854361 831992822 838660315 604364384 6879217 36737997 120209292 978082818 676891577 89871269 546573020 381103227 719835031 75905909 580206795 410419759 627522870 165321845 168246302 187938692 83809992 837440465 140961383 125095634 730678108 485681441 897544088 609588188 985355742 254148757 184257985 566372732 387163511 141279813 586916105 574258203 556770003 778273405 182345378 981431454 127628358 781361834 234692504 117118865 982408235 256802437 533153102 648346811 47126976 713394044 932225923 457008745 768620850 30992517 370709631 405355947 219308285 249732399 432318436 464031040 290243015 562784973 49317444 872832706 654687130 618579826 811043021 482175672 170862701 331064738 233177603 700340279 561210077 332893988 879129440 789942037 555007616 528258719 344130067 988020217 72269207 593339584 634068635 339527546 52927554 750433702 380856453 826255927 388707955 200087563 522053078 595829504 941085434 845971175 527977031 974159483 471646700 818301589 661647177 456231045 792285276 707704898 846645664 12070000 668786774 995769959 665209018 563652866 995586290 836927756 346856992 944231747 495246025 31996901 275113255 435166319 983602884 518207350 877712204 243820886 232316386 836842731 844799079 593207241 205431822 772272559 169565359 858681283 925480799 939772593 19040303 677644846 796770249 691308273 471047752 825001439 569526792 157566845 44905303 317504605 772522282 733566254 847918290 810747590 94259810 273196472 374882942 309499787 134698981 938586340 776716959 684766115 718118735 51428135 661763629 909131650 777805109 213429342 373861712 839672137 906827822 453655625 122225495 211749395 686902170 881150799 974629577 497327457 736398603 65255121 869407145 406747002 542285632 987570725 569923297 931493535 429069100 15437399 666221232 502780423 492684835 315119536 456162190 188538508 17086133 33498631 929175995 241481476 177677522 787713765 357558773 196053408 383209517 1401496 987906898 70976639 663722501 684112315 286146576 811273028 457135625 323075962 747145933 598545568 454957958 228463542 221865711 467025240 268060937 864382137 602012599 46160443 170426091 642268446 452242977 296687520 347855458 743426171 908205723 955721593 856202947 892575548 53768484 619641765 476027590 728555952 467336331 962082573 657516821 938251364 68015235 246814772 335486910 735733756 591193303 721508670 974234936 986343357 650710301 691428095 493513778 83026910 21306136 72115691 661058036 840800784 357467738 877826511 51286981 389532351 961391147 190351458 854208490 36743416 493222001 678053839 791362149 430871323 920556027 39734617 411726529 865167946 41473062 278217210 464742271 636020761 278108561 389082730 397344457 899207257 582108564 265356726 237394038 313939389 402848782 720491011 466124622 485826494 308027542 698185845 735920391 772399786 571041712 175629641 908047067 94515382 289915215 353246586 20153790 247203763 952416691 178844619 655670565 398200871 251955929 973606013 65796464 16206771 426146407 61257619 871419993 922622013 324831095 10670973 305501486 405306530 860347653 724622475 28361850 398348847 520431914 900243229 944383366 968473189 10717706 768674945 558347960 868475771 719174979 52642224 856148208 554619186 263189355 761677582 211678875 681945308 555827473 823672835 885354519 294642063 714030249 905913299 981093917 552182432 549898909 754720746 821609105 329523932 408907570 499273290 734660616 722756842 91684638 619931498 36001999 654348865 840622695 1755730 219218358 748333981 739842516 629031940 346098306 573716413 618902508 32576125 494133810 198923006 73057348 799200257 879063668 812777780 389491878 177284497 716840300 674612305 292455167 583671407 71786509 19846916 684155199 166563283 457638474 203697584 145647611 46995635 6303291 336772863 69628663 166132839 132339702 969637606 848361214 865922966 627474245 329933432 399822026 130045265 690837354 120382290 784354958 474391755 419268552 456496032 27174189 148352084 753586951 799608953 130498098 4218572 939411012 174796390 70461288 836808464 849141025 490299786 822437208 721272287 422086503 87558647 758473190 360448440 434944474 114153854 892028098 121694504 752757451 747216568 804469005 114617070 549282948 759031514 767890425 684723814 535714446 812111037 101471830 717023010 113390422 509336211 886959791 982662323 863146444 7906977 53303828 440101963 155074760 287229759 135298197 829444820 351844446 727980932 332368449 604325349 906726374 276935665 155108089 148001878 998328879 492941397 283502881 135492395 296740171 974239743 173493701 998612613 13022756 881574466 270676505 240301899 958639913 332869858 753604346 51274167 813081452 866905735 3835931 799215035 329346941 45723413 27308860 700241367 73571510 182085348 538910420 288117109 547902494 283328258 109625707 893714209 438788722 992297990 994399985 285710441 740711579 739843902 201616079 16733686 310752494 222099428 638847584 867044387 874915725 505954167 940519366 91502256 508219262 567464944 74511036 537988595 829249329 202541067 913230152 653005087 7196209 315706364 705360518 132868769 95646599 351648158 266410788 556121824 706060687 240174863 245480780 585800870 118023767 248436382 318899905 354387931 195309437 727687175 908568227 771676133 594179697 287222874 996207107 439441622 137171453 8131301 9672334 972965477 53080050 726690454 5487968 758018519 336426195 387378908 183044705 236517907 71015922 983497880 662588824 339818515 588100855 395935070 281890621 202371935 396115636 482867866 649124743 204293808 37509893 229476093 867122510 10159427 801723366 964023194 545507115 635193949 34295524 515555837 833578182 502620435 728727156 696573968 426423191 99681440 210125736 242314802 335516757 23987823 825303076 354127790 787614787 390823836 534458037 707494945 663491754 816367727 84049346 225356651 778458458 828863536 456423576 224625274 289276002 332930827 572888736 522440419 39638366 46267818 822859682 668400041 174006458 571667217 143177999 203299517 27249839 827542161 868553438 616516723 160758704 117835658 329726441 156933304 664031704 39104592 179671942 236569655 506072618 514282003 981767402 888735581 246755440 630087277 460539430 552146127 721919405 518238570 25638720 707921 545241165 477416679 546317549 733515195 567860402 105375466 838771300 597558725 986237263 627551210 850359152 312272345 195704689 685961193 680921948 809494894 567424560 122836818 645022956 303373364 313255469 494228594 586099391 534600284 389295141 326560045 108748602 766990701 277682053 579343773 415986414 518512094 293822601 383528294 32444216 408992956 637495560 152819214 50680576 992020140 58967653 894688732 130012354 748890729 63562231 882367732 838419766 501917377 810187224 178959753 402601441 759881640 620367637 195728462 115359101 729714605 921253285 570350963 784348191 719537318 831341426 225644471 29301841 863071721 426178601 230575728 175621658 247945659 725930468 304044384 135954285 395349460 541961740 243172423 972427652 484426488 92308392 571168181 405767438 762648567 273105330 28442099 112883602 221932501 297659203 585139165 189498230 8124472 255194803 864044148 272904239 771441395 940326842 230094786 487919602 929015389 992398164 158671475 153154157 189557670 217648725 25525239 713451996 438479351 583187456 369464055 242294875 661764472 771972994 983781276 89888193 514636199 831811379 513841668 952170717 21575403 102506496 797263561 276371587 1300135 892298760 239509871 242053591 114609206 900890904 850125824 773985486 140893936 308023932 377292457 157952062 882940267 711166482 577369163 966542335 800273975 281732309 510174417 536905757 302935294 745403922 151717799 720142259 498098137 857074790 338828390 262915340 831253424 912322896 658369577 987555765 162085851 455973171 326294838 592483655 745388801 677611614 935995309 541010773 635801994 658784229 541333102 656254305 611143264 877510171 487286723 863284453 750388625 318466371 785489737 792827290 79557361 847173994 750303376 863703517 450624464 376821305 602379203 861141263 677578879 132456593 772470210 248543965 408589090 678187400 962491467 600399750 181298924 736285848 349056145 618666061 281460009 314504434 709019915 582868253 949230007 428438802 369805722 224715848 270149503 54518546 564118467 998221836 391361464 693076005 559923879 112048130 332402247 795369948 912866714 719523586 872992102 647490397 306561481 394783079 155217097 261233602 230492192 612454376 372142716 670782370 493190547 178072282 147047818 759965426 715518792 360498699 442375639 899712871 656709745 470029504 416654451 768529916 35325873 71561380 283145313 810604559 968189659 963463829 503124602 455745741 418647618 249376791 120330663 187355061 37949585 322318681 78208310 511468266 56456394 15493702 871816609 861227589 100527128 398814959 367012398 163497531 321186019 910070074 293709200 218977586 754400374 160320419 787803431 425124294 688682843 74746563 552259622 865382694 657549951 912132966 273642983 690758897 56344735 357699727 976913065 966697862 552930498 60467781 966142643 518611853 906264762 238237267 379039043 232761104 634066548 766285766 415130184 430027793 663217704 330478459 585395049 286026973 603467772 474036386 847273487 727359362 884551550 317722815 723752500 406472291 585194644 80625044 882602128 586786722 519880481 574084280 644981582 876880321 316639429 782824330 587364482 897353912 542784749 322874268 370610793 604804587 708449686 833727121 53000428 534431580 306813666 438595265 185654431 498726103 908611691 761846530 116601724 212734444 408093019 907424207 668846619 429893163 572405881 557688812 701454344 468163778 805781827 91969348 487561617 930663848 983603964 563163522 174707879 147311711 300689690 811687287 56251878 539077667 947607567 506057484 298106569 994657803 180426345 643281549 711027541 554430024 732759961 628531856 561801254 900254446 563599938 777141643 492187215 734908639 421904758 193125301 684505052 517885311 911595298 825385470 820350312 341072655 241411183 338655950 91499764 765724828 909786569 865197793 229010834 898199768 164678072 450023104 646317218 395054623 724900253 639954818 327479858 78619806 993089608 811347516 106510919 181732270 705355340 441981064 932864887 563597423 563311040 874652231 224391478 559329832 592014393 452340213 511081844 822002766 705413547 630212157 312616196 341134533 844096791 327952984 742531973 287657264 155137056 870883038 465692736 513070388 135957063 781208504 344640863 874607920 298446351 800487381 41032972 380931886 941351799 72601126 909570810 688133072 299038299 936723972 485311529 362690996 143624318 954134733 33334935 991379119 863195682 326569798 871430642 440178236 966458722 380835591 498686690 715555395 52079130 167716592 462185484 500884647 916390748 520168144 300675807 378594013 109162066 513714599 241569604 538471659 206175776 445960381 307327073 68390137 878331314 791351393 816853960 570587193 622258496 814549512 757722362 998684567 965708180 101845878 743128275 404436571 318037888 192814266 1783747 982929958 301975851 456052461 152112892 456420911 258386202 175260195 724932017 480689799 83721564 422005767 328472061 465133114 57074202 719550836 325837923 528976463 387312337 118951171 915935812 748037949 714636210 940823192 5493669 835968963 306898753 409229852 820352193 72438654 94156069 590588383 285205868 325160317 356786809 798492449 722137551 166811465 369097111 84409864 348314938 681583897 967810046 914123939 448201066 89260684 669836604 182830138 564614654 654847872 248130801 20415487 489185055 557596580 181648942 917817975 388382266 975529637 654805799 670092549 664210452 52232728 999482316 167437826 835267428 575042375 866839809 68697843 533705874 394775694 494467095 98079410 565993266 16375428 351813847 735483919 726519310 284539338 496939571 308349189 890348290 321272850 965603271 107127330 292977988 874376682 519200548 202035708 661794510 96017520 880010899 90218455 634838828 534786564 522658541 223452873 508075567 503917944 234597459 748799900 29728333 911399517 127571300 394556153 825460812 58123323 524721270 309599971 911118429 32587294 657671958 785617335 926983336 634046401 745472378 723841165 183278489 508885101 551810990 145460291 75330979 424243896 599988426 839083745 650086402 999049479 232641292 340329241 189464230 634083353 342332587 508805461 704242634 593506005 638789974 943949265 425933543 10319703 545392909 363012939 685486232 315632048 712478599 725945233 28956161 222427475 379618967 69558729 787600659 818042133 41868484 693704235 154366492 946072434 609888070 807965243 431176341 369821288 866922361 30953611 346848423 962795581 341824577 275581307 979091171 158775351 805885984 386477989 129985288 521924200 527309596 99165109 893004441 625613427 829760109 520877967 603979058 843325503 940222132 571052768 216426922 475487654 259015183 594236924 211586357 605448575 853801408 197068006 530818701 890959356 401742737 339077729 303337223 174527218 64381237 636216258 877628661 221932332 866818150 885787543 295359540 941564535 512280722 509430400 998731643 330348752 331191594 399504914 288249308 781454413 549903341 70133074 872621118 756770072 619080422 759282185 316555365 477300734 785060805 725160617 715692656 174717040 638957739 958333839 706104503 97135480 998649702 451977267 971993564 34914355 128581121 972825713 644096832 684936982 19829402 644363116 562254030 364309733 223655484 192510299 669510353 71857599 287168715 147085301 600613902 50918953 245144548 102372629 212937830 343917266 556813342 555654983 844067537 335012560 957113949 810443695 759499845 837138027 409377926 448460679 835411173 287560912 252486462 517864083 216466383 897889878 869903975 947281558 311344368 381573178 731427778 688610311 760281483 25998167 515646460 624727212 670779060 623237864 446269858 580649160 364749 865730074 888933211 2561225 602567389 904142119 129902510 102298440 946936404 415959123 135429037 150689460 577935366 575883505 352038326 559382535 213682506 7702674 234751450 84711527 708781929 595195188 199535179 502849988 671950918 470243664 245166769 12465794 298136206 158962960 336520456 375461774 653410513 511201813 313511808 793319378 9265160 972809435 616335743 622747653 925383049 63944469 255958240 544082662 245298240 307762446 22986813 874860092 586055888 57307037 549953831 379397998 2261022 782295778 438606020 495771308 904879430 198992723 98060158 982406848 655171171 713071514 146647714 486553547 666700546 904882608 64472849 141361172 322327692 724013545 602411031 579587269 287805192 640150765 7836413 628918964 299865999 477092168 905509375 305370668 171891834 909671666 711944481 572615631 936577409 935848865 48949794 204925540 145197687 424423769 492645578 350887724 874925065 148454398 970091517 124521702 93824410 247145604 153821173 643160000 751920450 684951948 670863657 150005026 725104244 406146209 966777737 817684368 175797955 804207497 210313149 390211093 926781726 372154236 929874265 671108271 94735545 676980717 774555144 667319911 607965027 543711440 249580614 455318180 990159329 598086572 211791418 786784388 231225078 895203533 982596793 105694269 302923314 262101851 25940349 677182558 184070542 766743320 669486770 669235855 759357064 845839538 161199733 499456085 795715846 473526900 433119622 691835132 254865302 491596276 38579755 115393161 664250607 584230882 304521953 214465174 844188088 217588647 349171332 786474395 879992295 427983866 502125123 571097643 822712749 91564078 987131823 968517217 476724208 388579879 492305811 468544160 610821487 112486890 859717250 2107235 670971207 741577391 185502849 549139107 685234003 837479161 858067767 762806235 748155152 890930336 72150923 443942749 675617461 988963215 48347946 519967049 906246912 719872358 895582554 680145806 325454216 364448029 46102391 29059612 841155954 38582028 102929252 275372812 393927022 557289991 291189663 134610088 736108108 109870789 190978324 52145491 723593876 126056082 947467266 71109829 480012494 904147274 75917600 174678975 676073802 673480138 631326357 458874588 450976494 710185864 994881473 41063796 525305042 465735058 610132459 388284061 998527107 592568179 29722429 386357439 368492828 958230751 276058977 968573723 254241415 612175928 728940133 490937895 431302947 172611733 205046741 692340575 999594013 457357234 419948061 597756179 114338210 253279401 27743956 866958601 111448679 533344482 289115157 806112376 816976611 115056781 25859679 461090104 668538132 128315195 493808170 199729401 382289498 439937194 974306546 565956401 902391729 502329056 662626565 173751959 786653203 875010446 710961355 348046977 586000109 353233766 279323428 247238621 402091412 367105789 649493871 163231969 155205471 807780125 983560071 942386899 546193453 660939574 296955220 941939111 905516976 48728770 644111859 719332495 94381016 842851815 365782124 200507099 20757237 574051430 925620550 945767938 876638656 826246248 271992032 859150694 298806313 642280048 81207448 280778840 969218109 76436466 776867600 293933630 904301972 565821233 955969047 445377972 796977490 124177164 243206234 435994699 279543061 390984160 914363333 880284912 368063464 93108311 272818873 206288388 721061367 838016044 945608073 884218250 209602875 345439560 11990864 320930335 941029433 483973710 51732366 643204872 308082063 462060132 791780317 7932252 85163218 152489244 169170357 57449292 107529190 925676138 16426641 404015525 489783974 914972367 996287501 963231671 281018334 652128244 314144362 891081068 788966099 551128045 977962257 551131457 572725565 781035023 685613011 284154296 19704451 538170342 518542201 372933157 205910963 628097624 518698012 768153083 97501730 327334275 512934806 448848453 615625771 775969270 390129119 437863806 282747964 455872708 668367051 899482941 920293165 293797406 653137523 656773563 892351079 314244866 741581918 169380660 147923222 143541265 298079886 23033079 792682737 402468800 287743064 265625091 113116468 988612298 458005789 358086254 759922092 644061743 364726375 862682972 184175321 732045397 593084003 301024719 811939337 805903892 661873860 740548877 58037980 753087775 785841306 352429664 157085734 546150872 974436342 191523000 806394645 404197623 707919980 454716895 260888856 885782353 326654610 201820507 230706380 886713591 163543603 64100303 620282359 567211601 612697017 542155615 761871334 222033778 784947510 506852585 109662512 22080018 305161105 997948027 95026858 57520716 364685430 785385931 209591395 942910373 619195741 421073793 721182886 344860783 612727147 944583343 962465444 815335049 333499455 535440832 732233861 454501315 721917768 414221081 934342702 777893603 938937098 448350198 237636089 3455740 528252336 603899408 740466326 656777219 363709162 739961522 953081502 270521258 647306432 590964065 351291789 642481026 78941102 529458479 489860153 193086041 763567835 236674021 351507362 705790863 235813573 967875445 218989698 442776045 232636960 193511457 922709244 696402352 332930879 624131254 607275696 620840790 213654713 743583335 198184990 200841323 628770408 988385505 138076281 524138096 908565719 79326254 881518754 787491844 86946292 515296541 607533999 243730860 466760885 798630178 706004647 661206608 407624262 980455108 548126361 885919965 422350360 215895778 714325669 905250380 543969263 434108830 620528682 860752546 699743703 205134639 313985728 603488818 945738627 923985987 878694960 632330555 493601544 776058265 481427338 290621461 461888437 588114354 879730673 137848944 383059495 901861224 773321223 225588267 232972131 221646130 515065660 773315842 503578935 414901880 100941253 469073911 229909614 498198445 906747219 668660729 973062435 410853310 306049786 527835001 629713923 853244703 333580350 554343560 171062025 163860273 324146027 832528087 147358400 78049208 555986430 529753299 580850860 38775655 578592319 596998080 376149764 93693512 950557186 179061965 721981105 648525027 814583488 57538555 724162000 618615520 80690308 794625721 257686593 980820827 734338708 677116803 660552839 3194316 592789491 733744225 914284527 668030705 789033376 352834350 10891588 708573991 357369692 352559983 692295429 85157354 597075587 564667867 33062730 944430533 987731497 172858800 316811727 594215239 202118124 349082902 449039694 835839745 934574824 406905795 613977812 472066433 90670244 915847623 250395973 760651759 250013703 813515545 8725603 484055104 263125298 869942998 341674434 549190157 976998929 654586774 251736062 106184223 291181932 772751978 422206594 415819307 342611290 988860705 64526718 209099766 838177925 47351370 285532322 19642152 702015872 253576440 70625211 555955232 237386190 884220167 719445609 572424313 678616260 641035347 304887254 193278075 670465365 603287028 161080106 967029884 440338392 13279570 963664179 451147632 365409784 244748420 164340912 942006326 378970189 283519184 159078661 975532781 788394192 36501490 62613396 892901018 460271317 679960947 7791008 19534739 55149862 531871109 198141430 755123390 745808826 391884848 270996897 441312102 359485006 749893200 634048333 2094689 567915538 349999254 227066502 502025612 321053950 8203435 362996336 308994289 257333081 361230906 916016151 95768863 112647032 772315369 690870183 3199154 113490177 259896860 71267395 232621889 696706296 688401364 449867471 315161476 990885106 587723057 544854682 745331632 138051441 8873636 391901326 578643147 679305024 51341401 810506120 425490355 3043812 265888212 232075572 116901099 513169083 334965 40585197 28414682 682307523 755337866 954941676 732532778 550467818 637052926 888986111 978219292 389064338 806889993 210807361 809101803 193803766 588089236 912089208 29335493 739871230 291214483 67530863 269905897 935250317 62252720 679185234 22045463 507462668 594506929 998927915 742605746 638127762 22821729 478573044 865416146 327254082 317498168 946871843 862353255 222441490 326275893 644558477 820200119 928847359 945646732 495680281 636224173 485663342 784589733 107871360 4642061 609106148 677671858 644445989 354817992 958059940 573149819 789204619 681424781 311584831 606620928 707582547 498874104 870260276 792247920 275933535 809783835 625664983 594497113 895870038 467531720 497525694 5752195 330309868 90635341 262622891 235045512 29466885 383017649 493989304 604348104 426129269 600783447 92698163 138647898 223817908 239797880 278902481 75302142 138822966 245842232 17149474 259240300 723139704 410538126 872369545 202750052 984601611 800602551 978922049 612687228 13201122 766430427 17759680 244771089 681627737 249169734 215417056 542930411 565609649 985293066 937910611 109550763 499422357 288015617 805209374 703263058 204948637 989363707 365000784 315907188 954697395 805844261 38899053 509008384 722370990 646632165 616616488 283682619 675761500 16365939 434566043 138825270 711643614 66146141 235100572 142668297 352913224 903895635 950896938 634932537 725796275 640589600 257902281 123359917 144670720 210094261 133153812 514993870 198252858 874081308 106992207 913179569 168456906 813961758 321443749 258250885 790630370 866202312 301702226 395791756 348450781 992454035 541910231 931096942 711193919 276056685 380729891 937518664 975697623 88381546 598459587 313701493 283944937 940005437 92742112 651213784 742806992 429395564 109379471 639754970 889681910 449318463 746328999 644484137 824436690 224634476 781873755 899013960 436989087 785254182 428551944 834490640 5693167 263959515 227791493 665315845 139499761 178960546 697478326 750793877 714342798 538736646 14881517 602054965 817213024 722048523 923175483 50129620 673645164 644595406 185385530 457168428 652483465 64094077 338080451 843754172 154505984 381225043 632655675 448268612 485888449 592524712 479622270 664859175 359850434 234150788 73019960 986432539 862018917 950786689 992288836 621010172 467583091 65382228 478027001 575284463 353309866 925710831 777854998 99013261 577214472 449921216 277518667 532273605 798436473 440045986 382738260 247219749 539373848 817270936 167355052 872471777 397666554 873050793 237246320 279749556 602098089 553653435 740866502 229825474 406166072 346771640 301429520 99959339 755946225 87321301 283745210 48138821 685957333 509735533 324607173 529034367 18807185 119119315 152178321 681433416 230039528 25210066 734624740 691048276 452216027 138890642 68884977 597147797 337676795 744988564 587189772 80177091 440072828 340244465 231966496 162501975 929040996 240061602 836272168 984595872 496002210 442729857 754514606 4721498 117333789 356001856 755621736 84345006 240450695 223097122 219968932 141818223 908886089 555335768 779871765 971277395 760894041 779597803 342914180 835468839 41086806 421076261 790543340 582376087 605863745 403184228 733061929 20802755 642454482 464181307 10469494 247595565 709940791 235005211 995614565 489852125 325810737 405379678 648072968 243742130 995995041 61684764 617226767 481775173 411961756 942799052 722187259 623595672 361841998 437054279 187546099 730744790 721279448 977640632 920428846 155889514 596599582 12761970 672151481 384292098 123461063 491651789 730754353 942531786 658202222 692398412 219971350 504549634 480395130 765904435 880206147 719952677 532382028 409090523 363167356 148062888 506639484 214798221 753390896 604865740 371205583 426192358 653408439 927497683 223473800 261303770 685833030 249685897 569087100 888428206 384700273 712871189 336722229 651548165 248142477 230543413 376254949 550581124 684590636 228966796 218560997 126795407 753372709 457632750 34531428 187165233 963952810 119356342 617763269 630750727 937598932 298522771 935076867 393986672 999791255 284648824 410575 398504724 285373958 841469457 165066711 418223393 352887960 613115983 714837851 675589572 864502356 60075282 351451328 788276820 386627888 267581701 678260964 193785611 885703310 409420850 524602352 358355690 883982394 259816118 339240607 958331986 959311347 554592741 13864277 23455071 853452384 509990115 808754217 40965764 904494755 254226797 577361352 847694543 913057350 869743509 983965119 941231916 949232085 673991793 452798845 353796974 528098184 763178891 79211848 768364149 603069937 714176429 622063570 631400507 916437033 262158368 893303844 167935312 864449621 254395602 854930963 401478374 767865356 464969339 594339353 273128774 423033681 219860925 782990017 895337168 2406893 465259809 941579158 555065625 297391377 951029653 5423232 888833454 807279847 609505007 301770979 956247956 391097738 791573564 817753132 985287349 630708193 787770531 899664368 525787647 112319132 884929624 677559503 893932918 428996158 89829625 957989994 746992361 65866422 276503573 473180982 905171499 361715381 845984581 502365267 742627572 884296262 546764182 931869619 277032078 571719899 351703056 398776043 12255424 834408328 609672601 563717410 84320074 271285377 257875984 963439306 735065727 510415064 468501942 667972490 757965392 368593335 512883880 388813920 620540040 100552233 8002403 848643880 268888826 63701451 499959795 356237712 620170583 819194652 887235588 867409655 665376669 29316035 161437540 752925752 575102257 371489133 361133073 759589953 581551929 589036304 655417167 917420397 290404854 242175238 299831896 17670265 461551046 660927514 877739358 575407302 808454830 125755997 361355748 26631083 122506335 577814506 844344481 40784256 507178699 325188610 552655643 944332224 882349303 521271562 650847020 816596843 353765415 426193859 363644144 964831409 299021035 540146707 899438497 145817988 519277423 46601959 100245946 35655090 470938387 329320051 549280806 128969881 111680750 612295873 184761616 679111801 839836328 379133948 877443375 579661788 11504922 105894972 998403706 700092638 333649226 495047219 955883520 478654300 573331073 80492248 610334984 584134668 757385888 390307835 116762268 124782501 289725251 838997431 848232512 206190118 292567798 57971032 114377129 668087559 135007765 265965482 876430315 702690117 945666454 439444642 635878164 961236084 70578429 837210451 770636633 909007531 122987293 257733730 132761118 890872573 869152897 991779478 861056010 727584342 655138152 406408992 800612381 616009191 399267462 39286837 532631707 103420212 721535988 645636820 372674038 821436641 340224199 382906757 641504825 592246573 794172388 979756894 974966750 448057902 273322162 866209025 369041407 330953135 251790368 297256298 209540538 317595598 182968691 47109630 200678619 684640804 695259903 435349509 863703302 338032644 360506539 82994405 665978977 654002087 40282735 310344635 235568140 975047655 629942246 137302228 42260525 934210053 905484907 295983108 181763136 158273489 765774611 408880571 968602127 356738188 589609240 121937861 573983464 104480298 143328317 167891172 633594336 520666456 560347745 231108683 719760739 807951462 89748382 138194452 955862209 706091376 490526798 530166110 774498558 168526414 255486784 407481587 459389508 331120231 255149182 733947058 71887790 270089621 885204968 188595391 724833540 649401426 537732963 76641253 669590046 352911351 377394414 510764138 225711794 580933026 752565731 421852156 27012444 736328009 764392229 97773918 499467657 903575414 673086212 756576674 110085921 814239425 690788030 884143002 159249402 403405603 470249171 690204795 904471486 414662866 247508861 137959154 805712003 747764608 679369102 528997985 37809168 59728567 933230503 806269780 295858904 24179279 30964885 341926652 831222812 322048871 671128011 788462163 964663366 324658684 10588471 167308750 721058841 141428799 710964749 938005375 445868746 179129293 552281676 467303378 45430287 443793567 35963112 602416230 84697630 360044717 396488811 95308741 172749728 844949516 180347478 457946895 406751964 338535523 152488061 29533314 134074202 418850501 10490826 220775964 994976452 139097770 131822282 622865694 369406192 357727965 403371671 830319629 252639345 105695523 856961668 71488876 83638906 867027479 317852495 104430547 193683089 418433193 853123991 668029918 848322981 932770981 200832616 834361428 531624229 307848793 58103766 867953063 579709684 443502184 834613138 382302008 643396324 626299624 698793337 839649770 355408424 501414993 229345743 594331857 577310865 597521304 728060447 200008245 975986860 757904035 981013839 982692314 258328427 956332908 527937215 567243294 884332507 190745206 209222941 360780178 764798100 415131205 188083662 547730381 750033281 139867747 424773523 490963436 445006211 397027184 77487582 96805019 266621656 195941777 770498891 654385346 245073819 400944877 576069711 542290267 138592788 573886303 816532531 113962730 842613335 291526336 569972432 309148274 713482339 533228998 1847795 974539487 932737680 58632428 476258473 800684067 986923675 852571628 336944568 264365322 302804706 252724419 561545012 871610334 639698637 12561350 378678401 476733200 647542608 559247364 492795207 882710883 470594162 687145190 804226775 95731339 540870863 956896788 425104061 541910636 71089702 181571290 585490747 348269061 993697739 683362624 811009352 879219709 312699137 361520019 572427012 754663488 712270596 135560164 286350410 640369791 910876037 494081041 626024161 526301620 935572998 816528006 742455859 601777496 8703623 903927488 640783254 263022042 319964468 943891133 883980883 496698459 708035284 812379059 873718125 353780008 243806476 563525532 571523379 306737315 614704204 596675099 596306603 947032194 143831495 230335897 512520777 577931264 970410822 977201243 284899006 770022329 318399323 983278913 109523108 65220793 101164725 364291423 535876748 289724746 816605937 598997199 468648552 641856487 237360238 297948333 322060186 76124722 455898630 661973767 726449044 577393231 998841577 437247028 328412022 368307562 674201573 222661017 22133163 937491546 106843801 975594293 528525145 325813956 941557179 158727779 389056203 489551840 679132200 222459796 954701965 216646274 875810855 985451167 225288299 464168981 825045918 812491081 53911075 414027001 802213181 24924384 711561848 805719460 261223268 513830582 186348355 682986281 197078492 367606222 330993160 908044007 999141472 644920494 745813406 686541668 883659609 600147754 172494312 319977967 486834998 825404859 451782991 426992580 46192731 493850939 245797206 26608312 33464586 384253229 772571361 242486132 761932235 564811090 940972295 364564104 743811378 663832080 339188239 189321874 333759377 246007725 956242669 833472136 419776830 780657415 742932241 984132399 319914625 110698995 64731002 6738364 490361823 263728178 403227393 867094165 100120972 583616142 193906471 878107984 615346621 762617879 976660439 754654210 979117433 28184006 559957839 23964039 189691347 501735473 450021356 167428413 161637689 1477462 6863703 522995617 350350710 565526958 451958746 780049769 78075973 315143842 312159644 994069050 254431196 774900625 300945719 281484353 168607797 610323591 81455089 687470698 157862331 781872994 408728152 215793161 367887444 159422905 101074456 983801484 207248964 634925466 121828987 385276317 448535050 700178895 932660838 483933568 307191785 572023202 926044465 822752771 581442286 302456829 25730339 601145530 765610871 176263899 944771277 998910801 888648756 314141248 996606806 988580853 362874246 956592459 402278420 475792612 386310278 606428682 180824189 467687693 99856055 642869107 684445993 634163684 559928254 385007370 716289153 651694071 242862955 318351662 788900021 84583803 534653618 806459035 607796739 4680481 973217457 185318789 932396933 212808192 806702978 232830958 599310644 726160079 225731058 553051889 995045729 694017652 540287616 590326674 393804409 517777398 970801383 637669276 205929875 616744203 155340777 681711843 607196631 88316070 955975833 615238865 259723546 685166378 171656225 896025815 609684749 654674593 410705597 500350990 372620226 104710138 710138189 277869742 162256464 772895007 948477000 965163933 298350659 445026181 820557211 685685785 365596240 591157235 111564342 61844602 644454038 185628428 180362355 712294850 867676981 133032065 501997488 733631360 506447852 636786135 82440006 956197161 500007468 20252048 689594181 331066990 151039126 29281067 39311544 507524322 648952618 926614654 101747680 930290316 662647872 449283303 444584056 260569574 603285283 250472366 147473714 382610212 723883375 21904892 470675118 862338256 513672019 292022699 780116986 860651453 114257953 563001804 83077308 690501915 245771944 647302157 395721068 278177424 124177289 545416869 227720847 793794167 999111205 184469265 172303131 194312949 156814193 847543283 421297561 901657090 37741827 685051913 657719653 794028015 752574908 802220492 314738714 635768570 855227664 428826512 56498526 544708833 598478900 980036668 164227474 80951161 636309146 795258243 325809358 944266024 296596814 410536925 372486373 919243189 691238416 460216281 234668877 388373294 147999128 19364296 898441804 529817489 981577433 815326409 180107404 62092549 507050900 840007011 472987262 382764193 22807325 815670800 951331709 248230357 741040887 945323714 765657133 979378993 812946098 687935389 594815291 217156028 157071102 33561065 55585313 109955471 981936172 709554473 864681127 882011527 855545412 572039762 264813330 938595421 161209402 437721683 509043940 827792476 869865144 707710815 851187918 843562178 975137400 801180218 827195390 643373603 579917730 489802984 422998957 567937907 364349282 946372484 696384210 918895441 259545949 541720674 273226704 148299648 562019573 773473792 188880073 705855007 697712498 902629855 327199990 418001510 497653447 289278215 659694179 514142421 670519782 613859661 733576074 563234134 205495618 937556121 961362909 610047359 46580401 135626892 143296570 366098151 469520426 723675777 92221403 483390616 779628132 104483659 7040035 281508826 416192466 268946349 107205645 417771447 957954100 811328421 847120820 783598897 714468771 944712805 303887911 557629110 777129846 310260612 794570591 342214001 561292433 839745242 125097013 4160697 948536088 385249059 496393778 590753752 230000531 275764275 874064056 410992625 814486071 461596181 908062316 91158779 122699422 389402762 138257216 462823326 673579602 102192646 96169869 140826654 796462096 683922366 787048393 536156167 35170490 339658603 363333513 892354042 109407889 701801759 576010921 335222063 334146839 816930523 360213615 683569070 382384717 385512361 820833951 661558900 905955800 978262084 794644590 902336463 193731651 410443619 825390502 735436486 111174731 313880250 176220805 319535168 530057029 720234406 594576170 984858209 165995583 78164211 479814360 126972797 155610463 910237996 797431434 958736135 688130489 986865199 948334112 173041625 769755490 263678554 988108750 683951846 474798118 564997517 197692380 311689957 424297478 854875859 305080400 557441494 620009397 732890661 142965550 297809113 301394019 329517201 416205387 400346890 382373270 338265580 870517438 383493128 559869421 997650534 864827435 399461945 697764997 784843585 969315382 643504537 724668777 682153007 534461233 331794216 313909600 331724030 947856243 397786907 981428327 892474026 221714741 485684449 278263021 594633101 455087151 846961957 795486708 502886863 880802303 183802767 643160241 396150035 561320827 638588203 837096324 280963147 179282399 987840671 36107171 214349812 5841413 477331167 946359425 329534623 579478650 259924895 270991093 104387864 626182653 695748206 307094389 962141741 745583831 783084519 566567325 17596785 182916922 86978527 137372458 173367295 585187381 90740617 299433223 889206520 702541027 42456456 482872121 101721354 764201667 601497194 757217299 241537059 814555485 277086456 125018876 245319956 27613171 390086129 596777354 833439332 81327274 344529212 126804704 352988134 369807411 12836440 571356692 698387028 767589476 191996287 100287568 222088608 14422130 986243392 133576362 36793847 886435164 421200991 533064601 581243301 74124043 746610122 217296344 296390246 889167890 583579181 597871079 646459669 186099733 615769555 379179135 244326175 102323072 377002177 580302377 799488042 153629435 19392127 651770481 770367639 922712297 782812557 812201396 266285565 108890299 299937912 42993129 175675430 100123249 896120897 454192814 629670913 277424907 843388510 804329552 840330718 213447361 560135320 208996069 785181861 277317234 101896235 218314098 59378842 940591384 655162303 978426790 647712532 988297866 133385804 12504701 116825924 752952013 988383537 128968282 352693456 633579712 264928136 127745389 831316585 358155288 406020921 714393322 913112270 701590088 187066440 653999896 573185515 92820391 996123731 744454981 452980585 44731835 906679114 845372931 215171125 790399614 340821128 181224518 916336704 391104330 401518959 205271583 435555004 694376129 889270769 117506832 324423558 530015199 527357022 255229886 690228512 975354467 887785679 24996273 829548129 412382495 815119344 732615628 682827632 988015233 848526847 834598894 901353455 181419495 990792286 417577677 134796814 206941673 187117550 83535507 690950232 883007344 36758856 385181238 469727592 77095408 383969372 48881851 830774357 475589505 148349111 484970488 251265964 132126600 528227507 941674608 499102273 148741128 855279673 864143399 356647652 27734631 757971537 702481622 309771012 521691536 544973911 636584047 826993886 730127361 874828323 423560717 622133383 479724296 827958906 503819622 194583496 400711900 754872974 770889459 810443512 222947580 762401682 258835416 735609106 644525895 776032319 490566820 942667853 713949059 732127485 698433491 1470333 320565022 677547282 625503158 780503905 697757884 973496238 802700028 656971839 349147320 352272407 782984570 75655007 448066507 726017530 293936814 566711762 785716252 859824820 751906616 743501879 128772011 272006795 184681747 609598497 875081927 924560758 167017676 115936400 172421314 609664845 101376420 560605639 979177812 831004001 446002673 749228509 120189656 485098938 685401777 769294671 944083426 313553055 293048425 793552087 784988043 335389198 898324206 797929982 639245837 402524757 352406827 169162661 517530174 198459853 541689786 725345157 175013231 736823310 598707334 767973156 554047729 507485793 611738764 85711338 861110128 597060182 447852935 216238853 247930328 946960187 613770192 130682325 749394677 677970750 68551747 549231069 170097325 543087832 656070991 571652410 168434976 774208370 300920351 507268012 413044831 766575258 301682150 468941991 380433941 653882635 680537685 464495754 458050346 179220860 752082479 46514639 280757804 949499517 718427992 903404545 705624802 379970158 850967479 765624012 942032782 560102050 600381194 746553726 566236357 447470730 869644722 920023383 811021296 650212440 298580930 201424888 867658395 928407684 253745683 66122171 76366067 268070620 465965682 966459476 560796016 505169647 676291977 563194466 625085177 566970175 767285503 105794058 87333893 199883421 100813487 195079306 833676252 731598216 859323821 746789133 6784184 432498194 847423382 577778346 455276657 166234808 964578422 716090964 129455467 200274594 711580884 707916678 79057196 573262294 534734525 677453100 871942743 399128177 971073785 424003488 476653716 228831884 900620771 948845859 459069104 754533213 858657530 876217845 428341039 682260681 324248986 254144521 39859133 762931486 38256156 405851203 348558056 739903588 588020354 332599216 586402963 374539540 494191827 35826684 473074119 402955926 409246679 132288063 888938223 744513632 6544021 744186835 222416405 284568353 650982628 756720406 867098430 867234217 218332875 719731625 315124081 11165823 568616342 668718118 715485836 912625362 702684858 217927394 266704513 519341513 359728952 259655346 916586314 761931329 563738250 919587297 677062553 922771469 131642015 544717361 967687978 542684893 199844470 682059490 169331361 528322076 522435674 420801399 211607080 270773971 703253991 559245096 666064108 975050564 738443054 539402162 393521585 969157055 598583961 856871348 721866948 457312025 987241428 673831932 451162467 799958632 41718923 799716694 427284998 22334529 806839668 551048103 235693661 218137528 269773307 268382615 865709698 672214796 530887747 592275655 803621123 825689544 174073032 861240878 585156476 140352404 276578271 932466690 423295269 212337399 792492016 491446192 172407058 40383021 150337890 949115030 491589190 976819759 444522487 595594752 642446539 305414623 675343572 396878357 177915553 302189342 670648555 775438948 951930646 781447351 987943069 651761143 619549911 143380046 231234736 590471983 118896419 494138266 222007783 512818398 239592061 753395190 140517300 256695865 14788304 107888457 440462047 531999863 541757163 637835437 971853088 234717475 619473336 520868139 347325771 670931734 226369793 558792562 266464569 323482198 699595002 55946862 961965077 718902256 676565415 429778525 629803095 662024738 685473418 498443180 892767806 360983805 807561500 411204069 703707309 39728340 603631177 464121396 93517209 675993824 501133815 147166578 162352921 231429095 773047552 904587819 893866980 286820181 554081326 117973497 726680735 217367782 143366545 700787371 846068029 101142951 887255993 481230901 627310714 503206748 309780931 99342787 16773655 493092722 926016070 635400686 695340855 384954910 297192160 207720651 117759788 44414238 254056505 546197139 964298820 776876823 730564063 258586141 432913969 790053887 646754686 890587664 315505082 353405078 785887100 981970581 122196300 810027033 751654353 774238012 19488358 550188884 448358951 983283106 910622615 172281386 460180149 292940467 231589948 979879139 225561158 667553632 763802618 9722740 185957153 488302434 982545726 695708828 166553130 519717015 587808401 563991988 862566218 35146052 791971695 634677195 833666190 240976618 30415519 880336650 509895145 57969951 927642375 234984859 984301136 785732145 226934481 908215202 988289466 407172469 64034954 603868657 465949377 353686769 417130000 766677872 849778239 499013262 991858656 642112881 132529520 149292480 634798983 103950949 691305361 940958809 804385678 560755135 465835928 106072091 4522640 669542593 900909365 26975892 703453754 754518448 57301996 207877781 360947786 515087319 956057686 163681681 874945487 174868193 53288385 713523920 285497491 600187580 950937136 499182759 138611806 90149217 345833823 356752770 663346308 316632157 617908255 314877030 543631529 901882992 120259919 375774212 496279770 731507463 221492780 761742493 167919941 717760334 752220961 749683240 788191275 129632706 493395369 922927330 921541696 749758807 7592547 1631062 276956296 372636374 82405868 148682708 950342985 191763166 11031288 678303274 582711163 109184414 61876628 239648072 698314449 730084245 181428304 820305795 759489009 242079604 511867463 666003303 522785567 543811447 348560824 585537336 949502364 269604072 291191371 419636569 278411070 197464050 161246394 413826484 608527095 581494454 320400677 15217441 248844562 547437693 739358884 643334421 676784045 870790307 627295637 350850592 596891240 640708283 115696631 193247714 327883286 752662059 792790004 879594755 401457608 163778483 396329943 170933713 171593132 814081236 441198715 367454248 755098246 356136187 459501902 732112333 232458363 916554524 43935526 505966350 988498021 860371294 235180296 467315341 539525471 757819165 317497747 322832493 487054958 953826969 121748431 922097603 652971751 513567283 862036367 965728048 828005347 103699483 694106671 286725862 48185532 556344446 462034369 769684036 329584552 205957107 160375355 540355947 258524206 264978041 465368104 614209034 285153666 541150817 830687104 563927899 191509833 564182497 468471116 448396719 597708499 241016099 539119931 373387851 81299657 927425838 730858828 91629005 13179501 991976056 305314244 812575632 134453824 605747336 824979433 215045122 664278278 478708519 389710166 192615186 704886630 462808355 720887217 73465274 234427230 855062620 22228180 768229074 961623532 875384681 978112068 819099786 648541857 820087958 926929300 490262303 978611676 94170222 33436415 117810675 567798136 595303261 452572719 196757159 429516622 894692925 533146648 266059359 327631110 787330584 418281912 860448377 665612071 987242987 999483674 49602352 950925003 491232762 883387415 87880944 26879736 735509313 588636393 313591059 92230905 349117939 42213239 663382444 400142131 559543091 425668235 2179264 827891209 390418226 758347866 334671311 212042434 152703870 363648691 494463809 643456803 669402946 578340630 893647905 655468494 355924291 192994604 708572913 144386657 707162503 445934423 25371218 155521675 235227274 33455164 320962811 831710503 686074382 350452461 716789903 762368922 564823111 615670 656263197 942572167 901178689 689969872 202781482 742935034 53553772 945787101 430789577 79807179 828406068 740366291 874356778 311349845 365305705 775069774 972261116 330425383 320130623 323046835 583098755 858636033 394287310 479099257 459485302 639030630 164478281 754227642 395214047 870557689 925872597 286133005 985672890 960888337 696540543 702582562 74423188 843996757 649866276 907114741 255115672 990321556 78273534 879834072 476098275 924638488 51617628 483508928 153888866 692290699 282505933 332714414 134610540 403252895 805874656 927621275 228727331 575187618 586525384 377404409 714026009 796220371 772502063 846607091 660249220 254422837 648838042 802327967 304609262 520542486 852140539 336627265 123581416 847100581 892502245 394228957 800909837 598198352 89763306 20769437 948926491 136154641 24047361 824637721 866153183 320688679 367600264 580120178 664067480 645133869 591909995 367232503 944216809 117350454 895875143 279331999 235896119 906388358 105650269 941062527 76632863 723739360 444842682 483364159 829985803 822520697 89503497 661817922 373110069 841230011 305076866 956551974 771436954 251010074 138116971 874190436 505308054 61325851 766113012 603954248 607525088 409788025 72116265 239924164 515696019 241541124 323374438 929561403 756381092 748383345 926329411 597716567 694840809 14588179 513098586 599372405 672473236 419107570 57975790 574727571 271038511 584773023 524138762 971705121 973458244 639632817 727205046 87133343 47429732 582988001 798073431 608818895 449907489 426906716 672774097 756017366 150115469 544582264 399927066 23669797 780401694 455972404 441960201 975109475 299137999 125904170 679160178 869797350 559332860 457232399 34880770 681854482 383780232 296463307 552328450 389502436 901949679 118386751 36580263 241422196 786344691 555314724 887393786 60572379 718615810 867744915 428180807 680570996 330418235 774783602 930042940 145339928 681861109 631872958 323108729 380466057 890464964 422766332 912262370 598794884 678400037 584661385 685416986 174106125 228245492 624714496 531209103 832769758 914776963 302443031 169373539 511570690 132356856 133215825 459905495 323053281 651680346 230833000 816782588 942036020 564479215 165025010 342431579 217388174 709261991 243537853 818605949 405530975 515525217 634510557 238653416 967286096 925456298 163898415 990213309 627776491 709497159 756642239 141503487 779596360 187795599 988426738 155581576 400402261 325782019 956736941 459932483 929357342 472513011 591478137 818909826 46707292 791664939 777117786 744427074 681700508 241734432 784180038 606200763 757717650 844332635 782688755 751709787 425712151 94710193 307480337 360360834 864397106 538904211 329853315 803950304 299089592 299271965 779935681 869256851 356828509 695500615 564118876 417477488 152947671 822760351 542960145 105271868 517289923 446167447 947570483 280858793 994466941 679368398 109698968 569554767 917017435 765909133 805247282 516882374 498347689 664517716 767120171 902801520 433087891 274676874 787675291 304935223 733461322 200983580 462185509 427902612 631312450 79516727 380961523 804300190 80420256 168910030 584329913 834023237 959947691 981294524 454036706 875161211 547545584 951181028 483295459 81439161 466617594 686788987 703258966 557690957 8611078 517357366 300631556 97794292 886782867 771751731 690013372 568452182 712622482 59163519 749804065 493690758 653748642 461636560 629173718 410550783 729329265 977852648 566471217 420455471 372522559 990137685 182717516 344365764 527291008 756221230 781273430 803517728 544327760 243506899 865785476 281145082 241709411 877895903 967582560 57160497 970949511 650543538 439664563 412071445 636991853 541293415 982715399 541947496 887150158 40140995 982221372 319840684 907245441 757212531 861286340 835861984 900998598 847314389 105945184 560217761 108293484 854694138 453537144 610559421 499767388 749677098 380175410 250540251 195365747 62124621 881902211 937664673 82370784 554799552 152812459 960009742 800200746 312060902 413866650 101965288 425478751 768905678 809602531 872930458 652407486 193624054 648132838 904759636 300382163 514032710 707975180 535335177 589196777 980570610 65917304 974768568 975489731 444290240 649568040 651490859 107369137 653255323 91477124 643088921 238935281 504683437 455571850 938528455 168075640 548073400 746913301 219160132 39611505 743498754 682121803 437542558 702738027 426425932 430337642 859966235 244770316 768519585 427863487 92502041 422035298 881900542 242715378 138919783 222672593 358715548 2641571 641182854 696340982 504036946 394233263 129768356 188969194 929450175 13293057 813611975 908644982 605553853 2395764 392761814 573850577 700297241 698193821 661983956 644243338 988399054 409882574 456485869 576518242 105524090 192792857 893647819 290141230 725230064 186290682 895044568 319701053 325468505 249508723 723003637 628387016 654295948 468630557 776087718 609431153 3153437 903905766 562329700 626948040 582654335 358953543 826404815 935453842 370134988 52766033 681260606 650812064 665499443 79615674 108978479 235950192 406413323 635881247 515221971 719416268 572037262 653811462 436582090 218680928 941590520 900453646 819965767 386998578 25284419 28044932 670828288 777505933 478307302 144202682 804190065 396083670 237347625 248551219 524688145 543384471 756780698 746146816 479311366 938368561 987228868 446130066 193569571 736328231 643168476 45985972 213336871 408710715 448964605 183487922 285536237 651284008 738839439 851337838 404594041 686941051 53938015 255949011 245164374 376390241 593786992 167822028 253802368 10827683 543455734 648136844 727572825 829759237 631578615 639648145 899835117 84379422 607179735 597308085 467934969 770131657 849002464 398219761 577299227 954990673 202610379 973908958 749479107 806426163 694780104 671255647 508459316 722222713 444341441 463769570 267026070 967611950 861546530 57636149 786059266 629101140 186125142 658991442 610540515 74062837 135467543 583902014 867044562 667093944 241005223 412400544 55735397 360221314 839858236 937323344 513823044 913990674 785978292 138766932 837154583 298545382 869922908 480501510 444957623 227869494 554512486 27388307 260349044 15608569 411877827 217538329 730174809 561802636 254727127 250511107 339644444 315661531 833472973 283806060 368528524 999548999 679102797 100558474 129612490 77463219 475527722 816925428 855461217 580921646 187623295 220840987 797730329 993876204 929108540 609958825 752740155 168865767 688947792 689607331 461692121 238878146 399412698 397819922 300024139 73979916 110391936 949101297 262604194 241966919 6284847 28283383 970291928 291275392 118255603 545831465 413503857 297608804 527298507 821213188 216511684 551240972 124882348 121058908 569080708 407546177 781973628 101402115 884099829 394771792 256956357 519614430 126539121 731999888 823194475 745361435 581101545 413911247 113083519 183310392 507308623 36530107 252859927 953540294 833301743 306379046 150064475 334637709 723606684 758326957 972205680 980309127 572352105 329518924 51774043 213784954 315616320 745472389 199731517 240498750 569364834 507305885 438043125 19471589 571627915 858875073 633131501 807616337 797294226 200487584 696776285 388816387 648944554 767462546 706602775 537488568 541363536 2394428 31339442 168886217 460126852 924804325 130234080 580849753 717114660 70017139 399317361 839484714 3949724 670615421 613014125 732759640 685174619 289141972 451671381 223723478 724294356 193520744 168770844 181978038 931645120 810943851 315237963 93685609 697698962 53474092 80481925 364301322 460151034 545296825 679963747 659175686 407584622 69530695 515004217 729312010 179180788 259090574 430333820 23261301 194513940 811738921 587610781 541345442 115470463 847363511 980307115 309789620 985085519 151500621 710908704 482024979 714770339 481967098 329435657 360149169 392378861 67814556 407840305 751502212 520068078 127025379 699544955 314411469 651223642 975647787 806016251 861685576 370583421 437939554 235474561 594846259 57223240 301397400 963522065 184851765 587761389 709184831 742577040 844974094 11355263 972842035 79535343 638050398 722330860 326432253 350367180 949778986 716625543 558906291 10060237 665866404 654526987 1765984 241318434 721644017 94957442 127729553 677771453 842593070 838129411 796532133 426248071 365325772 584595633 573850354 902069399 430330693 548049433 813056265 2392243 251536192 953578977 574832855 429775049 320592084 921539333 849880513 943968334 574254714 62457580 749621210 183478140 704146098 310350214 788734459 594012512 144110165 282317715 487922944 626992486 96296866 858429150 890402579 473993042 10787877 136237550 430789812 105603696 360014255 722179466 174109298 346419416 402940167 806026846 712522314 269546770 446986680 845976409 742600902 665310557 798317699 741582176 955944678 553007845 269282583 342409758 251872503 37508678 114387512 484386134 724644151 510744279 750027243 273497130 717027448 342302060 771973977 33588675 739911767 256366356 578980134 836930426 851089799 863013103 509872030 644106403 42049766 894342842 852704410 180108933 420381555 155903832 948412442 150880202 25216358 884953841 646688647 162714149 28143405 447833461 779009006 992970238 472384727 999135182 63167438 43352223 249188276 981071062 884910549 22881950 606237820 446153299 291128503 927567310 345226321 379477994 365386440 564495645 145056371 734255060 885970966 887195243 893946291 409317673 787365070 817092300 148949836 454030121 228090826 696848649 29899685 624880462 384555425 821000247 858025179 70543053 446703188 467991749 932548568 912522289 451861321 476492695 338244980 579500147 62397805 357448980 95650578 881044183 184587701 667150923 747311779 478876883 756326139 210678839 586715154 200740281 94351277 591292680 204734551 814834689 418656200 806268150 289067330 64170438 645019430 943086120 93307698 640344291 332140344 529969948 618087509 927143014 187357495 907377321 357058366 640261520 470410034 659610151 383433104 895142409 590459156 60513294 746089484 727501041 613131897 605625067 458769770 593933606 665158203 958842464 759213033 513158759 506228344 600980027 800165868 484477185 707258317 490551763 35804991 563182940 483324596 977349273 327543886 828910198 480911895 792312384 475433635 789677964 722388023 283090431 454168394 835102489 760602722 389547434 477617389 309961083 617645843 759493771 864256133 939325104 181101948 360101095 542945944 629136192 511274566 888799614 682849099 590838584 197148429 994662926 711208323 71701155 311329224 89214534 353848669 328044961 820124315 337315510 930672496 458682400 655187730 466024902 174022002 829877859 135481060 476088449 285139127 50652205 836723041 173916502 252638917 575260253 905587435 802129274 796478129 264857028 202840109 436809501 309988806 963718810 503962237 631663066 763351776 520863810 523543090 414903149 544513248 946591645 900753349 185368784 10738242 40847732 563739427 539439896 150307100 399515106 702539406 89377726 986859703 983373439 462274066 631485092 713305882 859627121 183347425 235004500 282338931 740515306 665793032 335380741 521492854 983222286 139469126 33952254 15154949 82381940 737529474 401507989 955928828 849197722 552429228 699114472 232365146 521758166 571484081 123013155 167394803 894773082 145032484 65671180 506130346 931274047 97581349 774213961 358575405 472153990 816419772 735658635 910715092 583476363 924502578 19872624 47582506 190045506 172133924 305169084 137239872 423496384 583871803 327000396 789295922 271828486 997070405 241105147 324715920 163592639 232476717 292178256 894170681 759284415 227297413 728400713 515367206 336883291 436851054 975709870 954139690 648051081 832218382 297837461 67999655 25024119 742732314 987827856 214632707 871711362 65950315 244414844 4740095 272179801 604171488 936108351 214215685 8125989 192696211 921874017 276002750 576048196 677363275 732429950 762054947 740860414 942189129 399163544 639961084 534018330 402227052 224238288 399799330 572243549 804517983 427213601 378740995 157793949 662549259 444768699 397808692 550486056 849603596 680151765 362273490 718961504 995299489 769752489 113854748 146510477 782055591 608797208 897918653 700410381 115016634 594502591 56664117 828910409 695479712 203987316 18031131 385543838 35307207 166847405 977470421 69505912 227717822 719009268 774331320 175156868 922766712 879422437 116575150 558082227 598590623 968206788 503995586 848081800 886699150 859276002 474990631 557162800 752069478 682074259 318075915 407499635 952379769 80170514 257444289 633518994 234995378 487739434 79905097 599341726 89646202 248841691 658501029 703383313 790181630 494045876 417216662 818752840 963430874 484409164 383397017 626835880 54369638 370881537 34644192 674411268 15197895 381529713 290509100 260911750 410259462 432345341 286665001 127692577 497801186 503420556 921991309 619395234 500728101 36586495 829540387 683362623 277288880 531086951 582954976 515550650 557533424 30144192 33750550 483270020 156281499 963003029 941027362 787666540 343537820 665326893 992987506 518304088 963851196 389365049 66816967 955939035 726815648 646343075 65300284 944068777 57797092 741855054 709708902 266408809 109907051 407896764 572490406 213436776 863367258 387220107 868605154 483758669 957423831 145765502 93266618 894148640 935580292 53972865 717909698 718125606 261338802 619912928 406362897 386801593 88590550 876399491 780804512 864918345 549317627 315168186 491573136 445297902 546149409 481838017 284282979 812605287 272303219 781358418 419065413 869832425 733609222 915169450 132364080 489720518 761550732 998009491 253091653 803695247 589647736 498398163 440220113 795709188 993262657 647441151 905335987 476519634 943292758 810728865 955975523 768751829 639375083 153662725 43431424 831782616 422574094 126994467 103605328 297663264 20109479 192757173 497188973 10873811 772047595 791198095 345860408 939962533 241514884 931004772 675662479 26387187 856159063 552904921 181502729 591750899 607403457 155987536 834524104 193170447 309761830 420648701 954001346 423397496 400443811 962715092 248746310 658547483 164687811 818788810 431458485 191511173 271600974 505400505 566490024 663643177 273489997 140764620 779395338 574072147 745290646 81222390 213923962 291116761 684760851 456118318 133302883 45720495 6044758 141650861 866156178 522602193 246203700 38617154 145413431 852238214 247959347 653140976 460784365 210231871 549457518 654285183 689170855 517796975 949524422 734141054 532607495 261162620 322247499 321090271 397197124 415063210 726105458 64989846 281780174 367945269 127799480 627952672 333200125 357716724 587058248 667553124 756765259 127486981 505867348 245688258 402383498 297643407 646305036 422393297 236518541 960114773 669671734 573109926 543778853 872205891 769911391 500865235 420356510 415352632 845655787 98172442 309875898 340482267 26774207 452356301 525255026 866801771 917762818 686841790 553528551 762430057 80006206 799916257 45434237 872256948 16936655 150497002 45855301 560485321 494238042 798144627 422936666 357100234 108765430 82903768 594577637 674751324 529394253 528471485 216862765 775204218 60732903 885130204 897799930 954462855 894242596 987947770 490547719 33078518 422729675 506934410 968953213 21917220 798428526 607420735 211075818 121835207 932323896 319468859 346998657 782961871 440813920 491824543 349019382 410925426 586693345 534501656 265803510 102280539 492877272 86412561 75632918 970941219 971476817 253459325 192389361 342937764 876458376 922502420 806537153 958753339 100727844 254323627 519945060 929749221 115828876 265685933 423624524 1633901 978497308 394490916 941544807 117803613 940319595 540033307 396586373 609403974 558377609 926541655 772380467 389124415 776097599 184171660 57033140 383527969 926369973 55529591 83793840 320258191 154837805 319012532 852991616 61184700 304920914 814370947 646711636 305470841 941203251 283443440 511421885 284665250 482667311 954143998 243482150 36881 788563780 244503339 980432522 172627192 74273081 75641090 957113102 660827157 834673562 987516075 380523177 556488853 958839790 887345234 508476671 996685308 734887201 410428997 892136419 866729012 899381831 421656235 123502826 571017623 628475817 318069821 815513789 446750035 267282730 825458540 179490393 286793859 132361863 387635775 516487460 6834095 429387645 683782810 368123038 186962172 198746317 516171287 986932301 249109292 693241781 900260410 381859519 855808882 478229172 656294946 951639942 276003448 719451004 481455937 523555778 272903518 44132864 308914591 640416666 763690384 734130855 839113387 212208017 125970198 245780002 548283029 266206755 584230928 146452752 123183055 280913569 51703235 919051700 363770214 205240303 108091159 423180091 620869186 992369501 455664326 237435769 36483069 884077296 910540223 536124748 540109906 737142204 452816895 187441398 862526717 955690974 246976077 364556055 62151861 714231702 795185989 925421708 68712373 899202700 895456569 67276291 354216743 237587064 105899734 837481470 192075786 201973959 786880377 442073123 111274181 674436279 969839619 676545371 266905639 516480034 213096189 981944822 927477524 807182686 497167026 606015053 460324604 653519774 10500486 954555381 626502124 507725078 223114174 5598858 803593724 154636453 267050129 328507736 803480352 831248370 899038128 899979174 431031831 170393033 264413778 978513271 196209671 812730609 169590343 228312291 353945359 825622470 55621852 440101103 877355364 457956191 371643668 939442079 349016628 790520807 786489662 129508955 518918223 306435312 900211732 646431501 738483992 63880269 111795447 602294659 96148858 284324734 146773502 334813732 487425938 620675259 522720029 129915763 552907033 609062017 41242641 140899285 87491640 898838660 690840796 524124182 34444169 910812817 661032815 275246947 606104901 671991105 237880656 553125527 171827527 975155332 730181454 951031114 442086482 588291149 50795899 723015137 664310025 562103758 763904808 316473955 420851556 55341574 317885175 848113966 117953258 117653147 49748637 743839176 866322219 2529521 487239967 346282225 407582612 432030501 133686461 657765673 877103235 595128422 928802724 344058863 267769401 794023720 971936413 396498544 616143965 71167457 518135739 995708613 299818700 891152176 700332203 336069517 119894174 895823592 125783048 436584127 963396924 148853399 368121803 347821132 48625603 708688623 285440268 84526315 664718022 8319399 63983522 730024392 306977029 138827531 96510539 820369902 3214779 696587717 347532579 369132820 659810001 47872919 182655178 373601875 540008742 974829242 31387824 525626112 942209186 782705094 407731004 445294223 295860354 528027122 745479467 701690521 271718300 732628064 249999452 830767949 727080064 69987607 763148537 429857467 553477097 506456982 90814139 27351556 678054897 255524419 127438533 43630464 550238012 152115011 243827300 669087230 943848743 693690481 748776201 294847986 971680110 561916405 586870795 487027399 64100047 279122877 917261931 750853988 309510353 839744992 683023803 195615087 993996305 679930219 138290276 825590231 549817392 184916336 577273062 277699437 697960894 636603063 882732985 835053717 458317060 738473281 361992925 44079951 778238236 5775477 568682305 969867631 504073284 106934687 420343705 412063046 518052907 567385734 395669050 161991005 373834093 461532823 976869706 223262508 536963833 504881678 988315273 372558263 170873553 503995581 631921380 528043652 200817347 120572866 270226140 139380233 286711748 965154584 146990712 814544122 925431418 864336216 920191390 662049335 470071492 878374273 738850205 923447777 231187638 271444640 33618928 110328452 860320514 455914295 618484454 810108228 798767206 224679487 384302405 561536476 158719442 80751302 918546904 10173042 535900533 787384373 128874749 80769715 845099736 754996342 253349210 119736580 132348327 287251393 429080905 252497466 412757167 343408317 43506464 930160969 68400651 982668917 146698700 550315999 649291260 177652418 492123506 939291359 629779086 302256872 25661494 357578385 921212724 905384211 948829531 956435790 350549607 24947012 145939738 911882577 713064503 672607014 875551907 334855268 618554976 157209943 524028518 444722117 66148135 613660820 682705101 696848998 870611133 858821918 986420742 430160121 507202066 61608670 324988749 718680186 512948794 60810624 139440301 694551525 344965119 468207469 765033317 161515830 98262594 595994787 522198499 557158422 662821199 746450520 150479131 621081861 102374499 668714500 372010150 695029841 157142698 28914720 404019424 627127790 744064160 293537327 596750001 480515145 571428016 210120580 949646596 228253080 833150985 25254690 902512533 187053143 352039262 615382592 979396443 828684329 219847291 529165847 436333946 397911221 74624974 592447997 392695569 87525315 997555332 557842609 355225458 564612830 103801834 362356248 552132865 825825674 424687518 519434787 730408971 95788500 934960210 123999308 479937052 210715906 333033672 925898601 965739412 982886854 259978020 907984707 786816012 340794983 212417143 99673635 507332771 461763465 738003064 856692189 107369582 699054510 51330838 823000581 740786461 147854679 179042767 85893308 127872690 877440155 609558650 95054482 860541716 688297899 347443709 376190061 248173594 105987768 607232095 864028686 460051677 761421781 801941808 961635596 540703341 667004889 560941465 602995514 917121598 713001227 953598483 1688123 635814575 979303892 542213449 526190203 319932962 187281166 20174571 739307807 302407298 402049474 281033060 825129238 991511731 277810311 453023647 181845497 610543574 606586306 236414332 33572963 4816331 632552798 706152370 51944756 496212308 220621960 372510009 852323731 371209702 465370668 792758266 713490651 573715694 352147931 382706036 694337692 214966049 218704098 461059710 598666451 814794835 486245373 874936360 656207869 754789064 863914931 455472854 478173647 410437316 839661274 880287749 819116392 645037629 64543418 497143661 606363776 181435746 774815444 499004914 476723839 941523112 125067798 452275708 949717080 129800079 486484450 618709411 260792293 516607437 75346732 142276710 266412510 596767078 909811814 171633208 899518860 449144915 789493341 752164404 339898597 822332776 875824272 538052613 696648052 222775615 333851562 699189874 19842275 993140311 974085010 781116527 942597510 357052371 59247727 303216204 933041349 769507300 531286727 970028008 79978441 792081704 546434270 291982562 482925565 8293763 822648932 506890380 986008466 125321118 232739896 87076213 402666774 442013878 905820684 272930680 500351768 471543257 352888201 996441790 483911800 245122943 976195098 102881965 691987974 717649957 102958936 854760719 150380095 914645942 966893037 822471570 314333892 886303235 750829228 895304319 104705088 196551203 628714550 940021161 783291813 555156039 445395267 603248852 264796106 576195201 304906984 78275318 275991804 815155974 115853410 471049014 110778913 240609488 243698116 862702396 539593610 319862851 328543819 747474892 209387712 88479834 418083222 402021721 743764570 801037833 159722380 225679547 56788100 469608689 860321511 647610024 721040584 614416182 890704652 418107856 36850733 443950113 896929438 514183981 346790356 611232665 563326334 249159125 346881181 987383579 778218354 264410305 36813059 992127522 869410324 4457919 104282186 437660571 661058528 847888128 514816898 153625294 990700542 415722421 8536727 570490436 578157906 557566950 834582725 152697467 690135116 352703551 478305030 515309058 427483124 420909611 530608873 320129623 340608533 186280183 722576962 1754252 858541125 516009606 559992702 780233157 838033093 805360471 536747591 56074802 621693317 338797929 461158791 953700694 403036491 866286854 548651566 698421044 414565434 852093581 757923689 617677187 587877204 801982439 937343484 982097888 401543417 967420696 394253209 728466654 898992523 56899740 512567756 960811847 249079219 733551333 298236879 17827125 482446659 267814786 806794620 561950292 271263965 849088975 961856513 713483629 478140125 248484583 146207263 473971246 688153243 81552927 41485680 1414552 990682321 408313742 313831491 329935685 761662767 302071881 776253597 248628528 453130351 813268545 383450505 908581424 53573688 347118731 447351419 62386980 668430250 989844037 909994972 217312600 395844472 863250261 616529681 435400905 292421731 56145138 669928542 431854713 785314549 926273981 187785923 260195768 460482552 923742237 952687068 931449949 225686581 790780385 712326917 743477267 171169261 637230607 749062962 316519767 635543828 628503137 303950145 421410807 710868774 374173326 192053939 571453135 643291786 929222277 127600434 104754654 73536984 865439110 588147575 229841744 817657368 408447062 723595328 301839566 633704909 769670002 249917194 24824794 447882412 542902901 395231712 42150109 986092740 301960292 567623028 942435389 602479265 225971992 791909602 383702847 490745996 777435239 858616168 865330655 4657143 655335918 312814799 438637195 8647530 76393304 755797941 101870146 828668488 41014867 76902521 744768644 31820605 313834951 456883577 348532461 333209882 398124257 223291916 416916725 882963946 217801099 803116380 730500451 113363786 692238056 255809282 870403368 701747932 217998748 930705101 997292415 802043418 432480099 994648048 641991373 64125616 707096117 583513935 151808364 113066807 792715106 737202914 509446085 207367585 204749266 643772504 673674139 136331745 281975217 490832842 501333864 656350887 974951922 735971793 49069494 984715801 794154254 584416758 205231177 961809408 223593198 62909602 828957110 904072916 574679336 785223967 970952040 540161240 180703286 163996202 78250709 304766985 393771775 442073142 7820043 787576886 931978405 752295551 594177580 34884630 185223326 609155693 931875768 803330137 240799092 13788898 510861113 135994819 455872007 143821872 407943511 819311961 205624155 299916465 812424689 936829482 176677302 981733855 899363851 787743254 280342748 210042055 507030946 698040011 17012870 672645727 786721116 177384484 486477521 923364777 876190098 284840342 579261641 891851777 454022688 839610785 324578386 516941123 230453208 809397672 490782403 760732025 404870434 136473331 525709463 274817489 110772563 85536290 397241653 118903938 811144191 968477234 903916756 239316758 679755009 591643706 587600914 373522945 138342727 991868312 669367246 774313332 65395637 428810170 65472568 818936796 216152491 407816736 765321713 854741729 696572326 754389593 24538603 250491442 793707174 466037353 823369984 905500109 559788198 958865518 35108961 370669641 939088893 208607849 909570586 585500774 548501618 479032060 444003030 455637225 620906543 906717525 996289633 81886534 401903200 837944749 951701858 393239292 620997535 379389417 549377380 56884713 301627566 206660323 984834380 996384318 936528376 674747087 425746593 404200242 92028798 469848026 16574787 963156576 265048193 503475719 215201347 460314777 463299780 402110465 834751162 688485341 513633600 263977352 651807127 154266796 642273142 888479626 39326417 802564979 870543830 718147546 549916735 445149360 754892513 301981153 117220473 79778187 750321368 445584429 85646982 404198324 543669966 63053767 632773533 877887816 970077649 356690331 61990305 679057482 222824844 975975592 419146456 937202089 497619819 543035101 426506168 664664509 657988364 868308275 753272716 159608649 821232353 567800574 299023615 706743413 358471923 266978481 617626167 958395061 842807858 987066452 324448372 658251577 603288822 131166243 232540532 446706424 460803603 415974115 637315698 132509162 562616615 419595877 42581183 769184921 247840922 85662007 459204028 634571032 789205065 656106025 778563130 134925365 329536983 466869845 75095308 440939283 914070631 61431439 897297214 560605543 919264139 17269984 796102168 333778927 779816624 600433230 266788720 819447633 668475618 847329622 713645625 949962235 253684944 566296785 221590936 45360757 652739678 374819396 846946977 822827053 548867531 961444816 22746219 353824244 52460290 941736558 678186154 102494697 304348949 792882673 276765021 19259899 470055900 439790579 249170073 817387632 39155003 393449748 14706786 559050811 778596846 39928996 601724747 466780069 602211594 519029468 211590533 302605027 972747984 529679827 706702224 561408943 498767962 248469512 356212337 768117910 906719344 268526266 676869611 298724278 696749493 414317316 241743268 441114585 779730876 618279179 54982897 660196053 775293000 989511641 113329576 69081941 375953515 218092142 988599552 7959477 273274745 839705228 440984476 869999946 898897075 229358599 907885609 918893071 723024816 907311111 156850034 648726382 316637732 580848341 251899296 642281042 768945108 118766902 967788316 137751715 67000938 930886350 854610800 66792390 122682739 437938969 561322592 165451732 323116077 954328458 739515660 440617692 715121017 336541494 272061708 390287202 696467507 575128108 61218733 236422301 220608018 259615192 688044797 708874003 860863752 278010421 262082557 683096645 787653643 371848443 136259989 139159579 211643576 217428117 310500053 29105363 252849927 576375547 436697984 958094916 979672808 574898882 642020570 730852968 281852455 636385558 101334241 714006907 39124125 557515228 528483340 741205285 129835932 640373574 268960773 982060457 195284638 861996851 901526125 237954108 995926225 25966415 567520663 691968774 450653571 218376229 23128083 596394316 391585278 283847269 945206375 202638902 689322964 588475261 748868858 973472384 397148705 900168163 107901814 294457451 475627485 420724144 671735063 881286813 634708506 972922549 356001383 119839511 762200941 182592214 711582643 115286359 362202890 337410621 829442978 760158990 345124960 538339680 656423128 190764385 813612272 606795030 768197628 22724037 986301567 486819251 607945469 619647782 598649595 859479771 590625178 622994768 610586734 552888597 716933441 410069255 261045073 998439604 54212043 946073449 823952111 350209280 888958339 253178902 79532127 907859212 486944899 913066753 524762736 597320229 471210117 241481324 41748808 551607586 438233100 452984250 454528030 681152472 456952057 644708938 964427259 972073116 868584237 333846494 470743218 467481572 185309761 240407292 379483348 712410232 870169316 471231209 461113308 599551184 313063036 189625176 922773890 196226894 703718465 474265826 833061648 347904839 679498834 808144943 504813331 374153320 60650305 617120634 433171956 751986231 234889793 832344308 253965836 510440108 136086308 746730127 943005411 690294851 244067692 37329021 477704194 956419638 11689740 451030957 317842113 766231489 432450835 355578717 357448389 384216706 205031549 752727207 496781875 433054692 880013005 37633136 299457891 56394612 80838831 71475566 670659831 326053219 902825406 771251641 31754530 407400004 903395549 958715722 616624135 291017356 705567317 911152229 629184144 31352218 890616375 53282246 314268158 34723532 683630777 459413925 478726955 667146677 550403600 201331720 243082162 22176482 895267399 76864436 165491608 859169712 495664329 17083341 479618665 904541762 311237484 830261091 388222191 92915058 740859322 636133374 78223851 996576255 400616080 974781506 57733472 465554928 916847723 308188740 346835221 782884153 408703708 357563883 339295620 818390919 73785257 534022603 403628864 929338992 635406452 70795193 495228840 200486251 67625626 812835343 386660467 940540166 556545857 819329958 61376623 519867839 946799423 42975641 530415715 441725884 48698440 429707685 749876720 396792093 813720580 498941677 177835406 54685072 444160998 500888342 812282204 858333635 563273546 748923086 81461814 427966530 116219224 215331501 435563026 370804456 861031255 797261780 521148231 491975376 31558672 351435984 395233723 285778503 101065802 786465909 258419974 577464047 476605939 105306223 678667008 525167705 759839534 750634070 733053851 890366772 824162660 781713480 748546108 730200659 856583366 808762052 398959748 530893144 589040359 871101367 185513421 746217109 822817022 742653276 928247182 528594836 645564399 357297344 617135215 32434088 260419589 804349181 583808395 579682060 980339757 191557132 680323746 492777279 250426173 569296371 604051768 320297620 418281569 284280189 179650938 286988636 712780598 780511256 728784411 309569763 877137544 385151764 523300061 720836819 579346558 298081318 159512557 931360345 396995010 403305917 587499202 225741639 289828371 201850775 113095856 793563157 871379651 997969619 328284110 591544402 804124517 194217701 880608599 791585937 841118187 896795261 145500099 280863120 176813238 364712027 5973613 24636067 745713394 569660380 665654341 131807246 110030840 356049700 939648604 603826754 389081217 487110795 310924176 558331203 94298022 234435220 916145409 443210976 733102145 869955409 867583860 223380160 244380354 738480286 537073157 810172152 316252172 716825428 989632423 429494873 221207365 920438681 388424759 986613838 166255805 891705039 17415834 222623793 892281877 345696294 191228246 104323712 145051716 304652621 555215034 449849317 381057341 55235231 171523212 636176909 930542987 414663231 243559530 851673280 458403330 685974637 25637393 279565272 346135066 370386766 138520703 259793337 117034594 675723410 48886947 50406064 300409141 570390845 81482501 668944599 628659043 127455170 972395417 535422070 456843082 708076836 520276024 963362864 162706406 213231295 937769819 475590293 55715948 597893625 244020231 101663744 858902139 111080770 415889806 426574393 726808855 709802503 404510677 127671267 542237078 764312458 560813491 154641735 173986245 624958223 456629591 734534602 278480733 517582117 823750952 999188481 56432131 360664011 708560629 377688766 94211449 923363614 265116755 765961483 250419993 261559016 751972726 889521513 703452116 236146746 992528389 270628078 188495139 549337119 239603501 360999702 403239147 158280171 829337805 371561286 573659562 459092294 536729127 583996626 775906248 517909980 197832927 784422501 109544704 653851970 405584451 12081033 55993762 964811489 743862843 181514110 888522806 735316400 599181632 478144069 310488829 602719674 108762499 289819960 521751364 481966891 952869109 601022278 952032742 960031440 694741164 805907406 170584035 319718615 774293264 928332091 968429724 932973782 374720016 12799661 691084075 964646647 300431746 51994436 393159375 638788524 810294425 891384857 167131484 229370185 527177786 599758693 290473723 187401668 950764423 971771342 796796917 874710092 600758469 223564316 912130573 804783245 909142980 376704016 971189002 424455287 1350106 590561764 748301668 377580424 333560290 903833496 488080681 311199766 656938428 478643601 88765820 833114235 483595791 309773999 63938753 122599461 398607926 437960410 732589629 39129971 910133284 56654789 208120222 947180098 460867119 206770586 731069344 176660187 303886760 482274957 188959820 557961852 78351066 617000759 725676865 271793946 20916093 497072864 728818192 108286108 95694885 829814196 767033055 63463603 48248515 290664607 60914403 171520330 647147078 221132309 616774667 104083007 873478917 248209956 728736496 218409768 944909999 21194620 176612955 189944888 661239440 327334448 906416010 702352921 439134271 327495781 3652045 75019392 820167864 713014899 938697599 160587820 806142634 774007143 892230480 47574182 569576425 217536215 955647900 744395042 95615828 208534141 830322777 660668466 390969620 525397806 261997990 196424468 784727219 143596866 12339604 216853992 727977367 163435215 956753801 775442538 743086599 25206206 425350143 402534317 520301489 958147866 992995719 597952768 287583663 606754373 301897433 682840083 728183474 981089321 217415311 799956992 417921291 240868485 362271627 222253747 397147828 686494335 122942846 767046410 934209431 299830600 350990046 21687918 771012637 860865432 630998081 947948247 547215574 131970056 65064277 490087788 669741904 368628603 44599983 489598249 892679628 320505324 5239203 262347898 525638406 921380524 192615975 65086644 428370278 958031145 906435722 481994999 592368603 904775957 229862056 905844168 486075531 757111542 155327782 805236405 31313359 315587194 640187139 845731648 245313676 338970393 403766914 128022193 238321109 34768569 188713696 413336270 268078959 419464210 429632382 909158834 677365260 53897689 854313439 15405248 137044187 26649289 178703376 610458621 68775276 736417266 586855208 132908881 720942961 873958561 514089270 810458624 552258820 932071538 168159769 792095524 509662721 288533510 615186082 101206753 44957305 230136027 137301543 59863214 46033834 259865739 415669657 132304827 950533008 414914862 564670059 585060308 659287464 303369526 180982109 222857762 204323547 409916580 380694550 674104826 882550319 598328700 698342168 159338513 959340065 562892882 571938733 244825409 631534125 350488708 226663214 959717145 685065784 177292957 274971913 902977033 297030886 381828235 557874650 821803859 352595823 282632790 985384113 831420897 303630745 97990381 537455504 233713601 847173569 166603982 480143074 633348915 253532990 34887306 848385755 207856138 547251119 842551714 137161683 381307795 726205770 328405065 995577425 528561122 708874306 643373497 380665222 617218631 582397494 265205469 181885488 391256430 323786559 841271587 636309798 576222525 508997229 800097842 939508410 985078075 831523972 403233661 227102803 491409233 106245635 476206787 147345246 289635309 793667813 715398361 157475331 712455960 271296154 912417559 930069584 320648104 291017461 769023218 205859059 120848505 21011288 461525854 94121169 878288697 138793432 104312795 207508172 361253427 448545047 927331919 888417590 321893154 770222449 986294615 925625142 751256537 646295734 126907481 803291513 114480187 587717518 740545789 791827493 579995988 85135090 521508961 379307003 782220671 101401377 329003699 219116812 587067806 544292246 746016472 636345364 69801822 807966166 764715145 762014148 824660086 350020267 367125929 764792300 822696076 282116019 160828321 181818010 860170185 915661428 806206827 722930546 994334871 821358929 575749080 167795333 460692347 99637135 296817413 231416028 11432291 568977245 161338581 994833137 594635378 132705522 600070026 770008946 562008569 551497430 461354168 602008475 272129097 180914312 98981597 92376206 328281162 954635534 189465371 145687136 167687283 385359255 228858756 651891226 509639068 129928634 50012019 609562453 985083177 62032282 980288992 928903341 651254752 815321396 827157399 32794417 134509068 530398178 270903697 476762404 453394074 7002949 974770864 642046432 339197828 786211605 169245391 849674069 299800605 871055055 272490911 671243059 296491046 344204711 135826815 645421259 284653735 486705098 487646417 400581788 190760639 769104163 734889955 329432791 933822968 880455925 783893345 682262839 32896992 518864313 800188356 565573192 451510646 565702930 480336548 961352896 417921492 670453306 301741923 174510446 749502105 770477843 652953033 584801255 253646793 445890304 293394027 41227505 461061386 809175950 414253370 824844704 113161528 526917123 631707514 440217669 655290960 219947831 80250467 341890210 42546402 211200011 750958012 246732956 33746505 518102945 942187550 717078691 586317898 414273314 607229103 825458072 746748806 517909467 962388846 417478302 705336406 575032397 350089350 980342581 169597604 758499747 546805412 169059724 18866029 825223210 679656029 594975738 808772282 939662768 607156779 308488175 991391568 15755982 250779971 532673361 287300495 364470380 84350559 4122246 821031107 144042503 339696962 921248157 812477256 299621017 674449386 476128140 253247372 941255712 104795895 282016755 77586022 982135160 175816551 959873628 718423175 68333600 376802818 867733206 325553121 934674801 383999965 537027699 866952736 941113957 687136006 844354579 71794673 542044605 860875767 382023871 833129534 52815057 744059020 117454818 743833462 5930488 509563392 124111755 357535675 117977368 682411708 459249656 404078318 511661975 380078169 662438607 444433228 616770947 593344678 474673849 914994258 601525315 659874896 368328481 361074094 398163345 186982170 935719323 965505453 617398739 423166936 308167384 308809863 937065266 144448441 544156413 692902448 317869322 736274500 401056753 714454903 438372568 175981759 186215239 508097877 402035802 311795131 311671622 640495881 306286757 144455369 162544957 927354608 202401763 63944286 927346315 124213044 721506721 915920097 656446182 731189702 701428951 9939859 226509923 452911234 983095222 561329782 753073301 158384833 966442446 916471654 682634600 685719400 493863562 469690798 336433297 585865670 888667429 914873377 606545970 673533602 478610515 692525778 183348795 791700569 206949793 619522185 249157435 249780792 465382481 853737121 597939236 707361169 673167123 770276341 287372201 537690688 979178271 969135578 935570593 205959212 21273317 789952598 348868544 686761894 132263898 719217786 57000781 308438336 679267099 14463490 732967197 22602711 692276073 7280642 307568668 47141896 177593429 949872449 654000427 927972529 757848797 328847767 462918882 6560285 102944557 955088651 850151601 820895192 866063192 427759615 734762957 461303050 831346954 780162788 329042874 842218536 983373975 110982594 244795474 273878086 496976322 121961395 932077681 553203777 569083035 596806832 808009482 963447418 394811225 861299795 565959366 484451961 27601184 668987913 118018501 893312860 897975915 565044081 884301098 864955852 951902104 837224148 513805860 185046766 992284136 584408589 50486172 463960699 749885027 778793955 473428239 93743278 221839428 197178720 703160560 156438202 680444567 769369515 536256851 440094574 84005675 757020456 916928378 907428579 165517896 758180224 109247177 702114738 898734924 604510772 656198574 672129523 600793157 961269056 928665236 282945373 508144760 795176641 300807040 55086748 576570463 817423957 167154429 486938620 220654110 366845496 713975875 793228949 264471675 54944783 467323036 899922729 21969950 408848774 417607337 659942549 172550396 969770516 890986625 547248238 782828343 203738656 406021490 104664841 214575569 87359075 718059584 969507683 271952899 556966689 182857495 22486396 426834093 428904672 285612551 934504058 883127277 104056937 16628941 388274752 634739057 416051659 406748135 290705525 78380093 639234865 745626417 553544481 252946466 915467221 407313121 945021093 13282011 113300130 877011075 240920952 669327084 347809312 744941980 59115281 618546589 196170235 153924255 616717685 155398011 846030663 757764794 548126219 301304071 96283785 40496721 108572081 491984870 243564107 351197801 675653853 292551653 95875301 506003563 829301216 471577407 576480356 407599892 443951336 487576567 965443083 257600907 663455985 520951342 363737627 252945311 41674851 867436072 434032102 18598043 685519705 265082700 631296980 598357498 776520764 392467352 203053070 472962164 157557616 308100405 567957019 623772845 215839152 599682218 83684832 262971278 909354397 122549873 991613164 906702853 712626146 627945533 374817302 483810487 922425215 527701962 972401607 216447011 539795776 436146319 53027659 255582226 390032226 218594237 234151098 704829420 589914532 44216369 471237648 147400887 486811007 217854844 795779091 436962332 82204319 245260412 600388197 721612421 708666798 214368965 652578593 446775448 590334414 455347928 671962674 755457689 119191941 916295830 240148528 139508048 809896345 879653192 563460486 688015901 482595318 1670082 453161216 265908957 178359670 440095407 316748976 55999425 805728683 140397897 664598699 581612787 866555388 214461617 468419878 613244876 827535715 831917309 366798391 963613412 514441726 974036118 483591411 380744366 541217159 870532998 448194658 453331670 13941595 503249639 264186218 4596521 946049571 576732094 646979262 565962498 118089741 694487145 831005340 624054182 132563116 829108976 58933998 839709156 163311903 177343129 489033699 803100468 374135173 452615921 955809599 293675668 955803634 310329173 440883512 479924212 405744835 813685248 322976077 819224324 522483773 338078721 728854222 808990860 429428082 381588788 492702926 41748636 26686539 711676344 76063139 405722420 426790624 95706317 560400299 486482020 784525726 855788282 182143556 97497367 855423201 974477902 756033457 807688773 678474131 502500907 785330213 504263066 703146006 548207686 354046289 614571305 837995464 604159129 616733431 687029689 41327393 54518689 280379312 182825170 189120764 804354925 362874343 525487921 850769510 832152853 934184736 493748493 394152575 902535725 996522324 629996270 207690215 508401349 644012203 711755481 124364942 340397725 894354457 463172171 929100762 17672059 436071161 695945718 826117099 608110652 149442658 760396741 375331779 252108025 941218259 222747417 594065015 27819579 751030415 657947589 570597635 542963184 602489850 514835795 761736408 984307000 472139601 350423832 115023966 748184629 139255526 525412687 75992488 22017044 468622466 975779608 351189134 458051736 916972204 835880527 923314636 947989745 932912781 112510986 483654999 774372067 487612273 247094069 980970401 870059402 356410252 373093604 360482626 507623443 504352536 883419316 476138852 772638993 457197403 781959068 563081388 529300662 678393496 568190149 599518880 339529720 227451934 184474216 651540948 629025539 212618979 82368123 812956920 557717782 293240637 463105021 460968993 860544521 745280335 467771055 10671807 448533132 740389151 840470322 971926594 617304374 246029107 306073602 821073661 389765514 641519220 661189004 40930261 635722739 774380101 472460833 170769987 682494229 555053072 628625328 913849302 506086869 142465414 422387120 131465742 883495675 304459188 999921135 265754693 11458737 117045456 694337840 573857968 495919756 980353333 981505991 718356532 802034381 332806060 712700191 270187639 481441166 325859744 310598444 657501030 676569401 476923896 61061016 767474705 670227233 530365733 438635427 716105349 127257857 162965885 956796109 997085896 990390572 427759883 662460503 292190352 719725795 845291753 625548371 198760853 375810722 306484192 236793886 379413071 364717126 881329366 976257447 609239357 892579066 275099551 397085905 111268259 772177 821249207 522331600 408326637 137528645 941112159 377328981 182799336 415253374 387293229 447359445 611093437 485318427 313116615 385809870 699430073 888532402 990489647 68936099 292309014 130550491 299102735 258778514 684136225 886488042 682361842 379576852 707526710 397582918 635038734 329431567 566316378 434754042 48858783 481939715 696851197 137642732 354688083 210591736 518382492 832133504 539093861 929428042 579677293 466683552 144234442 975456108 723043179 811017929 467693985 602568144 837280901 629454907 864925758 603142698 24123544 14620393 840300556 30772731 793017491 368653146 651488842 304636412 3565704 363263760 676418342 518012414 175911885 813398578 555277212 341218608 24115419 527764645 424672416 13483038 149777686 250968548 16084755 246013423 200425270 797471055 906857665 850617881 145472253 583178729 776439824 255988965 441258243 780577290 447273245 853393389 42672172 286176325 909558497 424576762 623179504 23852799 345970777 549569545 926991331 684855919 444939264 432456168 992346821 290315355 475342945 378942867 575135321 707684841 380284581 749217597 16081965 593744517 476793252 875789476 699647403 565748931 591178625 885369972 395659143 587154862 65691220 165169494 725238856 125105241 713324572 190728385 532228867 877388039 263235816 48901139 879093751 357998970 997400584 543514065 268306648 179380781 992683180 552685255 345958725 278160709 424337819 675412233 494802706 131880663 787922728 46966911 607392850 180529107 531565405 826043536 401930903 32103234 529579064 174357503 566258660 435471107 816758432 512412635 598613679 913079435 41915377 960370351 32893155 782528879 985344204 947721372 785431320 780004258 493621514 251018823 197126779 149518170 412993570 260562597 916884822 748215183 257906419 79852180 54780356 100459682 978381822 487264269 441768517 591640680 416404769 80000259 730661057 26270326 435256987 410549954 825644464 545743234 857314138 781869844 350336849 805613672 902605826 49735066 978311347 324373686 696315214 23809876 454518283 704400649 360460236 707885613 416889913 35764667 670326774 54008952 270237430 394427402 122004327 175638399 532027636 12543051 136010271 830984370 112067121 321615349 552606282 605268754 842770305 607804560 543023774 867072831 789638088 568535735 330652296 184906996 565761932 11484127 241589613 110654085 173162998 499960811 870624602 11236258 309706031 544993445 914661212 348679447 619823520 964784047 595840888 315496116 337006299 597803234 21436434 499467636 915576554 345271430 850263096 658118360 969719429 946877448 798544396 309071014 731020609 721009207 650050558 499720990 947589797 594862368 674199958 87747867 312132191 432350790 290202439 337892161 841260655 292411371 214914041 239636587 601832333 502911352 606698391 947195370 965683721 212159443 136566100 966607778 634463298 228996157 831867202 179788429 388735752 482359302 746368870 376118644 674282689 195326591 356929732 692639664 562094047 745757091 875879898 618614765 525401071 683388409 975775994 965104204 41043968 26660556 52996712 311215830 212197511 414664020 373950718 769324152 226448738 473575700 423011996 535035102 240748994 12808074 302459271 28387058 215953874 984906713 548608857 461536820 309667574 929138760 22720070 403191462 462133670 633144097 660259603 821794756 190192114 550460171 319187338 916272763 106695089 957436576 859839667 678573349 28918130 889547993 675386079 940983818 387956392 158996714 805642353 517039463 386177153 975891898 715456543 652865917 71014271 157115730 727082575 951151452 611423044 715795802 914377261 11372337 105190187 343655881 63400316 639985186 589244032 499549639 253077651 33826431 128821829 298817417 204206842 122478555 892479200 239301821 640918572 251975536 463372844 670608363 929482457 762171979 174837253 731028664 710903293 207867739 595800687 704885355 259165949 145705583 454594012 405818971 532376818 232181502 893173251 572537109 402548384 43183463 739252538 620246807 497631619 994363723 852572491 265967146 757914429 543277019 739715392 497988985 945436012 152285545 557345221 93937838 831750216 974336701 684284164 51277117 928726266 170028095 919636205 72077319 222509340 47951485 63227830 765380944 403936086 313548820 681217414 624318416 654983367 686094388 561686172 643890024 420889792 942226573 131598960 98951067 856370364 445527422 247472221 531043011 144261235 742028475 485510780 393662974 629865936 49711557 754961032 71269877 806634825 639875547 37997523 478573669 960692045 575597859 89779223 164063388 921682847 331288477 409134270 913482737 504602133 931206505 781936509 619046120 360149713 930236861 441696637 727710735 679776559 934813388 243083435 480692237 587781602 396703678 425238855 325148598 949335538 495415971 141765191 869245465 5296272 1483303 10685218 49329678 805816882 119003022 661121607 541675788 528070588 11793157 710505432 797607100 576070948 211265942 49083205 533297633 340484042 175155638 359217046 126330363 29609604 360179429 654964727 536467096 388719682 648847725 599140368 994667357 619084912 426526282 160398980 264377126 52441647 138205827 219997965 345034885 652348263 662016806 500375704 318740678 702880412 767452656 678347391 767218742 408393355 937034161 185210450 936321561 635320819 408601929 106845367 682629018 853082808 907157807 120464741 494871997 745003309 418143891 692741587 712959614 356318087 992299067 974436304 706783311 805755908 597566743 570581257 950744810 277443431 877958807 22352338 185649341 48506175 684659993 628544030 807975754 24043577 115372361 849882750 204257127 318730929 594712269 590565819 684026610 412399535 951933483 962167556 554796223 593792305 546684455 381280297 478158904 839998492 543855115 691516445 215412405 744799085 104194238 377375620 837317179 866015751 122785922 269499460 195754479 583074479 279029885 719278338 267087259 979225358 328002802 458722267 139377188 479905553 74740061 636997591 702472928 143984238 181558327 873152181 375858931 810227683 447258123 742691160 938016393 605582696 173601747 765203773 122683118 36806317 306790681 113895493 475851163 463265298 353194139 307328289 3085940 887630107 303770123 543946171 881531492 987804271 972404285 738911612 628328508 848291930 785035362 360485752 734101201 269650783 46079240 278445676 934474299 586016619 351214968 767470508 264784956 181108365 701837886 254157826 439398267 396395070 889099416 778302176 51237712 839758991 869133228 903955127 706573397 869160246 519600207 846860572 849878943 662730605 611786946 119113380 702560473 289195626 842541349 57873479 646797747 451737232 813645827 426034529 187662147 687751761 16884639 101116923 224625241 134702354 551934254 43853558 692558123 400716308 174645597 183859685 247174497 378816614 21131988 285480280 988914877 821173079 391405788 363601619 108164250 462644091 343852850 935914102 384838796 300255139 482153823 317849251 601752994 438243951 700936916 761241787 280086510 909094179 411462019 267209575 516508165 385868473 40469126 880290570 983644272 436290079 271529132 318289646 265375414 966525242 763126129 362481471 916804503 468851340 860234577 396327331 182487811 825592036 788589980 45242826 414021766 470241873 426052895 916058200 813504772 531670848 410556306 908705761 121336532 247879030 544782031 983354296 212786293 138831693 43827686 7926778 267872612 286147766 800140207 551844561 805241422 21847034 343141606 514156448 246718102 978251574 92883612 277529822 12548170 299057010 847794743 773864728 527689788 835030525 72288960 133961406 13164745 23201541 235561349 682320766 671730616 272014761 687094591 36821851 813686820 213751754 776607320 47093223 482064828 296995871 983135935 4911642 122612503 250275617 912591311 400737904 975090204 960607101 271417799 762094967 621016581 364213284 371000841 705238467 30495672 860789414 585704363 292280126 78871662 923515758 749315230 472451071 655741786 782557920 339866471 306425226 237423223 942783708 881827195 68273766 118997148 197173563 740028234 981055282 853318733 842201861 623912304 12071188 120800207 610361126 537851991 384760345 356992333 359880051 569662964 113051351 769084773 100178980 819677982 614523251 328877006 809375808 738568885 420233453 428642901 180959014 561026058 74458295 955448004 698837947 5270443 696150139 490626216 567178899 585472862 787164944 461717684 492166879 950115372 278178397 499806887 560229524 824013379 226971800 670407477 985654023 53466927 855443029 99121791 25895017 10541044 694742969 382090484 999356105 563332854 323761556 519153889 413715956 101478479 178265761 175821578 738988150 565667477 91679937 660288762 822499621 697738418 92291408 964240137 808865355 351191259 738014805 163636323 525677667 125154483 630671119 2701080 805736744 337604200 543114855 259566985 440969347 198449843 355506250 161275296 285082013 376405347 771706038 880791865 266621457 231859781 658111683 782485036 467676056 59786568 583497414 352295020 251699294 885627726 259840146 445818025 501247083 646704176 301378942 324676729 972725327 361409601 272412904 651255719 919748348 26385648 25359312 531572261 650008731 105563046 68889669 382135006 766651884 217898793 450220550 788367470 497839509 90609539 277649793 718928062 848839009 418086058 601507450 632122725 859378415 512564237 72321917 272865124 123787958 413080963 662765394 757399797 968296106 229030737 327269156 342381563 155139972 971880542 407567949 183822176 524202058 909851238 365416658 751120463 359812003 326919298 988532408 16082461 378095187 187676339 544940714 509693431 39154022 513409847 39854274 940131178 297837253 367988821 330383980 629561049 103154681 587555301 787110916 408079739 235462938 246763893 52155552 269665829 926696048 700771499 493041802 740648444 401659656 315692104 179294349 271539161 463792117 903160777 707165939 527293282 123299133 465583887 169640615 253865576 901005357 901580411 375768105 976768336 725471041 605123121 355103138 882468521 56457708 799469157 179849849 903245549 607433286 351102586 815725499 875006544 574988993 660141770 336659431 657533748 930307654 547838485 360217309 449384050 582452479 97225795 652158715 674386901 359328165 328083406 964194721 312696102 899690691 643791581 627753033 572957626 859110217 329609534 993841268 985893518 70517797 86605254 889291388 250926399 291087600 965076458 442842046 946310117 672099857 961508522 255571328 296679471 838890976 512484700 405299244 973405377 990911283 623547296 681736819 944020989 690285579 319214576 706714746 947732304 341776763 110346435 392630421 379779776 585588854 749275676 383349233 655516720 531577490 855562796 16480862 527899596 167378301 389534729 386732759 968325339 260589614 929088632 80951268 787409488 932247716 554574979 36347289 186863191 516890718 610107188 757156517 968723676 774045931 47625090 160471326 36520685 940635998 852771803 133952076 998709601 187399930 812319061 201639316 558498045 336263015 772778736 937344715 217616478 684526086 666578705 646485781 991250922 776583818 316247164 503648959 579106252 792445604 467341739 689696219 250056388 38227743 618041632 307467380 618011149 718750486 15691482 137683896 127535538 93075595 78906708 606525940 405503581 952701770 828407208 46976090 364894265 95429897 634199879 230827243 996960882 255437070 950120684 762900334 802441655 780087151 358580302 389127643 331762456 342871295 266153521 271094105 985541675 103082461 205350599 513779821 315509688 774762197 608296679 350617244 612454405 288009412 858097040 571316032 186983728 418512953 908629538 646710325 719819320 782218596 183186535 623872201 438522041 201133499 197468883 824403776 915161257 225861721 239469473 218216446 842470900 684235921 690521740 15170841 172911025 279775310 3184277 285705899 730240182 43471034 420967660 563007855 123647988 125019603 100300739 280860598 940382651 95529450 54671038 455995688 284543089 610615826 591911158 674801630 59769181 721454583 48332932 73180219 909924446 295926841 367358179 449577486 725620176 179920316 607548989 35630248 630405795 848409473 786217128 442181315 714789808 983052624 239167274 27208385 211311286 232769164 576592244 934706140 853149433 919685858 591647559 671326159 831879805 707714192 800162317 892311476 288951963 972715491 108249532 219718046 883448220 894642520 682172747 203585171 535104016 161259552 644010668 781059080 470277663 601729064 144787419 782292446 845602910 221448916 853215393 110066978 113621850 334655089 701064948 399101502 367136647 184351076 157175138 134094993 635415722 101796327 145961077 626283170 684686490 857303383 401498776 506387588 804156676 590028066 625512584 496977404 897919902 314964740 394408459 697502946 840342840 335820552 290380128 776304759 123583642 856509192 422471964 497529973 772283606 437832596 85181995 152508833 539199698 271887560 437822942 886193949 52367893 942673037 755713991 967082100 56688142 729837420 408703775 911223610 281311790 285090292 520334972 377680353 769500481 457871308 166223108 331426335 618131919 259464543 292531750 776013929 978566487 473293756 453558580 566943031 395905138 983400788 632777440 904674453 926045871 336960846 198009427 466910839 616122917 454624516 705548064 434146186 800070250 129183297 617612907 471267700 927131772 657486705 584437430 180594570 139168732 970501384 566520246 900010307 631699260 770409743 233393738 270742836 338599750 974882354 760377804 659703424 154113819 272039897 77069871 9058186 987418974 661834975 478497548 153093180 384502873 371949411 920949012 281669467 274955656 323102156 518838259 908647794 594088858 457601545 722506019 49273019 840848300 398832011 31246429 224634501 39732034 431815174 340860039 427138834 259956908 264384963 163674935 655774720 298134477 977994075 61778206 952377909 805670123 95095040 583813556 996566295 490160690 106812170 693776453 68375861 55096607 209256731 681646077 359537994 653196704 620339520 756073294 996206403 697090043 220216888 778131044 809159008 716219756 396506104 562018505 69384091 581459568 554492711 558427782 68226501 445097660 619522585 50353462 871693508 104130069 60676868 906079434 389579760 995297357 464418358 401807857 895068791 838946566 705612902 434395287 387926197 744467579 662753507 111158560 27651011 769801570 904309156 139668237 556176244 753542767 208926119 290245813 776354305 205283858 778519157 996231203 94315394 961960055 803348903 342083065 316727566 249143712 299608639 637270998 736980478 170660586 230714873 702711207 997912267 551856883 901868047 739895706 874304177 46832651 148874129 81626925 781477509 567397260 270229316 575168234 281566609 823513104 898854170 802720425 600331957 939864228 110731700 803832690 716173279 526223085 533411149 201966204 253999793 640000697 389885379 675131254 938814882 327340675 830710962 360541250 404272166 728404399 961811095 117487638 115369316 313568097 734248945 514505394 154456547 869001575 547219348 546555887 916379673 133285389 719349455 653284417 436648751 965189890 151123116 257111527 572749149 908827487 841843519 212042379 758690286 112994783 125402715 272685471 707532060 60379649 30152748 593366489 109702262 562840842 998954853 676990361 649163235 645510912 572089188 425234511 81306915 924018484 895706396 14429803 360667774 299531554 880653848 640801244 683870210 733453250 999623496 679198401 378519096 883975226 409313213 638986734 723652759 714076720 141854865 301793605 262617400 483207515 627723395 946124596 396480994 237902185 799149148 585286741 665076986 830278665 317190431 945807246 18913641 674454508 676142168 446951888 742267868 603023419 156861219 988605018 498888446 267953737 187056013 972944042 257778264 246797285 141324105 289351182 435395205 260894298 607954175 224559327 872136118 712166593 605954152 693527873 872061486 680974512 687520884 91279351 805380962 867125895 802817427 778062917 839497899 29910350 216368671 662393525 717507834 788359422 568252425 243052012 159288439 81081872 784265294 530598890 29671913 694995100 667227493 725421398 92575214 285460094 198940583 948284072 421878805 115813244 571477609 460242949 632698857 194376279 186514666 895922402 349422442 293678547 13550662 955918963 725536281 773900457 438136194 75119562 14867585 395742210 875081184 585577034 443616527 287746112 811492547 267887094 718273935 514983765 29117067 529342570 499227209 40622334 657135477 785888850 413153910 441387582 42880592 153270436 485292218 388453944 956461438 220800403 18151353 133559022 560293364 760461632 8222895 935292094 635321269 690278972 907366374 928397188 248190371 719803309 883468714 801826071 640605050 768893045 782448317 842756343 366796875 378144763 205260249 359611466 695599104 565334436 759317674 388904790 892264672 396572834 81453148 830377920 83608839 627211063 406013712 423902015 376373261 532842297 583362169 423906642 128048276 131187905 766950377 510758110 482416834 642290652 605672155 324779134 457154657 513087530 339394928 246822944 729715752 404790311 669468478 314600092 239512468 205321688 811554129 46877479 595702533 134013083 406719091 980800550 26543773 416948297 581322139 223922088 952106490 160341391 933978531 387800608 780151205 235162991 864780769 120128039 862115438 793119293 240776075 145802421 253766510 746880004 430003220 863891683 366753003 942685665 983481868 47971797 311578912 734661928 575268263 930355922 484255775 950722330 593398214 888971376 777101997 847614498 448107220 675615543 565243409 442948294 212374513 858658939 389240955 774373822 925553782 750012094 355914025 650063308 547631739 785261052 303820889 280734485 209749841 281897608 500459660 347720781 486372642 642547978 745204721 443527538 424108068 73625033 55889952 198743131 354031972 122884707 517221790 629971367 126173847 543656216 973768086 847327504 687544339 206785673 339365875 786837602 8984474 516100231 447364746 343987359 879859473 338879271 615854687 256515330 409862096 891147736 164283716 313788468 791391490 587941550 117620739 737381720 43858854 188913958 864796186 306681170 788328199 491101445 632989517 574776688 832935931 353248645 501423855 437840884 483068956 80221098 941151870 890264557 471944422 498127782 784069479 560973542 903582713 275193860 31243972 997412617 31466642 371394457 706493850 299378951 902185384 558698056 935106423 907952421 835196888 97991456 180210973 661553403 718151520 34005098 865306290 742628703 296964723 13912602 230951409 549459511 30043503 168874395 614269091 675537176 380179675 784871782 456916561 220824003 1541333 299961020 688703323 580273205 662746258 842276984 116481617 467622074 12881496 743239609 918342622 336994731 926212774 224219873 524954066 302320313 521254391 632485009 72623312 617122658 272777403 674486443 37412832 415348461 971033584 489788786 550271415 839308594 400389727 762064448 262664926 903901752 229269428 660286339 798234796 896304314 492149968 27622311 365951607 201310538 439302399 4786945 672138218 362223915 608482455 392910522 582219050 835826535 82608238 674593984 95909937 591520401 848647866 527749768 812434267 702978061 3557958 856855903 319373550 731213261 474267354 103453282 464940251 160683783 340281196 572058715 765915255 168864848 771798007 186323105 468848096 210864178 503175008 911968210 682485413 394973169 593193059 921499661 960387205 961944940 600104861 751061969 674954150 926429029 895316774 179945700 34659028 236878077 879117033 674746674 370304001 969855515 737797887 428929587 200807811 751650572 648073898 249512586 101877919 880501950 985528985 404482804 127061370 370895115 243835625 483755774 272621574 292285474 676872355 177265365 878100430 839128111 446227938 934676352 723915920 876362874 230101366 434142455 969456451 491183522 556858690 129415407 948114926 119936942 7460195 665376337 336662626 955652360 552709512 697401726 634769337 610158919 198715215 984254730 296195224 282288506 821826269 489585481 491266787 766092612 355139962 447865943 691822931 439544498 919164218 541035315 797609942 385015354 230691897 231404318 903722425 213524351 61141857 923297632 632901018 992542721 324252418 36850611 243688903 470426590 467036345 85793252 285770520 717138165 621520659 374827192 117918413 584862796 432531764 868870779 841101453 792635149 121293367 228793313 188719426 767880610 847596950 571656845 224461426 157243538 525115790 736603371 882720197 497284005 604253243 598939189 12679838 205973168 976726020 341532114 332210618 618299558 837112183 276227426 655696446 902092050 998147176 682748652 699094481 556209109 3125267 471836192 780075923 277268420 805876151 114749862 314986173 535323528 251182993 238753324 974382176 455406482 991179331 538921712 76136300 595346010 217757807 356818139 61554011 789279030 926378157 458838584 668128118 604964473 765021995 557075382 26071260 904977911 918448652 74572175 323404525 552554793 656910113 388376778 565541530 186994702 589196224 331442554 864511915 702535897 968858749 69821548 94533578 9376724 275238797 826401481 435666718 565800299 39912492 637545198 692262382 225140803 68560242 361821063 152442105 486814200 440680525 415226400 389540140 59801211 330818859 848668278 464627005 328954095 866432160 114921886 413171570 105616528 140264819 712157564 657835286 98005887 709758387 394107794 590278725 599256564 73001403 300796105 470073608 737349320 3162688 998654291 18420895 451863394 920145829 708357053 829142664 378257513 139230027 621968828 15985910 812017874 77699866 415618319 387304269 53758104 755669656 961136636 635936595 165232321 516473214 984099042 395826137 277264827 507969449 101738559 527210885 725652365 283202481 594275631 151745150 295601694 393929550 683001651 297998569 10230513 360034404 681604954 632853598 409837952 717047926 188982076 461952287 21324465 943099147 714672970 263459076 794605486 163152593 925622383 853321857 3655454 952150713 909436343 143445460 644314543 254591933 200397 332839407 773675427 255830329 150469638 295007558 160245197 553154854 252447275 185990541 560585825 43101571 658390959 195974607 867854045 236409311 159730484 937380345 788147982 995180246 670099631 248204615 634363520 942969026 249004615 164694756 311593062 465369696 808247991 254503627 912142023 617676859 774720634 775816374 765078385 498425307 655243579 351851281 21493052 753047544 499556040 437407069 745791691 762599470 223569023 123248797 887640015 584133504 290506970 2588348 60650651 905758942 377094762 239918114 410195875 359217412 430469670 752173768 17253567 780532987 453628782 476973376 389302983 338311190 493421045 711081770 804423047 958677363 777717119 296164737 663552390 312188907 925144672 741518885 704915647 479589943 933658821 911382814 402324391 281099848 369978898 295636143 699706463 137005855 268089634 646240212 418948209 841040749 383438857 114573900 495959496 638066739 341532966 652081793 889382526 685257432 152221142 966917063 762144647 65674490 550884949 55115096 383593743 631826214 732888173 685166391 129401288 754741190 837837575 439778553 208232340 283296931 781678705 903164800 476729962 844466686 634956139 904524619 327942844 145697410 397438001 943847985 116594995 283643453 487216084 245223368 590199321 398506272 453146963 807259653 425380423 914816921 273412759 658407077 955229583 127808973 631836241 909909603 559926373 629189213 606545966 267683634 548690209 150152579 277686644 347589622 412910091 100244799 694800593 947984335 932763600 855764589 87413397 625047552 205185797 997719384 645697864 242765349 401726654 118080273 660234367 956116485 702052537 903211457 677867917 998777237 841510301 128589889 146223185 237560493 170607769 559038032 529829821 123429793 851334745 684511198 41197365 408392963 950833507 549418209 446051166 485609767 159102618 33820788 402552971 474155856 579721920 153521882 958732501 770960779 270697976 743972093 312568429 920485562 392703295 96297782 221421764 761450412 51205785 902613716 185869749 619088254 532457234 447513393 910142195 655039217 469132201 997100657 996043321 67504667 155329228 924437067 904599316 714619919 66084972 992593451 866940396 179723086 89408611 794017270 883319834 535693994 708848762 707146519 606940129 556516297 678719385 719606545 163871790 567468563 833002724 757860102 198279785 633345388 321772385 683068486 24715580 494923706 504735217 611082242 852149828 601363712 465825276 865170548 746648685 89412575 167173454 141920412 532665148 852876263 414786364 825095671 885363625 945797258 414392339 750808574 609560432 136978459 456420310 15602432 728609006 997347881 998699172 706695456 327991004 902268946 854795340 107906285 649373221 636492959 298467629 556767008 333153566 484439569 149425787 686289288 998059028 294556496 425212306 616205030 570952954 637597411 776476221 311935472 883551153 607110733 826074313 239406387 942561085 407463421 228497465 331701988 810748537 197514209 719315436 14367730 274306036 99364273 522754701 772933279 772149307 95762760 722640540 949407082 47294368 206364680 756574131 357282488 788757702 678879140 404608491 913169967 959628166 943827262 822594666 859139137 812300861 24740881 947773099 468304396 49822800 36473768 250919572 393082697 131432816 987462813 158751736 909462751 925819978 960163129 827976820 506394999 941951819 479127735 190980068 550604943 646992342 819904145 141474862 416080661 324895715 54317968 308352682 109591069 159909703 469851825 160050056 878427697 412040939 152966953 555740800 379323484 886586326 709733768 956484181 126262671 365345341 369895548 393842536 631623024 60541818 649763589 552422187 228048460 699479957 375302941 755017958 446658566 718777946 948969219 784865568 892752822 480066171 521123992 554779818 770816320 133684028 928359594 873981376 537923202 963808910 844534957 153622367 367449613 220253598 966186586 876693095 597098793 720894969 429019653 139473510 993295541 938759540 784506264 706644769 1578133 290478698 376347168 646426578 136325191 714351152 571484011 915811423 606764736 607445808 849693946 798486672 706951059 918996437 92376005 390667590 726213265 642286075 7671386 790670109 449250600 120060852 429251899 574789597 208222551 619139595 582029681 909305520 989759237 324655062 444462157 600139636 526560381 647696037 363630602 770174230 78341455 422534350 613555447 842950704 6150123 141908414 480324516 781432209 259840681 225731623 859600425 156047517 830947592 250601794 112412721 603100139 340995441 696875998 428008994 630150883 847032076 688629720 127679155 395329552 738842279 428765086 684677194 352098701 228755631 403708491 114751852 384937799 46367633 602042109 693398459 812783809 186418626 860242714 755115920 524013103 525142947 215232487 367569528 973252073 939671635 208139069 589308862 842466463 148121412 209990290 624658803 904950488 249760718 505953122 805846715 303559896 585519171 257060349 491971009 6023741 891249062 814893512 195890100 401736059 599361617 378951505 650226872 272846123 141111709 208375136 568441067 710879402 124783512 918383405 452400042 102590130 781625690 116722374 815103659 228714071 687607469 729368899 106585333 103441056 316758079 594212425 856082365 259888085 990894018 209250337 285247121 757722666 464809230 249917511 881782495 647236859 834385705 1148171 66853129 797739073 46717074 357529862 981861533 741196419 133357910 204329872 224662845 483327747 947296816 728624954 381947616 864271335 907166637 159008531 51442656 707897550 504875518 639431279 490703673 785085802 427736780 544675816 468703606 524836683 437092179 738798492 719297444 526745541 83636362 114692173 249712507 908121905 354096935 281652870 899112505 683939415 296204519 588213310 630407448 218004720 438153390 585016391 277363973 450477911 580677345 478802832 690820379 265951718 347555553 132962400 743780941 131130226 285040659 97406935 489097487 816833559 820245288 278688164 288048775 132563919 184574049 867831693 268931649 737683009 529202539 606263533 457137819 933207265 819537248 940472921 780136012 601773422 539957845 86033688 348527034 836502581 946668596 964341315 236282380 701429598 401232436 459692244 494918096 819092555 969675561 166330493 416345714 492719123 454380769 922851514 199098089 803710345 445830746 498491406 909632247 762234458 21989553 371096069 784424146 510588952 711792942 651870143 331409799 500655460 799505003 498007617 399931395 203434250 928572459 855083554 156164836 163512018 455354055 349144801 930315549 798787615 420001300 864521362 362244076 134688216 142947757 446463732 37022620 844281444 292271714 242719455 556111155 6845158 960689245 722804741 824417956 951804909 55587101 337686852 986623821 114632444 511849550 266423903 301635235 138403424 38455736 158099246 23516147 769983225 505242970 465623958 14721037 778346413 888421264 540006365 99182860 714705534 935901196 85200702 288532818 708126847 235256755 53662507 789301173 403432234 947827231 63530757 14033425 776957885 674025111 484089519 456775382 519134773 164066483 999358391 228628130 121062985 873877588 252786990 770558486 47843273 66519571 888489816 369804818 945308378 247889454 455220919 800917421 546737320 99646655 842932351 601227408 507640552 975264312 904835529 777860184 925385282 594366077 383184381 8648260 334128084 334806475 683718638 192608148 322386325 364773182 50417553 237817761 928862337 502003539 682665627 946536298 404866030 617307558 852135328 392405490 896492589 992838370 524579042 171632567 82183160 818818972 155846448 650697154 308274069 671782095 726245447 330866381 429576772 814180361 207016818 181267396 522705805 642794235 492661233 424740299 830846658 325174277 845044409 590877962 334389139 423758322 558788967 840865644 523361876 996478429 270532214 149468693 18822107 593944637 886710827 475631804 254308601 563756768 43303971 559406221 860924114 526342006 794495047 589875870 36194904 828473461 756485414 818652336 399704890 699968689 810921929 367657807 345699079 998179248 321572635 206115265 572008038 240703712 930628645 314962556 687846858 584322282 663389042 11812883 169673123 48520307 178496420 309982016 17360211 937194200 582958479 919810350 585814487 29181413 229113902 751692839 451969965 565992510 367722790 982433673 412764018 225257605 639010650 986244997 997351754 497220884 986056814 212978620 220595287 435245351 294780063 658186578 923283238 850270308 393673735 275246575 574522610 833152494 508025628 122694499 945545844 682043602 599483270 974422579 694422038 306637048 228447415 251565622 9573071 895109335 401957976 294266900 404711426 164449559 78214426 536399687 609112117 490571293 812177794 231309980 334612394 334146810 779530963 883140255 597232281 626256151 706807925 943996054 932785990 384939807 833784018 819958186 995276798 764456280 510042613 346324600 873838420 800221252 332814520 642663873 753805012 626886055 497826303 969464221 201725250 570346213 421499868 424204536 729762745 198139970 241472490 488228056 521353409 156490928 955432176 554060468 581009706 974411409 126541098 23048037 667720979 722710731 633015832 442495795 214808672 993620728 357747681 230974173 60858467 545962557 282634417 293144300 598311644 521205660 841611191 144699695 173238034 99812176 881979284 950155106 861385973 77923305 176412580 602397912 451013933 771163453 683368532 667828795 87685423 157582454 338819676 537124711 750731874 473389384 886926107 945285606 825209860 234475453 201313771 539579723 357226354 624465011 513197056 89758181 692323691 289247595 355042052 74546513 676425616 817432948 671053132 552555002 473619460 153215497 741152543 56853415 431124210 359294656 412573001 261484213 509711879 48090666 31708652 240400557 188246450 570827587 327015776 466348188 146014292 816791455 874658849 971927408 210196496 61911649 109424340 544520917 176439293 813318090 193843014 29416866 33976630 301500135 60491948 139887887 281702036 106746038 854943912 834133675 475037374 795199092 386757709 942034332 802476169 671407724 971259261 602420768 583151081 313116296 503272182 553847747 213459804 117945841 472481513 351984717 67726979 392549997 723587719 957485915 981617120 426928220 51796067 807216140 174672596 355753274 670161078 671900625 992094948 230009778 699149214 354474154 15277630 752713445 765373624 69362765 374062155 301087448 527002209 941474109 934722691 637216006 173215262 898498043 29530483 854366045 845918957 210280530 528128801 715610853 392867174 606310715 592356812 295435016 73475773 347287229 208065903 220270775 354953733 861909023 62983791 579804306 30334614 227698689 93618797 748740328 541387345 770680094 168922399 692584004 696919787 386503691 36988863 684181417 397989873 170757942 410904420 73461918 291511329 877343885 529172952 534716891 652614446 951089830 604012862 10088276 590565084 936872175 689019002 523745658 458155216 84098127 968692029 191618905 598262608 108120655 428398120 524262202 96144597 418331237 983810991 343055956 658501714 568710829 406917420 795524861 543725826 879852735 868261559 301327744 800004911 56700356 842267813 393028837 953930930 986778573 474110722 747328616 263355343 553884688 496414488 868962169 982888182 676977689 584283918 931835159 453242715 946751417 601307670 870892321 776716677 147369955 675260989 9262061 321578593 452597991 169266515 216008850 589507695 765576523 113963396 659884586 753856079 11752823 934324420 289797603 283462037 835816909 588141321 302449878 530593211 544585232 322447929 155249628 843526857 832320299 131071146 455427074 829655709 477440447 558779774 880367993 507388300 602286075 225673899 531415019 84751558 271433475 678309494 429098080 804552867 941850424 556221980 140282905 494511018 509613978 78940291 901360692 115015379 534083460 190506162 325052606 104258997 904589683 848958458 616730516 617387606 864538793 423105582 380726537 557262736 871791229 594810724 221355228 143721363 752925524 355679371 897782610 400468750 194373987 184778563 775824438 766890313 97930532 683525411 382342380 94284378 376969319 134006899 79591807 517075920 273244758 39017788 348577340 863619882 86493409 454122341 165306747 255841066 805524311 972484774 112610840 222396378 916540584 303241031 773457959 177487836 914050473 295323692 459619972 338325087 941856160 278513536 358118930 134835964 913991601 850155949 477685596 354845051 436161839 106990859 191728409 118813221 517452297 626154192 600285707 738487845 372850538 267463219 579237904 979855137 316718482 234940757 768678980 782340518 282136030 706106665 579043122 904595742 134781455 24697975 598215227 888918491 3311122 906903171 223092408 501023907 935995574 37332540 653008964 237856681 602820861 576861763 963221254 329043742 913157453 847899651 142332637 741191575 351139825 170808110 667102757 855170071 107101137 22615696 288307355 815925433 109935386 101385138 589103095 720467459 247220636 985890003 431029353 125561742 844360472 422096009 198869341 777897600 337313334 186015345 408261866 370317179 411503131 609660289 337205004 755747930 27477094 65691302 845211582 860469184 487603140 858154762 544198079 231356519 990721341 155861870 556767713 786272280 939937570 750785262 911616000 523542040 981664509 6712539 403345532 213694324 10240949 106915759 484755110 743465701 853040645 914882784 444909417 503333877 706741086 377896716 933714499 250669391 651543035 79469172 633966162 223151403 807680387 2341896 697061774 368257555 909651230 255540399 46079495 920199948 53460825 996294188 728894195 167344048 46733527 881244656 550257984 977161222 448588113 72057395 559381587 960752942 293859783 168499641 709185689 539637779 650151294 851451748 719092798 56166486 579644812 252193370 439907379 564166137 299305812 544409753 330455932 609080106 737582214 37225503 830465822 751936150 876715803 746532909 774478281 993066207 9554584 313424326 930560147 875298906 308487533 811171914 218397540 487367894 779806739 782000145 587068593 757267915 555367830 504900800 946100928 273259509 211936037 764463778 717484984 766045981 889438845 833491575 916323781 809534019 951112575 541651825 827046549 434057244 7301221 30241544 610291929 470894638 955717865 72748769 395371271 196491775 827120899 802975888 327982733 655809756 56987365 919067782 872812535 577285722 385966121 56971791 601956425 863751062 860701577 463619382 818211732 769339681 732309031 975921859 889909392 606029243 436997583 331933341 592963982 384035911 805212355 577629562 893577702 496332619 309095871 136847694 109174640 615789335 135044621 639150262 466047914 933588871 67188531 107953614 834506801 965406904 510122088 151855164 987073623 36709678 350785857 635237058 46993026 463875290 440005390 213590110 133815707 510732948 369076230 930099245 547226558 230920467 46857433 181118876 137111237 475377675 107354044 233699829 910390173 594553125 216979637 980996915 301839006 976335411 996444343 719092212 121232144 785960536 188830221 94626396 453198061 792179648 443899917 142075305 556308794 829817053 671284457 578602779 709697480 958418925 371790024 814182414 44401006 117841478 470017528 701171961 618121124 916196378 344221850 551097027 688843000 150492525 726699214 392027071 515134787 862451941 889412624 537860014 338046076 482718803 118009078 235113741 637835967 611675465 160743011 77469025 805112239 227309591 948229460 180913941 840301636 236066857 116452679 101180192 16168130 463324554 179755782 848700356 187904416 248775084 193250027 305770366 141252302 904027339 480339665 657990173 750299914 584305931 824756694 437442966 395823912 603098749 223624850 366394985 474310556 942710101 889159032 457251882 260565590 902382962 200800404 872445117 713087253 17480329 335056179 309453516 412677295 474556916 988047980 294862267 798849356 460422832 377448312 552302898 952374887 172652035 333935642 633694153 300053764 896498956 831012726 808456917 452394134 236807537 331854648 967566382 124828899 743423847 890689279 781468108 829275474 8643536 951388426 951667561 60068908 345404376 532244452 667499575 917648219 945743808 101399102 18658724 617771918 458408337 484962804 552881634 336456889 922134554 308233938 588581533 535672887 345474457 281444063 567272704 571876731 970065478 222642244 484936206 594894333 971210250 579189920 663474917 704058247 580189711 579389677 687552285 901337118 842096053 67614758 96997963 365088535 271989622 511301908 268527797 217415122 390364985 837919718 7539009 789146748 672301005 747882512 811124520 956825004 233700135 850456430 514368729 29146548 429787135 282263662 897370910 489689764 285308059 804082058 92954932 128337512 315658715 623463447 601206400 129170120 806777727 152305075 296886524 207906758 894624662 92260729 510955890 168046348 658561464 519167116 694477475 126122033 15786755 854793797 130787218 999695824 110837701 86111268 59059245 833373118 967517276 931474865 364270802 14964912 911668538 695829698 679626440 567443718 815016810 150729143 695265023 612767232 246216939 633202312 314991065 723083489 792189204 378852925 688119945 839859730 366117819 633945119 234287262 516389528 278934930 197064457 117157185 651648481 550008351 504117631 593188468 761319583 644909012 530723724 900222880 259692898 256789125 262131324 792233035 999513473 310224935 615207978 462872672 749485231 99544407 788821587 278126326 179998015 463922227 349123817 269943619 839326096 797326911 758821341 664917802 593260937 711228377 251510046 378579407 838406775 488273967 308190526 139460573 458585171 935490963 957024847 138648536 749644444 980741563 627080042 19648337 136392897 31736415 562585993 126460994 643558112 441988972 586815121 627770285 499854012 886271231 703725605 745703017 597452462 205873097 886231117 205979067 758267070 100060836 989862118 714322774 524743250 536045613 614922307 177536463 981534295 527320156 207623477 812684957 667887719 448673829 920807257 315383394 763706447 189922056 390999568 482262931 903476555 295966962 278424916 422772919 745247653 590814463 265773871 769721161 283699856 136024045 953920794 791026935 178176269 155618424 779061994 448739238 145620864 990605031 278161151 616162387 234824655 632111737 412140360 309405360 280712531 836143637 250377186 833742571 270643279 770606901 946620875 332510877 766701800 638561118 925991893 476104846 102235005 851965137 799091225 612133862 249422055 564572974 263979518 482623153 117456984 78775660 389327230 515993431 459649569 827154152 408556858 738024041 122059159 931536793 554299428 288873332 761966814 727892016 48095870 170730458 371522592 726432319 859641991 718127944 983896532 147494618 994580171 849673547 396339207 798557121 211540300 924877875 293942682 16399207 390053875 195442094 75110752 820955875 780139379 139133086 361097158 402905741 317013542 164821156 842571523 568958758 991907439 254100440 109080815 860186591 156429183 887740465 591593693 256704985 302465283 137034181 502253189 907927365 6113380 747777239 566053149 469323657 243354064 603058829 802955136 64528966 336222035 141913999 212869182 553952099 969922556 949433995 9606140 719128665 54555417 811264407 815617238 297556183 564523141 840615834 586442311 657231185 294672294 717009628 953979712 323866830 752034034 398828250 124588392 768108839 690259511 936759486 651475736 966755961 90885384 302301598 671720964 125575072 365118094 724651410 209862960 685153238 939497134 851159897 308222780 653081092 349483531 634029429 766792139 188820949 664894271 867756743 539356821 36158723 973292920 896476646 100599125 358182607 986087917 921142138 628282464 177078911 666374335 233585667 106653621 600602729 405311186 115949853 881189003 343937157 604533210 180865457 480477440 756297193 280735490 462244344 625518337 572717064 149300827 903896351 511626719 686719362 781594872 49861139 567052000 612941122 206211670 670411256 882503391 787287001 308182 260030233 38259823 511873335 957575404 678615564 371303687 931301671 827150703 477505590 679131457 919674747 902403991 569151678 191650531 85667938 983908184 993323897 684799346 725429391 7809196 768277318 929591270 387023271 637063305 179693676 918976891 158523370 683485425 386794246 467182783 106501848 48766997 301388589 141584371 319772459 939367410 704508168 923494740 515187758 143623211 799352754 262620600 819738543 609504161 131195644 225239566 667277150 103388158 460026310 66040187 981479353 862157236 231725640 642392411 665417262 220122558 429147884 125437616 111717377 661847531 303462673 20202575 671695615 764937586 68234520 980428925 997982959 819538050 463395607 896391490 633414603 903799530 287109677 835999563 118783225 402515642 537524502 890589430 307340569 7763316 58237822 912351925 635435233 685040880 381223721 907388639 447529109 249309192 530904637 877492785 956102524 734966058 28564618 58019974 592022494 324449189 729961848 523818524 815831551 909538666 732248028 442773715 908224234 825265033 11299208 559760620 425543095 310635736 458921090 496641264 291801749 556106027 883010308 639508454 534028531 379605041 775363621 643449629 291565262 738850016 288688935 788951437 829531548 561294442 548232020 742056007 68543068 596335866 46205176 466189332 235071451 172941633 908682381 773901936 768048741 951733021 107678538 123332984 603582567 242367528 664464196 218094166 462180835 679432102 704546917 288048877 437364792 641317617 268622639 31749357 297602121 319998141 247742401 321765870 12481304 25033734 504961909 764274649 255175194 456494862 936442582 307760209 517618963 551248117 123129004 34602913 320642163 324030847 234320377 638258865 250877854 441907606 193483954 572113986 127666162 247792345 810580311 852309896 521058419 254740536 576821532 611326720 112185782 909467558 178399122 842913691 639409891 954560450 772827914 586182862 28762643 882387925 745782383 278364613 243549273 121763830 512963446 426168167 408090782 349566371 57450598 301110885 108741648 812843646 672333563 616197262 66761510 636167172 681108862 476175136 236421020 472825990 858172637 878336809 73961983 920231567 748323327 282065046 379718905 996078739 905555196 267620905 339780251 401430895 970253705 534751732 979341219 228192265 478792649 499260155 771567623 631012409 134369871 532338927 863304102 955550883 235238800 79074018 577163069 282948279 574674786 241414302 174723709 597327271 675356991 844532951 631907537 94049272 144839483 288928366 923588378 160371183 417396065 519667404 559711070 60036567 512681045 353250252 877528290 539675529 196773113 697002395 171027874 742547325 818620806 767176646 208237163 865438699 682907156 640825403 9071017 49758853 648550524 633518156 952278002 931105936 592528050 28054677 831659355 847437100 823475711 928599610 515595281 767374796 702902892 968518865 717466758 969577719 214404997 55524152 681165104 271688025 74519325 221059841 682917061 224207122 497388335 869805661 667059480 279850827 746387767 43734093 775786192 717127619 553911364 432051078 835644458 584660444 678955289 735994796 835404334 874587213 103753576 591582905 842712842 243149900 104604775 182970788 855921053 395011187 184416338 340702226 291717250 363679148 435657996 421060931 534259990 622054840 825984221 392418415 104354658 28030634 22718484 367322656 745737649 362880455 120735057 554026248 163333293 618332717 732074828 856010090 229989612 133067410 80554826 389963472 90629414 193927117 467006604 764529466 529100653 925983045 438587021 967792720 459694490 104285637 892268568 70172633 283085291 530750301 717623149 728843114 473785756 463310291 115540135 811436457 362112021 798540272 419726214 678194251 828764528 965172829 315256676 689603232 393650510 877105760 343612593 830351503 11054199 179575489 20871652 690346375 948329028 919139326 328552761 438997964 229932181 529025758 43159863 180456505 80903885 784715086 682490166 893501422 186206038 20324465 383161465 999369913 818998933 884915149 280215207 18727668 627242286 129979409 566692233 521330742 775770527 913426229 720967778 669143307 455992556 883725430 601862555 952700494 404426455 733971892 417151499 979193939 171885785 417391339 46547951 581463510 311800600 879278899 412389132 896921278 332043882 924531983 44986441 420217187 671450752 299630557 683831899 752663200 351389484 833784799 26377732 796317620 316093202 178130314 440160338 741449824 149587330 640105425 384226785 808457775 543000452 425544249 189184403 572791041 864793839 885187660 518525904 858840792 63806415 734190723 411591958 823667595 69064392 332708032 597823893 974732567 509043677 152459488 305846184 94137862 36209469 449849015 208858660 364730649 771355353 577337594 237958992 810121829 545904748 911748409 556973748 944059814 593776729 884254160 342206696 277385776 167746409 549290122 756646451 759563948 793737158 926335331 375621329 449683582 601188791 866010431 527837064 367282172 304048962 387417007 501125078 781883646 362046113 559919888 385255944 941599499 718796301 751780725 563378798 333135718 330217926 22164423 246144589 270271030 649181418 196593304 962472117 81699239 496215307 815015181 225356370 624173305 392074661 257617186 965050066 128824458 85229215 339804734 814931963 9993940 791711156 676296791 874060892 462808680 871487414 625181613 279211679 142425999 399764745 61850162 292341960 472014632 519018598 303986826 926884861 584502548 433286457 228361426 243279469 263631980 795759367 476397205 696424710 679844845 596795371 8896364 38466610 359539516 512217047 171610064 941107687 785349339 298165650 336668504 168357567 157988755 612339096 765918395 356203141 65253637 996593092 575476872 684836279 512829404 443621633 806032396 11730210 376802168 824680341 215937882 234635012 677844733 555681618 571157717 809864901 781500292 666738730 623676562 538169725 673837377 721029448 715881643 708447779 594863430 92440337 331968622 657112265 405362556 152085984 24969329 787450151 359052645 141951215 40629144 280235983 728189065 195101051 704486073 507949920 401237818 528570842 742359652 799308467 771681044 944886113 529363966 723984543 666312407 746471426 624312705 872032694 23243871 123282516 431097783 219007042 761076972 248684306 930206933 252027496 113605 417072739 414618015 195818888 77629267 497056376 70107914 855639024 988021201 674311478 542026399 578636687 501733216 958876578 525780018 568334716 342617318 54868403 445939070 456277863 318497711 848835211 646093502 406267873 564607973 627949941 830565418 748107158 477720833 690699375 479376275 616502561 983456779 948695768 851637658 306776725 655104706 680113079 535095259 758732997 309556185 182060148 775491309 965200004 771639779 690725607 769063415 1433773 13315534 775367199 182331648 347695649 605742293 506544802 415452519 532172327 50332258 681276828 581640285 207164076 963555993 990564500 672677090 674258227 694111986 985403156 499355415 292952017 682039228 145197098 165856777 670084553 632649818 698567164 354024353 893461043 729861069 764438570 222017855 644712634 80137311 664742745 457497367 224565484 519457813 641703774 89357334 402726134 990456814 820978919 206018012 926264020 627096254 814752746 854167504 897547609 873197309 111271591 584445725 454617038 652002061 308577932 573675382 425841766 564205852 221994253 958610044 733165948 672274459 542234843 607874678 768407783 791936397 669880900 756689357 702183896 431137948 567501373 56117838 417177022 151084789 279986865 756434104 996071130 880709564 685137161 967408523 414160961 335288835 958756472 442667204 949308402 962866455 887364692 830130355 629080975 218279147 95452101 94011532 76071909 519463538 817503779 389748958 867034244 454836654 846253426 278941483 681223212 771312996 992819206 292817992 381481787 659981596 601008594 762726341 198000435 730653603 301408658 197087417 66614230 274547843 510312986 234085600 976436302 142675306 151220272 94243381 867227835 262467409 567038642 907051419 852795212 604873728 349986428 865035223 187451582 738898441 423187824 869821367 778436681 229914119 135926221 953541404 429463599 33640026 255086186 564017297 721762136 812411778 672840913 798817185 697519363 822953375 938613548 196433836 606077430 271183755 50273166 824199765 97032487 571739124 451481637 395440703 789713587 698773711 115115568 879541824 96151683 293184404 794355305 142510159 871885875 993128558 534164754 474730181 276187448 497826676 272456386 933648283 264284556 536291068 505135260 95003387 919473571 433121722 707055798 728465814 405162907 698633683 12473013 550410413 382000484 900687445 145437112 829805974 91478091 361012041 888238586 686358548 495552819 428121392 585280944 174546026 387404249 208742946 396703716 641289115 1627832 704853296 394675772 77372452 939688136 536752528 40457370 606717092 365831696 838814431 342567448 525922132 503639067 281510511 350652233 208594421 487381642 691882816 168416663 676292294 859192361 946092228 651001669 162192444 949529024 537280719 961721388 233332892 386965770 923948484 245162778 303184564 308253716 586909943 137058601 274526745 730243897 150109468 430431184 253039922 775422107 274184927 646152732 973249445 662539138 595910702 647467116 268678980 250175144 226333957 253048978 462410580 868812454 851262479 441089108 388739683 563088506 958002955 573812995 69403856 713609123 277503813 834008556 106286374 569365769 772414221 285251158 94094668 700687767 678076060 753806581 260886990 378568539 105725581 174119300 864438887 649351433 653251371 596623834 615527090 912341663 778422585 489252711 391645246 900081318 317004877 146092383 138608276 209017785 817802600 140239086 493647554 271274584 743019687 376159628 805247520 775454967 375521138 724485892 444648319 840687773 495515872 419229353 966736604 449897928 798368901 385200809 760848366 304034514 867434974 888357850 534729876 587529864 889784269 339127369 833692813 24862136 229818022 403007065 491688209 443118582 904160997 453498893 521300975 412359609 483282571 38095213 576904962 80531266 252126507 244146357 814333298 267749383 420226111 127874612 708374224 393498894 33210731 614048251 21319396 990543529 560893478 61932198 620280700 103580107 189051291 691198784 156335194 471600341 837343946 348639007 565340920 587464972 231882318 565151512 922156215 528421741 59241209 359259734 397301654 533105729 792538383 656478544 361753890 318317052 380386825 30335306 365245647 2786843 259398389 507995505 520181937 880043630 800201567 635000915 489377180 397077288 546113237 299166490 538940550 597731823 775889489 673297157 783032352 401012692 159013859 954104374 83105599 286085393 821204669 171816964 408009328 145329923 592256598 784438342 24179913 381838736 608168998 122549592 625755628 504291917 925179603 462480344 234005918 290491437 515968212 543231815 332294707 56924639 227727739 358097260 737928332 965415740 17162622 300771577 204730892 690821328 333619364 939296784 344513796 697193771 512439622 601800894 317477026 77774204 296008392 234596264 161701056 39837826 488671307 957011232 191573501 605723812 639787094 684578094 867836360 634426902 332666720 481726782 446027581 441261406 592724737 886194375 751231143 722879712 975514159 569448718 105975831 738649849 353013383 457560664 148887113 483956188 903190135 31933828 818776639 656974119 833832437 925066125 425516600 688381927 981112224 603979932 602792767 203157557 748950776 511235700 72566710 390702385 768946584 329378465 777155471 272120387 906953188 30230483 933743104 284730454 453253977 91133677 501440722 737327579 936597860 892969271 864659363 644760768 676373663 221687467 523629813 864159812 673416044 726576687 595557682 99157169 2081074 167895130 372530866 83030054 174554741 202188048 240266465 950683406 52901025 752080045 505632829 919035015 381711469 204958878 156732486 890080630 152696487 424744500 135422173 106132624 448422121 676237475 529884578 490613601 912466121 694323924 573319637 717211560 580821487 48160015 723018872 59097033 208167855 561928561 564758736 152929242 758468464 53399327 311937451 865072532 46468638 171471808 862092966 96876272 172577583 849158916 490269867 37754948 973925698 393636379 72009845 616722056 243524993 756317042 700508841 363886816 677364139 694680787 211791849 322696525 271688073 854297379 698728173 758522267 715777991 806047226 173772726 690493922 53174967 487665244 453479300 365477584 361504034 606426930 456615216 713797509 205673947 307834151 769870546 205277356 943028723 90397220 945101637 792417084 144900895 954722283 998660338 18860895 908951472 990652663 637762631 48260690 550454121 221580253 168383367 142329255 993045558 852084996 435381772 438914786 876781039 208004424 325465104 897032340 751529225 501178223 858492881 689758773 587922991 157681375 331001828 99810095 839126513 596142247 608583614 811031450 201950726 892394192 727446936 787342433 165860445 601524076 494109361 789581891 172628055 427394432 207818496 99122501 115444803 542238712 697439760 992802046 926979101 808389923 246644093 479794239 997921445 662562145 219667450 743835760 657928346 562868890 767894753 506052210 335198099 948756968 728912797 999048108 844989661 242586325 898037929 729586725 584240419 522818374 379714135 629560617 628983747 514881206 504304734 230496799 560615447 169688941 278010042 653181452 914448761 373039844 32949014 239836780 885274540 610423061 886362278 219905282 343570893 757928667 75530219 371463291 894797603 355963236 652418392 918070376 702828761 744403818 898986145 396834756 219619298 955583909 766879347 523756015 825239123 881964379 643648831 337322937 517276428 646627588 838330441 588057545 437025811 669555715 263383411 600211389 36648040 296755705 763735179 2545193 751672894 462076125 950852283 769362859 453380693 691579285 84707354 141384611 923876102 859736153 331727205 375593530 711247404 755876919 572670265 832511688 853372922 911798821 789855693 385715323 123573240 482020629 393407228 649856539 393068470 390952857 465267621 918132391 522297693 230674455 633505641 484233009 328335679 583388162 473691807 516711981 357308488 723691665 825694316 714045981 145630043 592604773 907178208 917749572 224094620 955828256 525450561 630420929 959158479 433869207 370210190 781727139 819989701 694817848 312750233 863452870 635299482 822341747 891041574 55561546 189437219 159467313 474959055 820784643 777167906 593972319 434899482 678715798 565398553 825314138 488308346 977357853 929424204 833410536 214693159 252325504 338765258 88302049 473554166 366709104 327806810 184806164 789302481 412947059 277317990 462380410 575514059 185404260 645731678 764057947 481388739 698340911 945477623 523434092 447175585 63555962 8699493 253626681 649367617 406390464 895379160 702124204 188828284 210733343 270348709 569283840 956955795 395138013 803804675 360630078 883776175 563633861 56217676 13827195 636809143 294458422 536064989 904547102 244776963 328490463 241844034 23014743 756648533 501933684 593013209 774202753 769817274 142050833 214472101 556412249 816436458 558324509 998459116 129722184 790856927 971301430 299847747 390915840 818301649 429812677 529730245 885599962 55342995 948589801 123620087 823650096 292842151 309838819 451226265 713604840 471294934 273757467 191720943 563263643 312232587 224485000 230659289 686295032 732217075 233990830 291687692 506766775 787689633 900701156 255962366 97489723 21971644 782270783 129176853 743821688 469671527 78648417 926964809 799742367 23793672 939117583 267565643 656087462 193382688 352632743 223131122 299583754 553581314 340913013 849540698 476693237 754817701 145625474 287099822 828114553 931229278 248444292 841139927 655691147 9934881 836108644 736295095 326154132 9083982 376741478 521574921 144768674 815132321 405737191 361059644 43421599 38113523 837914177 383221467 748010544 476750601 452356462 489929571 791188743 650159919 941260684 146662853 64996887 922403037 288333682 696851138 998143090 249150134 418327039 61627411 117305164 218978953 980091453 556142077 371956478 992642254 436505338 185180394 720869797 171864286 579358877 813511089 436270937 343312303 279605381 26660148 198710826 448241080 480663000 86353052 200891370 351088450 915255894 181834399 605092699 366766889 589044547 190768154 680886572 143562904 117861876 146630470 526499717 434874017 267488783 582740894 408879584 112294824 575591564 879583959 441509668 608257753 134054209 247678416 791302034 64967091 194802644 475914001 263713828 935715750 327679712 131971462 541492624 807731965 256216367 146719532 607004438 908849626 375137166 616918152 100877488 403346697 578558356 518338121 957644892 703882684 696217658 164879424 98477900 47103594 621197714 472342097 550334976 22353053 136386865 218036744 474991043 169256456 289043074 353896362 604403687 813182310 377741845 786523414 71898896 105423464 416577290 384227153 240638561 218561830 937104586 289723878 203819380 643145798 779740064 89489151 989781677 749900216 757425307 123442433 661066741 548886898 266163350 647892275 590158747 551317913 577274184 16309204 282486371 618857828 982333958 311423718 708066141 859969616 731505663 204576608 275619685 241125614 179352023 418806601 683337138 44620708 453785949 617316789 324273269 230244754 155337598 109769766 711084622 121865166 370731528 705042790 202673805 763860723 930668351 29238401 184281157 565020116 215613190 704159017 909383559 199676445 110505112 263127416 171425278 205207002 548037274 454564400 883092060 213787878 240862652 311622450 344065367 239643538 554830092 164084718 413106963 504445368 190502257 915542762 905263754 915237047 540467312 786116089 779466358 594618800 264907768 980467959 741066941 408627440 707467968 786265135 352805534 313456739 602930302 871264416 546889803 324838929 501059843 5974556 628936665 186918089 623574710 380216660 200147721 771146533 688358369 185390899 335205063 829230303 654472412 119571533 102263357 47506185 467005137 152220482 521346548 428034877 880290409 495077993 649227214 994958074 626473980 213497197 372394690 617476237 252731733 950293686 306676487 538914368 640339916 455113498 116732956 279959212 374150181 464945031 829759246 791159103 349694918 640481941 16617328 711386709 351630081 615710233 964603649 357995620 679509921 366062620 195966612 728809896 519787229 590612302 197649059 544309461 946744809 100041793 555988904 220317050 589638045 610050281 331709491 806850941 611266440 530459939 730063979 828699521 545046328 785369755 342751047 580730202 333045577 884824143 526636572 581830029 21472868 836931334 197898029 972070014 987919813 929472211 328966553 328158733 212788883 953262294 630487450 418049534 258704526 270789872 521224383 384151575 185338877 671273792 705951585 968824041 861879334 220248256 772230147 30632652 967337089 158996768 880093451 475003149 642689019 483755660 756648443 883746566 797542410 270680641 331615739 441413463 432944985 6287666 882512844 325202987 188335118 483026195 240192725 295226742 637986779 136083078 251808299 819795852 434265962 984537827 992420689 521322540 842668992 276564288 77547882 955602411 774771776 975087220 8018556 42244641 509150793 331050400 470772501 385610978 644320266 607266885 760466896 332048193 328418847 171184805 857069052 529684818 702168143 153630739 283447086 625979293 36454008 384324564 698903543 626674595 594063074 244472600 785986432 444667598 415761868 597364906 319821756 806783354 73688233 176804267 522960306 176530498 373449821 941896387 712836200 787955291 563442633 858462554 8148908 283447768 77024333 528707929 719675390 374240705 963086244 400722461 622543360 530099983 316877886 479729970 938377586 775979660 615821786 323699090 681865746 1568764 984747104 217445462 665845519 839806557 930755603 636616883 757690014 248359310 86823706 88312811 290560402 69052363 901231877 978582380 884679099 89732548 122449016 601943826 345007245 712189955 772664977 94867348 67903787 24896052 643937251 768764941 56589756 433014071 193238480 475156327 67211182 18420928 438727102 224621362 106356239 148049661 976694939 949627367 768447040 137863074 302159881 183558962 894739411 491862277 631320696 559673191 987217619 346522917 165080435 787303775 475763732 687723209 450693569 966940199 968177324 711762564 244087781 609655091 160598067 217172423 13961595 851612634 780711312 292996845 827846040 957933076 504004749 439320750 125266879 163429184 645101623 188071739 21550084 584101774 869151361 922702657 756440815 956720876 824952426 344754053 909946388 482452382 634309718 773734515 782563627 73999084 292093026 257974428 9283083 98191592 475957063 87788016 339803195 127161567 247759152 879964972 413305618 147655338 581378113 434920809 599079667 344885774 50562209 929000853 869615594 165562978 223324408 621595859 811145843 875237628 955439063 434946638 605057981 901115158 61807069 808376591 261918293 910304066 319468040 267251354 943044079 381208675 96982286 765516007 82257698 158993164 48324868 293688637 245449683 51803454 70517715 160576882 177849497 825907435 999542182 159100945 661323227 684372020 546123562 25477294 102544126 539641566 887836645 204807605 194943076 881014393 213817578 688862708 793741924 126116835 236126908 277486558 99092604 264047289 6233538 101676293 532331196 171356589 499045130 397916010 832413369 593021454 319945383 908063062 49526007 297133931 910820026 258910866 22524636 208070267 950682719 455595731 294027337 107439125 450708932 950525402 61687820 859680476 599556066 495958636 121164740 583105006 835485901 15596542 509935771 54367377 943815842 587615557 485103282 935257905 563060349 686409722 724339343 798659947 625450080 152681482 910007924 818745529 528817170 963059810 226255905 340617287 670022563 385847167 395330528 481340327 359142915 318371298 194785410 489804417 632104978 483719643 66588379 270847493 261920906 88392557 611440787 655285129 718029079 616487432 99508564 682947926 326699111 876635017 864654832 175864713 410869070 716029992 483399598 271482862 98463914 3244478 110864528 448086798 309386418 635119408 286988879 360638414 93776176 402230452 880056966 813274240 576708383 185501028 217621797 142426629 685950806 734716629 82103067 724031301 823430028 39579475 984435555 114189908 363169554 24724992 365157978 928250530 802548782 847983561 633538207 901003083 104782232 196361388 443734983 619557324 86629595 33563104 115501662 413879155 688835302 775168302 503863768 311270747 384828383 264150824 326959037 660088753 389865769 151765994 220715830 278337939 855131061 10761153 444149823 747380850 226756088 490472435 145311173 597883202 413707307 900770520 481575493 217133638 192929852 690949152 743529167 733403962 963791316 119435373 404302027 594838076 134742973 280767981 66679512 835716716 426583509 9241590 697179682 266453771 861598341 872458730 346459186 107646822 473767085 950843148 419145457 652303031 589560463 168718072 64997533 966410602 675888853 127613552 582815348 670878002 386304090 187999528 385691901 532708649 279706196 302864606 65181096 837004367 727531332 425702363 583595056 463937652 958537245 129226363 367904034 222009952 416993739 592589616 428994685 725159977 622231276 763127921 725652025 467411459 191223253 50644522 855759313 509565363 260194204 324521505 988486714 281722422 540943095 502151147 228361608 19492804 479295198 881249725 107954018 44895780 605333626 877872321 713057426 266609924 337208718 297512768 766277037 133771230 999370739 100043117 179165110 43532626 88788206 677012102 333913556 158080599 512648435 607852397 889615253 199999071 685645625 578803217 693079846 503813862 480384184 769515736 893958244 982673032 163783759 561890249 649379740 488019815 879959922 255261316 911416980 993704092 742142019 872001594 972560674 259389363 910062347 756311621 973050082 386287295 494680181 718806804 363205174 132715592 821241184 741202894 271922490 976688305 541252084 288211679 580450853 884534111 621537091 22576360 525626681 549334567 452011883 640098063 38420686 653852324 173109365 774796663 957743881 30512836 925492822 414012572 657796629 137049250 466592792 191083227 532558181 910061978 844529654 293825239 709842555 230573397 392734309 181458863 186208427 831938210 154540412 563930932 434025623 959891440 151910421 729141859 333437900 776107711 312202614 517174608 921380124 547049174 808104735 480164723 160403558 21681445 108100101 133644288 993738 840526578 242167042 389797979 368260164 436161764 261560519 81835767 686554910 132758462 760652306 157938571 827863979 130176381 757578056 694437007 824123879 612589315 172164666 795053946 695861342 392208453 303441939 783086463 919067195 190524491 622283669 229802465 924307347 962349864 379114907 816166086 911626973 400508462 680590635 396510651 106498158 690136695 381244934 653304119 213874778 975822072 53387636 337511425 883574552 925561283 767163406 858418012 833561411 254043609 308886303 407256555 284251234 899990577 22694874 486982524 22014881 701949171 107328776 305164354 336143277 818259513 409479661 74170290 370883620 516793236 587964198 713860918 231447209 284918981 874135432 959394604 525407996 875556853 121497674 119766211 925689444 984623675 110454304 417250933 765423974 256161416 136848110 372791050 405729794 912538549 626377922 630874523 399830549 936563988 663021884 87931017 707977711 853490344 717817662 661938354 981755652 766500145 407256300 113043314 620786956 81143171 591522793 948318341 83229843 596050980 678322609 177352912 187548492 931824059 371945832 856584562 348905089 239057178 723759909 126996243 9576789 92763625 913427351 917622182 600910742 16881255 770942456 2948570 677326915 263780039 259953787 929130395 482418208 244594934 613267296 918758807 379820227 609698635 455346013 352488906 780713417 941260420 692925915 456919209 507497252 720626407 823692062 124918117 614405488 17837959 116759567 520933807 912008233 414153388 337444404 866348492 417915760 70674770 83593278 317027537 144367571 689054631 726786222 242034141 100530008 190819368 888859277 945874393 995036459 358989268 136275571 865806039 336030448 668945976 384590464 91243792 465627464 500993949 352110124 89383072 515890926 806525837 459854736 928486882 605570552 618737978 806279502 277934455 465380941 110795082 848866547 698221730 669380862 285997703 900110802 514403167 572163868 211744254 653655809 560142103 189720755 853283453 511652369 686331511 853299863 744487030 576097174 224441608 350914341 18934731 254612904 180002177 104740778 939620975 374500652 745820106 954517920 456221221 596262660 294785924 59161624 944266693 934597486 729228984 434179972 473361918 651560914 46179494 728798630 676946463 514503280 451552368 676501630 653277861 726109064 502177489 883128860 308497615 604540141 245502083 595069475 551605600 404448367 354214690 821837714 120604397 781099654 143009125 171613836 679648072 537226269 351179411 420076508 738002267 870354646 516450363 519153882 174164286 84060880 276158252 847202945 890911051 463408864 627150427 985847704 53759493 617726173 861551009 235305047 756137474 273590674 146053659 462322077 670736565 777210873 959028793 810961801 801060163 483331606 909432118 51745068 719285359 638332401 238740713 107422104 541366030 793467901 40134292 552213546 540801471 189049712 452474673 211047003 4084243 394479745 231248248 283555012 795036601 604024961 121723510 712736221 982181767 444360147 771437953 950068145 673526868 552552059 896106362 720112821 618712119 563024002 851552608 912751426 217909037 885194875 233671446 882330115 347840293 822414654 777738651 632497658 526344419 859671440 666032853 279744958 416895289 410896208 680887696 223873805 354873360 787740193 24225267 41692811 961818493 69270029 700021178 540122005 435799593 464622870 874533504 149285586 890090170 62755773 174664928 978618894 203632328 649148835 930766063 56515629 703127725 343489685 825577327 768184211 903253465 420744368 938164269 226548840 277430789 936319730 301578781 888441534 471135079 422131032 939491786 616561889 511509286 98456471 693254042 645545688 205272497 876401530 920931434 745307435 863008786 451389581 384916179 126605326 885175645 322837756 110980644 749044057 43914229 205696056 303283446 258832115 143158722 566630761 815925513 85607406 652185762 117261156 45232328 314438258 596683163 587140028 333822695 785178950 344039149 636219183 501498601 515864572 418330308 344798970 968333192 142715648 486904202 822071595 428137720 755473150 3326597 429365244 199464266 46634600 998613254 725108314 786954703 505942165 327133427 137304249 781298856 722780140 779980036 315763777 512832892 722405247 963076777 742469564 18307363 195106757 326081854 962229779 424195364 952608455 158688285 916390289 513119062 944039861 335237981 677601007 897500968 941727861 174606991 151822872 729447304 935747287 539463036 228210982 593514281 480225587 619869568 87999278 69257702 836417001 818477064 998311949 500563577 148460786 443505335 332515775 434726560 502456081 576587082 172158578 85560370 812187239 753721354 178576005 587427856 16918333 66008751 502084134 992096191 742133600 755512128 322282803 178543431 286461380 544155762 888397620 373073202 324345119 125984476 249193018 994757301 786394850 545387065 748957887 411822029 559996086 647552376 813276317 788908708 531472811 237222774 513398937 335156859 500590638 98907934 303696840 714027926 862917141 372992797 836458786 370386222 107414880 732611159 907814689 319586085 10187439 751245071 828364061 224279291 799654362 333253303 410959557 686145572 547411962 74887654 845841800 697952370 484644052 300278624 757100581 10036855 505129560 768097876 894801122 627508931 127836215 620609776 783083356 720679648 818973634 43440991 391322370 428797798 113404840 686051452 964165146 147258382 905993951 521182939 96788383 566371032 199415627 111388244 415768360 832205086 943325022 638748914 935127932 6078921 730391461 821154470 714014720 906078854 868419629 993871713 716499473 665278291 497886183 712909237 856953113 571259451 704294218 412916890 357104597 729337502 186693358 342010916 920815887 548732091 106420971 106755529 593191482 523436234 784010036 98887499 891873662 828060594 580099815 322573588 654821695 473042849 513428148 867946567 119909729 895462973 728422986 254472966 637222383 815090566 902281373 592866611 839751810 569034264 710546487 931663426 108687682 428415564 196181084 332419797 444308815 369173593 930354317 628394471 85270388 283591551 672424012 745854198 510311777 657152557 381903299 128961810 68650584 440003661 424363982 139994711 762107351 373835786 63749339 570335522 862342332 306608387 809572383 947816898 12874996 697169008 844770058 348244159 908203283 516023422 302382326 335815639 368822770 789489 244147694 396137002 252931505 444834028 853876470 665075688 595388070 970156533 873542151 821055799 337371049 337946366 498728710 642655442 250950171 221989020 434374650 40818133 238639802 554562764 504847418 166225098 368887387 553313071 835096724 189072688 695885377 698355049 682372082 557586668 427006906 387595763 801917360 384712708 974344956 479839437 965057081 19216219 576266301 230168548 890892805 81278074 904479833 238670517 426675362 620989862 828744183 76018094 887285883 300641122 462174415 614191063 757815384 653024658 11964097 857782941 191082139 895073671 289847290 504570384 720812010 332080637 773463063 456314590 869717196 217404232 952934363 969079787 935316747 525640678 366188597 516656847 792867837 300311336 700117407 902997106 132803326 383672207 225923448 885032379 674983760 893450178 153038091 340575730 729630219 872395621 528158228 667436699 777937740 385639922 411564766 824286300 821393790 81785084 903186285 347623141 249827771 931661265 614263935 50905702 866805371 705021946 52321950 779068414 366059722 526947728 335641884 65310499 455887335 687360745 239786087 817846290 801132389 628849818 875284585 421438584 277588821 737140617 415114743 862087194 878319500 652552079 267421722 201261258 324833 445919823 935392291 690908579 937163316 360783847 541221840 544287256 961946312 507927540 609013252 816331412 538440460 166894387 317977830 629859825 555448788 742878664 875379386 8749768 188444443 543248654 639254015 165025557 885397891 121931981 326509601 399699673 929811940 970489297 643322421 459583932 573291433 741466103 371013494 920993680 854280198 313055313 89601997 750661361 636082599 419380055 435810044 915606065 221817338 487980520 150114357 487142114 456276279 986895393 269336992 383809598 863573554 17984394 483086588 550647555 712091784 11394785 373270553 647267643 406101263 311151310 958494534 594374768 339010704 850567953 785103357 144160848 146001675 169582810 932167938 821057570 807733152 138190 842338526 642413889 460690080 404089226 614679778 770474538 210156465 255235552 941483826 932562420 29214638 680764197 517925906 648924918 32675944 273012504 834394197 920443259 815336113 65350727 948668579 47286448 48001462 899838832 194314771 909845686 358719643 632459279 137792418 775759439 621250417 597379745 438790396 371853546 823177066 754876640 332931067 134528283 946991880 59241578 557061544 456267117 93025036 654109111 275820101 203567295 321485022 550059644 763870878 507332471 324083374 905376452 623034869 250833738 373463126 779211512 226671709 157238466 707663842 748620233 136403531 350063067 162318670 554821957 245379700 497046336 279584058 561482683 906946825 718789369 166487536 648638190 256893324 562448674 867844541 894367409 671864005 986824218 789573437 191338044 184386482 162768009 661559477 89330826 940129661 746155222 123501376 723662663 513994253 486118049 468926550 483221552 159518386 327890081 610816702 410973425 748849854 845506042 917146810 442301100 158967399 163283845 514199560 679356450 235433290 988875013 744505843 717338572 466546638 702343740 978126504 956175196 385053516 125077172 700767596 414902245 292759760 780048890 6033714 361912431 635048351 725160927 993445439 723267906 889819408 891133160 243108791 431351200 281939216 598789899 376133025 57479831 241934697 119014863 170670311 39644856 397528044 293448090 133430192 158107955 319020912 191727504 897588613 302081901 86563494 507384535 710729172 507038065 608271948 906919868 674163700 197930326 670230789 565289838 428756199 658141423 36414904 307505458 919415607 688614161 229257409 988685664 862165925 124752391 55530392 948277761 796055761 122405285 80369749 810531691 496140785 554320668 298379223 440575751 308108933 50225212 583611663 949633187 760141870 806935004 250282406 567627115 325038424 518717001 431566727 782315293 408673019 753362829 833245803 456997757 696697385 758678468 955680391 695176383 178635754 739551172 563474315 506132591 344971511 955940152 923434830 936275159 127344708 336022740 392150489 700912812 61916612 774922020 887425585 633327482 589863892 696078342 101337607 686570138 484930485 283340554 286840363 825749575 937953683 467778247 676400891 656117835 488548649 920612575 2786367 66591752 269947579 640724178 845100294 163202516 832738775 838537871 786769732 150190736 182006051 513524068 522873879 417002220 644079346 701735857 319357647 714459347 268378378 273826372 48785802 353399783 182959142 252183616 329644448 510619144 446318237 241397108 420389496 18175260 184891109 807306608 417608266 747881043 563627276 468269578 839993227 846004503 655269730 308206378 213273079 59845209 931022634 188362833 58061312 148947016 350272429 900217740 446432349 941320377 236086046 40158714 566300832 233022975 472156049 340735858 672259303 461404928 115781245 745689727 992459736 641394062 784186736 384887644 276021007 283566872 765433495 742921579 238980035 631843224 234036271 65400440 78544665 523903202 390500215 794452206 257173991 334320314 289136899 469496461 424795090 479570694 464252341 95527201 451057287 33017507 370370771 48446727 509801263 143137702 164581051 745103142 925294915 876733378 297433295 660499187 163276232 312109442 207865215 411890261 873438146 418961682 686980730 848366428 118183620 140269000 824197088 353462658 558832336 935645702 42517058 315432337 205289158 24764261 456303274 173827624 94553493 42674193 867726461 612090391 94679765 608910593 374979539 529689611 465901533 39087895 745204548 393506156 728213763 903593674 211644129 540793479 278803456 909016785 502730334 652952354 499936871 117526579 616981986 896074799 851935890 669574320 557434461 847007227 946996087 448692557 469405969 128040515 110170262 828878625 875629182 237124577 924344285 1329094 825857244 87879527 685845237 220540055 245644238 491784615 927479228 572901263 30931024 863022697 39189348 115113471 430046624 636928345 638220318 127985237 677763907 51959570 288111528 802516154 29294666 126691971 447810514 406750814 634697882 251603599 8308960 471471631 680883262 966967145 621961026 331815284 416868836 230704793 592399687 432419441 50864599 361100083 359309857 683795268 657976897 590631558 51130852 768866080 484495063 430498097 350992347 135770899 197625501 584430302 661286334 498780955 823893003 518272820 29575457 564976224 373959006 331284149 995764472 917173741 508306146 497598576 805938464 560835031 774079096 455590929 527096252 768914597 572237690 516417396 920354192 964837381 341950031 486808177 627178864 927403573 447229262 785394084 487322691 135542949 269415950 855517786 470703914 768739798 943658496 302387609 463360518 771810628 430827169 996716534 810731988 716883671 121024467 514220880 260471791 500419267 673951086 611875635 909698123 83058299 247182677 917477208 516687622 909671196 712118367 433360509 538972006 313571804 944291228 502904298 881894344 831085221 33567260 581221022 122086441 708514322 761675230 739240904 961697175 914170257 518408387 955159808 344366527 51890219 951388638 851179036 379945604 364790793 691739175 769116904 799814601 665198452 634318963 501130938 861759599 200706700 207491201 480425697 146017704 280418877 264179448 542626696 558866149 168458274 138079678 992544455 234771280 771729819 54001527 561805151 915706412 350913234 61220874 185442559 553025915 208431058 800045205 194029690 445269062 327238081 165587193 669686409 526477973 439886502 279209587 734562065 509015554 100874599 30151776 689816730 955871929 689600178 238805173 65398636 91331810 965187453 241284213 134145573 466555406 236729346 64379738 794013313 647375760 225372814 455479420 672531632 439048035 723029397 652503266 720836217 61822151 851967641 333787390 597342876 660013895 989841494 765345816 662999575 823331968 827720473 645447450 711476069 838425332 815411225 837525404 581235956 623061144 492612627 992316312 644124832 407878062 623646846 348241380 970513364 728986610 461672734 752924847 300166360 172291488 845271218 86096474 882843210 824263172 62426155 347158273 137594426 532146975 18063710 549313516 603539526 867164652 175181606 577310092 702543449 698965227 102780329 115519922 816305848 599580351 404844240 114061860 512858814 103775414 950592513 13346685 258778292 912714371 694514877 321696822 966291162 675524492 789707675 320253520 38998735 990413558 476179565 997828765 290812267 761553881 530275738 828067260 956386408 428135587 397892410 662245779 564145829 704922968 551091372 22487916 305656522 801938168 300196365 465184900 382333960 295129805 262662427 39731232 387133275 846521219 768125688 352044074 937678027 567851723 65023400 406732906 960662302 43896381 812380607 598262036 343169947 675535953 266462579 676808593 276320442 516033521 770676542 387293013 169517022 657092647 557977499 72530430 917625335 534484849 421301889 624884684 294686795 296707449 455090390 570745684 412386877 432195476 94370957 289456650 966387422 931191543 499020548 66263923 416274796 713093298 243567110 693380218 786686260 278052834 662821305 706508218 902567278 120938835 240270524 847969979 759309329 185599317 65119442 320895137 546400439 376494285 865522237 808385703 376925612 391716186 809917115 760552575 700036126 367636521 20812909 152654134 239723392 656114602 137785947 954310323 150123033 11847360 361557609 755175509 369412515 993665981 194207974 196765007 370791823 727938480 153304651 262102104 127020407 177270956 342577537 683790885 315467009 525055591 234433621 548479874 141729969 682675220 348433437 93146932 744331878 939033442 726054049 358563224 741861591 975641027 407581676 417842163 948953244 231847775 25838541 377312849 873364332 112421024 812800481 462986732 592852718 543067881 980081722 868102813 230768460 642635777 480296522 137976158 358053491 425422231 421793332 832155111 119888212 631884027 975127932 303305007 689249562 607954684 537520913 628907079 808744361 670750535 447861809 754997794 968464725 187609726 737421704 735353251 110838929 928936200 114004177 18873141 235348714 565386680 696997360 256614633 527476024 394504794 918002358 125767077 949630742 565716695 519336177 84382598 517274067 733964364 237389516 965110852 460807775 788414215 414692237 696247956 529368223 229704071 256356004 48980868 705469059 620380660 55510758 646600636 484427605 343964053 835788031 981348502 157077306 624671587 48765431 854134749 421604966 160172917 451368410 939647781 436900165 157818433 667851370 177194189 654073002 246505708 439856583 175455376 517759660 128654947 17809504 260477510 91347703 21008975 439950993 67725291 735591446 434757591 594632664 989539899 3195951 967885060 199989114 718215012 849527299 487729461 623190273 199770301 608808764 615757180 873234154 910412917 568956551 303790700 359194726 544309800 450280748 492444574 636513089 57668406 631759450 510291775 778943813 192723092 446064072 110868040 700799192 970538839 709806407 66101120 279411859 645552873 798551688 968544055 132472563 986593573 512528590 685538958 273572836 822031623 702668750 967964434 536443759 197247595 863030199 96190595 251164186 229419404 660947819 704772133 577455053 772737248 693500303 802930164 287314469 139170923 796482754 671085597 446186480 539792567 215872817 580905533 819219610 27516772 317883003 918724817 619320163 353767004 677524669 665857390 279164398 628512647 295265560 8500199 414223045 341423243 974072171 885133742 725536964 575897386 853042793 830992929 651485320 189831656 194917084 20711256 59419186 138429541 308844436 772161132 835060188 236809846 236291332 400838565 809440821 203738054 653406419 240680044 994597534 714906261 713224866 736619195 121775558 900175162 268360225 658847496 914722972 206036489 974722000 887031280 953390347 16148370 548500193 90036135 771592123 599393003 308414518 440325259 797006620 305134732 728773089 535363339 410066343 275034667 200809587 687051093 498385249 62116854 688758898 854810280 750584025 29776375 866558117 331868845 640086295 331325746 264015395 213331525 456182016 196789128 956588780 964411999 23670620 789512019 663493931 204785924 702141018 979442036 177340175 430931669 53911053 409826025 258424458 656633877 379759898 766337103 788332496 490287846 516922086 802690833 973146775 524582777 782499174 964847221 922943076 750233817 788696227 277790588 374537161 649859997 668004066 258294644 993714150 311794664 83992881 338730891 561404791 893058892 300715224 794327430 451322822 417907474 508712750 954802555 702601297 407137918 353001130 767951733 609594914 166129012 559991594 576419032 830401310 162186343 273755337 152683003 852132087 163983558 191739829 904552793 985231533 138880063 216253279 605602756 804369844 177322435 627864892 241715015 858608044 537511844 798664038 188183293 417521333 316742563 252294651 557898992 780120256 839280942 906070952 951902468 36670302 563305351 507335059 390698073 42665855 958065929 173252030 556058122 216406988 95442130 388832076 520756708 297165327 38492341 83564674 459663248 943976762 775142558 686449396 298723225 720027217 39784471 373235595 936726447 98866945 17752854 995123902 432519785 392322746 173931471 624447887 895636554 710684372 852352882 950088506 305571872 255877411 840212649 801170724 873358252 299349273 177507804 196474994 519397091 442992406 461834888 276687930 32127502 210380883 839888060 390704059 924431506 566237820 452401567 416191746 946014077 637921059 2361285 621559212 501756306 891513072 486461541 746959635 267186226 375794506 656172569 17525077 307649361 394426328 545673062 987283389 972632377 928029469 321388174 196301458 78415187 661816580 409978382 887011201 174524922 459226760 947036970 214773741 12362416 291283196 122429206 919572649 24586248 905853339 807305490 225079294 924306055 562995896 581715167 130641912 903431271 605966583 978114375 313498244 190681860 770866253 520867207 46145290 978851265 26262998 894875304 828442756 888095460 909740994 441970467 530140644 161075951 57903832 446757461 583011026 568762697 636016717 335939750 513173879 779094710 936489441 440478377 277032903 1776493 163800220 429144218 905979659 250999471 800835176 259154166 861563266 698547094 351031006 272098640 908545911 535158538 617625770 915472963 804196254 267759277 540462320 724439921 874016536 825084894 462715887 324571601 778483467 160498604 8693121 351026831 920702659 5652266 136192703 678597464 874415240 17684145 402478570 159609129 615904142 186356203 897170820 529624362 396043081 336745555 485482253 753954678 595628012 790466716 865921407 108483693 5597850 593016278 867601253 567851315 818849177 381002092 534265038 495430284 501200874 996465876 963631690 639237686 667883579 357995640 804103372 571904304 595403475 275712849 944190094 867769707 878494212 604924248 304647666 880130958 841552595 61386644 660589745 19924149 713295767 328415454 660050859 438496443 836841080 927504695 80206275 561516667 317199448 275328076 299397780 578722825 666405477 807717383 961545877 760637719 497554040 110258369 494554093 733874241 235633309 612025468 140351577 90691670 467324117 479326272 733893555 930162360 190323411 728611027 822600665 935621132 152878857 170219809 325423156 65241267 282415751 464776402 959867436 783735498 94639137 841488687 866866991 393190432 813974691 495216559 222281892 395926122 624707055 631029566 592996315 397746009 579949920 904942180 667313235 364076333 277530028 690255069 191299317 245712947 311507147 677692497 305740515 908555839 727263448 873291018 156748839 298152028 569712132 876244819 795751091 443282735 116126807 968242080 827290596 754587808 759261047 530440421 433749437 763800886 603476907 816892780 830429012 843216560 413158828 666460184 350307457 183768711 955555142 383638227 34676139 609904803 562898024 440160961 704654262 590647743 937441153 314741186 298725445 882113571 909440329 403532638 12303665 51862748 370675735 424287643 21775699 788257687 646505632 890500997 735703259 501185511 62237758 315042429 688337067 417431967 489091556 78762587 708230866 223538541 899853460 227871050 980707755 968638845 956401626 205348917 473486433 108024457 32863058 421811716 257051390 895185492 46833555 650478153 400221868 33488021 642908953 525809267 697425284 263373378 675334901 210933919 966730854 542454273 994465902 377607661 788896607 518278361 559792 670859508 271135682 97851722 117351138 935087045 785462026 108344539 969456483 751248764 681890964 686027507 641818269 963557924 941915253 914244411 742153138 793381395 268327724 939702185 474424889 887501569 60978042 114945404 452646978 599982480 131996665 349713336 121670325 199505766 488460982 920918083 586351869 644325581 497978351 661481322 968400914 910765144 282767435 128889762 871888007 790412030 692781368 115389817 689562238 603436548 310654263 323412153 960858415 601970493 912398815 708415535 115988727 978780741 501397211 383438762 164847042 169131606 637563726 176772684 574844592 146732084 602647565 857100686 716393336 213679104 945389603 210023474 838111905 972442375 903124333 211552240 150553489 726995604 624727666 554104657 69981293 424134722 788336625 831773 578014146 523907 941473132 114559508 342479791 60815796 101183249 878660489 545395637 813685927 13729015 552684761 361559742 29277146 406764140 727321395 554673530 712562881 413389271 43884998 854650781 162885902 590234441 560740556 779525404 93381757 252110508 632129076 830220107 85485555 785954419 899302773 771883817 984425749 915874741 356544010 30970499 466587738 615957199 421410952 631479640 294303749 51207525 326508531 97954169 194828789 334181115 293360135 459555592 145494859 60668127 322629492 321187357 913751596 100513779 637958754 991425699 846018790 409494697 116034503 654762850 579147404 473819251 538569838 305915267 952658942 339517424 981444712 956327497 3289739 812593489 888029489 89881190 503350406 307965465 773576451 564463923 39501186 551541554 505785446 559195014 857079287 972610079 583479855 981523284 46839315 437402382 602848619 194990552 907118307 681343783 785245066 383471081 889642954 80053239 532930414 417157454 725908286 316666332 116644170 999912872 544356813 328053488 110070808 796801167 831203232 277727984 141480904 849427464 459025358 98880273 799012153 772443360 489714628 827931512 156638358 414236381 623466048 65184291 361824958 254210695 331689823 269610392 774022358 87556190 307344803 444060193 208982275 901707628 708365953 891669280 43354779 696133829 12301850 445006378 698899495 303877639 963472394 271409980 712134344 492091494 80005884 154802770 906867850 266329999 24529064 790829980 798054325 827348221 696195177 747223926 734951112 515227178 576409739 810078918 795534793 354694493 970670744 326438767 366935534 200699904 305991487 40761738 572012990 968325652 867870449 743972559 823611212 963525742 932473280 94000191 799354038 662722152 936053922 192869657 380245220 478318928 728133950 682828438 815337937 108838414 560270437 410268938 703858680 955808779 451566954 477956179 892537159 159548138 371794842 555384391 650746367 70764253 622321630 405697648 138346632 645691287 596727682 474464349 765622021 623009863 805475954 844691007 794893522 779786238 272676373 757024423 636837523 325332764 614590176 788528826 295937863 103857774 875214953 56204317 350813176 607127595 335416482 844008994 137759652 355480530 36629760 713138465 535304453 820622639 745674732 258916705 752090518 344413745 906626446 620248688 707326366 625126433 485856463 823003419 327179035 640745010 259907074 581756444 274152353 730703446 377632422 851456764 323960688 306065634 539707631 931935817 359048121 524314700 187194801 699648843 823370790 940930602 642662468 209268889 843850356 325774415 363916791 991007741 146126529 884909049 43096603 679552445 79637472 268864189 344471994 537823435 677195665 819317688 992125204 309113890 380247351 810950738 495621655 877951001 215357031 253903995 297116775 967617780 170676504 107857878 521702880 87698996 133008149 988536961 737061881 537322712 626291070 277374165 849232775 143334145 882386893 812479278 936403083 227954182 671864023 342260654 705718438 535079676 714288167 905413981 402622883 511302420 639157529 280844148 786698140 54939757 382601622 250702928 234528324 921613679 903575383 243987174 35335277 168479352 9087001 145624921 118157030 552188562 182679047 273352754 955854415 438344598 808779445 21377284 177215456 679981913 667620695 711942787 232385338 585660749 388819759 554737867 457284456 547184694 407111911 144012200 409874383 961544051 465270039 756517426 146607101 222757463 762227721 90786716 785611098 950745112 673648424 473761646 711062320 813502592 979330832 310042323 299881060 89311222 819048422 397039853 540055519 109897772 515480572 159566151 359435846 890389414 989907030 303457929 830996967 858610821 403499192 827905625 789337841 646168494 144844158 346704610 766297073 991501510 553693166 978775127 166716177 738261657 867496079 525624929 557040279 661528520 157687582 274105596 3963838 186428447 914218996 399745812 237095968 428438200 289324282 260983887 430037277 581153406 578942438 535277813 644478505 102267623 924318290 296058037 752050303 166926458 959802713 304045600 178648045 333026834 777424138 414064431 304420561 454057914 251174907 821031711 355739777 348721371 774183193 56687506 295368385 649368407 386846496 940725789 259628187 781451426 162639344 848130259 990590007 988927899 820465243 479866363 106530531 476496704 681104801 920299035 643985333 290141291 631238230 647203586 65125367 24987026 930153125 532620613 570548909 735449893 333715509 536437579 204586146 537683398 683688389 580050429 837145021 911005937 627849576 24334857 928958396 408302414 302723706 983166550 954501395 121399494 116109160 86680088 234799277 993297838 784428969 504486590 383597474 910407837 249621630 168299419 196917331 351906627 296492620 477870593 994903985 404401264 50207794 284864878 525205485 908070190 865206090 71402199 957908405 331362135 491392463 177817887 665909221 158070298 76791577 19014119 602112962 738731622 644492886 311489170 824256548 518803811 991320804 197295311 310591743 560230869 427680990 263429790 628367202 838825192 628166901 445958501 14277898 95697258 367559958 820373575 373248983 874287212 241903486 840820213 123880288 68126391 732326857 280638722 619796630 245865181 577074188 700542196 288506533 744308819 876174045 562494935 478531773 533694652 809952843 552977571 506106152 542966860 120833087 748931470 876925645 828049836 178205836 794571532 97038598 945033051 836630825 556220888 219874307 550026645 857778503 122823562 551746161 954393901 386504289 47994106 490778870 735344692 344214886 809351588 660656084 769847398 182747070 971657188 840215122 920631385 294132791 40553148 345464825 602111190 245343455 692904357 993713780 951936796 952266654 471398988 269002453 167824050 674911054 972758183 803922566 240541737 284323529 117699109 492939903 664553803 566997843 725170867 803120938 125586114 19600867 904229352 353844671 476963784 896454942 421138460 914008234 206794938 673850708 576478133 533885501 504585164 998003412 420080886 489410759 600061008 191339215 48895683 91399372 345714109 644430401 25916556 969273997 259957273 211953108 830410095 654723852 111523008 640292329 994028505 119851254 61476359 192532472 31844338 573993507 539131662 728260217 268562153 861468404 426655727 571093443 97510052 667568189 641388809 390750063 28149925 371927421 973913175 181281149 11774561 558165791 145917983 855605127 185539070 752170987 709515411 76700222 889348247 174202790 262268359 131899275 412366383 721707176 906484893 314152771 247051702 169001156 269865526 528354384 898330180 21826196 34842178 561941549 936425596 627298592 184554198 98199160 472330503 981388720 704602881 46230968 253518070 534425984 165639266 43571739 668953831 802780897 809113254 583064603 57341526 756096951 471521229 433913369 226659044 921074207 397557828 457949408 446023443 66817429 372511816 933591198 220586686 875470286 171018445 219933551 123495612 894790951 450661336 860689065 970066033 605214566 385017641 739042887 714704288 361153954 690987677 779812388 878559065 312121007 902675922 73967910 34847119 401187700 735790805 333179635 520259343 354720042 74169038 483427134 112599657 249162741 470147442 281350342 857913906 136266289 890190430 987425006 588636336 858101256 50638306 637249717 422533871 828012984 328999900 839310821 320071705 417752038 414337157 585990193 958679400 933626663 329729414 579672393 552816111 465776159 64836335 550259435 729972169 795654900 11308626 509968595 560765225 396220687 701245711 937748484 92302947 666057029 782113600 658901510 575348717 129770420 201009679 324819605 365674470 781515973 968205566 379795684 760256078 399314748 948265650 733001252 378663017 15377739 217053118 396846266 176358147 432418084 474389659 281490319 13724972 69595644 709205859 775326146 114271871 768708477 492610147 611381272 962382375 683213668 625541165 437394329 636531737 108535477 259773612 493214487 221945645 310045819 31751488 33436416 119670157 449062310 437574238 224942529 218127802 574716817 10943690 141249181 970134877 123487574 499489824 956593561 725559096 776341282 618086319 611470422 877515054 882123382 725285458 949732727 475576494 658376207 521190954 714783126 715943310 614101086 676599144 270947944 905415309 299210185 879286635 224155461 936780909 84653988 236342942 43570425 146287025 185583560 760821965 677680772 752831924 83753877 189141544 112442943 121316870 638107302 157576521 814946902 613564423 271013163 793038513 25187551 414487997 834545380 257938674 342246883 589739519 981191611 414675745 248768899 959119953 872175511 5102624 948985132 79753505 999063976 975873082 62644866 634486000 267419228 886002726 928554544 2963951 422919465 332227888 401083920 99605804 434544880 467137909 520296623 281203231 283911639 350120027 553684776 198616045 522927098 424831292 175140286 894434567 556024934 223412622 232957904 525271412 529839627 821574667 296642943 513062529 777519664 228465987 395470198 293523160 796843904 310958013 378107515 400574313 510685862 506481897 995301425 470368571 368878841 369189605 394631964 511234920 955828025 249336507 549517553 940340110 819564576 56876812 619931910 365688306 450089923 422222519 641984979 218801426 641708366 874229354 665966337 935566838 471197523 226232261 852047589 828698284 450247123 634657443 35515587 847663136 653751849 308276218 604757290 381067165 549551056 208641211 872016817 621395693 504016964 636294755 646837909 968359437 419555029 836108926 670802676 763113567 393372936 423950894 958896986 303816410 564148188 288307174 155314039 722553767 453497609 561024593 505610480 606886020 759650052 710412594 455725428 59875730 145756569 473633978 710156439 207509530 196756485 680027898 119034692 893827719 401245898 275310660 626511649 571587959 449025332 341107894 523099415 98259439 806052210 506712039 405126173 888897302 345271001 795484079 405465805 45606756 462725256 326734275 756668952 165055402 298157187 77258642 944688955 934404915 144946004 710226311 511376008 979465167 223426470 303030604 744081307 475773081 449955541 899442345 596456887 138470185 388413559 556015036 437383868 707739573 87525914 350673620 657820640 778478733 772641798 85317171 529298728 474215102 396930362 135550412 702818686 181046372 824679255 770489977 887573019 751120429 388415111 675464097 889047825 832042005 684827180 963044743 292406119 54563888 234079767 620795079 225814899 251854463 697202563 735390563 772453884 237318862 148515954 481574040 966924849 247615877 682201781 441965649 163774941 37585500 469992696 969826786 849518982 630900464 817945955 222520053 985201879 104320877 413120376 899039567 839817987 535710877 26256370 564146652 30305852 846589368 505613928 801555245 492583986 866807667 281454942 192269526 611342105 835570683 326144856 746779897 886188429 577251669 896257320 81738024 936368541 470106934 822341694 740716724 792140527 627380660 633989665 417942042 481399556 310579633 935715720 560405636 886283050 997950888 565841294 444780868 703195139 486100784 674121704 101240426 153577455 53455653 535710930 230386996 333753509 238366183 623964916 349277355 391259254 697855736 641083007 813767753 855778223 528055561 94974555 376446667 952262116 383608890 494364499 783063710 328953925 730422051 898161485 893304405 975670267 284093360 125357158 389687020 528966093 549707322 56681854 632933908 441319717 675973553 423701121 402645234 936366099 900143676 813032164 525827761 225890434 952807644 525325298 158831243 546546314 508377145 253520690 845333925 73611161 488825329 847748503 112079797 775845111 313023996 970716483 287305291 378894832 437386000 119844681 31177419 927763221 494304216 115448630 239344488 748983143 734516156 978180547 237898177 15073135 490575049 209279393 740652302 715145558 246393870 861547005 663157559 206715068 747308202 361754185 754172513 110412240 865648899 526793185 338495464 227642704 797162118 924047198 639268677 846708946 247407522 614566462 513721460 925151854 484630245 880931045 602075808 790254437 274187773 866851461 272050649 710836145 136072864 237569464 594451771 370363741 763169849 573766573 138936160 623921234 360419264 58735399 437079095 736045440 72883564 127217896 892133467 681939787 269601279 772552256 638958945 973585171 981322774 308273027 255669104 450188166 260337046 127299263 161035185 451334078 372170845 255377088 246167755 90289949 866298653 437844035 99591011 77804508 445889925 644210765 704054329 651033399 467210085 449202361 411442205 246751196 238771980 146957781 575712798 224218718 523063156 739469546 740387122 788866530 249206839 349915595 629173976 891926458 757586572 945343469 446011464 641844532 481130419 865221855 273083792 725053447 722674043 129698631 2992042 844138137 22927164 759334273 78109245 367988342 61956795 460090162 604774741 860726346 671435019 632956006 349038222 341997511 807174699 76662675 47656311 649982525 273277056 214471449 408120021 625621008 986259133 152180296 888642851 507863364 536901373 714294965 313824280 147635892 331180156 841042895 375223525 710048174 683493180 955703341 351646700 571663448 337893315 686834724 173514804 541560051 469569480 118055726 606452402 482102619 986250045 788049039 802458460 233024580 483848203 232097815 568474037 165718715 514811305 828716759 515426084 498286110 864507340 771767648 467991072 563595400 211591444 697784337 803352214 824566776 143166446 345606066 281044180 542395602 698626503 936911307 890654369 722856346 908243944 38541818 541972393 771736160 546416589 44948595 688071500 49810824 863117397 621122966 330894488 829405953 112192004 119253772 467461049 284127133 43843452 157089764 868067486 530520001 50841599 929106241 466143435 311886853 9935617 264384750 918535253 852860060 467179527 333049736 879836100 623085927 477477501 843967075 565007553 3495952 264731251 618222838 304482519 464965415 669834930 584285633 121250935 599071790 769531981 255611621 745554755 160942501 485635219 929567345 998185940 189770426 588267822 789284076 847245340 703426116 152145016 601079142 521056682 786111178 135837707 592898271 601105764 152003013 662211779 11994786 229512384 562248604 790321224 287282118 199311289 471547263 487471530 958519646 949065914 18005143 334914737 426646111 426535416 502388239 354617674 571365911 379505646 841783190 636614037 569844076 340161172 456245214 320634615 524616126 905425284 142980277 742779305 831029204 947380075 557687807 678319238 574041271 207273172 12182204 676146736 90253797 494628991 675663874 656995662 885086382 180486301 310965568 189408563 272533660 832378190 457136461 548621228 695142308 393824952 115945025 175239886 324152412 314830266 743607190 578211244 928838963 403847293 917676688 991284797 203543716 37128347 32395792 330564348 730409786 56359543 398124388 656122865 392910608 254519441 827799717 864822490 240528574 510045429 121143743 458678418 661773297 427364910 748251804 162573437 468835019 801199476 508956464 150527306 109005195 447264675 147723955 253528437 546135968 709837460 300862245 932382861 689318435 42163135 389497544 621752398 939672336 183195372 259621528 626110061 83079869 765884879 446314798 125629085 463340860 746136199 521502665 487773436 727201628 890413289 268007778 420537316 614869096 364518828 905492048 232759797 800289697 96807854 66721566 623318254 677595947 756491108 281150157 900269853 385721091 42921545 194467586 162421915 912759043 896344912 752279247 723382770 737732939 472655106 133436508 36178262 13179693 933754014 359488280 169368124 525485603 481753722 988104682 814028285 795107848 212595625 88210059 904922580 426931790 406695800 682123586 475461994 341956903 142385773 246581927 260797509 610804730 183451927 832235801 45159612 24411031 837110827 300163714 253717305 253659341 497309667 983013686 638488788 57278182 327287351 612076368 932220813 51685865 872978362 50061277 751324536 580881791 718253716 779729642 944489246 740489712 10506820 433743728 601950291 586593867 693798046 672063851 124080753 501351849 719963533 438048013 518900994 691602444 204747061 868801026 301978940 43348843 641831642 408679213 596622086 462168784 724309372 212905728 983721313 755918220 33388853 264550420 378419751 48144671 490103496 183946830 833079576 100762417 250574798 699758357 268735983 343362359 381837683 191977901 64457512 616205005 625670569 852896539 564148403 858936382 246192217 855510111 583525985 285569344 613185816 229488385 367402852 844257895 134757686 435012671 39335694 719905858 944827688 670517809 529636642 249373281 557732211 88006425 522394631 201388947 815365461 201590436 907366829 438417825 286104533 538408975 806016451 372009601 251093097 531080976 618822110 408494382 731455927 985286835 162400522 11519372 375148176 700680124 817410468 705663889 718178661 842672599 690052749 593131546 251214082 766601263 384273687 906794861 966111196 307919223 791878261 476486888 36946960 456753091 623792783 182808825 869536274 599623639 796605761 269700725 752543184 408728012 517940397 578262406 475313282 451742419 587104328 450756582 663410350 284672705 811944662 422011579 229202903 500624360 196536206 170736862 69137080 588146080 789831040 897090174 686297758 795972045 612458418 736549493 765942690 605986210 197806615 969690068 293703750 718691989 41511099 510588515 900790004 952622250 443890797 788748162 777810790 328403867 475967703 675849959 606778307 643517682 863367720 797135961 594701398 922982510 909450896 684315965 729455841 434672520 92063970 121430790 288967114 186544810 670373555 176652016 436152706 977626245 413447211 379575968 876923860 496735557 572854235 843639616 503673527 435711270 65447563 663465321 722450931 820517878 818145969 183079011 748146639 299833620 623292775 647671394 239000275 367789124 92674066 319804734 519114936 882622132 159940342 67696816 303068661 135883826 558047969 826753992 71137791 730473720 501548118 344805282 156602081 324871139 358432676 278314294 878129969 624968667 910449035 271533813 615404036 414816237 574610190 290746080 114967891 273755581 137865843 651265326 646503265 991588386 449219322 37461241 97093307 756468712 994572685 352506425 474594901 944513155 77439126 360452925 898887279 280758461 326283436 475419743 614116627 2951231 222895583 475678702 798916195 19613213 781250352 748962927 776842855 161536529 943752091 618694793 541308444 756572981 216963361 120443659 451813100 318286239 973440983 673984059 897567128 16444245 765438607 298078928 737267702 409808477 40335168 283281514 708891060 825376228 162706793 988475986 48683424 699267541 450481765 142905998 729206202 622683592 676798854 726129670 374396220 794708754 997835792 346298944 174463552 431574364 443761133 571902000 65304488 827305793 229717437 14595925 307264056 948905523 673101162 308972784 103241350 175189505 97017567 578322861 188697801 881681418 939421564 749586438 227647409 629322547 368941747 37749039 70926148 172785040 967595697 326286670 259782994 696190649 785101525 120952192 253933514 339211293 893043714 632707065 746136951 699213253 761086025 475587318 597901175 280622067 138957650 153323601 194830757 296002630 89681624 991358678 782726964 155294677 157878133 250736862 128903410 378804362 47600644 355335535 472594013 565593346 606469946 654865727 691852739 555966573 117544489 588762331 376440873 100300104 253694639 527326246 436001799 950921021 924937709 491796704 6126576 223431862 426186393 669827193 511692617 528365853 433440783 890157766 247609553 702377573 794530527 709098496 728419923 701433714 951479747 583411806 430473879 158484598 163205491 327710668 287315280 56009385 247165487 107127358 204712684 20848539 486118137 814936020 113834688 122781056 404676352 810338544 49143282 277960473 62579787 813995293 80396604 599469120 932938828 68459953 798868358 408812078 903224808 539815938 221052798 131261535 828894870 467927169 435939256 823561301 338743190 429653607 519882331 910354232 397682582 966797024 337863047 252671025 520694571 221623451 470731683 521219882 937467784 378093773 332557352 653870682 837782238 354170035 373383904 999089137 829228779 908382059 142012938 395056670 400269294 306486175 125048016 244594544 622444615 585366559 551940586 697300899 216641232 802029850 40615316 561049815 257070068 444679290 95974329 606416288 982215143 352633248 541641433 652649537 559624775 65208439 217532716 276718931 243930562 121488887 161499511 474036965 258120778 607529480 526330415 675113093 612346967 784608692 787211975 294440169 699156274 840082335 333453326 781523207 738104767 54609809 678746258 847662654 572345570 622404933 341326934 594591130 971522780 163308702 906072494 325439843 338050794 797470235 1221316 812718178 884484854 291597585 29231483 481519301 184930246 44674380 483479350 896491316 461711529 625410349 489927672 518631307 195985248 254723284 530733129 929196033 643287913 149794041 282571467 819322374 900308002 509422897 644047831 189988169 341679492 262749334 812861885 242787596 707282101 950192028 256125496 384004938 970666317 934112519 725284534 27135337 156108415 180034791 167221687 501318642 720212597 668161633 548556964 340469227 661097859 432127107 102350476 289145739 577855975 310218769 978037092 909633419 978383136 221364378 348221471 682552856 64810506 628545517 496551002 174139556 77352180 787650068 112501641 310546606 208444890 273389528 469019303 685520037 67217063 441371278 949139080 975498322 926503858 52832281 953639138 554462867 246815669 690737259 955361975 321285883 452530148 157899818 190668776 549954825 165653012 820388291 861895154 214090967 823913889 268775051 515779536 875749391 611389948 55793075 997209432 722775506 938376699 197657848 672940881 967592987 766723490 784775060 121024097 191515641 730057688 411184811 923370316 895632286 873437612 416122837 620495901 454477167 945955539 966247211 897998723 623188948 413387872 5098530 187169253 469875415 381956807 492269160 272456192 163891536 85097976 296483009 7584650 900806654 416524055 551485960 362986608 385189719 718569699 21879479 563561487 188693909 423981405 231545217 436652944 824869982 720226449 384718700 204492260 706755060 367311926 294667611 541073658 781413546 971313072 185420157 728951537 152141830 851544794 59772406 648328454 673566585 908009830 569142634 655426672 764713784 62447089 750258471 19805724 319903749 984339449 628874603 132299711 512972026 87358764 768585040 688965203 946179748 346650523 434208834 828079272 290952493 920811390 177284801 66400674 83473523 520485231 755980656 643361171 892324920 120077166 568324201 886857974 834460117 682390335 292139521 708216544 73704858 503058355 801966096 698522157 540570954 669577312 749393705 891432893 461050147 472011442 336485659 910014207 199011735 511294080 724696119 885159807 644239356 548069881 578793854 108107855 36490684 553312682 311979131 491987934 485745681 839243933 958332475 561362153 144628068 728784035 650387918 554952699 935441325 533446181 420407034 745221390 119625911 667016464 143750010 104783582 479486567 734988076 428145162 25626073 760901013 340217679 913299163 612039253 790335300 556681792 792275741 60043933 200733035 400521837 542935309 75821941 949928774 47762028 695710404 546487374 266885987 853098548 336272726 19488179 745381225 102689443 114165149 888472872 23730466 629710326 509125462 55787253 33932959 38126609 592256303 702515503 427576138 818166067 183812227 427990912 934922131 548748712 951406917 958526082 586460872 296810442 2817713 452399017 803954896 11941756 855768013 771185039 443736400 298618078 502500841 375499149 286518376 588863281 734783031 905090449 154095872 730283290 75615826 859074837 154085277 651018355 483564893 980584220 348775657 59533148 736333664 352950397 132923572 195856237 262010990 310990155 486134639 119663921 850901859 83071580 73209194 610954337 469020493 979992107 504913268 753650021 718367255 57824069 39103981 931100004 457698223 555924657 624642079 37283229 305540608 460801071 843569227 384529968 906902495 720326808 394903307 587506410 453861751 171123834 410452622 360837700 33991061 228342076 809627617 363610103 708151627 501389319 406373025 708827218 21051985 126942292 915487073 934014374 503017816 197968974 218984679 987185265 886876287 594363378 737690854 115083787 115888514 19013597 760083533 896407235 251257216 123259433 511580196 751660605 427446551 745203948 385689502 934667115 6282391 606587518 443089963 817917408 683913377 903884796 206674800 428281679 741117855 922922038 979010156 716348876 840138138 531811236 123114622 670794712 593921644 781476092 887335980 328729023 198543861 818046580 186437158 733232899 66906532 453251050 597190240 76613650 636743720 262897274 348790143 888780152 284170420 485147870 646070882 739378974 24828295 575937980 18598342 986659082 473330682 557165066 119016645 182972848 839587726 331385790 31102127 319868429 938419522 690224937 673824462 935384223 240778029 75164977 573921656 812427565 882816635 973558788 123780307 801813187 627250514 653597870 200488801 346940944 357567783 114119552 993154643 530568445 847128097 579305176 28398871 528449886 733686970 966420400 205892134 158418043 200117119 599657776 480057242 411571143 914170086 249070513 480792286 840306000 231977204 946448008 354392690 354332798 824775984 245295254 421179334 527681823 325570147 728269235 543151021 575378939 28963573 566662897 211014887 382422694 565781898 385135565 587531447 479775221 383890164 624261305 673122441 144507926 877248541 193179658 808901586 406478333 132963151 600207528 654347380 994482254 131824461 966320934 411089772 497143795 551076002 385240554 935369345 562038655 692581365 69383519 804657213 413583770 905594061 30578475 319738970 512270259 981846131 704639692 390873609 974751751 93900827 581057602 274703729 606716636 210263590 998992996 291695078 794381232 881111519 643770113 24304177 522390841 504703252 182935541 697169260 820325184 542001293 257779727 552285151 408162759 123511071 602176603 938188561 207886328 532402435 208271039 22614585 253225351 60150926 354594391 539187931 365812167 875300304 494770186 554035886 905592516 63199050 600477934 248141136 340164382 851109178 82922422 478546495 278837083 818195040 726679505 83908014 628530149 394562851 526190802 102624737 698359241 508071868 643108405 677913282 180661989 104404047 386087912 937346096 331371666 927971304 400960679 703199334 419717668 964464956 932912327 849219887 644663028 129981895 275546227 211024896 527851729 921961094 702353541 371814362 696889966 148242434 500732152 175447011 84582485 539632436 99585769 845902944 446637520 918984390 432857956 349141305 795584990 791562554 233773333 25162351 170312975 427311322 329344285 484837173 777662115 597914884 973335365 175098918 861004393 474717484 704454965 530550472 732230403 383554231 568038959 987536602 125372281 315806285 811326300 623920114 536478780 618576017 363613136 154113519 759275959 890079553 563718951 795335308 929079549 896180630 309994133 143872525 202833940 810279055 588382718 692708115 133501851 770123265 821498675 202297878 231723135 322223459 218074183 600656277 2162259 418719852 707333837 75075222 211508618 414706423 972601142 159942219 212910122 609470246 380331226 421329951 214155474 894105146 241204625 194464144 189655420 702849278 734402640 691511327 250738423 423617343 773588520 586978295 842350619 485774690 173604585 102770027 11444211 651407901 719825264 774261035 46577220 919238476 341243857 682509041 311342635 796616036 24089408 308612306 603514653 573295243 936633577 238019896 779913640 399709920 599912359 993861632 943547445 572167697 24006306 906512514 13810014 709781914 506799009 244494924 636276040 355416343 710905846 782160071 882034414 203139192 558118731 159213740 921220024 174734340 420670188 290262480 688909958 130932239 945677730 434278688 835690955 868023843 44733052 701663305 986410894 80500647 825517790 782697528 23892081 250822395 694459273 177592362 253395304 37692163 32016113 977255154 700842955 152873551 370136408 464258013 882003050 67590696 356399013 366473384 791059658 440620574 666017354 206065109 754015279 55667057 739471175 43788052 269453118 765464153 711266133 313061662 940415802 767765529 58303517 706580888 560637947 521593217 438839176 537460454 559908062 274433915 505772592 504363682 914453982 673492608 383458671 375214520 589335972 186999623 510021160 694233825 717861792 583656745 416034884 478257901 374635300 505314454 106125720 496648494 868789336 31325851 383789555 298663686 374025313 380018884 229686777 241493559 688638048 390648928 693725879 890377124 638419653 106351701 473875145 775962689 756689264 310641990 700947059 808752296 146438603 410123337 559468699 466140080 533205045 766722384 450573709 367589683 139332832 965127125 541649273 828736357 985011357 386497037 970459351 877974080 754110799 785099005 928519352 246889663 358370926 891971428 385039115 611959232 157637189 424351458 725749776 821471513 760692802 996723127 213188948 404073636 526298787 832525773 242215143 515161532 493841273 447954119 891417239 338213387 803888701 818501658 808784946 632743647 625591137 448337176 814681598 826818900 547468301 19266855 769432576 940257048 906004768 463328435 290689453 187521216 928886604 364110897 187225407 103789479 650668006 202216689 992391680 155006843 76434367 457247285 319641401 875022247 888468406 621417196 505185258 558711596 60314967 162830085 696842864 352328319 301634267 853610795 61303939 491466660 486404834 143017188 438556064 162325005 856010453 421888007 703411521 225380962 524438421 481669731 183884383 540853882 859917404 597574598 813557250 707168121 490751065 366194441 524541656 459382506 256282504 918812343 907429850 265851281 381908931 630187572 56494562 863602832 521277971 528332137 178572422 524939860 477726694 77609469 478992592 85952308 306473096 161421014 525058559 147651159 673511282 610691882 240760919 164315939 224606004 849619173 495211426 747366325 368529942 241279642 114036796 385561318 983875507 266721564 689454325 423502329 224291301 257664493 926975291 443925551 1604865 819449095 227111670 212787746 584804052 154990974 557968116 509511044 384690342 751063462 208213811 804875042 729361016 216329413 927436944 691541540 533513393 938378392 439855636 905358601 106690503 510276178 84346934 185885170 638001418 626988348 441863996 219193666 508973677 9523959 424447378 355207743 822568953 113101892 408619575 190287466 651300477 395427398 610694748 877374956 89127626 530993692 401814734 205139598 662621065 530483753 497770627 660276432 254662033 110085399 464320172 34894936 595108122 387555790 902801874 527078846 949646295 764745396 800802166 697280278 274109544 134163889 717437547 984329551 993343399 228173516 452959613 224104339 332013333 407553446 30985116 801435373 218136852 232711142 213481011 140909790 282116459 156267004 961159464 962903461 933382298 9787991 6151323 809332354 223973233 622723105 166813164 627719838 9753471 500461395 624324022 789463731 592019709 58147072 374855172 319578453 537521673 74445983 559310590 469858883 889071866 916322090 560639733 101826902 755535441 835150359 337282262 84896716 664499379 526843808 697530299 568713241 374752510 201452508 185097902 364455955 774730260 335691671 699491511 298870788 153270329 335622293 286827217 773563662 26659172 237866071 713479185 499961838 788520460 832617829 723856111 973523643 997875076 375930173 987326973 933977917 392374828 443295069 449372824 865634841 494364479 26178122 452744411 541729642 431181182 773202376 975202983 490858005 967802383 433549074 135926815 92049654 757469294 176213377 66906304 686805807 958462946 644421837 105415195 235182336 654941293 186231881 210243899 233961315 557337648 912045311 570264407 497281424 327408178 202647641 806580032 877070937 981388453 919892104 206215723 955796998 902241966 50039428 809858162 284979714 853610345 935325670 108248529 878417909 834121083 498385547 888975272 974361933 469275425 43237767 843236293 634797831 132447450 256069872 398987116 877171483 243535928 906880160 846568636 96301789 829355394 56822291 883521875 982596222 706887572 608216570 318423046 670350500 280543816 57925821 320878714 728994456 966078421 664283744 277584529 238886037 502935968 216489484 947966243 950414323 351652885 37157901 885525043 434662661 845460586 787099474 997360205 954176643 946057392 411036609 751635991 772931789 843329358 481136182 245533260 788169079 659081434 622652232 268309900 127274533 274055162 89370973 975397557 897364513 644836191 550326060 260644199 931277828 109132998 316545349 93619065 847644281 94151060 461227761 759247503 337543926 152691912 475662145 768178750 880662300 467278866 782473396 708452223 179114168 59584982 724832775 383776036 800953142 703933998 468030223 202232760 618358958 919538711 599301598 927871458 460297508 575470741 109194209 7417220 894377380 519725 562622446 559772624 575053786 86596141 65439938 983560419 489839704 500682837 646735368 681795168 964379450 743907725 866053884 970001800 426789739 226446128 397540009 204482354 988179734 418204923 675005838 711048615 188876292 210356492 784505745 320522451 820158328 473412885 739326610 301362238 149493138 731915025 146040973 549769022 514479356 714720097 974805860 631907705 408664376 450984618 516721540 366558863 605228136 13622210 179492075 36961243 295499480 6930777 662634034 47954957 66765275 688497672 441369877 506218662 512840530 573770254 523099131 715762586 548538551 371499731 184850756 293999604 188113072 879949652 930742004 175836370 980936881 629682567 24774946 845753225 570398037 398632460 678841074 807644969 5396086 765333400 168814461 300640065 612907404 220819503 968620638 936517410 394816222 524378240 947639627 35054743 269273001 64788953 564782144 117204747 844608889 854237889 320950345 134514921 60304776 743204487 501413338 523665231 983940413 839959823 566046611 691116442 238803974 397931568 744704162 983459567 986633644 554269617 540100735 350899260 55159963 147306380 883755447 571550773 700971328 244853640 569581427 767287760 614109145 167301336 110562641 338206601 803142594 347751210 312280482 975619100 287030597 979843513 767779049 307285194 475484446 594009423 191533312 781861819 379574767 409119895 20510045 960778433 578997367 613963366 270081340 391062159 84259482 588123006 324295922 60306247 983635898 145476028 399658100 990885647 731213146 79919637 245932895 776320894 34728390 295505321 800772429 212778430 198289443 205592369 560437628 269887307 839231806 127655339 317738871 461702958 611214433 685856540 523588616 679349078 684929787 908579167 523444084 929400595 927547838 415207085 50013266 830236268 886510864 113219277 214487727 42258122 399394184 383414143 743317109 751331120 661037338 164147697 398886864 254711577 353657110 679881974 607521399 696559903 876386621 698892862 677595200 729381830 291337482 28140134 229048564 927436514 488040624 984388435 885407749 220543484 951911484 605114891 469911128 591987944 616900078 736754 951428140 557389807 918463735 20585937 459278084 982770986 906764894 235908742 56136764 807834639 546444679 265762707 213531828 244535546 548524153 179994533 393768539 970274817 543577105 603585355 188592089 466471337 132322965 709453969 274532911 633738864 160676163 475262810 117475783 972686092 413018656 923757167 52593489 388976913 893360881 764839196 582951056 65203810 974140909 254397550 923012401 634869918 77178212 70360168 95008757 923056930 58455487 423682816 49415215 229007814 495819557 62145284 732649661 116514146 400879465 546079982 842983270 297684548 733060486 616443786 778021329 88085428 97340882 832635954 265200515 420132291 114877785 282028319 681779148 788704588 696495440 911531097 603174126 624382570 884290147 770107940 596118577 781349132 87990081 470030210 45889379 766422993 969933400 687060019 507194953 637851389 703805056 729096655 310984612 801782757 438739833 626218120 453895954 797158888 678731828 729364791 249784831 630538094 508587637 221034761 409458114 240892120 414284918 178110995 944842847 395235708 601589454 961199084 422155461 493104042 460893623 184109585 84390662 659622614 724130783 147881541 173684172 168072096 838088179 267687489 190994371 554217361 786624760 234110043 802043782 287619147 376191163 961121694 732666599 417654841 851569969 438291399 427176503 414301866 723374823 660249409 76250167 80105032 13190118 436025504 74509822 336639333 513371057 573903330 852358174 641705529 978567129 387061886 675615894 634811701 48039470 323779356 793138392 669240266 670606596 544772244 854410406 136030900 997352603 124353720 646132038 956332846 367405691 621095093 975544820 329372459 689851672 484123757 481288162 831199223 870681983 867258168 717706360 279145703 872137745 744663953 571546926 737133104 635812871 390496729 891137745 705340868 222809831 618940099 597855232 380322313 661498969 254862156 296906812 911181180 143217460 990262892 67277654 808550099 601926368 218584528 823986455 424498555 992312659 181581140 950387269 23651685 145449808 721943016 634296761 56338768 240988530 25027523 954204832 309853592 666710420 354479443 404904312 489858769 463834274 597185280 419322103 336977329 442425976 151800467 565293596 474030736 102303032 862500759 286974950 556753599 350548019 937545751 338705397 43536966 552926966 357547502 120347746 181790419 102936167 239419531 191101961 103380106 733327213 198937663 756527842 862776702 298800048 672711371 335114085 971009753 77075266 721612486 610353852 979426084 26808468 598783135 417636070 149576838 334971715 134476840 488487104 433916312 129438485 161485316 388495139 671104299 389673712 827887318 893305670 397630040 995504494 986279823 52526324 16409051 232312160 277823391 712752237 388730005 838519900 71651796 490354694 994445834 389198802 427235615 146692315 429159974 727321337 21394840 477311298 736230736 46604045 227788388 298880461 18207691 923150143 291426982 201569171 484165582 910531591 352467595 390912880 957865445 542270298 989726097 758144099 222808034 396437477 168190430 821129536 90664191 441981906 24000731 242929988 673647451 160145522 701218825 832763210 614774548 80870516 484966805 564547122 610006191 891736276 868258420 151331227 646335633 323529063 258942552 246240388 14918378 434987676 406865278 807837091 320911051 554013709 434461505 427595548 844329437 155026611 932551997 368983720 654948679 941558576 169105213 150690058 744784036 594801269 734555803 780150266 777389906 250986891 798716801 292704180 592227853 343142218 353971227 957911925 622735175 626563186 530029323 652022404 916786506 884144978 181231575 531781278 154535453 891159311 672023241 742401030 334878398 805949170 169071692 385206206 748998535 374584057 387274191 306642320 40937406 623890567 91101568 849768668 713384602 72207503 147824638 801368165 659719599 546815969 643825555 560179738 367821039 875686401 585513162 491847012 508293290 188811385 74104125 402470596 603029050 4384744 863916627 500027343 892828412 475992811 500534339 267001169 979249385 555067847 750088719 631733323 427511542 83738371 124617856 804126261 943140188 809261288 43577405 757012586 993533791 748572771 135041262 300080149 615859676 577980534 698989446 172859810 784533051 391208189 889599415 391188420 71015688 129596343 126548571 70090483 448778931 214504145 676456142 90675925 655464256 924796810 821327945 659335721 423181077 786162858 900838745 869558089 515256216 711681592 541852426 924664722 65877191 71479792 307450747 968123194 215696038 800033392 961792367 872112584 913213366 628627209 166866793 824831574 344915466 465834733 751823787 603848870 164297552 808956606 564552131 299192482 229566927 383508360 494537130 244528383 40670355 25670180 904340607 145377296 2609463 432150670 895190856 54849217 709223042 858445789 974761568 526447269 196444484 801742003 207686344 915408953 638558778 701816956 567264721 625551356 280179095 566232507 765098765 459152842 720764582 249096296 788859718 580082804 130339876 548263739 274973483 42413199 441022623 203119599 47138981 74465629 549036870 580144828 758992081 679923401 645869171 475014377 184761915 188001735 69373670 161160623 534849531 937161290 501802871 405997998 286630463 840200722 411684095 276265776 193356799 770686849 531878985 499047471 664395839 591695306 424769343 506568774 17835447 759680029 572455495 727429472 723852921 647354364 134131494 349152390 416474041 89505733 569104871 675164931 461471946 923749208 751873142 347832612 417534325 429400046 757034713 753805445 935577308 213269594 945914260 465364640 797068309 48576622 230478234 692182422 50468507 831342913 182269038 60603284 354681149 246959222 467733519 834288677 756182061 178520104 87512653 213935468 700246697 248701098 483333623 393274224 125226646 633489063 247422091 693350119 271458006 488762289 22854687 993238202 331517309 827522472 746575910 93675945 828205208 211184531 871981296 274755981 937137797 708211223 585741481 825577544 281133404 461234637 748058930 156378077 190959635 852472370 870190634 641074418 468785648 434426321 382902487 819577848 967084924 24838164 615287709 483451038 775539307 60373893 590458685 521339068 631115812 148308897 589590890 285921496 428608237 730415677 19138360 409653736 835772214 331412693 71007810 271963352 67755228 920711454 27024114 145972562 602509105 580745070 825165213 386228012 163672931 418990621 738660907 778937119 612042517 541969152 787833268 285585356 68424770 335388858 618495535 579423096 351716385 463979056 512121998 473511285 145503191 595705874 782624149 746201764 280960383 782160486 938099495 830165770 919188371 457888715 89160711 906581937 2026510 59289017 758169780 158149777 860961961 468596572 511879209 150291543 753375798 744335853 821264599 248229836 484741803 419411964 135835293 221748549 276734012 576715172 322056866 662908547 871128735 267571359 741839975 206673893 911145959 518359880 288692388 949631859 180065816 310771399 202797804 349364098 402372016 394957543 890504001 609512438 248637007 190093031 490021741 274664334 540039981 92838372 954651694 531387393 571003391 586026278 677121324 636110128 237471848 740270311 265184934 683897666 488954152 320840898 40925241 849653148 932152397 787545776 158713700 453885384 165626864 421980212 478060533 515798713 24134195 465851460 148911751 265930573 909022662 256239032 227083963 848270170 607001166 299515028 11282840 885828199 941919060 348987208 922047355 687601881 299339615 565507582 955676552 6949529 78467630 825716307 476479057 264941960 320503443 331698942 999668345 137290219 560464529 266780894 547328733 546360874 981081326 845702475 112420461 942562777 726842970 180949416 635375770 27376141 620846486 254833828 317854624 55614055 238942211 184990472 1886528 784323831 53892590 268525957 298699448 933595633 670632813 401408127 149175999 280283162 178524140 173062459 960920317 792305126 581102586 916302513 647876628 581896431 26868745 932924796 566513397 242197925 87666065 800937725 341223037 58014731 546411029 849007844 823527176 850662406 999627135 160400438 994819547 983167963 599001433 702177853 308315606 982798950 798788281 69061565 420432500 536557000 167024966 315631190 27103245 670332526 194304015 648930415 269219077 117037346 51229355 942279839 91368399 343630148 632059240 958965337 824461439 660115713 688045444 824381494 743865529 643013282 651370524 522843376 558552012 752141667 211646268 897979337 45132459 232572917 587234057 3212810 836784019 742565794 138637847 153105324 870615588 163379042 92107207 448395360 422301126 991216383 499252886 681872003 849775805 755652101 995877955 49406157 759975811 216230248 566133241 922985795 197633946 536263585 348721229 905926664 422688045 64402737 3033588 196590867 306639773 567864653 279147528 127619809 547819066 209119298 352218897 763014747 539099430 509343182 632836180 21071098 751177698 707714102 22495988 140326459 549648194 974686012 122010034 508955115 51535713 240878735 442986368 442782777 540539483 616790865 765932842 704874094 139023109 965603322 339367914 968949177 861434562 278657048 97345493 483859304 201859781 64553698 89041361 41308882 97047189 310473980 662942206 358399381 452692327 97632045 509134717 846766127 694475582 683373453 669902426 579693752 41794676 799406291 49208898 487819193 448391115 201048735 312281213 905645594 589227362 657332628 713455740 537165685 19848357 826594448 605590325 936907426 685044874 171345263 291734636 412291742 612190676 171509960 490557773 1241147 361080967 810086022 906710236 586510238 888920030 116642362 41741010 112915675 224208309 290770804 981758791 743937741 847589348 833562649 746290756 348094506 783499535 815080735 574827176 724506749 431190731 713538787 154568846 157149650 29744440 379414195 569897146 685309201 105670421 400642849 292790650 663289755 154444324 221772205 292777651 349524703 791325711 590496609 265898320 758587109 719148901 115428188 229679815 419581184 86687343 369465203 970876716 478241770 531278048 718748657 461300708 268882254 171840029 672372495 800438059 844472206 365394573 81871078 703327059 696937819 482297829 892964808 915912027 789758779 775524535 100113470 538157875 672175117 338783876 329191911 151369825 668259006 164431897 592350824 849101316 965267500 660190178 159851118 373327176 940257569 283480218 554361929 276651945 101104423 596201476 956974893 563909275 971081566 384315775 970511436 867786884 162654272 235251145 231287359 58971853 939654626 489657010 331134981 768232784 172296604 77427834 809505661 593621403 256498044 501702210 608703009 665888715 134290753 45351996 811303631 930636601 787368102 302520760 661420592 313031023 857060547 135421874 1501777 59579363 943069561 706385595 482613229 12914920 152837637 155803555 463338773 127837186 841527911 801476556 76552069 366516825 53931193 184721681 853072106 558306876 351701494 908551100 44573981 127431130 347077663 293428270 12691240 217673075 295949472 979521265 24980926 379750324 244603481 730445220 298043534 697043323 584739714 414683879 278648407 49439498 729173315 396707625 303936150 346316261 993571817 71898349 601854138 9873284 640628490 177396116 69773714 698812677 765024984 957628136 817657317 488457169 190229850 967128369 726344540 834746071 574562204 523555259 505474426 437048133 233894571 203103360 773027452 35323105 656989817 915944600 906984669 811662295 699628620 243351854 216927191 890073892 373698015 583693561 189693146 878388813 300135998 401581514 165479457 613378397 613521764 249069070 188622827 371328602 102387846 40751571 236088520 318623845 259478710 660909981 289451599 832094320 718099495 246823360 550398853 448164962 137293792 788620329 334491799 246781788 190424661 844459909 349803719 32290595 444323412 190762143 946544838 860984112 316999575 971567019 992141854 567330973 874542300 642882404 853469382 717748039 509798587 917742077 214580257 214090864 662591603 209042733 291036698 788487133 188461191 187637175 844510891 22189087 723502618 971260378 703554465 37046353 427331695 456176610 795828983 691965457 981397257 649092834 189431762 112822765 420642639 718635067 20246391 466889602 408981767 691523811 283133273 75141291 466426702 705135905 651776930 665172307 508569221 708715103 234501062 504568348 318581811 168474199 291325779 528902029 307627387 651941910 335589951 443571853 556503663 697607678 203072309 471461489 266772391 951915654 123258539 771087913 429677965 536638294 909850597 160507977 737369258 196234273 314195794 224124135 820108972 248045103 915311278 477151130 291041690 807406456 374125044 386057503 98111990 242707915 931403093 127751126 150191980 967761175 266268793 224842316 174667510 290242285 520431254 302726048 821293921 66521365 856189010 202291197 767361144 434621339 344731864 473345199 954430760 978841482 543745898 314567689 191503436 681131502 136259012 984865367 495218167 885275039 965272931 985712684 585075730 558824470 113283927 617159998 587498695 540915926 344713147 433358627 800039189 830982195 972413277 6353619 647988090 945959073 666234575 466404746 71027769 919058961 961765412 687449120 474702321 849039419 547166443 452010139 342657208 784885492 833328552 505876747 513959551 354066247 546007503 477484483 643174167 257592911 752854987 178627355 455450756 180945696 959634715 403688997 861638417 765609909 365984112 649782588 518554900 26140785 290558536 547176857 317358686 441968687 168331523 870830530 63992454 320272640 429087342 790755585 939069299 836992213 622060206 322881071 277279189 119495852 191117928 9021124 196010776 977727239 962267284 828392343 738566249 811438569 216268730 246675475 984360753 585144209 192476728 489567606 9941847 421607941 885317180 419502000 915140742 65006035 418333708 996806926 768173455 794014484 66420634 786620508 422370139 285058050 127631839 617210055 979259942 317337186 415664554 677925031 712091524 255178123 73070979 379087597 906163869 336991587 513559604 778450526 525042707 611564494 451938042 790109616 661485042 808054588 562336830 213813005 617013991 866734706 665609471 131075139 536349350 489610705 280283872 703018376 81426343 500468802 791158305 263836148 320344263 347334462 989555011 782009098 184281939 388269973 384800421 714286218 586667490 50102456 683214022 703282872 887105757 991281719 713449524 673940218 955420933 470076976 632439257 246933058 225146390 517518240 684521042 308518115 204021812 746598070 922343077 142438507 131967837 50601236 665245253 180393716 96067563 436220235 780001814 823783308 875329593 228620008 767432284 370388473 879898951 384518213 118765874 552357177 768643049 637898080 673059176 591191069 940120151 760244938 180288565 825736593 742946527 915435570 951643700 878006410 93920582 745097519 200959507 123188490 642649569 929638719 244744472 699397589 833385418 184190902 844636973 444812812 46396909 878968679 370893127 701164545 518968197 757805434 835919388 500848355 447154611 97184618 294992286 384624803 562299775 783721549 646342325 266384089 904119715 875193969 58276811 148549194 106829260 208297507 824618566 376063246 56518591 367790399 885803364 122714742 875961722 907966035 714489414 889457426 688212905 730938822 329996811 511308128 649301139 463689556 124295812 457632359 725873299 620245778 527571291 612036028 911559948 515077691 637153329 174260101 948820093 543037355 681509303 24774719 354234151 823603787 35101610 295974208 543176967 363890906 135574343 593152673 305168477 537074159 472526552 544661415 66683016 109698839 185357978 914538800 161765132 197962514 733106773 346903381 699361440 520830400 568144671 261749241 150008370 882778060 560941679 225068119 72588655 706561118 757304905 240963297 718585375 199723410 236168483 599287798 260363385 235315874 180475749 614272190 112821126 418125232 978514771 805483479 588936573 472364229 81361484 803916276 496888439 685170072 70907878 778297285 781525537 185601531 614630263 127715617 282374644 661479599 19887369 414259700 852650108 814266290 10477288 802020450 624955206 802232097 747927953 977709309 547958904 891734364 616955873 757612906 49961265 507015423 228149282 660141229 706095067 667065568 822682731 58360109 48585135 504721600 678507882 262395883 193616166 148849081 615069262 771550214 107582122 554113191 590047536 32749895 909882173 40873105 814915528 854385324 596010051 17065616 834126294 973947196 77564213 227499485 348777424 190431453 795594448 164843532 983590243 407802253 166182414 970505323 29126955 370244442 849134053 929466804 727098572 991935785 412504198 872675112 314967823 137035400 647057680 376200563 503436116 464705659 629861984 925965500 107096374 719644221 398073819 925423571 12128167 837710584 207030300 189989189 129730910 531952114 344151975 141884376 267004103 294202485 688279572 408656369 64307749 769917426 308115941 19297917 610272023 844820345 117173348 348615608 964389687 679105119 397565193 578018946 551742816 749408671 541288906 194514535 540408587 654545519 355488180 284742505 522179726 251762473 778732278 298645736 680957053 936142695 819522556 141669855 536311591 456067484 375083394 106194817 470800542 979173117 327235826 123978209 176168653 616360601 616360723 98445545 104893873 958965025 313401877 216637000 722500136 928535495 403247697 969339558 685623624 436799781 84708952 584956632 558298130 402489970 186964176 969311068 134140222 482058773 703438365 705751472 291689495 253991801 629790054 584213393 681526856 568319745 706329338 343710150 981721468 85642525 117019383 992987902 922051168 658273164 265983548 372286640 731783532 379612703 629021337 676989220 886111705 426329258 557221454 798086393 117475002 722752654 865696078 882035109 768790384 171608567 304805361 466426625 942835432 378907270 975375865 295602927 628063235 258988373 302084744 506970381 103120765 701169664 896305116 341236205 679988314 735253645 949917211 945534358 504083642 403043249 909642120 32514229 236123516 626865025 488322296 99426168 387235069 227082037 322328362 758352235 644994854 408875061 980549841 303764596 774850919 23896124 162119959 684700735 938348447 9596990 679306482 233770220 416235955 711687660 478168350 295942610 773525678 996668670 701632117 563192665 87691803 318347466 629386119 509104303 679553666 347836201 134456430 224460501 297326428 195946868 455058743 898861255 356162877 532995450 26730991 425135374 354371700 603577093 298686371 139100797 696535024 364646815 319833516 860233284 395800743 311073090 775273270 936002781 992753061 285104352 624103030 750419497 734926912 935882170 961336672 89024709 621943454 323881265 870148969 209420467 487175449 975602432 167799166 933108957 150734284 937026318 514254022 71635275 125976754 957790895 671013413 302775092 131002784 970609429 748435940 742139381 169130057 39516470 414847789 281914383 185396766 368681392 764186365 673847859 300270021 735605009 751251184 77138098 466330908 83597539 549837378 307988833 518501202 302240334 380115030 475165191 229570722 917217817 369016472 492625087 469479139 970657157 598989575 263653178 418417841 296690447 789363224 874957533 778982590 937602563 962198883 624345795 733733055 483467662 547046451 575182945 841747772 577511866 750997960 117704094 895765727 502759831 265629129 988927484 160333948 756486508 334790124 807082463 169486106 453449800 876565169 303092871 906523412 778772953 261532354 687874490 149161227 89193590 434220162 759699954 264402514 851114802 13492708 995422702 855225812 708029629 116416918 272994574 636250602 622020774 666781032 647065271 967889560 391774154 642263621 717010407 703169300 718534830 327485423 865687383 324138401 893237828 399718081 520822713 21160868 608492754 542260451 960970776 445210439 367905329 622513407 771196096 154144512 661952237 366951395 543112588 201671898 619564216 338548921 877877051 734559695 846756924 425328553 267327527 772084721 802037051 664817434 769301059 898771097 523186299 87705732 743231943 94303817 893351024 69469046 433164390 266403690 848905586 26418410 391369496 195838066 425316314 971748415 143744514 389136963 68744995 994173465 896629610 909198501 431182512 943682610 261885205 406407101 483732637 102210480 869550290 366472767 859234682 17789702 430333785 657282106 983698851 744891024 188440286 381862266 786014953 399924193 590226591 210849108 589919747 561187698 81691832 973269154 285228744 870161706 666851395 799465857 952308168 109402741 947491557 984505199 962503943 741972417 439880539 819171794 957021160 14246184 212213372 932019373 771083967 555664907 675297364 460910204 954458669 181263222 490641024 568238708 347329691 841482213 909959344 338772487 387122303 630380617 912489896 531212214 850842692 991705611 792231124 210093502 19676134 689468595 88677768 948670458 814213686 294436741 851870889 909795342 866286487 337713361 567319782 115157839 985466885 6377840 982422038 67769705 402632038 826872541 780468189 366938037 169039730 621282034 482926904 502104127 58691092 20801788 466677355 32326847 404420448 881314446 646921121 369921945 759599126 672597746 583393473 303059416 194487455 720209544 34215798 987263108 643963497 225084624 810197165 842694162 779730868 267643723 469458134 752416518 922692831 856324765 321317061 909213557 61714680 91298188 280460581 105546064 130028166 261328875 481289725 63433251 787867280 584392559 457624998 90795318 781599790 145653744 113162148 800970679 863105345 437704797 761969039 202321968 962035340 447096559 693435697 418985344 212863626 592839624 732742920 79650114 776604326 557472150 556731483 580861096 548266072 401651640 537458465 625849909 828092816 489042383 889046100 430718285 535722587 302332062 795794775 989581568 810438627 202208487 523484342 918088111 413861981 837053923 947885203 593095662 290070885 616627501 990117450 306404182 521336564 967711664 156627432 589697960 841467178 348727203 179506581 581660336 391198948 355635123 610302488 720239190 341431663 466190037 300237121 135748585 506880612 17489260 177526156 225503852 624725727 741181643 129843141 413979890 616435274 71388553 952726040 713446076 357034434 418373278 803650280 308599444 756048986 714472341 617761443 94940651 433330515 776889939 557935120 82689646 998315370 120427225 684371175 818080925 507729779 798857108 261172316 258643909 833612699 792424408 347879361 709625182 244799339 502763983 250713620 92851055 466366825 348902137 372767924 355507643 698561583 93098565 377972642 642137263 94818007 718816122 461388074 497668364 154028126 570499804 809890687 595991281 771013223 526134348 598498444 143950201 812876740 82849011 629600254 127690083 550650112 530406811 651909169 400761765 948248173 729770487 291252983 339241160 507690948 899407696 221997177 396913132 718616119 357526206 750520007 896011267 502044550 931769880 171519692 50450122 520963389 888754399 418373825 142842735 201101865 252052423 480777110 417719903 411924487 945190089 346819290 995217130 854600610 433513195 397953309 779704970 218355386 144953128 835030477 509690206 985634790 232939434 352510498 885291887 84987542 629191043 518542306 193137067 631199741 859446401 670110932 785318690 895914209 299634169 605567760 668439333 845289110 681897645 941681251 216159186 845041395 176381360 585556649 337323274 144066781 318818752 5395657 371308618 195416377 495375681 679156012 567927792 386671798 471470034 116053962 892170126 141698963 454567531 902730461 864540171 807632880 637757678 582138543 609960216 595709738 327019597 409962786 752960966 434072266 615888076 268907851 683736710 25091389 882519707 568724088 310417147 256990165 355526233 376764020 733735371 528133209 612434823 124193882 252470400 58826062 901093247 681319538 925303233 608028767 267468171 109809405 324764394 183796230 736270416 740000115 388981549 762895360 485737931 261497656 664771661 655514170 701335742 644590607 473913661 673229729 458181666 936187496 129639578 643181793 352017563 761802252 295336102 606712143 779141980 546433289 436165968 279769185 256531346 412108676 197989877 484293953 405470595 875385783 783390719 518720811 435308090 538696332 989139109 496870407 885495887 190095549 739842932 163128806 179446550 350715248 878238723 924661995 995067261 357277367 670428274 753068657 573641036 542072391 916372526 887065102 589947495 576520282 577763585 228504522 795290754 520253051 265290230 842035673 924652036 724808831 169806023 672345401 193614185 36588133 379949887 109181619 333820317 241897760 185052889 830918082 995190765 126327300 569404127 932329893 730819012 653240927 552503752 345559358 347203259 20889460 190705450 604162785 217381261 976485153 763765117 446882406 69835674 373838354 45224123 135408808 879092493 199554986 616052844 311251902 611017301 496163212 518563650 332367750 149125326 808223699 709691859 762777608 481050644 274033584 425025203 119093671 753839964 825857769 298505142 326906072 66521034 678234650 206247646 771767071 492695997 126921001 678095527 339795699 450035912 532373355 712474176 101594715 58195171 732378157 414005925 470903815 34639359 127900041 387872155 530201139 579523514 356279736 28181254 304755777 324516552 615710897 29506483 129756320 486361135 863074127 165901628 19533307 484597540 278733945 561139403 642943889 215513463 617964964 351900513 803917195 632235411 611997724 639294837 101685531 708543360 290389736 174739783 584445484 337705237 344557709 264224556 688172968 696937002 440964922 806755497 227228496 741804762 842666342 15019777 651837587 427279730 214772737 26917701 761550208 623675014 851996929 469331546 289901448 224473139 444901358 833527066 515418073 703598076 329443860 684610579 496196262 153778936 598032015 481619364 883504080 839008208 453674898 636842608 451723562 216612389 993639476 516580651 34685409 360436466 353043663 468595750 541836378 689556662 411400833 776229842 251063746 887935130 62316497 515003813 656882506 317162407 97277695 446440281 917599740 189064833 804785747 957450236 214410159 787896346 41153511 401027414 135351397 368956673 933029686 927769533 222658735 474829379 41890904 329622894 174263420 206430379 939497470 378418186 588667238 248942930 119782987 413147223 46327193 47658113 435812828 223478474 453838023 603177930 212739098 178697006 713340008 756295589 708034974 907436851 574400944 932909988 133182894 713118838 910603001 406259356 845396642 455308791 420161279 592601962 533052534 704530023 89218860 404796434 56806616 754734955 698531757 792302955 983940417 533513860 208010464 513985222 834920507 556705780 153028710 587379273 88354036 344958767 758149528 439023986 646273289 829761750 217276271 648149707 408781263 816543554 586600247 951577823 952241071 648408958 248092726 863464529 795050354 409428984 447430103 555899773 586357716 135441585 895698941 106904126 979297752 593741460 202342691 742572284 977751369 706594174 609772243 368897947 449075774 60789365 644334117 860639883 331562212 983300089 253631850 536013317 720201513 746553527 616275430 515972832 606713638 60567522 512057461 344049084 559385453 263172667 64001359 551337208 43542513 720387875 264584442 40540769 633314472 441169153 842309946 337512317 675203008 499963225 472017561 636849167 110401319 568041976 217664831 843270609 875417508 549886983 230825527 646573577 620878272 191174854 733912030 47868221 78578025 143300848 469080370 805848253 484291566 565053792 898740386 389861019 985487283 754910572 387555023 766319866 180350189 218565034 340447147 833134368 690526773 509098048 922096118 634194182 7910338 559779556 681375157 597843533 174137364 572157862 67071782 660195341 607392738 907351150 787559937 523738230 989393695 378994535 889982594 301976190 290669818 898758488 40181071 722044953 136639746 611986995 660122362 677532434 719689392 707148078 856032677 262407139 937163864 20128691 27558949 238923135 691432462 455966749 204297562 235011601 259207429 308042010 195719440 431573518 376913594 999480133 426235561 41647645 687419443 716297719 605421260 955476475 539677721 331320696 278580900 947985223 320225957 905828524 289412088 635809616 906002184 653417650 849157486 660804918 220241030 477210483 867848446 557288155 69574377 508428603 742712108 295287401 381692337 572072398 625688618 137494311 162236795 877879773 54489780 540200697 509923311 439541250 895612094 351421526 245942122 473565885 703218653 778203675 128368438 338870914 903404426 19067248 802344310 619252129 891344357 162209038 828198917 38093268 708409543 766353372 590649768 9590696 454370070 308528745 108013023 89470179 654690832 420792426 149655135 158844335 778910386 501600281 588307150 436936051 151831095 549386904 509684725 528932280 634915975 416985305 61187334 476908644 364623135 814346008 152565900 138053583 338544134 976974589 141016941 426621474 885742668 896809403 766586517 12850013 172747747 723662195 383222558 397844834 892234179 36403954 331171024 855759779 852919864 853770911 905439717 585128703 373350104 490846153 294504859 81531849 227747095 985783857 464710241 146241738 320166870 780016022 310386476 95812680 330248009 676145583 149688945 529786386 618537924 560479980 855916470 64329706 473255472 877710278 498446311 896307866 64347176 50216543 393964375 431489232 796007216 398243828 903421282 761447148 773151658 26784860 535679210 883517767 363444283 86513807 944599647 170660537 79962682 610256159 53988991 839968199 256943088 976258198 768669165 918656152 766229233 478748375 917719121 290665684 554436146 510186598 503870686 838293971 722617030 999976266 568244805 158751387 911362444 579499574 121197169 741993329 161401816 460250120 139019849 874603000 726270255 269724211 468591470 164216040 235264661 722249593 405728029 311110463 435161638 204351382 889622624 15696059 227153431 898763903 35404465 306267193 786848590 460288379 372205177 892581243 734898741 359345617 320028570 506540714 336427017 604916577 521508700 440826875 655607283 137424732 887772514 458186289 528091062 401193234 109391232 8359200 932464481 802251582 572987725 294158782 564239800 860375925 932107688 826060544 918021045 344301355 267318796 932047202 962729424 649335928 196901280 965263865 329455847 617602222 803902192 754268506 812725524 637029427 748785966 701997019 968140797 803373768 884864135 424448688 316586459 171227848 689244252 45752599 290644544 629302409 295849308 992335981 544194727 592752964 563858871 585224433 138015844 118520190 939249181 887154237 82619874 415795808 608023611 402439677 345537051 199443359 519492644 709497430 253952301 360029249 651205171 376987840 996953857 25634079 433029259 386320934 309377181 776427690 330276203 58503382 321597447 676049217 19682106 21002194 68099154 695649679 756037529 554489685 710249356 185201547 664225603 39816594 123899406 458765558 495533977 795447814 704037930 401021016 152677621 122947319 804371935 635669095 535652261 424350312 977098178 932900578 883293046 675076672 467049784 25172763 55824702 630069830 666570024 562232914 664910085 77331826 330585998 309060857 887138448 680785393 149421684 707064409 687044061 46989856 884662027 886163070 609533686 537188790 259404588 179922631 997696370 677234219 980664064 610704486 325395461 901142686 836958881 916241680 218239372 899853139 831263308 622871317 842940746 195309882 772732184 392248638 71814384 877708573 110634746 923471545 76079383 52572899 337554565 487684051 674353094 701971342 109654643 259495132 78544122 627575452 18029126 993291881 20373574 978277178 552152140 882705401 983481782 176755799 298994501 987762512 510863792 246264685 978490105 506981274 235253893 2972800 320926617 662145329 187948906 819899421 492015162 597926954 140915017 470730711 33346275 308364424 786895300 422500036 307123492 707562783 635179922 660141776 525046714 536615315 367202454 329547943 353685239 793620339 558764112 864758421 283718982 445264430 18043499 108973549 436367579 382322875 172236370 625371347 142484007 574000875 218615654 342851693 415048483 262359346 240982865 172421817 443231577 285332041 593919370 268651497 143300255 448345602 826353570 765286535 513964074 87473817 568524155 52874997 446371426 661106747 983834509 996999774 447708866 159321299 512676185 287015043 224873361 82709675 763227816 472405128 308754645 528594646 575734751 627710477 970641497 48015755 816419366 941074871 900938474 185676741 418336262 870761522 130867377 571895649 633171350 112947374 528531657 905569086 914396885 181633336 455725800 31069091 490674859 37345276 34330393 984473247 169810866 236427808 882970807 708353433 735896449 525621502 368770200 623507292 878132573 462464291 76770593 679671326 306454000 278728497 903810944 643371977 735225298 574514369 799051428 261230237 793151068 580960049 56457060 918225995 5766485 364487291 678326952 368387844 81326488 562082788 324153657 977242771 745767722 403576808 842681104 625025309 765340876 476813860 444361940 725630920 593622544 453589668 945646494 940628986 251115201 698478894 930463475 847996273 71082677 210672519 630674572 370537098 874915020 391797271 808402745 276433608 153768678 425934774 313504257 442243632 527894101 176469006 655842678 813925720 483192389 217378659 800002610 745549123 328736211 364648833 609815546 296505938 357993722 974422999 645605507 752510267 918059880 809818796 840580014 849181189 30443026 12063962 856209177 740997827 302133895 9174862 928362241 543703798 301412613 279031363 360848591 641499849 127095019 408358939 766052321 77779949 281940713 911209546 82396665 519865739 339797000 101193529 515874569 10022185 948561976 347727031 243946807 402213118 198859444 389248897 60688916 126583672 19897995 427013642 974062078 177191056 726008282 841204163 523785683 931421604 919342947 733383364 825063312 293331424 752414284 367427362 130949097 994082946 792446198 46623431 596485502 336599890 600517442 587919849 854474639 284972192 691443987 699863082 363181984 814504973 347055708 979110701 852680306 815209457 593899885 937843840 951921173 782493122 818047915 12555672 150252947 947993400 843577633 492405951 149212920 847109417 995534875 312286112 364882851 372144618 880886164 782748961 519091480 250953268 399236086 688217966 816733048 326489890 774597037 592806746 776788908 273702502 538466147 167310535 217456281 805710397 412936296 436308625 980768620 973458251 782159333 851972606 945369181 494920686 919381540 657818979 315709178 542470498 162158318 86799027 692198030 406538937 513776859 245349070 797442039 880762625 459554725 994320237 197849685 233545356 299134573 931337290 74755509 840090134 720974749 59834907 558589646 567713468 661328484 249402062 811521887 576329338 672509132 222725619 931262979 793435883 372042607 517224184 193283443 808299784 545642243 429256795 569716890 441811556 979167412 411083831 139420811 139453457 76349908 321328939 791411514 726390081 872203630 458856341 576076043 253210674 877090012 206777096 917334539 712009197 700812518 425149697 550986918 338396319 517653991 991374936 273993890 966437274 852544748 132546256 760589101 878315210 330358542 521600683 484573480 228259792 569386441 581025835 6477105 60658485 550742483 982379672 661017447 354322379 956506905 304617077 263033941 118829457 893397666 598640506 914698384 477420764 898895779 744029562 131460638 618902344 387472287 814456054 967333558 413910236 261161650 496214392 221976690 409004875 846796023 63865939 411822071 579522361 289770296 107656966 432400051 39249622 71784596 168015036 564007526 598258523 956038379 892210425 304143040 295544554 284113084 464433773 287720991 20662944 328666457 366116036 694058308 94131144 609846295 441831789 907166471 836561879 740393955 386049470 445763000 741179340 68540435 456681125 838513864 101065504 336716069 911248580 271458420 972971092 457663983 231683534 726725149 643508460 639591229 725594643 903768590 573152508 139870075 896385416 705916169 519630567 980138804 965621647 206454857 148944339 45880090 656039235 326072650 173218376 331743547 383673894 716636469 291411342 48760439 916895193 567136547 886898882 87719276 855965714 351015694 524502133 133157867 528738616 346787630 739704000 59486528 916510058 814496129 483478752 176297262 514783543 517544643 848327448 437429617 270255333 745568081 262594614 685383460 684003782 829344060 791749675 622523365 339587676 375026489 440621643 48810915 956781875 406511836 140291646 233093396 501282819 309834197 970455267 896486586 120954027 606226937 79738839 568237961 457443765 437721616 489042360 829004294 53362354 649325617 17793606 309586606 618697460 980866277 938722819 272775703 975745615 684119866 107397856 930424572 221635352 584712010 277609429 917741906 601520527 915872464 865403736 677289672 616741950 976850933 251633025 91206637 974399052 147918315 665320510 275256673 177956029 164325058 50913184 305830926 74634091 32654157 631769128 811892381 73522604 877290961 594142275 127949537 696164709 933365661 668165239 643966180 364752887 494985862 996454847 680449998 707309909 883547161 843957576 13905729 929623994 784748322 101825518 880347809 809477929 119998343 596033147 830393819 737464694 906528942 690472835 828292615 106731434 578490175 464312539 163078281 839993031 499414108 700013923 782443889 681178847 923389295 549894431 953996576 861492159 98742720 281057987 513580325 624202463 878969766 403823505 848535111 934460765 208095196 162368351 402466671 694827406 962021543 187094988 114450702 428779861 887745041 520925842 508356491 139889925 628932543 730379725 27302027 461756448 685479721 935367540 65496450 820050463 656397357 393328247 721085986 171958349 82197977 712072623 465487306 488505721 381273548 881006425 344916873 777887492 529054038 480097676 799188844 376718100 185116992 570279616 219961614 646716139 114338667 152745589 809492034 486103100 886997198 472867681 944730149 755451317 23233043 498892184 270878835 906234017 365235187 415645265 249549178 331190010 44468256 625863054 208108134 865768455 249059913 673305739 839910275 753288787 561910606 211389049 957571231 594519757 569779733 157300655 6254501 177238223 383634450 449606745 523847260 198895588 118050532 533013264 773499836 721991833 819142727 469522169 554180815 226579044 303127413 448721485 649675657 909679774 43469072 400271983 718902644 140386605 450334541 369237886 594493626 269525733 487195434 14197350 305344721 64409476 260956012 634741551 411284810 699529492 222720944 523791906 482262302 283334174 523239256 382622179 38707105 574731277 44472275 864133661 43192402 854983407 501493350 273671900 70425679 824222045 783776960 903785452 171656968 703706512 394689070 578477439 639320728 104510745 468597208 59579869 186190463 375061124 602198459 908546178 686772006 794213101 280242906 813130997 181612758 732074380 679279686 504691067 577023533 223257606 444293042 523733540 360725755 833065109 287006251 799584584 499721195 662615219 552347923 947833653 328928547 406372887 144749926 938851873 903272985 546844298 165000350 426546820 529821519 564090950 219459705 843822574 724625668 428788795 596703814 708356370 695442075 324230758 628917139 551622649 651410529 534246735 421002002 663617947 653896066 858600764 524290763 480607868 317889318 958661115 295995097 768431172 12356214 55745349 195398241 282253677 296154797 836496129 423307769 368499267 731763526 860727807 589619770 806585969 102171669 698514997 778956155 64020418 921829082 4618488 312750267 436971777 970037231 290719977 226698172 419946880 931391644 278705514 400916407 214901182 21066773 389454191 96105208 812263180 980060555 736867807 437421345 333346328 667233998 46309760 140830373 874865085 501039441 838333301 802244244 819817406 446807051 782457017 917119633 17397274 613804830 197714077 620560975 890708092 312199199 468914296 711067923 35682195 526910627 837690225 584514482 624967407 692759000 809487214 477358569 270936397 723731497 474417167 111976513 602757777 141124757 589724440 729400950 921423465 512088281 998140321 239112838 526045462 753330157 60404793 380790398 619804236 59432624 792136417 564615620 940659068 746257138 142952813 220516897 27138262 280022301 390107547 757807426 360755935 798779791 805401580 856804098 222129187 961086085 394207880 627115268 67943801 506424038 170363637 332084248 223143879 582680436 728644921 514998513 524353517 756882135 975346394 908218259 382032004 820533145 162858974 155502023 516789128 13053418 619315239 59313345 343584265 845749715 682278171 352587295 603379290 389164103 694113882 100170626 343802266 944017068 161650520 582066529 239687154 413638506 976876262 889624217 337620737 399167518 526303754 755952034 238435256 506018718 643514671 364787883 249271677 390692404 808080663 352098998 39325261 358801801 767092095 356667620 484557239 529847059 996699131 765391662 462445100 380169673 266668597 131837424 220024601 444688432 354565389 374052064 976464027 204784591 149760333 785046977 669029442 288927862 983632140 884743364 92646475 343981359 182968520 261284010 43317281 831968191 62291273 31666700 762497595 627398061 883756077 54195943 775228177 468482837 128223503 398981109 775075582 974929092 894576784 463909098 75404100 494603662 616721979 405308179 43539518 178233924 570234880 204758058 287971723 331536630 590432401 567778312 39038670 144753923 959938839 564637319 45043547 333068059 157112646 332889907 891315181 417423860 831255418 910121290 576672763 327097647 591503698 441914030 887904222 905252265 97191415 335641948 721970396 393285852 617200995 741491207 907863325 360623777 536890496 728265466 621571978 17658340 23184331 332179101 976297531 548615949 574020996 654535586 317807555 21899259 769851286 117797099 645286246 871603199 216857359 387537955 190993517 462743477 817798551 38198044 680609954 234806091 401686250 915500925 94784832 592542022 399411668 201060436 653986308 691653769 614064331 152329417 383975067 530601483 719559639 299444292 684974948 963286511 822435526 658679789 23165692 822167863 28626863 349507786 719611643 758769798 375413454 99436876 17446431 470896390 149521562 479674473 655409189 937191194 871598727 639314931 508753352 311024209 715163507 529596133 825620028 871997309 553444312 530403551 817191731 122599583 274927005 938810015 350567155 538159322 941346193 98427180 543315545 776974213 838311947 574307875 249138621 489998957 261056220 846133198 275455844 110848160 115210680 805870892 600441487 286677654 221855646 933568428 419113195 683706620 865377849 556772081 648784064 991675447 707943991 483830496 937130378 307925878 791327364 169803945 16605026 783290704 863263646 944744130 305578926 815919491 171335692 593732420 300337047 936069214 191326092 322339164 793252429 384501146 72658963 17071213 977457889 375733010 950168512 228382072 545180748 577419543 35956285 162068717 377654749 322062037 689098020 668844188 111159133 228559036 701013954 697082263 894412749 546305142 696658363 990046885 319732199 60241667 478299021 990927755 904472625 393745331 678374389 248531448 625392397 804477667 40560169 981582899 212011006 620553780 621439388 967932798 172405572 571700764 541124686 300936719 886596809 108339317 965384163 707754683 915164232 361103980 805168963 258223905 489178662 959297172 579101500 993581384 588759217 373678006 727561134 137197895 368737300 13140906 340196402 841465274 514412778 639413484 406162690 383801763 418945672 718922845 940156790 806419100 494149892 954036887 699176399 888520290 226624918 519506181 731231395 367431504 491589507 740707756 106214497 402164917 963604152 536593243 932809518 160488911 120222976 548819303 486247802 469773485 414843980 625371634 298254397 425799036 381838672 389953206 606393200 784696730 168177085 199556874 276176878 252687274 98597848 597400604 424380055 270139601 269638498 652468809 679383568 785875077 392680571 313394226 517091639 895077661 393002265 45151874 750168322 757258121 992275125 71839465 114394667 449147054 869666884 627342772 627199223 754694710 690321666 372910593 591527624 607505564 625012785 873816454 646728172 857986190 399350913 358638998 980876209 167209719 416614143 640648114 513739489 444135229 754352798 691718068 790529283 821807689 330029868 627057901 907500027 631921002 987844326 899475575 649801589 572744583 324612816 208446806 659093117 124299351 855853759 432744831 907122236 661854856 240711799 972279125 260687720 111684823 875790309 386196876 904884890 227168082 59671720 995910354 819693279 24302874 331680290 965320089 353618356 855754969 439826690 391106854 328125173 115391306 848879848 288175494 48327661 493377826 484181169 513731112 143869019 30013570 477297095 617133347 266721647 376984544 308659819 58870325 285113103 373506491 30864248 698572331 755834569 333919478 271948143 330204609 212676793 418608036 174068381 963847833 315845832 302859986 116947772 398392308 102632133 850073949 114692399 719795404 787523496 794448918 354545621 974816713 527662226 663542178 898773110 515677614 554549926 997072983 367830530 39970931 505526832 775994774 203651908 860001543 968967422 120364790 354292342 766763921 4975141 35417915 498104080 177973977 826203022 94678442 291034207 968105823 459844836 419131371 219086229 110400196 283431273 693652548 177835888 218036469 25877753 908125474 975632670 146898309 268239908 373999409 676491622 929431412 286962065 966561316 903952150 987154371 223166921 163447620 7610294 836268523 131829761 869759082 258698852 966326158 974232153 247618318 994383400 757737828 117369596 932226280 766847730 998101403 941517866 948588325 779118014 486802823 435331746 151300776 864413867 132519559 598878732 835349192 760555840 808521374 672368436 273433658 323109156 957854042 345136180 409781618 637730774 44281783 790666272 886200376 797583309 698262911 560523947 1110453 650469456 814147436 297007426 13607549 832464884 40320659 192397975 431984994 951261930 713474248 339897002 958402693 711953235 728763697 957337146 613114420 610615563 830116234 643948950 137388387 294063220 79971996 747114170 450496520 735386108 178665134 574978162 350581924 877702781 563081693 812173647 282174418 532019691 406444874 684539160 890950962 365316773 780040406 978387383 654384112 943146990 303373039 364005028 236919539 420719969 53344446 509809997 849580057 887219695 311281371 979462592 697412955 532636028 367257425 691509620 559520361 465356324 771854618 470321288 59654252 464282540 279191248 108068669 229183015 16569647 944149235 300207240 79143815 55893289 291109623 583428758 838979606 411643328 775962182 806899748 911007146 937807332 714218343 229818740 968063440 627499386 622519550 145363434 398915340 252412926 8349765 487441178 761177110 307239066 720362337 556346776 400892256 903361229 249472552 624547111 29452621 507222510 710906972 983851951 939098734 319394494 632134994 59556315 651562849 762035760 787698733 534413942 876641162 580767774 961407300 618554344 833040692 230901134 295717176 392940073 923675514 115304577 45066613 780674777 41283149 853276129 237228344 256420822 549041986 945127081 526730473 226592777 317732780 736878040 436435175 780692344 30829234 794252048 178267236 760675745 682443449 102626982 970807403 40680689 798051644 822728395 301682650 268475323 898020168 678516941 94894486 729454386 102081995 659119745 114856666 9906074 740776981 493345841 656194129 196170248 75720100 603692934 941460122 411834211 538932609 341050713 393453996 259403826 680358851 389354042 790038660 668896886 259965378 289189281 847177127 941039116 395330041 624667594 763223108 300909486 579770303 649123162 189843168 179927063 643046183 192251348 609553232 90963759 471638985 336851272 139289777 708975287 621455080 229597446 963699629 494792275 110536830 612271292 165630433 241288763 425968562 826093342 275718461 900746911 888301083 474650634 122024741 888685506 52094457 790057782 251664112 172153852 158158267 83981451 646989329 672248899 838033107 174690433 465538517 451256626 285551639 707471045 418415017 797813766 531195916 198981155 893246875 546811209 949318343 191187751 788261425 937874722 239691920 523350160 772488700 973322862 605090396 137975366 118760263 170088081 983752031 539231815 617215698 270139911 716063805 622669824 666515048 21264607 462005995 351174558 295717818 972510840 250608829 524141531 892319114 10630107 121972876 719151090 540452272 783568202 927742826 449799924 85370040 803636740 905130812 584751325 541937412 125837626 551237560 693835104 655170567 313573314 395852534 282779124 560464258 210762295 748968672 480823523 335949614 666394872 363453058 277186670 668553625 835221651 424152436 882534877 47500042 419275727 726195076 49877937 609258760 310882101 489004006 800454136 893507379 314724116 667137822 937547457 712068712 740139787 103087831 102531356 227368173 687396101 845370598 813992055 750246194 627987120 275314799 552151526 895555149 696564268 107329881 897708015 727296914 684386901 426857521 210703862 857594416 948485272 371653215 104457694 375472938 591361593 131089704 117693927 460752136 99134684 642973852 361272364 929378170 177141382 310091300 159285746 760289859 481392556 133278550 938115188 232019976 872192134 891246117 298735681 983734531 245734912 807181499 895008786 950552695 793993870 104748799 845677457 51300687 654263166 590719323 470409027 506288693 511678375 952109745 754606023 373278884 408717852 66165848 958870597 912329171 928200363 908745929 752173403 489400398 333547806 804871636 687943236 664829250 952666092 62433955 926146202 437678937 837633175 411286498 381310709 959403991 345551898 938468797 946016225 844126897 643197899 573771901 413506899 577902265 415276105 917888710 382884300 362526306 870259402 281868101 951471728 608514330 480763059 149371899 741551320 945013473 301385068 611904724 94612416 14287792 299390881 51044490 876156609 943021290 579376113 233515143 849036329 606666174 464868390 745605179 949565447 348506894 842178422 673606122 501452222 583929646 860901663 777129580 73646567 315092593 924195915 684676017 51690861 829378841 882862237 946839048 670183172 557923168 73956898 226742046 416222943 894718547 226601691 797791936 635479472 468582404 286127507 39807105 655430535 996535126 27446228 106294761 6367203 372276279 470631591 922147152 734437619 48837910 569356223 989265697 762304551 307955467 133633124 821140177 738400639 391969593 856216612 696137132 572895713 76296399 662777657 297829408 582269666 858243375 974517357 39557323 137174142 805083941 904366559 79468103 763116015 263810322 3339879 601196700 671137169 638650777 580975192 191874915 897515357 544504545 308965434 836301104 654199270 271302754 616671522 859501999 446617527 928416211 425434052 269911296 64462822 308602527 885632203 901938610 22002670 514532863 968149673 32220082 209434132 993284669 254641934 350959251 634524552 786728356 478723547 948968367 744005242 394425887 213073857 386440242 169431776 606669596 178494169 789508764 235053423 101538484 293142874 38908240 196764899 746824819 82525811 403536316 493124814 219726728 729065527 217542290 58986617 254367742 237555828 692653132 607172176 120395880 609173840 422386862 154737995 594884596 927947864 878029167 794132462 779396612 939648268 564768145 341235505 120761651 365139516 685938921 724826122 23287256 405785872 514059583 188091814 616310357 313556268 180753704 913463802 12180934 414319574 597218565 779665662 943892584 134742693 219787568 496920515 968180165 659710682 521420962 112498331 473592507 229300785 864231087 354734907 919692290 867876060 845092653 408201851 376893294 686487137 451770477 554255334 787404265 268675005 547055157 608465264 9593261 344369179 471455269 743093877 994757211 615761197 834260440 750293286 350382204 988026604 345282880 128585951 653505024 936969802 284708254 802466017 77525312 575695424 833974085 34417788 412775276 5589262 101167177 800482166 505279068 872450037 820389099 390315706 897178676 606868252 751002407 891594437 97946168 556195838 714647725 731535412 123600576 396118805 345200264 551321344 378487718 89837101 58360411 178700334 693281417 223293060 619633378 160939886 65853963 68425876 116480267 16218229 874317045 840152931 669186448 63146295 448294939 199805280 153755971 646163821 178669933 749937727 451278247 50694449 419947139 92106274 312787215 661456280 773926543 814050818 506834548 651813922 767298092 993159473 392479977 492581366 690054810 75317392 13287653 997040195 962759760 219553419 964077268 298993956 677919758 452219167 486740786 511225374 749885339 915923434 408677404 934784672 550953962 594318716 994041822 96890558 449873992 327674254 307177746 874430540 794559487 516241072 103182034 924911356 425661627 465393922 899852562 198302618 584582498 273599557 571990122 148520176 760486826 4256036 652056685 238760194 716898215 138477731 412252938 249675296 845291111 491834303 459933026 741834977 900720950 141243753 660052746 225939260 709986635 646074539 345881338 489398303 909756437 240414128 192366412 209096584 678867394 842859867 178269404 76774783 675991285 683355653 300531627 502184553 859036983 488149028 481039428 271614075 610533625 858455913 831928090 436881227 260700222 904468109 912194806 473635595 30286844 326546603 364960858 835402350 223476751 352285819 867181226 670840749 389919722 502023893 678323442 241380561 257896442 772397559 765323561 538483094 216163479 134987096 545584284 805941923 67334153 816235283 568447969 325391973 674533280 201094840 237722843 573206734 879577824 46631919 506032908 868823052 156384511 692413331 82504429 840089738 424137397 322747396 309237740 11443754 81447065 548291307 237967615 373362207 306307926 318757708 44520929 179951334 32025518 336554448 234287502 985723522 187791000 560086703 839011767 805202831 381807284 770150639 674489531 334677458 719713845 287028143 100349752 990209279 893000995 198265042 838596943 874233101 408345058 937585027 838123915 416732461 306224869 993502326 148708140 325884445 219806281 775214694 208766955 936817143 271904653 404769066 722367209 279543579 42607108 763493780 476737171 955782967 957492705 986584897 891468488 141719290 794503480 900481703 601321596 946156208 502751492 710199155 422824664 490789175 754866936 229125080 672203232 724812258 852231895 201657534 273186603 56865172 931175208 454016193 254291234 245872040 261739903 512914268 697746275 8555302 123227582 721685406 395410515 482522960 266130100 47341114 135952624 394758161 587835023 868115843 475297024 891833716 618991620 576469731 897075274 893987036 925203155 237888633 55118643 577295579 203176541 222236264 343218785 281651823 643246666 969937507 40141027 24519187 97602124 177218997 748199972 25066197 27321196 139591915 532946362 867703065 688013710 547361154 423651487 720484266 545057638 70793258 944432935 783261237 530850176 969772346 170884457 412720354 57874459 44259925 892220038 639444648 402079937 395098878 41461219 314824269 22011724 875065620 165359216 501067057 499435010 350760162 520493869 774524569 721402262 41482404 157072185 126797287 921301225 391248213 135629089 473158918 293941221 984123527 848946552 746334826 241724739 897093845 860971343 220381351 887871593 593572813 52592758 463165840 439696297 430180102 16930751 34133593 473344887 960404083 618541875 186465278 484438271 128918207 927263902 980391466 474448750 708229572 201236646 15473591 573854425 81922706 900747270 25898404 923634208 751137688 317914803 482393422 238449410 363535391 491203572 94497876 205799736 87842089 880137021 348204105 516403712 532665960 795403655 134399975 167766954 981967970 659139475 657458717 599322061 332076205 650411685 502856923 950292314 947393763 370284048 225877141 525790960 569877120 38504991 311605463 573111577 583968778 672848169 475567037 662897718 338935010 83048825 74652286 940685006 220970058 822521032 577167302 336496503 129866126 90422860 128818569 467698741 479181360 892062632 751876158 244949733 141810110 292624476 503760148 847177786 489201044 787654708 873117030 145743447 591765424 121379539 55578227 966883728 769409703 525293031 670606811 701153665 160683136 54800937 281605567 825730327 574601429 334517419 222102080 979994146 247985700 971520475 170954882 448516836 314702594 806690980 286306954 467507021 418948284 252128593 33382293 559776842 239335784 965747014 73968190 572579808 789270650 385685904 563818130 332225893 584466387 88626467 618328224 691370830 669867836 743661203 728731143 684463900 420369623 951527133 122310558 883903271 420551469 223422087 38622708 506755082 218225680 294417517 998733199 755731922 947512086 498667049 501419154 231946142 234880529 714071189 238843285 135524176 101421900 442266408 550594946 673750916 315494985 870067167 326365769 24211442 687938124 128800572 895572035 118368768 416962519 183014696 244181854 185514122 119675366 744015565 497606021 328035033 840188573 437565332 934559572 292637453 80977794 451520232 94117456 414198086 532730027 840417511 830748195 230748434 868063759 725040191 85669589 212314607 917516639 393850787 656890057 612469099 719077520 417206858 59603815 817663380 207161148 468450023 612006109 157185250 93899343 102485044 517806939 668352135 22405665 542794417 893474247 790347161 291123034 174153858 385283483 64380798 683805672 696329707 732013223 30049453 691577466 332440996 191259767 823983222 788810450 99817763 431723849 846849480 566458397 831066885 474427041 968952956 675968301 885242060 408269242 21546204 625636250 40800266 203372132 624863662 388349305 71589198 616088817 862519564 189942690 353268942 700028711 449958600 4590045 460020150 12721011 191547354 827108556 401936675 726067111 267169389 28692423 901912888 455395424 75308431 6529124 138465318 679497942 191944385 470973195 379383563 975556102 117295037 392051078 686795481 360403899 909516041 805098890 525558709 839825751 961186797 327220889 436283027 49411538 701061914 118637053 545120938 571970444 529706607 550112217 680092267 399097959 309556535 636324055 859680153 189411350 880982367 870766080 912399511 320423768 858228836 170691622 414669043 49757667 256552732 382368105 493154643 881760080 66938206 845142384 870260201 933079785 616054365 708830757 802276826 116936836 835072437 20564043 202972870 686528439 192384813 345828160 170197796 676455551 11552534 62022617 187114061 359825204 74553758 543095413 745736137 181621008 273410875 642831401 231849556 151556644 345403812 329002608 376303804 249607222 382013563 201600074 830292190 369466768 934295883 476566243 346124818 883691174 742360084 820328587 364072643 770542534 203952564 332342276 358597640 223997224 151841302 339287530 680725945 527982059 683329670 816046748 396502438 581628959 58296594 279830973 27235749 128757276 306230313 698474568 272984950 687384066 158541357 76560363 904171085 728481300 670741831 774607352 927626826 368049427 611484479 127014484 179977222 235849247 792198182 634701701 586660912 80480784 498673080 921425535 782724405 678072376 930017625 486302537 583183603 275499299 683337131 633611109 276675465 391466595 154926468 531518079 556407574 348569941 529853477 113404350 35671305 606205160 131946991 973572452 374338925 956263443 240119082 80847031 580386511 631261693 417054633 770886293 936207106 521785849 791381129 628706548 911611842 160866693 253457016 663602606 551606130 153807506 751453187 504804776 702435119 223166216 604393729 91788694 383417427 457514199 955916102 918983301 953796425 97120299 327316767 784562101 926809682 34299678 907996030 341252423 14117294 360086118 32160802 499402687 717930355 432659690 156375358 993796015 84994591 867294059 459349358 562799056 50230930 609071049 997462600 876774228 426779809 23926178 681715198 553255781 65639403 47859355 322185948 134947630 636968580 126914228 101431695 713117924 482047984 575160079 913933496 315039654 752715805 396186525 948189370 948638756 403383377 257416481 257620008 712336027 533655395 10003899 963273285 81829350 225403998 645766257 436535315 188114241 11571553 453032260 91548226 939301790 94927664 313725975 440722523 600879315 655419405 510453441 807207957 335299589 39783276 889441823 591787150 745070866 985616005 632299483 725590504 911696778 742368485 810195223 436559221 16433336 365358698 918795506 565629324 644366275 673706135 725222397 726145447 718474089 251443017 837286842 328696556 858880720 465946822 389271148 954662060 384616560 386281190 647286541 765595221 490496394 439618884 492254478 256397159 23002917 38617698 196854558 227440946 134042671 806137263 273618199 223156553 420152445 224689539 43323067 216069856 90022491 465936195 560865046 578615470 840528089 45700095 570562405 617598237 148538085 916082854 742579651 816821199 500424163 209909267 293370450 969544235 715399809 846563714 601195875 340374261 365479964 24343437 181439396 142648356 604548856 3451012 97901977 287274333 547829204 791743832 25845241 850402788 564067263 511118186 726939083 517776728 263161119 774787605 748453462 613029166 69655616 219546844 298973191 723671333 336401637 462143814 432674858 888483752 906462704 309631407 266854458 612420663 557668424 574419971 879421161 433597047 480726328 755906921 18039338 420765840 258824268 390410848 710622638 498418244 619289102 654428799 286671490 207805733 192792342 630993259 749648845 754075281 599399055 138849107 426315562 77841843 762507860 738040099 105284893 417596975 985669433 120514439 208593283 517017600 16497787 77351985 522484760 167085975 770678247 793924577 832304647 750864480 752232707 354355646 609654369 567867966 359048112 882545599 298044586 54996822 262490824 472761720 893452029 522183221 922995401 990025099 817377598 284808298 313612324 87471677 487051377 648491149 771879553 291472779 543652440 223852127 988875233 126420232 496818117 513802409 892788014 179172389 18945089 376058768 662168891 464272004 937777654 737275188 826315028 302428334 338741370 111897947 627555275 851739814 189749349 938007754 690125143 773795364 753606387 924656324 677615096 662384944 15386145 26156121 510423349 391909889 159581372 287392804 335909776 133349945 516660022 593677628 112812310 925602068 829888790 404746468 696260424 368285061 628642538 416559794 953655944 73945136 147863508 448639330 837818999 563421422 201186092 204817798 681959965 538955928 181294987 345796920 465544765 96179645 590656827 178800267 338868413 756549098 106549460 225507921 675428459 925734055 852001715 970439325 732647544 423531247 972281420 339751355 257772667 586479015 39901359 873942524 199352770 541390121 407019717 71434337 114900076 414727815 282691723 771123339 866831604 873625900 185644771 961582058 581723682 183601216 876011337 964208755 615656029 23672300 614272794 770985436 203741270 353730022 195933092 950137200 226090442 931243552 999351022 814551432 43674632 496625810 266094582 278231786 407072868 811301525 467752026 732486793 368508943 893054608 447931615 981500236 728830554 239442364 259842380 431373827 814289295 98298831 391087522 751106043 933577446 853509763 14926677 37479263 253166572 807665360 415194414 137758314 973363457 100842669 987793905 785473601 461366466 878086132 463308343 402844879 773112373 336492039 642180070 162334581 720213186 104495381 164573827 861740850 708843657 544826762 589427869 303579153 12655312 650007936 690041877 283253401 842856678 575683530 487911826 816111020 903893558 291841096 150708603 392903358 413575556 306684723 910419612 700410858 167231168 279107278 351643758 172960924 174923005 685990 971945434 477524186 713899604 543084573 694726833 350186318 357634474 760431237 124116637 160100462 675433666 652582487 710940037 700966658 996868704 682348785 178016352 688074207 561107743 967788821 101964027 810855091 746318289 495108968 386028148 259490292 664329372 107403882 948776782 847720544 36844139 192899960 178217099 33913418 352014940 110179791 260721151 555237183 778488262 747501636 246168247 518994057 251365099 518221599 288547656 222185027 808782742 208501545 165884800 316758989 779308302 269779368 348435038 496522699 454996991 2337113 767474753 457908013 616075003 220525709 620385672 189158996 834892498 385151641 723726469 584388429 597926212 523641572 870683510 33763630 435497027 1147102 580304778 553150620 356016874 344517558 9758888 725728187 638813226 335625782 162783264 998993931 990829855 374301191 66825676 476734349 207749420 384913118 883390505 144133129 96707311 647574544 186829469 817497410 673412818 786298740 803016653 568042525 269834960 241142275 467675615 915005455 491940339 882159031 926167998 260880959 182119206 2575272 25914871 815959548 691093361 281865724 227379965 749533229 554195233 421326380 856454268 122212908 153730978 737146092 528349517 138238653 510482966 16795439 265152809 865837515 62614028 246791619 24833636 267870433 919252416 609227673 227804985 272360003 315770013 11189805 474359161 527264541 935501677 86634516 645319073 781979278 589452097 64753548 207495606 426874451 366881917 300247144 727955221 686101310 684182333 500007262 119507601 653181836 707950368 280615977 811967021 954744792 942209858 173856625 251275071 178031720 215500163 895209286 917529709 47770544 203136033 551629720 91001991 210831627 222114311 287343242 321721584 513598844 454268000 917046345 561888614 516832444 336085281 581129173 347244874 535286560 749285098 990918065 336850854 302592941 315823102 907630515 694790603 979957871 678250181 641109331 203145356 413608164 6373398 69214880 562611877 130079372 188733006 230166909 57515698 690976540 333219265 284070106 163412321 730819380 96645912 562187335 726421672 348211205 924840064 85619140 17523340 701287475 147285514 446408191 572322275 115616487 358285126 843784526 241358633 907645258 47326849 950597961 513477677 366182646 56524980 124149429 663262425 36302060 67701418 791238311 22411139 929777149 409113315 110905749 663764473 705920067 263271034 825961850 124448767 854080572 529937403 228660509 962439039 393733219 683497054 634510704 882730170 607086957 351489399 586836144 335606838 459399516 510636938 302022263 947684301 231906675 773195312 951548891 463246669 671167661 209659096 909942395 538081798 333035845 876529727 417012834 718313012 70027942 436341655 516046302 148079781 389139974 119168279 57328878 535763462 526692540 539361973 366220053 894078899 286319038 812216882 332960390 734224532 539569999 142388315 372813467 952424555 934200555 687500552 742464994 960718390 553195560 740916169 317500931 830816713 391492565 425326654 786474262 484292152 753247557 429491448 473537246 224029235 499099704 591229090 588553834 753459013 633137425 739658038 95158766 17801591 319536813 798546124 337885733 381402441 249021217 700773436 711663602 959998893 463562022 677106489 282940139 373257742 738555331 377084093 440077672 757464613 353975432 164952202 430805304 569245854 62904554 840011222 370648397 73305864 917714681 876758905 577298052 477336319 138426345 317540451 711933018 531811692 359108296 275076175 381711285 832697242 555115185 493159162 297890951 343270102 202090119 330655683 597687991 397962896 365138332 514724760 237584816 786444621 644169023 299007475 179108828 201864346 862765750 607441468 681192037 872430031 652570045 212468301 17635220 648369537 417027955 545150479 539062887 698140142 845893412 213748667 872116331 136506128 987718168 191217195 58048186 18777698 826793611 502886984 580054812 626406446 65724345 778767637 367580325 285906611 696067862 754858858 151572531 986746365 496602380 913025998 892940185 986326059 953846703 108722221 490632366 181942002 581889254 356598230 849334607 32902271 716160700 7855505 608999035 410118727 898942656 931444752 890909314 522661932 676469316 650843575 281781857 829274726 92532098 805729805 38843804 946477594 358198718 409959826 472410769 212556890 920835239 598070873 322137910 541184819 427362398 213534566 260469301 917744959 419366122 507303891 428747840 127717833 221351075 714194254 30456058 205169689 432487789 121766967 875940799 101354435 228830400 513468133 809633317 969561514 373580807 72429858 898483800 541415088 540071054 761375616 214581251 647892023 27263331 722532282 450707980 640117846 876019655 990859112 463270843 207532091 946411948 185892501 65357648 375509710 314417325 830489725 36856505 432069744 627329474 34729355 883191618 324492224 159532149 694452865 842872487 754542942 549665435 652905788 427640023 628049911 434827596 253899091 256177112 248631045 567295042 599358750 146850447 999400839 170163167 365966422 185862359 80269832 608371679 513781437 79196079 473042786 195493278 10515879 512280720 83175194 867701248 321911392 660691117 776101762 709019405 542579240 44833633 615954872 361474588 934621600 795978630 306324824 25880104 139852554 504732798 951277685 3848533 389875713 57424442 397192485 900349289 8748131 807667119 866386896 895634336 411766996 624999781 879838440 744310425 756180990 335322195 422426793 178478694 812595352 796648351 129712191 217637574 581067628 94181976 465181825 474816015 184369435 590294426 954560249 78170205 104015409 237603688 545476328 272946978 203843905 867287347 744382351 526189112 638392656 997647935 333274656 949195251 690533458 163216017 51365302 137805667 611079421 174090632 404210000 685950286 893850882 677008850 93603915 66991872 973978094 799918170 389778107 315443780 112779226 510686775 399294758 493083800 664115497 410844159 271851910 45682479 263709526 597723597 503541493 115657689 56315047 545967132 644885629 593702846 764908791 465918431 123483237 663936378 113692639 61018176 778438515 151625358 105753054 688573458 208766737 49992737 343864379 770917206 757840749 863374331 514862018 954342580 791568604 306017915 254615058 593264065 672716531 397512020 942775086 928197054 782357174 242970966 783016588 213603327 449425405 926207944 815421400 228080118 282007973 279603449 516441468 37760901 117905006 293916059 756756651 221703304 881280384 785794806 601502119 994505470 832276272 229369231 167211600 293350446 752535076 942703033 428724954 34925039 397976107 156646789 122486780 36588236 628643295 770903962 300236261 503766926 537909749 193140814 662139928 271370149 70424132 943224210 881387405 158449260 513419359 530649993 215999533 983067057 915412651 116364139 614999483 11436417 87468218 669312133 220272620 149662773 683423006 747859333 973801688 789346546 746848900 327024092 328467484 789225428 848828959 803084958 809302552 207270451 362710488 346723531 557253266 466195737 996909477 80410869 521442582 397062882 505630777 252692262 402657185 713918667 374685114 561004942 551658762 696374805 57422200 33612655 57171379 775780591 60503447 886033692 903203979 339657190 140594014 792705098 341272367 65770684 968410955 985407745 490320640 939473173 461256144 798027559 948026758 44440793 940257373 546598394 112612079 570599636 853164095 572889170 158547312 734258412 398044250 117231485 447309093 447227083 750822317 13147563 60596424 880956839 929169195 844586787 156866920 810921159 612793055 268885156 901884121 92358263 791499669 805387604 11043497 204405678 189145545 804919630 643821419 452809287 962546800 859931443 860274761 489718131 210030393 865695364 417520372 455495038 124579500 935391315 944117774 470087745 86626573 706344964 886095322 129660811 93525925 699545244 267265559 593088026 697580942 215686248 503802444 794659057 269428925 316900949 353109776 23632987 726181495 936248410 280374625 43200584 593282972 92192379 608288129 535884799 121774141 808705763 887265848 114530790 905469736 391843357 7904265 649963138 290276626 341711133 673061093 925135664 283346053 892888028 775920848 173098971 261586254 892126113 140934234 746135541 829780478 241862635 682560122 350136676 137499642 126072231 798996979 22565151 789205944 18656377 199574579 516233767 749044524 311259307 781863454 143684645 856233570 569835532 632088219 11224906 254950089 531705853 877041462 613347082 471374062 296063578 365814124 668603118 53255889 496076875 909832839 715280460 345533507 429410465 571539027 206860271 584042049 130199738 649696339 328936269 409899766 337231493 271159065 381621721 609455011 900394200 636217693 987241612 46441238 795545312 168665371 495758019 649176726 337514037 977870965 473239653 823861209 323459182 307799232 631688668 101826678 390996400 707301924 152765800 703442352 987592687 313847939 69560479 653144640 785808415 699297687 921570432 3662248 547335313 211666383 122110457 117509487 465496546 283710435 4627877 157937541 389833256 150507176 750838283 609919355 715179914 259231201 70748087 615634412 913682764 522841995 267893587 749748948 676265695 489625357 802328035 641546576 139395791 596256412 694004630 404955410 118981219 425645640 465932878 162673113 882182869 516437256 532333920 471760760 860058285 643588710 410416206 792315551 517403608 246791992 180813360 438383268 472117742 969657559 729390869 195379646 278747136 318685105 347902605 531453426 953360246 75745569 906175749 299408502 326697465 254443664 212157661 783111836 527401288 102919561 382532845 549207663 864026827 146384535 648397098 182795299 538868584 428753317 136456599 837344127 452705438 304715421 802960576 299631766 988774755 490987532 169370711 680155951 769423071 556536464 681970277 21414676 498209704 482774232 353369516 211309880 358145675 849155588 657912770 569304057 134033384 424350097 326582471 530875103 913933364 341385554 127988144 592275042 816291680 482285273 402536713 554159493 373508159 663029451 460164772 152614368 111493972 135515633 740333074 523351092 728616848 64464498 68778947 366970560 34144948 649045417 495525966 985508375 937706278 898776138 662708678 857781550 981759988 479344324 100372389 83658389 328192084 633323171 698023470 427928266 933968516 792230545 77224199 211859714 512789112 406526068 518875096 901381321 623955209 90378639 675453667 46697676 71526097 980328142 763326969 820780813 545282338 595103045 319511687 373133571 719063418 414295267 120507263 36831029 659830106 301057973 783895356 199753791 975753091 895356257 539015164 905577014 507245303 990296227 874739653 339893354 196726111 598787361 907196489 998972182 740048405 825410076 120977430 823181728 621601437 188991479 282762741 436185469 475151689 20215680 247092279 41082727 619788138 213882190 732153952 959149217 556809209 316004944 882734845 527503176 955655430 190224382 568437145 856667635 274352963 558007106 301970931 623116369 574617203 777094529 160166251 47646349 636005756 598773461 246715166 794390252 770906685 679861064 172232921 453537475 817703987 73236236 137172759 732143974 777673854 246346912 247691050 508032915 643214828 886298701 822594816 291206104 229131187 262272951 247329660 177939526 319845324 582671000 786403687 159860889 852735119 828517226 67499379 338795136 502845647 258128968 520139141 999332654 43604959 896267570 242998115 582031445 555819655 513190257 726853428 973884962 709597433 142687544 264557028 918970475 840718655 842818274 318688071 781518379 65940075 241283343 939673858 283544052 610819268 571868066 447055136 66421688 4075783 383354442 249061515 162059043 756813970 920299678 318362150 32636280 897833863 656060238 237464718 966669930 383803510 76662168 916729560 261493576 302437627 664894578 642973376 47572224 406555654 432001359 129521802 993722147 73399202 524671129 927265555 53647007 46224554 928939798 669701897 369332346 73677335 405568454 821078492 556272096 894814902 729438069 338862427 337630784 63542954 456797397 791078217 925218245 723055060 53649125 553043262 148693128 482570762 446825210 499386325 664618823 316325944 578340908 94525477 146491698 635045272 239166507 243783124 787352514 592536122 990495460 900478782 726081350 876628226 691956484 2775457 728073063 572888166 396679324 303576559 696364870 822917551 892497480 963501490 799551010 134330683 269292173 436108820 335423325 297386114 484801907 866256623 215354231 868173240 798702934 378609936 881308174 199277010 920831182 569586391 198550812 438652405 544208964 83085208 558937150 217994537 754402737 14762478 892071588 383705808 940131241 694835157 239006898 249965053 789545849 146383206 515584992 839614133 628496703 650800127 689570067 366627315 728485268 17374542 599531531 974600103 555047663 996045733 848186522 106654212 153435840 935194673 180073606 877795708 48697817 248802845 623771424 453215675 323805362 881749328 762864320 944498234 939586716 942226464 110242483 874453421 108813316 17966370 861529784 444823207 825776738 781101491 94760297 188785128 823395183 517333304 187828929 548387163 41381687 838147173 725083458 118194116 829590722 30248041 202249317 622458443 57943130 357495054 119407845 516751316 77246132 167665100 229991610 154865179 976300519 4318222 749579930 734575932 710268400 307820448 203865317 243744151 257864098 925005259 562438869 290571586 638733978 205399870 124248883 457025472 215647006 375686280 176262648 175708606 709381049 706325306 698505986 428446360 26100949 506350633 761705698 520907052 899564089 794770447 221214325 626728045 791213256 411119276 817111448 394514432 275331464 205458046 6796751 964365753 859524942 810462330 103488743 295565916 488315972 794416655 206366813 749481516 739474965 596796023 354332646 746757625 629066622 408792381 399142624 537897295 607161854 346602458 427016165 276998084 299709856 789350318 642745314 956625632 415767947 587228601 597233619 657677147 616255398 615460014 593295387 622183414 153778155 963721543 451878997 121025635 538378476 644688870 984982050 504608609 36570470 593225840 627648044 259179069 524657224 486898542 993867344 512928332 822709961 882916304 774846420 587904998 10880491 815144130 492249041 629983510 403278300 130235691 362316110 599884146 612056449 617040236 291396560 19746701 291589764 306643587 285646306 252173776 221269639 208205674 24665566 106101987 367208692 743856461 399485993 163324868 980839996 870696031 458720433 86877450 349375838 213578054 738574471 612206335 194941244 460331096 366052327 989248441 733957578 125388814 480429423 764702767 959365203 963183771 589758304 212696359 782267629 639239223 18041225 951773843 193119482 757846362 722396779 457932609 288140801 565885589 388300522 838919260 519923360 322716634 271689778 739465707 455641553 361189454 644959983 585469465 777375122 590663392 115548408 633176692 41004692 757625351 49589778 318962397 5257362 690946660 172804634 120949408 812438586 626897994 710174368 632057198 533346170 236353989 165241696 238254576 69992710 923174359 558755952 309871866 903013194 547467301 687070676 465289811 155301895 445891800 146546655 667684248 294247081 580162768 281332692 323173155 750203403 905810660 33788157 981705421 435511855 638246746 133506900 647248311 240534377 120154783 581793482 74025224 508616094 302157826 71783412 180794025 991421612 703884806 442232935 124105333 288196955 209434040 578269971 447232017 858920897 239500523 293934113 565844766 985904469 364899716 103672055 770105171 459204070 262178153 456437235 602262537 120882539 318338291 979778010 392722564 168627339 940646947 169788506 361875229 889083194 808996150 57292549 962006190 380910922 378993626 129926296 706035244 308413563 29111337 781983856 11034443 661409314 752148503 928645398 79416325 891956554 952088034 29550369 785613209 769100841 962019966 823001700 73315165 1805355 135919798 627303203 775159925 951845013 596963774 299332665 53183660 532432143 4466249 595175659 965790884 983734280 504543205 108283018 864288191 658744245 481842893 173909981 633963412 902927914 488470670 737404938 661248506 729808116 449422421 919324790 757156375 716897103 782660148 729161103 929893596 150580153 36414510 65123447 968343464 250318620 929067468 555131073 545198024 386479612 965039770 939176071 749935703 388232819 324590196 185796375 726516183 779045479 6733999 5301890 901750901 253833736 240002358 80306613 68400958 266821504 714675013 441345863 883369209 821140413 900532910 697488060 242984843 60039712 983458873 391488453 680725884 710604171 726955282 240829637 492762828 356563003 590970564 282949287 631215942 732965612 700061570 804653468 426250768 221109325 814278806 65538390 596522927 847557680 114778654 834847247 451785295 192766290 33532120 159239346 442003893 879501496 904894406 668053017 870773634 286557201 949144242 397678189 195315886 601859985 210116507 629438254 894956876 689546085 526732148 540084415 433142142 176746437 155636593 721501567 979905423 974621732 259557700 430925348 830702104 468493487 102379861 596973226 736152610 849723201 22193428 640181530 729449171 413689743 573397405 881801310 599829195 865185297 520232795 830440288 163721098 276350043 204254382 617435869 867595932 140767211 665018712 784572667 858220575 982180193 848230627 137429530 371291816 265316287 500484843 478115764 195178301 575705885 29353190 894978899 550403080 453270368 647568737 562451944 427640012 659369434 232920439 525091965 953728901 738535389 821589276 877808997 338697880 546040295 545543870 67252091 34412281 634786923 6011968 7552793 787251044 326899266 140352171 37630248 532546691 249001384 676093068 877828709 943220457 740948979 572312830 946095425 661354316 291771965 246171220 473499693 927224601 202716455 119579961 789981801 815770709 39430286 577816758 117733445 106635970 221139065 717120532 163655861 820561684 540031854 762881775 81516792 868248434 118222405 988859313 330692445 676730904 562745835 276549621 694959801 161234501 511820051 420173405 748534540 156555592 234364520 610110561 901760410 394662734 108761083 551369300 906614496 146972721 446717481 391898100 542074765 543354097 863105161 492427666 676229513 197948237 561824490 208541384 759925010 685928364 887803450 632479698 397587699 624946045 43762555 665518006 427082447 544052680 609147309 983107089 833466273 547410729 560195628 757160756 223430106 738074890 545762579 967529849 419957889 750062942 430436747 908065299 194584767 457770806 435825857 923442121 852532978 789888631 809706385 54448630 531465969 48076657 950246429 157584735 111762266 617828957 70962566 194272881 748974832 11288271 943671652 700932774 183721905 378130771 684533124 268827182 302221813 158214042 605392980 213077282 52815580 791354286 347857217 899312472 409005096 569617033 519437226 578979319 97688126 70833113 164353586 911402524 815786972 729618490 739324896 346752540 429835147 674420991 305241666 482215854 862446158 65094504 893834962 746680244 881292656 650481165 202606203 52627702 207321551 304966741 133661311 421552735 226078201 609269622 466185336 202466834 16092468 997566495 491328790 518903527 790694177 609298528 38623560 629358429 345337095 140163785 113027028 807514540 314507938 922975624 785766206 370174205 145339283 9015006 720754657 433082184 703057242 322942691 973648534 734471892 430357892 953898372 885790144 863809211 812765843 81796137 211681570 791528005 877442587 907401443 181917690 26139228 800642335 376573224 621818882 979634815 566387575 463250051 534542445 507607384 605012964 561363554 36415459 616943979 388957272 325901599 464000455 996565992 128045586 101799970 434798438 383315681 507860712 212763633 391046513 563602546 915790257 953197581 840152286 747100006 149744049 735601928 203080498 655158594 869887993 680961453 530876170 849536297 97159606 736695424 598957154 358078032 98208828 613571696 980514310 731337193 796653121 867889329 989989453 136780855 992426259 34423682 820323195 933376757 961267140 253346387 505875547 788647839 109041748 509063944 853979082 204550230 849705573 38722545 586942340 427482996 342277193 491719112 592051568 602960122 101571751 755328298 90788147 739062968 839846381 860849559 421337625 739531647 527216281 350928992 371024025 534877573 12977511 109468096 652356623 340727991 742383593 589490645 793865126 587093335 304145554 840980907 391656103 733431262 610570220 571756836 207653803 70615995 47966258 723907636 403275568 484723511 235603329 247087847 125092426 974066496 889539961 115406072 458286321 84721456 400398409 92054246 774989102 283793737 777964650 150050924 674182897 270998335 69047420 914258272 511225029 746531816 764177152 520992077 500874295 838592216 220543424 22713870 38991359 832653853 614944763 843890592 365107860 203571519 178366210 664682224 493651681 562468724 643243209 473565720 573027431 506474134 909252622 919983513 23817956 637049885 920772354 725949701 853638233 96747633 991535342 281526662 802205481 609647681 365158098 797072138 861628871 47438587 461248095 539567894 278067583 535190684 816743342 778358561 156526732 362176044 953234699 392974906 237794554 520506249 937756291 520509146 43765765 157519032 607941979 815075261 373371765 257148317 33846936 129825643 721867271 572354112 535858788 831488927 935624292 531029621 7849547 863152114 987261031 654129396 511378307 725570989 989651307 25063263 24816570 627192762 379842176 256451 843024782 146789332 309010886 257856395 921731020 931712232 925553994 137130883 479541616 788673231 172924484 107239489 982942910 452486694 441294275 997764289 348761309 32082586 871172910 67465513 844438864 614332031 360621597 320070009 91477420 683805284 648950979 506869850 299578643 345941792 645679659 839438068 268525940 851192746 804406041 581648816 521004470 635838401 967874789 828393270 461429209 957725553 17320178 537286069 610366249 24755440 774445883 633655911 149783025 380787317 204318307 938004538 12870151 966734811 683905806 308425862 551246761 112182072 809100303 129824954 810444693 793010605 381063504 978137313 2152767 141760014 911059559 885000695 839280718 913503525 131584294 551043276 93377371 574411924 726594051 864672959 154071725 172947687 290154104 467108399 888494202 686431346 713086822 790707094 982617184 734940191 553462329 537903993 927659496 105270952 364694075 713781297 456476215 914507296 366521253 819210892 656414042 277797261 417258897 170731846 570772600 612859045 751798203 868695905 916238558 759710631 737806493 511329847 33162794 257475677 712626194 714114783 986835605 939658880 323752731 312162381 541463924 893709492 259937991 760165200 537994318 164511555 267397541 533162082 88467395 432261600 94928749 474969335 422344942 761690916 718884658 850292664 421182628 614674020 193719580 293028947 575427081 493922257 158981040 999570627 988334761 409207893 782897439 305903490 822138802 937797103 515798992 639131192 568898477 73191524 9720574 15922242 676508302 876760147 386083863 487249648 671592957 156523068 837251186 559121669 207004809 804025583 678236434 363637500 508838769 923125810 8212224 723277178 565236661 555703692 15619565 205237565 245141628 79399256 385476255 344630451 715698199 953509961 166873497 730629220 851554954 283636262 471796156 553165494 886819252 465942517 331341939 305110870 664040494 403949223 17269588 266885136 168425351 860993971 567542630 16479273 605814087 892667353 305688397 42200285 382487678 590650837 944937286 832515176 545327920 521311179 60828197 640328095 992815581 61124652 693122718 505285147 755230118 487503208 827241284 751996373 351325595 858754998 650298053 445842383 355392708 132042543 746836324 923691656 593079099 179823263 800283354 138371335 573207913 34120433 920915537 968924703 980879037 141406218 819057659 979307541 653186046 924130273 655507393 958703661 620166411 425808508 261649372 266093304 8349925 824787696 295718988 260445671 144690833 629247849 21921775 999927750 905100423 936051247 716044529 244812197 203819748 825836611 629084220 147443654 300836872 114464641 944059541 123722081 891169623 1642623 600073862 527298179 915241273 649222087 383562528 600192452 481692995 224181901 191274114 776222439 103954362 951900391 740552338 665790801 380470145 71625497 841349226 570158986 306554530 232904543 555273073 246494690 251134360 648082102 6043940 204551742 290239257 999769483 16191102 412572800 113755745 684348881 587501293 519415361 657863166 559798357 674863307 375887120 504159653 330074917 811555304 377216106 570873613 611226029 716529055 127999448 84955721 617132132 710198021 987710474 289838155 332095155 688927709 232917431 551317426 436065347 806002739 464471256 720644069 32395104 662733409 650902719 154901375 292135334 465196233 921525159 542932035 107991723 715037566 581774426 395659681 845496360 959041396 980087315 623440621 48866934 756837048 914314879 515865559 231054455 850955486 21847334 587268465 808937970 181941737 640470695 262896041 444481194 834929273 920616001 212868015 548061464 44047939 125099122 584223923 774854425 802821412 912300953 347864437 361634804 688493065 993681090 128304752 256533548 367681739 615761297 82841172 658893555 864057915 181862427 310392171 284583140 818660488 67575781 853615716 866155213 308712096 978904163 190732619 599750363 276161249 803340490 100879857 97726660 376207643 120543169 964861798 482188804 362064947 977375426 557402077 316215880 333496904 741738554 76139352 195365069 370995553 590684535 271293809 413712860 3073133 540029333 628510897 684698539 985610913 945519483 579659756 784875242 881534501 839348500 696749184 461144448 905085899 139600142 879663454 498452724 285036254 156545121 750013573 40964847 703410223 497374442 589553963 112813921 66445581 666671213 23102839 242397604 259527726 244166627 14630161 608087432 217009773 422635605 685616665 333058810 139789918 452174784 974973221 253370816 437523719 604557803 753607575 836788799 617728690 857582589 551983200 557496569 703998708 396288820 738730689 77900570 627870568 105369097 441833500 771167365 900836725 287561194 370608281 20927036 319028117 99826031 161653065 23117484 919499379 373742111 823515854 229765413 974074926 665621782 572314565 489305869 812066725 209662466 282999772 234432449 584391305 818409381 794778359 203630896 949804380 466699673 694549904 927052246 122302059 941992248 71880404 135967014 1409481 154396419 949862207 741324435 865728435 360474392 585915568 90027396 113197310 452893240 217964929 570380552 870222718 95361804 684457080 13459593 420484497 330494944 911090546 787532423 939045532 926237615 703687637 127667411 154649100 511506427 508187235 785431417 753407483 649085173 809012487 893572657 591734065 719686745 760104016 357687567 486385046 610275534 411659449 250481503 859867712 850799471 359338567 253604388 487502501 737476512 826040158 699567075 282755351 761254873 289674313 773667771 615684691 891391540 263733677 459201875 148178728 985754862 116953974 976385262 782778023 726324891 643353056 967814433 824617906 177364543 51783432 276182605 539587433 255441882 857906593 572706528 911563080 563864703 182362187 332108112 584056537 517446104 728263135 95576650 337323093 969312248 409330618 550947310 839674375 734807962 87019560 153427764 231552325 921930306 190559978 940517522 552822807 561795682 93983490 563584824 186888411 177776919 423644681 759367778 418580042 992474471 788518483 62969967 762775086 321992880 73358375 400720340 719282778 558672561 257940487 591313627 626734077 645630349 259227835 981310250 462692507 656898163 960032390 297042030 117474632 20870011 880865158 999752443 279878172 148234810 30664571 720726737 985018107 105021985 287684376 313631796 328936600 338254701 874613830 396929233 816699502 584071166 138312009 946045187 933799320 492751782 137759649 217803975 254562893 669696153 459890672 213711980 254059178 976590902 883356742 350865304 309770633 370310293 734098612 803647740 654558687 390595178 66656749 653802243 123808482 90093774 896983451 149485401 891854478 621079407 72450382 36133421 7409427 873868078 713698506 215728698 517105116 313566286 161766306 798588659 375774802 741174256 366757509 582697999 68694139 563080642 368541677 227040318 153995293 662298537 376822410 281290521 267623405 714103649 87047188 555491421 503027378 455765826 224214268 689946380 605740815 81281058 139358897 941359267 431425879 80203337 37032110 332433116 954685977 142334550 948939325 483738214 142630524 407365646 753315835 369484329 378772210 155190492 642098839 682776209 307111389 176416998 837537474 125368406 97079984 462625134 708523680 34443677 678582270 767291609 61080161 282943249 41620275 728417283 991209175 491844941 290970247 866761626 361519672 856347792 317425854 237145282 989857095 616104721 992815567 261797086 352627245 290587791 115712566 80143636 797673615 320083679 913884010 376059299 928729851 730400819 679542061 716354205 877971331 156030394 580120426 465667196 414192128 414909086 612980290 306951139 444690782 466725930 111678164 893837962 654331376 49694949 637701243 763245137 128445798 888810537 760030425 271434740 304281120 674519628 568026412 520832857 619559096 97762302 847036082 132435874 745489417 542226760 229199421 732553104 292672866 634396823 43468191 396334616 637113933 512026820 73098391 403636313 572013853 770599306 30741302 786109783 45622164 959675654 566340765 435163810 477979474 238369762 660296211 834660638 705197352 704133053 2857817 770846783 101396765 840279442 537674017 856460440 253386032 829856082 312714807 478402177 117882327 929025551 578980291 271396143 718163834 936039815 878613193 870967048 281596352 784965254 973931352 222300442 493317824 30165099 355574614 396145932 297738986 190002723 720096389 602148553 760453605 836591652 551209948 806086713 936813591 883099968 422355812 424261371 339511829 647232803 793738120 992158354 656746299 915655882 220086553 106293937 399344630 899600545 465910936 185961977 811124493 37564299 681326494 640431617 518373560 428212294 624730531 519178090 177521265 745660747 67101286 882339352 137957960 713531191 107803494 447701753 9682982 304054084 633742961 257545191 558446292 991021665 329582121 317032331 179124432 287042995 482439457 310083316 592895825 873050330 234400444 5320256 711564219 15926774 396237619 43085581 965436246 497085661 931156524 339495988 681614098 112285652 626015899 937853451 179981050 529644800 719277187 781382199 982041847 652060739 884889270 332594214 742526446 919109260 542195618 201663514 6408551 435659631 114937164 387369777 906719124 961082387 627619630 335154542 416179095 411150457 837494296 92891217 333747775 614205636 477928864 911361704 671101778 313671084 947146018 181611667 900793409 21892331 706006754 953503865 237755568 348592646 936804081 808589280 837188798 702477117 54817866 549156418 366361637 768102480 145256319 760555106 608616589 288910678 160627508 527211903 750127262 50629584 886114213 502560508 693104815 981271802 316327941 222790799 539762970 697843969 634330163 802916346 751622135 113682516 150970345 390476856 799666520 477999897 308303748 12805498 566287183 435091516 455844638 375204174 558329172 82967973 274201209 904429741 912634415 235387997 877511604 253832015 562547188 117731982 443044425 940658391 202319768 652172545 548750470 839132092 847834635 127656810 164624611 142916309 851955419 764516603 154094783 428316746 257024988 18194705 672995263 222657277 961219537 423625958 331346991 460106171 141621879 406303448 196189177 901076147 936972272 10188818 887459177 181626210 587993550 795583629 18518579 156311943 348276168 771242126 597688403 697708038 953780444 463118883 787675320 9277379 739790659 301109241 483754426 416281634 420514443 414264697 166742575 892718548 721151051 196877758 590464515 876339743 667686442 526111494 713317439 645376500 172233960 949031416 802617978 972065486 540393275 998389091 454459932 187130387 820865870 583525034 933075816 823389297 89458283 869301429 648307635 913659597 600761108 446969005 561644134 42928685 568174390 949761648 107276888 528693499 271069202 80707077 746502929 164370852 179971816 218009357 468051125 848249354 885975301 806108546 995706264 644571840 915262297 399357387 101571476 764055411 95660299 632818134 408802799 526659001 878069212 945079849 216986065 882419415 634066487 195959219 501408169 371124630 101795271 376633150 412110477 480582350 524002710 647848673 205693030 825346682 996772058 952964081 612650234 971433171 538503527 400289770 352139174 812435057 303086893 819238791 406362872 451848774 303809919 313612250 714622586 734097538 926712644 869322995 600709289 857877670 423170106 425165758 380880264 659445152 199152061 963663872 377904741 894672941 582235141 466597284 800474360 203613818 80761900 270498051 349309296 118801879 826132303 883944079 334038131 255309602 948611677 436566138 104823078 277127379 909758508 448387085 730419416 291623710 821472118 944421720 911876601 946020330 925439364 948862728 213921949 230204330 530261360 592976732 863427225 215199203 187896302 395296433 569944003 6692019 324525273 874700712 718643850 755286245 824012556 712782978 950607885 791872066 89017779 743034429 769516749 429442932 931043092 201336555 108293219 52000854 835690356 287275006 473193042 389202545 170508053 811393039 879852950 452423770 775893721 673113576 718961940 605963467 9779910 436846544 72826987 820589988 591415924 405567648 858437490 280259444 675545224 557930070 591190997 700495765 345429428 882421845 595058007 482310460 615136279 66457772 175887120 245832681 65120040 648051286 381586472 791664110 365607679 770756430 184732212 157307483 813649424 682210628 923832672 437839738 965754961 486029962 866201562 514083452 66969994 34184202 537296888 593166052 516061221 268503507 65122257 331676559 234260417 366694621 67133776 368646289 334961187 355665112 825649550 757320868 376780117 318143593 260576317 868263718 871776003 920146002 917327329 22807322 191388914 905115243 579946177 144790323 794597911 102902137 683160651 808526644 623487509 376545883 625941157 488446412 619527815 165781234 997852069 903801789 575057471 340712439 558357770 921893514 251084641 485107886 979869610 312328924 174196162 818823979 914329190 754990992 739840262 835922534 186379260 324166160 86121351 645594195 146181246 677389059 370689994 466751749 769369173 768987607 99862565 72614410 376552023 29312339 183747011 407044799 759171389 423085513 870898736 550446522 352875979 722805565 907526834 432134257 580122601 776294952 700650757 40836527 374347195 277290381 116733558 816385857 502800636 691114530 653340581 230448419 994246238 616883716 448331024 442244161 601459187 787129390 294957646 917945883 552904961 739960052 829757129 105852738 214602369 571094501 887597785 887236034 713271875 713628807 856546975 376692152 552311052 686120410 445047700 636421377 155723450 9351598 299399014 745688068 943396583 576772893 29720182 755930717 21494304 178373628 167098532 724640641 393663419 354117280 114179552 298961551 728780056 533503343 593200183 170922580 522408808 940685985 969655682 619494888 320706081 465583796 784444809 897231432 670681879 537808692 194863443 182095123 973144597 167741168 174884264 339575095 331637823 449656450 113457734 316435423 453987463 219493268 493391026 127756657 796172843 818192350 892484405 912383406 873103748 190798657 444325856 309037625 857153943 396479972 361759025 27086297 56804831 898126573 937214188 328651159 645636603 778507399 839169628 201663300 110702109 835664222 729649569 387247316 963037360 550420583 157976517 975461469 985122639 771921075 758573965 419867554 484541955 416740095 898339106 302197207 453165709 777917122 355798207 538356551 477349309 873424908 498576324 356945176 538036974 782672142 296242423 578280363 578635292 851672690 871555347 575673364 784125022 300279834 330174167 645917300 900614160 539287369 363131566 169373378 288074118 21145400 418703343 358920105 975975159 923272345 843017517 554002595 607300878 716777499 797264697 382928997 762307070 718076939 665002064 323734749 506986234 766471245 790765908 802069623 966057839 455389731 367897838 224441534 18067785 56239183 879640701 179480227 768257196 741153758 871886530 810461971 678331151 884452491 519847713 302201267 632253341 69440398 396621497 220211039 408291920 426054762 180362652 25066208 60729061 39623570 119145763 133141940 281504856 963590016 729928879 113829760 616148659 693061806 481112284 728658194 237364242 578044845 616344455 372634174 568753195 305194123 971064269 797122893 124838844 358329370 986534921 885845837 440653335 936295243 501879428 837460688 214459050 126270284 657470417 64916451 323584529 549348365 275565811 93730326 878160847 253016783 288340636 449887777 548302075 696411924 926604267 299550499 715823492 303184331 269015846 763551509 910588886 836550522 533377260 112928510 326832109 709576855 387209957 423427406 127211200 327982845 581694599 397641268 956448723 977207187 107593662 488780218 471435164 921596938 280003838 567476754 545685900 257310393 462826041 657904653 487510817 799678365 636808044 453586970 612802926 424897170 886230398 200271215 371958967 993538857 263102045 115722655 579987248 119883299 848029129 420713824 118679575 568116190 157836155 635590233 722390876 29915069 27053382 665241597 637047679 970897565 935310870 579617482 317374134 515222 445755777 129531239 393131275 109952285 141835425 954722345 530489075 833565111 749277234 319027404 551874272 944201852 684599479 752144407 197481982 864481334 796203411 946450543 363930403 475515401 692709976 463949529 555068147 84622980 303202689 714342103 967849665 213595039 319776968 764869068 737112081 14232696 128012302 590521973 551028252 756559723 849292796 403012415 573275858 762421739 525411804 773589618 395147832 342779035 585382146 405522492 306184173 533068967 125969421 89246705 848871689 787515979 750051618 427075300 692297043 737064773 840296439 191508168 751558716 406913515 310838583 867751889 83281607 825768784 73570273 410842191 416484559 494085562 146203568 379995653 851806408 570282432 702036639 136510663 398784578 938697743 281321950 898308239 440161277 26108892 129002247 880326639 580802041 28102790 803379295 658552558 779837655 429486548 326502741 841311301 888084603 920647299 669240948 980099243 155914416 628899538 790290152 832363135 634097526 615400315 598407581 845439729 99312258 166974244 441116345 173396651 996828302 267962083 25074063 964515352 298811740 572363991 456553165 314534401 28539099 798187897 629630895 48345969 735268050 572331495 553399898 431160014 151979953 160141393 834142127 453387458 593216596 588700261 478247199 822498073 763172780 133511083 869099560 374722068 606721331 403301983 123597823 687570966 895687333 130684982 839706374 419225891 789878769 25629323 663921829 514248697 958305317 14851818 377477659 139754939 68485095 726807238 969459253 626947580 640389919 438905600 724264378 498761293 862292029 652639708 882504641 328106557 302449050 969749089 484688997 88849780 895372994 61557140 450033649 678793918 675294796 8033239 210039440 727152782 170411125 154164759 841120845 801219654 435083708 616458729 837279520 119187233 471019659 55970202 86952377 390679448 491181049 125117781 372578367 85960992 334307184 820689702 510054823 108731382 990114125 532966260 356815209 308182015 734169129 274108860 519701209 510084744 200400322 388964500 153738072 368259960 524439140 914217181 398377139 75369471 11850573 995503969 229271692 21750542 718415026 810967676 877238466 421156784 109456188 473264574 553003218 685760205 189237111 876801075 815072150 766507104 989600457 597671960 705256189 863690448 627442356 283116361 626008383 116642825 448174978 930084858 567924312 534305531 823645476 851843326 399515757 35577920 580287608 488400404 302954495 171140440 724128704 379836481 944891480 685350001 129543211 915891427 527181960 411752565 789120742 104228335 697253453 588888437 201067644 572422258 922427886 443000055 358294869 68533929 80529391 903211059 622848591 960298939 202100500 274545008 451636900 947015378 500771314 252405522 428570185 828023471 446851054 660118094 265964106 418672970 849922536 932380146 803499187 131113866 123705437 836189836 311832885 94247101 890221324 175293033 544285436 99421727 363901371 965054340 635644944 490699823 855104068 32339780 763846412 779685850 205079712 936672060 122072984 137925518 229670823 805690938 419595175 369013197 396624406 440333950 845913342 718730261 58382474 4399484 634535330 195821801 598548335 931709725 999124380 476319322 116019340 621416946 752981661 578441962 153952020 916616425 706552302 907139293 652545919 726567198 692671356 100216826 604202275 563155302 282463169 370616957 614981280 235914285 700520230 354712631 316177197 575954447 223710250 280985081 944416919 226907888 83900007 695713026 814059641 638781206 737021286 708975965 969687255 982639770 569603158 857748939 214211924 155067620 14832626 952494883 793880481 420916660 359467118 46649101 542513752 180558728 854246406 147007069 817474217 669638728 348276950 72891436 169884054 538992767 421404151 738797598 609006577 705913169 71482890 477207285 477444095 588636890 567033580 107222941 623946900 646205315 352830858 535870696 362053391 572389262 676875382 222944535 501987037 881932901 72446524 320232344 569515679 122101250 612500960 401570131 235883610 80653056 334607718 175629516 482814363 685608107 878273546 3549388 450290125 424103395 908498847 40218045 896943399 424708347 694086104 906525600 11673708 747981431 785039108 827857699 846042618 886431271 631867100 479024864 320708827 18416247 968298854 839442700 758876123 367442240 419736341 738095103 881871680 71451545 879174872 999000277 209699626 124894716 945006292 727756281 399799619 845299508 174439096 956818636 855171714 220502132 231932071 124884065 15168119 191400918 676877422 326071656 244358809 602978148 927229704 79410343 48507751 666025891 624801172 157091185 686972140 589865665 669754097 49841310 538590170 729202307 491753325 751075111 162560085 684196586 195628452 668645827 308102445 492201008 789977158 448245781 631766314 314692335 555975781 647144805 241210398 631539722 574492131 697774364 909702607 77579097 235700019 38420034 685531688 727020787 20451103 710178483 189251407 478645334 88166785 218490890 979879900 123700503 673647363 321290529 630715434 774511975 281932790 314109568 751231994 443075799 180277406 22970956 218498703 171989275 477063018 167636637 328286544 153426599 390396523 974457050 821582474 859349261 236359238 686410938 613235808 726198044 441632420 511923616 734540391 248088138 97612611 591752343 733349414 849860367 749043254 836367917 127893009 879726886 360569824 335723459 438277518 103457884 135841871 690293908 127626023 111619802 798926807 246093966 599231457 64037378 34679174 840472689 786753191 668765585 552361410 700416653 70160015 995956445 747402554 793716313 608904605 975175426 66720644 983035795 299619922 849818718 659007112 416100692 37248148 603215762 671650141 371504465 809828603 758655199 75581320 625069932 876295504 335950721 745885010 362174831 620071240 59508282 420405984 357163806 761664979 477595739 969191956 161243779 566823388 672797489 879514409 938498006 949200086 828906320 392597714 336575069 416205732 792811364 103642086 847197625 485082967 90981350 488816242 319063117 346838913 832209929 631745322 629335593 822596855 815549053 647809142 10037301 665823601 90536376 724257599 695811287 373273195 945313227 526334043 824238842 328868944 689006864 826259820 148820644 263786035 573440698 335822831 809939694 48769373 871346836 452639644 959309725 507568497 218676955 323421189 181759091 325907287 767547659 91786521 128775301 727181199 490694355 812039210 164165198 665248381 549933224 743168074 855810881 518357015 331382726 539495139 643752451 509164346 555337606 692624873 801272858 459152432 294060772 430284019 283648813 454449315 665158968 634434586 148527439 836985695 553811810 325639858 189329081 229496914 611852133 956947834 284083910 517535717 530027188 872177332 551309669 252690927 954613365 766616028 2054313 106438948 938653207 337684124 85151844 599130419 525146449 459088392 612332282 102529241 369087803 961070486 316776718 219444229 153105251 66992127 896042805 60822403 744982911 912789833 508051201 93579762 583961447 875727214 796531795 610045298 984252548 815444553 327252776 377099690 549741184 205712218 213251770 281430242 679103376 348003400 294254022 929096213 147224652 679531063 722236425 488053706 282441065 295533012 95725685 499901020 556928738 504230234 889323848 316247843 30966702 929271381 533877492 697532034 944108028 468731077 594344047 336923018 334853872 207221653 53946270 179875289 159294498 438920967 226170858 988017459 943952366 295588771 501019616 165642335 664386596 457952555 476177861 893962950 548736784 493494434 715316257 376901655 860752427 360649854 185923326 710003469 899228189 684314215 2135327 329012109 680267893 608804912 226906060 978936491 100523858 784642545 877768119 163917777 23575117 755896524 592019041 96368230 93300934 744888567 125966023 937148734 863927181 46306666 998352732 283394754 227015130 129341490 472552510 159392524 351865851 966915970 142365137 83473064 46653609 378366991 338486684 627161074 135152861 771375082 175324781 42070734 330714926 427454873 635691955 691852464 555797616 442444244 482607286 228134568 38665445 539918214 646532115 927581152 195977159 210241100 23770308 38888730 2104865 391421681 495910145 569804809 702775468 533592424 945541361 902914564 345955159 691962163 872725204 283084127 448836021 506325003 569233793 187307207 446353651 797790773 331931840 417476258 541905206 12537008 515643198 269856253 58116004 666492489 168364849 63571919 782485063 62109618 484982828 437206449 373085650 964389487 852762001 341406331 425867437 893673973 783416913 425419870 33953228 468041530 832598105 543525852 591839974 251916416 376756159 58073558 150791973 433320423 704726160 939339831 406477409 967088912 786873957 59335564 695180647 245830817 729985641 185951443 531710581 793286509 775158794 499256794 747493956 467365070 704419257 781994844 550620877 77818441 401820936 746508603 733074899 905057502 329229054 840833974 215726629 589429629 213123650 610113252 879392652 102674407 898205892 582849963 594357087 789447797 490181236 611995975 942801433 596488042 881510659 116635934 128700109 621821570 907615810 702959950 293696845 800520488 556657771 327757607 624883170 787252477 399634985 512349765 262897804 775472972 487585895 706118662 30614318 968276755 371223601 104419567 368623042 474180774 672560674 635853973 373608777 295264226 442243409 165053141 436054906 14849817 972571047 404331612 149661032 246037450 296848511 951846648 984209954 913095351 866674331 389573564 266324802 800233494 203935424 87882855 942466009 41370165 131516533 670566680 893030450 200168249 557971204 370508764 565403205 542605713 490649384 553019872 162769614 883134597 687636823 970481432 248092271 973405664 574206497 275529511 926438029 613503262 390947176 549718690 794663756 934221285 897305641 831844688 931473472 191276374 58380423 886921188 402990360 234976766 684895573 291546843 489212519 92849945 229093922 67844917 966842740 815404876 505984935 482547437 177674686 309543714 117524586 348219805 867274665 80339404 93795113 449794322 191786644 709834522 676596885 162591797 146062908 135902669 685170711 118425994 658029051 960605179 442053501 510196320 811937057 639983158 684970442 522963598 63026456 511299833 538794613 75653658 85324837 422759758 348899447 896767723 721335180 454671138 103269811 477334531 489617422 463884931 71677869 670055600 87746500 316327134 993593313 247620866 135433052 884095438 301787899 796103485 857909948 260874201 979108734 831684592 553721567 316749019 817185792 420161795 470384216 216263273 348507021 895393268 49144006 712604119 592858083 368584273 22911289 818405318 183723280 516021649 841668224 2501830 15537212 355633350 258577903 181714953 299309968 758733667 540013871 540991458 88787883 882034635 712729500 49201142 850591045 535153205 130433069 571632063 202362732 370736828 422777741 591074519 543382598 324633246 756526981 723547075 232312360 537122716 350408574 645412528 375594596 883762428 243502096 333878627 759396774 592371192 927015479 595373560 222513263 266795110 262475402 271917276 926288248 739321869 235677528 846241945 701426502 975797980 329806508 553998670 46628377 598669903 951885110 402041433 151804542 729711138 197964464 168092362 804576813 37249202 697930299 559451684 337154034 617740030 810097825 216871661 462156566 746333275 227222265 638367037 100408526 185148883 211576936 595529911 690370471 950136505 355969655 657151029 153857770 388534367 183445140 800360735 32919089 866077434 810281523 771002031 810081062 959101191 266297220 19065765 503159829 420833545 114698413 322111423 477654439 170897368 424424490 525670238 15877137 833947326 757563083 421255626 411576689 627600553 933048566 129904420 487023159 926746124 148449743 30036070 710097113 11800536 977085837 333441504 186997450 882300879 509211576 783761232 338993436 736959352 862788820 681762237 159335498 607375692 614162979 685188183 30537401 399474818 617182447 967008003 563778355 506335079 284486869 506050370 105818054 365422571 661356027 378847074 21707661 212740511 510086647 747029963 683130813 543100415 398625808 266342567 820135359 41132260 508218743 175640646 748229633 277474561 536160392 236410044 905295952 940875654 184520244 797384949 114710919 767388237 576600061 122072649 762117372 639678097 474069058 269651067 416603875 795729282 422486122 121780802 561563382 196934436 214227455 349188121 672267942 615078929 562446141 820846929 369627494 116928976 33423729 797457540 789964316 341278057 535034875 592991687 380807439 427057570 275545257 424197351 735469731 835541031 482781173 977753715 68269479 165402421 511563711 435217653 916623427 393664480 119432283 808973683 614843653 193298981 596199752 722355481 369508113 796712518 104345808 549229210 680530392 256641487 427216573 708691472 254805282 642491828 861594573 218413384 300837123 799396481 935545730 811945662 869862837 910059396 950388643 463457832 149203191 975176789 73141598 274905637 518702752 8068165 442759364 491407947 260834305 484690298 473770792 464264605 446953619 970638670 6860090 354273996 879863358 798720487 963757815 835488347 698513107 907038100 809996907 726371468 583905236 38918089 588653498 17640634 838123694 693358991 247338272 16563720 562704543 746183427 697788868 974135701 470719558 957217518 729114474 568754687 965865133 787484317 944852479 950968863 331830703 206272748 754774272 102591012 894352627 539958673 15255850 896578089 516188354 698336043 512557631 582840335 102054015 626194713 412901421 367928192 177771445 257536603 6834513 593343924 99464035 508912496 851176220 927581567 730362381 890490596 452429864 682469532 117967393 418905719 509991766 696531430 81649187 834983330 197932171 35373576 713877197 429861302 913364676 133103241 347627417 20473805 923742161 659096370 518370469 873890680 862058381 536270191 626311145 440080604 485978448 147565456 130965958 393277174 735553842 362654803 863199355 800759522 395106049 537213862 271635923 976831101 550286499 209291811 362139642 886233364 647517515 591382839 735904003 976990442 303149587 97653082 706606610 41284685 397675677 339422536 580465705 294682544 408030327 711420136 459472251 568682536 986929151 829570794 943290806 34804329 434690649 907112422 335149433 745685272 463460230 160484903 65238603 482991274 768760075 557900699 232352301 706447849 216873625 739802695 134912767 893836916 603570416 486895106 501693695 844558781 134214639 562601306 854519893 246472979 723701164 398811404 132127573 503704388 65872904 33226897 575612747 141146643 296185250 356966395 395318795 584944326 729413110 331515097 423770644 215911307 462663350 637631251 524267669 556588901 150428881 249170965 497500486 896263619 745437368 144173543 832872779 340496418 772258671 414823466 610262159 173628784 418475653 293967882 763476755 861158636 225521595 422143769 696599805 528548786 845745198 685630841 259336605 520220423 434155984 637324551 232396988 747394378 113360173 46991243 334006903 131688047 913872714 838466666 708630322 259902886 153728534 503785258 928722216 604929291 626751421 682225091 794623433 55918882 344015373 381185443 589720407 165603427 912096245 943823891 155862806 560589317 838028806 321179811 558929063 949619110 489633255 369967663 851326987 454690583 98261294 109234711 678609938 900888461 646832345 123427995 618311767 891679688 722084083 157616692 288761921 57934358 21709536 858697308 220836553 951634196 853998720 344206679 110597690 9847844 617977659 818806616 282090501 831276998 373392592 979233299 711981986 308666267 290054784 16525309 85216354 778852132 156451403 944340383 269548351 768804937 660612502 364133925 590090715 936225100 757062552 24543198 766299669 32005242 270229859 431049379 366298261 751221060 189787743 932079113 177350959 395976238 682669736 238731066 405269749 982102722 912902051 905784075 833298963 294178870 785895400 312030166 783634905 946875790 418230917 932340635 433074917 812807651 557762983 415490340 118984122 553778056 377444523 720505628 963469557 407705683 672817848 944638114 674786875 513259518 430663682 265695275 865330723 774345010 887234579 227384319 1647816 632851050 166473860 767838703 888174842 307001197 775071858 473785769 871137767 706349406 317736998 831212573 176508684 131252421 238863551 195267829 598553090 505011354 943624560 624061196 198615930 935464274 875302968 935112160 269034100 209907685 441008512 325968651 371722921 535567833 83853705 124547346 467155712 179572336 476242020 772571534 391808089 563054919 477246499 94790763 573881851 18294997 65781674 910152243 491650535 142104898 983352711 217947997 571374208 410884431 54118611 578448384 879058162 906091896 688641290 98787201 683234051 53123064 654174992 94175006 644551956 494851797 430574496 374283131 160710203 315463602 275119090 597943765 280030526 812309928 143828320 713511553 431023188 752259107 128200118 513889654 768698495 17516523 744889134 567817769 682123448 670329972 547153602 344548275 399466148 133099259 338394951 799977556 752537699 273626213 265404700 359823724 896659509 753152916 569692688 517345220 982541799 621757826 414264059 263858510 833431914 517029882 431886492 618218143 520632606 906169844 92172409 20279464 128756032 67823937 25811577 944874797 919757490 940757519 697786911 699627892 100512015 21875849 266247980 362282178 783037541 416358407 611547308 694115843 59674760 605973037 617293610 726893581 943324893 400539662 988725022 314882316 907336584 965658426 810738812 322935790 908353563 963549106 442309664 252733318 82603027 13277922 59304840 315976524 817447641 214432527 976474997 104098372 825391777 591707297 620346846 570638219 282071463 846543002 811611168 253415639 318510424 117046795 411815949 704160782 899405945 912804484 1989516 449939684 359790539 305100391 210236319 766617716 901072216 300575903 796041430 505263041 154193942 411442233 368135825 892518543 67753752 696277265 93254387 886957545 242738464 261187992 936978870 763147619 94464795 847771078 437543297 776059557 832280273 832797908 465800744 25414330 147475764 188107648 721032630 521022440 694202076 938767524 165385637 72897717 110379262 823640205 109821657 948665331 344036751 53666891 510380341 242745753 101571939 350122841 14685523 717362720 31378234 528721840 869141330 200747840 744011773 566916643 227144239 997718237 995138160 441657105 584247120 728260525 390627462 399562851 8494168 388923571 575158959 621973484 430133061 904995058 464537127 546326939 341163396 432989974 679131491 990000747 915077379 969499968 102974621 93866714 517103356 792296632 877686803 374274242 267125574 808723510 40084416 892955729 369110029 234871839 735313834 328393825 832741103 35749447 379140579 499024042 275171629 696493573 931012572 339200444 508575614 436515028 773323250 190497107 194310703 488632473 634599403 800568780 551545024 893379369 281627770 880284869 607400655 554365673 303479535 989904421 307355984 859188966 137005936 530084609 415319381 818388468 43576693 381261247 369414 889680113 772332890 662896568 234091429 18338720 633422027 912130268 220714204 831376873 201199906 209648836 383178777 601718082 5674379 489147627 18492188 381006791 128153037 922830716 74729633 971441557 60847327 674868291 381504105 726202360 810566985 784220873 72814476 151920467 677628888 315580677 304408595 660357242 486811615 929896782 559511132 758117080 647226256 533636110 369096804 231346880 953536179 980563092 703178331 12406572 736379938 959690684 292835183 396193800 859024242 267004474 227533871 382832657 726677537 176490864 447721545 955747236 660804818 375094477 425096749 102903972 32144254 936264432 372890780 784864627 447973104 310211679 486532310 239640547 420690460 324188883 70306758 358102045 652885996 943688419 501622073 455291776 676902533 973144686 1650432 849351166 436087624 880451905 187732555 827979502 627681092 14737516 520743672 426479850 363257883 191671719 893729521 589652608 372546423 959249467 732924249 814905174 897428850 980349196 105603193 947369526 107250281 126274806 510534303 775626425 816588364 607959712 650185491 98850109 296662274 261691484 792396665 474727580 61064655 398713659 342985185 781385429 22916667 630137194 237217792 431225419 80800915 242833111 851989016 722714348 509813226 301963071 286802582 262803086 579596685 987729496 870895500 268952869 594331155 178087147 893229844 547518851 688718693 383738739 72999139 464609044 323014944 254944130 764952285 693029393 341071945 575228523 683954299 833046967 525356987 613556046 315506005 850364368 165401878 826487167 632459133 921791765 927276460 314200415 178240942 433401070 767757411 524940708 741821994 954687244 138756382 1239850 202626594 799044477 621983898 895505986 245447414 87229527 87007767 428446139 493506232 465469990 159080487 959511701 578634070 30712504 175323826 663058808 123330523 32373926 451940625 46052135 591166460 768567619 36367035 780470084 966392129 41554198 500758888 382698995 277002089 412364977 746447912 754807029 782449676 127208746 16155315 524725154 499042600 474345603 481234422 441803263 479276923 595524006 666448016 831653264 39351730 207891571 84491624 720244280 709189148 459724983 888081077 723867512 676626793 588911280 52436586 737116935 295599550 218743919 698027337 964994291 79877782 349068671 984077797 956975052 636732295 661244422 597893688 636106783 884739105 522509349 323457312 652530834 416946866 3370922 88963422 403626041 189655886 642305947 103273725 882602462 811741232 587106580 715357174 171431832 952009682 982967566 539367918 979597006 953371908 523591306 718214951 811267807 711842724 792782194 477749780 658183807 255062308 939071356 766917183 412969162 295862947 601194860 471003642 294417200 113202125 871397757 908678364 608003162 670274474 68164031 13551782 842969504 205620071 625420951 691769148 691873939 234784798 483983409 396003771 211438548 540655416 722136258 451604955 727059606 719697298 932342889 89820105 153320083 143069415 66332374 434795668 940914813 770782987 110874423 506451900 912171299 993800799 608679900 318379651 374649357 890377756 919830645 852662832 845855230 613867577 280029073 249282844 182076494 878686762 399612220 470550691 701862610 796145043 564003546 746211635 582210154 223390754 199197025 167340793 425979439 544080477 82541241 480260723 655166822 511655835 432850243 545594548 551073863 224335397 941778851 91513314 212013453 218019893 224697346 357510962 73779697 722571141 354217689 645645543 808914823 613452517 377245247 634348553 785965034 646010167 697389914 565784011 42891680 706870529 891646763 570800350 49266751 572729817 511561398 900666878 777329253 510606811 857684548 970720531 388557844 715713484 169938599 387396243 392763783 40062578 833217487 295117077 156308382 331890221 870875235 622555501 122453532 839863158 477835357 238146076 520770598 505503653 552731629 68714402 449208521 67454782 332988402 343444036 883798761 776446021 153922313 489513170 460430837 454352509 431153483 684777547 352738066 722771536 116860869 258445784 642416837 896810607 195243344 85058991 556487203 320986787 721559741 123178256 733676832 368646692 49310539 233470991 820607296 837756126 337567982 47348169 441259558 800109204 102728371 361249841 625630226 404455046 750787398 617648361 448598561 672968845 352963530 124263058 584511440 738585285 271773811 254332322 648054113 948279178 326270726 747018954 926307841 222686296 35326588 188782796 756152625 483401404 677998656 804034127 871839577 839448377 256464171 297501176 560576577 54165741 361049668 182045021 738066917 62991051 994629860 349449477 448470853 723692595 691111422 741777144 779391390 809482154 587518862 522081850 827398522 923475028 299244550 709584264 91276995 427249375 802199365 528295666 449110258 819359973 637812785 984504022 252193533 195110040 327474979 580315220 245681562 831211419 219108424 839005007 461055010 259915831 305847068 472743654 613758995 404814604 414136895 829641076 25458066 416501602 852738033 869704561 880999497 457896541 583435122 300509373 849956123 193930999 650834951 609586760 736519725 582915377 23349038 280720559 373886007 499404039 345443248 354236707 751743942 215848756 328022773 585945558 10961107 18576454 244190585 482703707 249019146 394056186 29282824 951471685 140869173 246913617 10575939 395907588 690764111 319380583 243631819 836115983 531935951 260159630 823916731 380536188 206810909 492664066 543337346 341996192 988729142 464743416 652713966 252335660 660427789 979870562 372578371 862616168 576227756 553384069 644267280 272255022 510346780 646038156 846421998 922290181 252863503 353487004 586858135 594753668 802683204 964042701 19407174 897521876 568075852 752492552 535464984 568163227 164150264 413881576 418962155 904512346 643486951 290970708 552881676 39541365 904161711 506958368 463936294 580673214 175003638 341319914 213697379 459361388 92303220 240376328 644632814 886592868 217192371 565211249 843594400 389895962 203010122 207949932 502933539 101956857 205902443 150756313 667003108 555942771 622338573 362439321 254254837 521923005 819030740 162879017 604410737 930357549 756389094 699151607 581809814 185746122 415954358 578511039 43362151 106163086 449826749 393250650 82415870 430300483 164852200 691312196 289099437 163155109 200270085 994478081 591677588 375670357 765870812 48442615 817699001 613090603 705519869 57767548 764341959 272534006 844391939 658325950 646027651 50796131 842013114 70555202 775628471 713268875 96554596 639081455 139028595 16209392 911275528 168480271 494999506 731190135 22283306 744852359 244146514 464324173 569837141 191314212 329955306 142415583 594621984 140340288 450711621 761713761 981668032 409095133 414536968 918142973 820783744 310867436 462923060 825373020 893506504 33660098 965413281 653506480 946515397 797859863 449052356 801160952 309555998 677028062 532556262 558035263 916318882 141675581 23891816 164913362 458237772 162942892 19911516 36957314 837754438 905174186 277140526 715513345 441455596 279152468 549957344 610488054 330763579 665047731 541881140 406832312 695352318 632163444 570273208 413417542 59435527 208517208 302311308 808728617 876215006 725830328 677126883 488114055 209888379 973897498 500840672 928866100 482672539 127627675 525938853 206630748 563670084 540280709 586634126 726138142 27073143 854412012 126090687 245620560 989801019 75876539 802606463 744642481 974000183 900491894 662094161 835237036 995866325 956704100 985837169 88091947 151474908 792099958 628004689 732398075 518211586 832830069 397483243 995154673 565396046 537744520 7087504 486426445 949197437 168605548 104433230 197076531 319915560 601589545 634268365 83512794 3235946 500241054 506725415 55740482 543289450 281060225 283275448 72523101 718798893 810221877 657973330 330167751 267872448 248099811 892791258 324575441 431790643 975476598 600991027 881340156 362118438 798138700 691434768 345924275 2003355 461063412 175310473 382862362 15899553 472669026 840962716 367573092 879069707 685451197 49261691 254233681 518212537 775129751 794570836 349028358 383620975 877433941 271502048 45980461 729948192 836034027 809036042 866707625 929733054 888777351 802842273 112696248 205095311 655002625 609970518 96344956 642749460 85188325 392300651 920852864 797440685 726089710 404798926 121823583 783323215 562572606 277580920 964665234 294465116 672808708 543922707 229800052 887920717 956770229 341699229 929214789 925527429 93650458 677268796 151460758 949487254 768607500 229970330 104043478 245604188 716798595 431781663 809505729 629581384 314705726 538655232 659200916 611598686 932561906 409698727 281082682 95985938 374529491 791114745 790343125 666768622 759647988 958324844 96953810 531276956 921644432 476391697 308228451 818046877 610082980 268337305 882145264 100955295 648120709 697112879 354477842 902270418 539137663 673992846 781252826 242219319 321216760 31230331 122229965 937156862 794409070 107227798 308624149 703677752 562499454 640385655 998085003 553763167 231326626 275269927 278100391 120426113 470969786 21107021 793669298 879984001 622180411 504014491 543744051 306065335 845604757 173885950 594968601 324596794 834125037 364705167 376522070 277579984 15719041 192886469 305591024 32760255 340912159 64506202 952587744 869058128 94411386 321249601 412644157 795247428 611629103 735041781 478398155 994135463 969314372 7569008 743997873 942563958 345044639 253869078 773465742 653750159 217817183 757422789 381324060 513924978 289006362 413615632 140829658 191903887 906293031 865037599 189587351 624229202 440974788 485502263 18319163 29371257 552379373 936261757 557636362 693581359 823424663 853068340 581740663 488120563 893506307 749015381 712230698 97264952 893608397 579610185 732105407 164086032 103110857 688359273 201060221 699833104 699524327 666016499 444208238 697591954 68710878 862123482 354766417 65868944 85427440 533157949 181827814 452732215 719925736 71804295 933163261 68204746 646477572 961821447 949155884 679285154 801673522 771738620 723244186 914674932 902460888 255697325 427811363 892410510 705530490 928139532 671081291 898514014 837253307 601090666 71146141 17888722 721902357 659903081 257772403 842447412 13522583 452192942 759904779 186680441 232935702 699237207 501195689 460347970 956036042 86121955 20269654 35843323 512068470 295751810 562561020 918797002 592705273 997122523 884551961 920717808 642109125 655138390 733061341 349886002 861843241 872889115 612704255 363487079 994588707 344040062 102901768 561762754 481692555 930014328 723932084 275561416 706429118 523018617 214410003 763970438 879491792 842651904 947632024 911392182 119029912 778109147 885707503 168170056 751152299 109892439 65509798 926098522 815597191 256213538 572571263 318976801 719825059 605687476 942853751 645811560 955308114 947018124 75722081 816478622 630850441 974054606 160082439 859799617 619723109 390196446 418888224 730819347 467248561 144920731 203846476 911052206 931059557 380124466 787142599 322970661 29555204 897216825 853599247 937405282 271894030 379495048 918258841 192648275 454902709 844360968 336720387 980668149 835599016 299714813 880421709 529934088 94728565 836246577 161204011 114236203 205401070 731010003 265109182 176512081 126445837 604519478 542600136 305213637 883617845 876576098 652795015 439106816 757107023 706353565 329594269 256950511 753722196 588890339 338293280 57911825 931656846 526813726 625796584 288673313 444656046 866830841 199119366 854151738 10333958 84272139 410498961 668478953 757721681 260906906 329929186 746689814 574676752 866307608 292250445 398303231 587491508 950462941 75010968 522614331 124167515 708708396 19120136 80544610 249147332 485387114 412463951 744965981 302049244 30310492 259454771 399485194 756296433 568460933 4667411 564146072 652291612 5743673 740560171 14661375 997259066 922464369 4897238 227856267 939344544 421109039 6758912 920759418 309311348 104233741 876140104 497811005 89894900 158879778 110918342 150970132 497569589 745478323 82811020 917427217 707450065 256884473 290310167 563230914 935245109 729630332 667914267 370154660 89613936 209820997 185019429 234706139 484279757 76257396 714923620 48576882 649129512 927014435 282850033 340153214 501793825 159814169 677955972 881113654 94905537 986854169 276133954 895977331 796324061 46593046 151586433 673043153 630359948 64774237 860242894 252751113 471443203 207373709 319489619 555163702 14795100 474032121 790226396 569751691 533461125 875714358 179965079 130042312 913718799 471204675 975713755 996088677 878629105 80214601 236673531 720075772 431023072 94548047 37970444 361267351 482174257 372543194 786981512 250704448 78287852 784370369 928000089 307209193 228445653 569273854 155579429 17261728 719253381 31624357 504050462 521144288 14645055 895743394 733177532 273240075 653141655 481428272 133409367 981216518 424269560 693892620 892424369 118379366 992071355 560009313 863370913 767600297 361872915 222043467 44728245 878252032 349969496 644015509 340031900 12450067 879900603 439238742 853948346 763992380 107440795 893520646 79326301 391059973 910599062 438897796 187088969 364034130 876645020 139520668 943206178 735096169 219401620 81319602 801619894 185559393 885983683 258060054 716367753 929794266 806635971 131262177 395842928 538240457 342888844 715242133 678968104 51674439 456767074 320396759 540752758 137492254 766549869 930974039 132610630 834452122 222247020 522020877 995557587 130903035 29328791 210323650 508970118 712460377 111319581 498617771 14158167 713940780 361659343 500060486 976412544 966077740 919743143 974608664 218401570 407305349 235441418 66181931 785571542 690504504 798241931 761583314 190364643 882771146 458894968 5081019 706973167 961142076 277020069 193610660 143426120 817953229 713806856 711222086 432632116 179713391 4214238 230522856 625852040 579361417 586027376 182529158 603548244 543715462 282596829 536567853 594534710 53185432 978771842 927043492 383097403 574679638 729362142 501031891 97808180 55124971 202813510 842918450 735986780 137725551 775684619 324189962 843363691 271229572 457596681 250771652 195719553 822177051 668533313 549828798 763302216 621336471 171232285 705212225 863381044 970836485 159958630 676563698 470159884 650921246 67454671 418700771 503200949 728443209 307576748 874513057 334155335 612289027 581028067 727555206 228646864 480959602 162774853 985091072 540888772 72428616 478841075 797753261 378584014 970345574 755725073 428054161 863072309 480204372 757175858 305969014 719662438 222905916 2218496 829426158 767942525 156183344 712550705 919531839 346063129 984565486 635668320 527097273 704651330 449319225 246359104 517563506 186394953 589216777 171611452 693730022 638144160 94334615 323719162 241283311 774448491 949919726 711145760 301017869 406741121 847113248 486790268 719074289 719086802 795270163 834685064 446693545 765322281 585809562 797779903 143589595 643799583 632454544 718636427 699883320 785842910 308496578 360960300 17681304 204734958 945197362 228931531 23133875 930374943 224765877 522528513 221372173 83552794 718066990 903970753 636394962 332275346 227100308 121491399 781738161 750088267 726408274 532399376 334651025 561456558 202123486 348332018 629232410 481806737 188304284 327324876 165540372 209823530 247027964 151561551 189128306 942549526 109228274 74279120 300518852 26127742 952341239 650906069 250307762 101627996 768083423 834577139 147823046 335958084 340020170 610315146 378419049 86413110 852035726 759426886 118271330 538556203 844888993 525662322 232575500 605721372 418725150 396484879 323755075 761485777 946050581 891826959 50679178 71340976 497250365 662189336 865803468 725721150 992509968 666632367 485970099 499640953 792131520 807566032 838194156 549360653 577659558 338828303 222984512 443698800 211968515 550312312 762635375 209445108 63100824 668109414 971086139 965152869 840943115 312534214 338945456 770774933 725672475 735027937 449548310 35315828 815129015 235063563 414453891 793030540 598682745 820075351 628737745 685871334 423176359 386434153 146405669 717012256 73930558 77797007 884201431 446974672 108680839 203201159 904148351 648171742 381463837 976371872 938176399 37449451 143300724 330727074 11390084 846309238 723664319 885775678 379367223 523311492 616806060 62372370 254721516 811557537 44633924 522829281 340909865 449580433 54498981 417936940 826107457 500926870 178690246 837958322 354233765 15614124 713641621 714091696 383147680 907420325 788168423 112789572 772668541 950405262 405193416 357882054 768379687 669923042 348873433 123563854 197571822 712501840 205501 586383493 643852430 971766895 795128809 81551161 809997732 344295209 419366240 982339785 612917268 244391403 488728736 770376073 342014178 486254739 660091986 278260936 290849568 479724335 864240612 204353312 495940501 463827487 711761454 786653036 345610987 955045781 624009925 835575647 257131964 987836814 651061135 14391385 57997538 769335791 689378973 871658181 239263147 919189332 923821533 639090200 516199702 573801634 605690311 140564439 672866834 159512709 606161051 701154838 878962800 113573842 656543303 820084809 529440082 617533608 438576789 10075179 479784903 905908816 324229314 699403021 522358387 182947703 394487186 457819260 375491076 6328909 218236969 954302598 267521735 676998533 357635886 638307301 390122219 605296665 657512500 469375151 838509748 121341202 893260178 240411793 707927038 211819265 193123431 436344090 719810294 769053661 880574204 363968042 757171397 924548607 334222880 996549523 984248021 54629469 785343636 517988946 484647076 497846441 74897560 882816668 263530206 840212985 369614254 793484629 61780259 957073515 315480549 181109003 634463504 827103404 767873744 581204165 887524850 426755674 985771943 960556261 485559315 973706315 879265500 201469374 840684281 988772341 974511189 126728693 826962640 922471122 956669018 574501638 954381895 567663022 31551784 128466514 933545100 780454968 693348485 629099149 356583972 604982052 420988398 743296274 399592914 3542208 209615811 591535804 543255044 555221911 767668421 147209445 550520750 111339638 555719761 30965595 828318346 736445650 344603525 915004345 753817140 612932671 787145495 717092818 235242830 163250673 278086781 715061547 619148574 759778727 706232528 71353284 647052464 319848489 4730390 211223694 147619507 391817347 720527931 966074537 500868139 884539731 577645156 376548223 443843894 599700242 732431019 119979839 538966385 245993992 749727709 405807564 162848660 881737734 79881154 608417896 555905042 277388567 740975412 954206650 942481161 762438995 676085221 59777171 983531341 713238761 376559134 411066295 334111145 453909440 388902813 428604699 764372936 745900017 903880701 752963223 532614085 843781475 693202424 380864453 331911642 249115978 976734776 599245517 737662046 653315272 834785945 938604522 662400442 761986054 945247491 864317813 954814296 394457600 107450010 25366951 468137365 702995903 701587822 726774514 860377053 738830238 612674205 125194024 380264141 594300820 566170319 728897224 35403365 975732735 535674036 514560207 511469526 629240791 57676397 135914207 831010717 823219992 929781660 99050767 401892153 11148803 151862902 866134777 387598629 120028849 323424330 665670671 460685044 732633256 292033008 197108506 393347563 541772496 642889299 398658816 272556314 35625224 275409264 10154686 242005132 711191164 174965817 236977404 36911498 640679903 183368825 399218723 931733708 532521573 561856054 545560997 797220489 604782878 841219922 572571456 779783514 171832987 704016196 379770705 907249304 718055362 766715654 381578665 224665508 776805815 505165165 475466099 57706258 420466111 237256405 374309751 445659331 684937218 792379568 765360864 423901332 598535340 553821362 698979096 274872626 335366217 859156695 128905327 371177428 454938547 217708333 15445545 653884339 567305903 653029277 726305368 512507315 806968250 766988090 608210419 926382536 788259364 608774516 297526080 370216487 227144370 169272419 564332471 94312208 871995720 667925919 3807402 255063334 304670087 781534484 983327803 15298693 952031234 946381295 885498142 642047639 159608626 204885554 183127414 45633329 616477063 672804197 925685378 477948261 80876270 382228078 965433486 416736880 782321427 639695113 826512240 282655642 151142347 188596400 426402550 26675199 487813069 825387990 871337052 532541746 323043278 344911883 630224793 840977528 383257334 122590725 918903202 567705940 310478416 931137653 375005653 105329285 998877004 325067631 770193186 89671861 97603265 80309992 868999244 122479814 330975202 187961740 472336426 960771625 94011671 915670039 224279696 405208490 128531204 796067657 255364206 754797791 305799647 794096977 22883016 138327014 971969998 379934335 499903705 553750300 311950198 224421579 94414463 685071364 142680470 403463652 904730348 546271625 410926216 194842049 946983177 115834220 461672870 183378875 936725644 962531410 927873035 472511556 754846625 820329097 501936403 269633505 566933407 11981325 78009860 27031094 54507952 210950832 27023782 946590839 969314898 323604795 982181833 407368171 68048265 187727470 928738924 517944360 629687999 294613762 960519832 861243308 314061602 161346443 344606722 152865327 5282624 972429901 13826082 882708476 147397354 204469746 104015509 560500911 559354354 844276605 886022362 354925507 28431191 436786231 502527810 931716907 43799748 474631208 94298838 461676937 144642302 930754110 320254919 99228389 69754687 419243528 489391597 81418506 702587102 948137949 245938072 870936875 89061684 750396129 164646287 634044374 749526116 842800449 405772644 832661558 710091116 188219520 702186773 87589272 629381906 106648098 235013485 402150789 781416188 812605955 49740160 545451524 981120911 157828533 522119970 682012930 996874017 553460198 128801144 388566067 130946481 439073405 272016089 809026723 529311132 781826978 431621094 338826441 219252892 797206414 756721201 716846469 493294390 387270247 436958113 587649070 291651160 476113411 581405189 128080327 712375811 52695178 146630060 317378615 310143923 169216037 288127978 952668176 173053857 859874079 393249944 542273666 15253668 11672486 670673622 686827928 138557014 873151823 87230326 655010839 202516010 794763412 932429293 384443535 511121295 230430532 412563332 956830431 892270335 930579391 546949661 778214129 853027120 272999108 383239339 259951437 106493140 354419052 636713654 560767974 201072318 358995125 22271516 698468768 980941162 649223553 984981702 129688933 733786144 454198676 701609175 65611469 792896136 872908930 915242405 480667156 206439926 359214535 90079845 94458893 718809828 139139385 692587530 967242481 346296150 959667233 944085758 81943573 181577032 851266278 821070551 532634929 966757784 802586750 53921598 264050379 81506178 388623280 203529618 118390318 107318079 845872858 995098285 89529858 184630624 104230413 586953092 650029857 505378509 72872142 882528664 442870219 544882594 610778680 221032172 144123111 47612558 454106989 635811488 588694226 499702969 162506492 422468268 701385126 248763403 128228530 663383775 489743870 61448466 955798830 10685782 410180559 888465378 104102601 729508864 375533997 91773656 645918647 568549475 579151199 17591469 244042658 591815605 696466684 181312809 524060034 384058247 245103763 428369105 366054217 707036923 154728387 679177269 448224198 637325274 85476930 660245456 973893567 925211641 893359703 545721498 637338813 873884524 617404905 91448082 242018019 929978477 539006403 176341261 694774970 640239034 705263543 854493377 954191336 703140993 726054723 129057184 857595336 154712722 688234723 891790476 949970345 107870481 842784431 758784666 141504331 533476603 749444874 598171045 822710567 253910560 433445084 252100973 668338915 345480730 371123378 833762372 669994163 713252526 808405627 461201874 790831443 326185450 47291157 171341787 957868971 880906920 554761563 215591480 925245705 243091316 123724331 471432518 531225129 961830787 946748565 858669490 496643462 216527358 35011728 700835032 132234521 597689329 339382440 370556573 476282265 230421197 340037248 712520129 485798438 820593346 194503742 61846974 988704126 761111638 16627277 615828882 793218611 340400277 969534635 53937696 66174625 13590652 154400593 407173872 103489858 991995440 295829682 163927550 927276016 284987940 404085198 609585715 453815303 644190474 218047347 420564060 498379753 181446295 707317692 73684897 675680177 7824210 445050549 462138796 101646564 122955205 220832845 683238657 597611021 168281672 542959901 857731759 879829234 314555356 240868309 468777711 996831763 916088074 576189535 436964661 418273319 176815530 57187461 11142054 994067740 484103850 805301962 462281933 22934888 695568059 270130048 531108688 679100395 227037682 874051065 13932733 843700131 201625490 763793606 169694747 759212313 727563452 902465667 321377622 29299480 15364100 391346538 814129574 856528030 496802233 577418654 753162012 663964807 310491669 520770185 234770787 383377301 6363568 472430546 304956321 212828185 539538797 232672622 974614604 514761679 651088508 480098499 60039416 256939823 82085649 502787381 746445260 481751744 281388335 283867498 185442664 416404282 663961369 417140095 476137928 276926019 232243830 90929717 844589326 473169768 670914342 224578748 344406907 466922732 346349495 336161560 407632302 913020494 972339873 572567481 923365632 385385755 300250390 72714106 834054742 262497096 374931662 23422794 713085576 692262565 556293263 374836466 952981852 875208377 279045003 694528529 136979954 136072620 166640827 783829106 849119844 964050309 205186528 513666966 571450511 350498443 338305180 705304068 558750183 22738549 545245709 643031444 972889132 503716707 898540240 324160168 290336641 378485884 279567919 20285227 734466072 874281723 824736725 152638863 340590397 985505757 165297759 422881518 911330838 549610743 47969489 130081248 301379881 461672592 60062025 198656361 938761258 586356725 53519627 117483746 451144702 969103358 458726330 629136740 604919489 343139633 748823477 407095980 651916851 143602302 374532874 639509731 847505836 406921105 370010406 776953768 296339696 473956283 10219432 123402874 514792113 390511650 158071199 776633977 907972894 153895222 451072969 505835992 895900896 592787679 44792927 714601935 348217170 248631274 470445292 168701009 840882303 19730539 595688525 886515544 460766144 559426105 180278019 100363069 613297110 556263632 221195098 60886634 842218391 645327747 560063852 489793327 973617955 116649399 502740929 741424370 902836140 459206967 136813174 769682860 263087905 356612161 60788364 10157458 141591904 946579110 486955196 110738712 715549982 823751498 26186925 555877674 78196457 505317692 937616144 356898403 979393047 640576109 610502636 209222858 190413283 814606153 812806293 622401728 685588294 335759396 87265481 598874614 24315488 473546367 510828028 591185906 442203235 658687870 942252399 542666954 638942600 491912995 612932280 223392465 584984122 477454650 550044271 20885582 646339703 506930803 422720606 623644121 7103809 382136634 2728193 981633220 410767526 352548724 294593074 454859218 593696426 350581044 101453776 243339852 125440901 508189485 384256739 864176247 580257549 777703313 899438888 906974157 922455812 725694544 479236786 38149171 705860693 128989562 9852885 556218567 184056337 518016275 946191304 128076998 363799322 668897922 921543790 463251643 633518413 444684549 737365885 699628789 206022629 786652595 651744493 157174308 463579043 857767057 258014775 675805509 592474 277967430 880903016 784621018 122187108 12337675 483900264 304964662 941571736 689805449 227878298 826095459 546390554 705055806 990693288 356505700 670298543 840250406 445642454 602601850 991032305 126452144 671405533 469389386 372067482 771741478 427697552 444961521 763332923 565443755 127349258 541210152 140119467 56484014 892587281 163353799 254538971 639892337 868681561 899464947 988730991 183454995 891795098 561619809 974058815 887492733 33605300 646295821 182133347 147971886 485884822 203363819 540337560 868257326 602904564 167717221 719875788 462567587 730729410 719753926 116816738 130685777 468756458 482001006 892157580 812018577 809628160 120941093 345864221 315673159 1366176 15860702 158945184 419370145 887514798 391983813 925161633 988749230 668288572 802202594 313709634 446229896 408175543 783440014 254946238 647965732 971220175 745661101 71556494 832944752 691490894 860944997 619649310 822196114 5868873 859299858 133135933 643297838 593220210 557446984 510702738 45415171 197221427 689149091 42472404 155157931 101545764 550261387 630165752 459846124 309275768 288130002 991032236 798626277 974238990 633814468 407171955 763553968 626929943 430733011 94464205 832889997 217976528 23792092 164309859 766308342 361887985 356735254 888973255 594491390 985588857 484085462 630072139 904237440 306672613 142148116 692769971 656453083 458223170 707086788 177771249 825298405 970327460 918106445 887628720 201551471 599219240 374506096 322341335 825471111 717294634 847599489 746028180 742826974 961710558 426543310 739707041 282161635 851287296 608264121 937823856 851425194 398910096 827432404 514473522 390522765 953545395 11075388 733604270 624788499 967670784 570229358 395669669 788674128 302187951 251065780 248997791 998937689 946250787 920123863 124021937 144809386 143075120 728727055 176998784 803296260 165986777 910864550 631346493 78499776 687384243 197377219 715899057 574434135 82435755 715506140 914464536 547711058 272744630 102668891 597545278 11156546 430344029 879727669 287851637 6895276 526968366 840658871 363133076 968861853 676303806 883249476 880058245 494172663 268727793 66356636 752618695 552785739 50319582 171115775 757012216 383571130 964798235 613168113 948879832 252923887 700603419 282263939 864645783 172245301 768348333 280997603 160949344 64503069 551427745 21778461 390898362 214594318 362486067 914434479 784890499 122609203 645252679 953385450 803648077 754325223 434046026 276621539 338148191 967026344 274778282 181180459 264796079 718153100 521142080 629330512 960847021 310912067 29460167 794788459 214805487 862149364 710791282 709475950 990577764 817752442 489996380 969156491 656019287 676968473 833420107 232707487 435727682 761131662 329925229 362171264 92221599 321138215 629378533 806226671 444795695 961164810 51958096 324257805 977284938 808788421 566655697 295093934 547586108 924882443 354791085 32628702 471466715 283070021 243291988 675992773 431874194 504761830 91989924 937403356 192317049 410611290 89055334 636429168 839851695 458933493 690478890 64657951 815040484 111980861 301567682 164078881 19968855 425441045 462630532 349120210 854126745 332204052 134092058 993539514 175963550 859296868 578781700 108074691 90244448 791087775 505819371 750252130 495374831 656637567 361907857 234597996 579563420 560433081 28717195 302066832 489751728 103199454 887221016 948614131 674295002 253941259 736534088 920933488 403427176 897769857 114228484 137509343 766697549 839758769 473692503 970858786 403968745 955011183 128643561 189803205 987773159 754573305 626723191 451064673 439675888 385332120 387770147 276144528 849078994 454227848 357078416 303847224 237824262 502310015 116563942 698563832 770023784 854783744 747070625 6349945 439697131 470134765 297867821 525924945 829430600 950911763 600644903 600206693 656992264 598122210 392335339 218263418 252297481 290318371 684018171 70006963 353680125 154768957 906095186 748987469 742442438 458661674 596702661 98323419 657693267 439014245 255968858 942110862 439265181 108531589 363790193 382003781 796682462 662741744 260027677 654816801 806566272 981886419 19729997 176863191 710964040 543270752 629982980 759707266 414248336 18601194 605936065 534795432 733769408 596479219 623792007 267529412 366225380 701555317 273010370 619407889 872978031 821300790 516207589 827407006 538529368 173781115 905214184 892776173 727657458 670224126 295680317 981543862 569656809 781942349 318286656 944698287 785469731 534093800 210853202 744150525 1959989 86725502 919401916 127161861 164743658 942262162 751263289 721037377 960065413 475762347 137719873 99214036 429713375 108751125 337587351 569191465 880671572 479176960 903284009 928878947 390785369 730586479 446783481 391238836 713309060 408212676 129410353 245548696 759661432 154900877 667668734 615895609 235239874 513474756 683241487 409244091 715533768 353213822 362151311 195564560 307850400 821199004 89015424 66099636 98335447 820344409 232801220 868713729 276885590 224370788 934727368 62132319 63514870 91366484 169730132 763003365 473010508 891161427 913505473 978117181 306478560 147591318 768213511 31384365 408118604 846259008 885622377 151101669 969264260 143315648 659768214 493739291 761725953 309643075 76854380 724095488 909584449 743456726 926977008 982839267 33667524 924271938 72106736 347757833 103510586 427682162 9162278 988948334 928334432 959373850 741971894 518050621 844300231 316365198 638464859 267553813 305508783 564103086 57706396 126963719 354133067 872294943 248951889 167217047 972155005 581216230 404512947 562161312 341789966 132187138 114317455 321838673 514095194 373954443 676463030 805412719 111491439 960739127 72236752 51820244 86577863 425302592 32408927 167012923 875088646 752195158 416952501 561856238 270176752 483036364 662860126 509128719 269986068 915760757 141287868 447489833 390968254 976740534 295103048 436343963 508495962 232282404 834924401 785433581 179512235 296822653 542127127 868921387 481183025 266459619 654679320 686893229 977619904 132789199 350141007 488790312 92435910 999526041 445598936 144160213 196891811 999398979 469444836 500340235 28871244 333104215 820485066 826473980 922004549 354447076 240724625 189003550 814861763 787953827 295560046 873328473 226924663 276609606 779997622 645042192 979952220 351690441 81829432 855603578 624879193 935986027 427053530 723221828 923358107 232355515 115983622 210107469 798619974 519846159 103115108 135839196 909705230 846902286 665883956 733279711 339133361 848661015 470764165 425381691 719409017 592068066 710723268 351821051 183481019 174582259 475878052 773784319 902146590 791467031 288131599 814666166 856079933 148251060 549631373 595510824 945976393 579452263 190270605 329357302 404749484 321046830 363739720 926186290 625266006 424620159 591781113 791730382 579222144 558476748 193000670 54938288 491218102 84064082 583161378 797725697 596156688 643774007 441233809 292510940 103569858 839978213 127519583 579430893 360070809 355076126 482399783 921357706 668942455 833700578 995411727 644287300 836883322 283512836 458720725 125812922 999008425 514182339 56861417 890135065 902169769 528924720 798431793 873521961 192364539 691619916 832996281 434967249 416022702 815935798 386218853 613536502 519292980 240635185 182268232 555007203 580304174 424229155 99703365 568041698 861191203 820441533 76813233 252009166 887405312 141199097 947757499 456657856 675382749 599328307 975978602 514097657 752607510 711376332 607448096 893405655 407154599 734896258 64674387 432482186 610042864 234487255 952172430 53930929 57138841 955747892 244224505 987591989 733153815 830369595 694618223 240295510 83556412 703246353 538026019 405870241 582714848 871109521 533524842 20893418 687798660 481418022 932640412 439671827 624798377 166401971 447551878 425822914 668078980 491221481 553599631 115739493 547255993 407089649 361890846 250763673 702245981 383237630 160879041 353511803 832793988 774881225 637103238 883212877 928546935 831998310 802749312 403475552 564191174 783123098 437221083 472768668 147391901 125595811 793196021 285184063 948784606 387126577 409304043 209760876 15714087 378973635 944750358 189017907 749321471 421265059 54481336 799724253 669447875 586534478 528110958 459953070 312906915 184508145 937426521 947668984 315803458 290789970 568961337 537720908 975928261 46438880 428501448 960130884 216547042 554313088 281891855 958343046 964980204 215794047 834572216 22559684 491519646 100023240 361613779 552266611 670105892 934388782 280870100 448983585 163149494 483987022 268327485 93612719 492817457 199749447 985847027 513904659 916043493 900032724 290879099 789930425 973011371 395469703 725311819 31386929 125863638 937200705 945598876 281581286 81641863 203041223 853420557 370854867 795561597 753895781 245471229 733028028 4408550 792900044 991260223 991108837 896264280 225365316 316911652 588519922 151675528 593239912 428417438 304008910 361312001 44589726 132683839 193968691 969924035 60027951 200929212 188260988 706040224 464999497 250162876 285452602 842546073 629193642 430830428 940740866 900011432 809406103 472532361 968253091 725936027 524444584 388652635 802565058 621708848 432191839 487603559 833685549 451160777 293812650 678974715 541883228 880212937 928963209 351084047 45028089 312071970 662872407 462892215 989142549 687548066 9102605 706294771 389583223 764288221 797492056 420714347 220749289 253261645 99133401 3696073 421293701 509303526 723865557 408323682 782489186 238758264 710920009 311133835 485139565 872284848 746703091 391727494 796651419 641606109 151158597 800340480 350480552 943950080 7175356 765937179 454336632 28139 487537906 415398679 59864727 406262959 681352751 130867779 701502658 82441386 205128791 488762647 104839541 984705044 240413502 770690271 418763408 719169211 258261914 381244223 882524143 216667010 265124583 984242222 761000153 825149293 224054752 128370363 731059669 4262645 417015905 873564447 3177747 799384472 182338876 573170813 508548119 293094427 345483696 60635335 39566227 443246484 487829109 507912376 151196087 130725486 351492757 526609015 98139959 955946848 105123537 89130363 410922810 923028327 772746630 79418334 701509892 45755983 581488664 998437728 402689096 636826472 800275817 817664476 2719610 176891296 739697035 110806086 900127510 610741721 132592917 794335496 37183964 770918018 721137208 515701235 857268641 93224861 211898449 276874187 652321432 254492971 920878995 596343564 921811053 678016197 710368820 448748465 886637742 100070566 354605199 472291034 855536211 544962492 940415971 840609672 571153568 226255862 77213627 179473797 684905380 499855803 151283473 939708559 21449997 475191566 764283354 6340046 677512825 638109084 437357080 145997523 748597601 847454622 674934634 854309314 783144631 557564976 206094552 182848948 852504914 563396410 294918210 362154153 704202021 606122976 492150434 87563103 23281092 752463034 850233559 261816258 389061783 16486320 398322313 755234255 124470699 35482186 682912660 62983242 569851082 522009829 387773918 665907797 857939541 671428675 661515923 489901478 13703649 494553904 416218871 106956136 352886467 873576508 880442589 593220815 465084556 983431373 692173725 228412127 313452805 181838725 90252672 215400488 48518218 839988476 335497492 155231096 452354731 803618246 667498507 660128091 748774070 292147007 944567415 189482887 822317968 790298939 494107381 664551154 183309640 614949590 994902162 75352619 292243793 353338541 546220980 14938015 976858132 840746163 832825361 231441148 847820425 217549281 6729993 474057867 96591560 738639940 157281524 568126224 513470969 393943454 233514029 883554839 43056100 209574937 933820112 98271091 374058310 692611032 51816234 166879712 384875813 817225063 779612190 234669714 441538434 379498814 551681837 127294370 788274658 282997418 191793112 340793250 248792186 286870250 249811283 407010969 590977519 380808667 318573303 720736135 765243240 164351363 304142415 104335803 512838888 974458176 682613824 585449186 165733109 746189315 137125860 865423793 123661480 527432498 586271541 724129153 815071959 208918083 27316523 996690886 447740464 150191711 129586712 457888439 607388382 114343304 486762389 216326575 926793302 567528682 941236436 562026291 75118209 518523435 777582734 77637411 79802436 719789134 22336028 950673906 818057752 265247384 313660066 62237916 217184729 601794923 480441369 585814105 52972597 539001901 864965755 831315469 806696109 965287590 627135356 787427616 622185206 714121084 416106301 716033905 506279052 899660471 299671413 695772352 694607326 73038138 112143135 51964856 616847412 702086153 122662616 634452124 412284088 470955873 848423858 532511955 947080575 688164004 62941101 466468760 339273645 599196327 43233214 326519398 731009824 158167296 852919748 20227266 848859258 242984677 422220370 982355839 867420287 951768066 660911098 841836130 943635409 733292210 981943268 581167554 897689373 89218067 723646707 280545125 429491171 749088293 36833434 49647792 939820543 704188556 534837951 158732526 675704139 965774889 476155212 514459970 626254587 449857686 58166108 336578412 146830254 818177976 982775883 777829823 864862166 210968862 99604758 112539951 694514022 476216855 366601990 793520414 869665280 362803969 708537455 894051589 906944910 567324853 519552194 368061887 67461070 819638074 984062316 477881073 285465630 258861741 427869300 983817060 837119800 760768468 49667285 572764719 846893423 265214165 757611704 484908762 346803955 685577640 350606985 837811400 99144915 288421063 733308164 219364757 838741594 623820401 912482705 297340604 929747664 922779816 358556503 183021690 821276344 232421640 715469374 630197526 700681228 588488360 430114749 265659498 921851021 803851809 752262308 469428586 437639681 15427597 568696799 215647977 566569892 651590496 66401514 304876246 333953325 184918924 825318331 962015714 389876002 718866561 829091836 952495141 136687763 752713104 144841793 183996217 463853201 552337908 684320595 359086069 871814537 699062522 337409756 145191896 953162042 820643544 388162586 64312145 266682507 785324591 698299600 480123945 390222819 122617466 615624309 612753183 610910437 670858569 830792236 625939152 446973672 930184493 823813546 965023695 201174211 271941433 194553667 837998561 891654924 683246796 836924200 654459955 275983578 281862936 638564315 846446830 624205208 4653105 214640389 596777846 41908839 67319290 245203242 759672127 284669619 775942157 241405098 654873993 962563348 812443711 456431572 217075175 226556148 310008453 897645445 68586610 347134081 171657808 296239507 365854587 119505893 125377866 319987921 623884793 750811534 179272925 766508515 842823501 535862344 697976155 757715827 172181749 910372951 534241562 379567585 257085395 101838602 56285687 208417041 1160635 376128531 842451367 37950976 681313572 769646133 199307913 996469602 599940281 763723130 944400201 191164290 618929429 576414380 932114582 3136269 920634515 425573817 108238509 111911245 754954976 563531338 136269935 62054543 472985381 880003365 773179481 140837000 731805212 130768227 269250168 734337291 849976615 814521254 681733214 505123169 179584111 613425572 812831933 456495554 900358517 615943902 573028942 222005380 713261666 840864056 501098650 198416612 484938953 152407041 550499260 27352300 72732944 56669399 918291690 257108734 92422267 116225105 518143590 610251775 845260404 614918673 255158768 37720681 882453424 128073042 511700980 58870575 977802096 733670104 503316944 728135591 815950745 386183631 680271276 680833510 327979018 859623573 190791156 385554278 546890407 974201606 19772135 244231451 809354783 395217007 841832496 36435120 736868288 63429475 759318644 533017418 81437017 796382843 656136993 960278975 750329579 226702393 775989030 709970659 169281334 779401110 474003782 222158669 803062147 770103703 390954068 993329488 635980199 421777173 48092458 78956893 769750273 592709448 773025297 42671862 323822940 312496073 103069718 381553144 675979300 26087303 531669936 868492819 146800372 177310199 841354926 408332159 862182742 984191770 735707409 722444499 641529456 366228818 936984253 219317082 470588085 825009957 428664472 391970419 992956969 761980472 802161746 752841911 847881875 749514848 103772006 308555251 679631992 849007013 71023179 642307811 956455784 90253149 267452289 787401296 22489154 202956644 9403128 549337080 487693065 176624266 199921751 911078361 987652185 538394564 223214191 230437985 751988104 822842452 936211813 501098648 165944556 623606278 95803175 647866312 624722742 86730087 262778595 430368711 147450773 24521775 232581930 750803316 701497862 447935911 891219381 976299487 60406573 418607968 351273026 755527688 477284460 725812690 354933997 752257646 813533780 511072782 862342348 302899249 712593999 698575077 269076052 941299570 562408011 230269081 268508883 900752667 866219907 19519336 419167575 70495910 289365202 760764081 221093886 843644437 909837756 35853997 671554511 440778107 643604948 846079377 957160425 501554217 252971972 516641075 812533966 847856311 891656382 163118954 198907425 34802469 450860311 582465392 652435894 840815182 90062156 613055230 39337449 258143116 403096790 9938306 620742837 587554617 372514539 510851716 299091783 210380059 844122284 22025984 385298861 683034671 978400200 605561375 864045183 156773343 423767309 950108637 907873718 739291975 464195288 924523689 59281693 21118448 425349785 957547731 42768951 239016003 975506166 974032349 595327691 853673694 159145624 893427383 109119002 478209940 328715133 911557787 407792376 290526405 999675020 516072394 805873124 690365599 205769388 202765992 267518295 517107914 522090267 71703441 221905774 880432828 65397037 246564045 304126276 891905461 618956979 702093072 365657615 155578970 830748933 122823027 102627729 914766672 162754375 183061726 769564236 84678151 683175218 989027862 427510324 492988519 16287337 85841277 101454324 373007248 927060171 133157891 992489851 106494808 615873078 444295054 650478148 118434802 410626649 986005536 753816221 150741388 950101218 645206116 33048728 76705958 655895041 282253603 549126308 596398013 892966163 243882063 556076690 642820235 10754191 803652432 960349235 752074426 730903366 122987597 625900424 39046282 367567968 732089890 45456983 38810144 667310534 798657925 372226689 493700035 459732054 198106470 362522287 959803562 478569812 577781051 481935177 874979990 131280813 692186589 29936342 286702692 430994676 180891068 174693260 473051433 875308637 908865043 647687988 766765566 591351441 913094795 999026210 984184986 418256542 726551048 808561188 210165739 18798585 921475109 226332782 118643486 561325036 597077989 433037747 446103390 948720988 930642840 194980627 229440240 985401919 282970005 73876494 329565368 622663503 624744317 39497712 186334051 717583380 198149672 421807895 492528906 662391613 841072669 663909747 221579384 604167259 922427892 150824747 181269134 206090831 387168485 636915988 668985142 849388760 989811218 373020692 552394937 813551996 427483580 876196508 204728781 4348529 383433901 488433300 406579778 756775398 527839629 31040195 499100395 379345162 283735390 185566588 294990193 323703815 907892985 119469717 514394716 140402935 673571796 691082709 455608736 833264058 915506299 915047685 886708481 469673283 413034208 612371089 450408202 511104942 362209836 788668346 976925685 371779729 788769433 563964165 639600634 716269275 156974928 649151017 466927855 211907059 443618462 95802080 109203996 892435566 344754555 24033438 736286516 485406899 76688480 45765545 385156389 169833307 983457386 690850746 205924863 899682147 324900953 812487902 449693916 947145408 494675326 905445024 339605355 857092165 102909164 506468185 549656660 810915811 28432325 358769995 889401867 110282898 967805425 328210118 622934972 943587618 292748899 171913476 339079402 808410480 335067955 224192969 842288295 600067648 703818702 211870902 713468021 789201114 292020925 415334237 569320463 28735439 148201675 269299566 364027072 693280432 898512265 827464898 558693224 876365334 629673822 630584698 32252017 145379005 680126193 293240202 65268369 624581390 202921861 902786352 489666672 840413253 301109358 910106459 82903569 995233193 229905168 503745472 437110689 949943763 445652863 934542445 852894387 191398635 265384257 365230215 724351264 202940832 77228024 652340802 266956869 527570890 497187300 676442560 210756789 798853956 618762059 92257331 558466818 281729351 192108633 682422178 821391234 56599093 900776275 693181345 928129439 209544936 103365762 591427718 906141295 91744555 785003663 12603240 413171063 971621712 357280068 439703791 509298821 820303472 470401996 331842878 649992311 544229553 252883907 249034003 676091756 991107518 794898791 847569456 219984741 133274885 381462525 26966863 765341604 652268985 70239825 921839147 415684632 769349656 666859385 399872234 751593212 186597819 140312248 306101438 427312227 913537479 180198478 205683032 241389627 66822851 511907759 124443944 476650123 955087701 701500129 954923083 331982199 993172530 962221536 72885193 424403363 539423907 485931091 332469178 435807320 275778547 353564573 196127620 60716703 218737692 972095545 288870732 690122412 826341875 864824533 675592745 670207667 871605161 674723745 470223494 816208850 605460035 439094666 679947498 194686591 910525932 571010776 579109995 668582827 400076069 993461843 238319711 486325239 427661931 303112074 296927140 778916602 912738316 723339360 805467354 725741436 466665687 195477163 5529289 130755753 238603120 645322601 729385387 414676950 935594200 498487501 104722603 101550457 165423464 152527745 836190309 352016171 995778687 99350547 331152148 184593404 387090062 853828815 140943103 56933418 326996198 952786027 977019878 344814966 735048987 629953458 317884911 15007313 810235161 721622152 394959161 423046630 251897701 340621560 418693017 382939420 112781642 920517072 420811805 630992233 855776615 668454684 834185384 649556220 780691115 807397984 520188170 135315081 193237610 961930323 497823932 843183394 480958360 849235719 900983270 246922776 297068216 372286265 159570013 892693280 829525248 277250091 779644918 932219305 190940329 562867984 688551290 362968998 799215748 549098918 890710319 668249131 316118520 210789355 700043179 132934892 650392010 793253122 818042028 117147590 818865775 412482181 360034939 740209722 898314712 82934828 939595615 265820306 620275026 847209936 401893535 439093240 742533324 14247119 507571548 735309921 211212708 973399050 290185739 332886604 629835054 410924481 180256979 316000004 35017634 784703116 44365710 411863463 784204838 753861368 30586486 276707640 53667448 888121119 375300461 117573997 994280636 327473518 123787337 336128594 730717058 55618999 358263778 578426618 274293372 296709791 573702217 639022819 825907615 894062701 760810733 15974096 775151634 633153835 293811802 112182937 180735143 781715822 162590106 817387479 381854713 331742993 317290474 304786274 125612297 786827454 218484655 273497011 809229871 138403633 619309297 572503586 475965676 20086357 160378027 614117547 908342067 215072841 801900706 900168322 288698632 358673903 534875760 342466468 226836687 99715932 193662679 732315055 625634 174436938 848783215 685153337 51327670 184346658 619678981 50148976 627581290 916667182 222524043 65235708 588450523 172185751 344249676 656204202 806770012 486553762 766239588 184903407 999299333 497395252 484474130 688040830 892796045 412089456 321024867 593268325 9543079 383507944 788810166 441649869 325903401 657575203 837095722 631068943 280207633 389872442 521116306 818860905 658331906 235364735 121666324 150213735 149089158 823975365 611209269 81988548 889023692 865569625 594916451 437857619 681429135 143891433 419775880 80590812 277670898 646378671 294650627 300806403 819643330 145982072 900016615 289090737 614487436 484663674 734221574 576007105 817628698 798278067 985114625 54000901 738269155 922428435 941926880 636766574 957711256 725762438 764845404 230116658 260258767 769015026 152070701 339789544 793875874 358558466 865680025 550872019 19420437 793644455 741660136 224582371 538220280 227213198 233539077 506885011 97240231 454612394 810174931 976742572 139022044 633204782 363752232 54651185 619775814 438557274 775709763 136532679 835541921 946824051 153342363 720227058 960039594 824096231 5145035 458584929 829022752 880008442 717257966 589481312 837141656 930266341 613786308 927780461 293960851 569427932 56025414 699528440 328980104 367650839 447808697 29726684 832680085 383616223 386925001 753745351 371545940 907753239 475045603 750825839 533732570 371631064 296596620 429326731 933838364 298612097 581272859 14451389 51676044 13643089 576666233 898164733 889454364 641786030 922388040 113050842 543061167 55181389 558141664 232066849 196332297 754009380 32464931 661860821 728791117 926694191 600424244 866215485 898567503 365097151 757136627 680112250 146158011 565620406 764024352 697584374 912286058 778283607 320589215 123963541 278319107 906196519 78944076 713684789 615853014 997794056 242724984 931380683 992591970 838616669 429232468 79445538 986826131 762216513 964110616 531704288 366398867 792430848 98641553 432433208 420307813 233344468 767186995 361530056 719405595 83497989 924129186 285775979 782185688 717174735 653968452 719486095 206899010 14665559 12186143 694804986 703497951 17098688 292203638 771287783 795777461 777161692 512731143 160836469 197993515 669327970 859316864 13473195 731608658 505877261 510086200 437983152 71410136 600995059 6467902 338688647 827880915 973284152 112394787 4837492 610427026 11953290 468433010 597289315 987509718 884819553 322415216 130085701 414963020 688247547 750664845 484319474 661616817 957197705 99444446 469186182 948504310 326067238 402900474 747655168 212897990 552752583 201227091 205602246 69357823 5768024 83180131 168510460 623743386 320083947 739933014 264328554 332892743 85475289 786006334 256446105 131559251 838823179 313210870 90777246 533082369 360466201 335683964 373564186 136438446 21842711 656115135 557938461 530833291 568898905 429985839 964982137 521481955 313038776 137891017 780547647 462074885 650059218 882776119 796986614 995887284 914045153 274666975 293143176 356453595 923665497 329394624 637859189 124714083 315087413 148362647 348767869 713553850 495745509 497684122 68857357 38580361 852264684 557645966 535810206 934307722 349431540 405406817 669885054 506683217 160917942 349411971 922387237 93118571 454376760 859310681 150861931 700401977 432385523 329414421 167510835 582575420 175254880 337804816 174867706 536542879 884391470 792745068 941845115 902169303 305617052 30540357 389114785 367810526 300852353 542136947 847407932 945899757 706081350 180285618 384534894 86214026 244416786 755787933 90584616 711876627 627882464 109525056 211606898 498546199 544966696 29916197 402660162 329717951 780346732 919168501 196789634 633825779 187832282 483999163 447131422 149083621 234107425 334239734 262743145 140924310 557356670 126049696 871162881 595122587 271064617 336445818 740500682 712748689 598212614 319311908 75335424 898631575 837124650 784807644 771388378 82668266 474800020 513059969 110255537 958847210 206730011 550007735 427278783 420933169 920228602 207512593 541212850 728157622 560261914 320200780 431607396 821904121 373920575 682713110 287529146 993816734 997546252 339176416 6407519 871259158 22525056 653465942 515779551 623495030 382150217 391975090 286646777 285825758 228274351 858158872 38155100 739507087 449742367 497574867 15483674 599010604 440007453 797638360 476703593 411818582 862998531 418749910 598982945 527388151 347674894 974077467 266570410 458188653 22693522 153329077 446238583 867092175 362365997 947180707 414109511 929333774 522421232 584697697 510964706 249023287 527843140 122530956 793042075 469360185 491212728 843013842 459894869 107040155 147187881 219711237 749530950 418510757 250973686 96125775 888969220 872247665 369609302 935555268 619679342 49904554 293625086 845978218 739663166 602561552 98695779 665567373 741609461 391861157 679109120 675699969 343408332 77081526 623061356 433531842 934166174 50405197 947540734 481162904 361312573 364336664 331798526 847783928 11245113 788678892 704021748 416388078 59359624 689686581 730195252 430668932 282928751 821481295 684641561 183099297 751173722 893292246 343805857 614421967 498952436 40791389 140796450 631298548 723016904 641620097 943962049 542637453 411075214 616705753 18827520 651969268 530723088 908481264 995322834 856678372 768406541 287825491 950455508 969760982 872726478 907731278 40331286 623923013 483444365 395122744 196353064 965240094 374103673 480137230 859732504 135152475 63994628 970480079 695676091 298544226 911871552 970714887 753294151 593746896 549015960 834317887 578189495 230697402 150286674 639510114 189469393 994292866 210318003 500071327 286171513 983413460 781246001 670143408 510235559 585985708 994852952 896991329 817023977 984884377 714075241 855563744 336497955 255351553 740338555 330604592 216061604 577373939 385445209 287008950 253941473 967048159 410854220 714862117 206481324 467524564 809422252 779120137 689699270 237672180 581401910 209482933 127192159 839713857 738837840 995391304 46252347 765528979 692241693 571740357 223481630 501692448 341122572 826252517 347717330 88510127 915511732 119904854 146709584 564890470 864394151 483648 682985214 644379227 342941762 238529699 988944839 806471503 987122980 919248938 300882742 746363696 779089192 111878938 885983427 165686824 852507017 727481868 263351053 58188084 733521740 528221897 60880105 307971184 131306822 478549094 376715722 420927669 697556362 46045226 864305582 302891458 468769006 311705636 710200724 777794994 852106219 820898589 243506658 730797612 28582040 478167742 647395840 897174680 247446121 661653722 731061565 991253725 305563085 938185330 815121219 239159689 885354060 239115519 770607630 841963121 860751692 519609694 702683817 748446494 457016521 730388854 364358962 629584531 127896768 557778470 850487541 734237396 320016589 872249945 503938044 366609589 894828384 445572280 819114816 841486195 975317296 232959945 609990789 255678280 957030765 64475296 837984196 896151016 584337374 83102588 654347937 571284717 118455084 773482225 645286739 949837687 81549704 281419130 834812701 64316377 148280116 271182217 591590696 363006935 792810382 738782761 209046371 490024818 616336640 843534535 230206938 637361620 125457036 116782835 649308969 514445345 418934317 549240555 437063805 340161811 760211916 13993169 848994351 747765904 137550871 235883327 833256116 559031725 736336611 355048349 283616876 244720283 416334042 646633332 508114033 770564211 455323093 439187523 318140139 680462173 104194508 84152645 219718255 914591383 475537769 399109652 36631091 417430099 167049341 508054337 511324855 704227789 705082267 871867046 198641924 837753564 452617890 452354710 638520313 184996810 721448468 126395091 127896041 121297955 621108605 277213341 613374470 224584169 658151146 895699318 71388229 489976974 641287120 884295521 181048118 92909710 470750594 593720229 824608433 699004067 872580686 573513338 128096529 858209188 120597894 942675913 414007494 572817818 374920712 422944244 435006507 264988304 591119085 468118428 795579892 681762289 613251293 757242711 922744544 395811258 748142180 514512417 943819595 508379544 761131709 337637419 742634336 65387363 275879048 352419719 692311855 653411520 370031765 602658623 527768466 172317331 86774573 378918257 143700147 536580761 622136665 709148207 633568699 745698856 232522376 566184325 270870872 750946010 927569746 83052544 653807204 669613007 718602175 57807036 853359397 33705228 295962528 97851089 333107461 204160010 283240804 269325839 910103610 542082131 51684367 891532 940535498 673480191 786976241 568201072 842381679 24640494 624799510 54693437 76569187 573732173 364754577 162435362 831378542 149992480 242488408 855789995 445516988 97855599 584980982 373744212 831682655 968603571 126225565 913888435 563858341 251814512 1281007 38405248 917225848 518949258 19463384 210571037 88266292 474074663 393493475 514049872 668868271 250991044 983438635 582159370 213463344 581198493 952336720 40541586 717353518 182623436 314493279 850740698 347989148 801607369 520287220 615136729 630013890 991106920 210374772 295494601 479067092 755956338 419191020 179469820 90486249 195912463 232201619 12856313 281458489 962359010 551384346 738057600 88089617 449876628 882286874 24085433 624058016 911349446 142075232 656775391 773232264 830407572 341404794 864347934 120212629 82319582 107983325 164925807 242242218 738711182 377024675 822273865 803745815 62949872 198840057 181452870 874551988 947008078 551759037 930834933 759327731 372212326 911464079 49812832 584877396 374895025 685164306 512529549 551698398 269130983 389967012 686488861 728554750 912545213 467708324 318751963 89053713 477314484 489222139 272093966 603033741 587441105 200408892 843529118 357064635 236354485 812848475 16118873 992949862 96186807 503181845 757934602 788922657 903528494 603047526 747213855 437842444 286614637 502095747 752452120 843921205 451465899 513901909 979492879 928070796 273953825 632883871 208881034 362250936 545984974 609455152 118251206 209059176 129390495 234774026 760909653 106111 525312050 292107931 404798635 549664497 90021170 329719487 633928745 459380880 769871142 157348024 266788611 507052803 135001548 661194633 638443319 320000534 552275769 588302833 140074965 16230948 883356500 330950383 823934675 791804928 602145494 315180827 451875885 411743075 298605590 227003831 819348038 267986801 246210680 550006229 400210951 332534431 689697208 363194164 781894756 255729818 170882330 673491737 324973460 637968460 839942293 258439052 311285398 924286530 94690703 40645734 212145563 757128928 821816737 13556391 808706728 323999312 996218292 299208342 575014099 619635806 141352435 265616869 579386277 236581415 157511042 498260976 952454262 924491215 546424578 132514002 166663026 935848007 111861470 985403941 332295024 73042080 139528140 604104721 262800599 605698331 308382535 531601473 560071176 363407854 273690178 551631911 679239169 17202877 46052208 500744273 353203518 415289487 649111685 949399999 138961698 631903427 14660869 518119703 464985552 19384464 129007638 241221754 874586605 271559608 42893398 680619237 133160147 408925685 613204547 538871232 204131796 421356091 762784919 326690976 705749511 713079186 43342180 990707849 974568323 566094391 653877697 950871537 291872807 635570894 12524682 374891316 190437463 14954774 225657214 299847166 790917681 323283163 256663739 45281625 202186248 263060939 675195979 372197397 626345084 772296932 632676984 155988852 536155268 404853378 772233857 550548503 693150471 211515429 212370614 63304065 741236980 738983462 51786347 488145264 466177050 949739367 260665437 140906453 887011346 407584340 635640986 221925827 847550050 387867887 203658652 662549088 167035603 4056944 303895596 630236140 203434114 960809424 16340027 84892794 795066252 575258596 920580603 203892654 128598921 312403282 518264476 486686823 968597669 835378571 571424135 202601925 96406520 357547101 241583055 802711903 566056731 452035587 223711364 853046348 405287789 118497551 421984349 693878638 211575475 934308110 424672183 456553314 826578644 185954467 664302472 106231340 488792162 893962834 624033453 633417440 940903175 627944772 510597385 79230358 711090376 755075992 884632099 989949041 129429924 114366329 867435825 70129858 962734036 299687928 883776622 613578117 93988384 945652280 366509434 140029391 471662027 803154981 670040076 424605708 213603469 894353046 116602886 597039190 748230295 701616665 339587644 589660141 111512774 110463753 183557704 688598236 172421425 620731125 435445620 859847522 899855840 876228882 852793827 499382736 465820323 289396213 536975355 765192160 92539018 532534876 83918981 114473114 862984032 509105775 668013053 302529840 363065109 986221068 272811401 652107648 201307351 485246340 506315940 865336953 571576987 774635316 327029589 170299735 20116512 147172096 815795353 938427349 541085923 551718545 563055090 437181151 763800358 603831174 780646881 1996407 262554033 564686047 520083120 638200945 710239914 149756172 690866494 276581442 434918585 594503812 3220510 547716561 557219936 367451539 361074284 955218767 912294101 554758879 571764272 362439922 74326927 118463292 740061054 855256384 91984784 629055110 768750753 228475106 996816833 645449192 677428082 735895154 527454036 493869188 843186275 329907936 580868663 763618755 770136587 840939212 571497382 490018268 103538735 253618702 953931730 598600998 176142105 174632099 168666007 522161735 273024551 566886949 53331509 324372092 150043267 15076115 721574709 530622857 871410614 626891567 611625943 435662493 488144340 638423807 154832565 751385043 907755996 692238896 659531277 146911891 505313883 687349124 839756128 834933121 564708929 989983323 860351558 639743130 627237203 71207009 643312504 624038337 327009378 935418188 294708786 91456793 714676586 74780977 856934846 899624908 467756363 89727725 908027356 983183766 165065120 48944133 874784807 608034160 115924972 337973773 603248912 753186312 562485121 969598527 391693993 161813285 66576953 663223333 805135351 426757781 554982189 356464003 350810013 152810412 475309129 254358509 885634438 925970079 311023272 634516010 327814713 903223198 110131559 704189914 998694902 478664497 780286011 341882551 787936385 103696967 177689645 687186343 922738565 46635349 475719737 969981538 558027610 395473407 604990085 459659099 235947069 868441108 528519947 838472581 712629716 812417678 768661112 763383927 76627913 238708588 182843528 691138137 911981875 135490667 575734923 61972303 637329587 876515060 921014394 712080536 995199859 524987708 225533835 948534413 1350719 110123173 662201029 983379488 872662896 754670934 709465308 588639226 538356283 266734750 207578338 545595365 708338439 435955048 787612532 496769750 672372119 870173886 594191196 410363817 895660072 64307972 275571015 639111676 403521064 701014180 877654571 90320972 437833424 943136716 372456954 243619015 411310323 65158240 855276219 544870095 120616363 917303052 138660166 163817590 558880895 22219506 849601361 931164554 553891193 466098806 52437229 59491386 103237706 728700015 586791460 656843060 155673810 69316314 212085978 316376402 857230423 296263190 99269776 89830036 704855567 977438446 834414477 896230597 151567992 518412728 963471387 234032354 371057247 468197785 408982322 550839505 324741971 119391198 318309034 9896644 428101048 222975704 587547785 664057797 376856005 345212884 413016122 29078230 976044781 942854647 864908626 511207793 695912488 291785729 705906742 298589243 669224784 967291181 559898353 703827574 34925159 535305840 174086422 465502648 494476940 386469430 751145053 575464306 949492267 111372629 514359585 245796651 120146518 786740850 108862591 959605487 732729536 921921421 884378494 628649746 854929741 829025266 605133388 773732313 247635060 223023860 795155900 81887552 479391538 911797960 196769905 985792659 252202984 428090067 376296488 995698102 581702011 776650341 609779552 29112956 96364597 107459250 469226487 307003268 654928846 892375033 639286289 704726888 477356118 721600258 11726385 73670364 814719116 583061498 525653566 984170448 933268854 38204609 846281175 445484712 393928292 125869609 297470026 497737432 35087585 197697270 816953952 794386320 435561586 545745293 39101959 187084672 550716198 655361094 215583867 424722728 39584299 19703614 12775729 647680457 920693558 630710392 609851514 80323150 741621223 525915046 389680345 769479995 772288436 285819764 516413173 252306805 796599658 740502034 392755883 136862462 25338669 839588304 510692700 697882041 785389912 22961924 32714004 349097662 638994316 379366813 608051861 707174318 707527274 828335536 477275338 246105620 487730300 816908036 277679118 50548251 971187594 760836314 79985823 449079986 372440989 657665926 670243950 117816490 467321500 999940307 259632469 439141191 774761227 341736326 208310591 953735236 541378698 479245105 642076762 842603744 950422589 260469472 627977488 779085353 744728636 579857070 429024451 74231393 218039523 738903499 696686600 983529421 252893700 653097760 895506045 273635589 290541842 907753615 580630485 487783316 803234731 491123017 166034754 567063832 314886208 803704722 789335220 832803250 299293003 425065573 708719373 120682301 944103063 830752478 875162295 541817094 7315987 642896779 510892063 435104633 516163883 168592880 53320956 57879310 946108216 415494682 661741310 43847532 127780645 623490014 593184952 418243351 580965700 934771848 556825459 599024009 603508563 250695533 618169531 325694090 66083464 767718750 483812151 27349592 286240465 18978774 973136236 512773716 979236997 198242383 79987356 712936279 93834305 945233021 362459055 317768337 682858955 210892663 789304824 111800627 5998322 385010688 40542774 106225215 755187533 919499531 91659901 290220180 128721393 188501053 753827570 277537478 491313868 881333561 426716687 797257027 641822903 975897266 614354093 30662320 166586988 491160472 605035576 400657798 152972039 568473122 653125473 513670498 710206459 206257278 203391276 830738244 680470965 211029299 439541918 46894886 995409812 878386093 167132193 571533976 79365879 325748912 321289463 39669914 356390330 281114041 577618089 678071192 41245537 355847021 192321794 955309517 965886250 247423512 24413660 723668217 492147489 44640992 322583968 275813262 422294883 542756692 795835299 579349396 394289380 93145902 458511599 232464065 21451784 407594399 326723959 270037270 533251956 295078037 804329813 392503322 548567098 239199384 988579473 940086050 30856046 876328823 157132692 95105282 762493372 310396976 154188085 456232813 375202705 127311267 334538148 776009822 965815706 609100029 252990298 503303403 522554740 962588534 95087406 603542606 887634922 645613558 726755118 125706160 438611488 908794440 77230416 265963496 396251409 57852264 734916454 515954386 684435381 637199962 180031665 721083660 665052703 924291202 95085266 610563306 605138006 821555255 578013803 925186712 360038330 756410456 217032438 888522383 118384375 157298740 355658592 693486699 310562557 303892688 65271685 230415971 404420395 51407006 727401785 461007831 8436565 227555500 698401608 130520305 513661864 330226759 593207314 652148789 345056690 521819254 476765303 894228843 642527477 243091943 145968998 477795440 664668835 953987192 131728202 444422057 814757593 470325350 341924167 752126247 667234468 757202618 144821680 846761606 351166196 158414359 315167704 36335368 93780901 273348012 480674910 17430738 475296896 513594323 417120583 306922931 527333170 771084177 100499359 57153691 903301514 113721050 943920609 330997268 135257170 902135838 320316792 330978009 582551061 291262106 409931594 953544896 587843119 665891201 135541567 553971255 917189163 519217833 922242803 361039329 425700044 423950531 20116878 791893749 453843690 683488073 107747107 826120696 255748336 495575524 376298151 861409390 535024247 803502354 187368038 369417200 166964334 116385551 759143646 930062680 721114353 816743389 639436684 366018961 31514668 685246668 295407973 651544123 683029895 417656069 369944625 791756100 6450607 90144194 186833037 311320913 451299246 497809232 462185341 371494835 611774266 68216819 258998338 578109003 253953699 743766217 33121957 844725303 143791802 533094998 556919077 903269011 629229969 254380480 640948541 329041470 403004459 34849029 649592228 929346759 875277309 613514240 855403472 532438930 928543909 260640194 816624045 680006739 164629268 402268239 408908086 879320785 496522776 322989324 944490464 745856146 227363143 973372764 351260625 102191630 187089751 717254722 529348050 316696433 730531832 978957241 30777116 834745661 402963218 473700049 610846603 727921912 211056246 738346801 862686377 686957116 776772222 268296091 704332080 741984517 867586265 701721851 671636311 658110464 320133397 499616143 749388727 608096078 60605595 834193566 40378288 560239087 251652433 252225809 631849413 890995580 76858216 492836951 699793472 879676478 123178345 685913829 452380357 203006110 257614023 672055729 131977119 376726468 300153095 969282859 434639615 440192083 359250370 691244221 53253013 968461689 328208832 374759771 783105961 697909040 888302371 430574819 522396978 969447993 490088800 781757602 337371843 785338262 278229856 680563908 513641324 419788524 588341718 656223552 413190081 578726162 938423893 678053806 881091194 388274019 227536132 237142501 472535619 88775929 722358802 198371952 872653335 509796540 411434179 560161399 779364557 199343529 755367172 870740941 530766052 826271173 203498224 60310981 342250292 552560018 546219225 152961992 211386978 419289956 748913888 655231845 282572740 54783713 703422978 829365915 543879811 393083701 546813685 571016698 120374141 699959005 200941347 554007225 57247765 509066976 287398330 27038659 677369017 177663909 821288710 706560561 876542817 381983407 687791943 631904443 891891618 869907445 518469320 86932322 657613433 113766564 476276916 847012697 807170574 695431916 741099694 549412487 500079346 150877902 22639640 457351471 281878065 81104998 134669365 407917491 894388357 475981104 493457020 448157104 769717952 487331680 112268662 68974833 229181766 335547901 305739749 19420710 560393543 26365662 885855363 184087889 351835808 421104443 423396892 216982538 183809242 891453136 456401843 979999625 3249410 739887685 449413882 606440723 774966574 51619109 978870245 635696825 372892236 787038440 329258957 339842844 54376224 439003868 958372806 464446003 660894732 62622092 608289065 909182010 448469244 808100044 334054255 547341986 411145042 223810808 738801705 361343726 208786587 356982058 760789681 762656338 320027436 406339020 600405517 288344299 927321636 111386645 283033132 960758733 992891561 917976320 733533634 852805425 899749259 966930682 895613669 978031213 257036211 829547065 885740002 720563276 958778301 358344083 478181048 30893920 480726032 461414686 538304364 904877685 498291418 480687188 640465962 344666197 917643406 940769461 168265032 394351048 959663081 8148712 379935513 904686460 526457124 935419551 274832517 608034797 434374621 364963328 81927559 999345965 640287760 20842350 978938928 132017316 881530990 115166738 904164269 608743917 956704145 230450474 543767694 64750531 564758059 493195456 233212276 369769448 684258543 263527984 705053490 423283537 364323719 365740237 227652794 282806300 566724813 544239720 255374327 521730546 35751740 455406704 579464559 547241275 817129478 120467172 752432859 591022268 160543195 769472543 75081076 245519978 178717560 872876357 250040621 830004799 921845430 617014495 860006638 288488427 473734389 157922916 121155231 562481857 822722449 447747949 757809571 414841442 988148403 526840439 408816351 323204893 677729454 410063057 460200107 218200260 208114858 13686260 426879869 94144866 496966143 219855180 91460968 239135226 891067923 96375500 427925004 378675344 695462436 767579257 807622011 924894852 798995022 926165187 962896913 630424982 128498767 212470071 273968962 266210230 544791120 476524757 489390689 647085523 309378380 739197368 499499511 413567122 796761771 745145068 506060725 647351224 224516916 260164348 379489546 705364112 458288884 108227672 772250742 475787128 3912226 632724913 762158890 609368873 836312116 922080940 703252622 65465043 110415734 546356666 215858716 203618849 251941337 678508481 384755227 95328032 650558701 403194164 325234214 151386727 222527215 981915739 404692796 128702068 891595734 789317101 653664846 235495013 906117541 880103917 134847844 765930947 187641446 630680410 799875810 471808857 74903842 377598884 713085183 104636221 67894424 772207589 479126481 614543703 700457515 531854654 256868847 152385085 138611155 579045848 662993693 547156585 837198692 206020877 475063633 221199206 718484006 866425912 893064752 62841657 544928748 645425132 470625334 238288763 927221732 15955479 474736213 724375592 744975032 527908800 38704835 682407150 216814827 731588433 409729875 44238724 888466412 300935185 940634558 165992595 726360784 125757692 237267571 681586475 501826344 156288288 405245654 235003056 329030337 759994468 410670308 962488460 895508471 307754112 61160058 783111194 193068355 329322137 945827133 654027472 488036014 323587013 21011338 806382504 323055183 963569565 719206131 251152113 940150806 414329288 509981694 561552872 321452769 404409746 432980050 917807503 9733922 164734666 52598448 709914602 33027019 347336912 6604354 289600082 438309982 314085190 327267070 750674028 543449908 846719764 115138681 448761535 252021882 697280322 974258506 384237089 987511814 302118153 972540828 660390486 308630076 782817657 2777445 385940634 70515231 650033603 412067319 583270311 83067105 121006301 934355896 159860279 977312474 273657333 289237238 317758970 983603341 958956663 767910750 27012719 802378399 394617285 369318608 249979273 641924349 28481959 556127115 114684572 659669278 159347831 59780019 486902548 133769129 892702744 619716966 999561126 789923924 149520215 651641603 405030416 717023109 627682894 436415600 838701189 484396157 85929251 598020310 831751406 237499458 309340596 883674829 46941668 799506984 84932730 645562316 866012907 73993080 484486468 815875250 820584250 830892903 55662305 61148078 381691519 882412498 129676050 113506611 386644720 179317616 611249328 142628775 178869915 526171154 547617690 355649589 271229011 992523792 913819002 743313842 513429398 100456662 187527014 853131058 411903089 199809652 980148011 583651742 592451186 887052910 252797302 61656569 532434832 196608028 306556838 864719097 908322854 461991321 626552186 62970377 115646417 354245671 194200480 535563785 100198851 896499275 881219754 757453595 660409401 687419529 956360029 694864855 535402264 604972088 137171639 616435285 997908227 467961057 223178048 292152532 722230743 524503676 203886114 229822043 694462597 260778001 928339794 28328109 671047181 10358819 32670876 376087405 442177516 421111029 314633880 961143139 205336557 505155178 692814119 259391980 31484143 753689392 330134028 522729227 471857843 219233565 650782587 831296759 867669211 235615651 748928826 598805851 819394700 251923671 727606898 796880512 771795945 832489477 582800640 742556735 932203207 172564385 71178128 797157280 223787710 760408929 71755984 504105021 246243245 613594445 365982891 409096172 219632628 733032355 827145835 782837413 465287408 387964837 708461566 66537896 137841386 306142369 627885230 495401461 630846303 780928800 636371322 609505837 55891949 59025114 762895815 414648178 135980674 300884289 453817492 468120866 587240069 945250931 766373646 951315467 875918091 531082331 906060791 731887521 856453861 967075665 659182154 670805705 701035830 65554088 49811193 874928707 641036916 295786537 648312424 148513543 189212070 546745642 649559553 271331406 650839440 778486262 20384096 589502436 145826197 542730024 2037426 689651799 997165373 646699176 274128303 716703669 718159919 203318590 421955085 705239052 561586446 348860365 316245105 159068946 667804060 218469620 437923671 652033317 342645101 819738558 816064449 676051338 567497605 77472913 999164129 216903282 133533542 536102053 39020302 415115424 114822390 656144125 334329352 62329145 497442112 486180659 241248598 921153932 362882163 532355271 504442584 918174491 975319177 106581377 323816202 633047478 970568208 627535522 610000088 41434136 161296727 293397878 269049109 535129898 941620662 814749022 497125144 50832470 694041683 680827272 820218910 831944039 208970006 716076549 251676219 376316062 233197781 984531039 465618942 715458329 445221725 232677520 168425791 770147471 706371237 37373270 206458732 265459015 507557454 324489538 304617036 697285478 508605381 801720978 109616196 397763102 381594502 4877905 694984361 720727487 194722151 458113045 738186430 742241652 462279070 567961279 543619864 761732308 580198273 913462260 689110544 203352887 419620652 556486564 126865677 235620230 45779491 29765833 681667348 166081063 688991841 953856749 378156274 909623251 196316451 478467436 436471092 579959798 171844790 682819444 674998426 809008532 256590247 922333105 864166260 803844851 42268001 727012845 741554856 805475419 540310203 489260438 153592017 296697893 523577264 68546003 730787851 629769735 96426044 275656042 967541835 678647735 182477706 858904097 953473086 123356876 747992775 635093229 945780456 827357452 909635684 908424761 132477085 528326668 557869813 412327106 225465070 924108761 798709266 736845778 827884747 930594195 112145648 31933026 912806781 372420042 407810194 50190113 406059878 869204381 651778392 76599247 181864879 121079654 478949067 738738922 156128376 146908053 306462614 714370206 849270070 204186410 178204150 610343676 273238576 180487181 953155434 92773011 238702805 921083224 93444084 474570883 827938584 35421188 906540343 32229378 954750401 445863059 849239176 523158234 849939156 135774334 354464262 365971568 936959110 12672356 368303504 685813109 185593570 76742054 111047030 907710700 366746331 109393792 691592984 234203452 34419424 506520992 551020013 957168895 501300985 928088370 260311570 239816926 143108910 554180376 799210546 887134176 75391058 982596453 368771091 820412621 883588908 528924540 363734095 229106721 221889072 124672486 850920024 402338237 320413012 570423356 253556785 984052837 873538383 111395388 997650349 91473129 188421355 720259373 127580893 408529767 822181723 738474760 736039974 707412676 860132866 341412816 265308433 134418710 866591791 348242267 454600086 787116440 904749665 746380483 599337812 791388620 702215000 861079696 376825141 783598396 817809681 679285479 732549268 514131424 251437143 989059902 545927471 733365230 279282800 160749626 802133174 260418505 827713942 441818706 425794810 755454239 750073151 279283261 717844621 763206079 645120977 700962424 722100359 832501044 375660521 581755876 933667039 670413168 643931753 25744304 155479531 983187976 233096554 555754529 341362749 250533490 760723084 585005263 781211682 872013178 964626055 392452805 206303521 516853887 456972654 578768329 969838959 578352634 629477346 535446176 380027528 899923881 353129335 531280105 25083131 103594562 310423909 252900224 454840936 849508636 893794776 295343914 550247809 400669031 563606720 199363779 152345935 210793527 494864212 936654197 152039199 559016497 296273663 473101934 741430076 303223399 569528069 679038404 471329694 94862122 590690877 683962763 185066155 47955751 216222606 939756191 888430695 344973868 510123067 962366584 796077812 351522247 688693311 774969822 45435932 941230871 377012314 564082137 166171473 40829154 287660917 282171450 14141475 606009704 419280387 555662711 874933697 310196628 270675411 382818997 974008264 419673418 729663851 107801709 786295674 929301441 173150360 286569464 158821746 796005602 545507245 534870708 920519956 204132518 335678611 615825078 627116600 231379033 182558507 266702357 716124833 537702210 573589520 723326640 335670691 237334218 859849572 574647538 359017687 832842133 286014862 309102084 69817663 281443597 986590395 120945853 312546979 353315041 412082660 485838041 334888771 113498724 769600310 430453894 232927946 771605900 841672090 534903870 405780734 192890614 660387638 747740401 759374646 335793842 13264955 330059069 895606621 203335117 267718482 637126993 205162065 276520780 962233962 633977917 3354664 29552173 151503235 81348665 265486597 823838069 139242441 44721537 980549259 78796480 686966040 698866153 817905422 733750480 906898095 692910718 633239503 291028969 166786854 216976126 648144709 756403669 179104340 227416072 393184706 101047723 998023202 349509047 655780628 490863780 12731317 869176100 82378879 584390675 69788341 296063332 3047741 611957660 497290579 793850554 564808418 10135841 252229603 464403202 297615124 864878505 479691468 121996910 357012819 386411099 902765053 862756190 35898759 507474333 887783862 721339534 886330081 721455591 176480977 220019314 982882042 951727893 480301945 325706419 145269191 430744160 14675453 211509013 105301478 505588882 761011849 682928503 164054434 261790799 356116661 324062228 6063817 158565842 650629700 928472673 70406744 980881764 421296040 572597751 292316029 656276158 74987102 86228505 794717710 810961632 348801994 241273938 794558905 698042682 288839038 376661092 507159737 368520455 300765653 41846404 681813541 613653857 221887476 249255281 624929372 942999613 775613710 967276307 709004368 951093967 237352925 164450613 588013145 688316992 157488793 719208246 318490118 230386191 578481209 364180394 994740199 201411955 498383338 939625929 446912630 821364946 671023439 539796650 149322055 258307372 199709991 272606196 761126074 730718100 427584584 866956530 840738506 443184157 350804836 903952106 309096562 126997228 442464425 44786641 604003645 22604162 26607456 696513334 330882457 880992363 409334913 175284385 828352115 76027754 426195699 946702783 99708440 627760647 939963936 821682227 753185480 89749511 118130126 556304497 46041784 429539972 845064869 649646869 357891447 642713536 384732368 402612982 147661050 603804299 836573788 145158615 905040106 774099091 660143837 346474894 280282278 520352410 292674565 974463103 909255798 174320611 144140536 407229715 227400418 766907966 989954104 140183719 137082901 901544446 146443774 275544254 438698645 56275488 199280111 834267830 873811255 53902956 897885647 872681371 434867205 364018811 115432809 725778211 168594559 31278669 151250037 143818932 22519123 336120588 571173794 150564547 841220507 765611345 221760304 369404901 891174982 414719315 696881917 640271280 395756877 527376522 496228754 410398542 666721476 912974129 327694847 394544051 593896286 98923133 467426545 680196083 950473708 91232397 162390048 834972505 705526535 356147758 172008886 16560768 920581703 805733890 704797839 471392565 365264330 668799243 63051063 269987417 280666926 927186660 290194132 709920977 569624909 902137627 260110469 579331106 762703037 814717634 745634118 6750643 212852592 977297383 969078843 346060332 924701576 786971739 792500667 399287122 976035646 600285578 366781588 814303686 74772963 159881085 466483808 249559902 821009463 8749525 502412388 835732763 132187554 903405416 395606176 893989101 173176928 210761809 430880753 814027245 32459332 992381274 797055178 765960322 615159054 452344492 161205065 600824304 236922782 304985933 699595282 238286350 766046391 821787931 944720779 951675385 216891124 970687496 507807468 714572977 559842530 376848888 197985475 878857005 360084509 78263910 757154564 524674591 143629539 890959421 58554190 505688622 427210285 719410864 647872924 238823839 990920015 4978062 67360572 858457213 445820754 797425908 543197767 416074222 649219563 272183903 358075838 240062842 819363467 295277996 902428006 980812871 839177318 985387913 391010826 336303038 994563266 637242261 310925223 605127339 219476974 897518674 421853275 105240723 43261017 571874366 109799395 176603937 673383969 968286070 925081416 429514979 102774037 588010579 876486401 439465894 459014429 431599154 444433350 920324540 355418205 668244067 78846124 834756776 443767204 717828782 224991445 540466485 397972791 322195476 547659191 211287508 414652153 977368605 772016893 569390945 894405217 911085639 75958013 396483781 233528610 783655238 476022455 770962205 88456312 627578332 936304615 446547442 272124964 70836486 579386832 149085327 543801363 271837035 773746216 76859653 345810239 187872665 635659385 648293066 395874409 837429472 923758779 375261439 783293549 991827991 997106436 283494878 30174311 820298870 64237147 30420199 395623807 584639176 427356539 907301550 550671759 769912045 248546707 482410459 867634795 478420841 217186115 446435298 509332860 843623561 650755702 106437184 414353822 187678893 126235479 659998370 648591613 122489239 187787530 152340034 83636418 576229902 422994284 67283606 5713225 673300209 113223607 207694276 812910030 318704009 60934305 470944276 514124952 30724002 626888307 564179579 435177092 474559793 323463325 284936719 405924700 428835176 400740090 808946883 905575288 490182999 57547280 71118988 106318415 500632679 26357572 719539569 933110864 500610113 145298559 119680941 991464154 396326326 378517642 155562639 68321621 146773792 268961033 34707905 136075285 862612837 477552189 717950245 794396988 262520138 229263849 456584478 234398838 374750160 217078685 315302018 503410376 260615693 690835449 1012974 2995608 604801789 248928280 492898009 905025218 449242850 782606109 924733164 184080557 142245163 947324934 184880105 903803620 698442340 526986017 589744876 135368965 230098817 180066579 449730838 330954363 736053872 69901440 819313331 666854385 243446302 691553588 518362825 476734757 976576926 311119693 893087425 410855873 112232101 246563674 805443318 576067653 521180231 460976370 212235787 485823363 493150775 217091835 706065044 92199910 987890482 991919782 880556896 494567534 302889143 12329552 858635110 155392972 429473725 317259280 852806411 418206208 241927509 180997910 345423704 937757131 941740977 415245022 626705472 224207466 661242168 363241292 518847087 381709042 40412469 445837930 161050604 121948458 26613050 996740812 212685769 973424710 253348695 448869625 701637412 748833128 278923520 783499081 724250490 154454413 259411571 959103462 857809745 799917469 58040117 228877415 726848192 379998514 815634289 908413895 225093479 622870059 473990816 155109893 924135153 366817229 514694721 72443085 895572195 557745746 868807270 874249107 153054121 635763104 67206036 882160499 121215068 513657212 329568570 740117533 772111118 312485165 765892442 992425124 548990402 587401495 801426542 610977639 709847142 108897730 818241585 211767354 387020175 140669628 135974669 387544786 630641368 76653189 288663486 8425024 968568398 960692099 545054897 209120622 828508939 780811732 705701182 589617148 123436816 596149737 955214452 429065298 258651708 445604298 796476827 136668977 378883366 549738914 55489614 543113991 533274939 704906713 792442983 167873268 974918188 267058056 462849206 258786291 61421113 337955840 18741822 166175026 941523531 101384941 95820864 33465435 134977760 251144566 385858417 632363692 180141778 117298644 483887388 364704593 108492102 906096222 436090758 950145267 520105960 925189154 575376264 375671027 563175456 767547378 597048497 326455243 557918616 831217701 711447695 521770356 42214797 261399210 770164258 612194980 670370454 644191706 27118587 904451504 799312453 990096343 627099390 275437064 782306548 282704766 95509723 63329745 535088383 111917328 409247627 654453097 895483077 478515682 260439889 230228961 796291321 189287038 955587654 816884328 729821721 603711581 821674614 689456783 618877631 619470192 222050574 202402718 93193883 762635112 189978307 386527675 446662477 524684289 972778728 73683039 238009868 713759673 391815418 272153620 879357400 434311622 589069408 314414435 527747981 307865654 254225203 980183623 115064543 112463863 571865828 935267162 797025786 237303506 940469331 124849170 360585498 709216396 807680827 8679598 705565818 667923648 997185767 926958990 922773218 216358317 107185934 134300740 443972887 312459035 846564079 908317983 910877975 596470574 447300347 494288545 481440048 674433240 190921437 451685449 982179859 498656861 418526447 550538880 42129608 691237617 587462779 661127490 802173937 512390764 194169662 856215833 65611747 137962674 207553193 637961 555737501 865343490 978059936 504645767 35593188 471341945 409204173 985549383 391445489 246949554 677936457 436864103 567557564 490227775 133532644 998559812 558047443 66755436 711047341 735232154 904079154 593161293 35608377 574480654 20763521 547985394 432686599 270893933 60530395 665266870 118679593 958971676 463523116 145664148 147627508 190710392 331144910 42283100 432904298 724936710 157805479 854161884 301337218 365789083 860196181 99262108 18980169 702765074 689458228 137020209 828184535 467423012 46354841 924127923 46082358 194324986 628991510 640343670 64826013 942282388 959064416 15633164 417715242 340160591 613673137 757763017 876995982 669863830 26187782 295581815 232392887 487254302 815875642 692463384 648911638 961244418 458682082 708922712 745288205 9339900 839209010 389616723 2356169 139313535 279423490 503626508 451797993 408238290 205377324 348059659 443610199 92007864 872469155 177290447 269266109 720827504 782157647 301837010 340117319 869646084 730622008 5715115 772174314 741465649 217436694 908362880 475858061 558591176 740396192 337430768 356856532 885535248 185342078 236997203 176707393 517642912 530120827 261074176 87549709 193753866 246939176 541729823 272330109 746943528 256244149 363045364 705704942 128445366 888370268 107030454 429144224 318593450 760613350 461575889 248114977 430258544 16982940 867533588 41509566 193651108 231252609 650053799 841277452 256937849 362081681 983449379 546275752 186164102 773675125 4806034 284079986 946006110 460130995 915970477 511694214 711875895 794310404 375283160 716570897 996765048 723177164 970110096 946624305 943087019 144556049 888818798 436270672 823400949 82973409 10572825 978676977 579664637 937404247 282808554 615156107 768127573 567031999 795766284 885440631 748516688 668262083 377888791 753483372 202546257 489900271 851840283 14601078 79406249 479139805 784282117 588540118 459660130 270151472 730442838 441788282 638680787 659856949 776680623 27582549 98747522 465848709 742611824 434041385 884026355 566681733 136667018 584247661 71999373 115998322 352406401 901765766 298656155 440639390 118659880 297726572 183366004 679233379 626326913 802903648 269286054 31702217 97211280 675520585 9722312 101699357 200099794 799971644 45112383 158879873 111387116 940269147 233136700 228533087 310454510 650564636 792976869 519217637 534775759 401868424 195708715 603270824 44141570 782074408 172632138 66363213 951860068 187789252 158412417 419112831 742501746 128134004 118336821 95104055 955561999 564777724 488043635 834211957 378689144 970106525 128831797 886756478 174680550 100159555 517274807 676244032 889044647 244864387 684688190 618435857 480655371 879090126 118960628 215895542 607618434 165335603 451200314 162085885 276124791 877136488 102487325 198970403 951750519 151543024 633580424 499803347 675413100 369689802 696300822 213927590 779812823 645440045 698744357 475845338 81069585 316124067 930125007 814938304 189109294 707269024 621792560 240254103 27676451 423128487 407398386 821137797 184291150 951656474 451417070 379879869 635547532 365844365 131270456 35258001 415374860 781470772 337008777 543020680 885343952 481597652 931562457 846847010 858393913 958786341 822969295 273117737 71730133 356479075 803739183 368174366 233614720 83272990 732679043 747028235 886522579 586227838 407480218 253926983 152815653 964154829 508772353 184191587 155740424 218413628 688272447 391728561 911105428 226597142 19937047 148918755 693111316 634591724 35102558 181327946 103197993 616152449 560252113 411680211 961981537 731316043 319405393 238378115 874373472 480687024 478914624 818943405 899585193 19726202 485769005 437437517 958829812 429687394 446096187 364326478 233329743 368824888 306999901 414377759 747012646 839797121 352040268 826223901 645077160 382596663 795304745 764526045 733097393 152238155 276973516 212217927 820176295 667421129 559364966 444216619 467638434 872424235 96749197 958901502 238646178 955217206 46639121 366540016 232606401 906831602 497759051 18768627 727657895 351821500 239446235 696229836 479326883 150585135 90870046 803946216 655784660 730169832 68909522 500223291 173024334 399144390 899887373 513398317 939964743 242403440 16571582 732964163 426903558 671189601 119323590 623945761 604976666 226301895 385135989 185606283 682230509 965723453 468236039 399274070 65697587 83766335 499581135 833368828 684188309 177374451 276459182 492532175 320249022 28995595 263982469 928418438 693614629 275011608 185083369 271391209 586448157 222834901 281370750 524534364 763803822 565979936 545812173 897815362 306581441 822970337 376567048 277754069 475449218 812059352 6913562 12837831 218814571 713646855 261818135 590469736 324034967 587216671 837796230 63105105 58211190 467930420 8937500 257672336 697491308 668984549 954375689 999985927 311745023 155455814 724792015 135260618 719059202 42616511 832184953 17803816 683689659 795014157 281343303 997407169 427689387 836670405 41768665 860579139 458245590 62296147 740983880 384576507 829451111 960556838 585223294 908090472 639733598 588445165 933898448 286714276 886544554 585915696 833049905 709269731 233026021 119023421 473750189 850658566 936558443 426312777 142045787 123483999 479869615 801933327 92119247 863527505 785147084 931000200 794292745 81771404 288900445 141664637 674180169 400091015 178445748 122474266 795048995 149149636 943422225 113878864 302568598 656831776 836002916 344685458 22490819 984548248 687051531 470345531 197428964 731395733 514584980 798107957 566931005 578576482 545590905 882496373 730825818 136350513 501394648 246390953 597353076 713334025 23541680 139844184 253045640 777014899 311889949 843784051 92108238 765098359 418408840 552856691 924564452 705488685 111527853 605079361 761395228 247346192 952152904 896307946 97754716 894450676 69557492 32776437 131803541 473648549 256324462 855941693 172460599 342281386 469323094 620731197 83094046 965422045 243556404 204388999 652277476 985414244 226802466 446008982 564759858 239430294 294547226 470706167 83825505 129855571 153084757 639748825 891646479 968821966 639398644 453609435 181193356 667915552 844089356 77328679 538218018 136032481 996263935 394809557 3985084 108027823 525105322 360272034 337976851 17991698 47927042 80621647 532582418 840407419 144172940 223686719 657579217 323237387 238061464 292624074 408661780 26456205 269063522 158371759 322392785 210525572 22043955 447964217 744338735 12662937 536658627 852472648 916894250 220368177 183770190 175399759 612019097 397766961 918320301 115519133 433801041 752274103 891519702 724321306 816575322 417242773 108820449 654011267 136905186 578455004 513592686 381885092 696121087 595820427 426933556 857163796 290152889 304884298 598060253 701198998 127801535 294515747 814048190 166350948 641637606 132911457 857859684 244860664 819101488 339629122 735788655 878011896 840671588 758147574 978471810 964392598 878778447 2376707 776941736 573819194 793288635 679613935 662650871 379085263 793663968 440613964 560646182 482181691 521644175 896754002 329204525 577196072 421089461 186816255 344128916 578088093 611672880 842654860 831431135 882868024 728210909 533102911 132459667 797362652 350456223 952323306 234369856 801858711 862358260 770255299 307788362 575682789 522764650 958141972 727780688 577772464 947640419 647191475 844231393 937169978 132720264 122770695 92364913 101598461 811630362 440904956 198396096 502452067 728992231 684037603 549929708 123521727 21241795 807527825 673253533 819532524 465728878 91451086 446424379 167290094 176324214 42005595 538812214 428459740 876509017 72194084 265917515 735187608 248511996 135449839 561626262 18522427 137517870 369165837 932218933 385927787 339329444 820221526 348179259 232010758 806312344 912755913 490407969 650937719 69282221 351672454 366381900 854613719 163889209 229529628 785836347 400718625 128214882 813038507 831160183 422444429 607534569 204154999 235109409 81735157 532718755 660542667 65306494 468405018 524418440 163645628 588721682 324592025 181135378 973140722 345493548 113040018 945685251 240408105 442452458 514725084 999609880 484031382 943222480 408826337 566677604 186631365 610204134 902071436 214557402 926828894 786040897 333174992 38651118 296176318 601747745 155177270 379481753 716178897 589264031 443095448 231189030 575286967 295580383 463976971 932986550 5381151 949207619 116454332 616565521 536987339 956096331 384667583 313781211 943156605 374567037 325261149 986144334 924694348 714402704 169689924 819072731 40139479 726866148 743811889 977395616 626102899 858175384 849602287 394360021 646425320 251165616 203919306 453648085 516711522 196624715 804611510 486674633 301222517 468871068 691305362 569440695 727113345 661457310 365523470 775687805 155835954 612509936 821667719 189754168 560079691 331945657 696295328 676254818 744747094 270371888 256084314 777685176 753999527 348687396 330291737 243162365 664743530 720127762 821720177 21340354 337892641 577038767 398540000 373118410 61468959 684587095 161215624 373922798 274418755 871808088 220575910 409212017 381287333 444926720 408276942 847850848 601988731 212431026 327494580 737240771 371196768 279338451 29487643 359203848 81718598 896860592 573762414 12330064 211420469 317004625 484004725 645677824 436652341 295143770 102340470 334608471 856720989 49412262 672816622 751994590 84188883 309558108 667979240 647215938 883180571 598865594 956328761 262161517 241720063 158695927 265637849 485833687 626599686 144931759 608206801 839025772 526457008 253660650 409987999 372356459 722273352 867447639 309196383 393258025 185511150 408058740 692266757 559792358 749585426 31670127 154623660 515723146 181825821 515902256 618590041 390546443 180025371 690152353 582289455 286547922 290123953 880720965 800912837 409172512 135523086 896992747 725786073 204319473 536564431 538150560 377465738 387399494 236039788 756427764 364921899 330107255 920645678 786258788 581513590 160247747 963124428 534573372 522621021 455441930 806574972 566802634 268135159 914534502 627609081 89204186 815537845 128383150 409425711 439542340 292356680 292097492 289936511 828878249 852202929 201288821 986612681 179651948 959634721 231438402 505366675 935656537 691927475 148827156 933240050 389324876 548850220 921392340 221381603 122509798 436304546 28173288 474650382 182878677 680471108 398957433 326237915 9401136 304559760 55775217 189132422 244849061 364757784 767713943 493228978 179563953 485660418 879208739 620173558 768789916 619893323 257949507 837068582 197647161 831204926 427498384 298730561 167400717 16413292 5750432 586355647 296801520 504355661 961753882 258799073 353463380 379284550 427696052 19302309 154480566 784515441 574208841 357348243 57141318 389624907 418259605 942305116 257942156 672732416 61156202 60920555 898218271 657742623 869142801 256497172 996400495 572524329 479972046 762036127 94876016 169604687 352798543 755562778 609718737 730695335 376626437 199065847 780233130 409579308 338405310 9084041 133888871 4111507 775277135 194371287 502300403 581918315 186419940 770176947 236160896 637387237 302446072 920324621 369866813 122359782 676212322 788710173 147027909 599127468 4571537 450333391 14942095 88745946 864128242 554872396 474174309 86353815 120312935 762712233 857632372 503906743 191036452 769342199 48125419 643242814 629468394 363414221 481210293 179266812 688470862 455389283 165584893 116539487 268740654 384895317 25560366 701629110 235457024 41425234 114913279 283116966 643598651 853858566 13556982 974410508 112099798 547378119 786302890 184219332 891856480 843818905 797306957 56896821 54958299 718598962 697971716 774962905 369550037 512469061 455521592 585615534 793565093 205079526 119085651 719928620 404967726 647007597 363175483 256624548 217314053 72060159 799422070 240455232 669932682 174949248 423611593 208050578 437319708 585976840 610089486 140839282 863556901 546868967 634626795 501644057 896055326 982445676 516000393 70388576 384900597 676484368 808975289 976104362 231979835 989898964 541272102 368266227 45091100 420222634 991574303 350069606 727410399 591455181 653946104 405575729 560790937 885127569 156601537 321331669 954684415 500475144 48224029 569550865 479328940 102104248 773412679 481415374 955263211 40444854 119241315 217157892 98376536 368082636 334995578 80192202 779245383 333440170 10202246 672192829 221944282 559368229 39181007 67535095 180606119 345700863 177983176 174728200 971368889 485901916 606852039 368237939 904350796 341775439 296963034 963316197 501512945 903309691 180410620 47042981 636909335 645833022 159001302 582018081 600989461 92509067 44845954 215845775 696457834 908444224 791032353 319024409 669260709 122224790 471168766 432283076 25890242 532486380 271513497 803238303 865602673 896091094 244328513 485483109 342516499 647077254 35924601 31735542 160952135 621333719 471995225 663969526 51159356 810632927 637501349 622374464 500850703 949241771 930757316 331961556 168283977 721698751 44813857 28454743 882285497 923575972 903505260 502960804 761887695 92649376 907387050 868041384 101660248 79484055 520992385 824579706 428376087 474572292 71325820 970438929 689492064 799799006 532509637 532359513 630308610 808176467 354464787 829412534 790547488 429995892 247206793 954928552 615276304 456559848 248005155 69827756 250450340 575497870 197848755 712434217 493741826 807543701 246213086 432642086 940052808 264469279 706112382 555112122 312643088 562706589 782009773 547937524 796167704 53958883 433149049 219274916 521827227 114844788 217381303 908296349 512089371 155378518 292329938 927993376 237808830 318935404 358806096 244975838 808177840 17244472 154458589 601526182 882759256 776656922 147757224 684644165 216281304 855188331 801296936 693922484 696089831 171095228 916992961 293387845 762153126 968901861 221990508 18004510 958781210 453449071 211347427 144579676 852051557 937878234 877335327 304249104 386668285 311494683 895173716 512823382 416014373 710164187 669224907 95673616 540886936 468163231 345026349 77097796 1496589 913400370 569249139 113330519 673764875 609125742 813078300 532026167 371430606 988454812 445175800 266728356 933788321 764587864 228216786 344001658 823481561 2385538 832449442 358197890 901870478 369074309 238585722 741062813 425490215 990418828 703100426 606722116 973883114 628383336 966061744 175263496 67802663 430290158 107643768 241894517 602139503 655856020 997132292 79595558 867006027 641366777 682316619 630285588 700749150 899360113 705045905 323013750 45495731 593290470 391225872 447215839 12880747 478223605 933841743 913225785 486448956 880152062 273562729 372195836 524296821 634281252 357537414 198069516 50450592 655204402 611422266 763282486 419404004 641471054 270199948 649318142 438191763 762759488 117013331 813162054 41040442 747356228 160078134 629737459 549641645 510444037 719518999 421844040 59469326 841472849 826204197 637521780 903675863 231390472 485494200 669789175 154368067 433728541 164835159 199025911 893500215 683133241 139406209 878953289 295755837 692367810 555383802 793511680 864485298 647032440 693597346 513695999 71125624 799656582 910819652 98468701 549586279 282587441 320996561 314953347 137967325 674908324 49459519 544148570 278079573 687046302 297195879 656099648 268608087 650790097 592805726 267850636 707019852 992823381 226141491 655072809 785146988 897116380 354925302 91666400 835473690 396714654 793436824 250083820 952726996 36374511 957579358 53965063 849402731 905945251 410860960 671282620 421048851 385786122 254510592 652464207 842116326 648410920 796411799 623396269 403649573 577189500 588431298 506983875 24056175 95868010 669522677 613146786 123948014 367952149 59527575 173307251 655896872 135252973 277953640 171202543 696475238 93688348 686478368 547534733 909245143 674495664 963247253 739206222 343329990 625832436 884663859 261343217 646964641 441075055 84810428 527583767 246152724 991607939 661470749 873080052 180289363 194127992 607191090 691097577 427206561 992932457 94177070 327827659 20816157 975165614 44856744 134622471 707351691 640340865 51726327 210589668 815131020 913713755 917043626 12625715 547481675 516099485 690006535 957516591 252405182 261950570 484919349 443432374 136340010 185456236 831097762 221088484 813259614 992401290 353359186 717591539 635207417 298168719 394016480 564606863 296321179 445329538 162596912 138098340 998325086 347001484 125105447 931171604 418638905 802430689 311392037 793548886 127327971 616675608 165763350 555647039 328135469 800376275 77839338 193902528 441011833 996131521 868651624 801351877 554321020 263547743 244300541 112802506 602743807 817933578 942262945 416611570 15896235 466374035 54537466 64985493 725101204 753607322 956046374 449329499 421318778 359803712 164415353 241064789 60786886 511837179 538345953 369907174 841133879 847625165 964329125 830214948 577251781 539310770 112714550 609285750 844234344 975183644 990714457 520883974 519595138 248658332 432097634 456335279 844462470 404493561 738157621 960482359 462113864 928206092 685541689 340168042 517264460 150037774 195299947 560284635 850075830 420763123 539928451 382621831 162131272 602311620 769367829 65667814 505301791 229280080 325376226 973910955 275353755 377105269 786308288 697185990 190021465 486988948 298611330 484308722 740007219 451301383 153765674 158734189 827028642 925698051 476433872 74144807 70038628 96002009 316433595 823974380 164778558 386444422 371158219 823374971 806828747 290422024 921239748 661862692 795187482 446550290 407546946 637033751 309014411 221290962 735893324 718795047 518411749 122485386 712256992 755244393 556582499 547742759 177168586 581111757 131875516 74702174 512566169 154288280 20590948 401970554 765243431 344077603 346071582 813430234 493282708 85172431 140231456 455645632 182627050 827833925 171293287 712501464 323562740 570865848 907625522 985588994 731727819 926357900 837266503 501671698 867384365 453390652 953213915 752106815 499662023 507096957 113513772 135956366 236624213 715371486 140988116 690359530 695845540 957688983 165172913 490172171 150993422 374350505 415660177 826040119 199908494 553864498 911810932 366728195 511575854 167908202 757757077 37402997 17785232 539003564 224081856 401956677 533351434 692407849 626902096 624245936 779040751 486055483 795786140 126643125 377694019 285686311 647302368 742873103 625383783 530695505 927466329 785554688 43874288 712023600 447965100 502095633 96087823 680992056 301692484 176737719 397298718 265821785 558850756 900241721 879935293 46618518 868890203 255347378 380391752 973480437 165061496 963745979 139145885 889491465 999024009 449208787 722156569 339537043 133336996 404645336 71004434 975398211 3890053 121956362 61809225 825646522 461959036 120379267 432817290 291258022 754130219 158544545 888155406 311504404 491081467 79794832 555106981 443943702 971952496 754437509 666710578 22725392 640209028 826189728 137966304 408617327 415750531 7383046 248573597 117714515 214725580 949181980 662990738 946212138 37946103 81725628 441346857 499486792 983435539 125154770 86613269 228216853 576107071 534843496 47356354 913719624 809168606 422046153 897181351 422732080 10206562 181690602 126599708 183623094 262828079 756701749 865682626 428864414 612549392 31136132 107014107 863613516 482989915 880493473 418116264 578636443 808189667 106684059 823947928 469606528 56437398 829953121 978698350 302789514 687306208 450525890 253328489 438431820 873762308 481368217 99115157 267913593 30169418 386048563 276060541 325258875 411472670 28938085 43363778 344235390 687388776 112890780 114657668 36540575 241107538 277444383 609953092 537878945 263657575 972035689 39353755 697330757 979720529 42870992 769639496 982061207 356357656 156211935 712957584 241731787 5059005 168716039 608163072 30201831 717429323 904121204 128586912 341329871 599210121 864984812 363722525 50429578 220520086 318643979 192485806 659546967 187698557 731487855 626447207 672130327 687536006 22777736 853104450 548686467 248715645 256353674 103529809 536931922 64482776 309777406 805113713 932401469 734213590 674074566 35445778 516316429 330383264 78658270 195834256 417485661 435964570 603151093 416557531 540938010 5207890 532583277 436388085 588339241 642981678 102780238 135996488 684804932 854792561 919081930 320969768 744762606 847892347 215503751 360258820 610611722 646592252 510503019 16118803 690369472 447060718 35499842 629943816 785371990 936253198 722081827 199704760 859909244 414712262 927969020 198297309 796930341 863965990 885578858 461941722 952092136 634997809 492846535 253609367 728034391 28487760 150575040 314421145 350012238 237497129 805635753 743093705 338616354 66283923 125421588 658801863 234676396 883599567 427011144 889850450 415374871 110315316 728068288 841368818 586582824 128676366 766166042 357708129 605489087 491811981 973330306 90256792 274277509 82225602 179312235 182788003 277547369 508135529 589671107 678534475 897997332 866135172 432885560 406051534 523338665 286025996 76037406 952716247 700716787 59118445 379558862 925333638 802752695 398940587 878583432 49356940 179834442 152434236 381822652 889730041 424436961 451537366 528674586 587333985 387428988 610594996 711500528 213912252 484989190 863307835 518896569 664337042 655023102 308585646 573807828 977113000 595947077 550785218 126190381 401302450 771161795 592764285 76479131 572230084 797762058 926145755 64739042 710271994 717118230 59047490 435872122 795881284 398399322 73259389 633968030 21805082 239274161 702457575 741299639 667823277 927471930 158894584 348588003 757384834 981046322 531412086 157738308 824842209 876157499 378878310 179851421 784544630 322489410 186550228 843661412 528528871 810474616 494707032 263958927 687497844 929614116 527331215 871284088 630630218 306322240 748919573 959919656 212218304 934196437 718368639 480836616 461782446 614596357 989058421 890619027 517453916 274036130 471613048 809356254 623794952 383007401 909133802 794220340 254900976 346942371 679516112 844547860 730615803 864931557 38856965 700760180 441063960 561522914 510841657 126151286 365353242 195941198 353019849 937301464 24996948 95526238 250422748 232640515 89854274 602842045 787239669 567069862 848066504 277442489 175159057 309299157 927624178 982127802 394930185 340481382 647592293 569239822 339131619 8988018 339069853 864020181 127557450 97422825 74319910 279772865 717223027 521626565 856795306 309685618 477430691 809381786 911087459 817846310 651915414 199839917 957884986 424673879 744928860 77460757 289475126 250540791 498937705 884365921 911860423 33267721 455313091 995437012 272897303 851305324 509995660 477055682 604558616 103405446 438254608 620281290 866553335 58193849 13893207 909473023 971995949 812594945 566124246 630731223 209284612 425133021 875088783 931324262 613020920 640806528 398195430 159044109 707221655 774967095 464394988 52565921 102333975 943761997 660737720 942968542 981443565 250184203 224331010 949265034 224425502 990631757 351070510 457782238 442594904 670027423 898249174 703139152 71132255 986635590 845102408 363601465 363929149 373011439 439147661 797706573 926023220 779341376 692089631 551063456 347729370 912896759 299855792 587161472 418280812 868119670 226510398 255459141 363409442 514415038 889025005 659944454 252782537 344050776 123395206 506867178 292947017 299167068 331073385 587232238 979539140 789854969 636656405 626274662 431700530 505498625 71607518 77182439 210310208 466350212 180585406 121156473 400994242 687318749 399667640 198524754 169676226 3582868 476864597 837892655 882276090 720212153 810616029 798980968 435986433 66947604 970165905 359869030 782556255 61880971 907419582 789980733 646584744 806961910 426266912 847136586 354471233 983602832 548605275 700422378 712202340 220528208 700590577 140621269 625551806 128121357 241040908 433828540 661588950 858312742 132777507 368841271 930702062 400238211 687061072 730508956 289037712 533233185 463514441 253259168 660269151 821006516 937494082 766804395 212999395 710011070 781632 512917719 292809653 875698907 194859131 263642063 698188449 914232766 500174466 864357512 701543549 833178279 711807878 367211254 407598309 449791305 268960435 713790391 200646033 817490591 350716669 505953262 776780353 250378826 176390984 261142867 659924917 739951124 262600478 393383171 558383447 518586240 475043214 798725611 449976238 934731195 17153974 305620029 343687990 680941098 659966875 356963345 375197710 421579378 638031153 918736802 707231247 858031859 227314550 291832652 586150466 983610479 383409473 836360072 923626428 368136292 314186427 951260817 929693575 764663778 689871613 592966963 974583078 129911561 321752869 429255675 633272441 354373446 918257005 814194999 38347311 995608017 773543030 168602635 969088801 179313312 308219517 798679667 308515164 942293481 874384366 228289339 465863379 999515863 269849779 560022261 749777392 475365430 484443769 500692740 54359796 27777700 84397250 226623844 554988443 363760528 962007562 876000368 46615597 142771172 597549560 766717443 773074839 638335516 675990049 91314483 270032859 619470768 632111306 110603309 4174626 240857612 709894901 458433932 430927151 265525109 414717543 442683874 64650174 378120894 668875537 743121272 998588545 661912202 686736398 705885363 325589739 975872814 882863914 295354836 169109300 325368360 902964439 89059282 840552482 252234542 553213323 381402212 297158799 620247784 443000112 42428017 362256561 874465622 190949040 339899038 790182299 891531302 576176491 90292364 558558220 788432625 862708516 350881060 751404879 216781911 558084315 705316857 678602996 80188002 327957640 306155706 393776702 199749044 726420168 338795194 443686196 922369172 621542834 377150104 697748256 776446032 657144011 279743405 183427445 413101026 690210621 989653360 981225616 644729382 186846943 192933652 533349521 68276627 227981765 412791218 809647604 951586512 116197865 703865988 475134442 796390931 813447231 967826429 906954379 710297279 19537597 174447386 45748904 436440676 931922852 514212774 265984507 336361784 40256394 235625485 997934548 678246959 742668131 334887646 841190725 64970621 513393918 256326726 487139312 996818556 354514689 55712275 75053407 973652735 222519002 853751914 446956845 261207061 916801233 888356788 786154386 491453719 459328373 519746505 367335505 126582495 14663243 954723429 252859236 77109278 644182774 140429195 144386568 292568581 733184187 887875176 246781639 338845849 669536154 634131478 449063624 735094733 925072539 185781933 939881333 425018902 407864384 388733150 720835138 692876785 92986061 905502639 583557377 52790116 910220344 907148372 150028998 591051066 712101872 976670431 596144157 980257960 618573709 523234045 319841261 42659739 96389484 759379816 336028056 59022612 527960151 877444783 246606104 651623289 776232667 263443323 222143121 976559842 524006535 972334868 956306704 908312204 432285830 516269274 104729763 270880130 762837160 552638942 136702058 307656596 67604552 198567752 594753248 699473366 388056539 803243712 964909317 827609978 826254173 25537846 311447221 832712791 405309039 636276149 760255629 366743922 450423128 841070338 827830980 493130874 548090965 956224080 429986317 747546347 335986566 372958678 408229873 207475611 660131752 303207308 397119125 209739334 470328399 333399315 518286197 810885079 759430691 827877622 978683620 194175385 8536950 289304938 659162206 972447301 290666883 328620139 296290662 737265166 260355367 925484660 215873244 836507882 156759125 997807594 627144160 554990321 213526386 267781785 72380947 955475545 391481203 372468976 900066386 400946498 297299835 206658013 754830962 505811761 267683434 711208877 89918842 164490178 208298100 125006341 235946926 594688243 345832743 706493556 55381864 367769059 257548325 290467555 855121301 265326599 661188718 47968236 416659260 415635504 52204898 619461103 79596059 145591450 478947028 450197149 568203544 107918518 234659765 378285654 364585222 487099786 22872424 549055672 451046687 897660156 765458518 530282058 603777072 643389804 520026363 888763992 812099123 375957289 43886537 675350103 673557074 411252982 264796570 14037729 957494358 284420044 749748030 9326244 333187913 409779748 216321486 854894531 308510078 416330623 995950728 189647183 573164512 654820731 604519886 625330834 383399482 104844128 902182014 158726641 504359394 841519927 833902660 893853186 190730203 410272096 12919620 323245647 285718878 250836188 49733192 752077740 104180915 267338046 477820981 123106834 829856318 261264992 353003699 941603978 259120891 57827759 835678676 824756940 999368696 134613063 828870719 741553436 753593317 998705181 486942983 247760012 124254751 389610602 760725070 707111116 500597710 588412191 857475982 847294357 470780401 172042946 347903297 343850975 913019757 650116303 422797280 318154034 2893965 559165646 426296905 706634064 460066819 379010158 624914805 3797598 453558573 703470599 511987461 872539355 373174055 757863504 506490899 89085580 799189601 397264100 389207043 210024121 823240211 488544704 451266574 24960227 41733851 474927903 893161629 493042935 669151681 31410374 263731128 644871317 430256132 327658024 490765264 141558085 962064126 173147424 215911138 944933755 181263723 469824028 1380168 901713268 83574698 137495620 909502638 850337467 717052156 496630270 635609295 83948186 247450500 357389940 34496955 689360433 661895964 279553189 222355455 375089971 985904521 312323845 726484045 954539344 14407356 464249244 999812329 147696637 194785415 425718345 84579158 553729578 964476496 31505287 380931387 155915056 606139442 390726700 137866533 521189916 617103326 883833574 261938374 217302197 417112534 101681169 573838324 472369695 734161549 46090437 532295 395138071 434690874 238387687 334629836 151779013 182167977 512530722 79372111 95264122 516297043 22656767 190001987 158812396 470324061 531726321 851578495 286272564 877580717 617394221 216156131 777678995 828739089 962148898 505871949 31833807 953072886 269877366 414904188 298249200 945113098 575833243 158841747 209640702 374119779 839771535 64841559 611609576 655009779 79105901 358712769 71968454 963716246 980200302 579647644 306267567 530275399 113331172 561837777 941329883 830345031 139043212 54572077 625113682 713147677 738646491 662029219 523529432 413568069 806184832 891273014 740769822 771714080 568528124 605723343 816763511 474281078 969731918 899833480 451816773 815849354 203404257 858372153 565714454 896216903 749810986 454636981 607923696 188986170 170785864 809889027 248337625 15575850 582913682 907006984 72321381 739422465 92438458 469772528 609371072 259122914 176091288 788053111 971728254 194678658 25004566 832985947 589524283 903846104 711966144 81635863 819983375 924341548 270917840 23454849 839533006 601254711 696599108 834744144 523457422 492073769 221760010 824342694 819685922 331448545 542238765 926042526 731010276 761020412 401998281 173024348 629826445 541114588 505298614 815088195 695057363 50301682 863355325 48016371 409254431 134878159 633297631 405386161 660730307 892917173 983710906 989404032 331890387 922028267 491825404 145547066 77235545 337768488 207101113 194986088 451556416 241414418 313230059 940410518 237206123 610092821 665980772 899720476 336825454 202217495 274577707 215918566 934089091 32932413 810566274 56411453 960062020 643794948 203705680 198720184 68488349 549409914 877254683 491596843 361594176 862361934 865239563 300363333 5939511 910852991 454754985 692009235 354450520 955411883 264026813 674412994 948449403 260886385 325882684 562927286 976618338 78722563 557638469 747283269 669732213 138566642 57926913 708847548 401576110 896078897 361478234 627202891 846907524 234546628 153219600 389535565 627398057 474234745 408850305 460585636 404110699 709520794 86555975 213255338 433330485 582480118 161887437 708522519 840319651 452235826 947273205 105022267 842031474 831340832 759781809 476736746 628906352 241130899 329559916 501008820 511999606 518006933 846357909 646304155 881692454 71131502 895836675 696752711 623891753 812234231 517194935 207850199 367174692 101220381 350592532 79089598 319288 549799788 831916962 752538644 728071442 945616953 868978452 931299704 100190101 397578760 914575702 477526646 987561660 811482121 268587821 28297261 568940696 123385119 647426510 209319817 784856440 563032106 422265622 654780263 509816754 119197264 40595405 132304816 632695157 883991940 740342074 987232698 682795523 344454924 897620809 743392089 33615578 687148897 629585039 968839386 880795264 773878252 447941175 605988391 34194775 483512413 713239282 733370878 832710465 602581287 838839032 943484567 540147823 677368464 147154951 209028135 578141609 760631077 668838933 543366995 316490705 79950731 630382510 802354274 257582424 343613028 685080274 891749751 717401257 561590139 251748980 753209505 653920672 824984100 715087043 492627300 836078911 874479429 520669752 600515137 314251569 368577910 72398636 772900621 328707786 453117581 13508344 687664662 742397515 255954860 88531012 99098139 878985318 159427098 575141977 764540603 985108976 347327168 134968322 861547768 652657138 536928109 220418966 634270808 747129674 910883353 410865269 506335090 699571 947306035 454403360 208450024 344861771 862436306 947325754 955959324 448996795 581436903 178779371 135189843 824951188 791896534 974095098 93063841 527840649 510067941 374314892 507377995 832153568 133030295 781044018 878123229 930331547 562235057 302469611 264426642 403577162 311057609 547625481 207993841 460939439 760118126 379468832 432487989 614806930 5820821 597221955 260446737 614323942 476026093 236713285 321174797 162510778 497003279 742914469 782465868 886144993 534205525 683271671 483164582 241421106 360651312 114373628 466059884 868826379 690651421 242182888 94538174 256103242 290563349 70520849 20977523 449237996 210508198 920278966 704653758 56506525 89345685 933754215 108698167 270117635 273534146 139380223 52774545 120654774 507366021 901605803 809777190 666857535 500311958 60261424 606160725 38017330 390071006 549098309 264622663 886652587 606941783 265223229 356060295 31656664 216989916 533605004 562013517 642452829 315612985 529540052 992131058 940376014 637758671 266025872 451335809 573805179 639273089 817801423 892792517 146016762 497837377 546590683 256484564 665000191 877835065 775826718 225816552 217767528 707525267 265094683 154493275 272826438 860251435 369183422 756578357 882098137 720227257 926093028 913850269 889330761 766289547 278353116 809792907 729659283 350273804 532756136 895198615 15104831 145015264 840631157 60765018 71723545 483120009 381028384 635807370 240588033 145040278 658648668 927675487 548890721 24138390 226114915 55065350 554507434 951662836 152339732 72052601 507307750 970924055 380609993 954240613 327580793 551189474 282462101 321244442 123340028 585928930 69340291 758066600 185966519 748819116 343429798 316351278 82943617 521068489 384658867 695249856 409310811 625181043 196267416 119693704 222643080 938871207 786208331 427348859 963340331 374821294 958194614 94665673 754528811 232405035 97762034 920278493 105982294 570309044 992070809 405953081 293273720 867571302 956704606 409090892 726000868 350442707 172217438 520006082 2656348 398460097 212102707 219718791 572457860 466416892 116807192 76684256 821973494 778886426 733405798 310293633 902398971 829730997 13176703 458659540 158173787 505781178 130318629 685039179 538450255 931978263 464435655 170736095 911712535 835649695 388752591 909367014 925120907 830618415 109964692 859277852 535900809 217822158 512947672 653956013 935654923 3908402 358893840 241581730 541885092 812081574 538542422 874283197 743512284 221523826 305139437 147273588 705295713 834994202 116575992 266980925 932842777 901729402 925678145 15436249 563583440 119754574 77673477 393313193 33173224 413308914 413007798 534664903 631693769 591549910 153876634 287205802 480087173 673898723 32631789 357495729 728745420 324530643 996521476 619849450 718615150 69918801 429903667 730933331 638812316 469216529 185552860 181484543 117905101 26096966 175258492 94176343 48184232 31158694 238552553 922583639 13512109 82823903 470201638 754077674 584529298 100738422 979708461 34005196 735868724 23038010 523177906 31971395 374691077 980819272 810081495 639839036 689439429 541832123 866327778 904219681 397941117 701772420 11820056 939660941 809388733 242380941 801744953 680532321 824412272 299962413 40553878 340182982 56156642 783317990 9108749 311472043 222104673 725213867 433533783 853099967 159338600 382888751 654898715 330968385 52015792 494055513 907270885 442613220 291963170 475314002 166599510 577039438 31051099 735290750 343034151 357272143 66527384 644075155 829916772 823814902 529919766 209891220 82909581 897021829 427789551 680809224 210075662 448927948 910515530 107948019 555639278 563312200 246983315 172297412 474257819 329124731 205777937 77578491 608059800 583618142 377964720 836827909 591829947 847869024 919631438 249595467 472113248 618422446 999774806 950771582 114665246 791221076 188945487 900911337 949144300 827419959 588334998 607373285 713575296 353204492 652100956 317163548 955945089 824487838 743096811 592710432 799229157 158210697 99080642 65734292 182259392 423402246 123561912 710069459 545625504 482914784 745951281 845537076 470435960 785891106 957653706 11830739 953006247 472022572 646784846 287606457 37438565 426517259 466694749 176731949 717935127 206528289 841309355 954659669 76481663 725738937 927990740 732381258 648738683 285662090 845527031 738079944 46107194 142885240 368134286 518643023 140595 181331989 662593222 712403557 684106571 321242876 956830721 795267746 982749968 240993650 373456348 745848686 272022900 624876548 313698214 629911006 638813079 122618831 651836351 299776842 332239392 860291359 774882682 852733212 773176383 715199948 382462700 743910293 530925668 449981126 356985290 753398970 762762929 595977998 624268958 496332762 652870135 195703884 983283147 56620483 102192354 835931845 454781727 521492304 394999333 628542649 497647091 734275916 633837360 65709998 313113797 494092241 838726456 7444284 553779884 990363454 786739057 303213454 511898079 70755384 623982137 498697294 485436036 830695852 365465320 144251356 938616116 346018719 934286637 75636036 661851249 1540213 202160685 558809420 994117842 197026948 543050664 982178494 915561900 827518037 749134710 866469823 167778484 718305781 378323681 803830284 970778424 354199955 368572801 426032259 167167999 656052804 129096194 265101856 808183625 711072257 993556651 669704696 354094858 147355052 655635012 82102697 24959933 421286000 58140935 900675165 109548932 916467433 488122556 596843544 917010243 593334998 942178651 762676433 512331954 570243310 589414863 819118825 899520607 911769556 127681545 615520746 16387507 699548867 830125431 399607057 147788590 612602833 738894693 744738479 961337350 38431675 230280374 852709823 341313505 56243350 660983333 166852487 200125762 639505927 847963750 285440491 1222927 281975926 776511400 45405801 459191631 214845778 72646409 518812438 866848748 710537093 589758233 16113962 973206418 909934589 448102280 620282330 119110351 669310495 249979179 299818417 862539099 139977802 42279003 874590296 393759415 157682928 413273630 662766310 810923692 262219090 810458829 709994084 447399673 883083684 463361405 391099291 6302613 926152222 993401460 914414012 766005600 492135875 294855067 846432723 164800006 980274007 741971055 594377457 352917776 855916701 797693938 316260623 7431678 975000933 816685372 65513015 229404122 353450148 333989523 89493962 250851912 346190107 853266808 371601731 979950349 742968525 796254917 213628458 987501628 457322734 317063850 285210740 268516243 599982418 464204268 680882750 731581870 10884394 155418330 663884559 931703096 962062754 880813975 996952326 526418098 8161148 744968598 360478393 340648119 45369669 425974449 271232302 539904729 854132450 507288467 521667623 790978980 497661092 983405838 923886123 596059849 888000285 550818193 704064367 260091004 779022550 141875316 481024116 778647717 456582605 601824076 931381462 618270330 935747358 944395878 733543598 760183035 145053201 671043857 156353599 182264977 518445693 141839889 62241356 585408327 270718870 650983118 890092730 167382382 461742061 740676945 708587486 6338574 111122171 104017354 634929400 969695137 678757417 722106778 285120476 44061025 640274446 161034841 429896238 312909656 676635537 509251514 955326002 115113504 919640320 508961174 35087372 868984837 517094068 381503802 261094850 14515338 814608767 586516675 145721132 944143162 74027565 96615856 235824885 608916482 860016368 366838706 462963496 183246107 253721815 52537341 756526576 112947930 722691629 236274064 320535269 249112354 128715050 476916748 466140961 177857167 282357732 84951438 327941160 739281425 393681658 195910941 678287864 45691701 697734866 389098984 392049922 287320509 944258088 218909859 344279027 87003184 306080720 834522687 452268216 894342048 238623309 37892842 354531991 866301430 546260347 96892279 63931756 339608905 128851296 475932618 450277058 823387317 547024001 605965906 853423871 180279190 574543102 748320447 163459338 903177247 141645619 191529506 429564066 496731035 911009348 565700098 867800968 177282963 110154339 939684404 338440953 708382054 558267906 353140673 339809177 194814509 300272292 407271494 902109108 416327209 946072497 461616124 371203279 429820407 73478058 113754112 980664534 516553353 290061788 533600056 854903894 752705421 699320314 48123111 275908318 137313021 662626010 107012015 212763126 250443450 649573781 299751095 113869606 343490538 237240462 394690722 510355904 389707311 425822420 984716707 19298717 359323237 116113022 614096474 833227144 682309789 312522100 57062203 865996071 169721648 718858864 22152272 468529275 43567700 912577314 781448574 532133187 308600043 411553449 964624931 947648550 147346519 183445623 668774886 646338865 828821949 833492357 846173038 168716333 911718381 886818310 316904486 210050582 391527825 919941020 641775384 153651366 963950787 549559522 161123931 198502207 582324265 290486569 674010039 367571249 654300779 811676818 877603359 628802991 613917077 618443328 191811820 679054621 103364463 841935332 769678311 948239293 11031792 628474287 314001504 127253732 65595013 111361368 210753782 778453733 246353294 248633449 475307850 636380551 247921801 752018326 614255550 58177956 569095240 559976664 605279111 205033048 186721859 610201799 617317372 247067561 455645679 1058815 883179033 868643688 577271240 500923278 398615858 594324782 381963764 716599102 655938170 70904483 971528434 394150261 738293394 944327902 872904696 549316957 626515699 109770838 891259609 166266614 343468521 220648591 477423934 56887792 480907662 175252055 410500083 433568245 551787777 999885759 150022858 969840310 995758125 203614551 522009122 692070345 181705671 3272704 157750685 998951210 74091709 524094017 204252976 14584651 498710619 466234624 457781352 730413809 882645963 153994792 909810609 203420566 310975321 743530096 273246404 396655679 678208899 9177547 340656615 703948280 550444276 245794581 67108083 792830299 513231537 193111909 302776754 238150893 994509690 902709729 467016925 657083154 966017763 754703535 74011550 825947267 477855274 824425768 755378338 797805843 914760316 648575884 28802525 146777685 828297009 294903689 139937777 837512047 452654693 656279838 800114711 246319015 403249603 351775645 556317078 105904806 76084416 885834034 590956140 414633837 851805312 797503234 290683769 906206874 714787599 20538789 668185217 234813942 57414757 343306366 797201120 794779329 274704640 9975850 478265480 132551074 63273776 928089986 968615757 470862728 656331149 341364909 68688662 201084259 758829910 937984479 817606288 836115116 986541802 503695793 241047270 220354880 968608257 769882662 117037445 500880770 362538096 119995317 865721360 364415745 72875238 627653689 624077111 704750586 866546099 427989371 368519688 35735374 619016298 878130152 331431790 188587709 699508804 246790024 134996344 204039939 871826378 271776263 309979907 773879096 172008197 18504506 967359712 294789411 971773264 508717496 150239564 216205774 71327310 747804965 352003272 424135756 125003360 139512145 498894426 473658330 365001978 784599126 614526775 741991223 570673751 993345249 449200899 563721968 908263936 621542327 725347749 320856331 392411916 337738313 187582122 678999276 236616665 555300010 697576675 253220208 876028619 792770281 435729057 583334454 281461999 283433195 483508722 798879881 374296795 29866009 950609502 584267280 598184811 674543508 133969889 238065754 131986579 85181608 331715920 853000305 664402641 909142377 836146149 795071219 488434623 511553428 668519414 627076373 717402186 226212721 443835898 521885768 6239939 696390000 69596161 830666150 937964106 387610700 485155678 286756920 311233912 404581546 174959044 721904756 578742100 461006389 501842451 911255524 50817751 514171915 530160005 728104292 357375225 109095508 62647894 885120150 434441349 546960505 772884945 810195507 344756491 162864773 308280070 508210085 368460062 790793887 22580381 200147055 366696940 681202113 548679751 864850401 653449087 822974352 844286179 809668915 415881964 178985705 906270461 59363323 133221436 462411251 606232801 998291583 334209920 692029022 61573385 998553983 414275405 22428293 889327353 216202547 423195348 604066954 594577081 535354656 216751799 451631196 385357162 836298204 945037996 730768015 692018881 343255839 701058408 687956413 863640608 857427584 190845611 234442696 129452138 473489828 334161444 740629729 754752902 516239951 559634898 102528646 815994130 271073235 634338104 469589440 238025112 745101651 911104310 439850416 702685379 382222034 586213244 608697711 860590538 470063326 741337391 799498697 159612434 734241678 198884167 846660088 41369881 20639894 505196288 848287353 959400105 968354068 478030059 3890872 784134564 902159432 549389014 610150663 339646241 1762199 235343350 670076002 540341709 861314970 585080215 553718974 999311456 794107699 63369991 664725558 792914691 379637296 277373908 985229758 671671297 62615635 599162211 205185662 156580994 142961141 771002354 378013693 324948058 917368852 184234643 312279561 714803800 893129101 320023986 476467787 958856363 855954612 239106659 609435290 50528463 64788053 440556591 138936548 30149698 197100284 748223427 600126471 172638211 837671678 502932848 181370614 428130917 740104810 788658817 96992885 888980316 440112368 996973998 983903874 265173076 279167766 780883318 901655118 661485446 245226939 26056145 175267373 957709741 177005315 533346228 209883409 21820526 44986521 220047236 913267656 143140728 403532621 927101150 738396063 276563574 139195415 664472829 746120183 761153265 395026899 621510 465017761 361580661 150917267 113090208 771650713 76111190 701924636 403118721 747153611 158004848 986981100 364293850 615600943 375147485 614319900 997868328 996059875 154041012 489726313 626683953 238312608 185665294 353859429 99085616 216650737 233344365 607403960 21339498 359015353 138556389 676346932 654583276 17564253 30220192 808456845 986205277 754006982 968472644 568823632 284323910 603065162 86881052 104415923 33121489 989189641 122074032 849995781 22214726 888331932 329685870 451051324 791172942 362584336 20199699 222231833 292312177 444573691 119562128 182601235 124028265 641450556 740129280 406473297 971373352 397212268 44073607 168837380 672982152 484970561 870694532 951552274 909018249 444345861 211116623 951836128 502074790 506897877 108582055 740114254 196163899 522176376 773104269 248800323 945864699 303944430 778866265 383062884 140037850 319357964 119044646 673029537 242391573 512672073 852056027 851405431 89203109 668864989 691059539 941473956 104425254 332112230 295377227 856192317 595650260 917160286 888264783 106392182 346656763 755803153 213393026 759890375 97924896 619528410 321367040 902094620 758206419 348042609 757860806 116200567 542188299 109290162 715662640 722991615 349777416 189313167 24253182 898759530 570192119 806774549 849792731 929820624 712451833 871909093 700567855 940309934 133633609 166118510 337059458 520603645 348219887 752442592 338836706 577124746 321806759 46024252 913566187 833203456 436739614 139491705 32765436 607938395 112390350 783317527 370391354 261879731 603019780 953649557 286368424 654469055 359400531 984068050 655116918 511025087 510748533 994668312 984935973 844634884 944466559 26903869 487917497 677980069 123062993 537753505 792640925 343432806 78863498 433240505 951271598 394469326 651610590 21897115 900157133 260442664 627173867 584525380 406615528 821848731 574637779 847608799 776138131 918663169 592933867 685255813 938777159 208547329 949701896 189856743 4130885 779011284 872323231 871202719 229523830 942974953 386621113 314578719 775256853 988828134 359239378 3234384 79452259 458048223 304464739 683564559 36269460 885629641 852426483 212278090 651353726 569368711 279081140 252106470 557581339 234939080 941043361 752707251 946375960 501429119 585407358 778025793 687863592 111948221 936431591 292444906 34610290 33419339 672405841 807156162 821016854 165889052 375160873 999519742 26708513 880834237 938911201 566601006 764926076 24782960 282652856 240305190 915558831 329537490 571520046 251297856 569910571 411384314 590075546 270994251 249452899 332666322 175159528 406463875 373168827 845348831 242039984 615845712 381550401 863052436 928029270 306886583 882231793 561579533 975834002 6821054 828853436 22631884 886256929 719200381 508203263 278424 487763596 277699360 481207015 264027659 658798002 470859335 238104329 425645315 19885284 726284629 657279637 673916302 554565381 609634643 783079051 226141008 185296590 86969109 638934922 933521004 627620675 822295678 265579028 389659391 683275318 281378225 538175351 277827768 317256483 978213510 902020328 451616568 957928955 285535667 101279470 823678353 72185150 524661292 667936660 786944321 622851033 842474816 887330198 438357177 389932023 907825258 481729713 415257116 174638171 809110337 783509473 948041988 702183980 998809010 91882239 830045561 173436492 231092340 784221126 432283834 523600069 946273540 840751581 797586504 994805442 110472249 488323585 523902009 16257818 677067188 672761645 82902544 619346643 360601480 464012083 470445134 731483653 326330657 469742251 775778473 136270334 210840125 660377637 168183559 707385497 604973470 155035938 682856246 279281866 613806635 651069905 219377440 571273032 357939682 162906290 701303564 528476163 909166679 507344274 777350139 156605745 413216680 467566102 867778752 239767920 68459863 874832415 826603677 197006412 680067138 247685230 405856999 564395150 752241402 199220951 902014340 93783044 757849778 93069895 617206324 413860664 997869767 723823438 966079282 206138724 224454003 155255035 597224805 926701357 815263113 466356615 237394696 37560947 938390709 775655018 791092435 749678317 311914930 341834281 936636308 325341630 964776718 754079282 684406985 565558220 128955672 81635560 718166002 294427694 117408001 298117885 807353094 276590009 682478885 212549855 133080218 290060982 276383128 879442061 420861489 615050726 186037049 43744438 47307372 636151819 841902078 726349019 960748679 714373075 883697582 822274318 303851782 864263259 983301261 494919788 338635510 758209995 916656176 206017169 211379803 830996534 443973375 454508058 219687595 428362653 866439934 138726966 842717723 282636640 937889845 557562139 644823424 271131764 527905727 488878757 764025496 489106594 809178490 613518057 110027247 460703162 94413572 569060320 381139275 20853548 945708100 942332161 557471763 61835907 297637256 24857800 941259034 981647110 863658757 385122130 978463154 425543870 580148877 685771838 373131206 61510345 920244087 21680783 161319742 812477269 878861671 788069189 195904601 762589620 789491039 488805497 557777216 329646429 806987654 314828148 747462606 207903174 110417662 74851460 964958441 729364834 769339514 139773946 663031568 679855643 453366891 345901818 575351571 521629734 769163068 522637321 489771841 537065 542093587 360235337 968178611 443505181 988238179 895218601 968715655 165958276 250549394 918694254 981702068 719266994 468352423 304436673 41752708 472388817 229527646 529597528 969879382 485413170 224710963 986818312 954683539 821000594 245542304 218505099 240614508 972941227 823425805 977022929 332850359 371517660 302617472 958484010 610089464 335910526 47048317 663779686 427365305 927824299 588100270 306044231 686052441 676370251 114814465 750524383 108561653 942651747 189642671 957340537 936681661 192615636 864830549 445834201 685330006 366302116 152882303 833987569 611737067 394438845 195105188 333910025 754080441 196751987 693229265 240450614 19540253 118542271 406419044 109139162 473100991 560079611 80642059 247981811 88660040 979441370 578419020 16007707 341773879 593832244 302667263 323297963 182897741 56678221 917732689 497545759 695318801 895712430 824133439 232953498 94228781 396116012 556987310 966750939 522572027 180208232 217546688 9669810 743472506 194853689 164951570 950681619 395351965 959623011 865261401 470087002 540447950 263805188 755802403 727662847 149336145 422524873 802060312 732333794 758709827 10079129 754135478 906631571 323441917 960002215 538213589 799492427 677215139 908025196 13212017 535396566 860893089 44849209 91196689 171338579 208504764 831518384 844069896 923419807 483743706 395100003 22890619 580329329 53933468 718975461 940807973 924495005 793531718 623629154 238009152 566266973 417923334 958147462 465384349 779573182 413952851 728764892 433552152 331887356 159107261 774038921 506299138 943011167 581035669 837451393 808744410 245855799 442115168 688933983 175528481 503644027 120236813 901197614 690745199 194594500 746810983 328388214 461489066 624732340 208656061 556251312 441599286 749255088 937888062 425549288 58006377 274196891 770104087 462901862 587986328 421686458 300208451 210683276 929888993 70794172 81124540 315496592 506537445 264824107 130552577 458282447 254360820 375038707 976419336 828992224 62734138 366874546 926941351 916638737 538602562 51586963 275501643 624462301 177343182 495911888 377828740 205269005 523128280 766061050 775088920 601418734 95356754 710377929 83353791 985810007 243138500 342826332 230539048 407775305 246364762 841570523 827390176 233983536 222562199 770124841 159108661 815080308 309705816 25894136 242541468 848487382 193449543 740684368 929690837 169506445 197125456 183745138 126516706 293185190 944669835 954705712 553409312 58752865 800916621 541735662 109491809 349329547 62330789 44356259 548645757 264991858 885179509 465798997 640375150 204570714 963330202 950949552 860031292 90397405 554605310 806900018 937622723 511149233 478701125 617209691 86210478 639571285 351687103 814547741 507039519 965630817 958341334 951980678 943250030 570607503 145403605 735452815 787323185 874671233 122433315 303186902 124500187 453070969 242236111 958025263 193335339 855941374 770770980 571164807 190168425 221973194 889219656 992363929 770463597 125321229 976561253 693420226 666652323 7047226 218800767 43885221 950768061 315072464 945655120 165210428 263571848 814334249 794096609 953821305 938361302 993721414 193237378 693361811 126384812 919820152 374616154 623100039 85807937 535984983 520214584 20521938 877883391 291205937 983402990 661778577 479499525 158340302 209686603 448412438 761441293 564343404 287514939 814924052 534909153 967702857 69894037 302512358 359964997 586904051 623463781 185550265 682890094 800201188 253696150 760467915 287765235 38931250 616474206 787188043 724108041 272094560 839191183 467979058 828092274 197643 683360777 223810426 923835833 246195441 746563200 630512039 536624491 271680167 969315897 335210276 136755569 483594323 729285593 999745158 753440347 759676020 939896787 702172653 519252662 235523284 987204948 694522666 758931321 377939985 435854183 639839247 954768746 239743518 498612222 65477314 682600257 764964631 118667549 13200850 570280015 781564073 725738843 504240551 853504783 886124103 207007499 928116081 889506972 779096430 806251132 860596701 956677592 42323549 639481020 642308523 697718731 56681122 215990088 601880750 785701634 113593791 796561845 52135824 277304760 807000372 6456328 745669434 93555297 236490059 668082593 793958946 700572098 237511671 678609911 290476856 810137525 44378158 438389986 980249958 528552482 929101554 81588858 390913179 572799532 113196015 979767663 118067506 642646792 885560996 246871949 471272169 127935041 77855145 201977787 990367172 38167743 872595067 479153728 579111827 215553054 476040929 356306430 443249765 281764803 102418176 973726268 711296533 998418901 376983783 464005928 45726101 652487085 30786849 471827530 176638185 295625516 857531516 727789176 407430359 472484400 999367062 994200075 330373418 591723249 885506750 299249101 651699687 456883221 93551863 77004619 352351764 430302985 889257612 928616734 612354147 631073228 569396093 91850830 312423926 982482606 329816951 764098039 972198558 215841420 837038644 839918386 233513481 483012234 991722134 381600441 142728125 626485768 612057633 732754755 253161073 146205749 363158543 966888006 72181116 60721783 356752832 36610878 64328341 757956332 54994385 175716342 105723208 328716211 137307458 7100336 810446582 786710630 212386607 711070517 961193304 921864114 52962902 493848936 41799083 581333706 139803194 190414498 438640706 340577895 489314521 675702828 229334348 535694869 721950883 196664005 363285796 998243566 747908033 408762307 820878366 931344524 508162644 132891910 403385496 433401084 373470676 449902079 234981133 303031151 171206721 251641796 175788965 651054359 46000502 127002800 788268414 593528323 846828115 824311503 619461076 865490212 181653338 517623664 307478238 451663459 214354177 389677659 711786220 446245888 714891554 244264800 215553676 59095698 392568545 180292705 472433983 939420801 89486349 802818434 550305080 418467863 657991203 667926037 903794168 339860251 617585099 598788969 22756561 567261478 304170412 342275533 951636603 446374212 635695723 294548580 241677753 283014817 353655603 882801883 785679959 431025908 29988140 698378850 437607114 458272889 928094111 720288648 960517242 152821831 976698285 308283650 513322273 489843863 467854999 610325807 763342372 364895733 690174813 259322424 764886910 607245765 215097991 757679599 639676688 333848854 176076488 851897511 320290120 790602148 270484356 243155391 381714157 184534468 541094815 750575362 647921655 576118473 403172923 865795549 589536651 966793791 434141360 312804586 300428101 302056736 55718798 181968098 648305302 693345167 558634397 324705705 615117335 173397961 373391915 208025482 842032613 220374585 967340133 638444214 958476697 521911439 757557257 623916017 953965928 345072174 30159961 189965742 174318484 111272302 271860795 398853689 750972311 393559356 810431632 154093993 770320898 359002908 316734145 716998662 905132961 627742241 54907180 199912207 547827037 908023682 978868748 251216970 201512798 637799479 26167425 927229879 76236506 953678148 664803744 346327849 77433944 20885590 69374911 498363220 970866475 927599225 1810551 793511472 575652184 729035130 82314611 66271364 721899101 710927973 294095497 944254127 851086312 181239279 746150976 471789397 255178988 1703731 483113686 120232890 855938560 599262315 911062531 195399202 245572064 702072290 358859465 537867302 793251311 731418713 755709587 161388544 870279189 88004649 782993243 674167296 856571049 532366006 563738132 968538894 533433047 102720198 831318954 722326109 178860512 404220775 521024232 425238235 175242804 367759361 115278316 649231040 65954835 835256178 910709701 402478187 45135343 331514849 740373937 650652635 110069048 350051110 111583713 789160885 5916843 603656041 931026983 459614304 369462126 661100467 54646464 395974216 822417420 733830451 479763247 895979940 668893044 723314572 776515728 408993149 781178894 330354309 656588674 328631069 717535041 420018782 838103886 799841588 701183708 723563190 718108233 814846439 60802887 10361010 565506968 824365894 582442651 125704021 235945575 296161777 358344163 846659891 769503244 470050330 588030213 371957397 447437105 283986441 421753389 159813307 48463557 226780281 643406667 453150127 276488853 253097686 504951877 531085453 538519573 590763968 678733340 80987927 657718247 412901494 409467316 190407682 742414189 402688241 38825424 773120432 678279767 795080034 946749619 699505626 67652679 433982336 318610025 458339818 148012941 805972243 859563930 434878519 307271318 936932538 994641913 476947756 278250972 387796859 155087371 771406492 672208977 976264297 182392152 566150706 546127975 325021507 973217030 398349528 742399221 625036994 302487700 712206821 184657076 341467340 254786834 317971075 906245577 345416399 80910249 678497448 57006253 846889877 417479935 696827047 118189976 651097789 43790987 951308351 943227793 499072507 461127822 835219970 731297272 977380082 715122439 114733153 673302680 243483133 111110261 85714631 976443139 255571237 493634445 694208937 892940589 916777606 124727453 524248641 305085097 93665282 208456252 722218658 631284669 232951496 847555134 311217743 655077401 211483488 606413052 123902958 217110102 379316823 1518657 394079127 636033789 138082968 618656857 338863588 851944760 230884911 318001200 489335498 516872992 731213329 70446604 28974743 55103430 734863078 592515219 667816235 790202588 187514650 829283177 666100798 794958269 661796677 542102238 496979813 769576082 236645476 119860137 479616033 298827695 338227157 370542579 186236390 653805984 329295219 419455537 31129199 895614383 953784215 204707319 741137795 899767980 230451024 672520059 634967896 167135737 270153040 379670026 590294170 9322314 51264668 664201198 630705584 567873578 351547214 655501660 763284577 257835902 340605092 83880587 950721101 992433374 232161121 586270320 44503987 983004760 990299939 710272487 942539670 743917451 668609744 140538622 233124848 828565667 334240326 172945246 575720302 123211404 749231181 886164 756353190 988492998 888046692 772022149 964700529 800718117 356920806 984540880 404286138 333689222 242740636 462516326 80013211 487467433 819120728 575251884 115460696 265892746 914705979 493259414 525785307 390869206 737870728 307531462 202525854 638641401 511078178 464497556 858407599 335462425 423484071 271347567 540243385 658651492 717014412 8935353 573158917 442269382 186745639 924338433 172248349 48056976 402216517 164506580 491593130 157853277 582069126 53566469 42021887 488779521 109692148 177984892 151161047 732287890 157377246 487351953 339137001 453018346 363985962 739319216 761799056 749736443 206671060 539071378 442024422 51547109 921095868 358239207 292168661 474462601 219912103 692674657 206660113 213770328 547590401 799524917 70636033 774266583 605287241 110068817 438700915 919204836 484039456 612608475 539642776 339039179 789350355 674017564 616557854 215969115 214825148 115179290 265817204 96164386 336579756 408570501 845455462 886159156 659981225 718534925 655359786 980239180 542044387 386053097 829756109 688265451 1744366 440772932 686001317 526100578 835431489 380478508 620421370 752260204 843448180 842233087 928344483 413719473 415251563 114365378 975322414 937265968 832488366 233863594 389833562 759285966 33307774 464554634 631352635 91844779 490629289 11128381 234601355 907634912 62489923 497772713 201888578 271426113 6086112 251867638 344907388 240450948 498908727 683932897 498075591 381286056 845340464 620081269 262161678 362540196 751358820 345723643 599509178 161535649 310569082 105070187 285016633 98945858 755111852 841162236 666560373 751788783 646596289 482427285 698211020 603525986 190633699 128489652 271845689 428162270 258322909 130265958 291616726 266442408 51081256 640036982 438504645 98676702 893249385 732639632 581897795 104994459 992005890 983891533 573358114 958247889 114969306 270888787 505831512 78111353 937073131 493610080 864597611 84789818 839063424 776169228 996116404 354266831 522577846 875753172 366028292 976338608 21892387 991111963 469253399 695359965 555347654 225143676 151256704 428881507 408544382 681506379 872692088 545345036 666173297 506794314 179919649 838372071 514662298 609536679 905916207 602316179 330534235 226953700 673984024 981184533 322123513 488842112 20703144 463349602 299764100 827311854 717710168 667392554 555179349 212705671 771338742 139668490 825968494 49960089 641240844 515280823 273172432 827289800 865517823 611571817 827406649 487385408 518074820 821114728 428512353 479201105 273452740 178214842 610953098 785403102 341211964 215919703 927164068 471129380 6343689 328417664 398947970 277136188 810911097 108597413 963811115 745446999 121540571 126846627 251150666 755944397 254912846 625294391 18847134 399289545 93080099 818253032 973702517 53455734 557274776 680265467 728038647 740045483 96205028 369149301 640714627 571714616 364863166 866844454 811042350 842438275 173535512 222712255 684838518 168564794 618647601 763340723 54251259 420206363 34362323 248619260 501284751 221489799 993344395 114437554 337791994 808897325 623779839 779360767 813854086 547163722 479487980 613822666 337342726 255605699 469672640 957458773 707669531 520221732 422490090 945679681 26426710 208256210 993946980 420612854 345137208 898157680 658899495 129982714 132713611 591315311 871530154 928830781 724779292 378437674 829187213 883384175 660940426 797757959 90994744 497115505 549506629 704279148 636105188 664886018 435449008 255289212 815699094 461869623 881752789 975649266 723215669 621534610 927891768 772935588 610883144 991782620 291166212 219761393 110592101 162031376 362813398 761924059 69635697 126105794 750914008 79406690 595738545 214066477 839313948 263469349 104346243 275610811 835773985 375024219 665203395 633149699 544499144 585914860 602574666 873461030 237851359 231101225 74817224 132277681 12868235 848360847 741004151 10816507 306525537 78146845 706746672 482638590 923168418 903074832 728058496 139958738 206144128 674773682 151668508 588758718 29184402 485300908 736679306 82976241 838730909 818005043 947757750 138189115 348291884 735960023 592879512 461556477 567232619 663168590 956778399 803296208 584316829 704599717 761914648 917763696 218432493 520869332 114184191 403668719 410823968 914145349 474871916 114439877 318677525 348837936 262422931 624536501 364885569 928184340 534542164 170409036 107544445 542470235 877780504 540438299 606024173 967570335 718358422 543384461 567488991 763758187 827734603 840438938 908597764 290426417 810656473 857530206 857896767 375172300 753136906 242296754 608814833 376956282 32451952 603252925 411231751 738786459 777798031 514429891 174851718 802227430 167220083 578034013 898196245 823691000 685064019 192692962 173943883 268643641 256658589 937549235 998354033 542304255 288544961 887687244 528002172 472118637 671079204 944602951 204855638 73048721 564267589 718349045 868377499 461108553 510463681 286864486 141213334 208443421 156445519 40023254 964838068 174620101 577562601 353170258 497690971 908643850 63492086 977813515 519469543 814383142 431272031 807136985 743010245 403430325 282383093 93808394 152553393 227707009 984246825 27066188 385645441 104633094 205581454 483794626 240440173 915264605 720253128 835881692 836980152 365735698 340616872 566681615 681277237 421816844 752123606 799324141 84102912 346753868 591160381 959837019 956811221 665938999 689687960 772806859 616369746 921352583 859531365 122096245 285752519 156739825 30258472 180677210 739551452 479541523 60260481 161186780 598626396 914271726 173474100 355611697 446557015 518521643 223323787 874220523 558329379 806002523 858107108 529092344 971265793 65451857 382755311 460711874 106683001 573595463 897754870 627107201 935952807 651657889 646134324 990761265 243586376 673483267 634460680 979129814 599471799 982859458 412476768 258897923 940020543 360823233 81706424 706844705 123492086 544119908 162204687 825459424 845444548 86258421 427081019 353621437 289335123 400815999 771181210 79338783 800442874 254410391 515498963 537305245 366572086 760294502 635084881 218158967 991065799 498113702 347973362 851111473 240094528 37174522 554562842 844470617 735407297 757824939 716277054 869149083 709416880 546261321 632196633 915133435 713401404 709505579 715413908 92843952 791260256 285243569 44517299 430425400 771220998 504053203 359272421 767904121 540141865 400333546 643826492 594192010 928780168 71845466 363509806 869988155 573874868 755212068 328907228 404780172 102782820 93533122 56472768 393759646 637246667 930321094 790084032 509483803 982990272 40895546 240527298 819682355 532474844 296447452 893771013 589232640 92462670 275416806 554908470 539398918 347125136 794150447 920254692 351552058 755817749 434676163 663708677 887612559 383864034 74159067 213308491 260910096 139818508 891064327 185536582 521500930 116571514 929199929 172052329 41350113 200354315 741691646 504068840 747273937 78433159 352218067 958576313 761134576 358165297 720692126 280402742 841460144 441831143 522148112 50518449 606068275 807069756 282696920 248282098 815632532 806444764 239397835 276213118 184946655 717035310 244946317 146934134 573279517 504325428 375631150 500553370 617991533 63775354 408635107 365740134 643416287 715848578 451355832 456823079 65811956 561990439 25754180 33178054 795948519 824169251 576200617 824485701 722175651 243985387 599137141 231145822 631527843 550790772 364207345 846769976 399884859 971031400 228030256 64833027 572258563 997976284 271593621 214001986 827422840 654175203 444791567 134373989 340462647 716010990 566670544 818900407 563512387 680942776 104349605 391952320 826565892 146409956 661086876 341256167 521413801 132014931 296276319 465242933 374453071 91822141 731998729 462616415 513995263 909345873 498883397 882758009 321269173 153555519 184106455 219344942 181819816 28423501 520705185 742944771 202490443 84062156 673213272 225384635 864245752 363664110 407148920 580974557 656023304 71731861 460924710 482524471 855836374 620921231 824629418 715097652 108487365 540960041 354884892 622448590 471732812 873076475 987289405 510073855 63901431 380250300 672363090 436945608 430181052 356020619 857688807 942416542 881661743 540209116 779584048 198558520 31250344 545625961 46403154 162039610 75151717 378642736 140821329 704210338 125325863 687081542 157177440 493945923 67669432 261285774 152103328 894692561 132175644 24696502 897423440 570867732 333307233 181450785 981018057 1337798 43580343 503025282 775280729 353179592 367640165 297154680 838515821 137465078 982829461 181771583 841198163 613297267 226380951 132546788 76360526 665422106 110446926 714805622 171528797 682551432 798624742 937702393 24942207 956671061 996155863 508982994 411900705 859495523 644048986 448886342 388216780 755447112 627554898 58714782 261363986 577093238 362845477 8995899 918808108 877824239 589248258 567494756 840262881 34653837 546013812 455537777 623206502 793664543 519102669 811881792 254458244 606672653 819911345 332297152 510636724 329865101 351473257 571715821 970568099 402801416 189994744 692170681 683716493 456847351 936633400 358682742 796503917 38553092 228864434 849613913 241318113 346728832 859546510 437872395 861339627 616259189 156299824 377109046 526202631 547535857 492791530 321697880 180410735 898762727 343679145 119918183 333391961 418649988 413808111 325284751 763682896 712292778 851705568 284892039 984969183 82722364 997289382 508338120 482642841 516606705 714687141 650313390 201627291 438551892 324074573 77977628 709925768 806652875 628245285 376546464 962633657 623030645 539621156 972423165 945251296 725129528 387306986 66815951 967771049 38723655 814513046 538296202 556959753 613433803 315247571 373319298 407319927 953895871 944879256 492346811 356938309 390049729 611546906 530566944 862296516 732011869 426722390 522533823 86877306 821868582 834920487 929448948 510769484 200184267 93768522 441805990 222763288 375463935 330692872 423701998 561566796 717679393 674196335 508316388 88079377 150240210 386761093 807021650 986642123 914603179 690077088 167395702 376360845 957252102 739583481 94801919 523312283 820369898 311562933 492737036 596744279 24780818 79921497 181538702 379344164 837538943 591115712 869183402 706306970 348998094 210992509 234543903 803191112 598321344 369339517 123673097 32058030 25370693 172976502 790612953 122731046 208312667 536685317 795479645 831360395 68649588 939044586 303866888 125149872 140446121 987067735 448984398 246545514 780801750 709627445 484999104 160466073 810132478 170890363 417809811 464577546 232325482 725323098 413357522 328587684 361245596 721619299 192038795 511699043 779084003 399134593 508257872 934162781 91540375 599221820 553253406 951627887 25746450 65595846 268669709 875241802 231246605 53867663 232417368 177490254 597959428 542687368 107210188 614282336 72122269 825651298 36155269 869097538 458864004 153304828 689518595 990634995 211242921 333495589 211775840 71421008 359325477 250657320 297990483 46010082 726123246 235912176 703687733 875267310 683763557 389616912 42846861 790270024 975319562 497323753 378558012 628562104 706950057 29378480 625492060 829030579 145479224 236663256 813866786 667776082 883918177 597536373 858724451 896699079 630467931 286421619 285428788 972332490 459728571 161420022 674802978 66116897 236173909 406019389 590308780 249869339 263539675 291136349 989200276 627056913 213464846 764667343 257235594 880761798 974272612 345336165 76534085 617461578 239356066 740766892 211014736 539405411 847535529 500937110 7662530 88982144 444723320 707124290 676924665 314914372 262763227 82650565 982727288 536664842 151111904 711940089 109558110 90770359 44546679 487563473 115170417 97413942 533801185 851488714 47621273 425113277 939541689 501305855 306206242 960217812 204301410 647784582 774300506 185953992 311378283 319286807 401899013 312102058 262755679 746332297 23423498 822402447 768109533 868915391 336701699 709968301 354929408 131835034 792178406 107254371 99810341 812762762 800575792 484987426 360682235 386107524 83765936 257509766 237270585 488370907 293058145 991167932 280774083 744098045 361816392 135320160 351272952 970040433 20479535 870109041 100182655 685390532 906851630 741462762 556489687 156162178 945076641 456486700 752119420 677248825 140764955 255798747 181268710 339982937 338908777 648546814 191537244 730997212 313771288 916757546 501525242 564340578 612743395 567158552 518274151 942513893 802673738 274117790 692711661 61574099 67748072 789037865 25712394 424810601 484886250 582575005 740029750 293410071 205793852 555382089 754080869 755179832 491439639 565546377 969664926 243657071 548654449 197444390 822910474 885761276 457849279 994272477 779532019 409553338 406165374 21270408 452528598 474433466 763554751 719259654 581862896 259639897 758153341 585012043 32058805 350729908 806875394 942850636 609592193 49008756 596341739 903800957 440704416 590252927 703680921 6220941 21030566 10040466 713003577 937122677 238204794 159613954 790936389 511466276 314134924 662997747 929118092 344710614 187507038 139696697 948510011 496120027 360633347 171946254 660833261 856769190 884075139 648028067 970042684 331652193 718281064 173942801 836604194 312493077 979321321 204792370 782542124 124546972 733196975 250670340 788090478 94525760 927384953 632156097 849003670 873113200 134272575 850818106 636253617 63080324 523710833 52156530 684208485 356389758 554223435 21851546 286158405 910370888 55653887 698480055 493440906 119045701 217674194 815907876 438040525 290743445 13740170 113004952 728077674 938137697 552249578 408286784 254396705 83106564 917302947 922155210 959428468 188635308 943267975 834948522 73663605 389524134 536388719 866736531 558258891 345257449 225300190 557615217 873820016 497633575 115258020 874380968 294220754 383423435 209589390 952940125 593169353 130540390 702408774 844876250 236917087 513003141 610833231 558171978 434778438 607757580 481280092 324658220 441234771 579009575 10535345 776722433 570205332 250211539 936420157 454060018 149968460 545330881 140109680 848486912 181245951 789063062 952128568 682583275 729677080 655794766 439642658 828425313 323984863 274010081 866591020 469842438 454946836 272664366 804840804 721554666 97554231 370647961 505859249 526437041 63692891 350358433 814761381 133984758 763062092 146689584 77271383 213141323 781136598 946792776 453937521 511417179 789174919 917767587 129605081 343479855 94436546 565873204 345956753 968150929 32579266 863519803 431432839 648127045 979177540 131468656 872347898 217726136 464070130 495294417 308911106 726860186 437430400 649322733 957979708 922909925 924958995 101611549 707783657 449385674 340737615 177947390 961883798 486122238 27981181 530690254 33320165 373559912 548814386 591152992 606806482 580564815 388204297 63856103 480895644 738059901 125378031 354255569 863963434 454900456 789172988 931102362 457645659 574389553 636752398 703612577 688792618 905016323 228029284 532726525 110012875 825244617 735626080 696592970 591236133 911336183 766128314 717136009 811477587 385046483 375970182 737492439 435935152 449000508 695735915 333996014 79714077 58217759 106677039 308634440 871849843 359663478 952683826 337156247 495569437 282083711 833416131 488200757 856410670 263714905 727160643 463028712 563982480 778282932 378969996 650957797 494874231 374124180 516909412 47207611 789188102 790375340 888608031 816819230 135021433 328474015 448033540 293253055 565785829 860249714 607120359 193123195 592283861 250207271 300945462 384547022 508496891 620178534 279648591 693541771 903004088 712460799 415057386 958386271 334467686 271433359 697594947 330812764 512179268 766104253 658967957 564935277 280282852 288193972 433885308 379284596 231707059 606838356 489574450 46905717 644198499 674888579 441167962 630016888 692129157 881943816 652752685 28004405 306160348 489840096 518875916 625568091 62342931 415832350 208872961 846749601 734183570 350721430 430106046 596436244 354159388 420625711 577600623 859641012 409216707 76747974 533620081 681611805 831005412 242541701 109757819 956524916 58329756 555980328 52751887 421530945 469748337 787611151 267872533 609212618 753711351 712847719 568229162 185996266 164124632 240213923 97440905 338427512 426302239 222345410 931152059 375107925 41133492 601914351 292825447 823984285 286900884 69706157 917030136 612338356 970585492 375062824 760291805 329518560 182182372 827223980 814106801 274941487 65139908 858677608 185936007 282796790 932197950 529629896 745017786 418202546 377270548 332220123 33376208 818191888 602224766 955229672 137704965 974829727 276115194 226646516 414384852 162969875 146484518 696405714 536747781 792936304 938540110 712072189 840032137 64754609 956647554 759872165 948759435 252624619 294899549 965772171 616397917 981335202 722869354 987995922 834435216 278816192 340930160 897376799 386846679 321508405 708216604 145180361 224403775 970038636 877259731 138755047 144912084 807183838 350110888 528662295 816460008 277293317 598470639 828471306 772308621 24813707 345012368 647089392 156795846 425744906 590889504 654814733 284452323 570486198 951866471 694110401 402130573 703424776 732465270 246632153 808195269 131095571 800786485 375455061 367786256 328658123 217865679 966504445 518800408 370574861 428910824 110548665 245630463 723964040 725470960 996579024 294941332 238231384 701920690 946216603 621187795 31957481 260399582 472642580 61809570 787028341 415021580 600794039 16151584 908141596 675557734 701918507 567253576 514819832 282530477 815083387 513522053 571376909 244725708 749586595 615105674 862729927 544865458 379734657 766460313 188460744 101576123 408486527 915066538 884873602 783053647 29758778 460870884 751915349 319824742 658491602 808135508 882129207 651128932 740914265 831390936 44645636 278430873 802461708 516706794 26721777 715985151 537392621 474299903 686335331 178016551 898092049 465092704 95466289 204894966 701703550 922164836 946510278 830229834 269347355 812554560 985658877 247728175 699777675 226961554 66617801 638247353 71509093 856953338 211370100 840829614 120059108 324923953 38375704 178687820 38485069 436396814 858385835 259654609 57769446 663770107 637643526 496673553 963479838 886225511 66391720 827849873 612676266 615371796 780684782 79975962 576253102 696152163 905682650 356890211 58590899 697397940 219061486 448220206 794450106 945243992 146197298 551396795 481979459 334503195 366009255 68522950 631434734 734020657 224843795 941429106 218406207 95386521 489284032 160356371 385779840 222668515 542551751 676133067 184957906 679111495 61486465 924727186 14242976 679145991 301199784 501562089 964299274 190644405 87790434 293393019 411288193 545386366 179918848 193724240 361526075 886557791 847078475 5150766 267545752 625072402 560787891 110271142 386603786 344905520 424084278 247466201 451499544 642309968 403499104 916188311 987787103 878541974 557208618 349392436 452985975 324549795 169830806 799526355 177302691 626677665 462412037 878816072 511771074 475649292 554426809 134224257 889916923 783204898 964738039 243883525 661483991 208269488 231112387 713923157 897762428 238213879 938184329 229148732 109540358 42450185 885116475 419903045 702778191 990596090 751603801 839291145 420107569 74319878 424560293 538679222 673170096 308935329 274849705 783710316 653240874 328200316 369912559 391795677 817083354 764900953 920467388 531839079 482657181 755166 304544378 951550790 174957454 179410116 354813530 813863891 966602075 348023137 120891567 110329054 983608806 975011438 76139160 440560757 907278976 77445448 580980006 30079925 348038959 25110556 328190432 517437542 939738575 14871722 103271956 770304782 623008807 100233462 973044973 341395900 644289627 948155639 213195127 259728211 267969092 193416623 834618004 15030157 78619451 934901079 936459602 326017836 362027862 796517158 730125179 997477866 714413847 455204749 81335185 528828897 61972282 828386902 283617065 944012902 596925541 389731516 668167947 923220821 1078096 987025 721212530 524420223 728801263 156009879 904744671 528186840 296672987 125254527 497404544 186293866 762677019 322530156 80958686 264818445 261190107 545919060 1272326 582373926 697492086 126157997 636686245 152326856 104324917 475088097 672814424 340459296 488321127 940139967 852590059 352712277 475661555 912263910 607075505 703732281 309897225 749742543 991955962 180445416 30027450 283622540 904605967 256144860 749020571 287885178 971042523 733819018 316453769 5495 291650450 241221646 596466494 359616812 548317797 379716801 789204086 481883461 382852821 130241791 264251738 870337359 862057078 662315520 30721208 749040159 851827815 120750334 921070584 764954228 488053601 906081882 655769620 264442084 999171381 7175975 206120743 203879594 598022397 457124571 492401096 171451993 683646913 922904947 875506423 680652422 754573491 945808870 317556820 609117391 641624066 707946618 984358872 528961734 337151465 628833422 612803482 580738329 624650313 385870327 369883857 232058407 663502751 502174206 180052334 760094948 608512085 55984894 632680960 244607999 592694173 560184501 409505166 280342261 600782141 556528346 465267745 428176117 872385668 383085964 21546288 864557110 47584248 665238431 343631519 220598388 40526104 511152852 269038437 933132232 316089952 110746897 268172599 306549344 221496978 810183677 404747053 12926139 316947131 550941196 914119556 499192229 786328569 898071266 225564992 867195521 482704909 969647233 842749005 479993816 166609677 947415727 420314044 464195709 526089573 356646122 568404821 320375003 779457436 434834031 363942706 146921720 80261282 419774956 500991804 785374872 333920712 499440978 401034423 681803968 683712756 634265833 421047123 674683201 484202725 833407689 216809886 949046876 295837014 274793195 677128603 348010531 49957559 109063892 860445554 583817522 221379015 471377234 546866590 666153368 705771758 341875155 155763806 846796029 168618839 152437359 952198983 209912462 371382852 404104309 414781074 434805074 842218975 57427865 968369657 941208971 752804637 350889715 541722658 710336929 579474999 422413446 198085402 196197061 16117927 301549058 852468136 177841066 91408080 750996794 151031110 786305722 974074051 552537426 468709780 856623443 221083640 686833794 367576668 261053732 271482197 546101241 211769907 310697583 93773000 318322326 604541758 240383764 803371258 607666059 737614524 452533866 378811504 244258242 979030723 395846177 279212878 4269340 460532141 456109680 42223869 573487480 902224570 625345583 769700432 843551866 585750135 613025314 271746197 387937679 533441737 29080120 650886639 781170638 229041002 933168662 387051536 154977589 949983946 482629938 379527164 901943250 444264810 466957766 48688939 900759571 981282154 907273846 664687988 84352824 533619248 372395566 961377400 206377727 803889727 760530387 400332709 378059511 612513515 602910214 416679593 922398939 229640742 205330415 967109747 337185934 979201943 996332986 541149898 416052953 259980789 773926740 536769907 620607369 634566429 301537450 208233203 164706036 971828917 856211610 600512444 766478337 910764047 984116492 590043057 551815716 443655397 448410170 21200165 167697587 947167043 199204939 745941497 419867237 322552775 273271378 911805832 977486703 802255248 746785458 716685987 170454451 988742295 460393487 129479118 677159996 614073200 360221621 592793838 55675789 53809217 636669676 561463743 455180914 675485594 152388521 842928689 529758840 592582474 744288801 95906552 113570334 632449488 678202437 904118621 594102910 700116457 469177185 552127806 665656875 405300996 952933535 789479946 325817539 561767900 770704721 729358393 616863785 695460177 27421408 125846043 386891205 126641325 949999890 457507556 152882049 658791785 890413274 160609881 948524369 718515627 907033955 710055500 792980209 798846621 710115578 21266765 576104557 186225460 310317204 820501461 41611049 824429284 615773783 457809811 943854671 823244714 690136903 670121568 408525684 436307579 497178353 506547010 882728165 998174496 610984243 485080250 374435800 281310200 290299081 180994208 792164326 914411124 842089018 768145211 293727966 713285064 508023068 483733975 835641220 991606946 80922034 771843594 926563270 560003728 409514963 601685798 454265525 349540999 69812881 569163593 880369710 420634539 992200876 985598692 439608505 203845261 859853193 118365100 412872712 54592526 356077132 111395444 280805851 919813242 444105682 929726598 416919028 720169028 949545862 547823555 886163028 617565002 91302661 463505293 773883086 440618328 713877619 387596134 301901503 900107123 361459592 508829223 441590286 90036230 771443026 787280939 625451515 886467125 613741065 149895916 1256502 263689613 146797557 809340712 967869966 168922456 119729592 829681874 97509016 421348041 565060697 8006822 917441978 826883627 564451698 698758434 201245133 884738882 65045733 848076489 835240025 903177367 961535276 785680543 196843133 623864538 27650357 93504505 958087735 489315896 630562551 319111535 186835953 95510010 945082292 778969459 14913283 688224742 509979529 570105812 290046068 806798214 283268731 269555419 73468395 124180409 595248947 711220169 84635421 560969714 627934500 651910930 661163870 351588236 119646099 197371389 262039612 754907364 506013479 983953866 139236064 587806064 270483100 828188524 894321875 170296768 87240758 807260880 842325023 360972574 282021323 595169849 857114083 559545265 384050329 689952237 225274010 104521008 802817276 453360184 415719232 274681294 883790492 186762356 740242454 765995331 528747344 743194281 202947810 591397882 735899697 819228961 357913570 965189409 729043287 66804691 679112512 372461712 167277083 184105550 546649024 169215339 765606206 435806972 589544065 448619254 878339860 602059674 790589640 345350084 961127483 176988860 174308056 628053741 928300299 449581255 584196433 156049197 397733157 538796841 315975687 603227707 138326501 372321486 750944591 325650172 532742846 636806309 792723003 192643835 894742067 12692042 179713336 570547805 796079167 810773749 56646889 585621211 526467418 58541847 308195220 108789075 402379895 786070331 812951092 343985091 255944333 190635295 358720638 220101050 493517307 630218329 551393700 833684219 963120270 450802626 480925079 197277830 571623640 15084677 602043563 596221568 257540262 349345913 623167073 271557959 755605156 637299637 95305085 213093640 737961097 811995455 306692828 342601866 666893768 563982872 77669921 15096235 810388402 667420196 673872749 614232731 558653454 650517799 422481260 795298399 347621727 580578431 42480522 737829909 974448851 730549627 438765101 273836005 598521749 547137676 950205144 899242643 881216442 553807369 786746250 140796534 763291469 276789004 726958027 952295834 177496944 83399735 970227907 507718920 312655626 429250704 571781584 833798939 55097428 859428649 587548000 544475513 695447608 332442600 552773263 901304997 280209406 737646863 342661975 719831708 256302098 393726860 18408907 706313547 129516333 751850717 951234481 630202997 890708061 967231817 310365781 668973568 322828939 647069984 504646505 403355591 312057571 197666395 443125200 833538961 271353243 708947612 144152000 526329140 393640025 721275837 25200911 838031142 848095821 952477887 71159487 17421324 819620045 83946597 612261689 14300944 571595371 413705135 914109234 239120218 74278747 89005532 907370452 681033596 163571545 243743639 464445873 325478001 557683955 852367252 6019115 622790925 849526930 875838215 920194605 696649010 772897298 505191377 382552136 542892027 826306945 61539503 511495831 916608059 374608057 789524534 114479711 695427157 820250850 844696303 595304265 526186334 880817087 670914396 682759282 485108109 47767818 158626518 699322886 126463545 976408814 937801736 157875795 637957271 485633339 328411156 216045967 218260273 554865356 748680574 87573785 20349114 490161890 386387688 430000213 378170394 2678139 72233395 260477643 465121967 4966715 889457854 151739037 429445184 820610540 229281911 388823954 478162217 144910904 327357239 695501890 2934396 389000151 851150782 236419127 757840404 125438231 720491347 44659610 34781767 508267507 373965482 221255668 677474051 816591461 403294266 555275074 96653143 321566714 471499865 675610659 481040047 271668417 441306619 847405998 224522636 510934300 947487610 473835989 404296007 103368938 750879759 521718516 768912015 979943402 282903517 822728106 442920569 755220864 190483715 937768062 566829766 701965771 414984320 621830537 843253865 995848563 941696819 194210200 874978152 572280079 113508480 254407486 145987132 728228734 67476702 903932444 414003926 503385693 56225788 409398718 123090191 492145257 834697302 619032989 669878155 110176135 631587718 997757192 867381019 706829626 692963718 562243853 106849965 449451771 845188786 875192831 649517368 667249461 567923910 275864885 794019144 824792914 958488929 626802250 178393603 187515312 835135774 881828621 34789991 452846051 909793956 324696034 588896986 79243077 872382186 680220603 227028879 92184128 9810347 480786398 146049218 975597058 586440349 476110980 394775579 772882314 403650775 341927416 44321077 54940910 941247635 204033987 51396015 885982976 512300456 358256641 954832096 16797557 407833195 671227035 377114695 528286817 998036537 785834693 794283387 300558268 136464916 130220165 385833630 41180018 699789772 337387535 971520719 143911407 104670554 427039417 756647461 517664281 326953475 959682449 929517847 483811812 574892749 368853146 632504088 496122931 331844915 946051460 69566239 655301990 343509047 162358333 992690419 610183897 284138497 835503650 172268320 88429883 347421823 774156919 388820723 89882958 816848436 605177359 661671144 389200956 517028193 347150002 216409002 563747139 414520161 468071189 23556235 583427603 775268226 651721355 584102681 776043343 44599639 892924366 371200391 820368593 694223396 957379274 990051278 977866278 21487801 770769717 117457319 314479942 31504376 608208709 398126666 396234191 854041590 888774775 421632566 455767059 498279661 634957768 840766007 535739580 905502580 950313533 555768267 592018028 673230583 60458611 171901843 499737596 464087354 484761899 90898402 6958490 281604312 592842194 995076854 659974297 374941147 677473006 369593981 249591072 274427858 955438345 241488215 356390340 698094549 199893413 526592424 934064790 808504099 690959546 995188416 790176145 973679870 825610408 420395309 396615725 468023365 622474011 748341794 649661996 166491074 953284431 255595741 911157722 231880613 212405722 755064522 835352304 21623074 701532599 206585475 135607510 747087780 276121528 348445316 280428185 527127569 815372776 439812016 517284948 910147034 713641972 843687858 283200446 521696131 973564220 913392824 906208294 148472935 810295496 40059474 949872794 468426778 809719813 261864854 476837605 771904983 979489548 806057900 679822407 585738203 535926841 224552811 100477870 851245942 836712787 413393622 318281204 834909682 257725922 324802817 848815053 874066079 569096379 240350970 816330864 506169875 581016279 307856562 999370556 517885932 390521137 333017553 721280840 413230003 228146021 627406289 939660691 540657425 828716573 882791471 651469190 12579518 732893900 954413770 407525255 63980959 101994455 809458970 476949410 496619064 504549595 590902203 667448679 439232811 968692502 533913495 71223199 854689021 430342623 69724696 100891322 179627667 263141101 671893460 720225629 984404351 552012233 431431729 89728221 355883911 580229060 651977910 863704903 893646051 317477190 85688147 483996607 89787647 993192935 270659901 909729559 435573630 832090883 451849966 777309131 205538780 765814869 814625737 261110357 590701990 404529299 339319493 377010614 275231769 874074209 584930821 788737478 56556831 690903597 906812987 383273074 181877338 541595973 504333127 284406886 786063756 680610932 176284246 189711578 305580161 506099699 856205790 819193816 995346320 994017802 439010637 314740902 739023127 544073292 987942628 488679871 456219968 105781453 556223934 884575724 470565112 246726162 148856303 975330032 275574980 260540658 315799841 939349357 229828418 834088070 681745994 745243761 982790666 993680700 819385172 826005753 559114090 4912441 788887890 989419398 767923879 617491448 348356715 725963607 121512656 654621139 132100654 563555699 189957161 250943679 957940958 329288356 792128805 276771238 491610219 764164195 658296555 688352279 653414550 895333629 521262971 309276751 852092435 626251046 792126642 64321000 924356332 124257454 486809723 224055589 112768863 801312275 35157228 694501416 416816002 262421602 450156212 657804063 269517088 823291453 395036358 72516616 481530228 155351747 500047062 372100183 710566123 217000676 739833454 995752872 937677725 326653559 203134904 471741595 730711474 136300454 740396676 414453682 853313729 203778715 547762151 976262335 236683835 363010103 811067959 454475408 728177188 368154440 652213328 347424913 948148935 438907823 302164294 762621292 795278575 206044956 519071690 390480669 700331830 90989148 624404202 728181058 232915732 51206049 218543152 130327011 830233104 84540548 283963743 790346560 960724082 977598631 198269694 807258645 249881407 986755870 437972355 644778508 550756476 837501064 621751125 519903495 777469860 818854361 954649833 869593973 727858965 304837538 301809594 295396124 416712479 370143155 560020087 467561917 571411899 15336621 784452709 799347648 54679256 491383204 661700179 485375259 52976149 38012641 456830949 842548939 302942856 31395405 623152498 464677978 848754853 532705708 490660264 439440128 389973028 893822482 937139320 742145637 570234119 312052222 64753051 435081244 621857189 459033102 628164381 693822205 480225417 86324780 276099136 490669539 657174754 159303097 92833214 97583666 224707435 978046194 755035134 94918033 70597341 648335920 883020250 128866645 751890210 322635780 810791394 259261307 467888683 783892124 847892965 418561670 75635738 63750032 836245885 406156804 160287564 960753684 276608984 489267403 710577775 307319486 233466432 255369476 794128028 52881526 910955380 992000014 386119986 847424309 678412952 160361072 6051297 410158456 824087198 107679705 189390104 326943277 45143218 720804308 124431520 377713783 261387711 392098064 221975756 887836860 409855352 136512138 981402728 88314127 578910134 701678597 842413791 340706724 172127700 593356594 757178623 53955777 60088594 109283235 597948683 554648197 292754838 222577613 527614396 927161456 599363601 710219941 567358012 981814880 42798873 170657385 431543701 422770752 660768293 119820062 571939147 427838703 815727973 976356267 864445034 707990698 729558071 125852462 597228313 738593463 171476434 653835315 182905245 125804874 64005779 894924017 417200239 598467552 653864431 72606277 430559360 849621489 25748407 9553890 51131891 657953249 384673570 951249718 133856867 527891209 100468017 971098493 613656928 446300943 859029608 771581006 921507478 545004990 207295425 824803674 317663708 28218302 793091511 981908961 455735120 312846742 86736089 643849873 661686439 133412845 177236512 888557696 936508568 171470538 357903407 256694134 579012374 409058899 978325101 81627078 342296822 810813451 548521850 29114495 528995107 888107004 338408235 627732783 773633636 569790930 775576608 858583255 924220675 647978919 113971051 34916736 527631306 854599872 355749368 639668310 527459605 218384427 655292415 21761217 146803545 130741978 818708955 801767681 557548806 518626140 510012790 233435166 741734810 844552773 610944520 642186923 981114178 443768647 963130502 639505365 945624529 86538617 662696257 472330372 436577227 242327097 391807198 182702052 406754045 366911291 366123540 31248561 73310170 318977120 850300817 405070003 984123784 708145975 974065115 609431238 537019413 128772246 21908741 409798007 73982512 502593640 574649229 315665371 85431689 291301386 680903294 958674486 476398451 516450482 7147571 997730910 794674844 442126902 828244963 37446689 876608298 108529776 964911334 460766426 645597848 169278347 753986447 37635947 854984322 401486898 271834351 489537905 311212242 81614462 59512906 252454044 685048010 946615448 490271870 136238644 865754448 369437368 345123084 197608150 971142530 98162785 611966046 604810615 549208930 312107541 118706436 625398574 320772188 999247299 308158772 51439805 685604120 60853801 650366052 227540169 783812653 384222725 724364211 811361584 371241136 125196627 463115824 463992444 193124800 771467519 367737804 118863788 441359284 113105482 695913288 196528648 421607162 997278361 464606476 768383015 611494352 555571616 338919141 254545095 646058832 802044340 693164419 174341723 720527929 286766815 198895238 568998479 735107993 227294782 385972399 50024651 334783322 125045370 851290209 305625083 1638525 132122611 451048165 376340182 485001197 593029113 970189964 34576624 921661087 742722067 444289462 195099584 492114448 254340777 106392632 724086079 814566150 413694685 64997792 922251895 427649758 242990490 69869651 331139194 40860457 104325439 30470648 360995409 740910892 352288854 904750457 17875743 414305937 608827305 843935274 634052281 141337811 483560836 373672476 901619712 684889134 302867120 927900735 764346263 512267460 505080940 841277584 699286992 320447464 412645219 944129152 905550159 162299382 316002799 811316557 841458301 256531458 81024581 775685383 674296469 599732740 801145451 12117590 507757433 208784432 253049577 996303600 722382918 733076123 941479539 63490586 952577945 538224944 248630539 597918735 92808952 386526316 481752033 231791240 51761718 206868673 451833262 90570173 873863440 657629103 599773467 354011400 805534944 456799675 322335542 976876143 291745063 327624751 544892964 946838949 423859160 146424530 630385290 452095996 379977943 184550426 441898750 557522066 943649928 892555808 727756852 247134189 934921618 720071541 624789374 451420599 219849614 220811794 394749368 838597545 839582064 430548068 173931999 766284659 663304781 119934243 588158383 630485425 443612470 793591466 440259484 548282566 178410257 155750599 506230178 975555112 370695776 661669320 305414534 798682600 783812356 222455269 857897077 100682725 721028045 349956297 332404306 933285243 746414538 37294404 610461006 975742919 809871882 215510928 679925537 707429965 954645440 493175396 382154318 592231788 867644906 678542862 637306056 861491859 459905467 458723424 280362140 543762504 256492045 185809807 984338768 593862625 335918718 767060156 904948079 575887459 440993448 85174788 164072875 183028962 786714023 631439756 365339998 585416061 154139872 181396110 487156964 853866712 512721388 962600198 613552775 742793876 367909666 602254079 433358618 479453644 446981174 706439317 828886274 904602851 126434896 622878521 960010432 912743150 330820062 435728768 343979729 250275720 18779074 829627012 17783285 254384595 9549242 514391495 494092600 149428389 845160589 977568342 867670799 310280102 945830755 860155823 928426515 819234431 20116300 894960595 700119554 232399893 34065697 655655965 115901276 472221711 22744053 330291434 393283330 899904793 72988274 199709611 165023294 271327928 351208488 354303762 157042341 28025131 566628830 598536821 772926287 182692048 918145203 72707344 233044595 924207038 618853580 983231991 608813227 200338811 558737763 243188566 226753810 246862059 992876782 698972588 951319648 982933004 883198663 667572945 744307001 509441305 639974740 885083273 203898562 34947666 49864261 108124657 215903867 132156454 841346457 896951091 90085396 934752089 248083402 217307479 665628968 10475554 9520278 76024970 110369444 726983760 783209512 500539794 67915653 432821884 953695815 748749821 569245255 407763883 443522542 582052829 579760334 921221702 580287237 393716665 846971891 769921964 15329443 176894517 661358562 210859621 563601279 915083758 908451050 709900914 47593156 707648098 88927753 276385582 607700130 39117626 43448464 992847293 583972362 394720040 462534885 466093065 402596210 211082367 87950345 972841580 307672658 646667239 788181173 289422366 180789688 323793006 538439856 297226894 592159428 563417775 579759716 456646237 985089105 158805924 27845225 524161652 760048348 246460596 140292570 467258221 38275504 405973149 567390513 765710466 330149491 794290489 593967660 115238400 119740927 638852269 874480813 773629363 165492667 302876178 190790785 488288968 531713234 899171007 825029313 475483589 50281587 597583995 926519759 273524420 806941503 205384347 50245790 193640158 306399160 380891839 389611516 141170997 5880773 421672002 929752648 804436161 26753544 308825476 215026993 692599972 169681707 9297706 694560847 893491471 831786071 844701039 197645027 417418667 866213788 531966841 619630739 345470814 713721877 75853833 753767887 49184537 23099263 371790442 499549210 38763645 296802943 389943588 972771410 45856073 716776779 46499222 245301164 338477850 852839634 370948115 962376825 701011711 182992007 541303291 839967798 643534896 492767099 553179915 333385016 930330081 738819126 975438782 266284395 737721289 814140972 716077839 993385915 415418958 666863766 957804700 314416633 331184195 517264499 548128549 27795472 271388097 944080116 467077373 65875054 814980923 77368513 109316835 113458830 30980917 800705460 285711167 817534904 492822751 930890226 123960919 173806791 485524126 171542062 718817920 314565408 566900003 181102193 368146739 920654737 763953481 258350358 216758300 992150030 479239440 551675864 527335182 224409299 199051908 575626127 347602098 275134728 270937960 145769564 319072002 690971173 582879448 280367785 323391081 7370327 514614905 110566401 854458907 466116596 890203509 739548743 490470508 685729360 436771028 64770695 663483441 632368449 464866366 701865338 789240070 330117741 774108819 210759617 689743949 620314355 11241723 342703135 944193455 781041882 742011721 675124828 805032923 147029155 365148917 279061350 195756257 778300028 452005092 634657864 503373768 974857443 91540885 29183176 36104770 756642008 147955416 929872124 512156650 84034214 544090624 744035012 742907604 149398289 649087462 320801577 595127386 816938384 447757622 410411743 179209941 977474068 605598171 422398042 537703349 447811101 328308261 986625774 92540986 751925742 528208437 836869027 262184245 526683425 558460677 452885808 508559106 205505050 345125079 723401228 659493450 616293763 822297479 435712081 184631024 893547789 961255408 889874735 809129824 512048556 306070173 353202407 738269693 646603377 870740944 652618510 902829320 701519279 837977207 468122731 798101388 831286084 949587164 187514777 882426787 225535154 753005080 7613581 373686805 597400947 488726089 67218987 561228711 358300746 20739062 800079430 500723586 34760676 833345422 345967659 95855851 271317089 311060141 665401767 180512129 443602427 458088838 255616500 147550372 131154578 355137761 896741539 478001621 702894536 955345257 933804750 747571348 706047538 190609750 521439578 712820161 781632421 877544730 7792873 585261932 387064913 737926770 644258024 682803340 273035015 380020577 840817563 794446096 538615254 601064181 220317243 741737623 98683592 126025105 178542912 459661547 531963389 171727555 483275569 928055157 497377643 606935553 333068200 966335492 6375971 945793547 32871498 888303678 588552921 378382218 796239339 920691158 336399353 280308019 693302861 554587000 976262511 211307726 766514231 96055819 205781229 521020497 9108015 828621558 699495527 520923724 152255894 97802240 2778048 865357276 886962965 97764005 687732759 72071171 597949237 905602908 525161107 133883556 110620754 178938190 118756624 293458589 950752804 3010755 628092377 822676879 790493907 351621813 785951459 941669897 285525139 110833202 663249765 281752540 280121987 145413161 792338662 425527504 49839089 583648449 603446867 968357811 557886305 765432095 456390530 740895052 423022066 738908938 388470130 520789677 345512264 685161863 454312515 245880240 248553430 922687231 283979381 63196027 620704857 147237720 848601329 212279738 150947645 673855474 283292559 441206093 482324091 981082799 275885558 645617778 896539643 941852823 917664671 524376970 431817437 815351478 612550561 47899257 379438169 955758118 671763427 585074623 82515635 657036313 20843393 302675112 145971547 723761571 270403310 114396728 329314792 68270136 77376465 265563640 697025455 203594254 753359542 595076192 603971795 125737019 757141248 959912281 469525257 592036794 141275680 100799419 205574406 969404358 310185791 35570477 733606913 452825312 169249144 310170205 460446325 372361263 591662142 157369651 607308995 689479686 427592505 848242938 122996555 475887645 182750152 339919761 957286548 469824354 491623940 300880728 989776330 72323227 923289817 199713593 519416919 208962886 264187546 303182022 467744273 943395336 448653707 887992475 392178438 467747762 847715087 948904220 356393130 139390895 654346685 866421952 375355375 736711271 130749741 218229415 608748441 743618150 428249499 563746861 497232959 571709460 580424711 176017535 759366589 679269129 956622301 491068404 473104665 569614536 152702181 885607979 829866310 261785125 593800549 792289769 82688733 870890914 922848356 559097073 565510763 799990835 565988154 230732463 605432141 200302193 614617199 159718762 552902193 636373026 999079262 920819974 74725512 656655080 215141339 553953355 777112733 108088126 237436861 347500616 66018894 431978545 784926971 106438936 595996166 287575756 694945107 755395281 866042380 363163535 422431308 854032767 772439372 743361616 257015739 836159526 497492256 997150385 571635734 356630904 512056318 837475188 297912071 244101659 313148912 289313052 344366201 395946535 601204656 505391622 444434265 265227303 383099958 298193512 427218999 915837176 264140643 250249150 673555547 742334714 169205625 334600818 588192069 553740213 715932481 292567116 3018889 878438706 69257011 497104948 71136419 151835940 710249322 298718349 50026861 874833458 878361688 548099960 713878989 392349643 54648014 295280976 863372815 173702223 927029089 204266858 400643951 842753855 449651173 170634632 104778624 492279494 391614003 732539504 213526954 457470619 750604003 664961281 273116993 509930083 371731747 438256223 815464644 407845632 538227027 403341624 660499992 680686798 271881098 714127821 898391308 313562374 290134881 120390384 666750549 377753951 254082915 949228236 715787613 979195235 147017213 113746833 42702480 707349758 958881843 626581134 9553343 750561593 79597316 327012259 325229837 334977763 793102813 807436273 854574426 989748476 241321145 515748669 17085944 143985151 324637966 391388916 824525446 758711519 396896504 270542016 371155868 531848303 63745526 857581623 322374845 757367984 809573075 770436192 910177422 762949794 437333270 552705935 217308537 1244999 980972770 487227919 979369086 344636205 884139648 351394976 13090249 415582982 836870591 682442894 563625387 697746761 16900491 847188910 506770626 20170951 988800776 695694845 317002965 522316483 418320359 413657945 359470903 858378853 957973446 760877476 506808546 806245385 974214331 868395825 298634501 230919125 612217544 220278238 478084266 398902509 283096864 849424190 864255893 588118258 995820878 768512950 69567183 61333474 454202314 27909477 183684489 972953600 885463967 512560229 573510160 142729539 399551619 631271124 155333725 613309305 126161135 769687572 266982780 112822017 609346234 908232386 304834284 213550896 805206675 100479987 488248419 868948984 250681478 519952339 766075714 897730253 310144730 694904799 425566553 544833252 404487833 119182801 870248968 575695080 755123348 896730884 981871376 761085490 236717587 61214335 234782295 481876551 573124791 893881510 460870967 132937678 23040473 180175498 777488654 529626370 207295648 468904577 269191466 785176259 675910052 839913050 103732810 997126009 216514345 583247442 400784569 162562516 300111590 912616779 521108797 548845347 151617234 239066109 189182325 93449774 674534139 245821146 144390749 557660119 71015241 665366059 439711912 61496060 788486316 338696632 926680379 853535922 42621202 614134062 862547442 763112856 265059854 764440728 481573622 990034895 207916134 560413608 431066339 80855441 711161765 568990906 362046486 933131725 762737999 293504412 726217544 403273383 764525983 331621417 164673731 294869798 656599858 542366067 49953903 454121640 207483805 610462061 698327311 149059967 267824449 525815831 375913167 370271547 721871949 281340625 533904409 553890360 128603930 203841480 972781463 887115968 497931480 570662220 840461043 701961396 178452400 712927598 50614101 869993211 639819032 146718923 203859919 606360832 333939075 485730916 427998401 361116124 143345428 668701566 81726441 793278857 397024957 548231680 985318396 152091815 356765068 528586022 926913651 405521618 80723018 803311222 783993490 737344139 157148200 326024147 437566302 578494799 350582817 990347511 440664478 197055090 589812416 756467056 675634695 732836115 334467904 895077599 145497290 308674426 952444715 410732700 654070665 920476359 576843136 714280753 79951388 28592559 527464275 552393957 257870451 691533361 640140871 398948102 344419800 383247426 719088928 501850352 862495355 537321233 1852905 444192908 546840687 880869003 48529453 47316758 590836528 846812172 138606055 762699218 747981022 263070094 962750483 170586748 392836431 413758455 482894431 906337757 817121478 500439957 76604247 79555919 968133118 526805181 149908341 449224340 92759429 739166432 426630887 29560195 49093717 684076628 427332037 35701677 434593622 942293548 448921149 454456548 2414678 128000065 181659356 471037254 15471483 727553112 286470694 626344587 262900388 999245292 484666768 306357659 997144298 741802126 30581015 799083569 837668529 113885737 511782959 536283437 673590223 751604305 426129949 45645100 17639655 937284125 411856104 335282186 805383155 338586320 520644568 48496971 993514891 375555261 302070049 291105094 124896196 391379822 143137145 624957649 200006363 845227189 485758201 954131816 994412781 400824444 510693025 259660329 796266232 781778246 316753015 405929072 851229292 834830119 708533929 740144170 471034886 763315037 308362172 803589788 994480169 879806649 589264379 887036657 845116550 180234072 65902544 198434324 182333659 775337704 673247216 977649793 189758504 438911205 440588783 672779177 146773486 316864909 732663905 91454690 271772821 511101488 654610651 395523819 619555823 489184594 229475816 802959085 798932648 626361854 472052487 819805583 277574000 236574520 536929661 363320845 185847799 805446087 123900853 119137168 698717854 966562749 499849011 90437029 563048196 570818064 691012063 163366284 355172493 269479127 840593600 996315062 262596160 842727488 373952137 24195407 197250082 543867874 687142191 119029119 657298224 868483884 433063436 190886841 332328036 465368866 372211780 497727921 360801991 202866159 383359549 91237550 623593980 835720170 490562902 917151956 789997947 53017531 622437376 467917868 921345449 841122459 923569054 83131087 136219988 80191235 474571125 364875865 176659982 562045755 932168298 52036433 308294902 493861926 921882688 868270452 896257422 792427431 677774543 754560954 941448256 646148631 848783009 528900303 928107014 757885915 18220680 518233298 852089681 111884165 749773367 30612788 550084722 376995893 330668132 350876462 915627208 618886416 678920347 5447980 318233857 154591353 694422181 510701945 780950501 922891948 789635615 944822962 305622390 539614667 197505980 539385532 931199174 22006487 715256440 378937147 880830279 905936780 57087395 707758296 729474782 900965191 590217439 453194366 49453940 518871035 889578035 857866295 733292692 905574161 772126711 69903873 145006843 889447702 147981065 903109313 818033730 185098133 887219622 706613183 380238680 723364697 217335118 967468112 149808089 804360526 377221407 167042987 37043541 54871713 229943829 741062091 764114402 622226131 499034048 139513774 801955265 424136473 240386885 466521189 329260242 939858109 959736508 513656187 391739306 821920962 424485958 962940972 161594015 807602866 761521885 456346648 987865822 827241589 112276756 111834459 128193306 57432736 781162257 712037447 609478905 371514214 611722212 199302968 398686408 417772761 599625832 159284547 245997611 93026733 487595342 513128948 753503735 519796365 189478993 830208365 930319097 506696989 969205214 329911257 541019507 775842514 613299353 106954688 243235363 789133218 846813976 862396749 979635222 205244012 757637427 582778528 360207300 50168115 667693720 598642509 11863692 858108052 267640391 835132290 465604464 644471372 469813821 998383209 658925486 587844410 959205394 523120941 935284359 208822513 968817852 289387182 828530122 732126331 163413309 527828394 253547309 126325595 753103948 692854487 332338745 26370848 369559628 895218776 611705887 458616098 690183413 299095629 988142010 630681551 306099643 635252708 444140207 513927056 790896441 346159284 814176355 594454931 755945764 553359304 782985306 640128754 579654709 223610710 684824363 17811009 710960954 858151176 516873224 127647182 816457479 909551387 155004984 945083590 933358396 480685037 335549573 428159041 193055684 162832059 810368858 565617663 370907933 811173909 847631596 395017295 613932329 128562226 983242814 696974067 299337612 873974442 467918494 861482270 45031157 782518978 215100971 677946316 782066547 968146566 316845534 784581835 268679494 391202748 131714173 796665866 609765380 680555968 236669486 195561335 801178539 753831531 364855457 957088527 77357252 352209644 504810591 117551788 103139245 36861824 129271954 456983508 834921048 739591297 531663622 572548856 409711670 989475843 779166654 93815580 716844943 748731270 205845189 574985857 536059182 246338498 677076827 233020394 216943137 916760267 871049421 428691080 363887417 978042935 763952668 512614971 240766205 737376054 564220696 375669781 795539244 83564782 891305293 265850578 296495162 828961095 85717383 250293795 640383432 512670461 942103170 868603769 145854183 548149591 780564833 308941772 7521891 753390529 445658868 685307647 288112603 422689370 397572143 504657133 644443703 133274164 398993507 504838308 537064395 163492781 342136476 575180783 654214885 643793000 59350112 636279689 653582094 183013799 495040659 240661982 405759476 7638936 883023559 462319481 522933053 996242596 210505364 297412220 584511965 737394709 277842066 445449910 132157968 316021871 712002214 934220241 65992093 989181249 594360660 119421927 169743988 745277956 867015970 636966298 558108766 698669570 421802268 319256879 473602301 809447186 552188931 773057203 179199803 695489524 536877910 309615354 74051094 613952018 391445617 776135484 416905552 82340585 476366163 713063216 790763667 160510244 276774027 272815503 277922311 978853331 13304727 829790035 648988175 984287910 458334087 325788251 906921527 548854750 943749038 23578913 909271785 983936511 801242411 806279229 231717860 600539016 55438784 766254276 471987422 407535852 729866184 185335655 718510659 848230537 16207067 826952337 708818709 1894016 972454420 469139234 995039650 488300722 813393070 803579932 556633864 485059264 253831283 680203592 112214196 787184747 848594787 725534256 636076101 659372112 501241247 656388714 680325635 545270220 355874529 179454557 312989782 403995462 786622650 72858122 916967278 111788272 23895202 649957031 68717022 877593905 915866212 491341933 735587324 384652821 236063665 917630449 503857914 294063577 275795280 277059323 325839687 607180751 274684597 155727068 984383085 211778686 867853685 388457874 141490862 473677789 377665956 119345422 90177896 778308110 975035484 243155614 428645365 845318242 830086902 919706800 48264938 966392408 739244124 817851870 318606272 651915446 719740806 426769077 958324235 167396054 536945904 569678161 605223915 184547089 39120447 181010522 62897551 597352438 183450872 450956942 855825372 583001024 219761193 167718660 241197282 209165505 624146924 576587707 629201320 32276960 207656191 962318975 306098759 821358837 260703603 417488069 539132634 347921565 95633119 806439891 249510625 724454754 854418939 621795517 584436223 636394814 379916261 712976034 106590379 841476728 657802237 233233830 395804926 141067368 138778638 106733619 360383256 888918 267852950 886143950 113500292 458074183 346422372 926694324 143092274 52279648 646971029 249420333 719744044 185383260 413279363 654462366 473192879 795720662 307225573 669392196 752936933 325976538 473780386 388170471 691332809 280940487 987870443 265314391 476060740 263633022 780188356 908269233 602361050 590499918 519651025 573316908 221371382 697903311 278463560 691612406 821072322 189419751 505358091 216777716 306260492 273374685 413547665 693150086 150847818 932466719 537337500 733245527 517445217 705325206 917036949 526480677 726799634 923472824 155507895 177520799 977273290 568095814 434314651 324325397 674494821 154271335 968880517 993990285 565913365 107059304 292054932 69505138 101136406 353102319 201651938 841543701 595046686 919841681 561058749 996072478 727697476 215353101 376772605 234273492 109733060 795028231 548499869 647950186 791011761 953420839 426114944 576942243 734355460 756844210 837160006 821337225 878289351 246752990 189509420 883426179 815607907 506449237 220435107 137622089 145531558 858933858 572922050 477736322 82112676 756191883 13812195 934756465 490385304 53730617 958468902 726453079 645335682 567386410 230846055 562376342 764764008 664869093 93337981 87027585 732891658 148795573 167486619 398554638 754456588 147268600 571462624 479377697 944908242 724370839 666279495 901323966 273479134 538623604 186757236 586235257 713516042 653942421 323859951 588360480 316067916 370830409 779030676 586017201 581353829 492309579 719265079 531013197 862630864 585360884 112241096 414615304 136306505 289144696 128289014 515695890 721751928 966192739 210494443 732450596 683013385 956175750 495335590 820619007 822519071 320212402 149100036 426676003 526438078 686728344 886218921 77972309 801826377 46644057 211620893 209528590 226583603 281071120 164850195 904191064 659094767 596427440 444285171 219180089 259846150 912097754 316813357 420866226 349285098 699038390 326986348 795824505 497533734 335003831 487537595 766123456 858830594 602385704 575327180 805605153 608099245 420034994 92336036 771197719 229527305 270172494 298804420 778343868 412654358 887942066 473719868 333147386 179269606 980640664 937705701 1938097 477604513 227351228 814587572 769847794 248754857 37539848 983192542 584989146 318287772 851980189 262451812 995216155 750617081 833546421 587678961 832864112 999465034 333915134 478275945 678717574 538208296 489141108 95124281 395462784 832786304 631095266 780501310 674977839 547896052 350614562 623779553 392824543 193543465 27515789 93760436 613209244 788844796 659928464 607699411 634871601 458820508 97437525 103649482 705452601 120083297 656157000 499568133 504777610 260111663 783040483 689435409 598742553 682139286 865570487 32853219 561737255 823323032 162565142 290710600 974973289 467842115 191287845 871134857 687524537 829782930 706930235 19894203 520070771 144675074 449672652 99669529 14394197 541405188 76764606 120013561 142152372 857434328 25592603 726091864 383385392 84874516 353516520 88903596 26614499 778964838 474790256 883273594 424610 105398678 627090936 953072074 632556678 331460106 614464770 608209919 520744565 216034504 257765332 873501891 111867141 535943948 990156652 553017244 6971216 60474011 968055770 282883883 378794409 629820965 673838424 817541930 399062278 406106605 100906873 310933221 960626663 957113837 748627074 605968897 138468915 780211699 671871249 174382937 712310400 314885672 395498927 944419416 962427870 505349521 611165787 350537933 327822631 570151000 571110245 792196312 773186121 467889728 21957265 476654037 285378286 27369865 982566730 813657616 981297850 374944797 990297470 626711228 846511146 207704885 8150101 786174903 66500158 210385466 972872929 20790191 986567936 567993445 314937216 610410274 230944662 957008010 176933291 96930123 773345241 267179592 125736065 35125376 853197588 633781597 356039201 527497594 811086472 698763480 412543667 546516491 707094931 158673615 441217006 344883999 621245075 462737529 704618468 366104080 821809002 535176873 19374797 224629212 29253017 411479376 576821662 836095792 594190973 679512577 437540307 909466517 160143732 600179391 825660398 798764288 732267463 904064598 910398946 610620803 762264079 210342352 341374815 313310794 503198737 798670336 60556617 611395663 124567543 754229900 128349581 153406446 573952257 480558440 581337691 519513526 81872864 180046537 306221583 712017027 923909766 534190789 856869273 676516639 602808336 528400885 171337578 919828198 526835749 182509030 784292963 314047434 549989262 773596127 673765229 334908788 384856696 554765487 79023022 435768443 71195031 84159295 986580648 323630329 752156427 603253503 524018982 848305400 868133560 13692602 807725044 291498294 582961095 71355212 150809772 108173340 884432842 702267336 759623505 842792375 708316279 829891623 376078817 854145351 439576794 705692706 540079941 758930048 434393693 547012052 500039218 349903876 299106729 828771882 424227278 643742628 579623697 256811874 41805144 413140346 710168713 345130735 66659426 796862693 774937470 774976967 580697082 92808466 652493553 522849 957714304 748781167 430689894 906949978 95299357 8692677 641163318 883987856 965721578 134214987 822062051 774471733 556954566 24043050 964693735 198004833 358378855 184811112 936921714 706390233 531410781 91811052 616742979 71016624 853268247 230460764 854490418 579804475 429284507 113471204 616545661 955334394 637023910 294547593 686396508 486028710 494854590 910965473 368871109 501885255 948253801 104831557 480396298 314159757 956521406 729013205 697699038 654483831 755103238 883023562 423437299 389438454 650968749 546853577 367348307 215587685 829144059 266499301 125735250 569493909 312840354 987937976 836657306 735076645 25878873 795076637 420264927 369048995 566895235 151189693 358239663 505082735 643627546 501780202 481332507 899569235 230241252 816678915 799757575 616215681 229587046 40558511 930519514 173995601 789228444 849551661 735050782 359381024 437397305 375051157 524230161 151487270 597200434 706738413 745008667 8661548 761936316 859636226 453295810 945083679 139779266 757349041 350443093 551066696 251959373 358862912 318241875 305403239 574332983 602872533 837353855 234526707 595166784 512181 299138758 574612101 225919065 689741510 761647860 1314481 696593334 999377543 774763056 792892016 224198705 831119628 7508436 575838292 440884585 960159383 111040499 743786761 727202672 817756905 907615402 520473667 746193014 955773317 217579354 910568327 894599572 237610143 912818196 518126296 864160202 119453475 772719875 638620588 204935166 781257498 483380513 472058948 82019881 908841472 358415375 222064939 753377687 548691265 690619916 283956810 94456881 827985158 359941375 182070151 310772501 34639637 896373691 79469477 78763636 756758884 325922245 102587914 268188025 651916708 186562375 913097879 355842857 462742333 817458095 860491761 213786827 80955196 275929041 138899658 838349861 239453494 111191492 577857999 976041188 442477626 350986093 515912665 164966742 664520125 860159441 33717691 293363158 640630326 618874468 638220043 161608341 635468943 88502709 225237290 145843685 418335984 499303612 893469993 178516331 731663525 785002299 375744949 420658456 494605753 85882396 858222521 648018731 497054481 792819589 456575727 431346414 672248922 871273925 889496546 684391048 664931811 718074167 388095250 81433092 200041542 734208943 591945637 291432471 766010237 136756645 859454718 194078871 305254734 186533466 403957946 642098386 243440218 638024340 371597265 48113370 555711278 550173678 62941167 159196571 998193817 395568025 851693836 424240987 193530188 307985926 52273895 56285278 776204066 384826794 602952530 794996529 724723570 48663661 722120370 641364566 98274566 735986636 906106413 270903553 804498800 878220363 585143546 142087276 629531614 731009739 753836692 336612689 734891289 534169826 207076152 523988633 880220083 804641704 42353846 161000763 229011495 529238673 451303322 423207194 810592559 14521092 504975877 542339279 943064249 632601343 414312780 236264012 957117325 694393338 464203209 448022856 779519853 350407920 715488483 921395870 845711553 282071467 387379605 14423288 43012058 165130271 163227556 820675375 530404673 63378778 994418925 5008892 135122527 506690552 67416561 942179453 587452118 664053578 299046495 972868026 694769070 904382750 557900398 68543572 197453818 71022036 130962962 724345094 627427636 639014892 970242688 114962525 91705003 188072251 41348104 709754423 904327271 203332789 179460904 69683254 719095917 119844478 912849655 855546578 7168445 551065207 929705727 267043684 697826591 236638553 6871727 28267969 289667674 596781481 589598614 641728310 45609361 990348051 59891505 17913392 857203883 877391742 710190142 745580362 446613187 695281571 278551571 196869017 771360111 503505403 142506929 787616395 517760507 893041032 868148235 525871261 547996698 882050093 233841901 558700650 716069404 519098366 548775394 26911492 416905871 492104763 520333588 89668718 964408275 931962737 780384123 658359513 206983694 281653539 823852099 932652058 600123723 781449099 138595718 44992880 520821376 738825216 61587507 428213658 961322950 857237765 971738641 712033618 907577137 648526631 3915587 187768522 856625133 132038805 98360926 238660694 962974820 41251374 316020896 765198859 900281490 848047256 446532334 795370719 573243398 838691103 310958553 489756872 241400170 994847400 577733360 377657486 482550418 337646204 114955952 341111665 614337798 250238899 379611853 997761692 78335100 607067167 90749915 609401113 825931222 878473224 427620240 216397604 171051947 985340851 540637210 557217592 29608709 951649820 258039041 890131937 164216303 368684948 889772611 591071721 684161588 595032748 334220008 183511380 949104486 536853279 182208438 786850796 802629316 269770074 957108023 374504972 574896234 494116361 397827835 351456097 22423928 87336817 285958055 926736650 950649342 67272708 58250619 550696130 131130053 911929870 857584661 929822244 815370724 401747657 514982863 980004727 493846118 786259322 233990617 91170922 365329244 727841958 118117071 803757640 291702270 119305822 435224845 365952848 363109912 513951640 522891965 548711480 973469938 437277958 470359299 686036762 727814220 82309446 981323021 757118933 684575757 2583207 636349162 306743629 144384954 607976261 919578577 984054030 656115053 117141660 264889378 86675291 82103198 263719557 298206624 260565714 290116986 794025586 386065292 228290109 525181570 203265045 806604607 239421380 362718406 214998556 669477084 826616240 357636165 962951465 920763327 694891666 51717475 439898471 949354589 313969203 824287696 745544315 166497727 722994464 350738017 929095604 530845752 712162538 978484172 452131062 624332689 756707958 872114131 23107545 784153401 383965600 149600435 626019187 958506011 9441333 387077925 567506017 3716193 673784383 128411783 986694997 854346492 979284768 482423346 683005919 13067445 142817497 413242827 142035388 984072731 955578198 698139656 211357870 744085183 18633954 509692129 704651162 966188919 106569247 697899897 463473119 720878034 981660196 331406667 122703236 844088672 13665088 590132922 67290633 112446681 376009411 397966927 655329161 350843980 741714750 501192303 752385215 116368374 122139836 357283366 96191602 248748962 628189986 978983945 721953406 970310151 988834004 593463220 762371677 243335793 695884122 311228198 270890742 371631223 360369752 88582004 640036243 534337776 37450144 716762416 182936476 304402508 159485247 913102858 241009502 884941947 840238291 993669693 445919212 552426075 232031138 502053856 776751296 199245288 281126636 944506324 734445729 639059303 888911029 247081646 190156438 441057080 586012568 129116606 430360830 987834030 301342495 453732636 523782558 520823845 394211572 479937277 270260655 876145931 469850385 399390135 857159910 125200394 228645770 556062488 912522702 359277325 917775004 718091196 631083534 474630236 942029310 829632790 25499364 870466665 23550776 424160452 948572900 40514134 918967078 512565297 574408676 448303790 911754976 955785914 734011164 812599720 655108243 527503257 459081075 230470330 923365424 67903910 154156089 902654688 250834790 890157186 717047427 899187583 906707850 727371749 192909118 821638366 260832386 8741041 696238215 781632022 416950089 614654680 345371703 239353205 762261183 594593295 868939779 970983862 811110158 811546001 511644792 218855509 638953210 192231684 32398837 791542344 153075198 423559304 7961867 693946636 238250653 643599044 185472564 577663157 818992965 343052780 769314505 557032444 322610631 718809970 159042368 753321348 114542965 297873403 105310313 18715692 806124145 323167647 261851087 525006168 243120026 555911450 884028711 575990882 248489887 420188292 953038086 356546728 512557260 574814901 679181280 36509192 220600050 725370740 396950689 956393327 608457630 599180960 343862611 36869643 98422113 753190071 209892948 964974582 746007106 609492876 843554396 625863798 209691791 185429188 288285256 294536157 219235176 179340656 180233548 897975741 732679556 247267982 966384099 242116966 867332257 139957892 257223185 18372779 915202105 566926558 966639490 119205170 497686368 945204802 278699674 617444553 145968478 667530029 588641134 638786966 717375420 522653141 176125712 348116302 34453217 336150846 923609580 450957448 117606544 93708817 104005079 348070909 870369069 123863017 726630939 248603071 467589214 90614161 667299858 147285383 536222674 195048505 884552600 679174817 721206420 484344630 755788998 650662301 113434024 490055319 833945236 479720042 589338552 614006252 431664504 564688971 54503260 155976242 441702797 718418361 772783614 362821377 365074934 908443381 828983709 710538043 895936567 890563837 881547302 770751769 883558538 114130617 455528450 41796792 726891521 431495364 652515570 268003125 555169401 896387036 312409379 857041551 518169629 743534258 759170384 615004633 723028638 321458797 571870444 647843591 185407445 90796285 517145995 519490354 876505763 382899194 578192031 232885264 856498717 348700806 799998790 964706555 45404409 52647877 29362133 994095372 82805469 930073367 323444637 386783910 426115791 292810072 969724935 948307347 489970866 561301118 604601514 856129473 356800032 676887143 690548925 187954584 989590636 204376955 834195293 326763536 921679601 666047742 402856591 904546245 264786865 205744725 310067429 782675192 279746363 930391137 954723339 301125299 625520819 562375523 805739842 540438271 876853503 457433721 542158610 89481687 306848044 782713742 573383111 142886334 157942345 739216645 14608722 201622259 405353791 185687493 654092690 832350338 970916892 712869414 714536012 544569913 441946416 849831025 79463845 436301720 794748012 286829189 740308942 936651161 825159944 710328073 188426136 961718022 842105231 249721591 871129503 558602891 1427995 328662326 345438269 139293045 899997242 504287130 636376745 319773178 590660783 86207960 178758352 688229247 860565291 600089756 6067480 160889983 636121618 952622982 532121223 742127332 23457017 695980167 213204861 723443746 698628006 541672073 504497579 237799820 167410770 380424779 231192886 121979786 894092609 601822628 895975571 775624437 572366758 226651618 816265702 917916295 568370233 983780557 927481117 203390462 763614664 163463215 966842738 987770 532938264 905459149 266686304 172065668 828789445 47626714 545085396 399582854 101543533 188532948 306462813 233176054 826330259 650070170 317419451 217976116 363089506 906063746 155167133 784781925 20768911 411726090 535452848 618044436 456539259 391381026 846057897 57017148 747332630 927306670 503129698 923356626 998929856 240025591 780716903 479930709 536692985 576646572 107012195 928186286 793033726 651064350 179039657 337600778 817972355 384882840 329290790 717440757 286713221 989975139 920468044 522086227 236115694 13247849 728981425 850185728 632817565 469822888 546392487 687499233 314528831 927191322 535043797 584422259 696319501 995610296 289934670 707452384 166167562 64827230 306798289 293881413 184697817 270601321 79538465 77555441 862594073 404025588 18262140 220023231 513837497 819126752 415220692 21596375 268735556 271416817 299632447 5063389 29416453 195974207 121823449 405736455 622624610 878718485 803622436 189974757 496244332 177115181 758554256 760535624 956215314 780500084 739930670 929414265 546268360 526929939 679616486 161780159 85823618 10323780 819698314 683334780 177263238 740221374 647182118 423063875 27999561 330456027 760329641 121927363 135758280 377191339 49139617 540648910 850079378 480732843 194289683 982376302 741950042 36139401 443257939 639367185 61333538 559963172 923373941 222038777 206836183 150323153 503703883 486579410 629376998 441944284 697403955 685894503 601274697 161365600 548855855 750695129 67779068 178254542 934114347 974339509 975069840 529145112 60106935 400858414 451935650 548936699 387125026 235484222 305597270 931045045 128728161 466771571 998957278 44972966 869074779 153239649 789278308 634881939 863403993 251618829 550685631 270754543 715637293 156566365 517886202 332598284 493657434 376194120 117855733 785133252 636567929 944819405 877824773 420567722 68355879 567282975 816309489 559265616 622429243 766106284 876852626 739350722 543002923 970338522 25072827 853278074 381499763 744364772 826456728 481165261 539905248 955844586 135545650 478815313 271575635 142020268 522585622 889351842 968504713 345815710 966281956 324163827 141567847 686672784 640686690 379772804 622946734 81345721 855094869 764811218 511201356 336883982 736556092 577405213 999303883 205479830 92989790 888405761 629128905 417644719 571315810 868074597 933175411 954199526 230974348 679011198 274022958 774560791 929875543 434440355 531375755 838565006 326444597 634131351 982071141 16303212 697232237 453004951 47099316 285449807 411174336 717809457 74581206 706753813 688674283 127224239 140672979 283058425 476886981 282337899 666255378 228963618 858094634 521206389 142991438 620065802 930292231 574819753 598849129 328784451 358759531 949616683 897833344 464960951 307188917 111741601 628144643 547049174 977394247 690681807 419080772 488832955 811888091 499306111 861364473 819210393 267242518 20496593 276594454 121837309 656465062 998330111 957839065 286657374 272133873 26132372 913032953 367445843 761306791 330266882 980915810 982477 64015426 649572139 655267952 784082413 385719026 555328895 833667415 496241942 524532698 315585261 953578495 924127014 379031512 824192666 689665688 209503360 873706166 450377794 302689881 751585281 225234673 375103188 540966898 165194750 600603388 843509312 724755528 404860632 852241108 500460306 403492074 492366647 753972071 424787405 684669374 277254175 432215630 741035534 614305708 844869818 535529221 738279777 128658373 285335236 624053722 86998392 632977155 558206954 284389794 597164949 318029638 449401093 125069712 442392518 939484133 900454734 86946753 564234476 164941713 93146754 2492228 533524529 111664828 362975428 318240979 874527680 914991184 373157908 399831214 822917775 414855610 809850947 864989133 995653322 28398504 908566247 31548134 22356825 438243625 353255564 349553143 272030288 101975835 404827142 852350425 108222754 620090712 300610634 347238371 931032575 289961517 687255438 190553772 303586837 184180922 891879187 148892959 829348921 882245358 981251957 465997292 629983435 658452740 565110140 441119267 456075148 702329737 604566074 150922423 540203270 943417665 48077446 338837573 809177419 864571579 652721908 825230194 703472461 778588634 228770349 654894818 107883164 966579390 56625572 162684373 129069203 454494249 11160994 315775451 929495387 787150893 792435337 487860433 666699992 121357797 501057846 686495272 48105066 601788541 878783624 614163610 88805286 255112919 357556803 23340779 291946542 990640191 46527049 776403070 957003061 913469768 235112045 278510662 892074965 70648462 864935118 846567593 807524843 605910461 741776278 28983248 94472092 132776653 484559142 445583308 913069400 408007660 853310500 159570145 10945011 251349455 762672928 83292166 564957104 584945036 194995820 363874104 115654026 202802878 640867904 378828362 557148661 985056763 496324349 643325935 504597659 204978484 218722344 688544991 662590192 386678270 729462302 905069474 989410466 122009063 985541062 937941143 550642474 903861513 634792055 200696085 795963030 798005592 298968034 297542579 489716845 194174248 661375035 921437457 472395289 63572655 502537383 591122250 536934851 514724329 392321625 769872245 641487734 12283737 873312871 29494350 28588509 533318549 261127012 813397090 753851805 849667912 789127906 662454747 183961844 449268694 117915039 344497360 318365192 227608427 247376297 841602494 547006456 419802123 195310403 678947958 355743364 403958064 466976340 147494269 794522626 541131095 111032172 810260987 570760432 881782707 735126004 705663320 390488571 915192246 832208171 691774041 810455031 954853108 997317653 245894358 760139148 502168663 614595402 87242888 278819833 989779751 392673649 281644446 323969321 276197192 517177819 365025555 596558695 365114051 142390039 451306773 319741229 112649532 254763647 319573973 857177248 61378988 23336206 82791763 324923143 389035439 987964187 954650770 357664163 332629637 413715307 523855527 611111926 621715830 9389171 14750769 26391493 235281110 553799853 16474428 423091478 153757853 683313123 458162641 761721386 67044823 969155770 185587537 859294960 490089336 599266572 992005382 127734287 433590175 135287064 759440385 687216519 84712976 25629812 832048363 787569266 200162646 979546791 317850802 517684349 859889882 432151808 660527011 994917475 764499083 541975308 595436211 394048812 289581599 100148854 693942443 933017625 820472934 630167843 116485576 80697594 979297242 143210293 80262704 149053199 768996700 261336575 79228117 410947517 587727762 571724304 440757404 296001085 501352225 839486708 373596422 57206910 826461395 689817386 149044040 316553685 238883088 901162019 135314671 991338630 434956530 520867074 555636570 832290988 845705260 478666464 262292794 560946494 663088820 162887106 550998138 652585555 189802881 730852678 904514293 711611809 426480485 488922846 719064715 304665673 362976018 694325754 370338725 33514380 982820322 200996970 704429573 493242755 559780342 480683224 637666452 265702012 950422654 885728557 722504394 991549092 926807162 902164051 427267575 185307238 17981594 885079814 109627085 900702969 447328270 154341731 525209870 431111443 75898441 116255373 797173911 436106415 611652851 643153373 858938428 715933327 462187350 419722993 456371255 855745900 742271517 400166489 50526867 130607292 47328397 45447624 649144599 762405931 753469578 673595817 952432991 483853781 608029075 218556330 851910687 837722299 163535618 847876108 610600313 744029583 779176686 966326235 568400528 829324874 741101253 525574988 562102100 68685425 290559647 518971955 371619068 117064700 535183448 612607992 236122372 941199914 642127106 712900777 137243539 688930847 315333012 310932882 269627150 387999741 128645609 950096961 906252787 437658101 498732204 587957699 842953075 982226703 3401873 298841820 420933105 873602238 52798033 253035308 490529224 307245995 805599939 203834219 286210017 535624798 224527507 583653970 303886948 644810680 468511696 487310439 7307036 105943630 586126491 10489320 392879323 89994455 602734358 374831490 572039493 432050219 112705205 327382100 771800096 489355822 170829370 802095507 772982931 255671269 625150657 796441413 917564657 557804064 850635779 882842555 157773515 974267631 43224076 857591742 874100033 276026461 900247741 582183107 65442098 276546031 914757228 993195277 118170454 567602543 791186074 661457363 664963184 814734489 490331773 716945426 320448419 773952727 206087897 284637176 212564269 689609331 410568534 286258461 380202793 145540707 21204693 590078719 920939877 720088739 383428633 6839255 912292299 661727837 17422919 893352465 937461080 600498330 5796750 638271196 626452017 367730202 589279383 190211909 838447507 695661452 657766263 831105754 335214802 934535116 610492911 312016229 581968825 861930472 973806997 665992244 648459788 919440743 801264021 562772996 144335309 565339888 164052704 832980426 377453110 17915670 654655687 796553577 592509494 921585277 968500973 391588565 447505284 979290037 185770099 570511913 344660069 381275895 695041533 3423839 634277530 369843360 738282765 823661254 226923003 87513252 416771991 582970088 848103292 320705922 457780368 101095971 451382381 45107540 179924643 741709964 301944053 93299802 336710044 504105764 187379070 505677697 899795340 92290324 665782151 244455533 457354522 556444499 520645827 651765287 922622828 683332670 505486021 925977713 782939921 95189938 755886867 129796336 512636475 523187553 341270154 602840260 975930570 983796812 862026963 155284016 904116997 884992334 228763793 128511282 282053467 253355138 811120461 107070372 447100304 747313383 221358758 205252661 638774985 218758582 737195363 814542231 890994205 635757915 597255304 922727978 975685806 212548960 630543777 799579394 302443804 772180276 551696852 172538022 586382106 545180290 864217543 3955386 630660332 658193589 774714781 966748101 397843189 260629873 624247152 240025676 850100242 720433540 24610823 455999598 540567084 919391227 385212265 804058790 892169027 399588164 47608117 735853479 812111373 962114193 567489656 213573923 873798043 600771836 544150168 150926765 372117842 487641789 772708240 303739439 179111858 909184918 985999281 306493970 588009454 333218607 206636267 512596335 246790332 592722092 325339685 824890631 897358986 308905425 944513489 525020326 153663865 114440997 168670856 325195251 950142777 704190320 623054369 105148555 945545908 218306001 216179789 580138980 82452652 68338376 233798939 427581062 490869885 15757403 502551018 34438282 887769182 68704455 27885867 553266255 593438648 71991059 424908098 453355705 251262276 132814008 648805085 580641713 486513731 64109658 906914209 6640848 395089332 551880444 354134215 354656520 894263916 647427283 512636091 153640378 554668506 477353170 491759979 207119737 328896530 943528760 415108637 394793761 799571783 877348445 852528375 742397209 136351646 748022761 60292266 536039953 94338154 348991140 214757605 340043398 900580276 122229724 804082001 682544003 884431753 905201207 266673557 234454191 549726180 682593966 966734846 657458776 549333082 59589954 54296441 760643784 774388635 495505373 193486688 964877930 801637219 794450942 884237351 881041072 888017654 41678747 883597024 534820720 785805365 970302082 640777361 150764179 176398502 27585990 378799880 620426702 181993340 229068072 19284920 499788620 264522998 638239986 802655732 104572923 610099529 130625346 561065175 246322807 567411280 936908763 253624645 311783221 318808854 969403983 96026116 667608865 612993660 195131111 793703621 557765348 285663537 360424525 202216703 870363019 873228526 676996366 169501066 960134000 464666258 254088531 570376549 192230899 885205218 321546394 146992590 352011222 264167792 304908731 162820150 896023711 260119982 969255988 121952962 711798686 687935397 443746163 891166619 32967114 352453113 260982206 326058119 134548109 303700922 798642053 670790247 785093081 304110203 427618932 823584770 333400437 690049483 881701264 226415177 955663428 277084301 500726904 825418514 399169039 653169755 516079804 392817688 814356238 631386062 921418861 796052562 440054563 622288642 765122901 616773901 583441888 998603515 262474011 303375737 427109813 102155620 316361025 3989732 891237714 832020317 470843260 46508255 873800842 309480371 728171533 162774225 245283574 25742403 830644835 882969844 165086883 531405793 349344168 644933039 304923474 767329486 707683429 321291555 353840995 285652294 904011673 106451175 750744193 955707458 6532128 836060038 308056253 739485689 866754207 180349547 839781723 856503286 584996544 120560255 524494788 851276696 510174782 98183796 876049018 1008529 233286900 42218237 976182972 467817483 995544692 24327080 229039765 241986591 708633866 338313625 323010385 263867467 144258561 382853243 160818126 787155089 939253480 478431584 728370919 299248245 350865720 360649163 465833244 539368695 767027986 339562076 238665006 84648058 15791889 881254358 112295163 512727556 686904307 925531209 525163253 614973588 723480279 442602208 504800965 848959575 220735591 821214850 59653505 215012871 286025219 581246322 576609179 74112567 482669740 934128545 44707794 686580937 182576178 868340924 97618740 901639532 486778056 655564276 630467769 783396048 158116081 522699342 97339491 868603609 260777391 894967954 81405323 491784729 262184212 14394243 689210280 389763015 926801918 64763589 160085790 921530556 908674241 225935461 481616250 857874924 883223260 873955371 587257353 23728104 432291005 86574897 33502319 354567807 558818319 695352189 335522372 986695094 666136444 454738785 764030439 824154432 33847239 178921030 908826173 125240478 633610222 945224954 888352406 995208696 316566257 806507720 696503731 102560939 280876288 932684820 832268843 978310474 431513253 108036608 736556734 634906935 209340385 254932759 69785424 697741223 256378714 307566559 590947778 480661230 350490504 134985175 822520114 527435818 19881345 400327254 212053585 919430524 375336553 170925064 366017082 553850250 408295163 788454508 393628979 598355581 84547427 928616420 86293991 60062483 265887412 181436193 287735191 470011006 932833587 235158315 899535268 55041368 607805044 46500759 661890161 166115658 395240678 415248177 208246757 146040431 549873079 261043614 195720722 609489688 335206629 940666222 950748122 292375766 239371064 573955895 373167812 274992197 12822092 564599228 498635341 844852044 28943172 777566483 879013745 160628901 782295287 558093750 13454836 648619060 950502430 893310148 239875038 376598509 345210165 854474077 801788455 226873784 887972530 368434074 409767436 774183174 478340636 482819982 495678492 144428627 396219637 510898993 373023328 818900505 557990836 859481747 748202759 650864642 325090964 677713402 304737502 354693599 954915887 515992741 345323717 309816912 128976648 340327762 406970784 230336009 514703113 152079130 925899995 115502042 342077754 961847255 305516062 194175829 476921872 727115765 845130715 940740558 921658020 712997843 572684952 135119736 821141934 995799217 5861488 755819466 628634049 557149022 631866783 818662192 327927039 710229426 239338277 534492072 935491132 180786141 793992914 471742561 633918049 819919000 524520280 278697252 79996905 452822829 697809854 534252148 588647791 201746143 319749325 52248691 778400187 817370081 123352747 921351210 671764127 712530164 418823968 734490763 487859727 369982725 621422977 863627536 676622726 905252229 457993519 84409631 558440490 470540529 378103093 226066909 535887643 802100374 922349473 501165041 580058710 208112259 908088973 251611485 32794811 341642447 686096542 535721735 462803434 676662667 340576830 698936816 87837718 161055109 272763572 266026507 966460736 670579251 333573027 246303035 397794812 880051377 809772970 50016531 620486524 386136097 96890113 961473973 520792419 383548550 999598737 309056653 571517308 100615044 586557725 630463548 551407933 267878136 353309448 956149518 96542644 327287510 684098055 23923616 672761536 97261166 567285189 111806345 920011507 757657496 516244543 136155538 768518445 823540732 43347922 976057886 499390319 412862461 288044668 448373524 296567643 119743428 962267938 511328904 568250216 800708769 252672345 904681057 336339432 880258610 284607073 924280946 97330450 634932741 482070371 968577249 126007184 817553999 57395384 90266022 375132799 138937962 398104535 736898521 633535260 781770435 607539986 114360720 994413494 290862186 864379155 431434811 832646357 907165050 969103168 923003537 172996148 919474360 529830840 594549871 948667978 942553059 742930056 587236647 94774940 926510260 136086438 582786035 445463722 247769514 330749926 875612578 406479129 601118781 129207430 169549107 103472187 600201629 777027854 610389270 762514056 219007167 889386169 424934235 159802091 26771436 113165646 136294163 49044110 933708826 370444461 851262397 323784368 598990585 279484210 891737388 49839616 44565444 475813376 772612151 671671293 560891267 487530053 258128945 974875544 621974217 632509361 270959225 800578789 130324423 175329513 7827988 1427552 771585718 220282269 672397100 747704930 716082745 709471634 831456765 987914508 463873972 794632004 242772261 976604042 624068114 5005877 559074089 602487223 275230610 699114828 769086958 486880929 232903260 297792847 158770541 518379791 485377352 413524478 486972391 208478548 969557742 215284780 900048838 195494303 28088798 530584450 699530679 411993384 420240848 121375481 46428563 174216141 421968393 775871336 843529738 226338044 674475488 854538693 27186413 154193904 116047496 716796797 53392663 921423031 945086900 515390338 152326948 120138415 726882290 712436533 135430967 59250877 557336562 283472349 460789172 146591627 51715535 896500624 168194954 491953599 347921531 546914253 325924208 467133821 173663428 983734789 632728681 35194286 483297752 235033180 633298450 398027585 866002633 257081561 779574089 542470055 27058620 411518068 626457898 84685186 582383131 464149209 405314439 817626476 758358266 969766034 237514737 152000745 596296049 423150585 33708524 289127771 982622302 624829463 308689885 858329932 339979630 595003715 12601479 83029364 723783396 117802815 467479774 105037374 18174117 481247600 898133569 820053541 650422208 735916312 79898678 38547805 531860038 827623959 81668516 385457186 991503575 848944800 60192066 919093055 335342612 21705300 974590192 191373728 498308070 418291643 782711700 790727561 338739663 309758482 978735851 612100987 685976164 109088461 297264407 127829327 506215454 226654367 400520129 223214385 303183154 570227633 942257585 231699578 451417215 540573334 560643791 359685401 513079738 337054421 569837391 606081812 161865726 511583495 744202312 943238166 369567266 435863276 564361157 971456137 841957529 979573614 212837460 167311285 933412350 276855359 554166069 136074385 650413327 93825995 483267129 343793643 314767166 649573020 803282976 954734198 595449490 676529142 649970756 289675121 993316482 290840422 648103919 981108409 282622529 301716085 982224147 176431865 108758216 613579 49573799 169489452 821026562 741530188 122126275 403507230 459462354 916588087 197867779 811667643 285859780 862547640 880968242 357205849 799071259 292691697 791864595 242966975 903876716 398950016 281786257 15642606 99645770 528582695 930862298 774449511 261901593 959117824 322422484 854774348 327013915 443897566 290258728 788875400 865435308 420855981 254805017 689232949 826812561 206537300 47634580 646073192 517978597 314131193 850724112 404545655 676653198 961421261 536069301 681551541 418104558 973062687 362428553 697977782 553705223 619207833 283901344 554026032 941720052 941795546 430903132 433091542 662062592 261049218 489584636 195413802 794820148 44991582 584230637 12082357 603287453 8713493 201959867 241947476 502450321 717662910 50594386 932866071 647513763 25858721 681122720 250691706 502467475 885776990 200564897 599360 980096507 868345088 240177592 353930374 731952167 996836957 408864563 376163149 433687942 372465098 503065660 783093390 57503761 742615661 689399244 289771986 861875981 946460761 534873847 270953395 752387523 393122249 53077848 514700220 377363954 148524693 796248475 867477707 522557818 475613176 28723266 889272209 343159228 304244344 731952956 997748664 672077684 488077236 676473858 146242796 498711046 469984525 261686602 331581679 419610022 795655182 686324815 663094492 952135961 79758903 425024645 3097198 748885266 975586035 390723684 365018385 413814965 154965417 905968737 138152948 791987472 563421971 637898046 764716230 388243593 613717645 662102619 666255655 913103028 339201254 46883399 480173625 195674046 370607561 170420656 319162041 966677460 655482969 208987209 115050028 597413825 747381932 819260433 707118393 415122585 899439772 766573832 135822186 911749715 903255570 415861490 556028659 661222394 893671190 772734505 335342023 843317966 601247939 51867108 451635771 429949244 143017192 461362281 910519152 806496993 732353464 812169645 414537201 497136555 296552467 805323436 502694744 592999899 247653434 756190729 725999304 238819718 405504583 3158132 652815012 263478883 797657972 631010519 304325234 797156044 377083415 519443188 167880243 501454687 758070425 693985867 836947686 736516054 43356021 690409718 724286486 522551643 878770284 714921418 38796461 342040820 820778486 533856158 907812707 19104694 925743983 370725908 565512072 962371085 931294278 841266703 654246058 415481377 848360235 206231574 549003186 18471545 1540949 765306585 247758870 582179428 332924335 849939420 773322129 756476657 511178721 946632290 751473567 145124010 968785107 375042052 689190836 684651358 966897491 943861560 236359243 425630238 506754206 557792914 508310886 471860823 478602604 355942126 818360314 658125764 184410264 916256286 645662537 760669643 413422767 3275891 882657054 994360343 412869534 309838605 161351355 320936505 807075281 899248325 722430651 239312747 831303947 503119744 522741139 409210369 305464361 971048065 319178285 64695971 591140092 191768710 502593975 789671110 239482523 511129329 676249313 301356688 318074346 529830789 198096129 259966402 386571882 452601938 70236949 843566846 501478489 787808980 142185375 658411757 441550219 845278352 425095321 402776222 594380274 275524889 37135520 772259678 661177138 986692737 395143928 191554785 396426267 100921489 236025756 624120025 723567003 973500564 556876474 380318783 615627127 765532349 958620885 185673636 666644422 275765730 404940666 34545537 45286936 766824671 912580769 213227138 176085601 906985462 617092515 60741694 318974113 355091810 277569479 6603618 468628197 737543026 145502169 407282806 236801278 691548694 775990434 59091680 507884173 911862295 746434166 579932602 189569064 520807999 950762954 966543658 883991290 785087685 555913524 528914499 234005077 731549900 222827514 24172044 625319569 395743179 379517677 51150614 667126625 591447562 208425079 440262826 698336691 959036809 471251029 970278303 363034042 97591034 469684562 784834857 279940368 236458974 728036738 492250309 512782772 301231074 861966315 585778419 3282718 125985941 113690621 834960558 933806218 230299930 46600729 533061761 547839933 335382150 429330105 224624890 120456659 932746019 638340768 291068338 508965211 5257424 376449754 73756839 523808919 741892139 214625158 546333752 38610236 259574496 655491070 871692930 469528252 799784281 262918447 690343740 183490835 728412401 807093228 561181388 467625147 230880754 497081927 857915544 865382464 607682225 964376006 641151951 988161679 358975737 411083556 870156733 231556946 307520147 755210490 286529723 168724730 414452524 410334204 783680466 728673117 239564081 215973814 653510190 951035800 811794502 997746821 261110191 439061596 460668025 454130141 159902799 82522503 965587698 651615708 358297964 302490967 887960168 175943705 745711821 891327372 507832236 450413592 427807325 501233192 346192492 573433378 9505157 57986166 93435249 12114939 183154615 580917029 490037914 474658403 883849280 434513797 627261028 257117144 375542971 495975215 973003578 59528622 852314636 323850708 76021820 13661007 425854542 863798265 670774474 394605451 693938748 997018628 147888562 492668653 102332610 280180580 553398384 783609991 818872531 182266057 901379376 744128882 3589401 429135945 693102808 27135698 311141108 641797553 256225523 307182834 947236199 462217142 144884174 103333507 931900407 428441443 552911978 747355197 982763134 65405328 526851046 561861572 299109315 687223718 155569183 968197686 90985444 773154463 168345513 605917304 657175818 825423723 359352331 292446603 390641590 822530175 502310848 44469783 638832642 849949896 333598856 960113087 975260680 640082530 739698643 424723872 107868759 299023804 53630138 758479060 462475926 589300994 74878225 694689532 278529809 114574581 518776609 128328323 6190463 532938069 668574643 856021821 733980557 995869163 815131828 798466732 764183130 76611173 563194207 486868506 62349831 527880113 413485726 703751305 735127768 254718605 415842094 887824963 975199531 490195635 864553960 207343841 553270370 639321740 559917152 616456979 334233639 462916541 239921452 954826778 50130731 522611471 131338180 594853845 478232911 890339281 963083354 581862172 604258297 617764112 152429466 82900238 813748066 435922871 518075159 760086660 876847153 662672517 369828892 930494529 443516554 221974768 375864214 322118774 789818490 66245788 689722432 85989454 954271925 373882436 428732009 477822542 875855193 130667405 931026747 80160357 963732022 35095967 651070849 642778225 915512687 958082099 800294674 367074399 190756444 85896174 871937903 541921510 8605847 919589781 451951966 351876840 142700914 859961864 537338826 853509537 687917024 486906830 386753308 981543400 231066307 681901336 605134391 759934281 205225977 479283435 160235382 610580531 687315606 399340017 300960567 169410399 297672629 185422897 758292509 151128450 494906239 127832074 697187459 443286299 82534789 426073363 417246190 22439981 485202200 767829039 181446647 637020492 70004679 665492342 837890961 592953718 530674476 39979631 770997944 630324027 642038086 512055888 224529877 663668565 862709656 252440173 487388057 466327876 696490759 533018908 903125359 88289347 458460772 954630735 817767528 359443932 495599983 7355563 614265809 538376948 795372949 928379938 201904040 81458365 723780896 803544998 436478854 720019057 360213624 742858632 388953655 363409343 328452648 913091055 640661148 117905134 364854466 772098428 118903885 425952950 48852717 482244802 770725465 649026807 131065811 635597297 220700860 254082142 676274671 45540181 49193647 517025435 72265435 949388308 596062954 814725841 152064608 527272253 824874832 767518974 373004423 844767583 943154008 632522303 649636308 62541891 928771846 20961200 160031122 124750185 217002027 281486743 809906007 278880113 619728571 661640971 848798549 910427395 300655405 867089735 395292399 284657734 972585387 728151820 608457403 316816314 416458901 539451889 63403547 28298813 725017461 7849919 558657797 3469842 217165012 144493210 897714958 676517803 948129419 174441111 831512408 835003878 524126709 116689960 786504035 845965301 945356992 861682573 407330831 81154082 524543967 287539864 53697417 336192720 458847546 258385134 284670730 808560273 798003617 645488188 816733382 628072680 993342088 817693536 145725238 983225982 279454947 463109098 961053959 489676344 277004974 526157833 566659418 830025142 701139656 666588766 595653333 107116237 667890285 233636870 494691784 680381217 504157092 660321527 919902538 409728106 811353166 935337980 912545475 181289487 971371754 969774647 599466205 122314511 100119565 341299697 180737281 617575803 387907754 664940973 84408040 559679448 812828578 790125746 178020953 100085861 369471776 870191104 655060401 441514133 22640958 441851582 97544309 658687782 474159610 146946641 312239461 234347492 343837956 800223903 443443661 548045687 404052508 980132940 455029886 258849427 89448706 494296809 631832025 501654749 848485595 809507129 189799938 862198795 608021809 122288434 719067922 828101227 504983274 132435599 632151916 916077907 721744649 598450564 713065994 704960188 908884104 186136705 470518679 34098113 611164964 339667452 768204983 86272732 942504020 931392555 580209309 469950565 894916636 213107092 376433564 624983729 290290267 297230070 425697203 418548474 851865338 400255292 335751218 487263821 315358267 719278238 92478960 313487087 820463178 146258917 598204843 470450148 948026515 829741465 956911924 412803639 357460584 732048134 427489579 443638661 28339982 506897911 495813691 320947972 326481903 334174679 649843240 360833671 321054984 758175310 409636250 618723483 918391960 568555291 412088286 433339217 550693192 447188412 197168836 421869106 182145635 741791321 767335931 590499994 191396738 477853626 405291003 392710995 713663014 723503515 993703775 681199148 876971067 553071668 705574221 349235177 32671787 407105479 39824369 44297456 97957424 309440335 542596575 17880691 240629423 700151044 90780254 900789200 620339663 960916115 621543180 354417570 241579493 313093887 829412934 216159299 55240204 294835387 339573707 233685765 745467711 112334952 425996494 787093184 678904038 633281304 661780696 601404836 15463839 549663063 650536319 850873342 193847817 94809857 693779383 72275334 914593970 792199260 548532316 312866526 170591927 594362506 26529278 571264263 831204862 907662798 279405927 473467346 358420343 573371284 286686251 433581793 264472832 537650428 190245648 171074965 70170855 556635369 307029870 177044756 373181448 506268805 627551019 640192989 591438192 913078486 868718670 744928276 107185358 785377379 874883345 818401110 962230697 681300927 618217230 475215295 388355779 729139699 883023478 943393775 50113913 31290847 804926183 867993540 802925655 758786747 445342195 454505206 323274860 116926120 244713742 124978090 866288279 303472627 213801903 977276603 898938397 412431840 656069137 314236624 161287834 925638586 641950953 485265979 468874117 896153620 277864257 494050530 876615531 553457858 90837829 421642162 554821189 193878990 169715898 451765773 792005598 538013975 422692395 614731243 363323394 481798232 383311423 460445636 633378339 973718375 207633561 215150647 255167853 142281482 97868845 51877645 849883389 125506396 233639471 67008741 124672332 674250194 466086064 3826942 300211820 839437734 292460989 360018760 123013665 117504544 490408921 690179722 481522887 773790036 850001429 246643584 752421771 584941781 657108857 799450165 832212530 696687390 286214799 523152175 390358262 178490384 971665504 519592177 418759289 214693474 98134578 461249518 952428726 619632288 200681150 648287581 222995396 194398543 250682905 965895719 988585708 424450346 786576181 639299849 650770036 934650465 195737860 797559230 686430760 538669294 440176181 161694112 586808445 755700675 130858763 664593099 134070919 594633999 941287137 929766002 921477119 906663070 164331525 140032038 499101295 447170351 795687256 317906281 778518622 231326461 493513826 518005037 295202209 9684380 87837047 613863325 568436214 195133629 921799429 976188700 47537996 840425084 285695812 64716788 98052657 118614583 924430768 748218011 772625331 884154872 848566832 562316697 844910592 732870103 811000337 708073095 457088498 984590888 83119062 949808935 350687822 867815642 788879754 182625014 922169444 537523062 354219338 389621107 557571362 814111832 357852491 676156775 436804303 229094803 791032792 591315963 840397521 112714177 901512860 656379730 117045853 374348802 397785475 960148660 712910619 640799345 268456251 155262128 457365048 558702920 604930358 206848555 408909566 189937598 252187391 777506866 539451428 874903489 106208043 300447276 801729407 657159325 318555462 58422770 707253743 329046170 21725868 40732701 454871294 306661305 655580144 119540033 718755859 969492763 869263814 791660841 253286150 511903896 226150201 728785580 843715827 825562504 759533041 284289974 67837943 883976388 806701823 303868562 875468625 72777947 823444274 783750162 571103727 65575852 844810122 595965974 855134284 469333253 687431102 456003819 141952503 776677186 365345153 560169062 171202396 974501872 748890266 287838425 578963848 629708042 713982918 423338368 484687955 724210660 18562304 347389652 78510893 858239348 918556563 703841998 810120948 313528383 28172487 31140931 827996802 936922815 376838031 990511605 811826803 415162330 189680798 97811775 852411656 838261028 466540524 721548814 972477049 92077303 639753735 77772811 387817899 3103776 288809698 811124619 677255469 4955494 918305980 230246446 140964425 580744226 135856048 259291174 553191433 679413303 6232606 814124694 672354146 3536478 647758419 901387510 852307964 867823981 194035983 567602500 99192369 785770319 882675381 95407687 125587695 825679332 665741388 989617160 378041192 759748847 782317490 550208084 267219083 743460562 109832356 166509561 255265491 10749402 5713216 620456419 721741696 95561037 55622162 807384764 602093440 152301763 659873867 101057242 151811199 340194576 719162109 439813075 792306296 639841756 85575085 745836009 149972056 297816171 974665501 224986942 228862549 311754366 407631967 525858811 376788124 299326007 383389905 619470669 782660347 581950886 546872466 946308022 603637670 646134111 371414088 13191805 255740818 643693033 561412878 7256639 386205259 951114670 693621244 153793696 477767350 992226743 321769737 406947293 316637735 71221359 991902891 223293305 59879098 480399480 946854530 199585574 778019246 766055152 134900670 232030596 463718552 527340368 125414824 639706311 92404231 997147209 410068541 714856636 212629882 962522554 55355880 141298147 790335301 821603866 501974017 374098708 938842358 688784134 852763472 51051276 323958933 710151562 480773 822268728 509040406 433470663 942322708 73634422 86942602 574952567 977984558 490589875 916978305 948959671 205541195 429382711 191941436 905079815 485289303 202270062 758949069 375320118 756520113 272370350 778019103 345241549 171695254 957959215 296799709 500898635 824906743 767146755 409649825 955726949 232605755 970865228 574573168 365417684 860276049 460846726 643929844 541289749 533199154 444898831 303016635 776974790 929536154 503189770 74251949 570486778 765580497 424514324 381526566 659050809 551074077 79601011 145937968 111085845 101078008 464165723 665373193 223242157 264389845 826715284 951945725 727615056 478254094 298730563 493768257 346477857 256949824 407824150 448847451 580181922 783332375 464054174 77451275 652106431 642020166 797192238 684056625 433327907 1464076 104447319 594033439 398383672 454610015 149384969 689751652 724987938 50308687 951680590 805431409 943115937 877915612 783787647 860942741 125207061 232238330 468156953 476884285 344729151 233635804 658498258 305756378 191271267 604920555 437850608 987743747 779798408 660146396 84969466 285654583 42300368 264811084 580142848 290293677 455089888 530165031 299478356 498433186 130721899 167911931 573401111 237249781 667420236 548180786 135215780 568411132 551310413 684091711 404913730 268521300 404487684 593726466 863318969 835665384 806320273 918736359 870501410 263662009 753897830 95272150 405873407 812012500 85810959 718357911 660920418 589479796 429419379 699859508 556574336 613976169 410082654 871738213 725531288 761963638 458939294 825935182 438222721 67470336 710576648 974654842 265355752 444449577 616499876 431790221 311037661 149297400 774933198 585511772 327240924 850720888 804565991 529050945 131317655 126233614 25259506 958742383 373307140 217173719 709873495 389077345 328202152 887369525 340845243 620740411 768546920 437884919 470199109 38362200 309988625 337411539 191926180 860141365 282212470 864900218 748663641 694375545 789927727 896692203 750471252 979717669 358254232 39356110 59026304 555455225 993985114 874973352 885663810 904986389 569524651 541115840 867010962 277278981 80898698 592512489 773359352 227148424 654400783 896003806 204290574 220442737 439478834 242080547 318268122 30551257 41387501 295261702 424029974 208606581 624380434 643889876 294174176 921905031 917429352 805828525 708542360 555705943 442800548 994533777 785636408 339186615 319441734 403461174 221722424 938471938 528755867 946509284 464176303 903324461 823568023 669812400 989604851 416897931 903950917 904990791 545444652 858024304 948770789 955325835 107242211 824075630 364077602 548090558 200945390 262345577 407166193 389281059 876098863 969211463 632967043 583149387 748494949 331950259 274640164 813190602 554506131 906700498 936358891 558134994 216154079 671868767 575901748 963613994 991651354 528539430 247854206 844179400 113771264 675293877 884909613 620894134 763614563 210704776 598201347 595425716 408163134 34973402 246351000 458696580 536358775 894611819 204979456 516166824 298039873 418883777 594328307 539698141 453968394 795971706 777850479 696176672 82114129 135041832 165620896 651473933 992157205 743983476 687727907 464651173 97877729 285050420 125901895 780583735 559502485 126979315 722261367 818603516 506091798 862082867 741654568 757084748 841714947 717157044 133552033 729507314 784091901 995058710 216513019 619016757 798404608 838597858 328190062 578274444 428202974 862250537 352961568 661062415 8633239 333417433 4563680 800752090 233241733 348441464 849640665 745011107 406643812 705700681 453486625 239950267 394300871 440489171 68267709 811754492 292348408 752633175 521017556 854375176 494379194 667878795 360131360 463791536 148816482 365690207 432488698 699243387 905199619 292813562 526773929 540551693 97609766 3871211 916457476 264825558 657559296 59291237 853521196 237187730 157345158 254007451 955157781 101266335 401864872 763138243 254164448 837383592 833383116 859416327 95213508 759627548 207981206 990195134 282750163 593617095 33870731 447965215 122293448 944989838 136002792 954801169 203753241 786438131 336682132 855932542 897023344 437380030 624664437 504900137 671621073 708760221 592170348 50552956 446347646 68029422 913696333 380583592 488626905 572690403 39055584 165960505 773348419 627695558 952633279 455307771 919490901 634305466 525978529 914614335 204215377 842307237 98315732 63016366 37943302 15661750 614195855 629714374 301264925 811145917 897632052 719485209 840691582 151881214 178322699 626260431 772059225 915567111 504845465 824549892 141665812 72888691 829019507 750940150 112071934 831201417 382236107 463443911 599233840 683688128 571113902 210759434 659365982 147132588 961456807 958998795 95864064 870177183 489959000 144251059 551646447 16406458 976059719 424709000 542980548 231961382 480938913 901024264 802299077 361853685 996197949 812636499 621574910 185138627 133457478 687098574 953433241 612834692 313452649 975316072 765316276 749305845 576037469 572452580 89637355 279659871 626303429 127573959 924249837 491596648 661555880 21906615 371529289 382347421 377815105 809138458 845924023 360363290 741128293 13864221 943622985 950921965 213994656 441403614 97406991 297296905 446733133 1246588 553805546 737981328 274178376 225180909 106376620 781287397 873742086 834778917 464910375 294640724 996933857 801566567 953363823 311244994 61100202 806851604 117280535 133455929 505100740 762599106 49513559 263533538 358829466 992704280 760373715 644690033 177394339 230680745 72274790 205055679 342970561 754936024 684542825 661691112 180027291 183278178 180198381 801400608 531497160 637019590 907283825 753978296 572934266 77061080 420797344 113862673 613203215 659220757 402625743 511043862 474304691 180076866 835727185 555649519 282947166 333667310 78045720 506903288 564776620 23421254 341607064 775207441 366117424 366608807 4059726 550258013 644486877 739759907 134188346 315288653 117434083 40530730 992323326 822781908 840827558 528464437 382803326 994765204 127694617 418797852 70307476 425319194 159097587 953490968 99857213 390843210 719894067 707281704 668251850 708953716 303381009 528387861 867576789 54792995 882263114 888036920 978655257 74970499 410869013 416393468 534868886 622963144 567823614 710581622 375632072 199668101 898882709 227925977 791488043 285997829 159180010 270933221 301822231 975090207 988814618 366230810 749683261 917765033 654343096 490164887 100041032 184063934 84113630 693399600 331977941 87736845 940668155 437586389 451196571 622952534 741793076 652769637 222113408 884063334 423375738 483448550 526326091 609875366 562721123 533930877 597766306 952350539 855925296 419163625 268694447 966145042 134804186 693211878 757463445 372549491 266763239 233755663 306166589 242684047 473651973 239060904 626803929 467749506 473937077 760080150 487354670 929317140 755650104 48405229 102959315 623998084 102069307 462810023 109977325 433614557 617992697 399426860 44385490 924209266 253300453 923019231 427808140 73640956 756740386 998969963 797050895 169921529 801993542 866174590 847882693 302831531 130463522 366524779 825314240 96012001 8924467 188734018 290932576 670968570 986170233 421918857 717629165 434833556 561236047 570925080 666876231 384619825 910814223 581068492 473972201 200621841 248264295 866976166 131673646 436046891 569903880 279083067 871256802 659091210 565761530 194076407 658092453 695095165 680773461 872016327 953604069 942569795 42898312 307883841 88172428 46632473 286273734 514727826 333634846 188448644 181749319 196484954 687354069 946354774 584490970 617874954 247678183 512833908 483470484 949450840 151384860 119478112 790227014 427014541 413293458 422312826 748273444 501585609 958094795 901760752 429970348 447151901 101806530 372453957 386530096 752687856 123674258 331246532 757328226 200579969 189092181 137390663 247326434 450628741 293634968 338717443 171501619 307716038 542938562 939391623 715883847 769299254 204968876 243255647 285069938 777316024 679980676 635033837 717194115 831543008 499791393 889457193 494996745 676704648 155394701 53964057 975915634 877362834 78341244 995417969 824399142 953519296 572226328 28656823 529702225 69455323 941017787 761588316 570159559 723424833 693221996 334854827 203599739 318124991 651780322 432501143 51850920 322218804 80731102 948209006 292765995 459935535 755733021 430736123 667983999 801916491 19488474 132948825 540755982 578807190 329096744 339039413 369174810 666635883 520894826 127373590 498435631 692451181 928857088 853677234 277546262 287567371 26286781 697969597 311077008 554590213 129314228 761207665 806359730 847350163 977661873 163864270 429768551 704290962 931240536 292402230 85120676 362976335 296492728 207506316 380862225 47764673 38164686 855237019 582177252 698563099 360801913 326075264 133160789 247082693 231902444 246495089 546194347 613347772 450103665 392343156 118065134 303438295 118910931 813105436 594105790 371921299 804222027 921619299 839979015 225994183 379602188 195266307 758988504 929833634 841836726 598233395 834678273 896230246 764604005 584947413 447954195 221344727 590912738 945954941 144535560 798476424 310557610 403073425 427291680 567447473 856707951 309741601 74883976 708501720 400616098 252207786 551598935 536418707 89599075 674318744 428869136 796720508 32067084 80049142 789647695 213019090 965370828 775522564 67463272 152105035 499742916 683263384 471842662 286552528 811885089 213631505 459475551 867248684 656119382 555313751 691247863 891194547 484759206 132100837 512425841 231738309 651744871 829141921 65705804 193488344 848492462 278437280 351433332 885141529 92610532 711548885 241619605 780338846 207970571 30700672 840943958 729848003 460951751 992818777 469071857 790887697 234351954 573753871 454714081 463796199 181940766 922992349 987292709 253835649 797088477 825157051 5651119 68982678 818384623 254095338 305918209 329770616 425977248 678204735 257638665 3590104 286902937 946606922 884290015 912171734 134496303 575295356 253000490 293271987 595683874 126945401 185235260 287926499 238314523 647917315 190075002 742275416 687531317 443506455 609303610 587899384 782605561 61645887 168305666 90576607 752753837 262205242 124309707 399561000 345157082 452757716 620481809 270857966 734637785 809438885 88685133 284740501 851900798 457720384 132968593 699259641 472479064 832479510 647425357 92345087 177093860 54566407 26948045 566557026 892612188 281749041 190092609 348449776 735317181 75275195 577264268 527463573 694730377 972366330 156809445 688419192 601214558 917722070 69794586 344157332 817357551 659670594 548977459 821764374 989399660 125913430 608658040 215197641 859665464 535163608 641842192 40841028 800868157 924709795 819267000 110590306 661736539 596019065 806425155 172354502 21470775 559275287 876525970 902482165 198213747 914660913 908792719 431413508 602517620 91902724 551781282 736566773 439788237 389066789 687242811 188116579 154003368 108166448 782378377 341439106 86888913 607961109 443889594 248275761 452426176 234495175 379311735 399604675 628096997 302581844 109362719 72182151 566075922 277731577 253907273 52499438 257263066 153972330 862563256 189208381 619269697 132146846 128340305 244082727 842024869 520559574 65941175 920065009 978117986 652114867 362762860 353800080 404119506 637295071 515865176 428539745 724169549 418962112 576439059 589765492 293361523 387587667 29912784 860249121 158785542 217881136 309011060 544783670 199846048 259999155 838596333 854955789 140360909 488148141 657366890 219143241 739415949 752684127 52168226 239936995 115593039 267245401 926986237 297928995 186719817 880365194 998547774 277206170 260669461 686350912 375554769 161276656 686208796 160967393 909289726 13348914 66540377 19498392 411287860 590243145 400423930 138758444 417047233 321627035 508560056 511222568 340503083 860424868 745477555 124581227 192355439 423831168 192165723 360574799 898479289 234744729 40888711 565911515 963844347 673531850 219874557 518275791 913205859 461818832 804184639 993133466 770402664 35901986 865339153 560705258 86128797 946360358 91587021 411842871 361210306 761137960 92416702 666972847 583772438 750060540 422936775 154066970 782307476 754874524 650555819 961539330 304147679 367309972 459276187 510244163 202583129 378501598 895110087 858821863 509973799 291626473 32616618 512556298 471159126 701860189 550311546 783698435 421692456 296572547 693708501 297067325 188006864 386277712 352583691 829204899 299444942 66534377 574998804 253640115 613368324 849753218 109342716 407619527 773582318 451531057 856401205 901157456 321580879 927734130 526461057 165019478 272394650 16500124 140295 632909351 995434939 488429006 34362979 818275518 695275331 456688023 271361269 437834866 818574392 989799688 667528571 214664151 959046771 351078311 848667966 826170963 101605187 339231731 103364826 88362427 754632511 491416986 918195719 714045478 267629763 538609236 220451976 796125699 739989222 436335024 835746465 209457037 39674835 344574021 827999478 56959952 201845510 218933833 937289309 979392794 210650068 892695284 399244538 763639643 605003080 206291449 513101822 308710298 843158405 225462166 146872443 930889270 292232375 565012110 47383620 520274644 111072095 120755401 183377489 682612151 446848067 364107341 116104212 793269531 854229377 397441324 577391280 488547989 896143038 245998155 144285726 994332876 859221148 670718810 872823018 411199587 963054954 46051560 837983049 452850848 77419318 867959060 856322243 152081388 547116508 638194262 74036944 987088612 457150985 692336663 9733759 21143060 522880292 216062709 283084007 337611316 151349381 919071392 732019053 661825566 109812681 468503356 87061421 624290884 489973508 339313813 238318179 268977520 483813264 155572362 78649331 73245250 190770859 281376931 440005281 138077742 982480432 583013697 709660281 890097057 422055016 847192162 666624468 557211710 694263596 796388154 355943496 522702717 668718957 17046682 780619154 997617571 290442384 253099609 44340385 733205990 158299771 83236099 103473281 160981872 214664989 668539241 71907052 970957735 629746374 815448203 525642461 712195137 556076833 289678797 369143142 99279158 887989782 661222888 381157661 990125542 911721869 326557073 24763896 471619209 865486320 656433000 693140018 720070904 562468671 615498573 949661981 423510045 110646313 726043174 450550593 806873247 529802644 637422856 440937762 957007878 447541182 11630329 617934874 448195479 575705731 808180996 687379122 572147898 178955744 983525059 548708857 145505263 323918199 287674830 436705140 65190018 246670926 343706796 14995862 222037761 751566313 738049387 781632427 171569749 686612363 734421120 205105863 831367213 701883255 956895885 547882513 78363428 370870776 779713218 317957973 497963064 888609389 559553869 565560816 31869589 793553153 277579812 155264940 208244980 437366327 783827298 353827687 177610196 534096254 874739091 618142541 732138029 466566567 25904107 155668563 742199515 488098136 811968225 33398508 965068741 217674584 17830759 399401076 740239718 155096874 390876356 45313503 662323785 861642763 236802409 236335639 418665102 150734058 149892754 923061797 125362422 706363161 406258379 701125570 456321083 337562853 4265872 106090474 336459472 841187862 18700681 262208159 582413635 861964160 921289433 681686440 128138555 354073624 360190420 808702141 910472503 751562593 536520908 410228478 141769182 300468149 824879348 961643899 161809082 646024277 906418119 678804081 702529494 459413408 250746444 544879131 571800428 65758662 55984026 483865405 989801153 957764540 875121700 935637386 745153821 837723651 165816716 658594252 782725390 997694532 753212806 201438886 787023437 556245498 550025934 844005899 39110128 292903214 309662171 813819978 356360988 473726772 638810347 134124242 72124285 135086018 75501070 825663567 961398607 340944332 120462544 727639114 892615280 44735803 862793053 805736658 536811780 17442279 409180006 109104910 53019180 598336519 704421512 658005661 314292246 788324576 650720062 859126844 365572432 887133974 891662200 607861756 805031774 781609970 730816837 446866975 713339266 937140975 924991705 749907385 326773801 469381693 956055177 742858766 510756391 563803098 30143739 121418287 881355342 534655990 526746297 297214496 667095393 545149409 251258287 6383168 394556778 325037369 832326514 307336859 159613935 20528692 513459085 125043202 70706484 45745758 725256681 68717794 943641509 837876696 228033068 478200303 360270367 43530338 136048749 268440271 689106194 410022181 754148905 159813242 448091131 876609953 358389036 834776797 857630425 91150705 902009355 748875309 461907291 542548343 681146834 441935559 898083797 578312574 74835588 567224181 237592635 997136192 580398810 191592329 534601230 695118024 758241062 561057999 873198335 247949077 929603251 416247427 11271879 149525929 99925065 394557139 673361134 22956886 990766146 943058726 585942337 487671466 347017514 762781341 880366879 741199668 719228008 992082166 829941977 237185744 628960194 80570250 708398095 640863273 836132548 107074107 219095290 198785362 276354266 913437734 753918242 16237090 155338019 982352313 532226156 182114591 522133619 775034245 458622369 221352414 113065064 904106128 306996522 163550442 591556746 966692125 58910196 41643180 631462835 868225897 700216208 269535437 685826616 887697 327345423 998309177 102366279 144135693 186605215 785692265 34701538 199062303 425217461 995858709 905651064 27764632 885511719 456391270 745492677 393956423 251620565 852323349 943702686 80509160 422970743 573973095 226757389 409575138 383719684 982088141 637544210 713890006 704469824 842596015 173871635 602009688 975377054 419747743 484491130 841359224 877510041 440813907 717067241 283092396 857120734 164337831 636822372 596424850 20542227 426357950 823453515 85890541 10604961 576526021 459563430 541778313 244889310 803039670 489698181 869132009 617667174 587328624 89536678 808396415 914300346 639921613 442769249 49432942 748612768 55688238 756969484 606850874 506028295 369056618 439193023 658717769 886486034 866999655 893325386 645253708 891115742 101487417 899880526 632808575 347909237 682003275 459839113 148578590 157601553 495586463 948821888 336181918 252049246 817990989 298676201 588655946 30875800 663512501 655337718 349836572 86792688 172942546 213080242 925264012 629469803 679207656 734072379 521251175 847926723 190058795 46212184 698721887 744188927 511931979 617208065 848688648 568972233 623550402 693689791 658930105 634616408 88854354 936934403 356590533 872166869 155881150 386262606 231646300 772348655 405777572 207320875 737885252 83847625 887834777 877092119 682068286 313254167 509356150 854655865 89098007 833335215 241897573 524167186 848329301 944964919 778102579 850080123 849248417 649259900 641404386 910261898 644719958 545162271 782870194 357563207 235355076 301225415 139825070 595004011 188603621 193746624 804219620 159515417 143555179 785713686 58742270 259041932 746859922 716995475 888707159 520782467 220473102 776496880 590781642 886999428 319847319 2145962 422898908 985451282 997473751 615228981 885705641 427890672 740286416 338624998 301386193 82441760 30956801 719509673 294486220 466434134 845006377 159090618 884259890 335805738 194678016 247970003 881396946 565842307 622936779 27877379 582100392 703309671 216082363 35829820 729412247 937843598 57921176 535973083 39293098 626772631 587521186 348534611 157039431 670122196 293822316 88612731 156022627 520731133 495479961 1594586 619000203 953881994 904054790 355037702 514984573 155741256 883985117 90157414 499579975 562048973 813855206 509016348 198734516 443261905 784818984 602170393 503791991 382825860 838645718 876658927 661778928 324526660 253103977 482514738 831803786 361728878 14353173 518327258 199630228 529138190 74795468 245211102 219377016 823632581 728037378 688413822 846429138 685538709 971535974 686741444 770472545 90177669 74104510 894445061 862388628 874622878 564946202 897780743 508340962 296475979 990633229 789680241 726612599 239798566 426459593 646794857 891984073 808717141 860380007 695273598 393276608 545629565 31956582 427097373 298302645 811495512 86823646 474842094 319241474 122788069 631077022 521085028 957603747 378073545 130710022 556241269 758688100 456064852 70343329 719024045 828457796 732712180 868744045 649330620 86152104 483288028 923961206 243468989 304890210 487404522 120668150 771580927 541854141 819830513 384054786 691542713 188841876 105171501 226749364 638550892 601813470 288237601 625311825 345402195 578539880 894319947 108199815 60640083 790800563 342102508 12298373 543248438 102681378 566081509 860127969 656007185 132908397 195345074 362168023 375872221 59965681 83234450 679593082 836354382 151424661 13690240 622314330 937174871 72130107 473201564 553320181 243593859 505192036 819019890 186514107 637050401 239014944 95903537 209889156 818076290 222307752 761761229 499648206 216738443 571813796 160672200 879776867 911864830 510076199 605570230 789364029 884770847 536297949 509334135 513841811 515877906 103519433 633833605 358159292 644093384 57512953 342534618 791134338 171647421 217172449 560059192 393723654 189968065 81843498 782853620 399796360 955080117 205273415 73627293 630810080 694379464 874526263 25222350 478974565 633132983 925101040 646885508 61734842 379320589 761014493 478773982 418620819 727087822 355967340 474808064 908471091 637380782 204266014 399082104 367352124 20287867 382096246 918209557 587315980 895576646 557497419 697283212 674704605 150161152 143580215 921990007 117490911 221352665 63036480 923799993 582186540 630466305 644601342 716431498 378629557 200146932 339770002 720148882 61511264 226939326 975330837 577837043 169615905 739370898 18455853 655867482 478798932 55262978 443867831 590839571 425311163 175513892 778428123 413542948 996967353 21361136 810813604 576157883 233030496 906369470 97234430 317828599 875306429 906687603 934756550 498438289 475552152 213821969 687440192 271147857 662616488 823546371 380822774 27163928 213107885 613055827 94588918 23339920 93809986 187979344 93562360 901127305 380936261 386714561 351206875 845971985 684843581 348908781 582219422 414094730 81636687 504246973 680562263 816041489 891813419 371079762 521576200 49691237 351016452 896350690 300741474 231131404 293633331 515232581 689561664 177587301 243489198 746774447 215751232 285260093 622625876 924360361 823835443 436514577 781435275 602168610 308815242 615115271 751753173 855653092 284326573 166424522 557142335 80792849 727363992 618383118 390319226 721272463 127608871 550788172 333025081 158545447 46605495 105793176 331167551 9010618 785045254 203923541 115782898 640088741 378900306 184275192 93541399 158328122 116785477 198869321 146326507 691077450 272585686 617541148 662992641 41665693 115569944 374884641 102392807 80429115 884323979 927552386 298751185 364612510 46152978 859997441 5975642 769791890 759409407 507714998 727388863 894946751 378173068 211510126 909445387 330113895 516356047 994052825 95793787 62555409 158401715 151063614 470631024 197636014 909730783 269635004 251153286 438866566 386086720 488703792 34770620 551668225 192801190 986357717 745377807 352680967 252938282 809633090 605389488 113727225 871189698 414771343 117749577 429419316 350689143 539953107 712615248 364557325 942013217 188014344 337331308 178840528 933719734 457379259 946894489 221459846 980017649 108791711 948840932 470324551 140206542 322467733 780593275 595479189 818472380 701162247 211019337 290217612 865998703 231006818 646717162 289100354 746256459 134032834 606647605 385448963 495976403 700292573 334407273 338944993 872595817 71039246 10518136 408504572 428433929 393931894 556337656 6515076 733351616 692461519 163698196 867325975 340276049 623731657 167907284 992286333 35493886 705252343 64717268 845850785 499733244 578338472 399361541 33432162 509756262 919072817 853427618 166597030 207648386 575819488 709283354 436248489 259065208 18815556 507102268 677525524 931746588 405209060 341430688 407649040 547234173 671634039 300119125 20667036 290387580 954192235 360054506 207146723 504783647 968485443 621021782 776551061 714608119 55576867 698324786 757554725 495062076 168223554 791352823 224904417 715146321 797534877 18314639 242797118 919939715 543122698 817470763 948642001 491790759 565987285 701434502 254424458 50606401 257623124 99736807 434100181 102659655 741167324 169946111 562261666 285868524 905484922 318299886 409052410 70802466 394962902 117607294 267439829 447353565 604443306 903333438 137343138 578315858 60087316 218081937 285636724 849090940 103402323 761220156 942551361 501444427 534291978 774009785 737177739 638492276 781820883 44131791 967344769 128003708 905572972 234342045 502438278 490341702 643606570 637729195 872442726 649241092 682456211 395992459 295424604 18150726 15236194 921588327 596173546 741316798 636443370 397460249 749512914 521143998 601212779 770914944 307320901 817154106 495230103 858420032 32679280 250467711 841297569 381043830 574515993 856440669 964111437 592570924 662002249 176614325 937776498 914636866 705139751 792916514 121031763 41513013 94958063 512581509 396599520 667771025 325289753 892862759 644867137 940156189 815576906 13351703 255526703 154827692 506472638 175786514 38150734 869223757 950577426 6496000 67746713 583610281 656490595 181143831 983800628 919011439 989057218 327671620 828872526 788022069 864185674 248559264 781210872 910819216 574741590 816993498 523390232 417494635 201943768 428593990 77316343 879670317 44680703 71617370 593733735 716825197 509587516 626157317 202293953 902310373 527032293 997229177 58628086 434792052 642609078 341906486 246527581 339677789 139138188 330607773 208365136 928932483 640890098 619798783 957928812 42677391 187724293 35097913 232538080 102536006 221857975 154242642 709346081 561334874 202299563 137980734 936169801 497391038 988121106 631339411 63483298 572380743 435591007 254144372 598067264 925539453 924559660 38949276 399727930 261138150 972278550 155496321 95689377 525918498 287166980 948441582 41276839 710281436 834463473 450591479 128883480 556945078 857021887 788587112 373644658 721864852 288462544 748774155 446759403 136463664 724075251 863345744 487958721 261777766 716191966 317720752 150721927 43795507 527893001 632638005 112870913 11137103 725449462 208616780 49606242 273872330 172969026 413124030 295615299 375224186 669619903 194229895 798198455 186922625 359886482 256370942 299821669 257880012 845232408 187038988 1084699 168711567 63312171 845458201 654429666 454468017 527997239 763311489 582266937 60039690 101922938 634468024 537620026 865360424 823795872 7895325 314335460 903380462 614238918 729255293 180197172 720674996 775666467 32073910 381062419 444876128 324762164 806726954 608478098 219648246 765103869 919953662 419908561 740891547 940801654 586463097 154260920 847839932 541468031 373903561 922211202 179318214 763653954 679345999 487209179 294378151 830598587 782886860 815391469 631137664 206271280 1176917 59091589 208319633 156397922 245318213 347466624 612841728 10439259 161249292 180607121 506747752 296208320 352182816 542671912 93483474 287339165 847526677 51295809 323001735 353114076 214254364 274695324 477878990 408975472 180432205 953991292 519466085 794862215 420820041 829338212 584273136 880984883 196914729 833517808 952255425 506894067 757601843 762557719 485957148 336516655 37698363 860495934 177096944 931167857 275103050 914384127 638431017 352192790 521398123 551436092 460203710 837228231 843861451 138975361 891532210 433061002 830803877 711037803 724236102 327144633 67888378 504393398 206401445 509932969 390233516 740312218 150941455 942383445 937801171 218167519 495065295 508249510 775380341 414343736 482971232 436694542 760017073 707089603 355843950 480906784 586110968 347571719 657441671 59137408 563429530 781930001 301230348 499898622 678672289 509095422 20032107 120913845 469675660 892951946 558278590 563082679 36382625 540114766 515755274 149371586 825041663 620937675 317940064 694876770 673740181 560361590 745800232 783787841 513394709 869046773 633338219 949850116 952507889 68611785 141394515 662119928 948510644 192859254 795298967 939112575 294875515 436398115 58094875 897535515 697966123 310487022 207806981 473831115 589007747 535070007 372939008 520513510 421335311 423757754 146768769 870249852 259442199 615174471 202922441 259737196 284052276 407229815 230841940 961316347 481009105 935691273 810922668 94787393 115583604 837096859 855905689 219872064 59630711 597003170 967071982 321837403 201458800 666578750 959957897 225305177 58388493 794818404 317114461 163257484 211935442 684041324 109067084 300112269 309628746 806814021 24450503 462937487 133899164 503644017 202539010 481502029 414214631 133661336 482040392 56709299 407888186 985219129 54155882 349032841 998612080 77393353 726425188 730596886 644093041 994083517 713048006 831183109 794248977 960780570 743789648 201694612 937044703 42518472 806392611 634802735 883164134 58927208 955411669 82077075 555106722 478678494 800021863 535127957 775594073 292884897 860500003 661087250 289710629 537728273 975625236 9913772 262448861 865132013 321058319 912560934 732664637 461980611 693691341 616891108 112096584 488694217 370062132 863197596 952277643 28080194 302396991 245172142 934982818 389429108 427717174 548961429 569603764 520506572 169332029 535185956 130749345 529014099 603696039 453709001 3623302 129943996 212851664 560418849 606183190 688421570 487028983 532967072 103345505 610079370 217722087 379092463 37120407 327748488 686987363 407611200 883009536 119904600 298300281 30286163 344947040 554628449 524882856 905793125 722722102 897388498 95002234 292119327 214414660 681504146 393809903 813491755 350761705 6186556 855607237 510035075 449350955 300522301 851584515 490956424 485243213 203479647 395213706 319744877 654597228 566470051 135555979 113257914 719444679 490792168 8821457 864163687 738258934 627384054 448390867 254532523 154420132 674463890 902459915 301518680 189416554 134921870 292264353 825204868 53947577 827713699 705088830 67077657 888612262 336796299 54180613 362885916 676084763 3917167 100877933 458503017 104498707 484717615 92077290 851861695 858190724 3724732 623725394 267049573 795948454 827731508 909010459 568862853 545450792 892893109 184046868 212167554 543828289 921528371 264230998 101781712 686248995 77396490 395931459 833611062 895416796 90040794 903048034 661616283 240173516 654248127 694562512 299082522 327774632 837912651 753631738 621690728 61407606 60487472 111524480 596402996 327344662 366694798 81337422 323633329 469852852 408648280 52835748 805754138 148585593 112761715 20077568 434057611 216215555 620964168 273829202 640720126 283000642 784852787 488711685 184820505 173923485 896676448 809200339 888664269 547206177 668338045 349008139 291793242 126398016 32232576 922819374 440873512 651144173 34818328 862029327 213862493 112559478 29115002 158878225 457919477 169759238 38404341 332987167 952512389 198570851 13492094 721187490 168310895 404270030 973554991 505594305 698880188 722495773 841499885 243216435 254287583 395955179 82448995 802333328 862377201 574457630 878149419 210018036 576049902 950573059 105458101 773381315 598414297 562370277 404527320 529418177 34581995 58880552 359455262 525875912 280819428 193153050 777680162 262644781 599985433 167494664 360577622 643380834 254375121 434389089 581124006 45630706 299986794 579301910 541718085 616064531 371267517 970038680 207554645 685328106 186372523 741810322 695858833 186157318 95174001 345382357 664161592 484350057 85783831 680506162 577920239 291801835 781613785 175146379 91664893 753605479 266936155 650124726 229426332 690860264 491000646 169189680 276188776 745358832 773541195 638164152 752916307 516391817 799822308 238108558 280174651 874874916 404734875 702183279 841593480 195620267 778618892 669712384 206807553 333341804 664641278 964655413 423317331 81393927 860156596 664510278 564812308 216234183 742874601 360312773 853337956 934688718 361569401 156047159 680542961 582886190 602662656 948314762 573006606 180481060 204897606 679889892 412133198 466481354 858421571 828136460 529682551 637942150 457041198 230858520 591389255 644149796 403114944 358999366 912201779 545520746 59952220 322050062 911736469 320316669 412096817 138375928 941747408 252338997 335450016 868916006 587949325 573580932 303756653 206369676 157946589 227890127 492844448 284551717 866610394 651991601 934439505 4305593 298112122 751464576 162262899 532716807 115033420 503664644 60979519 93677991 797695656 72153872 2270637 388940221 582168621 453993739 306256515 718094212 201507558 815851167 674131391 141158123 108064405 621833444 265256461 637825224 795127412 440569258 558920646 814150711 348062184 577933154 246786748 618142845 906582994 432537624 229903999 980518692 391552131 677678817 404773252 217275120 418913761 610396345 4629106 642144710 266620721 556227871 622721739 401847601 504031993 850266418 693301168 7054257 26708500 508551772 249777969 54883027 548426467 885874799 904333673 947114364 719656584 11181743 458157058 61974469 700883072 366269297 640675002 458895778 114498071 896389524 786189586 340775927 748959043 751689295 505381936 45351699 935143398 297980778 213836486 219046955 664461081 579196470 534339334 773013061 568862252 314432861 5453572 907479382 51940170 857898336 893531789 140206117 848875720 994148057 585349940 992347275 368837657 905746826 15595695 583301904 375699321 319036085 371102045 381001003 743515679 612334667 316550373 434618973 403148854 601679841 635741405 7905226 888102309 572686074 555217996 359919741 501669789 956984405 954313127 136600670 916490855 248116439 521682242 551858657 344867258 592833343 215738302 962712234 677442805 266370311 549416299 891108340 785523006 650136181 716022439 511879794 224336379 331747200 737848771 63719556 594440972 790465364 79312711 194149728 896556357 532993163 956509836 575976787 962979498 630402422 558245604 444081539 382245547 229525366 814427502 401090014 606375252 837678204 261966182 354387715 227960466 308125314 667152233 966864454 515586104 356367364 963511425 575592638 189386541 97198388 747942115 505837576 746015653 898194260 53558711 552098503 155786137 497836241 185787823 311436898 623463376 577765148 915827536 15481247 976458808 685441022 155176894 867751471 849388609 571505010 627501946 363387507 648437324 817652469 671649044 600691375 900539460 86651927 356751332 514374479 728648542 914504256 637870425 145718874 712653223 518031578 998151731 754536851 576859762 761798617 143774974 112993290 393851089 12187460 127270705 279368205 593660481 976857125 610880391 550142053 980531407 845083815 131382656 756582125 182994296 734547205 317167193 40104134 779893865 413232575 733140800 352916928 452831376 346643810 454889413 36907905 883483352 573357439 33700878 846586436 392094027 111170949 469560179 43552278 879215719 785076139 388108809 590060334 784057294 480411131 747935404 656240050 822175048 224327077 833141345 277538337 555879316 72916353 260661588 622273398 314132432 911764498 704245086 95891367 166789491 461183548 247824573 357439598 12643034 407533589 296547520 290128484 446776360 400587414 997132443 709016786 790983267 617310055 134212640 609115579 90851949 25216516 133765471 743118573 574405866 601267275 314652459 959793803 457992685 365023690 438045516 396947548 856544482 774354332 107039899 813663677 543432585 969050512 221573503 933591788 30117636 455413022 384920924 59042783 582668237 126415119 618862034 555135141 131375266 981711266 654588930 893227053 530944987 351386540 703454755 554744865 113708137 581661060 473921844 298503855 567360721 532531929 423069325 24777390 487657262 11209751 510045225 429327693 482047762 759795758 926462616 355402328 944046030 327156169 82452119 720387121 197117375 589394935 379786793 220083252 852134844 243884530 324109495 152398299 366516986 793694200 753929291 727290922 736231832 194849435 825592061 751590147 15995808 887451784 842948321 651956190 480972909 977602853 861766340 418745320 426606853 296022829 911337240 512671942 79967997 92756963 175779489 997088518 2613864 875049820 298680498 451786305 919091575 392835386 917580408 441643688 435059328 201552444 879769741 47393865 256141445 293751188 804931198 820785341 972475506 494693033 388366251 999845884 825452995 141732353 147580857 77805841 510035233 120321368 222715262 828594402 761757231 341076672 368078719 865728468 758606973 524772368 353800138 271419751 681650930 238955879 592290334 58825554 267735252 579786402 168766674 80743295 129093550 952371032 426317609 51168914 745530442 62076917 971881767 24220561 182858545 705560603 909134979 653787369 213233436 105275454 512930342 744216903 146050094 698715878 235709084 200613790 530959578 324055638 194660937 409545261 561952119 224647302 493902798 508965269 977878614 702868211 156721864 777881033 737784683 112847997 835060687 763133219 711278209 457293612 293834987 903211539 54983612 197224114 734092894 24223667 232959362 811108319 68960845 35983481 520300054 993224469 144191348 407348667 127051771 665963956 395889630 289933027 177251509 774539028 607490835 491654228 242654184 628584500 521605106 133245658 351461911 775139159 201754627 658530198 50437390 46838268 222826001 850986071 375428161 865980571 519504810 999249731 330551212 713997537 945825622 21299691 935633368 18480560 229674215 971003536 220016983 976831401 707420118 784799430 208436019 484673576 807345634 288481889 798063820 912520293 597633808 167544276 521231445 751572568 526262829 786873271 895189365 698538963 126578386 115987822 56249232 82449626 213498675 32972514 355415440 716683317 932546423 943100554 296985211 586656770 938741417 92969574 744434863 496190051 990087523 156387978 583180166 298747654 889448317 487112249 276472631 379890039 532102615 27117653 201920870 212120405 689014059 568072217 993821788 316798458 544556816 542249304 524203546 596399613 527455194 707654005 414314742 110424523 730328969 492436999 600719781 662875273 673078056 909038891 77684153 614708777 702382174 199556215 106315319 815672603 262661181 103593209 178693193 418246180 504154051 748862789 661665571 286123215 547238692 621175253 760956988 607564466 636303035 31097547 539312425 296198719 106855192 632209662 432700285 70580743 54366876 735211160 791127199 51328158 11318917 982553306 240075178 925791968 552403216 550171474 656731740 207087767 508097212 44717951 298449128 618485457 69021264 606123830 572466918 741452786 153355730 769386554 666721140 213328154 6888576 789477792 637734564 496034988 391464540 10014627 77833846 328160383 790199428 115811301 383631395 500155656 209540529 33565382 312459709 456926859 880230562 84720760 24062052 14179727 256587452 999934289 453781167 52003654 42843964 293526406 871440626 623967371 981352140 344523825 99025123 579163152 663818252 233197221 833032429 902406240 699527597 457118291 280871116 237051479 80144456 469815089 447285660 270889959 817817257 439056429 433889386 201837961 640401650 726317864 713716788 574338237 908300656 680859387 587917442 663658616 163659186 56964132 753102886 109331715 902004723 876396501 247869267 265859130 611174877 24242301 816908348 539156152 766589519 528624346 566572233 456919959 299895017 415411494 930399726 971923239 487009088 464440658 880444713 217969143 98297668 236930721 448037526 632670108 475314185 244002478 238532960 712795754 506131894 824060015 341444106 184484459 845273765 162390777 354972429 244803640 599826729 875342020 561704765 205340505 548757936 320288789 855138434 660593297 5074840 520513375 853186920 645361285 696632235 821718749 383242751 570945838 736226296 407170157 813659310 186723551 4019766 600248228 926817857 56028235 625519160 353521829 932558103 780701023 472947351 956837379 773622111 651711855 114411974 826349769 216426066 983647144 72390403 662687227 133581469 313266160 87596202 364587079 228511585 277904802 457660358 841450416 685142192 50828404 107572959 989585714 590957277 847006721 266799327 969775394 91505943 838983195 229744824 772523703 2547735 680548390 350673724 514213922 153244666 380543189 189560924 994564486 98273214 85289289 778127065 745267377 643205513 211730153 322843385 862833057 921724799 386074932 144475198 45697435 533789592 117423983 591705071 875059868 890780642 594201527 152429657 416632912 613162134 698196309 309341654 456158566 361603784 527406845 16850793 310067938 259883953 143728859 997171828 315908504 294756519 555641562 298321467 807519992 304048250 794327255 430568856 700800983 460554753 831485610 949882595 611219906 764297790 27144709 771881588 877739570 378698004 168264966 500747586 180470831 921064024 948342733 849801153 636535910 535499905 221982939 969520503 132470257 623683452 369129149 776347980 243314156 455414868 132597795 795947167 361554974 698346451 699038876 275638452 888813063 326803808 5343999 431953865 743006696 145868898 482917928 110146826 961473423 919022692 363621581 780922083 770492880 959451514 746158220 305455342 212847273 499171291 465566302 539633092 244653801 936764744 150726709 194023338 890459599 279627927 429741182 65507859 606408387 884259950 325098658 703637980 725127833 967343752 778235354 648754150 329521536 425188636 191404769 102788590 594420439 482493519 750176847 284551812 874973901 657794628 636842153 601297005 92676625 21803904 178651082 511444439 988120489 350501071 854130203 942297305 40150308 708861968 517444659 544717545 74068787 652727553 93057417 778081998 349510726 520268390 670665422 721355561 317111792 760425949 28680399 471733478 814106992 820326087 715297644 737199585 955398303 823262421 69736912 811737885 252341052 854487421 690793503 418876014 179873285 901123665 299496364 6598410 449011592 503426717 734716797 210482986 802588625 691564113 125332416 209836646 487758255 33095427 856855635 158596993 219109288 917016630 855223108 946465918 111631560 716061106 819390552 438526695 412601693 67720965 766915399 130031805 224465689 649991110 572910222 4279339 320812734 894699874 521072840 295502885 287114620 6920980 782324671 906777834 608620345 48563990 78297711 111793077 390963852 674477787 431321780 867413214 455533584 380622868 422573067 527727882 797253837 848578893 734426945 746638352 283089225 251584177 990815519 51248412 778875149 381454945 385723201 536038366 765196184 806589160 965514916 312568142 338230576 698762483 597065482 795228968 991447402 342119493 528693748 43734892 889088744 301535730 614525238 289381102 347859095 597883545 703773610 371304382 75432258 708244701 683737454 716402730 774915668 810650178 53934720 307452430 521190532 967097781 882802015 985646939 655098985 391915927 909022159 407836689 260157434 963615723 689451396 176820029 882181545 625675242 262218526 120071279 259955492 492733214 42689256 189868624 650833755 403507193 934560599 359610393 71206217 100541074 113986461 890642842 706686403 89413670 374803733 481021802 280244177 4905706 557026474 458228321 114684940 785878343 637026778 616944478 836673579 393685361 454616920 924426278 109408407 533360319 172202241 719650985 48210742 640363013 699596785 831834516 859479272 374539460 959720556 587053375 332259590 213254807 116358773 897178372 756388709 314587920 955308311 370041696 453376536 720895503 443158097 327115280 339268763 943541927 686138717 897199133 263680456 319130545 621818190 506641002 302851591 343774461 959993772 227760520 367326410 990395969 369566576 525213579 177647828 105562534 206946859 725015054 991433958 371069347 93940695 188066814 305371123 561233785 243025570 740332752 552551052 755171026 699121552 513393222 641259433 183371159 979535260 835005332 229192705 744943715 163404068 656266799 908706196 377242035 841806482 93901993 345588715 216987875 27961419 963079677 141830581 723659856 907355015 90118471 467156581 336565541 938301874 918915286 993205506 591346795 87989254 687349056 403829901 6334945 363688561 606130528 133405362 49450513 244290459 560584745 126811563 186704395 567083868 276936532 355113713 877977220 980296739 374040480 103508390 307479787 50673997 162092879 148047787 850903077 527025474 902212146 993638927 438546328 59186401 329738616 950354359 173212740 350547835 192948529 172779255 819928731 433361490 883104631 898881885 30077716 249189180 544116555 840998337 451252641 158115427 918227284 709897744 845144022 285508136 612447867 563143177 73606756 492890219 305897357 133719013 327167742 728032292 687359409 679431343 246094992 800273801 982462426 77179696 384196738 903580101 672628791 768354586 177437301 110459070 985612778 64046817 292124496 480966409 25441040 180217329 893582073 991521496 329657681 947371245 328066837 211623308 908673562 711397450 365128475 129418210 79938262 45275355 825073761 901130341 712788777 96028664 871444157 639366404 390194088 967813752 84309204 641646323 227665324 758313226 988273536 76417722 829774520 719060761 322007561 491269109 71067282 206867175 720556842 885927828 317826236 674259333 264513485 767462510 918295503 210175492 444542717 669371924 613992231 8789081 719135020 492749443 231139316 385516413 230449893 948005655 785826167 292040810 424464129 769217922 905217348 475225723 587834179 154907389 485448661 144550109 106476607 942509247 370568167 63775939 138977564 143973371 726906194 22377432 558956496 827823853 142955221 388825233 529732563 730807400 528429735 635182394 55574182 363128852 104134051 720424882 882811627 847858390 673589013 572583319 987691379 300832622 820922694 950902460 731087534 63842768 976454445 791146114 830344556 190830666 988469363 354466345 748082232 329213771 149730432 436006592 278770976 208245507 194749410 228907210 981115098 662298503 530956043 638528377 151232411 416120543 492615670 396984178 417207324 811559902 190042642 259741458 274212141 894911375 400455715 85554238 563209708 687332416 386806603 522993647 313376324 539066776 925906525 320934794 270120837 469430907 83437593 450937376 447817385 584101623 581661907 406898878 42544324 129217616 518577803 577878332 853403813 566925046 840995722 183510242 507813293 164674173 235043789 995388634 68765147 149029080 995141059 969516493 877409043 117573316 583784084 789615763 701708401 899265071 278314147 833440211 93186474 244836077 40262238 747610310 581337583 641568658 125742697 145104374 461259982 221186590 83393527 824959387 14130299 457772971 744936524 16394252 89511365 287599143 192124727 887649867 547998131 196099050 517445945 900451838 835144798 32573593 644432546 64289328 356501458 496641903 920624167 167739502 178584042 904718676 550660029 420616749 207138354 395742976 461810804 345152169 817904027 227474483 786696635 559183033 52488351 948914086 559740383 563543795 959334295 919700292 602693251 832599932 170378073 272323386 510167491 633560185 221669250 145135576 413581165 126042906 520409341 210024682 887727867 605160362 465235672 838369084 413671595 281287920 981493095 519919754 267730873 532040023 62791218 176672326 2765763 713586649 649900752 973795251 943196027 611684522 954993579 969562894 703332132 499963609 968946487 938509944 683977634 82654108 648269915 530318945 823043404 892198488 526146199 634816803 192524143 823920612 386715952 84166813 508522672 55884319 281242893 131465165 754661687 366874150 328370078 38748008 92743582 97513111 98794104 90288379 197585250 411435827 603134072 340361726 366434480 763354796 474165977 185469768 19592327 401827016 742536556 215473406 505402672 864309209 74832483 537527047 619004140 731159712 966860115 677383056 163530786 902235907 483012046 504700070 589727974 476221302 157922591 699992614 476941075 214810761 785459282 898643807 99097310 712108378 949508995 286662594 208050989 157961252 866659316 91142133 646505295 450700787 284048235 407287245 656386198 473042564 55117211 848712545 800786321 171345343 969589774 360002417 273302715 696811916 589706179 135894949 604590492 154216468 41509494 138274010 97938649 9426664 500085850 324810520 860096530 678404770 241312070 87067837 528084278 663393650 801862623 713077258 95547922 903323533 850700918 511805192 718253883 305476033 588754960 587025426 588644801 900317588 158204608 219950606 177213771 256515069 893149461 806065693 87509806 236855720 638943722 974882983 274013496 41982092 680460909 11933711 267326265 704027666 426883666 125167298 9851216 503092078 521546751 540724109 114135383 641007078 926880622 105495002 344541225 327406653 991228897 17674384 530995736 287375350 802587180 559978324 94986410 893383484 762354742 784014011 97526092 784286084 456868350 778697529 923478800 997840286 236125252 635608389 495534756 343952891 238768086 800486244 209448838 822133640 144099169 392584894 319660196 810437674 939509785 349367434 543445559 506999572 495789294 149078379 534985024 498160185 443738600 328089690 423169342 290355677 343809379 140682631 52714182 53739702 515150499 782116383 428721826 753798105 791615597 940517284 551206386 876710921 876953059 289961681 148993879 191679901 553089445 978620341 171907781 812840644 799523282 433774008 84788455 417083293 230632243 593086882 441061464 28075564 353342930 732245729 608781128 763636919 30710704 953255190 796531686 542078055 8727758 117755744 269149421 725059537 807033103 38755118 419653299 942467147 868604742 817169711 49006735 652960657 320345630 647236836 778189204 7019694 242605574 983801187 766168388 141523926 94239588 500219564 862677563 168767077 835853767 964828550 422439020 29314699 999383723 729857325 493924717 267863597 638548325 504181919 81846346 594296469 593183482 397308292 982457153 602127768 809403183 640911737 537362555 929124907 640308268 498283824 414987768 52289238 309916389 312382389 900733893 610483759 633164978 802131028 462301601 613839214 614002633 310662241 323381897 894473640 121396954 862262299 190960441 114943484 155986250 287715272 397131144 779360175 206799686 109143989 134600843 79771294 64458788 571437929 483969077 838008295 357668768 262814650 658694418 742242319 306766084 602985472 923530833 535145252 361292272 509102607 226301164 390164644 1530143 268192232 766969746 345539995 994599835 554602994 537263046 283946961 634487447 589939922 501855404 570263870 911714959 258120104 822470107 382008508 911545264 901761496 765712404 906088569 868071764 832805810 451540989 431582620 560666228 439151049 217183609 401590968 344550001 770821620 512841185 627909239 891895466 950188899 486383218 288824379 321062061 222637850 218477100 27237353 309961508 667135001 745253111 904607686 143402179 9295077 392403411 515160788 863982466 328919357 414215179 272676651 295351100 847077047 116655840 656678680 106032565 270113288 862241312 625287899 871983948 619567432 998546493 615315005 640077447 167282187 729340576 48513261 518136584 826967233 97632223 170412895 699111253 241792701 11894642 870335268 233488484 442320388 711174944 277508055 232480787 483621691 305550847 120756492 885671651 668544241 199071384 182086798 229026994 712781230 804635455 159375863 340433759 335419154 876564469 619806706 962387543 308797987 635430945 340734737 762369198 888131003 994912498 44594058 466148319 741166989 492155754 919249916 601433898 545226597 617980597 512428074 586981911 730282341 922450750 164805579 285430734 142828303 796124029 453120907 559937772 648237828 205531986 532111379 555566326 462607861 870375712 852702433 350258766 533889094 912472628 409557019 490591554 810840687 532177384 652771725 491543324 184308108 189119841 601464420 486682836 850382092 153107546 685498610 961159821 314910292 359588865 698014767 588330671 264067408 480214824 109350676 218885954 797891524 31687218 504018989 872745506 244094743 96677089 472641084 639008201 298903362 93413873 483303 89413777 167338578 969152743 753806173 365838209 482783410 736131101 753198460 426760391 167743734 245513727 984387826 627873269 909936785 202130867 805848110 660559257 35897259 224859370 920310543 488527155 778953220 838574696 944341028 22811779 791715774 191879213 97121681 884808556 113383382 924775777 323963731 191721800 837077176 307660426 924092795 652869581 81262747 884322353 913761824 936047317 677481343 142038965 400303448 904969799 941990205 681907946 513864584 485942443 641403042 289840393 682538507 427110426 134642446 619844041 458375967 722914258 954304233 604323607 535193003 715549132 621268987 694427762 325727580 643247617 962716786 943235288 955838522 210461879 518165860 875167167 472257687 851352232 70970416 142763974 487072337 356255855 498249441 155338556 614945419 667706514 657154078 858824464 241382352 511453105 106057303 928502962 358134479 693014207 964593586 839481534 40792479 844145170 983030584 381554530 934583643 599713136 396574824 842183920 195259763 615936535 522602153 838406556 197030865 212710587 552975722 348847338 189338408 889280465 370563205 107419671 455179877 477381617 421142392 697037341 836834156 374117627 160461361 783516218 484319747 190498048 686509109 915855708 285742904 282103637 408815606 324011212 965998521 390446207 308177868 51533480 354336805 577511323 644836890 867690139 627441828 586285863 866643684 775640281 147771457 270500954 541359995 107343830 755196665 225895246 987010003 473111818 206187378 868845481 101913187 718193236 107017651 898757752 763806210 71097081 709204346 733546809 29369844 981655439 846869158 654225375 968105072 362639678 770212476 925778812 724689341 657829037 259528146 295150553 814590239 184110474 473979304 791074247 355063448 767311322 854372412 864162327 914745761 924218778 803112979 700955041 204093016 923764054 157408655 421958564 160943183 627534941 82110025 529565123 693178491 291230841 116599359 592039763 116424576 708402706 12068162 463263143 513051196 89830471 908132075 181839573 827683662 413151294 358670958 335168139 642904052 208563794 285508398 448447342 862482130 4280057 270098872 653243549 377385080 818828112 204958974 792635659 670011174 959331726 270348463 184181707 343016023 815757428 829836355 607415263 289802383 87805005 216601767 797467138 75840851 20545279 655516869 532527162 363522374 718940994 15606455 978452724 730733309 401610757 653322173 793205858 19732893 24391712 897432199 538896343 854805052 772718893 684486023 799437572 509839682 313150366 31452878 313284054 850623037 109019033 462992991 538288896 748712078 589707757 452222218 408155395 964499429 886791894 699085155 561135570 913467204 775424795 784710834 186806885 139605140 414835372 765394815 419882544 885871100 743791871 732310476 744253312 364048591 817946496 539738176 358462809 234159357 933784289 388677032 932924093 985718377 546800575 347554275 599647160 155650275 139000715 680869077 800070924 207715896 777428944 127384312 933592659 136141223 124174931 452538056 893236783 990551723 921664229 261700676 836487296 761213892 895733483 890318068 16674414 876807021 918072217 647219076 283285017 604234607 133016264 8723545 955154388 43632200 560369761 469282791 453486382 267711959 654649386 838608544 28144325 217987366 694631320 695104923 676529280 982751960 173629456 704050320 68438626 861279954 487870859 306350214 296560792 621242356 329945016 243882722 107391906 10782565 167295892 615313704 356405395 410696502 118784163 499206226 147754383 902327414 472456824 56258044 114166573 255554249 616357486 969259619 816937569 624821719 251245109 786694389 355938476 694070231 54226468 486946045 921764703 223888826 124534813 108039312 537526885 828714554 347731869 157643283 5588615 232635959 326933981 579881711 379066630 838739630 392918403 981076229 349804618 445964461 74641848 55495029 329206612 6327821 408501855 57263144 929544615 694038608 121319718 243349402 556322957 471079816 228001317 283784726 302447670 6306166 409476414 30457529 168207685 463625237 203879697 240779750 637307594 514901742 81428638 782181539 245729070 894246491 715360949 136606252 268267040 688297095 182980678 295870412 773906271 727551837 240359861 353794332 562855517 650660052 870689763 180941270 45050748 163508759 518972340 839037053 976276895 650292936 626249469 54686608 993191663 151283491 830189325 524715388 380505248 60583293 66368924 467740905 995670307 807808717 599619470 404528769 890361861 234943254 66394998 704934501 145120496 482234171 954294461 349657136 977995066 972469616 99219736 47114594 290796530 46479233 130409417 999644821 11041427 79597481 850276255 566202196 253403545 361648415 548142049 526970861 106509847 652771714 777805980 730353312 769405643 2467290 644385828 264686147 484779362 144930698 979272799 32828632 510836569 214937978 845962232 994972097 621252926 4276698 258070746 33379799 349990657 42229935 525767129 899649552 298231044 805623823 45649727 970381013 830671644 803833178 747078753 485975394 609980020 754626720 965116711 645718830 927858261 364115997 866479442 920799567 582646601 608066564 167728292 198606063 55079175 984558603 149527996 335179935 975888639 498432252 434502999 12845420 938502140 88421117 290569179 171746376 280477665 994797396 394762654 106496346 534606130 641237056 718756029 447433872 434340404 929141050 264546923 791005331 753868341 647979293 914140867 442102310 617240492 597219282 393638961 648173297 411417979 121968629 565703578 540790710 946812778 939808298 907401977 476549374 486075660 151472201 352590314 699262294 436670783 690816070 864695854 873925292 805481494 305518976 720148296 66946735 42163675 596228018 118185708 319467053 600649167 244956761 274497212 183988661 136289606 951443909 840633260 921455407 749108252 77705337 623202355 272370429 346098009 866481679 900670730 300833033 12634626 169222320 861084496 75961545 659548374 169953364 663954533 172903395 460181849 626100391 569266201 976763456 321780085 160007713 610696772 979626189 91736731 222483279 300589033 861751446 704597903 417811959 565095176 748785930 375362161 747521822 69124495 623221398 238252547 93200616 601169783 444738465 713096999 239948216 467241048 428661333 568294085 732899385 380793899 142499001 782425205 571146010 244645810 921737311 634761650 549889734 580928058 414356900 918878846 180015966 125408537 618584735 890516420 37096431 448105820 250656978 319789521 889455127 376378495 667774359 811974385 517297890 946406072 765753537 697212332 804231041 273119390 482708962 320651011 883226624 499274460 729103091 189134835 645637472 655993456 88533256 500276548 538732376 273076275 382448516 118540131 8890947 722169633 539330349 587466597 493668221 166100472 10912479 303760784 421240331 136349020 237324751 572260498 19324814 623214706 639559138 604750710 709541127 585333767 334886232 396503084 640712748 395630467 93671212 733889144 423235683 81586919 972014702 735329751 212579079 175804873 667207587 229826958 780224666 596743351 137787297 144348387 902237800 164204212 316026880 614958487 589657126 55936649 381100148 352163600 832359850 795278888 111156517 164824036 317923947 404563373 452994133 504551235 372535714 460066483 451675452 829625468 348432355 396011922 880370796 341702973 379221919 183334734 733950866 940323940 391625173 399453857 654607854 796866930 549850341 881560053 33135163 290674008 843867577 113720954 621513964 444029975 967871245 593251768 638001225 931369847 685540533 298157275 556398946 228182890 543388684 98770378 848804055 104828162 847829511 180496394 465782605 224654133 594376277 81935646 429953170 631473602 878530138 141967904 271987669 206645079 265610770 701072403 627735311 981464853 794024456 728208945 190358412 698368963 228350187 327685566 726241219 227961442 167149775 912041234 319597899 623507381 508946282 976835167 616571604 213421236 108170287 187395041 306153543 782526567 484248306 543007196 578486169 27365068 791198308 326607288 216184200 472010953 540695767 239148165 193005914 737682150 695523827 485066358 92029384 624307655 232129810 906258987 287411799 161181347 63958050 361969319 866504284 944416037 342745176 453883242 448449338 379405235 285621588 342095192 895456702 635300020 507350309 528420603 226694726 992438300 502702193 960904698 402248505 911982752 98087526 445927315 742773561 425507742 345430287 172381990 872072549 637199221 555091057 290501409 14971590 518423032 924924814 580672426 9088293 117540284 364028682 989223889 977193028 601447691 431496504 543398926 260958326 582621430 524897321 456436413 767345482 209068407 452848203 536171604 352084234 444249162 378057985 238101906 375870103 790511454 892454718 459554252 656831786 973889843 52617363 620893768 409194122 571303560 790995832 339419942 870741214 253606647 383682552 109331514 267069481 313397107 353159733 396369594 489012155 422223583 868500622 713699276 46796686 234428093 76084077 322279143 321332535 471984629 349014148 619182024 521366239 136249247 976553197 478495650 848416712 438502419 889087304 992034296 903280882 408712213 72113489 69977835 270204854 150911567 862363881 582537476 269182468 551041550 107155604 538691563 377680700 755105958 172439629 760889839 176326040 904739241 926819516 657951723 954734733 602452021 331704658 680998167 741499953 221254904 8669752 361271598 865605316 406543527 686101387 226495863 888531630 8296689 541933637 343200494 396895633 340589235 49505516 300505904 509248585 768304651 710502212 716930878 81936538 349313648 696777378 132426835 500296418 77579303 301198642 168802223 444966497 927820311 998717688 477204475 628553812 689537794 34689101 714132413 42017266 820444032 259760073 88833573 313373367 799735941 848708023 708439990 250401701 468678880 411348883 862054584 241117496 805222367 157810649 477927929 985122507 663271365 467587390 453901224 105290594 531374712 553662329 406561445 116188980 505435923 172536177 10311262 38065074 319428918 136425357 228153905 549407306 705108944 21215461 636147537 695125700 562401469 836167468 252203219 969807541 191361235 562047132 631408876 601355164 808421024 617542776 546054691 971777845 265934582 911120458 786414282 273428684 966866909 731032276 695536420 86287573 930100867 479956212 609691989 57644108 807680402 803406338 936895235 933762840 622981499 70666752 254471563 883391503 756523137 229395491 659033818 167819434 545406356 121457345 686675498 129095723 325113600 52622429 684180367 901070949 470134231 943654420 21136746 474172978 175102529 405197741 719593235 195631901 270331196 782492677 667084093 799513668 229121294 170825193 253827980 883843976 717629287 473006397 595990100 745449135 164659434 823283899 787245877 723560155 582866114 496243017 418588104 999305421 83970835 12669808 856282667 929971784 366344450 31736528 169051809 36084666 349024727 916721657 860823861 287466836 766182302 161880481 965638817 764396721 335360890 564395078 612648472 477386784 821661179 794884118 795299047 851403460 722046522 693424017 270953877 780203915 642590112 513992158 389475029 988331460 975850571 56206734 846305607 202461186 276907891 748416585 559164628 961716759 484963572 139311727 40530605 680863981 684496685 369702530 908151896 838480600 142257613 867221779 630139446 269784941 956735165 629890555 68535055 623094784 712999404 232383954 50738291 338813295 910604137 671212842 176995987 403085390 695857973 682570371 325885503 236686192 582873572 905962022 308015189 469060420 379843066 615351975 332849123 803008871 599333177 60654256 698979105 377495400 711739765 415887324 214237156 748982751 711695153 716175176 507755249 83794453 250854122 948406849 486784760 327646099 527294109 145576399 613598105 482380104 896454725 500801927 131369280 539394340 821252297 299853630 115451328 206119203 459408957 323320695 651643157 140125270 776291056 645682717 423162056 340221047 734796622 323392434 363667981 383317521 427697622 695346914 654923507 864764672 819191898 917581723 392215583 299364760 656731832 192161039 514750001 83244429 396137674 425603536 772316242 785187567 432025242 153994961 511313372 672515851 703423319 314456601 998816849 660236785 278167765 982539003 481761185 634195813 748811277 62812788 235671282 922725199 743844534 12450472 616907148 684396590 235452908 182452980 110637759 86776229 722344517 385959069 13098777 378977760 302267127 392116627 310234297 89911329 496393924 118663290 781279980 541688104 409688448 929387064 466073446 128887658 303555445 390502400 268047323 246177791 64132039 938572301 226373155 273945177 895059721 476484178 964780308 894065767 194566433 402633819 108648972 509694049 891598016 800683124 225773231 594586018 792958897 36835431 376531247 108078711 929430974 768887232 577073214 764282727 512392815 216216414 546365163 55207810 155249859 564664493 782998465 315090814 304203219 306300415 118060300 323553014 773238001 784993500 396235698 652135713 797913408 315659767 247777938 1775565 309327476 886825409 219214488 106582425 325090651 177737546 854476633 754978014 224936204 576310018 161003882 785274528 43959063 659863180 910477166 111579271 650535613 663759448 45404675 509674605 979899313 830897798 519384620 338580164 759462376 878141585 363609877 899230859 630843163 590567889 307069057 527621556 529867906 105562021 918206507 983582692 27820176 638120579 26810085 157129265 535662366 804247324 556896128 935920712 471051221 649131450 895544618 507353415 624500149 511425926 690132995 763356748 256819359 728642268 615153127 547678109 561411294 616922394 98543514 623514982 636237177 678361200 158703706 25193958 314335202 510873720 570543775 543481332 244259315 628381534 921976321 208977925 441817833 418946055 760499523 759999831 280809470 794737351 855882596 302576894 563154532 311128077 296499795 663309731 311762334 683403597 842648005 331051132 952123248 952339810 340937617 944951157 501297769 482336757 842269350 60032757 82189062 736630265 450874913 940495322 880970186 974478475 849001952 479606999 962162293 93028885 831609132 510412063 859471419 539288336 501241124 250009278 611279985 806180998 959085412 652649598 6487710 980741861 628937864 290496043 661116779 337371483 410944936 8204864 911700765 17967409 384000549 176381414 793199573 94247295 847440306 254107670 188166883 979679738 626201113 171319938 128089078 249979364 634314406 357381033 750844534 879680721 328825840 836301605 28179910 92076180 382900540 634552928 879019125 902700733 781867491 717191505 263378134 684054052 355643865 500896619 850073016 334908003 178531249 89160557 618232993 571042192 981399005 257992454 515751943 807660096 727379427 434379071 820180264 359698832 303701518 881292231 620064909 730460227 265986793 482638038 997799164 368597500 683870845 141963005 133330431 860947324 905974709 455447963 451699397 383038435 235752388 41568082 226227658 47764211 624218983 611676639 915850638 847950607 152040669 438092824 612201980 902252428 964164532 880832754 359950056 296290836 929040584 518640766 20522964 489877587 649729700 480216829 89445277 546290415 85448395 510140229 107210425 620425811 986928174 899987045 479465418 319698237 585048191 268165588 359127721 49132392 207082344 269905889 64493841 383148817 350725342 156661438 551680413 694502853 558847923 110619293 467888388 501786469 621946472 633419662 34213737 716456109 555744148 622858190 73020380 433847551 255573515 293924661 36364746 802439001 858411604 144401066 711700132 842020813 226738803 50777563 459936556 585046982 978867432 833751680 541882236 770208741 787701330 662759729 794787287 746615168 936233862 735462515 306441541 61105857 747048593 429308216 731343140 733153139 424942075 530328705 490289981 429482622 852486770 411122177 932592339 316592872 530678256 783963556 643530187 651373380 699811005 47161112 438247205 702712715 457168763 277066783 459494401 137921920 276453061 520295301 936745822 514796729 605072616 771516266 840839164 122828416 333965262 190423127 55908152 845253213 176046429 608741029 434841741 290209751 340668368 395132151 732463903 628965984 954322349 347804516 674725914 143044934 162005421 64799939 111866954 316303337 471009448 110354584 55428322 862653301 652385675 583089047 917348103 696690074 802232670 45457756 471015131 135826884 97678198 431675656 289333625 372378870 318318254 363215697 501100988 26908303 385451411 754144942 526704013 131937447 736829360 713938513 354108978 232299407 277908980 333956261 198777392 471535529 119202425 496029799 111351990 109847143 632392056 827150678 167344931 674695130 135299677 37872189 675322381 567197460 354127247 51707332 475809499 548734722 671412957 424927180 219576827 476501948 624805891 757160975 188402400 561719907 460534499 504226935 811736215 71458502 229251457 312452423 244604540 382119692 845647085 344355353 853309185 980096349 898544944 3621589 655888965 565729520 588679606 659594021 391363348 577641874 361674202 152243911 790749591 478181201 647560136 376646263 577285720 39405093 106685811 596577147 853729502 862697390 280125814 244958046 820914725 954570325 839289413 698644143 638840490 368021070 436724769 214092356 401814728 855228660 773934843 423012927 215095114 689158821 173073802 821553899 264672219 509253637 944344041 745375721 392409059 193478709 737182920 961815398 317284755 657291873 874877500 968973608 89723204 601522703 575472165 1716703 571406246 440058682 395745097 764131453 718978842 342057929 767118859 41500110 85638849 374395468 712215345 277263423 911855096 977762408 513137428 717739771 349770821 662434710 49712554 589578643 271989841 263562156 392584303 734946117 215064780 154351445 399858272 504630963 442303900 743225432 625213262 636666881 613413532 647604392 372787870 318539996 840906470 781680444 190832544 97706514 584021131 635584950 964235953 445176327 331195805 58183654 495690740 61534117 884308671 251424086 97442125 642553305 9044718 743233343 473551495 311515167 927892481 573115324 90796866 276284032 95036377 222999720 144766525 367447662 424063212 779431579 389731110 896477647 943772886 523791775 970288007 897445341 140551611 912274245 575892647 353348358 391865910 719258390 43353182 660311075 405387963 382339531 926209132 994037805 123522829 651303095 353323822 972050418 10159645 974707752 835050374 449076905 620470012 77381319 490438514 603883786 594956796 266444541 94156394 341191866 182987814 331714560 120939500 410531109 471525893 642179863 320824490 998230396 283888534 824939928 227712471 992665856 539470409 362997309 74736342 79861805 574639133 201488879 143094857 115117936 286539850 944255066 469421739 792829837 810225084 985325 218045120 48973181 952606252 282092213 821812944 467672486 205718603 623140285 913905538 293336596 685682877 805320462 488461089 276254147 65811484 500013658 653980430 144447426 157517804 194260506 312117826 48468243 253689519 534042022 130044433 54558001 179494609 290439694 441688462 137089623 755242977 5885505 97804199 642027708 429025782 151711800 744925921 697500914 373413252 151476790 807651960 913532552 155988314 914883301 471797599 1676645 236322705 172171219 247935312 988578728 190389193 134579373 285451565 307951658 100249051 552411412 905283287 92280258 421325501 232615844 43724109 595279018 867681202 888279851 419342078 15309192 160281018 524270847 756170028 55916012 686441248 975476503 182469608 132483352 317117224 270033187 873474302 801481841 138133779 665980075 992009118 958884678 665155429 502876711 654133178 203973874 567555360 229781809 655076252 680326517 342997999 968771399 973033786 626503386 834307564 705197757 237951676 982007241 587836959 363332860 844929121 483843708 809250343 590880248 542940705 417364335 535071870 573107317 748938471 336828784 350684698 618388013 502504795 657120820 865272048 392066009 639239812 546117869 752163313 377361709 537940770 747277714 134239422 678957353 779578238 198903790 406409169 366264140 24997073 47506109 840652279 411215667 483859609 113803339 883722017 50054839 460791824 604978052 842156967 648843506 648026313 868840279 234868044 476200960 222557443 282786641 951757524 839586235 815762833 892217555 446883602 179041445 465864742 306437536 33398054 757385583 669504547 638629117 442487757 725157394 940106618 247136732 296387152 378053170 890726722 528977231 274257311 285490602 3485238 855191765 168897136 618580854 132427271 250068093 678696338 928029190 793286604 271946737 662833732 64472283 666067487 33687767 314259194 393650864 82290578 884437272 24372699 427069608 179323492 296467403 179842277 232708493 807907734 259062616 808423299 38748861 748454650 439616180 726502566 655890272 933850436 861225189 779024672 22595251 830136514 500558114 692704401 80559320 762530097 879109143 788712354 992255464 636985466 359684551 274309036 892374657 649021885 652682561 190604340 355438345 301726004 460767972 619599107 491956751 102536746 473611674 899876230 625430336 259920018 478829023 63115426 939162706 221154337 837149300 31046935 635429794 691903750 795456412 507380405 129391304 569781483 156804147 425142689 64546403 204815258 299336419 301840834 205067575 70809001 172346701 627399167 944878123 863283192 43264923 939435126 748406942 949953808 30589377 744022076 424214244 707509101 760208630 562950279 245237585 709288210 851747651 742127504 907014282 958344696 76177093 136808135 800168892 37117809 290655542 495930554 814513649 535903793 888334058 421675965 95997135 518087551 837408969 167358190 573769637 73489422 21262899 853279724 745621492 777054337 794647107 449530266 236580114 784005528 792218807 840782626 646106632 103187809 454600258 546385894 915770950 957093721 158852727 582250167 647100191 799783196 575723736 590193357 87201744 528127184 501394369 815201784 292598528 470618046 152682294 35063866 585404673 887723034 490599672 109124463 764976888 563122850 772662584 953101739 599362207 508431474 681961362 591424052 870347311 33166518 735452472 786742248 719054853 812150277 589584123 348193912 492779953 897050551 615766678 447966489 782017745 904804362 209081637 963166227 255378950 18700593 643288496 174662965 931145365 550328399 462524033 164165281 940760658 901960 89440469 338717690 220333670 154964511 139398422 351394930 640604957 460230480 411615864 340377608 222130590 371790684 665666367 851975250 121679369 424398260 201599268 581368749 464273071 562024542 837744232 535311423 584818136 395880961 575617302 508853491 715978271 344244628 899874372 439737338 634056930 299657333 406847578 581057881 703390481 797257414 995088994 501085931 660139995 888400482 740174377 225710154 132986983 32400261 991462400 288585292 691340153 151533859 306370917 22432499 613204559 69050439 208493281 845393722 834771267 481598283 67583923 539173021 697298241 382379124 241128147 940627896 785704668 747680954 46326365 590638480 519766483 656925868 677308817 992980758 301593378 233901436 846754630 26495960 302670435 231574989 205785443 40372607 502572303 862132965 844704324 464779438 130912710 743331736 89327843 259357316 749977594 252661912 563424226 231960610 241089377 519606472 116380308 689033898 7950645 627627427 836492266 17485598 584257127 752320412 789152736 884821678 131710040 250487658 582274024 674303490 567225197 225962120 508495328 710567719 107391496 809576561 644349382 670049189 327842226 336112030 61922658 388041618 769188674 855538809 795111063 306716606 223853693 433051225 12157191 487694605 617985646 495024540 179546188 600511155 148400845 16097798 786220301 834031040 667438544 152878498 161005679 607899744 577651730 594749711 94661833 90316441 61363702 790299642 92633754 969649580 861311816 208311420 550923361 796976719 678530621 198590055 76432100 942300285 474921294 140639413 721844900 329548288 869340741 898674963 964006323 726107592 116845314 439059491 986382306 225399013 876508090 589080530 884211712 964779344 293514205 10257595 787042294 775037681 756864 382889076 82621204 588562857 506342894 611478706 749048504 177705032 517206713 647157491 845856628 835409965 184833562 737363445 759943082 255241986 733640011 622277543 737507637 818894705 36194453 285888422 968752114 488036691 934609641 859765261 315315131 663867833 854584050 32950463 482862783 120541231 253245444 141695824 170862100 125310632 520968396 392683276 105034544 248278524 878965823 880835155 446307312 778781794 141686066 951427186 270331872 634095616 34497625 79447449 434868639 672320032 96245588 707322535 965736265 728717722 710910404 905722138 826580375 585004323 420482275 997773491 899797801 634700216 655434000 373801869 909802854 906242255 443044200 38166775 605214831 113624979 466748027 452280123 61269234 832474491 948878739 844555480 510286586 260923380 580967202 363308439 132719129 185005369 569666024 132081211 51148490 505049514 640287297 37621390 530869982 409250315 387500853 79517357 116752796 9513285 11074887 27025540 557681710 259518121 788691643 910242660 673746057 1220189 231400570 920200983 161483452 912152893 295142674 334746668 818112390 219557534 251707671 378473535 383835818 628635269 99791713 642341059 729855551 866897093 812399177 761445085 995251156 89001614 578930501 557944695 106390038 249224318 43360825 97261218 479247177 770984791 445118357 1999766 15899432 494770234 470980066 924173728 383173056 621739594 912812157 176557553 480984745 372765141 684980166 783650717 68202403 665005718 90443540 592273577 807661794 622337011 721774625 791458454 469664118 497719487 600520583 191266864 227423034 826278062 860374283 615170364 224069837 913641240 942637921 347035549 930661597 697315837 851640360 695560959 188222480 742625736 469803362 215254182 119663814 424833100 617828580 815961884 630855907 846222694 826974525 78616340 998525479 302462867 396053999 61714063 753762383 977234509 739932670 433183116 588075236 712406537 741716581 526779837 350182063 377610689 788127353 383780993 639145042 765880597 992068088 864986243 797815517 590429018 667802737 772524619 166582890 336743366 400240856 332930065 537775087 859917121 784955331 794997290 683530223 423760780 962067067 131750834 265039900 465440859 513485810 664985342 899406464 415357528 256763315 268747735 279465972 29606816 36954133 363233951 344164106 351516170 831226406 928695870 252990912 928243300 335324631 991110281 777802275 284502883 343771869 95153853 222406435 60121867 513507975 110825074 680722808 584606069 97239549 452950814 256466800 993984320 661010945 851259558 385287683 928509515 823391572 626894694 414064265 224674666 560075781 273072865 254720056 559646355 238593452 102806474 333805575 803368630 73759171 297127683 209689715 322380708 339077663 676767129 729459133 429734695 78091477 653467326 997239642 987946569 747361366 459411449 597645730 208730572 363387651 860370952 56788392 22106108 251957414 648683763 6609801 642412735 477426845 958379869 158729338 734100197 845238143 893019164 47707387 748814155 883537153 673690117 684530984 185032108 453960015 521734550 849846356 766296549 153316986 717618832 516287549 192222282 441280684 992975477 238575791 608720722 746566359 896294970 646179954 944007578 837786948 577965862 416504071 27250852 999766975 970091822 737251221 398721504 792701491 672971403 349791544 267491690 790471915 366029434 484969173 948354672 637716521 68969587 375216002 352776165 894889038 4775305 209337563 260100444 956314847 836814389 458378665 376175133 130742229 839935331 12013669 467797385 763862736 334716308 45932484 496320871 735094497 763868112 202596999 141311176 248542887 710392569 155742441 243983915 647019169 651426499 126694119 47088245 192256321 527288798 787957534 656273444 754350755 207493551 252889891 907965177 819730337 34323112 492835223 746191209 557673987 142443369 643654537 765907591 155821559 536081608 967636914 721305658 493727310 203282849 49153452 40079637 27837544 896391731 323888741 251748684 699738814 969031229 804460998 261576982 584753108 319398607 661502988 771369038 6351063 71587992 563413614 205896584 210592909 813668207 508703210 663359199 411641300 53885474 265146992 16484499 893966565 665946949 530670585 348009793 979873674 948291503 601682217 170961032 328925234 150057208 851874236 725540905 91461686 693296674 155080868 356550096 21084113 985943887 752052160 588405638 207356235 616504958 867071209 446942026 555878895 681080734 778788172 742691130 493800891 888620780 218393206 792188307 199769447 822629527 16460736 899995390 546716249 378398202 615313686 80788093 37554243 577809064 452838082 148802306 778726978 481004157 912570676 767164234 22620268 55184081 689924436 934748031 333588467 918836701 308319135 689807631 487454261 932589339 76754364 757281926 718307279 913619395 233305552 486332980 183810337 416631607 831174995 891651380 557513193 609774999 210381899 282781134 756473085 707705598 602135530 87202058 243820062 155720544 982338948 432156353 217538622 626711402 693633254 317390301 502892804 929292751 204898137 70812416 619195910 528042319 93760566 167519211 693565014 614334921 401827506 423577501 547147521 804280533 647946210 527652042 326129644 426418806 125819063 241809697 694419857 674936874 315954291 11517755 456227115 979394314 64035322 510627568 635367106 624160218 859857590 111980778 304724754 381030382 848710425 219158498 905544715 766865225 649099027 318061203 905301559 839465704 877073380 924437419 895969944 535959193 308210429 679809368 541529307 360303508 870906842 440819293 481374154 179318898 626124220 935279534 72883246 73165456 214274368 528373041 706256216 317720627 570217091 197808270 846843474 16766935 401725468 643459770 600413051 748398367 162973642 188639865 115320013 410234603 647427812 962574078 437980833 373009304 942802919 5555370 81440933 538342838 91472200 784528038 326053371 425142742 113062469 345200923 42956894 472225515 390322046 398298037 39060285 260279192 382169750 182659843 725701591 330234526 634051439 986147013 484161471 318538331 224641528 365705562 285784674 616093948 410783640 919421359 798496601 878571046 838593471 319965245 802199150 778633353 850578576 707763569 771042660 455745989 279935106 181282646 489765261 138828096 847722017 744652344 766793577 397584446 610042614 562581822 244789243 353568462 489619504 99612964 817692923 662949134 91956512 348235067 95589406 743335560 680375701 834129908 359642777 154809007 78570896 997293424 722980107 630401971 95538459 767214534 693224752 30311293 359746915 116787391 411524057 972326047 367321354 451644916 647782371 995292549 989540564 231168814 52353549 205292132 395280806 823722265 164328710 635786959 208596659 419740324 355914598 149497530 912437489 455644825 435319735 997356195 805218649 105949582 611018633 248512702 268246689 130219577 108376318 25900726 995131985 956517654 587810619 393894683 437756386 40207414 295448344 116820042 916719683 405062095 897931347 216335873 243242550 747431555 257715200 650830029 20584676 974366072 308145308 887550512 751767128 952960107 179733280 753225161 692127175 720160933 266420089 397871082 743454854 523236607 556266844 431300210 577118188 56077731 404148692 61421105 674658352 67733512 909349558 283937127 978202013 509763444 854383064 799260568 838280525 438065197 711285156 614922496 133680166 271474344 550945116 433244166 490588066 261636433 866805287 355190748 749421690 999020849 923879966 374294519 63708732 269116224 970313158 938442319 500106403 563684597 401146189 327229426 697709877 512425532 829747489 727880013 783571285 966838682 343564677 922046544 322734627 676183964 664989462 56161436 403476379 475612428 168024756 488515768 720565994 35404103 182216064 697320649 950858298 389985850 69806375 781872874 818162337 946419772 936517948 594883955 511809300 117904289 592985974 381896463 375410546 944946479 967777154 799102153 799083968 7979685 311882284 245422181 165708173 765302358 508154901 268695018 780352655 12092936 601218730 312956605 641389821 734601598 925927207 87380684 895687023 853062986 520087553 985752380 415573539 795777704 704541014 639525252 559276933 404373103 311429843 392005248 129016440 910295969 618560501 314523753 960345094 116005572 358684290 35600387 837334776 825839584 452385545 576575444 546471575 417106470 644989523 850017834 683423031 813732524 281804318 468428198 788760257 907889461 334519356 554790251 289635363 604690029 311667122 923289629 167735749 968711741 423329286 892905435 674268067 387902518 368775991 28533300 500309004 300884538 482012991 995268853 584354069 558382910 742047856 896940928 890074176 755606140 209739874 609230582 9435058 756489981 931451549 666008302 670089840 183396005 173768188 900834914 800950317 571204371 345488493 753433489 460186807 448831633 747421379 971043000 129784813 509802776 650732121 333710288 165024146 773555278 495924503 118479642 467350800 791870145 573937630 321171667 976592832 461717500 735704979 364860763 94644511 417173093 592168043 215738658 982905813 769424103 617735509 721289157 579253902 78690415 458278907 548270348 339075130 654521294 767128170 865817180 586966686 794520755 17316852 573495068 374622874 677161625 282778014 590802926 277157349 445761771 641209079 349883584 834105582 506885033 854105116 505237710 803748885 133702144 245719756 484150280 191720905 608359209 632581830 676349041 536760840 648581744 348792652 962497155 216092584 385906593 753279843 752578881 889037399 333717120 839176608 814835832 881427720 818671027 930877208 446947671 231842062 90575286 629054220 928532346 660782995 174136399 964468816 890880507 840344211 929567743 352231397 687742947 549937221 775186416 645343361 901851468 697610134 132388054 961007559 95532502 597258576 919511083 223216982 35385367 91380496 422292663 137476187 252323313 112875242 691807912 2880640 80845387 991721639 28996075 18289764 90106681 73123497 930943570 236219368 739316902 19412206 879379599 240105260 679006350 114226077 697813977 845901137 414818140 588087128 845220533 822883277 74667100 400420861 461100862 354568608 463020665 310621513 583698677 678896888 953518066 776421612 647517815 551166039 93164449 119202576 637596159 530700458 227976656 586961562 546740580 504696100 626856095 555378395 395579504 932281017 518227456 661845937 165446216 74503602 819753887 236505961 655519886 649645694 630099097 883605106 589796041 597801973 377044665 495878016 167122033 737276192 569331506 280049245 831741366 943075316 714381055 303172438 742066712 131314847 21750578 142024528 482532488 683393989 694745048 784091425 70534620 998682430 798918366 601763785 593232556 451848242 997355444 678224302 270604367 896702007 996546466 144728151 306972481 117563050 31945203 76726505 351483478 115566491 463862554 986350889 789001114 806519381 34291081 381751364 40000483 436219463 554844148 344188394 319756521 164994968 3706941 857679256 501433196 84765542 878359149 158877597 48621727 110003754 42658103 647770758 979392663 320044514 583954895 173745151 694767447 716300648 829985122 954941363 283893411 273922480 668813855 610639835 346284982 830528365 241706459 42088859 862317171 70720514 113856328 675607570 24909143 771727726 102085764 58978519 789385600 992951843 582721980 436651707 750148946 325579661 126390117 367095460 506895276 821099576 743176566 991571956 443921676 591108875 73098172 605379070 584227994 115999048 138446655 793542 293419306 592354378 599079884 334542295 11672146 154633974 618278340 563863325 375718275 787293027 31352023 397176148 870477031 535548387 627804796 215047415 49410097 712316047 500163334 319848085 999041569 143359287 40046200 435967141 89098261 378926116 514617994 765287969 998776730 59851713 485817564 843204130 219163583 551350097 70279549 225739324 555371370 184290363 459916088 233484504 678527030 58301319 846443417 408991024 903150379 891960491 235162346 763551908 322845166 399756467 600504614 552120930 363085138 80799384 880226157 285348642 500681518 410544628 207502189 140674624 298427796 597014814 664053618 899317125 955341247 811247992 571065255 907541018 959667329 913033320 813769316 423527760 579676628 43945878 37507872 397674852 125657340 874186692 406899023 117763328 748289100 967228664 729593420 478586476 515302652 735310981 186924573 292055695 225623734 731094181 98789518 759719736 281792745 786535109 870554355 20097420 326473149 669533634 176841264 624641601 596493386 716816184 245872073 610475971 637022916 747020742 96760105 504768580 443909712 257502382 998578603 598939331 73097012 431123117 218304742 464996272 424580145 673243275 382788158 397418299 729796705 541809436 912100390 518028412 188908360 812218577 23232425 638570517 223364512 929927271 580834629 965284596 475269351 159022187 656394728 184311106 174361955 659926988 665151511 484751733 777490478 511819742 978383748 956754172 875798485 319128597 231220047 796340128 721208505 883003346 141067428 574193911 535549870 831086983 787167319 642729464 117208591 629929631 87274536 629998278 883445953 658212877 90302511 877930188 968384962 487827194 35979386 132382983 261679308 389563618 357134142 400198200 604304322 532177 147044680 879815670 176125176 579632127 348768297 292662857 597485626 253495038 853628675 791716826 275779979 929128899 630077035 26924907 892762878 885511876 343833724 211601641 121908427 580417152 639375159 866264084 921379587 408586335 132843243 808868843 518028100 686472479 777591717 440269616 271611058 996982449 667232888 405091527 378037201 221604788 459473047 374490226 614793296 441205933 982102617 641845274 463613941 459517868 105335080 409737164 815239642 473045398 91445933 479406394 437189295 712175972 181106750 691444548 700598686 108376723 131747589 410743613 257924421 409043170 657678228 166453945 766588137 727022804 28780928 266868038 584960517 479750717 573243953 106460227 985527570 187886716 573754380 407728334 574751857 322500936 83275479 565564747 424847084 324398955 651269074 591725144 118885627 376307582 578018113 581623492 461919297 107808769 43264006 513649207 40759281 580703499 676909642 243626657 31747169 823808185 234148619 877491628 699781611 439286803 328395247 816163478 957074526 654211815 528132866 473988491 706320064 578208193 639327023 369478442 223664844 20024064 734093110 283680844 24581466 498745834 730443898 184385680 894959750 527016512 99462503 650324747 416075425 408261182 535822322 534003434 131438954 314827578 258275895 997081432 990299401 895757994 322375919 550950284 497854223 853596640 750597301 2608970 639487609 238454095 734654140 698435771 567967070 523261116 372931491 557436498 139161391 104528520 611270875 792191672 578031415 801787580 490820543 971000424 130760048 451616558 549777563 278068185 361791602 728507525 208761092 362762867 391727641 552175199 47402936 656841609 309612285 902664297 833194448 959180437 471650508 579087354 418674171 898485048 421591480 961329040 970329979 507103264 378346030 337213984 857237394 594604317 979517104 427021348 188970574 887460607 76336683 804876362 907107153 180777839 338545237 574807994 699392021 960175402 729922494 119946763 461444904 957077264 542650161 326015747 376400701 679237734 709873792 101129714 678578253 150284344 574648869 951138942 178487713 442960440 245340045 411472838 26241201 963061604 355259519 162190147 902410418 855905139 354838587 755951678 28018242 343786250 677442325 649499490 303670070 653524726 426129463 653302133 509458404 980408027 672503264 466844723 753709541 445415407 620254588 280442924 594510928 26110273 223021734 326874567 185690983 442832123 374153463 374003168 96175909 917074768 644761725 814696181 305981671 47694782 163181672 991411609 294422189 462562759 959926800 515147982 232780140 419734983 356409557 982123281 316974711 292341605 339650158 806211980 711908161 420628425 602866333 434661403 91881062 359187568 757687512 636857650 275707460 612520666 970633028 502703317 483545425 424682653 9208031 102728834 269956798 587548357 541814700 861649751 283599916 256431846 660964373 868898754 413966789 113522628 542251924 208872781 419329577 955954859 605631274 309413615 98480271 697815297 641782045 150410613 210468324 623177579 613842239 111641268 411497996 294852637 295168804 859811751 733535202 906208245 665658204 673518788 974594366 175751779 374278764 114226971 900087939 558176144 341606245 637166393 599404253 813250387 551559669 547315863 808709656 173669369 923143277 683038936 205923793 762600844 565191211 881962075 828590910 618457358 535715506 846904981 856708052 681831376 851992880 261314505 254445494 426834977 66339005 89576612 431789232 219909984 354667573 118666710 500864835 57085350 274082326 326707207 148919991 252694393 815955130 401639107 780597588 339811411 13973650 607548878 464648317 343635661 26269238 384946275 510380647 538096501 865672499 846691715 794769634 814240980 333302526 76634258 150249437 616242923 828899209 520965927 64553014 213819037 18371546 304115095 371589390 890785135 205906664 874645403 456456195 145439205 74838765 141034368 763286937 182350472 654298066 84305311 936111298 958583378 207163698 984080958 125035562 142312088 784346231 886185208 324989653 688833638 717411211 706351773 781450189 408733040 71746667 38266715 89819114 344226758 510954128 354028685 776590838 308728051 137634739 559074856 910796283 44777551 909396720 495178751 156622540 177935746 735948881 427203702 30595657 968652812 694124904 744554624 260673971 576808061 824535155 571830749 650371188 216250343 650450172 863495580 504894242 958746853 139444792 317726102 714106299 273316212 477031654 90908626 520728654 490291311 845378258 651800901 982073459 348148359 831879972 671364757 950745635 720924462 868221244 900096547 391180192 877918737 754354879 552138063 313370848 428623321 288850859 79318270 902501424 389665322 689112864 663223915 813279335 475891167 583690824 83477473 325275909 304500929 848790294 919081456 242264160 219001895 296747032 601153627 717107324 341657557 126450069 126489851 383922363 783553994 525565316 410857808 407517229 997941625 794194036 11966302 682365644 706013805 970351265 756263837 415113935 849724157 371643596 224838354 4752345 554009113 15627543 532929974 382286164 42571205 743763031 888044321 783492081 814386720 781515185 673555251 264885611 593261880 575737343 644268886 778924438 25826285 471615640 576752108 198818611 519903617 503065699 565775270 585402391 111936211 92352451 82060988 78724186 755957129 468727083 177905435 719332498 379597503 935300244 768630538 411786430 512048 489392140 297178632 434024168 818380004 365275918 386861883 514871005 364334560 113031963 259366562 288210413 628596066 75386085 359132490 520461489 974332307 33626030 387702827 608338062 161861938 648678568 542235416 602642599 458428779 17011127 275063239 603528955 82439486 293292604 598329191 452632090 805088201 629418251 475085353 166954159 529360247 181340307 247523078 857234874 132638601 167008469 340780402 720731086 536177861 48847110 376693460 90144944 735497887 733395862 360753983 767405699 757736596 663561711 369346755 536136379 491603055 513849292 140146267 968883061 920469121 491018319 313130207 981475255 882282658 850332350 200621887 417594768 73315595 256632653 884185560 716059105 277907235 659892346 567556428 831069402 775138567 539141566 10706776 960968436 391127501 522487461 668849501 800642057 640851804 398729806 28068109 707506398 211278815 398235564 385569278 94024671 592095383 950053756 904996429 141154165 609705822 728467091 193136944 710711709 185763066 292348022 222541413 286140483 328292138 467807718 534858921 288272338 995017248 105190964 630742952 103349388 886538648 653510046 81883809 123940850 594499677 332485581 518948813 95107189 179243070 631711569 630803707 88573127 694366809 297541485 69054571 363827946 687574376 443098717 883705485 262679091 259895136 504803895 135431653 739599508 301594306 854870376 844599506 744110515 932643418 798735673 759530418 777400077 412469974 646127447 838482779 343812187 803855644 777075286 247082072 993466168 352700756 947554174 756488133 425179586 633448181 713356193 422152282 322315194 982560240 62544188 491048311 411959964 901977715 601789623 563977559 862708488 115197042 296107431 174430561 758673201 447936765 201437450 552087116 907218537 463820189 655758768 971113966 314755301 661796629 767428728 886903261 124728824 682859825 808933705 620084107 255872108 987539081 971422926 574260399 499123162 53221690 641439737 820775569 255730119 475426326 882938886 487759928 9558754 400527907 819700781 630563331 257674435 461868422 809950856 289414393 501814438 398621407 169529921 484490787 92536410 765087725 461295590 50502675 399647773 787029862 631692386 137352361 856714150 624087418 180645105 333036644 842707670 457824417 850580805 332758706 611400678 825876766 980142162 424866883 305339794 952081527 145997491 640352723 144199216 950575963 44553990 724951772 760868892 429943144 775653006 937869178 751368407 110474789 814987546 778955017 628659217 771951695 615250819 134540992 896372867 437792223 174899462 659706018 984039929 956671187 580873983 2328557 899588223 269393322 48102492 917051413 849746701 489563896 413494533 70429995 805304344 29531791 608071743 273703266 973566342 351581140 228744408 872000271 608644954 399512311 731815849 702846620 411704981 716856044 12124083 196662976 753961265 721143091 648419672 319485515 350087832 857949945 643482686 457374267 652595698 19772220 904063426 959191985 295125008 82293159 68288612 220336857 96074184 696650475 770151390 266553586 668253068 574596481 628455564 125334232 971218918 789320028 438246051 132266536 863113435 909507942 176249269 537912804 34532619 802616299 567455603 691380867 484259420 565496395 111152238 964972880 850351537 461442199 966992010 912489335 673380460 502335042 589033645 674003756 684202944 4487450 697218762 757606869 9830394 529513235 57372131 494543728 639829020 658385397 520831518 338189042 303725733 38888582 111716710 918748584 626809868 175669543 317434028 564046325 455184968 248068209 839010187 823285255 115875329 249026216 413855103 104976912 260347657 486688161 164870722 146243300 565731766 127440345 6852322 621866805 463779278 457021102 292238033 459732904 532213709 455034815 924448732 428874283 226059082 387319458 861848855 42530839 840029195 923669642 568464023 683024910 414580982 251050453 326501472 342280910 562237661 398426372 845728698 538747814 460914628 452469467 235509275 653265626 474960445 202971830 449176413 959689554 365402121 608359073 63853120 737174505 513199775 817486199 149215858 81251831 259587000 228212420 533678162 965436714 449500993 16640911 63942335 616713086 444143930 193857581 275844896 199774619 378649846 909854882 192279397 819103345 451664505 980269441 962299286 819674635 807969646 982164511 530888886 508332767 120664548 537191532 322993045 954443151 265803439 365870566 641935776 263016511 111326411 749280415 865986685 136412396 302229828 79521335 452654152 293871265 372473259 963024089 2789200 685185531 66248428 586911952 429242365 982413886 580153346 715649558 219506712 749076403 248889364 459009838 814345493 281731591 935533400 735402409 42082688 841047218 447389816 503146667 101547654 584709603 79968388 303035082 899695764 941725385 109803293 798136700 754148095 579252058 387572569 165055 717146034 680578542 749351148 376477453 719845849 686599864 352320096 399356053 608082676 915840237 80464740 668536424 23055228 429116222 652073836 189682652 828324243 742685089 270373008 888888566 682578177 905713596 281934174 766122319 168605422 886310279 78807769 148571963 585293680 32336109 519262407 374713022 203250714 874588129 248919628 601409288 39583891 70319702 618542767 430035233 1361531 424075056 296159849 791891672 283629138 588798622 597693070 233580105 888433914 447940262 938079350 82284531 941291188 856150748 457547873 965365994 59602782 500695004 149426582 658720033 771233825 642474755 461133598 634191068 558576634 469544806 85523087 514953645 235567268 241795040 767461752 469248775 616699794 416514439 977605472 759574551 767399717 561810094 39419405 273187004 357364836 692851751 705090370 697757233 158635762 731061614 615062750 377163628 432570488 294720798 151041484 768072843 350841367 632497107 184682819 75419862 104676684 994886445 129202375 50045206 396596462 206749838 201121114 507037867 249938122 556087671 56909069 962306710 338238434 624770282 354924884 941068624 883477023 235789586 440717380 139845451 300175057 616682514 747570789 398495739 420938014 976300670 871738456 846866346 57788709 320703329 601999890 497581302 287550763 416277446 454584951 63022433 397715131 234350321 145457946 738421627 778921728 266011895 392423812 894850525 80762374 126885989 895128708 939991895 117197885 872045362 722199815 360736173 316245121 800140920 230416369 684949243 997950022 388475959 736463223 18589984 408164563 777613832 773072400 304316587 652346023 862511328 110810837 818080162 810062494 64097276 793378444 788212797 74390709 649001656 477653784 214863997 480838035 572407310 111377206 557913535 118584305 747255607 268095559 57414679 123093294 935349360 680540586 793151933 518205746 490820285 863882977 468295989 179850676 543211514 582535575 156794031 40990922 603413752 326667610 216706150 620457908 432605088 318403693 519316840 331022206 172516463 166906350 231015305 565916195 794239105 471823524 370559485 586023100 884269172 617531446 677848013 36423335 32994567 323502553 363392987 323890278 469814280 522158907 765047536 804167845 395976750 193149298 281956020 278496874 27139781 452320586 411241617 346164147 278190251 798908173 573159820 251303065 52497769 4316144 598058037 317084688 71646911 430415195 120648113 681806889 346008917 326630168 41292411 833576825 509685277 103707756 895985156 941108158 803194559 267568237 647061052 840765582 395992684 443751808 108302150 157428530 809890238 204552332 395843745 421572632 457360597 911493077 663529832 509032609 470995684 7545800 823093521 753265183 315377544 536091574 75162449 58507558 680790257 448757051 493392662 480745994 79385823 921652751 317519718 286832180 97078849 992405499 11832026 365143488 859797881 377698531 766565377 507519540 780802871 108003036 742910050 473922342 415696204 873337081 944147103 301448298 489833928 456027122 133895674 774355820 57792048 380440062 923789297 613188244 329288525 336208736 244683582 875617686 898821599 552230615 931002502 763110161 62485579 639981755 987793099 203869336 194134735 315445261 783660427 212423236 258126262 89722703 618797458 847516066 885080431 202917571 547569554 935298207 670548703 237795853 79951309 507622013 144732385 740703578 304458680 839218707 239015292 333900508 914782565 346016036 938575498 625013222 579811472 55706111 737116693 556481638 750665498 416926826 566323721 302156638 106226680 421316928 448310983 66186064 722607647 472872395 956565076 339918851 121860609 181661382 268044417 859624702 536295885 547403024 284668456 63846038 126085217 411638575 543073199 59342956 90465383 202331113 642338808 230123275 942492758 85505687 66561076 426201852 612513632 845817168 593102797 809508383 836753283 749643216 530465109 25515276 818433597 86718883 298422793 265027397 571912380 186824777 428775618 216386249 428707041 149608596 610082578 543444754 726680081 125193671 216879703 310865194 94784662 251318235 404724694 124560750 577766613 187537935 715238991 356056587 911499684 819561832 421048918 347488760 152650736 457930045 636571720 191296193 41691963 819568084 551371341 426471870 10434018 32851178 279062145 133774537 242698568 801615262 37870148 199518979 663707234 103798113 260057307 952819958 645039309 788280398 172549046 423710068 320331644 8871748 345355965 137273005 186132146 579973254 179909393 512245797 829951738 827637715 124696259 988384295 389213884 409161293 929160473 103306215 375458905 250468229 44101061 330716714 568602702 519109470 219433996 586921423 127016815 622686520 373347575 254343513 251288839 860012941 207197252 926415543 448629669 102525398 121336633 709987046 491985845 728218012 365512039 286757459 402249393 285168652 573950998 768867521 451386456 376804793 10878119 281025203 51995914 864973746 878367397 332046979 353256950 602931923 877808738 832163046 797137816 609785325 277259581 789482633 357781231 398710982 6455904 522951910 613483055 280882961 713378864 954038219 776460252 45896670 337034018 328380733 797835544 446897482 683846794 835732296 739864582 680464122 968924553 802995953 601259494 465656619 473402447 348700453 824588839 949552810 923953809 846930883 226259623 133014605 722386516 590958141 982718903 513965640 735257357 5618665 692521230 284308153 914624784 105189763 846679963 278381908 470507172 277028571 281676812 107475642 113117457 284433830 652753244 328272112 769192729 676375015 716116052 270011196 852066583 685276232 164716977 86018185 147516124 695719060 104627736 525458391 113799802 924462151 231726292 406717465 746311836 265835484 207054300 168285592 89301377 850996816 479105148 574268576 190509994 139940764 251803720 538638094 435368623 421944372 108693185 221962883 988950044 607900566 394956487 976184345 650868192 292930139 593453794 816789156 279775780 764674433 121289244 512852750 377480030 346277025 410296005 980555286 155664020 771833666 690111725 219769052 348477515 699877657 897132036 999380168 13712082 749316936 32318607 679023686 365810950 329755781 799846980 80618747 622719000 790070016 334345199 930089208 6597582 611605986 955165757 354471512 216063577 75518844 799941614 570749275 410558668 316910069 312474426 53561339 158987042 492440073 621364232 214881997 730372691 597833921 109733981 331791120 815707354 305036331 569027510 821684278 882664193 456865938 694404765 910128892 451448312 90720371 118240206 408709232 820827151 193378000 231884122 391140247 116715996 384095729 342405322 771256496 699855097 208818870 466518167 990798717 555072244 223470433 349568780 704804482 261142778 954233281 712537730 589209647 773540262 974285968 608763635 433570244 474691988 948156614 646565373 117957703 814935064 601359791 563388088 362966429 924367622 175921660 777344914 378936223 828922039 659757657 974755505 583488607 849910311 868149401 679541280 294839895 743399218 740920221 391943469 722794043 877862797 219047500 916197495 135281092 696103566 308396303 313789981 921900573 326393187 887580846 841715572 156069922 24364645 642677702 768922553 686300509 666319301 29365290 548983808 562415025 412560317 296653981 305662353 296099872 651922448 318975777 559405203 924311116 812357133 299288816 4304228 190577959 678343323 861876749 704655933 382723134 756924264 460178568 449188329 296315324 415562850 959999886 750204958 321490275 864614014 36099978 895112202 706476481 825503745 75831409 406139513 710837932 465050168 688271277 771274669 22652900 619126302 204312714 956393926 44690894 694510056 109323224 334214748 41098919 719283106 158431756 965007762 804411050 677466215 243400480 458551855 245226795 836423237 929091232 152234843 97194738 114332441 875206247 325838384 425349846 692676073 590170558 833691581 421078034 954604965 522088087 409907748 238123737 474357083 600017744 979384098 673933094 377210555 563919008 907461297 820991685 73900308 814381188 7264228 395083431 968461748 107918421 780779620 200850496 860652382 69918935 733897372 701545596 107908074 546286393 533305322 886180485 3823311 267396041 785178621 824190539 668831409 578010586 404822025 411398831 679728216 815608870 536479379 397779875 137758714 668219256 570640051 343392619 487850670 4051488 738225306 866070741 441118769 443340642 415914051 408275068 433495025 562317277 505510014 802015347 723515653 110696939 565437940 386623060 225711593 550144767 440094510 377336786 420950141 784349048 963807326 970791073 789188952 294038880 625699136 191918782 377335313 942303600 447723981 51268217 977754424 233123493 868255984 512205623 288168613 136137240 673617714 356551857 692906955 866857546 483618714 16276302 302763812 90758461 900165914 855736016 417346936 773977106 709124612 511256220 674512061 629082358 873265213 548021734 322792167 717417695 866349970 392842489 888751595 24416807 721726648 101706955 51292518 964138903 281697707 901695763 698569091 61345107 707752852 363656195 957920029 502675829 836462574 524109286 76535797 824484296 698607447 512494410 196160084 523402524 496397959 730782232 522904564 204464515 891105848 872918871 455606466 340397995 200151287 707825714 467262054 445297522 544669992 380639568 553277353 906610788 881779007 423432286 61436478 951413572 701584672 88244858 630955799 894661334 367895399 297084962 35035364 512402669 832290653 297382553 977811202 252660507 208859105 354373241 77486904 349832412 992707319 66048498 49519133 462948306 268753844 822290097 129942185 392613674 195317668 727256311 244150571 281700736 663176957 950241085 56310367 790310457 895399095 873921318 245299062 519728951 349276081 727102114 406342635 221567566 285376510 568469943 378600124 95355560 127425005 954289238 214126714 367643146 967848010 365897015 280988431 773566946 537856604 983451992 507687948 463534786 332169782 788525687 521873546 901068598 688403946 260712707 664352765 380827860 124033811 807711906 500652603 535148990 885783479 256841302 750652502 783910182 590939113 563420236 18161786 382071142 233709550 666470361 552151061 847064335 681672303 15609214 633178332 38558292 824158380 551359807 41332852 483333928 225596304 854615179 797057461 77129109 373877504 718563955 50790656 919079974 109061017 609285101 513891955 144373250 210829557 493380030 639410653 189122988 432213920 237500528 192090659 817431421 365707925 514030663 408861266 733407065 645798937 249492574 309290560 598371731 627270888 62137552 712256342 403309902 991537825 842723883 859006836 509474265 157569872 334786877 612029809 111736582 529885244 219344290 445541976 646867454 563035817 937940091 52218062 99078154 821031640 671740540 463775027 750349916 968778963 291791622 905894149 575502458 682952976 963297406 482420921 940844491 451840227 937644090 659264801 710977646 38720332 749432718 705693306 849077207 513521772 267097090 854547701 366768289 911532044 682457692 36960867 742048690 247690500 191889050 950035797 600383874 165984076 561293914 256633471 495544367 895918723 234132787 62770248 137333251 616469150 206155608 948748872 772129347 607931748 739975897 401272489 862886665 260973248 892267704 803215056 895196925 674240070 919977557 966337999 275605131 900007634 820790618 690579017 842155345 847593558 429996600 382113302 118223351 306426326 810489692 381490187 98722646 634474573 101115470 668105742 415079761 884081622 551243792 490668019 329872828 588626551 715560267 633991255 568957545 441703694 562542755 410127629 827380481 725394373 220393584 234686591 445135243 37394025 204454118 669305700 241819581 772323944 236007172 576928166 680004398 918251287 353243731 419992543 153578192 92735488 575522640 439768037 628994588 684622661 998465418 502786740 264627019 677562280 411968579 661357126 766068629 96715364 840847014 928955164 518137785 851317431 302114395 754854155 889537264 893198016 868189396 139465351 191861887 338428554 766546382 444041842 792652441 386873254 532408203 590457764 268745524 35487036 877681741 274725113 679030532 655584574 258312013 564249827 655862687 459820542 184035317 210792566 753569105 566551329 187427311 674731589 325593940 18186168 410668378 821584370 82513903 335379775 283293960 256221161 5341739 529367274 233390437 93523953 446944657 26034386 350578794 740251608 411086091 115652990 42837946 526480503 463141466 644023070 279217758 522634831 860387093 182217340 782166297 828411494 701494921 256411419 553614173 404310815 295292005 219786804 110564687 913974046 110574052 641339933 931525537 904314704 362906752 296235956 115826075 47030280 279979492 483876039 939009621 154129562 652161564 983712912 440939740 801532009 838711932 569549061 378580802 108494180 812171836 466720214 58283313 355864967 682352711 228067371 232060713 690553823 878439616 328141720 772126991 460875960 302183327 223499100 607172586 78412131 909982764 325379273 332913408 162296374 250261385 118040406 273122617 884911619 74040654 759562263 966524228 591597563 880165034 750900716 17458047 290997037 611563698 808310425 233353710 807421310 151453889 171523524 562501472 36051753 339498438 731227867 637484193 759927437 723008720 296851841 415232894 260782991 645129771 157476804 143113130 674407821 851097074 518785174 253189383 389399068 847992007 210474055 456819176 924047608 359328958 736790871 863733617 50118557 441606627 503059819 883941309 788019536 886488003 423512076 338295118 425555860 875383863 839224987 179456663 495012238 200108386 611113039 176950884 566954493 950704980 651516293 65336529 206721236 384993692 601534901 804347969 827819702 50696151 15470301 260857743 454465064 361109574 156323364 30833696 297553388 828257098 278779247 202338750 986517336 476537876 22158163 888392619 996714817 218733072 787662609 832022646 501308465 483872713 619611149 149642702 929239242 589381811 302117264 952050502 863612356 980581058 363323963 320040653 921261260 897168436 459185290 113535510 880477971 753966988 71105968 762179521 296014707 417255900 634719506 761760825 540587368 619636003 580222462 868686108 666950801 762486698 568411053 84977924 194094743 525611272 944941895 877114122 79508762 668575496 605088363 811667956 866851 819531715 17596558 863126081 711537619 477911469 247258132 524795789 861659579 320066588 60866897 618220184 763019904 558235819 520700333 933844995 154162011 998239529 26406086 863331777 637365006 921798385 896568386 859315248 154554889 199513736 97179688 458524505 711330327 611785831 607905956 625683682 102997120 133789652 658978020 822567889 717719813 175237327 83400576 7501640 899522302 598882715 714605429 266446600 79729441 720439645 122808078 128825370 190135801 189558828 21873520 190012415 70996739 355190272 20867680 938519801 959098140 332916536 560690940 409985359 651110250 484691052 778259023 667983157 990128868 592704733 260610975 695151805 854307887 980916747 103980116 385331998 474876032 887657321 279962912 783981009 491879284 863958328 44525968 284566094 520794020 358534352 164666033 164201820 706969943 497114052 250768576 290368170 938939595 968702666 728832137 924368324 53461137 163410811 326420921 805813578 836710611 499308519 797931520 194516399 992520365 906110193 395757151 832304922 419028358 26487481 315219035 733160845 739274010 108442315 203032857 605080773 586904559 400971107 101507202 157528258 392759490 6952655 833465640 669324340 750164847 169464390 231585758 345837680 548948638 90642258 514533960 281336845 629805150 327362007 628107036 572952263 725807497 787611602 29743396 475989380 929691602 476662140 107341899 973565983 123915130 921409532 366412857 612057383 340347527 592306586 489505809 396806651 608963666 313116741 920337363 870040297 108093929 758197647 212254389 649384847 492826056 187879311 992857599 722436691 918222791 106334983 722672462 195328190 877045653 267617869 755627246 378056523 429791775 825023225 203842174 829798437 463733739 555449190 608327066 584557525 321126021 850624561 480057642 244453307 560743737 711363122 305968790 826347265 564592402 768275804 202063552 227434780 301488524 742396098 156020502 199478981 409082097 896440746 852142964 209815236 585311320 554492224 484824809 601086114 462793799 684700351 813318010 743036229 1306436 640593912 982200990 840101155 89333355 212689092 618025538 301672170 460626810 271456835 306575750 870929734 122477683 135870574 690539098 346520838 601918406 106437613 151016468 478855230 692938528 46186808 111407969 378237529 335497873 699973062 344065486 99744590 950309302 507456292 919304843 246970371 194356100 427629102 390398052 26709738 641832950 178677029 217665846 980787882 992180669 141836321 849746478 126627542 701056464 417923837 539925916 588921392 264447316 34760158 188441167 243035863 618086999 529945463 834731397 989181362 168372100 927800671 557806133 544462792 129914834 597906709 118136776 468909070 724330557 822090790 55627715 232754592 258608008 200656530 133515814 631122617 335739143 749341507 226391112 396074137 951757228 762217297 389985355 150309131 982895050 406525947 590005096 3665102 571581345 722462939 565654068 425096940 680116658 212844981 109552746 422776397 332765995 807256867 39679316 228687469 663537282 715012007 92197969 971937606 348311639 582935218 638732907 529164358 408679964 397479477 820696763 860011812 700513358 962342253 408781653 866540535 337294722 911787998 918707047 789024016 21758012 763073303 596959167 810484192 185301461 367251119 366836316 832121218 944969687 930441907 897083175 41938366 798620153 224349339 484778236 611236585 266522593 657163026 619661357 237659821 847029957 989322031 4451072 272305339 263328285 739655869 757137554 134194234 294024407 488633241 433153014 307838626 74949137 558401475 917810101 523009229 130320824 982521597 40057699 521288914 615147685 53553198 494895562 482183219 459305836 671813517 941907583 92686295 341234994 713256338 988237140 534828206 498498239 58596021 470151319 962400123 598606196 679800011 318308133 975195251 251353111 983370712 611275374 904301115 604381347 328392823 560960524 641101399 693344078 597527249 956852472 287120694 5265369 650171675 714874367 375643297 729408111 396218010 602274253 842726228 654944061 628610122 244545962 359598019 336967659 442287863 328500729 658664800 328871157 360575429 865414230 383873248 458084180 271040702 58766177 519437030 554188408 528873637 70677405 225585886 844872738 460968792 847183653 100675829 937104976 150951473 720866983 392533752 349277804 678862420 268326338 802194541 559264418 329737637 118645823 786641077 630304916 400722769 366614758 72083569 781263064 187930818 469347911 588808001 339639360 51561723 976654523 262296647 730545041 866791463 869526051 58684350 700403259 437098457 766037340 739659832 321686657 763469227 36407156 220385926 762027804 509321288 545634854 925603752 426889613 969855000 201007033 76899849 243742130 870984288 327185208 814002100 135550666 470268300 111248335 107638252 454233329 844944595 332108132 551466292 414208484 943685344 256287091 275042793 850246339 304438870 816366373 269991163 1305749 987051954 566160039 935919560 535674201 418972530 755051805 375986747 563636998 279834728 215419496 664127234 364155041 587235070 568516875 488794547 622366061 945320260 328880891 378996579 410891601 352402784 932731026 26812565 126914054 749281352 329372322 310000845 51974856 391029466 664827337 295574849 734731211 574728180 103524342 152159140 736302038 918397515 49165152 916452171 788246107 411494191 155559796 792040913 798053321 201800207 937603722 109035664 210873257 995433807 398984634 582704412 214396108 109687881 343271632 298001842 748692094 493103178 106430169 20618922 532064463 972557840 117955087 20145550 72506927 561251106 673961743 480603982 725689365 642958280 982063638 933282497 228195466 917424940 392830418 254490465 740391143 36197087 242049122 387265545 543673107 660444382 148303604 131084457 750998563 960644814 496228585 983564805 346901652 105570205 525496366 414197168 452693427 994861224 648009362 505576774 507511097 82372708 528486254 551191593 72086002 105795619 486173057 956940140 399409575 829103765 430195152 890456153 856418855 29715784 636676819 473177018 921368793 255346684 556270574 700882097 80317587 364407920 913435776 342300955 219231310 320557018 631277818 70726668 125207462 608306303 334158577 165429742 730787351 345484183 292192140 584252107 577470711 627271378 438712221 895445125 385873239 336580394 449546987 726367246 281586062 833442611 985684648 46690046 985810456 88236885 470696113 953261819 596196347 70652819 545627754 408718649 365238123 796041601 278531911 178884057 185255077 832522651 97615870 582033244 990038399 361955032 220979322 742016026 303504968 453551829 289602581 867605769 453882933 191342813 502978287 150156990 585338843 74848355 131208655 921366959 919974236 316790716 220139757 277757838 470884436 141777614 489353205 678921139 532212099 231590144 477617027 785080419 141451502 235606825 253386725 460197194 37022598 581930904 430299349 176618692 14784720 480378034 360580235 137459477 281436785 313731992 827262335 297180974 447984652 570069068 949334589 252222407 822830685 56727722 719401674 21415864 707507052 478754892 113401561 595804722 290022778 206369461 879605714 401156047 794395702 975933883 191773392 711215806 647200752 882335342 405490821 692615420 580587278 952074198 20438054 961400804 56972158 871037383 910616382 439694925 59038512 999800337 582245867 908282906 378889808 840221592 839685143 313714630 629915590 204908307 616295432 715492506 525194763 771927277 81000254 690563570 984967387 331188603 169620447 918251912 966571420 782980227 293790815 152314992 779250896 846758850 317473045 156792752 560604472 851256702 231940151 413734652 143851858 748466635 951143388 489413684 892551524 290830146 383391131 292053917 537081141 21805492 722838631 900525037 587319418 862385276 37958413 371747789 348246698 429138824 894594892 968446721 329788861 763583576 414332522 686146129 320839110 478479399 474202849 895732383 562122435 333197801 260403602 910441031 824869076 943656876 106025988 25528792 255465440 366611675 861831553 161325077 945801222 28491956 990459079 400090346 566969961 327939579 952197448 434641617 315433595 113205904 171204643 421981135 919261002 459313873 944961715 741685901 21813679 871861223 510563676 826972906 754136081 215787423 473877835 830546 984145422 476110310 927336321 183742098 72264857 557176321 464202248 971324649 587082451 736641009 174565753 945314164 996264230 788868328 660192615 141762178 994735559 206806333 579706993 999945371 662721585 920987533 876461593 407654408 87973324 525584810 206790053 603572152 908382713 905114281 296164676 514712173 715913737 932765149 892204402 973801066 578611569 577576221 526723201 965846141 268439066 399911891 431806397 778863876 86832727 86839117 207229683 354282431 258810497 696824331 475225577 129629002 25700366 142521225 186765378 972795959 265908002 821934367 388922572 754035780 5975208 452945294 373269052 854030224 111825205 242992794 725583325 274516694 199896549 653987944 529871113 609559895 485902473 143381571 315281512 338119676 691021444 652278107 914026032 444587427 488241010 693098730 611373753 6876066 915831516 206759651 381669127 69589068 933278534 263800441 143513885 229541680 557544069 462876687 252504954 95908612 656033954 670933797 873140832 713991735 896449748 359693492 199312235 747994970 265429304 47509554 644831433 642445486 773998441 322652284 196223114 155411658 619106436 368378972 314210859 283270143 370663529 998990208 64464485 147716203 396362740 26787036 948968129 874452229 819267421 473063866 680592266 783502392 657528957 441192357 444715481 975966890 204977528 469013520 338602598 864286344 41371422 172682498 658181336 652197835 138566018 714789774 565247430 346773417 929154542 713925876 346635401 218633386 624475253 496551053 495059631 912194419 559650628 432180177 976601990 903448667 314281863 916562882 283983270 799708649 676409812 665550489 624717973 495578199 362766337 579266150 368046575 492002359 289254749 427094835 386663221 341684939 723215382 419206174 956088622 341654731 565338901 51994343 436568428 32922127 53550538 534046038 591545253 370162237 737554888 356919544 927848390 436073069 921889031 587098503 614913973 605210430 46772613 705794855 529893956 781250091 997886603 145745928 135486352 331751299 935699505 917752803 377481879 755945837 89812429 33896160 791234723 530600143 651710842 959546657 313587560 185920363 93130862 473285308 772905304 544338221 135142186 914798115 161154187 606485266 366179689 595804599 660540922 23938730 931459824 869140935 138973262 646223777 622581788 367055990 161217648 622265419 244815872 458828304 803026421 891509615 571046749 668329202 371188748 40715957 570530266 256845606 479830000 75242973 866307220 488741958 360466826 538066673 162178302 858730972 927862828 947923751 178651299 28939202 343448068 285250050 670181091 819220808 887696092 416629849 877533475 584933520 881431938 16076447 746308569 327017378 11222766 669514364 767229856 119533843 446265726 575095021 976388951 156967801 513399691 741089487 749849918 108223268 624055708 365431138 264947840 742517443 971790655 470057105 385887248 876294239 687119038 749017198 291317476 404446238 904491868 671778572 759208034 211293252 432098126 111221172 406960925 380890563 841803409 459940660 56655716 500617541 80464928 760774110 482673547 782397640 990502579 700150547 987210398 877684371 324973850 140322070 418979136 657876674 176511347 740460038 765780943 913436574 412093718 387646491 101617201 824837686 816153317 922222586 632926158 805489682 376695144 478739102 537275719 144217067 530481436 355998401 734894169 23286627 966625534 302436804 485078736 495210469 349330573 551686911 177620665 977696033 64914800 480814679 380139103 558203982 388566439 889143622 748776802 557000057 616622488 604141387 957167194 411930289 710842748 399359310 995056455 391487602 655957341 454625517 534294718 598622294 275670838 605796397 289077375 496835446 743988555 696580778 673226717 571159523 922250502 427590137 357375037 683328726 148788319 485706355 471790892 6112853 85700037 299648474 73096586 318805732 579117148 507571701 980824928 948041253 159641764 15915272 715141706 715606974 103721266 180368844 144653151 211832103 406159750 315091558 278721192 935183713 728992807 320228807 783525986 914253643 871312366 428132744 974456376 291000094 249619767 161022322 484557948 881633212 370449430 849474896 660252602 931182135 453031424 514844968 500315507 331629864 424975492 653128683 127793040 999781009 871622818 537664884 635892584 279859579 150302985 281652644 343504923 635400396 989086616 940283109 554766763 894663393 758856780 199302413 598684609 214361978 916584012 234123591 606584406 977912926 639459481 696368058 287076678 907210948 309195878 21959940 843243918 735807782 540257119 518259342 841004104 151420742 16993106 341787776 982767327 954302397 225754529 172417267 330041725 601559454 597767067 768551547 362714129 69242639 740237413 950242025 690891108 227162488 281024466 459010145 749650440 813025944 721832016 513314071 860596126 594294915 387957768 639091081 154256237 876745767 690034836 722368684 225092034 339280442 160503806 884204185 212638219 489143205 615864504 269185449 373346988 526234224 728884058 554105272 630889972 788559859 407942120 86511808 315920667 148984587 413778105 214795161 147879188 533316789 407653519 263583405 265248168 176818691 993969532 921390792 669404322 225568087 604753368 562085723 65204073 227403545 168370011 721581454 671781687 139523065 225927665 754911116 209316811 150924680 946057972 27481867 638019680 865836581 709570730 704925674 433337499 662480096 660745402 67511636 122408791 675541679 296882742 809872123 148255236 250679560 712103679 400335266 827272995 200043377 156253844 437795976 420765133 699693954 982291403 944108664 818893115 196880425 160911105 22124071 592187589 457080744 649227256 462613648 420969970 435922800 172302397 649443396 879809285 655329978 212031670 74676436 465653476 76266681 435216242 38347113 922908541 848581913 139250464 894529089 674718709 298877370 146043393 536922565 196857278 448632535 482451966 727724220 159241695 723934780 39199565 850052715 111155655 21081302 126533026 721791760 845976837 728477683 217003585 360952945 525496100 725161980 936988198 591748836 282517269 577852209 98209386 810654890 785272432 937893224 747189379 599534699 897240320 641735713 535082821 360733059 32387900 794926713 700596951 641492831 833264709 198436960 412667823 254819235 781138415 842058001 628354563 581093886 417470035 989394179 145070439 68324540 994345379 289905153 879059980 456391643 402261365 680860260 221588649 574126287 550446992 108699147 190847134 855289247 449451322 14126323 736483120 687488699 566396392 544725157 473538764 517912081 128800332 158238975 375962275 407814060 471146244 901884540 771933751 937684914 193493911 219600388 910357192 913215264 614263873 726005826 881266344 941401673 443263332 920116385 950727263 585106580 422090868 693884469 415239517 679438508 218566190 64990626 703524739 856577077 886279155 779955120 42471864 915733841 568366418 838322701 152651608 535877743 921192356 130188971 363182666 373789711 963588491 150451665 238321165 376920336 105722539 256821741 897264804 873537238 220377205 526158677 355382627 879567805 294081320 147997852 741236879 508463383 28248812 474162224 13718357 420564778 313009586 529315962 311780159 808851290 42058984 695763330 689701130 571170603 792082987 678681829 34560018 271749245 567719717 649136982 40769449 664020481 984256038 948829429 577601508 296328530 180437444 995426541 733854467 360369403 208822731 845959587 134397977 951162406 685329296 541211467 503850075 549227281 42190386 300343116 356945325 745820678 834745632 27759714 414007656 145837347 518515397 428226475 222840073 707043184 830282960 61146132 528392682 477392891 930985371 785798340 794558933 951555589 200727641 807822138 117477552 118416559 84352711 70585857 20844623 113154949 435364141 390530447 660922561 262516435 870349734 815630810 381617435 714401377 423089582 185427470 367617127 279738911 651045315 521495721 109528632 982214011 643168443 990257845 817190785 3169373 360225463 474987644 103018640 610806347 374921477 203285127 538269561 630925092 481461944 418758358 1570509 835329065 787404295 48539047 816113287 138943571 697855281 510204100 150256087 142451187 868507493 483108013 279170866 100461965 627623385 969193991 338510138 312460535 287126664 550625117 975528829 116536034 995887934 876738767 244030559 654861151 134100795 224057552 916547628 294716523 944457161 461072624 617889354 497271940 798255684 46694079 70971596 873206076 996402888 25204449 379269164 543223778 513396285 10392897 675973019 845959081 871871980 46934519 844870702 189193206 122230753 201137577 664419933 690708064 51886457 536006531 962734056 373183668 961568248 407133607 721217631 435052243 897926494 716700035 415972868 875397288 986101734 820063107 281649935 360945668 598622954 959619415 632416798 539407062 871648255 446627494 223509193 569076599 417464577 225618685 947921809 914013303 712501657 997159532 799633133 834306926 904710776 451917756 974327685 61983918 200208066 35281894 344004052 6852247 871076861 198415963 972421620 868938025 264349984 162019669 192939058 798327936 52252359 856611923 577819656 896629138 730896350 633317240 397922125 182478980 904445412 559492467 745859388 707322836 630773105 381840184 357256566 275859746 338825611 61251924 645014126 298034802 778018175 511225944 593780532 943340727 673023509 640293695 229189838 427726865 305410165 685639833 37848059 362131498 428630879 717604898 728729164 471315439 749969163 795858854 49444622 279483486 149730371 575099841 331441874 457754087 10334728 744466553 734362714 652219421 758729363 859461083 490941737 323274827 599347552 988449967 872044214 581774523 541076649 211504932 552597987 260750293 826629472 957003773 110413794 942016373 919094485 411483291 114877658 638981395 334059714 441481394 282683777 647153363 982583552 41372372 499644454 167611736 918423151 999823986 781211346 219985029 851108162 555108711 692110699 517030517 825190813 902375289 270729800 986083356 952842700 967190510 32013959 324211412 132757652 966713408 233034983 295961224 575039712 551984445 640244648 220016747 597849842 990273049 435657419 205978808 865892170 83791732 914545305 108651365 494098696 169529359 970195480 317098369 343093457 216796112 644715060 235073023 111337483 889298920 817081164 917551328 178844475 206350620 253100427 889096176 579388161 46048847 323918642 578753732 302948183 723449765 209236234 465214625 232121195 375211699 895953764 43553823 253665217 719110902 298624665 997306135 930585753 683005719 986062714 178729174 12208522 367500888 179983873 995376894 720536100 540730912 591466123 673322608 674658068 849644913 308349245 301032356 696098116 643212599 220170031 369213781 178385412 593776295 669194388 976056925 601962262 345721640 210341842 559109480 740715796 319057603 508639740 400631094 320834691 839864650 175945367 46946941 213053974 509924075 908634918 392607203 818345862 646145772 178071773 808405681 542494904 810733244 286328763 688994311 318519657 950708494 955854402 363962512 657067877 641531849 485211922 954309316 904491988 297422159 624987671 731914955 163646785 503030199 780547633 398109773 884795446 91164050 369725339 432096371 998519568 563420396 763772818 435565751 740888321 618455848 422546783 172960942 446731095 599851590 52670926 971134838 157644298 13538673 339296254 185580495 183630291 569447297 882352384 686754328 115593560 533740497 286473576 670293421 85723694 783818339 403561463 205367977 157110482 393880610 869390887 51181060 295559935 679811908 671324942 310844805 727227447 313340661 606433889 268996601 683642340 784588072 374410573 415640252 55730251 730703986 824422646 953498887 378441398 598898185 138804530 447721938 406068775 768646165 905057927 532444479 314979217 305801110 917979773 552578762 491336158 307120219 674500639 919150136 319809168 133315787 181767965 410230692 975817568 974706070 793000871 682715457 386362385 375054504 285178186 548776444 866924195 761693807 474183588 711570679 752593444 257494064 611964469 211876418 637308404 750982492 586333277 266156055 862082207 740710112 30508106 541479003 67007765 128629532 575410048 674313094 372042975 693411493 737099121 717226422 433884045 906906766 141898971 232924130 641171510 948858391 116028168 949424228 123656020 492846486 567144728 623505365 209465223 721005135 871991124 663803608 719792731 96734379 844283005 699607300 892368973 984473660 898356492 605992587 445413617 946384258 893699759 901996241 669137977 144707059 323868788 929164322 543840017 44460507 344423292 854100773 138704345 546036352 125121764 641593359 375926144 858020202 31742885 610506919 479372895 535463080 603026624 178448166 492342840 149904369 169126151 774931433 192874987 908219951 600590501 490233196 287222868 142525986 474637142 291155890 661437962 39180211 356574263 189995168 476426030 213660904 271834065 47487719 897018883 135539758 683217085 316525620 688716676 552345425 196834161 792207332 284726941 984866598 411419000 149760393 846365573 13241588 392576595 55113231 649312428 171695544 62047259 511183367 296333216 514418014 78303545 162525681 328632379 468009360 992008458 998588216 26466621 997980320 450142576 221913168 360562164 438331863 967651294 282679878 147933556 806090840 602228931 959998685 868455166 312083465 822432110 50552860 96888944 639670964 516411510 639157184 273409771 573545302 416189733 690533905 53495585 413891056 391613229 362582687 465576488 923821414 593290127 356354588 853572893 169816193 841590984 832265238 29310005 178470565 30424367 853932294 371306294 249733745 155693847 982660178 630732012 670883230 8373331 492524883 769145384 471808398 172434072 187240185 900235014 296578834 104634159 492012577 409251478 46006620 993714212 776485348 330063141 259922138 607843087 291515560 420749434 828265122 421594673 671412836 710167998 35336282 535052596 679237347 898037712 908624477 1992164 786851483 69895054 745800855 366126674 976916153 794742955 326563747 37537876 951621046 333707297 70124062 393401640 679163954 374487286 934401721 54505570 598409726 955301039 780033224 146776708 304872949 824227994 45297328 222088911 113902966 985967832 461601212 103120700 132224470 913855932 711426041 286157329 693447713 237876146 212572047 523498930 560384575 171969687 583291338 754428678 337600991 830227879 262432120 694785823 39261799 634481665 97835017 152905285 546175215 866420411 980107237 255002062 762767517 958852429 943062808 100321874 938618483 474609298 592506379 324330629 274107835 144431100 933429823 633537080 734483986 93583603 928759275 887052125 147221069 970121235 593693661 197260088 425314448 705562232 138280557 287431988 762614422 818878339 687109129 389762301 674497401 931660289 611575841 548426364 942112440 603803169 300042759 68293001 798058396 360337613 511033236 169822545 957232588 247214765 211023661 253406502 683560709 27024807 88179257 370214479 932317245 363169333 688126900 617118535 964885633 853407135 149241682 681993407 809433525 464300840 137972183 314880502 785630284 689165509 158158140 993585900 249653276 835806107 198517843 379486186 129637030 618606830 955480328 857456 547917400 973143510 369359023 719355486 788767533 618929424 434956563 447589136 486360106 237397071 132959692 373639421 539202961 556714907 412968501 516039550 2235905 290005417 970121848 241662062 504488122 264042310 490951490 94065741 947609828 905773544 641233717 186263872 579005065 782930895 6342818 588476700 492786608 625870721 883088523 680249153 255329893 724951839 561369769 617951452 886818562 162740113 811766497 529690094 880184696 60929828 714592884 214887444 829970885 749455432 905883022 851436912 154707326 756348298 140691278 620936940 619118467 944320991 164939184 33896101 951975519 74836693 960720821 979282184 555862764 613573940 776941325 23001005 774745717 708706165 478140370 114150008 311817642 955910247 746977792 124107298 790402388 819885693 864824008 396859876 807534051 64922078 473426636 638831993 299480504 734432926 188209755 336626788 903830638 202147592 117638243 677571406 119495101 985802982 294729995 572760282 413019430 890215949 785910075 63538086 113940807 511642598 385931199 402746369 603465802 889270642 978925594 790861121 240619576 644465771 974057698 425335596 595892182 253197734 320410157 322021273 727040677 521876885 977689779 61214858 788975545 860410460 402138 79997137 759436405 800556580 491021913 248108575 936261943 126167962 264903749 523583429 408668006 210524157 310354623 326022249 37415263 866181013 610763809 865750069 687262831 945178666 282932349 970822119 125266939 217756648 918950996 767034431 200956216 759956920 776977866 930973680 79689116 138430086 771791853 856468013 751842140 956607283 237778440 736791951 227914538 351261110 239688895 919640369 893040691 603122947 539860659 285614081 975697257 978971720 81805581 151843641 863160849 126473356 648759687 73895888 91248706 403949741 671922965 607709827 574256943 56448904 461918321 252814252 796192485 877311070 46221208 853110284 442579343 541336750 832862507 185886466 295451802 397003357 579204413 104362979 272630876 558901743 747550211 715063066 807905085 669758694 710545041 353522313 495192869 592685530 103399209 166289558 471353901 13109363 996748857 773099423 194053662 845972431 911717078 810803346 256321818 339550303 728390109 828360109 309755541 87318090 272663886 328843571 421052189 342453462 562519679 790597759 741350366 377535054 935270361 392755959 583762529 139006170 113047316 567174372 732792005 580507814 585966255 528577570 378070355 291563556 756611367 732246543 737354342 676173738 196136003 688384089 84505418 208950854 18906275 521905239 266235058 546775179 416089345 364707247 386347977 857325414 699020219 751942343 626229510 732504798 279315078 313303417 792811318 397739508 341077015 764694415 840990463 281918259 150670171 388215674 409845954 672600409 22142449 216915598 683773789 543857800 965165226 225100782 430530487 482577518 315199761 199963719 804325030 473500862 270875391 241865494 316019796 293631588 387137677 738055434 111917317 896755312 362341056 500261222 965253729 325165314 251487584 54532671 998182087 291861002 359249957 311002673 611592542 924372488 807854372 774936569 572308818 655043600 461457759 252350891 642064597 467579933 253010545 486759400 274032191 873881836 374235182 894942953 113406821 823252635 201408578 135131632 767183360 751151590 659851452 661537296 567443365 906362551 457538235 808706245 670364919 522398011 881183981 520587386 916434138 881804798 678316956 690711041 763691321 141670030 417339830 403608091 416329589 106658106 715990582 791081358 650627174 592972158 447003939 912969349 892111528 611015872 655002650 216079046 358199488 987141967 593730679 822043143 81229910 690275498 790382658 724031208 917036909 1218229 77188947 14439157 593147135 114788776 336183145 78022183 530921202 866095281 195524395 534665471 281984093 112064888 650613481 3771931 56866836 691287439 910995763 779098514 491264386 347533438 652531881 854197041 359097710 898357784 673816708 940451267 920315944 300922266 856037346 233605445 136755590 673129313 732554540 690101333 896206213 10609480 203148684 471031362 150015928 843721036 182580203 867482452 295294791 366742980 835220475 796710700 663721069 208073448 391802833 354199189 864544333 769991990 164894226 49243028 809240244 522000468 547710214 130659340 566138115 981071266 88324837 386478794 241436328 498870736 981812115 937253231 484348873 162289477 445212334 224845139 426267953 22777647 239764470 7191648 993866924 633209274 157064997 96166433 412269943 655055656 232664464 627860868 973449634 961075482 773065407 270949033 44695966 622305061 362607186 838862136 281058706 634254099 318349472 673636016 164250954 334440743 103898709 902004290 28074613 160292789 932957127 855646018 880133603 832789636 954468745 396083996 428448537 761897135 700717711 712729189 684712811 801494717 374367718 418157010 123464116 266267226 500325514 921065682 759234060 511093774 580126924 256375941 359235572 286187718 783171001 421590188 372969057 743552683 245326066 548928398 144904143 919005136 634845889 950292438 547373296 51362450 271336476 165455249 847213835 726376170 214040339 614692429 758418156 156216163 775614242 555907563 897935280 429343624 47827645 341885917 141169491 365948380 260097752 725167713 745468584 58628024 879539801 61683035 17943510 982564653 861266360 199518681 851051672 2446053 17677202 34542972 684182868 665765042 831673404 635312696 471003012 9417825 921946837 727969631 786784872 570753200 314451476 21916700 496598914 510757229 144742202 544454846 451150888 396742046 182031157 95626122 817767274 765572261 828721355 820561122 703667427 85208789 854059911 225373044 322280270 996813541 339492957 957667 969062078 379247080 202857295 86103339 170528564 789234592 646068617 25766626 392261938 773752909 263586632 184281820 373312694 19623514 6412470 231695439 77157643 204282753 187763721 677488836 289255236 2392120 41245800 781930130 894517293 140184357 17821931 890577489 294245677 959350221 869578966 479865948 766284447 683438186 251960878 829069947 548560551 516942087 517987270 456903193 745959557 783550590 856496056 278073730 798955992 837367979 57347368 999476512 160098157 781144522 110436085 455666542 690204857 858808131 790737440 438980338 827597816 513915354 924334810 157928210 455433715 697394941 461168845 217023945 87463975 448793509 781592700 211270054 561927261 100332942 762365715 300258605 993166964 738535349 936896261 644396123 572858412 251750889 482149853 667701081 809730452 86913953 191595380 147961299 65455778 146622988 191240178 835035301 847835950 288560390 540138282 848997662 160067935 882810490 530452655 664675485 574943047 139840520 629705805 868537534 52637260 230512060 135833937 340125904 325559281 907531387 337132721 349195535 591249519 468588915 406704997 218402164 964973500 399883656 398298289 891974111 43730531 402297029 6145934 810303133 794059270 366619245 858472719 963924314 13213742 194675372 49941886 521752964 376105196 317266675 889588909 378749010 918145372 23808956 87317086 608889712 682461373 900804167 895257422 725263449 443929480 27361993 767115451 522812842 447363604 636567643 54357020 306878160 126775960 925625492 198463140 237504736 792585327 54105388 467745526 840818080 953429695 442464861 670677201 205514885 38458292 187022203 176268643 70770081 42369218 458719192 108014535 574086763 848827606 990373444 909065735 234113489 120216254 590789060 748099701 872847258 971355036 8213353 722310919 749099178 567291417 467582110 415074937 119322677 176311934 875012103 728659372 802634092 497158358 424515146 595573131 707210114 407992853 911121766 797343397 327718879 988206190 357470383 51371652 170462093 922213720 920178356 93347725 243532109 745365784 25976949 971362506 938090699 158675347 282458089 861462389 349297354 432564549 495378307 973310856 864402159 687766947 300591622 63373391 67474640 430966816 646526491 309559986 979704126 811385504 129392602 393985274 204584791 128529078 445411309 333622573 620206981 959477290 517692958 98848 233631210 57936604 435154843 775814328 29584674 98443324 466415624 971778012 576769000 238837205 856041376 741378388 810412684 931816773 867883264 190945110 449755245 495096402 61364571 1052521 309270179 908010621 260284682 31119228 661687537 779120276 837021676 977067870 395080285 390084981 624146342 406147221 507303537 670442408 479760620 899616194 581527946 606697002 562921243 792202604 42166775 642038664 258903445 593013404 702890802 311496773 736622896 431418396 202896978 726409931 420565329 511763102 18866527 910830524 571758315 311113255 532991235 215702885 52465985 71701238 955254069 81889655 695513707 75282406 573527481 644515262 968829718 15998288 594507185 239948887 252327179 66601529 305415109 363388938 418471790 513500858 47585879 32465822 258821356 341158636 390885078 481043002 33091882 889883858 957717276 574971604 305755944 423619749 974442153 788002329 537108879 368415717 237242144 996752115 926184400 616943266 488102742 452186487 232258951 380789212 765903332 556407974 942594764 36488761 568867627 658176379 304522985 621445456 599645943 143146335 851395321 154137704 701996805 970884810 4564795 181360760 53965154 954016833 218457638 442489975 325163942 433909331 123347706 711559251 207923283 552101927 958618675 407972736 235923159 123911853 500328679 982825297 987000752 751427190 586072358 778988879 38943575 733472967 410887742 969658174 717937139 225478847 220351203 348152805 459042029 785460281 569671666 626567916 521480845 868399788 249813119 872003050 372938290 431161307 926170541 791025517 515410378 881714390 841056214 400657966 170212564 498594819 759430656 303061031 769895926 971402607 868110691 560902406 883664094 792340920 310643770 42539807 838800217 379017798 407466003 964792784 110254102 930201135 725170932 317013865 820660340 38401110 151566772 742485712 681165410 364563981 623553341 915539672 10973112 371496306 364738003 969116263 471041632 447453267 284284264 370317684 867514890 956125168 509398510 477478571 99398939 154267873 987909924 610940354 44664062 308220355 464678416 267826819 500223354 579481582 653825428 518043462 295197548 80233927 313029954 618646857 559018008 16463957 667903715 104781720 602592152 419940004 256477066 621510755 642733492 279880400 111311189 922745250 100646525 616966983 421835521 826482720 556069251 534377843 66267256 870135897 404224895 9683949 746714877 363323211 401389712 268724000 39227926 817242321 914340117 665744893 279879252 981743493 75629794 372552128 697928560 99843678 748470947 782797024 173756931 148540604 841253594 754701249 735421413 744483213 503239320 56087812 109669911 984359259 943487997 355436696 20808055 128958557 132164760 696388519 978755206 595398223 528877846 723863993 713304363 878500348 327756691 932342103 571715137 848919021 467343891 916285455 321205112 960440803 5798143 83764000 79134815 166368365 5673006 908617246 522727516 109692739 601397861 75628086 313479117 310911668 89334538 62861830 142824915 21835634 698723812 88785925 856767363 287306518 332796648 931621244 171129955 215338429 354347778 928897956 696177728 818917331 425722203 283189992 307628693 355091178 792953011 368231082 780152296 919188580 445943473 36794672 52030010 961838345 57680370 748160627 661838161 131577335 694754872 917285973 155719806 711777975 236018165 122315693 777659760 830527160 268098108 480304686 158782221 567293093 400757391 806983117 696745777 136159095 7398023 505305115 675511414 508656652 31583961 879689322 820673710 562778153 674474946 700606083 713855403 151178321 813028089 386768781 976516580 36176548 813514920 955563938 250024527 468102321 242308638 919674848 110502149 157749609 247450341 307751691 882495898 662378743 154354857 414288604 185979760 670546998 871576959 773342580 716976044 378355583 486777786 762585593 22427204 441803242 563196583 738350820 109749576 152512409 877859159 394400317 251167495 135094862 692466192 988036985 155091269 228409731 925514451 813862091 915223795 449625508 790963561 308090343 153390488 403517723 406865430 802480127 329749074 797010003 837030607 62757891 531955923 753760503 892760084 199022187 925706767 666225193 327148973 279787329 910752100 845985605 164359898 953137182 66881948 111797571 458923550 239977523 453395440 381407668 470932883 111613172 41109835 217099098 176235878 652725104 129449618 230257422 37873428 986016927 962071562 37952897 899373886 412188453 296922379 559383591 627953194 383297879 629562775 242422289 540256952 964411074 853399059 212997443 681335015 924317595 208726881 422627063 473815587 106158372 185279736 499913662 70734496 346176503 39815485 726092229 880191963 71182347 847432367 37646332 730434515 893087935 408368085 254837501 728275665 997097491 70330739 114342023 774063668 5030853 285375230 553740766 736039711 258615648 547377451 950860040 875662738 824864378 793560615 101716478 666078155 441011035 10991664 179561161 104980392 221231526 270681682 671230593 559842357 116602354 673096152 642011314 694109745 247185358 725542952 968384643 563599520 528629162 11001795 401712633 737290832 554622252 55082997 288496809 660978050 602415551 982524607 269145858 881630489 818566627 110093079 975991433 84941460 662376970 551520595 987918145 236729727 373362251 404293771 736973302 567419438 429168608 164978806 570881457 654774295 103818110 657707603 694967825 589641481 940090421 720667487 795627781 938176364 830327396 325984285 650070783 739026690 315428169 88655966 518835384 435232949 887659181 858226844 473893968 533989724 403798533 980246809 697121174 57728317 151526309 766599868 263776370 952760016 991646961 322014132 776983034 818846757 494936928 360508730 902051987 217681649 554213672 865489373 350027908 273854928 86146160 877615509 819347327 707045516 377178823 334395335 175714368 475034722 432860572 774538824 912275358 573898830 189033435 76348587 564032411 791522761 62272111 414591550 127757514 288535323 901408315 708346663 871379621 763597139 205594868 199752992 426924217 890120260 976847986 501632154 445217514 969357893 563712854 665059258 513341704 690337936 779609408 744587086 734162554 590457319 200718736 804480304 271409158 655710974 989593139 422225063 596917650 206982895 188030238 29941575 24000694 77354249 781442278 123149155 628703789 770813821 487797174 994963999 788262057 718010127 795446559 267968963 772553735 70205267 490611891 103484302 964818579 228320968 279454048 70873347 405849011 285084170 401052210 915067239 383200673 606468982 923509079 760005353 690219432 17024767 793067511 498459533 647152765 800772335 147636604 132752126 974394803 411613500 611277290 82411211 990696211 49195567 541559642 119131085 288666532 826172625 128096948 808370338 778215547 354817039 501492906 801796451 5780219 878774820 396783056 622166578 98059814 757097634 654047654 176993928 512712376 250720678 680978913 54689253 312687869 502231329 92203347 743603860 893728090 837444231 634596635 717139685 573512779 939593372 54336358 297854480 489707550 444599790 993870717 153368814 913097439 869693258 604949971 662647240 898506314 162265082 55784058 953845319 68094776 170149636 354186374 798333479 636682209 767274339 355938755 662805176 712064792 774144320 359413423 503895393 559409175 148543682 53257530 45815241 648614779 228278982 758684753 506844322 51741109 783278715 592364837 433839098 498679848 330864527 784875575 92575753 210848739 521292687 253413940 372890422 393945210 615310961 515185111 984568095 270830658 732264228 603951139 161045392 518255067 701043968 319167943 829050389 705838196 23245475 224705715 596338854 920582434 537158114 882847569 272038241 729028775 603285944 133036832 354584965 983660385 311534412 835662180 654281777 310437828 827939758 843741277 371757517 995446552 963747134 462661164 330259114 344320623 976056555 6867640 830546605 125373639 762142902 747026848 444307444 617643595 26218572 570431294 512820114 448339636 85102349 571409498 518304108 456849970 472800449 503855897 784401321 247804941 651935732 940363123 560785483 608512042 498915652 464244930 991919907 319182741 758110716 637621518 725247664 657551147 686157040 10451008 821845274 538681331 542213365 333185929 44560167 141146525 994168090 618183465 171897978 307709310 776363903 110103478 758092626 92053503 777307321 701744491 225766847 992650762 910764646 802009821 337343382 464222014 812994896 988863195 245562947 889401017 842026212 924854943 602898439 102289381 892769025 202988281 60712672 452344988 615764218 343266562 109309569 450745132 190419206 212208925 361808633 564717194 79774153 129700570 231707539 606798058 162259187 924072454 342616317 227521820 83169741 957422489 272669673 835831792 74539751 250653546 310587281 444782063 580688968 824406663 563428333 143358972 650485605 383436669 624464531 793775004 598713019 681849742 143822773 355057136 980511068 28331648 462595340 945321851 195281560 50054276 262467104 24494047 830594127 127502165 533221454 464007523 348103286 974706258 188442516 26627793 154604853 40044838 15098809 49340322 940019365 29231355 870290838 649156800 406750450 60432631 373115792 280851505 318646747 127947661 842362822 229595693 653350082 514922289 376223238 501796659 357701731 979780114 250974552 622382434 647101118 231065139 208947419 449960554 991370531 185817648 668336078 678984215 552717668 70703998 799166090 46506073 810843672 398405178 712930682 855610752 563997277 834222378 102516926 572136443 247798348 921735626 3894863 247931413 6153828 344927764 611286625 922447904 131984755 800097890 510894242 698347190 467709870 304059947 590202812 83400687 247610204 474634102 213920241 706238748 664860061 834381320 756932830 124979988 412139090 525273004 637526162 563191558 86282996 483781220 786773993 198388319 95377540 68846167 443569241 547461351 605029074 918467036 928401591 499075993 159433300 350371367 145693429 33807363 274296076 715749215 697048861 308726655 31154877 30450307 533748227 301175440 782678949 94193805 470378692 246310759 655046533 966026324 968401380 980690728 825920106 717646433 206442451 38435389 266763044 559400315 39581906 250784579 829976599 497263537 580838584 374415132 375495684 601299468 211604791 713650030 440307961 362584649 82827306 249075563 103988162 696115565 46400990 570209718 19078537 778387595 642958143 465762645 286928565 111991227 999435789 848469552 135417406 827581982 283081809 950809807 375610736 242688938 590180819 879514821 746575320 44470964 853267763 42781502 718370191 788978050 231846971 197300478 96359655 955756985 238638749 453201862 567594908 293061255 43029615 654208623 596085878 787411936 309870758 958190372 522730435 88768725 788224070 508441728 444138391 795712344 592442775 321356158 881553105 163607497 279688259 132165173 227034783 354433474 872463089 57023727 539832702 838886848 62723472 277073326 143615400 664565279 960688315 601822868 48252135 687657136 4620442 672412480 38013800 890183431 269540731 47807731 579422809 411800496 551077892 10675920 192573971 810432051 65167743 866194730 522934302 677353424 328458459 185374442 182263728 227158705 694206721 732701073 993897619 169608052 909982512 472152880 12922732 63501278 349274182 440615413 966799199 626731042 169457741 174565283 63211922 938701056 569696422 740470325 88335235 41634428 199425388 44247665 297868514 483380543 177008752 34723101 967592870 497094034 95856034 359956326 297585449 410218188 128923393 526575041 463885986 482745691 382529081 446997798 454718304 366775292 100632277 385305250 593408625 549719030 513050609 431274745 948869990 158942487 467577442 240752459 894738531 10696957 691974028 106770762 323310948 586009945 768557990 301122396 206889925 268767167 832945148 266671926 107412734 143924002 108387170 440043946 724317770 988654660 718114456 168186437 407675847 361434687 159166407 307189351 345963791 197707859 146737204 339340318 544970571 232746157 855966292 634335807 299044049 479261152 511723990 996067047 985469062 232795336 817937479 570565135 261620068 165824602 366642416 910699953 569143859 833275201 291423026 76596905 455939561 601108594 505369881 866809664 278101921 9302119 311062902 724686926 72658336 906585743 576052371 366337456 312957171 237030257 733413338 307527327 515041085 184498321 928008700 976859303 580334918 554423649 814992817 581894015 237539036 96190126 47494148 573110429 899748231 894486827 616625387 34546673 814699006 920307126 125645283 110016185 230074974 894662011 782304323 419417393 761580839 407850656 39663723 60959935 787325283 145809806 803528320 938403354 697951176 538083364 55925558 147019600 220156590 701860003 974678254 342323580 186960079 931156034 821509244 37570727 683920990 456628884 992895696 232775146 879211733 436362745 181451553 639984896 179556066 198774491 200194234 276414329 81544893 944801454 848128639 326057633 737009358 166042373 551882728 230465311 347680378 146045286 646695872 560899565 665128359 108426133 153286636 795415205 397943593 90861284 584083208 554482942 422718595 889866489 539036761 87320139 359186322 917047965 420480849 38700860 525178619 946616275 966432872 83054049 718653066 791501532 557854714 537782061 490601339 213151322 56424850 411300847 845202965 752311987 144723146 976204255 21445087 813098099 983227478 16408285 304561553 970264831 483217727 246481386 383044154 443305137 995578264 926480039 762717779 991819706 651813195 68977085 364027513 820940428 259842564 626285485 11169268 8896776 956536274 202579160 428585291 889992892 277502055 229318768 393422667 863130045 119508968 190405327 274777663 179158361 34208121 200479907 318328289 157262243 642919779 390043048 609748214 281519306 779869955 827806331 612010588 202737269 268741379 539537408 745184917 882333150 86211987 316950337 476262035 837123244 638497150 671366833 295910052 829187960 351558387 68944376 723019753 208395321 434284175 170983841 220148726 827950539 483069857 407053394 849724178 878988660 953343752 873114839 385084116 591203114 269240238 156209530 532216987 781747366 698603733 75854417 326275349 91939074 348703445 617819770 716874807 226673721 373481599 172745910 651927097 124885593 801411792 729580303 195488716 159911897 496213735 45560350 186780532 690604207 418548805 539532770 226904914 591289670 664318881 577020235 244703194 1072882 33901486 664719736 214858921 114450974 617017675 442083966 231482545 255656574 60507385 349032557 358173200 305077354 594001016 953880029 521914065 353358548 112084854 289921498 611527829 223943382 184056499 35348022 776322833 265163163 886974786 253143724 947478434 342624231 129094395 219110412 18056493 396187959 134587474 426976404 384763028 405084299 278284134 776876011 300497723 106373089 629384783 222594576 868281814 370633418 88807696 617386806 701202439 640459816 141727707 551420848 795918806 833691096 290263433 516988449 825289807 158174521 718597201 61011418 510025442 454980473 722923079 864319458 147062300 137574455 762979686 434159670 879361480 71198477 998459384 942916150 437096557 720305464 636424468 276515983 399084365 200970286 857753764 121681839 23719122 705558204 234413134 920193338 821016421 237658340 258099806 319673172 212469912 15345755 222754138 196848582 321343280 849378687 174473294 932744142 504597693 473033193 702733339 587130110 353482347 995115586 402969313 113037915 461969413 549799398 752615704 876552017 128370595 660187113 26673894 967136975 984108359 98007550 406096798 333431986 612302930 622927143 996023035 908147173 289952448 387766993 314962446 459073622 237454458 429877496 713439184 323707090 632089080 554779857 77215484 108224316 809810659 489627836 564540269 696521861 421595546 682518691 926053520 415554761 770908248 589399544 728568039 189589208 457296269 421956513 277661345 122380282 208619969 453958886 399111467 930229672 66647290 113900047 808454183 764756686 644409968 655915319 688036957 427930775 643065954 462477654 587579418 347207779 124826501 33102065 344220465 247633588 401712049 57762838 784129310 141682087 97288919 17240561 916749313 416789246 15129652 122943869 260460995 450511279 690731681 377432593 797516743 135437129 170478993 67304641 809890558 554960662 208390790 73375263 259432194 613919783 861751849 462169454 215454567 58077013 720487526 76604315 431591759 615667564 420986189 62995416 295592970 593854399 265325515 921506940 939016949 805664221 143715702 894317361 245680931 436281155 534631904 293307530 649417848 268221217 857545527 592932616 932280211 790521445 757944392 692220786 983081480 578527653 406730740 425219947 597534082 791081806 78316541 932606095 862171024 547082161 523027545 356264177 156239686 310223734 152210994 941611365 417976342 383671138 959778958 724307677 48746630 605048951 567563024 69799360 527821956 137509976 743612011 558331683 592646089 188913267 481033388 449691164 162674780 579739675 181926964 934083920 532567794 314070986 109056904 43361960 965615866 951863718 765756983 137031373 213509052 359224127 68772404 144125165 529173302 131282154 685450747 744531926 960119377 464607802 812576056 776689023 183896036 765483035 54279509 481734643 33871429 235785623 18619987 289168222 954642769 301264634 233966048 598508257 215877358 805985837 543738113 367004769 649641949 211453187 791610236 458605526 290997835 538101698 325721862 912325050 437310814 190248647 248781590 216110159 320820190 561604654 763357210 402567297 500325863 17947798 290095435 245129209 459922873 134750460 856224133 164701179 385638521 157143687 742161463 693184276 563079252 887977177 630213135 345844694 510473379 354651232 985832801 298916792 769103103 459517946 809504827 63485216 730718648 421307932 562825535 366535480 158091190 597188365 47101938 254736675 5682391 319490059 826033024 736525465 732073972 186826327 82770182 40460877 602155210 72465436 348123765 816734430 673864773 527141624 793970712 504410509 663649175 185850994 320237062 370110567 191893603 407490737 668521598 466879335 27325229 918193602 242629628 49674021 770463904 146467431 966883766 574295846 575868476 506481064 727285716 683174610 526987443 570446865 753276572 526942082 238114485 571907353 693099466 423869670 640908666 828048788 679542544 982951177 951113831 325574222 579924663 951467729 176787930 479520969 797872261 683170905 150478072 761890647 462803633 96309523 676959192 78037460 991382190 109745021 747772821 553279572 260424429 540558232 979703980 256836053 357738588 636935750 909360738 869710819 850515941 18224583 204480793 854325321 793300142 562100676 626970435 982071848 710534993 974314694 686406362 364351790 276714761 112723426 198330755 529738340 71849787 889652330 636198777 682917967 144569476 754554271 245191184 475612598 831360469 300766535 377830495 888392562 643158303 650523714 790949590 744874332 171021300 453842822 95728620 61830420 246722509 510838014 166240159 782837548 798923270 421722372 682438659 639944907 541366920 693529055 213117752 927204717 459352302 850858863 870485479 790734365 888694318 407303423 398922918 949855223 631844992 173163322 346833576 868712110 465997272 571991378 63467822 482329766 37824707 208247057 402030284 588281231 589231339 662676789 352126805 903133706 805888496 5803429 728635900 281154466 616235847 629512435 427776402 773999703 612476828 752016974 741064162 181340825 156702769 593097648 426265811 353634363 737931288 686059104 582002760 921799526 374018112 287271564 637790595 687782615 586060922 859935987 660869034 984621014 674718018 234453088 237552405 223504827 344718582 571114556 975669381 254823133 578195776 713163705 176615342 768793751 100998937 261463863 961469968 57816673 285242911 157770491 181463740 778998371 907880061 618628491 612258831 285123212 582261602 774869355 502083882 877599933 520238142 275520922 229650008 752732749 286913695 752345311 535174913 905321784 746939944 884251762 954018821 828221441 279485119 897055777 175475000 883221595 663991937 314795210 450853370 698447142 231051334 428464083 231335554 971780513 626252714 166122098 837480762 697858367 311289243 305890044 270339725 100668624 588355096 235114 473656313 382843469 401447017 975526040 227248894 669724684 273931627 650769821 670679790 677210409 690162733 75269338 980066267 633489646 537745416 372705945 736970695 840716900 388082895 849529043 1700937 35439491 398994229 572675862 310761219 725859815 714788732 401301929 292105595 642033950 40653659 447134010 339910187 961212546 463790790 101060638 751338619 355250489 274192176 544500096 525297491 584617915 167813539 321686211 758248543 217651927 466985790 313011839 266506655 664081337 252134666 154060483 273642334 64770244 420835944 66790257 772785921 446784263 37285418 133806403 306689940 881287412 779030884 650067580 729639757 392735210 938955484 572403614 197449542 542159444 105718127 948348294 654281443 585641933 644067816 612583654 593801590 785032101 243567112 206923117 413065905 239667640 283616686 69509147 821757995 21574857 362330296 798342 238830911 542547831 541164235 571129723 719932818 340167798 507326370 517484373 171527351 461833833 740313788 12299463 550738900 212756459 386215153 651624359 820771148 545965870 169309010 578511753 714057435 858022672 857849581 497849977 279148052 536413988 69651257 34981080 329308846 629643731 215956534 804956515 649122181 801744430 161035272 146374938 27113390 893556490 246667738 793694633 462857815 770997901 739371705 446295745 141429382 713846132 918474381 457818261 810145306 91627778 589020475 559098637 714051983 824053818 843984636 594115932 756086614 343255422 488577048 58817839 692605743 265892467 28643885 999111341 911498631 33939437 610134920 556218510 495263388 382521081 967674467 687838582 632644756 471848812 523626252 658073452 766894713 608023383 281152547 129314578 118262037 613895574 49264083 570021860 939961771 153983989 984190245 237417968 322300129 828114380 99395385 663070353 799191409 964138089 901747963 88472673 957643051 911367260 108662712 55939592 427950818 304300417 615477984 321827430 851671844 361482016 420949580 969714525 593625668 431688141 471561795 50944124 434734881 822171226 889325159 540827475 422206335 87582143 26663854 166019129 658449682 15726231 768744242 686563842 255254688 675525677 399851438 8429842 686419419 272025883 825269096 626123147 136903501 440645206 484458386 410770237 546499787 466413496 47449341 526962530 267504939 894835998 50709759 342813313 396647182 604082143 830178272 395244276 719124020 327621330 635993490 706755158 730421686 214019126 935520600 729814840 881300423 649063148 519681090 991921797 859019761 204112418 8776743 812159096 718019035 379811845 536478684 74574832 179029400 852234452 107422029 920578819 415662922 789107745 316288784 430551909 340760175 776851388 842480992 265313837 184344155 688606131 707003817 684253984 857236898 636852465 862165303 116589542 789418583 18677565 907396923 207230005 521366455 227277893 20231340 602860869 614156249 829923966 574558529 424260173 739335988 854947654 365425777 407333037 370271334 913598910 368739752 907816667 849069958 370249921 62235174 476705328 877398383 213654276 171666617 168173481 732387021 469662043 978039873 448637231 573981723 65375018 588468148 426857382 129435841 218072631 870393674 90681776 538602130 430062365 997558708 666308162 26678669 991341889 524146858 711768035 332819815 882183018 875317896 783529690 300006842 901814726 767860367 702687195 910810632 517657161 228629043 90175946 431330162 186294544 449091907 612430604 31503297 618635012 274108582 380407492 781611048 651493286 577633721 5470511 374119393 85114068 934030584 935028981 160566109 196591317 575894943 583805811 94840666 581972940 483607138 329584891 384406931 761531953 224381084 226750048 142491279 422105739 279388801 690144062 69371676 730365780 966207201 897255451 180377835 136444341 2661960 20214004 247839814 244328790 542269870 603502713 990771585 154826270 771703345 320569404 488773235 645185373 313408434 937012856 594946890 706590043 454824203 852682179 754486605 380790003 690304166 863923518 535825946 149587220 497372520 528987431 971420594 837373485 188821159 915890126 238919816 249053087 645840853 652806398 548605431 789532922 486836232 604225365 910650827 299069829 185039784 20595615 816171027 565624668 76254217 723234021 76523200 331018876 863710517 160087694 205300938 899062071 415849406 657287850 466210956 651819925 949565801 776988431 713803495 951594137 422569496 151206679 476189500 503914492 823195222 695519227 77019437 868217840 168763259 912504548 360996796 36619781 775254527 458628099 698375922 294864195 874585787 359771900 757217660 986958510 965801152 869072761 50724109 53445738 690937047 444301465 78540987 110562105 684302257 396356531 252942761 583579102 310225693 737160816 114563341 45497837 415902299 910310165 192618538 896325185 677387132 299068951 314332814 485322013 804291761 120986175 139540515 909211434 935058712 448872898 674641182 918667355 482743448 366022130 345404022 942634655 22738637 259472527 438318880 371565203 683515628 482254556 68407545 260227947 518854017 168107996 813772925 47712671 414934054 212175470 843923353 588976888 683207311 371487169 71502667 898757284 521949058 825701346 767103471 955253902 743644034 209015179 427360748 782052409 830692781 312555445 18232262 203655848 154661810 133999187 680754200 88501243 817510218 623033267 303659414 758990359 366831004 49771872 665855645 864488402 368537061 775861642 408905551 930763331 618737135 788717610 155748479 724838360 500833239 298453962 402918885 874064078 237531745 173132464 90056326 943356997 350195079 37953603 449812325 361949738 216372429 731405803 926008500 272281134 900040266 810461911 97679581 368985622 416886471 96705565 336646646 431765194 743531140 585015671 895164533 853318920 291887283 624577457 967700687 433959741 387982162 339183863 166666436 435868925 64203875 602384560 858326948 286976386 685072569 281494275 451289972 117773727 267514281 129746400 523342420 896383516 274197679 906520830 351344160 149253716 428813949 982199611 424147219 99933643 302307938 366260279 397712990 703223924 221748605 440665729 699536721 233965005 854285744 84824781 479196324 304659268 228381393 787631043 424343166 203097985 832156154 126439087 230108788 959064781 768264505 237881434 622867190 570710189 917980085 598976305 794770929 245363429 275188187 618289515 718077613 238863816 28428121 732783938 119420487 817971594 688586496 296842879 515593959 742674001 180478049 453235205 42632046 437819592 908705777 887511950 622081487 348542241 469642947 744846917 908485157 79206918 935970695 5221384 990336856 596132724 63226107 938084582 657874345 733911375 356000997 584679195 845794865 259780568 789932215 188014218 735225718 198304805 124386693 133497783 917079779 429105751 775277390 596861716 89659057 145175797 883432307 522183531 327382080 70300936 394519153 206606013 370984747 72957067 138981350 70096170 738486926 427207698 39893765 728731085 926557006 972107994 753280725 110778510 13407117 913606950 338624263 292958239 136183495 370455694 886543261 247967732 696340056 675542156 388072274 64108760 182402975 597699259 697405656 741356516 600310453 111625122 560539646 127669293 476602177 509754562 587219766 767055548 524722630 201448308 568576084 352586629 971423405 42232083 277457693 14428495 15674233 686868960 795553394 466293238 891074352 427080146 453690204 247631568 423727097 434285814 515792360 3985258 801762970 976266308 526612189 487744313 993282455 542105062 89910840 934903789 541614697 342444064 908410294 502482590 414506189 288988595 995341667 215735133 606154979 929058180 688079318 195327143 225738257 4397913 98530550 886189347 266071219 444272971 833486953 294245160 86406745 690276275 23372917 515939178 405080409 624463036 975780607 419271725 327645310 77299355 536519062 530624519 301046829 923759031 665115066 853427925 596760897 859983313 445282202 122884914 343144592 417777911 420251276 303626133 937934318 916554019 37529126 809946998 420833991 101339124 876687022 206485963 916430804 460932039 753139143 202358926 751776056 941405066 779020054 918676411 847464146 1184182 715958172 583872810 414176713 847403199 268947312 826154638 212029760 966346191 815126603 91833526 403275596 170814434 569020940 947954484 226217204 737754854 794303962 325245991 317830071 60973413 679198861 557554353 98578366 235053002 740339247 472170769 497376628 554687871 277529702 314937494 385315253 927599384 148945898 132268631 736208158 147348672 706950047 345215971 605783818 115508294 894825814 82224376 423485854 156776383 969589009 120187835 513596865 919119700 87205880 244791165 412355628 592032443 829157335 811561851 789703909 823990786 244195187 491084531 905298251 91489214 877833526 165368979 641993039 771909530 720568240 775210358 900636267 788730621 552088790 7017625 873687668 816787104 417843955 569702534 257446908 747847343 139241273 728916157 150781942 501090569 54033824 563795189 302819728 42336183 665548154 613812783 691335330 264145146 40452584 408452284 646967348 904313908 952605340 566298147 434849015 503481349 594795979 894928841 64186117 414295089 803979306 109075201 207920280 712666305 698446782 290618739 479271007 140066483 474398756 206220083 662461961 939712088 668112209 676965417 687670172 187286166 104315143 730375756 335018048 88032861 904266187 335841733 210265514 297291819 685758642 411468076 21803197 977440381 769510565 126715287 402087941 666174044 109701249 997968518 124847426 746623213 977897405 558134647 547115211 102601352 507205077 285236659 619962464 246117278 412566078 241899787 343420607 44337285 799737539 807647820 198101925 212460033 378613034 660248753 89883366 411464161 176878812 893494997 365358113 886635700 371427791 53205104 673015882 164830737 970988747 772822266 994438818 524732279 288546556 958302624 839139568 328654602 100993738 700459131 740656944 408640818 823705075 197699800 523198334 909263619 352983553 813559382 307274886 240659949 298465838 280272577 962670831 763475114 754663094 373635946 580262679 740253798 278719210 962868836 318602041 61028686 128188890 578157558 327545937 720856124 690418297 324607497 125570690 30499657 174853506 873421390 360557195 724630984 846413205 841538409 114723701 258282715 520354669 964070750 447692168 981274569 181777625 274558553 890481477 260365733 190645278 484340450 584411669 892944715 939484282 242118212 57945133 962642382 321756132 431709694 528949894 896001847 774774945 478961134 703337620 177155182 308231580 222179274 198943348 199927187 217337732 466829027 690602256 995853076 849359404 647128282 934806813 213075507 396825385 657491212 440321712 874939665 924280585 711595847 116714908 65430601 633193285 399332185 157633825 98868641 449146540 19365172 450725578 151795388 563462717 688245863 739266856 827976920 230422584 673517747 765172461 120155226 138694600 623503409 283453154 623267089 214336318 233415518 743951949 474183340 202779740 87760866 543275798 230469977 897288650 387996576 284002706 133727255 195025862 866279464 487191479 344859190 741462265 658551200 532456314 923458729 588530221 454636166 342083816 15465901 570080787 546176176 733836375 609361851 853642749 832421915 500459550 521596537 504574859 56183397 914358651 505918173 246223484 88916372 536200537 98926031 576564534 341880897 96066777 578965885 620044013 46364528 851993333 754269173 131784995 494315058 275613792 17782598 512185623 931199950 953945563 923365813 49369380 467851595 635164021 856538804 416426780 461832671 588241180 537561706 676119191 569331248 967967298 463924941 428111021 645461463 448789885 687758317 482728298 215347960 843646118 151072573 158906456 493911216 752373092 111700488 346203005 920405627 738039430 484586415 692929414 224578833 127744000 559928117 935215404 655513849 322410091 158702158 631963697 387943174 216689825 123056476 791845157 169812603 119903269 411350693 587522549 610790754 801244088 345053372 896475193 943680430 897741944 597347932 965294438 418726349 562297606 609823028 602764047 165665622 338006874 384283803 538815609 64185404 769374194 298599121 170050035 788246103 750592852 198530989 997878290 178347526 69526172 826216061 561162778 880627843 70215075 664959347 485137231 1504654 62179912 119190969 690318758 493694966 329682819 92907979 600447469 580988372 249559164 733780753 456738080 860310666 863354168 865454219 457711827 640381994 626132878 260489120 755692871 780826515 328256460 963466076 778897714 647987872 210482226 518501283 699117289 861867065 338503028 482046709 426739452 424955031 632763525 45950576 851557964 777449028 45188621 306549419 546911343 77821340 622228195 95502112 138885407 313393388 935766664 9843277 76093291 409991457 536732662 678990244 202146046 95824710 963138352 358565721 246239431 220359332 246406675 498243497 908825505 876178179 854338193 743476232 303526625 193945801 471346548 924736886 358749306 982024332 928338183 130819629 282873754 794310398 940463666 297337884 858403803 930992653 704210918 297411429 330109179 779680159 555327460 186986140 47108260 502313250 532847904 980344287 781968671 771471355 760824628 103596117 999832965 83466784 939592230 682005862 652983883 607383635 95006614 425140898 821196437 140430971 356904774 880488172 77660412 623703174 883614815 140360683 269424172 377481604 415181740 130714825 707967648 273176766 162442781 160535869 433762128 952749815 704797594 900326364 591760975 562036019 181009272 321480442 734415605 811895113 6278761 454094252 408050712 885780732 191307558 702338414 311665548 75081693 193138049 406633417 43652079 44434101 985475018 57442857 873471487 661195557 661105735 470554400 692148053 956260536 297211457 960220299 71950979 833398895 874566214 137421030 650658061 174870479 515622095 599596901 147258544 839853106 171581120 874030423 957786763 508462755 700133223 404004691 517017728 809443198 517043905 151608119 857630940 361388019 770222704 41422140 103455872 960543559 855166438 602535130 597206226 393122077 872164285 898790393 992212919 12605470 700806646 859312043 518230696 326085496 670724798 179627202 623351656 62195871 134412840 458591913 27902553 911804559 833780551 28266995 632652587 888488454 112602887 118266284 928464058 435878567 557193744 969432734 557044629 48019666 5314958 691354378 791858982 128163613 864993865 924403131 25130251 145268525 375874327 33116081 375734912 441484597 239834865 959048818 366737865 755326315 755196968 360543972 744431058 696809826 538484715 278907197 227258307 540976006 116705278 611049584 409028068 643818941 291030895 130916291 181763659 196560595 574331726 738024285 461765748 721672524 532443949 642671980 936579593 611254129 579201752 782038644 234193224 184744343 247863887 495991643 66886624 271518998 211384896 548228578 649223822 874714065 944616677 1801125 562060334 548844542 905977645 730541860 912634086 683614901 167123658 817306927 158003548 443494415 602137029 925988567 246744595 235766241 335574947 487262447 553723881 972077924 903121373 915097971 622370808 52637741 91366306 222289633 100884034 914948441 117157537 238627019 806315605 468019253 221661564 280157196 200902681 239707857 699455960 608807767 914683316 281426585 144846557 953300115 788657791 978598075 257384927 101936294 138965241 457899752 747313426 995710680 755000457 800465654 353493874 280891201 62279310 77173688 626932857 816034006 273737958 370126286 798137082 919512160 437020 229327645 61248026 83689677 375913010 331233910 930656379 143052944 416484578 420274171 509739789 531470732 205844366 824211374 141071664 300493506 577786615 289537275 492165902 713532860 644156345 200659779 751313782 868044710 44122786 150436029 944672524 682676673 370062252 632165264 443442280 801041908 116039692 172379731 155697603 64693622 170642671 686254149 33101998 794490277 601316324 273659517 644313770 683341678 412582437 50453737 890165279 541588590 230954679 671867360 872839650 371873043 989482583 367130406 644447674 750124275 58200425 833689742 139745259 175838735 956387491 683008233 780647162 424258096 531490469 712214239 387723358 877189340 92697981 881645348 873049747 344629830 24328412 369640794 82333383 962323769 315710538 648746914 94762294 566971274 439183918 814053160 469833487 733442871 606232863 500882195 971720486 292575989 504915941 907727054 370279993 130627670 400991110 524605280 432892635 699249299 486717072 463282976 101051845 133628144 82186117 275779064 122554104 357776040 806708428 558829483 249779815 218847119 914176164 91400223 531062320 857388715 562881154 636305518 758619232 385610433 953769027 162631167 845018254 356047091 282913189 104340005 443641678 393366099 73506036 426138988 314533895 930378601 652818693 13627262 503473420 909364924 802648933 134766790 17169974 878696139 703130574 835006661 943777355 1905563 815942273 562367503 249649093 855702093 196681033 671003734 731528017 145673735 653241866 89746577 795976257 331006282 374377727 877191927 473707674 454938709 498985614 138793966 121449769 739178097 929705867 86682517 552841484 652197158 163915558 720979101 441521269 291327475 796541829 861751361 711985093 533536219 434039655 960074840 574474491 5701195 663255567 345668161 114744421 621015899 518065062 809263717 878762061 516824978 309049328 346656000 697437112 704293208 60897851 687654716 593379055 270616088 966663743 953158012 831776081 426607813 191715334 4215536 202552162 576550093 144770088 538645956 429927489 246393683 526841501 878084058 865616475 364093060 408882656 733062829 917711771 68082585 885618105 680669509 265511053 924404770 992621778 844018377 491796898 495235598 607603640 479616708 969576759 628942728 116759301 833064864 73669817 128981400 891619189 715065742 985889491 796364425 392608992 333216617 253897854 744649469 282370898 981851613 579616922 302597803 301246348 352127295 352264970 316708211 929163630 602071418 49717827 928213184 527472536 831535178 94825069 258429918 678965924 138730257 160307004 889824641 632443308 53962848 333343614 31900368 631932020 651190248 714439642 172187835 731892854 122473092 47398412 66758370 663802537 454377190 729878822 313519818 238685791 393512227 193909592 971809079 996972414 723662900 745906745 783054875 69902386 61551967 759888091 935413647 67195964 296095753 66105428 734600856 489786388 151661880 242392795 34542837 835819570 636536020 536288603 602461061 252571667 156368779 52461875 485516567 370332454 944496080 472056627 452347401 113692547 274867047 748787666 279833210 374898028 563588535 891979422 237395407 154573611 546011098 356552794 939596060 439328126 933721078 77681545 392494634 685515391 115309548 95013386 159009091 125602916 762262837 36985881 310014038 317123281 153054611 966446727 461271749 619526726 516688480 985375714 883115614 772327516 530781710 532709570 902933722 414460019 246147355 737753618 238039752 264100504 198497519 213888130 124046845 290441692 473426391 132830852 399612620 760081934 223223045 458785405 797051127 432681471 459576346 658770252 136213479 326665107 822415986 110922985 324145592 611559082 947362557 722346028 973000926 966157428 962691709 540177143 953676814 126899675 418284477 567085584 396739815 689946269 527091864 286919823 518678231 481687962 404380778 132112513 762666697 759089905 551591025 753078961 646547222 788193568 39703846 169162849 211388375 17308514 521614009 21281596 261376618 258278184 846666430 635510101 74796890 945478833 516663014 400433323 428520317 608686224 266814683 206746126 683225494 106410551 849358676 588727128 424252441 410077017 449741996 998924685 726971954 700812122 374262737 88027283 806319050 622120653 170405992 779896049 319462992 270123802 584434087 674409889 730464646 188388186 523000027 125828266 684135667 617160046 191868607 215964509 286658245 888238182 485615784 551770241 843632732 550767139 970024891 289967763 699647613 914548252 376338080 227848526 719311015 650368101 809032496 484765975 824814623 630057330 628313618 248509806 105595036 17496065 399168473 978660047 104082278 551666464 177893773 494994588 821685906 910368189 974182904 369123825 968258558 245181563 701137232 229962411 681997461 782150809 94548830 567890879 770783105 856774135 191526532 759771521 93958743 811885719 523349373 132657332 432976428 67454672 449382679 586436743 739175428 202009461 788817165 211623374 549730340 704332150 15994799 47690513 677232424 445113940 846217494 500509916 264430034 569576111 178833871 245888736 766862121 465633313 582943182 296473859 355195144 55474487 470515935 389259651 100124296 764941091 291751852 948338621 170970954 450582014 842100027 41877408 362299640 362467005 718925169 35583632 196145401 968054891 49552345 144339432 504185688 40126596 150325458 34922157 799617435 300024787 756980983 658628722 57639451 918892438 961438388 224557249 431590477 366735974 596857233 224058790 955955789 411913656 256530814 252050278 827197824 656485137 15291524 418966632 622491267 479889794 121216116 768129037 570255765 148409825 39375694 344478995 482173005 474200088 107750063 392917190 437168009 373742308 605149100 432846307 803236783 749582411 282685532 969013562 147565987 654091936 926482098 868406100 740736467 524749947 11712924 959557019 340453563 540670249 124086646 39228760 993751287 348124895 343155054 945867452 56113162 700239110 251009332 420306440 578464431 738193174 676385652 159212100 506526170 174491919 463904659 584709682 753929400 234650883 614224355 70493223 883624429 475311107 300798456 787609438 253955073 700495066 354540102 73637406 540421482 25137109 765075884 304417478 994591923 958585690 355340773 570027943 485222623 752228957 560532164 419680422 728176796 305115357 956712958 114264687 481956872 594774767 345866166 466003737 438097780 895046474 732450101 456550209 583277840 3477448 672922856 737801834 487602813 982600023 860944498 325885775 537868667 25312428 887846300 716030968 75555558 110090329 839540409 837133283 19988539 756543825 46182164 873210279 276773405 875175178 855073478 561893127 733779088 522530410 65985318 608228284 722169920 855083220 770702897 597411723 116759390 462874892 86765630 143273496 319111550 984450345 308214761 264841032 571419251 567575056 752548720 282100776 877648841 904155814 240255937 171148956 122017259 346285932 473280723 687544844 569388325 904103885 178668375 854388916 507596448 598857860 57343537 375121010 906777527 464475178 883100834 459456859 15894673 77583295 325099643 547743507 219322872 760631385 219744948 257895938 51752202 783937110 998767185 871065972 840785032 191747583 591415840 685376009 293673303 37993884 683277505 640144839 814102673 781894392 769476302 913022932 803632826 714288010 176579020 373599883 203081470 827791323 392219389 247275578 572650709 736276042 804471467 763923270 935473534 529777580 106054208 982924547 922719546 105095173 364035109 808358424 70407703 363876956 218416840 299649131 504651546 998692719 931367779 816672263 337643521 135576006 102878457 61064771 329994146 328998794 444852286 99391839 335458360 246069422 735964715 621199171 103006774 816927035 322401414 597574951 437756902 242618001 802668730 748263041 678967540 234021405 651505636 343349768 200607565 744734429 583950233 80394181 129447266 795387142 168246546 701229497 341705327 559655255 22917625 347580789 855953215 742337204 62345175 668786233 839750411 945198261 414122889 148304850 865463704 395186250 170546001 739481945 389293983 603209409 961422658 334094903 924796311 598946463 314951453 682880487 677518197 395374908 220430925 669724084 320995789 593791313 217787881 813132470 836684853 326587638 382688272 318070256 699540009 539713365 656508880 689384185 252428465 949913360 315975530 51424134 626475748 876071966 996275529 603816870 415779194 942842752 159767617 541805601 547094015 747923238 57578954 718860188 811757541 586383384 44265373 533958073 236498376 932899448 339164636 630038876 165587910 742447401 991690601 976861597 739408380 379798414 621383106 722902471 115975862 426802363 765358012 165776206 988526620 780878714 964509572 58353102 791650931 986785933 416562530 184001428 173030597 320931431 432786793 846274620 379275741 291275607 629749761 619938043 499279992 311131483 631504650 372395863 595259756 320682316 115799502 872243768 750336681 490470158 644192239 116899977 909813851 420980645 714708185 527916220 998120976 78378341 84784201 925060629 935703611 209290499 866756929 439260050 114668948 820615986 230100499 99553924 90435837 655044574 849968257 29374922 732300309 681034838 211451477 534877071 917232139 793843793 544583150 197628640 145759522 609413395 986041852 636977312 1596560 706346729 859807760 782995479 439309364 35119454 874018611 701960926 887711738 250293099 257064648 315058209 939119228 733581461 171094836 631703127 227220366 320371570 912903046 227451330 938962225 808145058 525513456 59434556 475045116 960216383 602957360 958514730 574239098 942156739 250650740 299358344 918098132 467630947 364276553 797072931 71067600 496752126 261954125 462985488 693530077 509176974 719663661 21127846 624995063 414709914 981171981 293453144 878358755 962332779 540162395 297912200 987570102 560383471 412715841 934060482 921336263 301056532 251820548 913235611 953505400 181079159 695835207 851583925 959923116 181137968 288771525 898559581 716105391 174597676 714143246 992826891 122342575 297411789 685103473 229841654 788113612 404398184 54711860 899394316 215569265 789770361 609804995 799711825 670824400 769910339 304060548 958231432 813497948 658993191 963284978 147268444 979125706 725474682 355313905 945079045 549556990 965000999 321073680 834759614 539648046 812558800 875279476 597534650 576949900 366926941 605528143 217180349 502831363 421310451 10017825 934243460 561025766 260024793 41572640 35560721 407264805 103497314 28415549 730359429 345056553 353435961 573869219 4101290 481348808 463951666 731663898 761384562 781885380 159702588 162774672 25063775 185481394 377074022 506693696 339321420 457643204 863172234 257821793 723891166 685135169 533387428 864912084 22215125 922984551 822866103 553521334 911816418 515636646 556585604 298891849 470486493 555096899 599206024 174036582 44413998 54918893 104145895 133132165 804252514 975610164 537682274 149090920 102823703 569397531 390302500 86897125 54672762 885977080 173505215 164692017 228165858 154643052 653105704 925155797 378715209 998030678 285767419 277773879 195501410 840815568 751486802 461010897 141122738 263765931 682874877 332614562 903536213 96245556 63838530 911298840 764118983 804994062 182098973 883185959 441994522 414608841 635624664 471822957 939739186 965020709 55981518 781676687 662828830 742423794 46233736 465238025 267398862 904313276 224177228 423389261 623927450 922305224 649018278 2529494 958354727 676012816 618446715 66458913 857729920 380846357 662678016 173947827 22226420 820639641 410646346 256942313 953962129 119310605 120936163 977448391 602467275 615013108 89093986 163280648 305221935 442215687 14600096 113338524 636015994 845519861 653229186 628499079 515050336 583404649 828182459 567275179 42399870 70176973 764042862 515331967 190094136 495253809 922656159 457183382 393238566 19130774 443619412 146291931 322397427 325561035 434963070 483369340 957074528 989139872 98117296 341758364 696443967 309402063 505434532 293752836 236538832 140838817 722365973 840858432 853612871 393616307 251165809 772004627 609669171 721255629 490461351 696915902 362226972 702243231 653432967 804336479 388068496 785982847 949275443 77221208 451115375 724197017 232693333 364404697 659735513 255395135 151296069 208893170 490810214 776297813 959892225 913840849 298834471 943403834 906024815 458357305 393029298 605645127 171412948 927009956 531230381 546148676 86627901 359947707 929578704 920195643 982953935 854293268 41347948 813645284 404360864 353905621 3898594 865169137 871353649 116689388 344906376 673825949 215580601 889601377 616966922 77506969 285862064 745793085 264084018 151036068 572751661 350886911 525940310 900842939 689258015 340453941 379365396 681844261 250180868 881606082 258227627 719824353 796840807 861419173 624338547 161920040 583135985 572638062 392287415 783711870 316790456 228348931 304747285 428977950 49932439 354067988 471174708 677752384 528780350 952624590 880415832 798970780 485623656 516527135 25720161 943845532 90240351 886579155 453892543 809318324 292302658 740047170 447037862 324668671 489480763 899048184 476154642 261742683 535040552 950313810 708125458 496081424 608736958 149164572 663950115 310976626 349272985 172442260 516121735 23515518 407211786 873719654 676713425 11360488 473440400 70739939 358454744 827878396 919518450 815607562 921364396 934525529 258440575 872490419 864028899 838217646 558647087 262339708 940604547 750554364 874095195 200359668 628120890 828305746 183611769 289920786 365585669 122635158 288637980 117350499 840248588 250925675 504791149 410361551 476488938 978536492 200155616 500931296 932951976 435972630 730852980 300971954 108374725 613844070 657957966 684759625 269009599 980396548 696161583 991690280 29373878 500150084 888187089 540379172 318421683 834108086 371756724 141140657 779882727 747281129 162682976 800259092 763101494 581916411 144526939 363824488 64095520 698845949 497072066 551650540 409894227 975159164 467615935 656373111 562181891 427871803 477108464 623939258 16466539 107617729 459664169 149767386 392946078 283162431 6133881 946391945 986608241 765932355 622390701 161829448 496494431 156751197 807285862 926834914 669555251 327646947 759421710 357005975 485763401 673715811 672841964 92746558 598624449 415156593 192923 876135402 406021782 397740740 652989689 449851902 563100815 201691720 110060992 128523088 478857028 95824268 945725551 976419291 376401223 476022187 654844946 896373498 772063214 265983124 435436289 470476372 748092816 349800271 383772699 836746817 72524030 129227974 139768109 909958967 680349886 963638914 185339721 42990402 869566860 107113402 506870324 541341023 981704971 466351625 424078178 357190717 24904347 138714510 134286787 847585287 315049885 686710595 857861857 230734346 145349705 667694258 908590042 440873013 671499615 689999669 790896830 156882683 881113110 477716563 707808460 507999077 353648764 195218213 311601747 4498341 910670363 425870855 409135282 683792556 895245547 132762763 433550465 46516348 446772464 773533520 596558656 641105647 566654449 170574617 66660894 747834515 772435162 479058516 343513809 540362137 421909053 55609893 884311221 876117231 266649640 210912699 582089441 45386590 349192727 194475286 840271127 821767082 396886856 651946426 95302518 961372260 447810212 952694220 801157251 143881542 255562012 461478145 324769611 300321882 738031557 135260571 335175932 93087526 93763615 565698493 51052784 64825797 517341430 437935882 903806476 99296481 545393937 81851232 887218181 32757322 18240394 833887035 983780914 717115723 239425288 335434531 301008068 976733188 615932631 580261646 349338307 360457957 294599276 541245599 808930775 829753331 256396160 763017872 85883982 193272107 579244383 506172755 100131017 299672591 94677452 483065905 893433752 988474034 710042247 560451384 131369401 950551635 479546413 418309759 715700166 984629971 220973526 508085889 109334649 201499350 114980781 490217829 149058402 901428905 964963767 706535079 383079624 540723806 873627240 254640307 359575035 454597266 54733856 887259654 948029009 646525853 639505481 175515731 978089090 706280346 97048230 369289374 996738561 89095872 783463421 853124911 690551417 913052757 255696733 371574289 803452958 197334572 66210215 524386568 347323465 836527880 391683582 142035010 905139342 935218497 696795100 139269543 205160959 119387407 23773519 209121641 81285038 802021105 320222830 274976573 32694531 358023149 310778012 827350085 225598977 377572316 617445270 12030420 165168133 486961917 166792745 726323110 72277624 930440517 201819134 872025119 926246617 241542395 882642554 146472819 935963435 862051266 220399103 640637954 281575032 859910188 426675868 795211796 954908685 727807235 417422941 810471344 567390674 387003826 70888451 301764138 433987699 737635877 997465595 546770207 324968988 195897313 857483903 844934554 584972658 638952613 982369926 596024161 941678702 326777515 18814205 755918935 41062330 507499163 444547296 173534829 860510290 854190821 906819107 375993618 294210549 732129607 686230720 237106386 134207321 193419314 978902231 908793628 5625629 864286918 62188210 549923586 982283580 813926627 353297711 408185455 279492050 510472021 303582165 587364351 251233692 806838457 524038580 303700383 17319143 733815170 921289301 76014130 670849870 98111767 397558925 657247205 483420730 885733647 700868121 235422994 750750684 777670064 881845997 118322557 728053254 797765193 333265061 516650686 695440343 848276991 940177730 68499446 461815317 817210738 212099855 959329077 282127571 786481706 410050120 445340410 575677443 243972321 678602829 650708919 255235531 788936543 687329524 205020473 980587500 427380643 468032271 184401208 396382226 994042961 376707739 831114700 211586518 573068857 249731379 476767599 847739695 243648435 972919161 57361165 101883471 342167086 209748917 825944042 440855826 621787 131311970 175331083 386147852 123291622 687266434 532053362 844896076 351506691 810488706 738097189 628467701 764830626 750438467 966541679 150786039 128830688 223388450 671247923 837816829 976455472 920576199 86551923 540020608 946242364 525134237 999141801 191415953 986342389 833191297 653066599 869087185 522578034 30714344 522276351 22947568 980542106 972556267 693573179 247283209 245873647 419454063 426100882 283600086 725370407 497105497 476315915 531391529 205749901 109195816 37335709 209894472 583636833 993157133 398771346 556750842 30114218 284866489 163718710 977195207 655464639 210023831 38963200 190380336 360061421 592518639 710185913 523244209 907033987 403714333 495126919 64189100 262973176 558532471 715331566 179544372 978919563 822405671 799566363 34024533 292775841 793853814 344177515 854486987 867610189 40469089 567854944 805283432 582264060 389494318 689086393 809172341 136817462 320847133 568423805 729752559 101359290 661970732 71932191 316283734 862807211 74513934 994381851 751585413 732050461 14900138 464058463 488677361 639807759 287836203 258982067 913357215 676824501 286562008 219670929 764255540 233112908 857377616 276770058 474687712 952490406 887400417 836239125 181646648 652178578 807611227 542925234 771003399 104033139 352447788 768746623 898951911 714539791 178749856 294119683 277366895 743737204 519842624 233966189 78329314 972118730 6946293 6641904 577829733 156582479 92740129 597661799 532244007 223803333 637860087 738665534 309169116 641584826 431489882 441144671 624733085 742042355 136348954 723686123 650834165 694708736 226582724 491173878 525958515 349206588 87181957 361659567 778676135 300072907 106231673 694204167 967751058 424452329 229140189 219720476 482572555 525511048 973895553 336892097 506277025 532683502 990705084 709096813 172828255 379992712 472002538 393901690 321264081 940073592 891744669 281713444 707272308 180164647 738821400 257568028 919665002 544378377 398602403 820778622 1334743 547228303 375492188 192835604 61327636 282685639 624515514 241359054 450967705 404097626 997994713 612791963 181005729 951229120 609140436 10450681 910809559 685302940 221839300 159664572 529263088 801212173 63585736 267790783 640462524 648922512 823208777 806233297 374234170 651928799 737199177 992104354 85847329 863786146 391558815 702357637 189311436 940869653 741777572 549732456 452188817 940409528 439520585 898691398 984407436 332436549 25219266 34717647 689776818 592102823 42449714 241445808 791050752 661638612 254228253 992877442 999661245 518737689 329728851 783706987 958684271 14462308 801645775 277748284 43328169 375544849 560360894 310085466 208766168 846079143 76437651 1162009 740036703 747456192 58639578 91249239 332785736 711554532 8877043 254924188 891931580 209201618 298602164 419840370 492900298 384350134 247982162 39477124 167836405 445162374 856286649 968346007 965058056 200565610 48810678 973612311 835528635 658642996 959092569 87026115 464692798 71534393 372670292 175040579 669918911 218389146 987015542 275492717 873519919 290516483 569131712 331395122 531750680 365726044 428722687 759085348 622426733 429755894 804232032 644472713 841505238 726352404 123838812 108163556 234519282 335577428 694513695 954349382 621962054 123922705 901388646 294543633 364864574 498930840 761343410 147619802 538462435 893727572 853565943 339954437 196070888 61743178 28853718 564915561 671309546 199128213 750373697 861664547 499569799 471799276 12340461 611628464 505827203 343054203 354368020 147739668 363170427 76953843 485893180 795751906 251111973 342706207 218478814 191048113 902231875 32449093 603092474 313990988 722109264 939575725 625196858 10075051 438300548 919705215 351138317 965636671 351624855 805292559 846182946 691055151 277747721 985860319 721041 157008949 33907385 445828772 448332664 10591664 431840696 227887829 611766205 944743399 538040217 615579384 95363325 826139769 499275433 483023377 32655595 5474944 172474328 847178978 910347900 781236609 804622098 3639292 370644649 411768626 163709095 348980374 529300934 244549097 185869370 146790753 450279906 688994263 811865443 905723751 688086739 762578289 97646235 89618973 812141227 373954112 393903564 476842734 840543790 62046071 233591857 420580098 68140300 23380868 411027363 78746233 651627405 150941614 507194711 594147773 405966313 34610690 830287196 961572840 130162725 848168778 994523561 630165243 560134608 273995905 234090475 678221165 892433459 951930716 776287911 791600229 427362757 588813643 836977701 502008681 722836967 409608169 252813987 122787964 502587844 449397945 873123296 42701018 865561505 277681994 150845226 59517628 446931057 634598509 676285038 68832807 336810729 617427362 333429581 28053266 427032764 151078811 240176968 739421135 898348968 762419215 602706748 802157978 138793502 939483632 189679113 914727630 283213396 811277627 203599477 778189028 252649071 592641325 449996165 957410581 855848148 203451556 71246846 123160784 511596730 780661163 742844125 939622446 469618803 510703794 162621901 519936205 376418846 755365482 313363807 910681417 215815374 686415694 698265171 601071831 412789812 725900781 962337635 334468844 511434182 114489009 927848979 545166893 22524109 468945598 753851628 473915830 811158749 713906466 92388875 602832298 256081434 312651158 914957844 121824479 7480635 408441279 179316899 794765873 951949216 838396693 564408284 992254891 955710493 996193439 832974620 926450048 924068288 797258601 492529099 31341465 512816980 421256789 982607839 142667494 708633 626412747 966423259 570845287 924435249 264308852 5279376 701932017 563539861 791846775 424767825 51126547 518058998 982007871 55817775 30917749 121745738 497659991 755230598 885795744 763974596 723560084 629563145 484906448 414408801 569965911 341114249 670009005 10531656 547639124 15801821 139338857 102163453 339362041 372937874 24779748 913725393 377587376 490488932 135894634 473746737 35038646 84784755 455950039 586493886 599922887 646479707 185391486 459907031 833041006 962227832 542535180 405275442 626980625 956552069 728384911 893938641 105382956 286992700 543272410 79828657 622880330 754164141 953841384 601125310 392112225 759502384 455769758 424228039 927054863 61502110 127457826 419684205 246230998 154179561 750985878 651594785 588691418 786462460 985241239 258750168 917019627 255242223 278677775 676078315 327518223 777541265 855120878 575864352 877457770 773249808 572241058 907553434 59719486 134869063 7200258 21190739 272925492 398684667 939305511 889317364 881054859 133005795 949586974 444614039 854222995 609662412 215692883 502733450 265698478 745492643 756305562 767558078 168349685 393830785 36049798 884005044 384234562 439347298 424472213 324040064 714721986 81276336 941576916 186580410 193302585 385808963 639475867 883000515 812213263 558095501 206789807 50863605 109884683 961720718 446001037 533690995 985587021 495729920 632618668 829039060 858564108 508976414 902575362 383129732 180098005 837117684 569257163 830687286 29633269 787579481 202455969 777476503 400698360 424586782 855538444 621648704 694566195 522203017 748279910 595780990 674480943 316401847 28350405 425747290 414717833 766069337 609611773 24837356 985921560 886550161 606431687 118828469 137366868 572198675 29010294 125877112 304794434 117389034 721209993 979246015 431151967 162911984 561079423 862584997 761241366 525125836 121214758 110775345 608744442 405567392 537489821 971310018 68541688 822463751 517132637 744745185 204941357 54938586 210667588 703052917 100367450 772279567 613878383 398327306 868720555 539378140 781953301 87554912 482059308 836488144 833907865 757548400 411528646 181666348 169194931 668648256 529025478 948995469 397052272 65296121 394817416 616966021 679524211 850380627 314627860 699184483 587003628 633313122 81387305 366715009 756813587 959493239 102701315 904529129 977608932 909027442 873114817 116256140 308479525 462259973 157375443 329725852 130781714 208476944 754969147 256174414 583941811 783690181 272760643 397288793 795295736 289250999 46900680 580201587 330739749 685208158 750441726 505519682 1594759 436098295 470366316 326255407 891113748 48263014 50428019 501691747 388036553 175272211 575109242 294476086 835699184 899472173 32348448 315789489 769120536 845264584 24133944 41220003 938056425 27376735 830172061 441815264 429387868 588773531 61115559 75580018 266526181 350574675 561702874 704010790 225897951 668594764 634491351 318782721 757156134 38102353 159068232 127314499 407095120 231728960 601927901 304308279 186931965 147308277 302786217 612189095 558363231 850766952 971078582 304561870 722175394 458796932 943208611 497887134 303222556 383187928 970076756 544943631 589284650 399722382 717667045 864816395 406816513 300312914 532808369 233164444 373840013 433585826 275014221 918027030 994790711 814360671 908720188 549235323 542018740 445621127 907902025 581563683 988303650 883610678 608561388 166643132 52913416 6932729 417662105 280434802 242302697 22772434 961904801 183653304 568296743 820955756 239136700 148091762 403900637 81047892 283091431 116698985 800609932 368262436 565476816 811366089 649801277 919450444 965446633 73431385 485708245 928241300 591972456 316566591 602840854 575309284 726188082 68953365 904242886 738869563 27060734 250866593 284567387 800009184 98604868 290907149 495703221 909013205 588198893 214752538 964439236 795183946 846292362 846881027 875844742 699343485 864952376 321508241 370431927 206556992 298931429 452123008 689318752 731045566 693704904 849904287 817988402 803884734 29520930 252056277 743674466 894435585 294420354 272324403 9859135 239170797 505843092 508929094 456111713 262581446 428711820 230700005 580581144 276674958 819476452 452009494 652558377 828108670 963043717 765038676 490871766 881673961 777496969 415734299 202377566 560386797 64270267 217528641 632689829 29980476 501356929 268575031 882572203 254440253 469499214 556302165 14830969 11351057 495639404 290215268 589421162 794108813 60156123 800791114 373515874 605222090 278271188 65924163 570594438 401844750 567065667 227492170 331703063 994090476 83692831 516857932 462150830 468289985 759261928 925349121 981019191 691861551 520564326 833712861 362323498 68432548 555180527 483169387 715865068 487695077 526173304 790752967 378890903 295294620 388745574 743026158 925987176 754646902 248815582 935505867 435107695 99698129 504738642 117070129 889219780 461193422 847004401 244119173 441200697 896750185 407455565 661840701 581025387 377087042 972185195 977844445 370430070 563792129 474278193 504433401 222712707 528569123 352805585 228111507 396221281 143511077 993821797 499024662 956003162 241459572 667361179 999103335 279410604 920796637 608424200 693009993 886723824 624401929 476555826 337766688 537608184 408219112 470946942 304792611 878424535 747236367 187068354 116547147 532520994 211420225 578884249 881775494 414054374 957753951 493470845 709308830 288331524 981423183 812920741 711779224 661217353 333956169 483589639 184921840 567846419 329561723 283124150 865290151 101198311 740511466 490709306 821411579 272592820 404559492 287648072 361834494 603634941 331621714 544369170 657558380 3081755 172906989 411043251 158383349 89383568 586455721 841287308 128878527 782082553 11082929 288972525 932943609 667982604 778678124 776133594 75309360 676518729 673560986 56754427 812146690 378072896 619377713 869808163 107711879 638438304 392398350 186072757 402951195 179670960 960384146 647644870 421438183 410589405 562558483 775823211 598746507 304805891 839266028 445108380 276192440 441139186 754806527 498576805 17434120 744593092 120955443 879571956 118330801 273968906 331937405 314980157 321547987 178116549 59186871 909207016 985455468 905382054 121997932 692539442 847352291 901829574 844442995 291241072 351715071 87506768 73100355 915717107 107142419 507849693 210052994 798531121 735458142 872352558 24040641 526190859 972682538 288069133 730593836 390296382 849132984 176678616 998901439 524870374 277237033 599504460 267856657 164764140 446539191 52693791 93798583 447246563 147179195 163507429 19445471 398504479 17131580 763229593 740806390 964049565 727694497 93701979 471004074 633836385 909677497 458321937 950987399 176223973 727345349 632073085 641561404 183323564 219184538 952365556 903450482 707124816 901664110 157005763 997454992 371871740 92532615 105819810 879663985 80532129 68344734 21952255 724112944 631584692 68179994 811139436 71597899 64966869 530867025 555804411 671962682 10191671 821755167 472075537 766048266 277323311 576542871 989327277 97683818 951629456 582231869 679941986 764936030 271953981 97500737 968552553 678894902 346894259 958030642 717702142 353549980 57810518 599037639 616150904 115729903 768714975 464576743 803697115 515794825 824253299 129799646 193906788 411717607 978999843 438256131 751698790 438579133 159924446 277307821 852554893 257971444 769457380 110189835 295095005 828021263 266322780 486275982 978509347 634429343 107847105 392316253 599131444 822639193 357966297 439907841 104427319 600731898 375227153 669246408 412235980 118818628 307728792 231956033 36452963 955748864 672972408 956885857 869469003 681062018 245825391 177829389 342663773 60327048 24611885 776768486 789341065 70876443 540730144 778795537 593143540 666785890 43838303 346763799 207884659 759663222 287860531 229925971 436932903 746042479 761154813 564248583 415751677 818491200 611686682 828346184 486701320 511782505 464489660 430473431 165777074 891564575 597271494 618835306 435467911 558590460 305767315 156765502 238105466 648608879 747552173 410527186 730207395 695450151 745278205 203622233 556844196 945265874 554271852 805594257 603872792 799365299 378911184 669907573 395171963 780462581 762416816 256618626 467127268 44878795 753458229 776324580 153504138 724745631 669866534 170594047 351566121 441036424 981351203 382100064 685827331 454954101 8504506 47151777 320293241 587632521 91112519 819866835 477261085 374379281 115689296 676980542 146862179 637531602 461207519 996999775 948756615 59618819 414076971 279360855 205507465 57260242 33224147 190756821 116527111 304357686 139948208 750451486 261921007 553584604 224940844 161061928 349609416 212355973 259054433 416032375 341657166 8974102 959432933 250736686 984222632 149247920 266768706 792164026 975684989 65463996 187630437 443178240 375898645 595385891 796317949 14598878 757653825 278161127 931754169 266313754 318945557 736996748 853640418 415581983 836658317 811093173 427387899 102537462 239110970 765709598 625957880 782390872 458036769 872568644 110931062 317544013 437907483 614226843 779614749 757117035 11278298 211680757 807492135 224766927 491717886 854512162 25572730 436673977 279419561 729862973 179678173 193962047 888006682 179130621 740955600 705079089 504828714 834928156 535024959 819056833 23539030 85511051 61085677 610984140 83562872 437771874 950870970 184564676 461400312 200599807 782705857 956879936 789487729 615162742 129832231 934786751 853354835 177820449 364162866 453635528 296766067 701133707 713200679 252689441 588121568 115317485 433780022 757052115 659486195 73122665 735156570 274226251 584818460 344363179 815490725 938484648 237741396 470264324 643782650 934501749 631113534 868453238 384226759 957269404 833769180 243951202 815291594 377861589 217028352 769182650 363815643 811384703 493512444 173591904 527839920 765662904 971101171 21315106 125034097 298849916 721846617 756497886 381600880 847340583 21669914 463876103 677654261 109605020 842117203 295864045 985773472 304222488 126521360 174586216 158835571 635099219 172816170 712664977 661829966 216658892 500780378 603018497 250711985 982600949 840653194 644314804 259007458 452538799 210133942 971406678 836582272 367961260 63990251 434344116 410308050 803675862 862523192 265972751 202220190 82346537 421437442 698881723 592999071 603565219 802855038 812064961 581613092 126870770 802474468 372202697 469810008 585951396 176692827 499776857 1952734 696368679 262466957 892601278 762043478 842060833 501485248 710154744 619962642 985562444 128103225 440203060 647922843 510860504 663328624 282454175 961211360 35770719 593617930 70855290 824937897 378137226 333731892 939583181 181699163 201477205 567373948 619928588 326940402 467497505 910997632 745653107 917892822 1502785 84570142 916859428 235665976 596347568 280165754 123370734 211981611 807617472 550526410 620205396 697001476 680724055 381628825 411291722 85168042 982044464 655800684 940046342 752990406 603819323 69598504 588589725 553351143 716712905 806534312 245118540 238588415 859655402 403457063 530107440 732731341 449250014 620185840 262653610 937951593 222904630 121924207 255893443 62940813 576653220 781074473 245755952 699873572 826394679 637939794 977877278 313905753 82195205 137281459 662722490 985539278 18686642 898830613 744564523 115707917 136100478 588052778 956763698 465018981 217243363 208498033 331176643 645721486 964142326 489975947 425123531 31301889 14281476 815660940 271023906 517120417 193296544 882714784 605949001 967483345 558769512 456602672 916225097 27602964 602506689 914606966 598199549 281428799 556999361 714011188 753581292 265937135 712596185 936675849 568375936 686854675 864566575 417938814 134117445 376726060 170765093 340633030 926546566 554290094 988163868 195863990 403694152 301477547 77151501 922982825 382522381 143171227 862170377 576184162 758172022 300921393 179870022 74501022 619743429 688371578 787468332 687420877 332033107 193912523 919362509 610447875 511928693 407645206 491084991 345997674 256880667 68487818 828573155 2971149 857463030 580852061 448823823 95912145 2751267 512703415 305404531 104444340 434876322 143465281 996549774 974215503 758781566 254138803 601422903 621051095 602711825 375089807 457059391 370482839 278130060 607288462 437673547 115188023 668600420 880815314 865940503 88714177 755512331 104672673 851347262 976094596 461801982 488812747 800146527 948872848 704424056 909884818 599609678 804635655 681203221 997361463 355374520 906733693 579913939 752247644 559280942 393492649 801761542 177267103 370529539 908387847 167374993 114699987 688906912 21740043 317602360 671601383 745428368 434472874 712975330 17768739 362657837 825004410 154774353 726567163 739337621 758440538 232441991 408841416 374199174 264255562 960062082 715573762 430204226 541552261 930524551 739244662 821756483 545014145 32741420 374747622 350607824 673327938 678077145 936921997 867622051 857450739 943244812 209023702 668632514 281182987 234227059 782061645 903301386 243574257 529901286 193878714 173735372 505786417 486516426 928485380 177956138 472398403 501798872 962433449 87384388 399285679 920311447 78897033 463032656 961689228 895220804 977491499 223430722 619075298 284609047 11474385 515646621 92610084 13795939 411438763 669875124 875831516 730155474 565530018 869317754 669591315 304216375 490668826 498186508 21090960 647683908 625114196 9680618 161077679 339778412 788198479 732691518 641706208 239966940 269436680 248905302 989967136 523810593 427606691 783089038 690796931 723626039 738441753 495151896 707533429 765513964 886530743 678397121 601203869 879311112 651550063 193726840 971531864 481840614 642763782 745441652 700465295 848802331 341747851 717319175 993801838 776800532 287858802 311845392 412556492 653939232 247998420 322605054 914125401 230953336 388236066 474868668 964669027 287299505 428559508 433365781 362294467 984381176 926611652 25549152 358609724 494873912 198659044 753249281 459747818 618986091 977352823 680591259 339301306 335727570 642841534 789206276 113690273 502500804 439355870 484989667 627903366 639698961 442686108 778759101 306352412 842762695 5167540 874108457 275300204 420996841 256897209 710798560 386141330 866059766 292462404 971981306 873017267 402241410 90496034 332583740 270838879 296862121 280435739 757221371 550240150 515551777 316695076 900386785 322241661 825121365 380422113 403457187 171584513 758879545 559184133 27028611 488425534 688788160 767100014 148907000 565044968 387500499 789955891 529912 278915888 561789421 493320650 424927941 928748375 36799065 234172626 296274385 48840742 666694420 821523136 100666621 702690758 147303575 158844479 245408636 660138968 986106963 840352774 455923820 580918675 440305611 87896592 251288145 535564322 396213486 847679231 463622156 776450053 538412564 100167794 348047583 213622632 616524216 294115527 287466206 505142970 798090817 877301237 617086302 375743234 272950445 113491854 451452522 762839901 88350935 564230554 443975163 910623626 53940336 354414093 264548588 131749899 856167310 603234717 323703071 552342096 850763694 105343578 483068567 119394944 469873083 126143890 13568517 884040827 556733016 385965078 435697844 661140704 873680525 952023244 419032007 777273484 100802128 540828629 124261543 446803560 256774040 755321358 59178687 461595604 890387286 968307946 538511765 882919745 567828206 264013470 619796330 755865901 401891468 923182092 6475683 713169190 512528263 438286907 622606466 95274967 333720027 975507954 578783502 168637668 301303902 748467297 467043295 607872451 662512288 554990462 356466546 157722109 527125033 398007447 279798728 66111522 442112739 979805079 198833161 929323068 496728493 11680182 598559979 627904532 130262378 27760134 345343767 180225544 162624754 113975093 751633768 564650279 298719118 836351753 920265438 942428527 808089476 964889913 632125752 670262964 657874750 958001220 373911456 683670085 229088122 282360390 329073940 984991396 516024429 137068208 14111981 71005447 731809738 548908632 310927875 692088277 460220967 607994642 847915911 152720049 638302698 208335258 159882968 156931208 458671018 313944551 277394707 720737109 542129507 654809927 976234276 45819383 653129493 733560651 102719444 273402085 611503129 590319773 932297224 196071252 928521941 257667157 65608620 779161635 858363160 810321396 951719253 516067923 572525855 200207312 178267433 508795658 336923595 853257815 150028339 777757838 521311622 738233278 162590569 715591094 346878798 20409212 495166495 774076852 677095400 538924774 274120184 740160439 660234636 626641804 7837734 933698750 873763475 22766950 270642711 34987227 756089389 104913016 104333102 812004437 192528607 742029247 693736443 735240621 248480941 105184506 786197508 145134982 249276153 337916867 985288899 249197093 642116971 176459712 673349762 716593195 920222713 884551501 540995435 464371431 376802088 552615108 238675497 832241531 413833421 448634915 403227272 635184543 382637893 76340957 82657560 35321489 505292744 847711438 753174946 576072508 449661187 406304757 226686011 367176759 621423732 94826891 606291586 96441644 779309606 30314227 24723368 822625255 227093834 607878506 379532533 538441403 740202153 801589338 269546676 942115518 307775528 785023677 646023165 693876978 246477118 996547440 104859041 847017103 687508241 822746085 625219035 240622690 219339752 581680082 466282938 14360114 497094577 337218518 192809737 431404190 175918309 704993698 320045795 500306591 272769844 615567738 916767083 394898116 450546301 383408288 827058842 309654867 886804257 288281219 771846507 962002067 899301527 700748771 47917165 459403092 288057045 214774002 82699412 714534717 679766998 794309008 907466542 675467035 609638433 175746676 779528542 295441036 108148174 572620638 231696066 536324250 914731500 627608092 12947107 466905337 993854346 782494903 137123914 119206101 312298935 639661804 935474866 620337653 233500541 553794880 260968091 843092349 266909089 747038364 974655289 850322059 493377536 32594009 894382762 174960127 694505752 111430819 269890983 994926966 893425073 918053312 991107768 428013447 294031745 567089999 50066602 210262294 316519377 750494045 19876206 641217865 799998597 657656398 188603321 404820879 931999228 5416071 42772162 457818041 878736493 862013738 854060550 579257299 987382190 542518695 635411651 972933126 656326154 78238946 545820552 17655543 825634309 184652282 425973271 49486645 274020441 727363383 706137867 55884305 769026852 522974495 685402652 102716778 298946495 986174158 848727128 537088037 320926218 718495173 819450255 915229672 954788668 506317235 716396693 24225790 295717064 42235492 814899085 247953727 173450682 343468567 219159313 654336376 48308665 504118448 588625054 519471986 771218108 703095013 673250051 874773375 355804048 829831909 220792964 118858849 641427723 242732860 307891225 834671768 513444418 81556936 947680855 459802669 703440785 382828163 180617473 829276720 713419111 651919461 511079570 454903276 432597680 416777495 765952823 499584475 272353694 835498819 497804587 960501120 732403046 956378868 689874153 606949131 891601148 103311746 770520240 814654404 961381970 28387750 866072264 170039158 570570584 39943773 315636374 920535306 471798616 424996253 515908031 641395883 624936420 293066004 288061196 80975709 420294273 530203419 846681660 437004366 908003287 847106365 922350641 224742515 704410336 239484378 133258201 160372589 982227717 597419856 634234959 114540099 653840719 227448733 517492524 951507401 741677775 691097374 909918337 764429005 138736821 302632156 104128767 206247482 378955952 170696923 989090579 279511410 575843369 389869910 209066985 357569696 181446198 482290316 938428403 338550144 797323479 554776180 757226268 24067463 80482654 142881032 475626240 110872365 153498841 604008140 929509880 445497922 567881429 701862834 849529629 98354122 111814830 678294267 379367440 939590044 907470867 245061460 120631081 748989308 624100556 353973722 315562234 962251456 811907975 499279915 903881461 198832460 149884975 480934367 582196694 636794729 160212803 4502252 225292269 519989380 269665301 807872222 485719823 534938751 506330776 926843810 868298944 557015187 700423935 658039117 290667560 420857374 316862228 993312693 169230059 874334463 254754975 595044395 262648943 529633958 243556830 930790960 99947742 339134726 480046689 868903500 744133937 510387027 168143840 994139891 946786443 7116806 929314819 591313951 669690502 468772168 169167498 927712789 717999032 548995619 295387564 343157124 281301704 202300749 588325565 247432503 314759493 692678621 953617350 611612930 756159605 568582825 380595613 109033491 277916289 334066101 193284282 56600833 890148009 835284598 233831034 89409420 126699699 873644891 423245717 499902558 294952062 512705431 681642030 19005314 519830029 240949747 408264862 612534826 444713009 45587966 27101387 859340551 138891401 116937561 416937725 615876870 414776824 259497409 518939719 574538776 33547011 330816010 570503463 211571674 16550241 991986480 452741785 372412417 610591488 665192386 324467905 714764063 613783885 486107832 202326089 507557729 839068618 976044837 730069855 46478393 176416949 102957217 914670293 875694116 791368460 132936568 651375744 352797927 28927046 702226383 446923043 165706945 233387915 80364710 319739183 528008157 81506934 389368028 874279515 806899916 465042801 715035397 349190792 210947328 780107960 25012683 969906161 27789110 78238500 68911571 961892770 668271930 183991794 141959218 123639543 776116219 556176529 87870374 358857200 612502435 324803968 731584893 483092882 983279127 444336150 663127896 954991900 438277483 486849986 312358376 618569397 468454368 2633894 973315260 895275046 187013916 147121532 288696473 47324996 268770606 21971633 582777297 664756587 855052203 922363233 678706397 468401824 521359842 93505034 797530789 33756976 369796426 945171470 658161660 200788036 756659706 607735759 279119350 218819382 984298721 841911877 400679916 112100770 949253614 943375720 133413650 118186344 676421828 566005112 269909371 39601649 351769614 668213535 253353681 66083483 245835357 249629118 118437208 604409879 524363875 644055369 739276212 284003035 414498524 242923667 543619111 42307868 847926876 343890255 781963086 483049939 465577785 80048638 766983330 682946389 639430651 979566008 733937161 754163600 481079749 131805314 737961274 499305995 912666418 997418161 346970754 762304444 426775715 68327078 682555557 879125665 41370264 332754790 683680967 868417343 225349972 93719918 813819997 398608009 221371877 28338735 582892727 893991635 994531963 68059063 747350693 826264436 155215518 8319912 971927811 851255058 283023523 253000106 500113604 130568336 841885489 505599349 900584704 937633766 984066859 467777067 438604914 875620622 961874821 894373748 567940430 39797555 213008292 158249400 217481717 819637229 797576877 354292285 75232059 964855102 550429738 387159242 19157610 905005800 543329400 690834179 492128478 405075932 421425717 59201749 767854792 251779115 404430824 276196987 136272843 72477838 421024124 722049986 889923002 245019369 884878660 433116533 857999637 194816716 956499827 274496261 721682589 663626713 78074517 320554839 463605484 479402434 564703723 939829339 387658430 569439860 721840194 797517157 727525095 477524040 423593662 884258780 433093305 467853988 637301677 104675656 688531683 646590509 610267806 234227860 659377734 838332508 174464963 599900073 159115040 300065549 380545078 823288204 173787507 610872963 546045878 31518195 530056754 305430301 800457019 633229563 375532637 625927452 76986380 363365626 419046925 124789876 298836632 320709596 137559911 841852080 585958323 763588368 121265327 163652531 496261845 132072172 665759687 974958945 252300382 655808262 499958290 63715127 877680263 439641291 409103384 17251787 36024312 689767851 923892072 751818832 177816069 768742423 79011573 486299527 386151861 303884110 916914614 162243131 967290856 3750581 818806896 739945338 618875655 89641457 656737486 985583642 232067859 984720100 276500224 355338592 550066415 398994208 967030526 996458852 257693877 180715904 585390289 392738209 772501869 683591663 358912460 756881210 163917787 174498921 411651001 982384935 699037940 124508008 212904329 609973781 315485878 985287692 297914585 543648364 341692188 325228817 455325393 556920179 584986147 272093900 782369935 784671169 352805934 185833243 4889102 954832272 871668819 611526424 439906217 835006094 947775361 819465182 123410169 128345942 225851169 393660155 480383191 463662449 711840691 692014903 211463954 941622948 695222527 133492323 500024734 546484815 426145504 298855944 28928061 424266373 755609248 579964506 877196174 139256660 307395323 278248298 504397002 564588838 28475620 277561424 400092384 274375608 924414665 607309953 108430466 745867076 118602242 688237428 295707121 933282554 961533259 902904151 427056880 990789302 948686422 334288980 17237815 708148197 354850063 206773302 712101528 356610970 265914786 971542398 809575493 910492495 680224026 406852579 261288951 955700821 39972353 125561697 511971143 252002834 646064403 105023627 794257458 548641379 444226179 57817616 93344708 49609072 583981113 207763164 965150279 44770244 838371758 84843470 495096771 131039930 434951708 272630532 234743126 124201347 518990181 969753329 260583634 547704669 14762283 36082886 640488240 561853749 944204958 431611086 911119537 540236789 391139213 480186412 304293735 546051976 192066237 141761155 13576270 738786938 601434270 707546825 736123387 359437063 889422372 977207596 132473084 906105405 825111202 83910454 343175516 17584601 772607720 528160520 252407785 747828334 132766423 791123061 65488011 907694932 209665076 384990212 875329047 798769608 794955638 713392913 226783397 899777703 794067570 827756925 965036244 124286276 172423544 306443970 495895142 998803175 507888802 699136209 305230996 154650064 355937071 537842316 926355177 110254916 285290678 853754885 967138868 906366525 39248128 960375369 689283720 418740183 205242986 355469964 543983209 159176347 920046353 886805177 380606115 620016682 22699428 72246233 855011290 316667321 364410834 680717934 127214293 175744079 589703894 125042910 559409117 952656468 748133020 590174773 384156786 39225570 83046647 791012008 820106661 332062401 176808254 139817988 1180517 560879934 907586667 835096702 599106484 321561254 365915461 737822837 69110421 424392452 542220612 181070926 922299857 601199233 768420030 466585985 681227598 380736547 768022152 211315174 953561859 870146572 860991052 951790649 588318624 751537778 312536514 94094304 101738999 995830765 304505488 361186434 925289358 399854941 676621273 826261710 553711732 489293184 41541227 445958823 986759659 344633585 590877816 661640428 292097565 988423504 934770026 193426762 133665800 491200768 500730064 272000180 575756685 165937893 826494091 900790315 545095970 973532948 773693532 628504247 248029400 716377391 518686077 544628866 52776665 522643197 391958879 76622176 154823871 163930461 133624130 728934022 998408 257193237 947906945 746017078 887938430 372323837 627139451 903580330 126618864 959775305 418701973 618907503 319885017 769179028 481436540 993173251 274875173 122413204 615678955 510752241 769354480 430197277 223061356 388321484 333281183 753554262 302837690 344334059 686058730 758799930 88448598 463532350 87986513 375660177 114756985 786783687 203607373 834987883 383478596 416001085 159937566 18206959 343052489 559792269 969341359 948834283 432068750 869079124 944827491 973639633 349375195 193832031 380958866 55322279 29010558 777254800 293312533 494490590 342478320 562055302 980133973 338635223 520222048 284583473 553286006 522080213 104388228 705727333 981861673 570919764 210798586 514271701 755126596 236942632 146747079 129265409 56594938 458626618 796711187 210251675 775451700 879214763 211526755 474826684 503067883 686816674 221915397 410806273 403820477 357385302 4256364 219950176 295006116 791461779 887581230 876705871 151240772 355960090 854576892 172521271 874980989 750032880 928923986 773257742 30319963 438086196 181886522 277453199 633021465 217147670 44437621 572265174 482055146 659726192 497439077 214622659 448509643 869497378 788879654 997154557 115212978 500154324 92381191 549789655 92636688 933956824 131083731 2422690 454917821 867815111 11732981 69300889 861848817 692752934 384794132 886743076 278475117 371987951 139333101 563423392 821583124 689936831 10141909 357871101 465948228 862300080 865700373 940862672 826391298 220324653 530823901 444873922 421808742 402919308 237770168 226365551 464064734 862323396 497596656 889797220 163405232 501097267 538113111 406417998 403962007 9226616 969145623 403847666 93973131 67661747 165202608 540101393 208192667 1009788 957649138 800554625 451510316 309841501 297394514 209398378 548951893 534580839 104897901 345647395 375314252 888573190 81708113 365120063 389489599 798408898 8677090 831220295 336488622 555514138 607325080 244735679 473815303 609977214 718382162 109315684 340034437 123413111 468434611 891047682 53890653 292930259 552077233 791962374 51983568 738041757 651278951 423377089 418186167 248562412 656410141 163758039 880338008 286983610 14215370 653197411 585509763 249588202 293881044 158144968 896428591 867441695 346633275 422562542 365154451 904632935 908576300 967967459 174747412 477226112 463056371 631284229 947994776 989372751 501945319 150914551 808959183 827636295 469047684 7752084 180390869 713356475 700778341 110255814 743675646 75518481 741899963 59042834 380964145 373907076 662612443 812336357 736013209 686946098 107134606 904212762 226323767 926654602 101717279 599155373 254121992 346221663 373144423 413595143 748545425 831865225 825029730 511699468 245205037 595330865 442905593 476896592 599003073 328514960 594777389 78000128 447033174 920852597 227795244 33446132 217304244 199515157 428316547 244769971 756760448 102988762 463162012 388955684 963098245 461781084 518929323 428197212 293288160 61482509 249216312 40934596 227041094 317824175 110315215 414321716 546282790 682996008 283381785 725909401 931215060 577513602 429282649 559780654 209805969 129212581 113521833 310622622 304635445 560485332 942895416 985860961 382485372 168281839 28468159 11937559 306060474 844802992 515424697 748413373 85024647 96345475 228525639 251732161 337281518 425765995 359719571 781755938 127509423 866837937 303449957 965587418 965072348 131513876 886789032 362014737 377807528 927772820 148147266 694507634 514919119 29939552 714556181 564413531 512444953 803869408 556932299 567771396 555151243 332488388 11551897 243686111 373651742 559736680 555806509 939923128 515596219 547952835 722529646 794420653 47068906 155916638 643236457 680864238 709828579 704458751 17300550 486728793 415679812 620036498 879759410 761042960 970612264 922275992 41166071 893694528 264697474 344396667 661844724 40351229 513318956 876236446 826111598 830932109 237470679 881223455 93838658 387677439 573333386 671479130 138235370 496253280 990409846 819214760 812186347 308132873 820607649 788810628 937473378 248415867 340899175 25727458 351896973 823613579 902434775 220635616 675964492 674736970 750810213 347409802 901400578 193476808 110076077 694416962 36255725 764000219 706373709 411262407 555949871 198195404 735521552 857208193 80938861 31720869 997854393 998687322 709961469 853775016 862765636 243922893 62446856 426346128 12004862 850378236 322428896 966414692 959425698 906714819 545058939 809963095 103824972 88596571 872856379 466331056 181527274 933830126 678041927 439379651 202725444 580441195 584038710 283949968 863975263 630254308 247722041 157660827 224342575 109665349 718405137 199299668 234015853 700581774 209984276 562133215 963480795 245595134 157714361 394855055 282336532 836160982 569957238 437710740 93821589 789349005 211969959 382705496 540642172 16050944 913992734 517739980 140686474 988194 734336667 536138506 938167240 117193110 984483104 306316083 811631154 115539754 775910503 379318408 877075694 762703288 341090984 456936843 766664932 747123307 584857223 841599062 890884522 693515317 4917488 597523216 705361033 726173941 745333593 992949226 88268520 200677604 507679035 286947228 44473882 948978980 496373929 531937939 410487810 203570550 831022069 476359849 29731192 823310385 95420196 265742017 326166967 741950684 236550274 686003291 228630308 918257828 783921403 312325788 134156272 193474357 759156278 487637568 303069227 409114147 295216022 695204476 462406734 233696907 464045145 296073667 896824820 917496034 237994191 955032735 594918163 598767778 461373247 768629316 125077790 151658595 528891876 33891947 976489582 37740406 899455646 573400838 599488744 215813101 486817342 220278756 19500055 895506315 97193338 556434012 200289804 666677141 391657618 341798625 706004503 407396513 133278355 443379175 606805148 398582223 551999284 296380887 916336069 868023221 374641219 118509750 321139972 826977951 293889054 142656937 376997142 824474772 740645181 187400354 672845123 877838876 672947763 572699636 89212939 710190587 983667978 861826394 147139742 878502458 410574458 192188284 248871726 300422265 651113882 137314596 749823502 568062574 185613770 206694088 374963384 853532167 53114701 905047276 572722719 224955729 638337596 281706778 931127687 391480652 551664907 286523648 564534744 213556620 899767932 123786245 179648896 788580042 376130888 535693957 277082930 684345287 98655329 568514828 644031297 134010660 926942541 441675739 304270473 52151079 939641271 260504830 461089801 651820741 203921766 542409063 653087481 594851019 891666292 449661647 908985223 353190021 705846799 433195682 29778684 144394018 784026505 246512375 687455137 228698531 74020823 449207934 496411410 303059364 431959147 766868779 202478081 843665458 184372759 942702091 362502565 853807001 815727600 774833044 903056006 576932320 64235059 835897088 602315694 198738766 476450932 674113529 812794185 847469465 728117159 665231413 133444054 315111112 951062681 463684296 315580878 765350070 500006080 967409867 848812654 547831269 790007137 6443947 73386928 455770835 240506950 287458227 291531176 52131215 463897946 797070990 914820046 823841849 10222878 26931058 32813365 757644702 368213311 984798272 215715007 127080323 806528743 177575506 966048519 196509416 613676492 892235105 656423447 727887548 585217688 95896859 854951806 957494880 541257834 182575545 669175837 690770302 113770800 276216178 997946523 45228572 542062423 2538975 282277696 460412938 229912934 223332230 415281195 715747531 641764894 894647333 920520688 277265407 608665421 39849816 327464316 2936116 511170649 408701031 215546594 160235308 148579996 234590867 996904683 539783777 973088279 473454914 452225807 937281177 97937152 800176759 111561467 729972629 585855732 703687536 916336119 367620041 857378124 123878286 657372799 54134985 411562104 122280433 244554633 655574462 305135149 517666117 353960695 156568036 605299923 358332229 356286586 110132856 603086724 875172444 963450360 654494008 475929314 685087019 722182368 122284349 669739595 722688131 401239343 557449218 695085912 271162395 754619844 305323590 802838590 881631498 258712753 574270579 457965025 140042011 380055241 124714403 227041798 586596625 156724155 204019691 65731198 780822163 461853784 209939517 637312853 521347930 578227656 149514526 911921580 315694051 183638433 234487258 453246748 692003059 527507790 1358755 69980989 367596147 946962145 498521234 691201709 591465798 528276110 912429039 786989811 446812126 762839408 200205669 181749542 324281516 125460560 165705473 831101365 267216796 921957606 369352283 10144213 896834587 39649918 528431867 327190339 758627474 75549996 309179050 876342911 888106908 356702648 733835882 57961223 228994899 66171828 303600668 883554301 234989325 472720127 906352691 79309408 471836353 81893118 889165338 625377303 296638585 828393319 211230958 697912649 861936329 515190814 932713066 928523980 102820776 326510040 626823143 620099923 589380523 612210189 882600215 824079333 998874920 704550313 610207015 938534637 810100653 93444443 89766300 688920112 619317372 893258587 750661486 59989667 380064903 760426276 573944575 205059912 82413444 392389797 783665922 88025149 179958089 667918923 555916979 433389994 363203997 742183467 896977133 322630491 549495863 659741990 496567269 393795478 413253953 826125006 728076006 411800240 908784965 435170793 925713997 75726130 799728177 785931831 43803272 600662194 549566288 191351455 125544274 516135032 863809023 870318162 997201751 97828141 783451318 986276940 793849043 837113500 162100673 165000952 147179062 996788646 840260520 989227821 815504920 849310893 52692824 587935266 318301162 897514241 191036605 278105550 319245404 652615543 809553585 890424370 261591338 333417377 716756161 977102653 146488095 370073576 153856895 892096737 286716213 52692168 176210580 601180130 260427830 685634694 10026376 648902569 695723068 271884814 778444324 497534435 579687009 227015220 556049674 80899367 564894676 886880929 294033270 16631387 104468562 213032932 500679030 944378227 706717976 795292641 837643787 44325107 122638105 16836962 111063875 145077506 384513896 706981485 762522773 695061586 674416156 715150299 46099431 675459907 273646641 374583708 282105097 714278259 180558057 275429966 266064093 970882132 974954179 737498962 759829764 768971757 157537698 370386143 483757689 644600470 526524589 71683222 683941118 226317095 748214025 22093080 227050548 359591043 562419533 881667638 252660919 717446070 759868024 704420177 953679220 247312111 53286758 713966658 881076827 873288377 406715867 691362418 836017800 912411229 297512744 102490859 580007304 872445627 977566777 311702367 649311040 750015819 33396723 162829651 818488782 114087613 20190737 341723921 731290754 311521344 302198983 709758666 556293966 903403443 546851705 28512393 469585494 346427687 322699509 521772681 777322254 81385571 585871529 657529398 948722308 926648685 267989400 231931381 685653900 935833294 282145398 201139949 493774062 544770283 925679712 438582642 767009455 637325226 440594717 807617555 597283254 330906552 158509784 6195773 999324929 317923919 913424197 177427817 719604372 99176752 631587500 52969920 152394425 113690399 521094614 658572904 658006965 293372421 961579959 381390055 912299629 806522486 88482603 423837631 176677662 234381515 82900891 643163104 161247269 949407914 209344136 812309611 7607468 628242647 175789976 743292547 566720949 534759762 211938075 155083290 371058803 943440792 882781418 461864963 231131713 830983899 126706103 710173747 462938006 144147022 293144100 212078605 16230700 286451011 711970267 397766734 76429533 982773324 376551606 459278571 429049561 284762879 603919776 761490034 608833983 658344411 490557225 353058620 880227696 868274785 904217524 955348653 10622114 254517698 316125990 29445927 193668370 192577146 66703822 915221584 903204918 398263264 910308112 568519523 623088078 324348223 536543102 786778212 542361602 344328732 170492016 620909688 95824411 383518711 813338160 348960749 29980475 515378170 274543606 751119205 632123836 571978401 481093077 76337171 202654538 937494743 510685654 317207409 117591730 856941027 813032598 995632390 552185372 360672405 683084602 16249494 857012416 89119862 562071781 989193622 302181394 359367927 980703173 575062815 568625156 515185445 494645965 406002813 919762869 188529718 872350056 78860112 641834410 344166928 97389100 706411907 814068006 344741391 232462190 191781810 83743827 952623398 319948297 871003809 902868427 621430572 984229256 431053820 223653162 877844496 209063063 782782702 156116903 147124656 568042869 670519319 835065757 8218803 437041352 83316734 324998545 240461975 24138410 449516279 839439321 368727797 314595697 901407287 675744725 502416028 684022323 883089180 906605476 303049595 111707557 478110291 448813176 842957003 675117521 64442386 220476258 732023386 641049396 300612695 376331090 186751318 47378802 701530680 755612281 105527031 715547482 159331980 118929354 311944936 584635604 613803161 960716659 960352399 276586115 629713951 4177796 712789492 252053382 108454672 466606854 866835215 230547210 351474661 854908905 667408005 339406866 978840135 115793461 82138270 638879352 578939493 813219717 165656092 107945405 304854351 854826044 819922805 843956498 908153652 210274784 574276590 234176551 621170628 449403405 619055603 107406446 608561617 180043642 51373441 834170481 420271870 92695390 156886600 870012433 676267506 587363576 124331536 708868271 394261487 738011486 181709869 742168319 184817914 984188148 603295492 662720386 397956012 844705914 77571217 227097214 400883092 768458522 491973238 671713340 858641020 498616974 453997521 673516820 192854168 918711015 557714551 134522030 803048735 686978148 845993326 52621306 860349559 72856202 788814279 817271327 553098828 292866991 754229373 720186076 813321208 431703648 506193124 438307603 67733858 190959391 494668584 766988382 835330647 804357892 263270013 320837510 62317229 53906432 803809873 268927282 322834023 140775115 480261693 287923746 226200031 861452907 442036794 714918167 822874898 904127821 450250352 291623737 264561771 71509183 437570778 480337534 862556837 575318936 156682521 207683064 402510754 308283515 887490602 26089795 21909702 371416913 422607965 177819085 136590903 592538975 756921515 988933413 823264300 826476127 480856184 584542548 515793104 652421027 668566220 460778849 656479983 417645777 665220540 769777221 606257701 105703885 956081805 403300618 708918129 444202468 590445531 612594012 992596073 871418395 890332404 780221948 485044146 679650909 326754929 696972843 354202152 643294287 5617110 856081427 372506944 22391111 423861022 346903864 708905640 773925486 545750776 332200809 120390785 620174177 550280400 246511357 663865162 813259133 191553689 246482130 55299316 786444619 439400894 267894183 271923928 83149907 155281375 498531617 128175907 236452202 697051089 322826670 872029931 320325158 940983406 726897128 279596033 5681430 652223572 816777534 553364823 520658660 767352774 830253216 727984489 164440591 294789890 441987004 611797822 77047752 915803295 803823822 689084787 940335362 385369746 147440146 223796117 698404623 693064018 659146549 583390084 912047950 681934315 229682880 995889954 640642544 814015736 82792267 756235932 848031194 196526740 475699175 640297305 200554205 525014702 318478968 943258967 965811959 919417188 561777799 318874831 100158636 68508415 621884006 581367333 191386171 836812136 535815485 656589650 237618780 960268504 970341011 207033285 431724613 610903173 12599618 173028075 361010811 568702065 742812752 592794479 35164680 505920230 93399301 740814215 754736294 731617825 119902527 514691218 396736321 617898764 613691526 175899331 753614691 39454630 280564941 844037104 76074851 463806896 819494923 473536361 772272085 976029476 799465174 992402202 161632698 289386333 442793087 192427319 447075209 511548190 731459985 272968175 185911104 602432222 864938720 408359152 917487665 785929186 87214965 94113441 69033484 920152541 593169686 138119925 614483345 845278474 345356943 733390514 593388040 413333882 250936704 75621029 306888896 113661858 939400425 58544715 422651207 24583841 662070015 418881819 929346320 832731980 551318088 799311945 597704885 169939138 516154415 447769608 499459322 116564196 219301301 658298578 754796778 239211854 56728549 157531416 344179620 682996300 588405986 96651285 190927363 259570221 972460 621371231 41272410 466973302 980328798 949679049 33735132 825640279 63056024 465046733 443565070 687830229 434736320 328534136 101836505 410779733 747659297 841918500 51875160 986647102 545798695 101662220 21553223 685520443 273306772 196801181 157540241 201658492 566540899 439163231 185287662 355825326 161827632 948296681 987246302 348614558 261467928 958457937 320582728 949170381 96997678 979501498 398199310 952286332 315316052 438006371 525115614 412574114 813274436 379929544 349660640 119803085 970597814 113726951 788359116 134866529 244245799 726788746 50613989 837052834 5883690 531778098 790662692 682829471 612873632 146338892 316208210 476949295 804464456 512036591 71647886 791012104 132047664 336137813 680884992 832049889 917898875 239553933 401900853 663785607 423947703 488008485 549089506 516694788 105191916 69426402 221195825 895185084 797669574 201858591 144408922 554808422 194730608 932627955 671732550 707663200 830335829 528433760 675075491 19974371 489287976 591312672 476944778 856221981 501361626 490944787 747808420 456705348 93766379 181560177 296942105 707708461 137865679 983295117 964691403 39908879 340022986 642421167 849740623 554276623 193620423 965643348 307778593 79693931 665066379 679474658 641340993 287514007 73119671 330802175 634252097 818968899 821582230 169571592 718889546 24488871 360188222 442323527 516807496 646727752 339078234 879138816 764026735 241205905 916487422 339933172 589462486 706198127 202888601 999991299 631881456 820225453 791118889 430412480 989761718 445869009 762625931 76637261 91564061 772515290 17762872 561810572 222622236 895328198 188242381 257753803 228013084 868710233 223259294 179481980 648724742 127318097 483986487 134429037 516227003 536534032 43124986 739027845 899247429 172650074 246074860 587332267 736249683 706242808 195461508 711902049 692965496 799671401 117060113 92439850 219744233 574716233 412809844 554527228 365699454 781895444 125849454 496849203 332612747 903648529 847927367 482624087 513826341 526434876 721941019 121658425 947621506 80855156 128734865 822567216 977024963 921692744 147076058 185164238 818321030 253942419 658199159 6205070 740079561 313361991 752334869 313613776 637600042 393846497 982967217 719009088 211637255 872354102 265065943 617623972 868633076 143171267 332488425 335994150 375014643 305507098 683153757 452651411 333956380 856425330 967403824 768368939 883966762 566822113 605875958 782046965 64703653 592285811 936776140 220140818 891070922 127614924 954353307 507122052 430103634 155183851 984671030 797730305 238978494 769360704 54613526 502460800 605453632 872977617 58323242 136050197 378840230 472270169 705899992 37015177 405576708 912578405 362769290 535563238 197465564 689464171 217240215 422015780 551545210 9645451 311890677 573109634 336333614 987086032 135603677 725805910 602688334 849465332 310704843 216606985 813288115 910553099 278200875 153208881 335556044 284317687 948027575 929324230 155722143 840053105 136646583 85579155 533864031 898091371 101694866 172732767 845791230 4555078 306975036 261939545 270029214 587075402 754604814 887153690 78970381 308078662 730626954 40736064 282754745 262394926 953067522 73787990 675727736 369342888 57705373 471266023 720111149 493936910 311635580 375699664 267046156 445144621 862143919 641866889 671745398 453585850 795643244 306995546 518070475 123582592 955544266 714503353 325863679 936694857 42758023 288113197 22341511 353660951 844212079 781427369 660535753 649460233 693348298 623610892 321926710 982090831 459313374 465057062 97133677 763691008 470848733 705858000 670085830 104973583 405207797 878928089 82373366 492074767 125022429 571071599 822538191 57849228 957614892 389573997 682682567 999396282 827873540 954868292 934728508 34075475 871202835 501775044 318817863 806286175 843820385 66879809 311302093 753636747 283649301 290313596 340049761 487489668 237447899 163722570 532505536 574970600 567256954 854896834 158059982 92167829 560630514 532975658 825108513 856387955 24639932 379661626 780032831 873808240 323270110 517574723 271713498 803514194 683455617 194718426 873512179 418704572 16396537 758730576 154161672 583016443 921434240 279030606 816293823 110154488 771363254 691419025 507397253 256788409 690573132 406582582 517477193 99035623 70424364 82491251 647780075 896096803 458790961 512103206 881448517 797364935 490825429 197547601 684988362 619627701 592225782 41368529 299715068 940306995 721675432 895833282 422891737 61067018 886557214 32403303 188837234 679555636 912474683 254479536 727019830 686821134 704789405 381421643 927328695 414775986 768499586 558336705 100132256 437388012 764003557 846050261 83982733 219868542 627283593 388221730 132343412 106668837 758765668 4016969 937610079 257772570 411664080 275289372 93435039 768268682 998183592 200077043 572437639 571266840 139573315 130888961 759784755 124308946 545734440 64325927 691321268 557325674 342352730 699681269 745249799 707518384 89116374 566464138 56270929 496737600 760169810 284289949 494131923 180193481 929082147 55150852 25118834 149823653 824223044 637121260 943130615 853996222 92839651 81745488 493814602 452876379 873632944 408683957 920226276 82204769 237892365 208879671 425344425 406460411 650840291 798097510 381417437 368056856 532484685 602762686 953445110 237666890 263238441 271374702 368066371 649465031 449136281 903284513 158592657 372600313 538647494 606286944 244341169 251365296 790788338 209179558 264918936 133131718 10862828 351716975 937928187 142449954 285042228 641782771 20782598 993772533 947645088 883306168 298222965 122321943 128631360 501529945 485013082 867039286 645585705 522731116 62336199 600123996 683233837 23980248 916094309 704439851 656579905 983594042 835518290 180684971 239278275 338640693 260183154 859082336 387657660 398582562 154096880 686722746 150122405 454594332 756104486 4505575 771178723 761897769 651069122 638714276 806036264 400012916 346321041 54584501 201347364 983720712 586095576 887805361 557379351 188643533 281721313 755624409 263562712 383604211 274497147 77423018 588502882 504474352 821898451 687737358 242732650 52894564 748465188 448360539 787781931 177767266 24554491 210712907 523498925 950041693 31163170 962344666 947752144 537669735 706757055 466708885 773475750 547565524 187570646 245017008 155712037 529899951 521334866 747978159 859545255 229343696 101989430 471442650 964123412 445850524 403769310 225994689 264206735 421366521 341167700 372894492 968252849 269705244 849608678 924044351 868584898 226833396 569866345 568889256 5616591 814291896 97125918 699779359 67201671 81224055 319715455 506219798 487625519 605317917 65999329 875610987 523603927 657283268 773270536 663815074 200480563 106045709 988467467 162631477 659185179 763973919 793482721 943797094 989416871 217879112 977359419 499802170 450722943 274674092 174872144 850645891 130378085 952430572 949292570 859979210 845591928 718571766 67593220 413184611 964930945 708415136 542029558 929553834 900138814 162806998 829692234 775034817 326898552 422565632 314910632 320157543 682657201 152290515 574983852 461385586 974767500 471096630 144625607 620892618 228988552 626594798 331684574 45609878 987877875 238199905 981579115 893465145 402092775 309442350 85862985 22539834 540905567 727427873 118942466 82126424 686941687 908923924 253653639 901415516 48157604 715123363 238372693 520741622 951178888 219595796 283309347 689630245 150176403 749689219 737138159 826315761 776360440 449110039 401152391 944936593 459307569 295404107 999665706 653845911 782153257 595386537 643518402 218195456 714871691 379298525 470487197 944061935 514857340 132769386 392427127 36988702 197931261 273880896 561120763 406052977 334331678 478162556 622339174 802742536 140284040 395082923 835258320 846170943 535971160 294394826 87830022 520072114 727941328 393476688 293991780 405563954 231682366 179105312 905168084 121277495 723199970 885912295 38661446 837737402 823118870 758849251 463737701 242339856 248278129 25428626 703918717 955326506 152012765 809992905 370203943 716468206 405428836 80684868 794839460 398276043 721126492 363954467 53938279 570988041 911172890 339318902 213297202 456987000 194353465 382095968 85342134 239761975 567712330 916486030 143879662 838720434 603975584 419615677 258241851 780375873 450873648 319076236 820739711 392037180 559552058 329907247 410847746 410026554 619607926 362422324 677562383 590974885 779532563 567393083 181880891 377829285 356544827 960493536 183382068 576991745 430042925 367389827 452994447 907902364 321901949 726752253 146483973 551445581 413397130 852212906 352217238 804275671 580230532 477832407 643917574 271980088 960694587 183665253 473782260 366764627 862030817 480811758 283508637 392056891 376185391 846634056 41845888 153432484 334448819 358273149 960157239 414691771 829459576 525400087 93398625 147377346 223246437 223637600 965640150 555568942 357649571 240500524 410959184 699580737 584774483 19891364 366788445 249312582 201257735 988570150 825843589 122927998 181692415 810838620 172067748 318261902 580043874 288394475 636091219 264063238 915161153 811104677 807903999 963352614 420918325 827593924 654410316 146560978 158423639 452313968 91028802 343984987 887627243 751719053 663332534 71724676 978936757 461256954 434228180 94993724 908669365 666070066 99576797 916398521 550832851 431673070 549205360 243256102 954007346 323825702 735018718 945175345 37193770 156211192 790213430 157075452 223393799 846854343 29953272 550959105 464870278 951653946 76577450 902753160 114740069 93931219 555068799 114346918 516234173 184591394 839566704 709437130 756553837 452412684 360712145 733376010 67317947 432167004 909607825 107216146 990650601 93905835 335251892 793265592 921674108 32910616 969299349 733471998 67893613 899641704 600540478 508738269 122854322 184135761 461011342 22371433 860749276 210724719 655207262 554435535 383121051 792322350 511383208 204145759 355908618 827324205 535848 845508265 671492826 471872045 879098495 489448668 217162803 349432621 585547134 228442828 696729867 282665407 88443932 653927212 873368862 675522319 176930811 299481002 813432560 529228743 990387837 605566505 256470694 7244758 481470409 439452846 518870230 69576062 767495521 3042967 576474909 132264316 675796711 769864093 898837624 520383820 242871920 42116609 932718544 240776843 288453088 576439510 361373217 958766097 407082617 753294052 609876841 740165660 464879150 308238243 792550964 650757799 844524997 251571715 973922032 88373014 31957327 96391029 55412382 436754725 82270360 999116299 683713742 314786457 372676444 341008907 479909417 648976814 690758458 121217678 710038116 426115392 578252674 660469663 377907813 101900392 942717788 708654698 951281149 523636565 880395340 871464291 407307652 586717576 198391981 151019816 353948833 893819301 859280323 79511350 251541213 500946794 498186684 184065853 160154973 265438706 320660727 743649179 978676619 83520778 593476821 475921312 252726235 881672086 678806059 178216999 699954927 454767752 437937092 800372943 113962530 645655431 604405850 187956421 344237690 505091208 428127816 384292098 343093398 505897202 677952748 866411988 381037756 949494917 51503847 718802955 128852490 903785381 913480845 658757344 5735233 619679518 980704499 923803733 663184409 516402932 217418416 251983635 846785446 987294699 560472705 780341637 8376236 685322922 627362339 561911915 347253715 803829939 498081585 471783491 135431648 849185938 858123950 357870754 379569135 462066797 270658590 298943616 10835084 857609168 981415745 31007789 604784524 740057623 110405833 219909508 663321100 498600245 179908796 826641434 259426097 447350191 957178636 248991521 111516426 83552707 737307611 849332581 707511813 468775021 200265822 124150058 745656608 396703659 837246558 902004089 913496846 275793303 772091650 300079496 655528676 591792843 562432640 675684608 247909 310107253 254953445 760824355 436977974 818005834 497428929 506755337 220387464 253425117 513821348 506313742 517101746 963684964 795144990 995880832 228912327 844943920 923293116 257696259 210919048 997260844 745815662 824411402 116454771 724070424 155369019 445586623 856258277 507821732 717706249 360100146 734792339 800683667 918059400 442531270 826175626 657731140 192697118 11558292 804050994 554170887 588023886 696335704 632260063 250734598 867766077 242410561 288219676 579023769 397828154 819456429 756098813 415287867 180805424 822791032 735109018 918131163 450282711 132228344 722071070 266887774 679544128 981250098 745981256 553384571 92141096 884119275 996375245 494937610 971004154 50218017 924579384 953830163 315126800 59147364 849761674 569999543 752794920 493596144 394401359 885686917 966542198 266712082 298842785 959997905 585234989 941845258 693709495 472485919 505750569 667439072 773577579 471483510 938892261 440774063 439854026 664883937 115418300 671801693 854581066 855034289 851358356 981262497 671546514 680157280 883968389 578066642 215441903 398271476 327157044 216794028 470985436 236567267 904472687 12515997 27007880 414944731 137035648 304722348 710994743 274524532 218777927 335702202 999225337 797560963 740425205 424986908 965250001 771127341 889674545 9610558 399844419 118150842 787971715 494434835 226347396 847592986 471644434 415320214 335544377 14930957 555537281 234365035 558742107 804602151 695245476 664520469 179775337 183598102 210888855 362508300 385403601 749731198 200751610 173797189 220446650 295156873 589230890 320570566 22208964 118728204 639965747 493954104 443370027 104923540 150615239 132963936 128617471 773177666 226967908 801793969 636024724 596248347 648457867 407239203 496560673 224367670 701807195 822179784 138735373 687425863 976909352 99675502 189026882 814575811 470994759 228607506 49089112 27523715 765203776 427377124 305829955 749431542 149428198 483747383 855907873 628611767 898525537 698919194 628100355 911537097 519547256 688897516 113379565 51400699 325069873 263936826 346419312 81388846 713048581 176990565 921828774 920281382 723694378 506136884 36833995 582336879 318964 824134023 408004680 987986549 631487835 172087623 38171600 663761402 669950332 755228170 568437989 281133987 865688065 408587193 879116624 217328042 636565224 509512715 894099450 367095736 283504520 902838333 670163079 987173097 643460102 572934590 283736706 605264274 937073412 143796537 394494253 869758217 858840903 239399702 166497417 938371091 310397962 916112054 218943654 485345442 549342021 366149725 766917419 598352605 508293078 852722573 498090743 47387041 853190676 701024806 524446648 105349445 902044789 736965552 509563983 104288294 326890305 919703810 698046371 860159420 33958909 706642552 232891098 561262363 893609618 568934138 351851354 591256970 467108480 917946875 557376097 296657195 126222906 970340577 362352810 660218579 207260653 478923135 25544267 922178095 686648671 47246594 730610677 2762075 429290484 112974957 782363341 767294007 712991196 97998499 955619469 64855574 711246431 231244426 874810238 866232009 552270667 814245591 466390567 666875223 319240798 335041347 147596937 30670962 358049655 360181946 786336071 532242746 716111442 42120817 478927795 205742595 277739837 949107637 297173697 318553649 751154104 137648584 928251864 231202636 174840949 58389722 490587333 185523818 760597924 904573309 530060450 904244999 534067511 741786981 717050641 762466486 687012944 502039540 800578013 321530421 721881354 672709011 987501454 895211498 582591283 554991946 175436975 133075408 183773277 308249253 70686367 912129687 949944187 756956801 636006821 641972741 828810148 570438558 954214792 652843305 301593375 757893260 976437118 597666206 202105239 625242234 255224148 243278137 996430195 745202606 598343766 244492047 277135315 145642584 240806752 893201419 4664848 417928883 771028972 439654960 633575108 697077230 786422240 955408657 443255284 13582567 640812174 191559962 560774752 158534119 213897312 405550446 512784356 508493063 828857209 51345002 349471072 63591282 163072967 673924715 925819665 187551234 227827096 921977236 148863409 971785610 950318458 762813717 842272084 250941345 802744504 779726895 575652355 451998682 599769493 749010216 391865064 637396999 724918527 162535160 14262606 15925966 106334608 646551503 252793360 563299552 879648355 75826047 221061264 391091737 98879488 201292285 889820778 932303688 674190902 906918352 933717850 374849168 720748426 919522945 233616582 748858342 950883589 860512290 809741952 733455347 635756739 581727730 368746031 569326931 571496220 217110396 169093593 656290241 19526360 575031331 857449622 431798525 363117507 932097331 255394626 854052476 307138533 287559636 843717415 962010081 60034172 37539966 267309073 852873438 902993609 331425676 134978149 164880852 69530801 588684792 608984365 76831623 935284095 280549485 752814465 217453208 245936030 248557741 232250830 414067714 694027051 722590550 751087856 502905998 480109057 221246991 66537563 153224450 917749737 984479155 791275275 585123618 277028985 598846751 856985782 350415049 408041342 232537466 577174421 206105356 122594076 782732492 950761976 631291467 788205588 336771939 362888909 253764317 68638930 354130903 328086975 974132258 429334880 74387089 611171070 532505292 340118677 892477654 39822752 871201672 143078900 708859091 195164921 202274256 491017167 975465972 337006994 247375554 702614000 769684475 63454838 41445119 851023474 162524018 368696106 704110658 286388083 506433259 996886987 81871934 247767262 99025622 133580985 127096891 63354600 540888318 858583891 252915040 913035204 357030091 447103613 307960430 324918694 429003237 807540234 284691729 915062370 486658298 156613417 723093781 125941453 734841812 110903588 284671705 955226383 571456738 467243797 524223684 27488693 846839707 629359049 15158319 197797861 953726190 487639110 884101907 578375177 829505519 665952445 29793877 976501894 379595687 639433794 293057965 218238678 241354068 96957452 540483208 678341179 581483449 481528117 126004310 579737885 628474254 290918609 996631120 87963221 853533260 76989169 470245604 526626492 989045253 355709103 861731695 452328918 508106711 358717984 969821751 571714213 556440799 426681594 732655515 138193315 74770146 732980525 187105236 576963604 800434288 261686774 3074813 642218505 383157191 995438068 981616501 629372091 274305358 889316883 119078541 937108091 20898469 443151141 143824627 793819408 542296815 70148099 964538859 768567975 735255399 533312422 935284839 489876740 779360945 506426838 694022275 629669665 443042463 112638131 433975904 102703907 345379389 59245808 50482855 52098668 520816133 699783904 824819792 541619853 292227532 911888252 182821874 319290174 829422576 483525205 622526473 301443512 763450491 977194577 722009983 601481426 642813530 16499604 952909917 609498152 35590424 49688513 954807075 202746922 340131771 723541936 555288043 906026701 37647064 273373629 955219483 643753681 36879319 227373704 601674536 673184398 381496173 705420519 164011495 27768063 828370632 658149322 952770493 67010451 906155671 518982641 715956875 748307840 482144880 513912740 67362444 910289172 707141113 454947466 860960959 288007548 746269188 236819032 553507074 800846381 623452510 340610220 15660303 286411080 2248174 627830173 50822351 704408845 630328229 181060520 398121243 233568485 962325639 137887357 58017412 344348476 590728710 470295031 463837729 402647205 860771411 839131316 616285899 159843644 202628404 539809557 615092565 145284446 268100445 503714571 267087452 75518483 690373379 15270937 690368021 273037225 201432950 894790449 404950165 520362400 573637659 972569491 486787740 873563830 640534217 865848451 436509056 154258074 80199333 136114474 102659674 908068772 387078626 29705574 488105259 402730406 193781437 995212470 439296029 954368845 632915112 482758637 805135704 691051723 438470979 772809879 799951086 278764764 43789771 206600998 851270699 116968148 921001760 372585002 128699099 391942555 172209762 149137118 812115577 107355867 71775732 270133348 831099106 87385564 159828650 366494828 486588238 181930673 887151552 175390906 193530057 755442406 235399513 97679383 608586260 933145563 982053857 876655916 122288933 665287947 74025926 347057698 595636872 79156218 699225321 31828631 703575662 340296569 703508506 123365869 507589838 639652961 19263892 438408317 70432683 482857476 81751151 732050228 103614920 211242034 144131852 988424011 185032946 669254622 588807139 382942758 84443624 249573825 825401307 129827065 409903554 836424186 126044934 865325778 766982145 820848165 454244344 147078299 260371858 676282416 769759385 18555021 51996273 420100581 466939753 469918540 977628977 199602298 655497987 554607959 83780889 254283982 358382407 252207741 269058453 817358185 560712200 754051475 297964964 331639302 343294178 376960654 738401154 382902326 575271290 986144848 996505922 488015176 10861380 179719651 567414562 916319126 138829872 732224591 733488588 899241857 906295379 599469898 785743981 543144049 314362060 203414298 54562233 595527454 929780065 528702983 323186165 468982253 683861652 252391244 959277979 760078020 186686351 7500883 124465289 35968255 497877863 357102543 999162594 973205179 833004866 735528243 408074163 754869240 629571764 113233753 686986292 489747690 614619454 12663533 899794054 157799747 631116593 765361222 484734193 804748512 24161979 851423968 119180050 61879487 726885468 145631661 938851669 397520325 949603388 896537139 463332819 382282917 4860408 123219629 476320344 711522788 677971804 768213339 702456217 673656932 387525151 396693597 155124776 242148915 27515853 355364970 291506655 349012154 349404804 962501808 12156632 464886061 940094540 740296599 305844124 759168624 978576216 569282289 540350877 886154721 94507583 794728014 742492845 353101363 910629073 465746889 342985478 813884935 724840235 344509435 445744212 299707132 683013015 923903903 234189938 923799385 76156984 704401029 211080684 980424575 183200118 660957268 512898806 209690394 53862241 61195914 269646204 638060682 783919920 29555791 151877947 990210591 507762974 648587403 867881641 569402924 254988797 749090652 584981618 649676941 136204539 825192348 471634053 1625161 801418648 830140257 677087959 859536898 404281046 719557829 735040425 692726334 890243306 332945001 628280568 74565336 821090981 118263652 858621348 6514830 439327425 822824046 491185431 149874424 744328414 979739774 20606546 995249277 408549600 270406599 648726707 844673108 7605251 442325130 574855519 953981267 390137621 116868803 203127568 733386229 52316752 742216587 204143413 363667010 790688894 625888051 456628292 655518489 916055823 659932978 766001796 974027233 552404443 227827622 548850653 517903360 629402461 211379268 785200317 992069269 158233780 147684248 712124721 9205340 158020566 461670182 613042585 683059256 182379527 681002522 140023756 457084393 298405212 753677437 328853860 972361673 101605920 435377948 818910057 567178464 173969204 881051468 474474495 288427759 488169957 430924793 819376735 500838612 449725577 724409728 26165310 990580678 283315222 85120860 986252930 872716473 396537287 608478784 743236437 760840724 272370635 527462716 798401624 295260716 672747138 377938034 858147333 812472054 505248717 855750452 921686034 183392303 577580899 671209603 991933406 390563382 513595760 249300809 742493268 918000449 833434733 344075589 983216773 432996380 132665483 773710401 835976905 319474213 512058559 107661132 619969329 969196095 449034403 991294204 931762413 403914606 819419453 37375651 935891361 770555581 566156661 826425220 522523981 657933868 654804593 761359235 114543034 994977202 605544315 49907938 886095330 121884760 559621188 121770352 831252427 825526248 602428 682585879 295009762 205575689 73752915 563360712 746515151 953335100 471963194 211822628 497210202 125507832 483989100 257174149 654165012 213544842 202757159 857650558 275392889 552589928 487367384 459909795 123768717 772945384 570961629 649737400 720550083 471099044 704508584 967374635 518918873 682596824 3966726 562142539 169180294 462966453 332259642 902773939 23098896 991439808 654434993 28885912 168421459 869253736 792188733 12537294 807973137 94894304 727903588 543795520 617843781 274910287 825544428 307262991 465186727 960807679 565834169 783077302 803041507 308891635 373724736 189760571 865369368 310562903 549949215 279966138 357378373 149326234 907589061 286454370 32129578 357095117 226079775 597354076 8135728 301302756 189629841 808387026 162135252 267431124 59953339 149360181 529538609 956455719 968127782 616655745 538072189 173711338 512838389 39081698 389124189 412189405 725207956 768361520 14588256 225747707 83145213 281690387 394897721 104898998 194867978 961021065 940832492 181700953 739232420 31743069 850849973 89216673 281744430 722091798 539283435 280147048 341746605 802803083 908455166 212524023 561714884 566875876 962109767 918100982 596504486 634458096 411136410 649635358 999875734 185686326 27296711 155280215 67588516 138041713 665208360 411341244 584295793 493396899 842490678 187416042 795275307 862505502 335204645 73014148 483498072 714724761 274359450 514542908 264007634 688821323 26765242 152517833 91584249 642619369 362841696 818872198 86943420 307205107 153755403 328124192 278489693 55697741 729442050 548447786 309909446 101368376 832399529 217650125 905847030 391866738 982586758 188492219 231894364 224279709 938817352 268798297 665923168 940857377 848022626 770882924 432015622 409558482 327988227 658413862 784092529 862003462 821854601 302222765 507187028 519012087 333103097 697640341 18445723 306598564 723276409 272660996 256196336 86721289 318589915 790586000 155990319 338303997 917614871 900837076 558148975 685525925 558950474 37530708 392715037 936570718 984359395 6941171 522771014 476674895 645406846 313555169 118779079 874943693 508206558 351645908 805872049 4556048 67610553 724480693 520749615 134639743 864929948 536158568 170949855 576676384 348223040 103223743 98824624 564970 268394731 301288804 453392943 467653308 817559363 923370792 655248139 615725897 762402932 344418975 195243122 314035632 564394833 773839845 46500442 580488931 568053751 761732713 242921966 517060389 158924414 313751305 167816734 420157818 382603313 482304213 82005845 767716413 479664336 367770748 740522682 644013397 639788872 809296149 669208543 245043529 923947238 853906435 236642574 734121803 97978318 326535937 235531342 387450124 74673011 25681458 718642508 420130748 248477534 624791396 23626308 281629421 784493953 491504168 431636269 428729499 297745899 435771238 855416730 100524037 60483804 779842912 612801854 931731666 986019541 332494892 991976020 662278212 674000366 645801730 928406656 50095301 579730867 622012702 530904156 533551200 388889906 472797809 301534892 75515626 752183601 323379062 509725039 167556790 557466925 546915751 890558292 993207498 548540868 547838328 639869833 565419587 343778767 500144030 164200769 710335558 858084745 903708355 87395712 503423233 566584650 569118184 510523263 361279660 86569752 841034114 855429605 512172479 964092097 21955414 766912150 138434364 273241413 333570794 204998464 422400108 193002091 766437303 481650960 472873604 392882042 823547578 8699686 111123396 331476226 518289926 166085106 83143304 67390756 186807448 550200010 469869991 53362167 681783129 726854387 652499095 738086704 553599166 619881344 97245118 801675890 645099431 522899671 84267681 842275679 690597009 479480224 338999164 382856714 832184813 821823078 882794168 667496978 573723283 789885175 802243897 325361688 744735826 912141104 362071321 806159533 913468214 269774001 713929957 32449822 770312137 183605638 495909025 873559442 32187819 222856640 424349125 107609459 789804741 383047132 799621706 315168481 678299156 262689576 839860038 297288372 389271002 690622427 611453201 832647715 69582614 300438106 825587244 140016331 585578105 70715577 25806768 236260493 662005172 49854269 610108729 202297918 968780997 459155880 183990796 21486265 857802589 441415835 290482674 27848063 205970973 549182183 295436034 829695262 656725457 50625940 917214120 237543157 354516620 183009456 991182113 190115794 659085100 455904078 382726303 54896088 185688621 101099412 148357377 387324801 947290759 719998539 872308226 31132602 513947248 432501865 852713017 300124911 307564916 5818553 95929299 865906536 741662137 575733053 668153406 51475942 725604116 630659369 176292502 840855601 187707407 534666771 52721225 699912711 749078744 438568446 81538503 144056654 712870181 718641866 684884120 787111105 954574496 715745146 586847460 555524047 987109316 207109313 685742958 917298380 116812803 103360465 524458483 775233860 858627165 467298934 68751533 121867158 437575528 320749674 30277468 629308169 801907033 100236163 132342022 371728212 70494291 114790918 551123507 911273940 712531713 13966734 569040002 295859455 620733401 100393842 189740588 704410918 191716375 200721510 475279287 225361855 600750715 219068044 832124617 781736430 337907371 576144307 403520870 159097499 926019737 620640881 213787462 774311282 542545296 563883205 497654288 485840674 709818293 341482007 569259324 773950054 755153338 10969933 376760076 378093096 660208111 682829715 458362133 215335991 236448689 379437971 404585493 339613608 297971017 440143367 12717195 955049144 844415799 187163517 191384508 656497507 106404641 478966313 157823024 224212714 796950656 676861774 622796122 772198576 745390461 942875611 875814255 921146184 534771535 227982943 43686509 824812126 397620933 91420904 204235192 31972168 305282962 848496730 974888581 588655406 734280427 766962255 458256249 394446132 57523848 142554111 346076802 781445596 404709590 19159488 960093358 164344159 166154666 306939337 99271218 476181814 160197064 756998425 62468016 261797647 620789510 517903038 488931283 426082848 38067371 70188418 76292669 263561910 134638836 389119076 382719858 596984697 18366640 633384437 856746520 282953575 354447341 356408006 267956092 419875545 9767491 890978728 185757457 426014583 49016590 474802021 536820023 820567144 691420200 363808646 995534075 120804576 47877749 181962617 451837825 123909263 495337036 110170168 52991045 439921962 965881582 975633855 116324302 892171890 696991463 248819432 467631798 446528896 672396039 597258932 443838088 914182980 975465326 678443414 526554765 929404217 185510222 932337554 878557774 152490130 64029565 661467287 510268897 158032167 900971174 677904654 890253373 900633808 653224781 435306860 145052374 855140268 956693935 824791930 514074353 468836985 846642982 747684142 540935346 409129241 910529162 743678113 110142901 869457617 715758493 949792755 774767616 606075863 843005708 732116829 426532797 335546255 291300999 604823765 706531725 292781544 754671667 233966980 496684153 787090907 382240234 184064410 480125651 100554044 975200349 636812420 375701189 63616195 669073057 469836493 389310780 37785780 812381009 586728317 643684832 468423665 677675289 56377988 225521115 99219307 663283697 390757595 944703359 644787520 50294735 286224575 188916497 52916663 179325757 891356722 470358573 346526895 814226621 740949597 361616811 968464651 3509473 612855704 730024942 110852492 893321521 5527608 384867617 710209026 178883717 797869580 922218601 388467987 275251877 786260154 29974888 436671144 672342040 527236471 873241208 709421603 426571586 632090817 679357211 767885293 465881490 886338647 969768940 992907554 991629256 66498433 69495463 996804689 375213032 683750963 761018136 957009328 580547554 781792351 957509604 131834038 365134723 474421083 171473830 385713973 526477982 645778646 916690433 463597718 126198848 558655298 650950584 3855500 574000909 307692289 405635468 902411357 76516639 547846932 198925886 319898728 409774675 25052635 30866654 388388907 795433838 126393671 712562811 20640148 78889061 476793153 231296519 869202899 11002530 244702241 210333198 742667109 798491470 565056073 543128772 11489091 155328943 738348493 758971751 174976738 179521889 206837838 318184001 108139764 525999275 142325677 507395082 679609319 358443773 362676903 272597933 855718736 786086317 345051362 644464396 12084376 386331513 477147404 905971800 259197038 662527580 883957467 305299175 679149137 444822646 540902713 839332802 722610717 629176481 611344529 611116657 506719007 771270056 590144420 812937207 502488037 360167750 466133421 753710950 777485455 441858420 78229738 508856865 351106447 452954687 739088363 933726208 58101643 289863436 607702906 670280316 463852870 24611867 633184766 142772385 128143372 925934043 592936631 212990085 986341528 386745087 409726822 457470075 732741054 374897919 923839486 615967637 226548656 999405419 120889027 983593351 742956457 894186460 974355395 54079488 95335995 669494473 961473546 279015301 258358438 766251148 516248217 853615543 542150314 92289016 140508124 789635117 659132343 692899694 95178445 708239509 269687368 351088333 140651561 803336455 675793549 818714825 378449108 37315930 660632134 609300199 885329672 999167708 117479990 523104314 879302812 53917647 463698134 510545270 575798543 180589589 697738115 608533761 826924892 310891528 548237204 576196609 726462286 193496137 572965279 183598767 975446275 561973103 302465479 299038630 730524444 245042863 504776437 27506503 332620377 738077961 896753444 83334529 883938731 354635311 49754672 880029758 664493631 722376510 431532130 830724149 697140415 922443529 768287788 14342374 120522029 243990 437392949 803826806 443070832 855473131 211588984 212922789 388917211 764257135 912322508 787189642 417771680 272487544 748465353 640219693 948021192 54955117 320690378 375542976 301664411 737390446 312558739 325680811 529422671 13813663 816123654 290190169 474463678 429651138 186305709 332059024 137864681 192942034 652625196 212431166 340344836 828749899 993690992 889486008 78655586 687032877 623005492 293789598 915838340 953757844 957737966 575020926 334222707 958806202 553062979 100454138 154371689 731304180 181075881 740605081 174395277 812364643 762729830 232547354 298446906 340214134 909881953 744135256 3143259 372662419 947382095 377322761 818077258 758756778 420486427 88796394 199308849 257017510 6998745 312631281 928697692 55923454 204088035 121283390 340458293 820652070 71261053 401366644 915903458 89211483 867189102 164011424 153635167 855881769 904823335 482373106 328360761 621955212 807577271 223073263 937803129 534355606 447513810 230861103 123780629 622275083 713046707 168766815 36163836 205631118 96257554 93904370 246806107 470576085 849418485 426596910 56558608 233500967 138982668 232737383 188827836 623002688 106924663 598238623 881515409 629197987 764376209 500736710 58578424 591087683 677713024 199007274 828333243 632917230 683138941 134628755 441714422 288808315 93888718 706678572 491264474 298641887 77083114 912345316 927730019 167027434 241927772 646009959 598416262 867289704 308126987 879956611 129118958 268627780 62741048 320892376 521682698 352500316 413450161 171176934 615217829 52555894 139842532 864113616 615043713 164211345 420347372 976731678 47180528 159975328 948225601 979183103 682333572 94033123 86731212 768400124 384718623 501645199 46856483 647275598 988398552 472582350 795786255 587914369 575997119 880002247 686489211 486030607 40226202 437998588 279044419 850026871 162601418 845482722 165025974 675015795 406015630 645621770 303162912 265384996 276630101 438010708 362001597 146725452 568739148 434279019 543239662 447279102 221917463 452081771 188938016 581068770 258585682 508230353 255703874 907011139 627525507 787536692 864257324 721605982 241735317 923389835 162432830 966643556 11323499 843188133 820486374 650510109 647647017 743145229 155504274 159678171 985453545 129201951 709526629 89913849 448928383 757392921 682012784 591530164 485166046 740271082 872402156 233502937 367468496 99496718 369579774 480596227 481406490 825081313 166834044 295826229 803590128 965041122 872066605 919074355 600723670 125681156 478476202 569204060 102999037 620677974 185669471 892889972 268519389 779013839 777572863 166414851 942474817 117180428 586986770 503789086 833745791 407003281 782874062 983155894 736506514 698636593 487981453 655980578 600222852 915761921 375989483 554578052 26274672 214397320 828266120 471066625 504980732 326273469 468498744 125682444 62092032 279876556 564247756 227547594 956785931 269376339 211713863 666245374 54029018 966588460 70814038 167309900 282515532 219586519 662164851 891031069 13639842 693798459 834710351 886143062 151256817 812044669 143171590 398311177 409396696 64036606 332861961 525718461 969812348 262577722 992458501 290939250 953675785 95573396 427215375 84803246 101057712 504235174 173891376 612751289 352753406 208546506 949394669 806838907 20169543 446402489 959479080 914040176 974071313 856876281 990537273 433666463 403925611 359385394 754624475 701536816 728970932 440865567 90909556 858220961 489325476 570816243 992361754 890358204 992708530 927544586 792491963 821469654 582712748 252585286 578814014 263157267 36329703 108922926 896105606 463594924 159156102 589131172 173270893 430899408 538120225 122170006 959442006 711640935 588436693 751747486 848514842 61991077 809425502 447273251 252224885 1982851 633297277 509254452 688018024 807811869 786205105 942028849 544251411 693897338 163923991 54146025 937322327 141373318 273196271 342004275 540117751 544978035 558202224 383837567 63840326 683013258 952881684 828996960 46004500 47848099 77523702 911329971 756831979 24736619 961280545 751482067 125308957 97921922 407083267 560135542 304185981 945096610 102267130 438546573 672555039 119591741 932791596 457244878 826791379 677408962 508877056 28420311 741148669 669545625 886360144 911972600 161120245 776567968 45215342 914925275 320422497 240574739 647241884 670686176 677468549 782046198 210645879 710141411 299796406 485092120 787139047 630911230 778600765 335532032 714731724 942572097 244977722 246104786 15955809 519707788 589403943 163907944 934347174 976664524 332943900 380018458 603398465 581101330 110926973 936879554 768937463 407263702 929196738 897354825 455498400 208101795 931332105 875286641 134860805 564657452 115177897 183561191 881039677 788828943 877996911 706210964 415317223 800159608 587587656 429069185 977999016 253020293 984843636 305541609 757314630 997868379 378870608 451904361 304758370 219255379 728095327 220372955 320459770 94823657 678239468 575038047 373698574 967332808 670498619 501807371 774942126 792671421 883768466 833602290 764773372 144432641 260064634 304464658 995243774 695893985 606846191 614935976 535458599 648792559 931169588 126863062 469454454 578661593 813101301 654976614 394847009 854785289 427799255 903548915 90183593 202453954 600259003 703525417 114787914 378412352 551322430 787608683 989066654 803042650 233159485 894155389 50612395 772935654 92595327 500823334 732255612 301831191 859011930 767548492 41889969 988202062 920143763 881635960 210311014 943091967 773608038 881936505 305869954 741501233 734811660 88336948 905680083 802258455 655289026 513870019 631496007 601092522 109331184 713640442 636772840 280584206 466640002 482715851 753325426 727789337 315052853 206298789 308267521 678644804 34902043 312250662 396595216 194788875 794218782 316666365 532663937 327745467 981863257 642342353 386808492 31668755 529575987 413996487 967513001 771248440 574352522 460969148 451525136 79107429 314002523 370390372 386771400 204450838 635517676 655325337 334762901 692038801 770809744 965855819 795003804 148399410 567777120 699397733 362301192 772125635 339453564 768003949 654957982 153148849 639457212 332700600 456569794 480397878 982063889 14534851 904735485 945433519 262287289 914863370 994238474 365670028 326039285 789451918 948788436 113771711 49859550 342228889 39989367 704408865 611173064 406729129 191388548 585324537 929360608 909182996 936144932 747387561 739412779 344855495 262172286 247950800 155997173 294375148 545346037 300344065 628466777 464477897 373177189 362315844 900261326 117354297 126289652 983919714 204271325 124656934 657548935 157512483 28667844 425779869 889717736 591666970 350628860 746477414 481712834 167903756 934120313 414953990 719110302 447619256 647205243 661836931 909924664 119135766 532227754 183940032 929948167 26368785 868533638 23621389 765441528 474711830 697972968 895050363 149239404 883819644 303483016 783660778 674074297 416847661 814986589 587391807 784996134 536865161 583925072 75380883 26369984 667342578 871295951 588866285 196970312 550548965 188516577 331872763 559730817 168801041 432368980 291887005 91766106 273973250 321925503 512791046 968686793 476332898 617226621 135832844 728391905 481290839 191157100 271190423 297012882 819838603 36079923 925456044 8532051 538221649 243136824 413156101 780558803 446062295 206960646 745844302 309842334 875619664 351693278 683899903 930892733 104604797 510039130 819389962 436312803 990660213 144570290 166456487 925953421 546747392 161567994 291747021 620861852 76932617 568204232 989404984 951777450 167360223 426383622 756637252 870784182 498973790 826539230 808671922 853612597 486842408 264439990 297265170 490459609 872570771 552142939 267592558 242443616 287906499 263691833 558871501 473972348 377779587 298949398 138046135 28016270 112874 308508121 793309953 705759116 493095508 100410805 37919607 790312585 887103242 16908688 225069109 227537362 252420381 586297983 541198009 97647298 924979206 219910755 957099880 760655524 21987140 664375269 881599116 319619860 983171816 595150196 217808470 618078429 738840309 41389121 154826844 786257323 824042925 672541276 549097364 794531661 850954363 560197558 828570842 480337380 400098958 608450072 846353170 988137134 681678600 37201211 546102122 260637864 622731059 969777273 165092759 803083117 995476740 153310570 713697003 904757950 614039648 499781566 709316921 627956702 218177639 323905124 557797756 94526721 776826659 383306566 422411551 300607571 73550668 837838496 881742080 580608170 32537267 974215865 993289163 721330390 828159271 271577409 249912404 849533060 670459624 630419369 83128883 519151603 183490128 593726175 823089821 647413132 950333717 416004940 741825616 492122095 324884421 144635707 229636602 784415552 289718426 906830444 766847208 584721030 202085033 368820114 248038590 580349938 454152371 111806024 874749293 147964465 944288330 233002331 238948879 628916707 343244522 511029343 933866489 109818540 590927949 370118502 904886478 364616493 805896487 413874668 538196766 371643279 496416054 660675831 958956681 843474162 2557705 328448541 800467283 701812223 657642625 406581858 572989999 703010715 45936574 960713811 889530866 818702567 432213385 716651922 52643213 462684484 259010234 195091432 702901463 348531337 864571633 725516150 379021166 774256585 744686322 172926768 193890827 375723503 913171466 187619526 382540753 734749517 818123083 882493218 629066666 216050042 344484253 111769454 259456194 72594397 446825680 565548139 952262588 566141123 834519594 821025734 634348192 246425125 771261441 269165183 626311689 315007063 65329841 535737428 870421073 939216881 839937168 595714671 791056859 648391725 302935102 411558567 899435006 277684278 837845326 78378882 158502055 767891295 180702377 633729670 938775536 507001045 951648222 840670656 882002431 917475460 143045700 648059004 285216679 884684055 933648833 825096327 604301544 365734691 605190790 513563152 219306480 195383695 846433549 306658995 617574057 381253860 720347133 316777560 920684781 329605182 714283595 702470369 610373549 41825795 751693784 965171258 595056442 276094019 983219819 387602899 984462592 389405643 772670487 468672066 182415999 147710442 8180554 727177735 112305032 995688645 337808676 400345854 991856734 963774316 944893341 740329833 880323017 674648380 796421718 555724464 590228785 916895582 115648276 517133786 430057175 610547781 643663817 415527232 666275398 127417628 61758994 241007479 312606823 889576169 505549799 191639124 135128482 383315963 525316305 448252736 12947141 254951755 257668978 262914275 783693852 191745439 403986241 402074582 235924350 625653562 598457235 548236461 847147978 391037939 895462906 706119115 307924551 996844222 610642188 520383844 778313947 719666651 543294836 948145127 690713797 904493250 443582015 911047808 278570170 365006267 199065872 394196418 140609148 245998672 845337088 86615510 300927037 427737292 927056586 668447878 681473890 287469320 504919399 269408389 696684170 763270988 335149261 24288533 865544757 401656532 92725634 352631699 961359679 284028525 949109837 679332960 456565671 447945441 745595857 613070215 175358256 52814975 302568698 640751532 709675253 721702463 953901813 277172414 748946075 489548999 244684187 902118336 599740456 567030579 312859053 912231886 874158766 567141457 600239311 165097385 359719872 699765664 462457217 158439803 637017434 149244002 175587972 146576836 11365258 283481238 252309520 622616142 18880011 94436075 674918170 781371402 809732922 437161865 777700167 809659705 523876672 345599642 948846930 646658641 734656565 773311141 810344959 930285835 453216717 232069082 340602948 288336567 876198035 589153185 430729667 413643793 397260279 779976538 637263415 934685289 306801321 258329274 597716519 652846836 16029063 559791260 549003433 197328514 341656620 22836996 487078860 917389649 689413481 186867878 207930330 179076984 742787484 164646030 885915410 523353852 13088849 943623345 375290984 228762304 472352437 234006962 555417595 255871467 145045535 457349769 192404233 262619044 280514450 767949314 998282253 329803705 533645347 265832490 197265751 826918940 492652244 165969254 879482426 940062043 696192327 139439571 709138558 419094382 885840166 30052600 433220586 287376187 259076176 362813003 846575210 856639281 619853603 450374772 944413925 668043954 657567031 375522467 772276261 158367483 205630708 118586753 760930552 656026216 410406627 441997515 693424909 761786842 224275135 42822291 847755732 60447633 163989501 320631880 437130388 705482419 397765343 960979208 605033956 619766516 996311280 647309363 363351618 910637032 37630078 397996840 525963231 631780467 484238446 65549819 370911614 100776528 32604309 450644411 888909966 793129647 184488168 634267334 996821706 609930634 111330895 486725302 119451394 691928140 442584317 21718444 808350192 22377926 940178189 928645438 254068579 617458958 827517961 676166975 989955250 219004723 476929848 745026609 688837939 948644170 895554829 246344542 717656525 161872121 540760976 470946638 665631221 117422037 124333767 791466131 619316053 722935121 905762868 672089790 923237555 83962173 553781351 679062192 292165399 967914840 582778184 838879435 421914601 567057475 181133575 359622634 669921791 884549250 405797494 138021218 20226040 114815985 849043935 87090928 503432759 396569806 113329489 491523688 786972612 502918208 872773572 471450046 680536991 958235644 434680805 521518204 66705970 777143339 470504842 933837290 620553100 610131127 246061798 712903038 603144914 586302849 231623785 332479322 169705146 363179230 174136607 927020615 833928683 66979380 419563514 887226681 396567824 7630773 277900315 487284944 5257243 561898220 192754668 69096298 760441023 874320334 601761660 2642968 97854855 211349113 666097194 435816128 617826479 737399098 62550472 916890899 35135116 144387018 312538872 49870596 935876260 537904778 817327525 803788428 570113908 832736120 993076062 350508879 629753415 431173251 685560 891066038 408042892 674009092 267027107 960600202 75133254 146548962 867623783 613883524 619735390 510672561 945533821 23002531 32702213 177191124 974750766 981198604 761828350 382303978 112897578 841455304 554504594 699681554 754011292 216417404 380494802 26521619 317596228 564856196 889464602 880319770 598377283 986179747 614565760 98851551 921845343 287906373 469177766 106882510 484150852 864487950 427718726 991773528 991006977 976617120 321462819 868967371 362078331 357840706 260001794 127682624 735038381 755959704 247690732 594687288 464181796 499601879 213239500 938965456 33970818 529241410 879088764 280100368 229408074 35076110 537709454 140398119 341077548 483318842 364722038 637657127 285625258 429244621 836309670 548555461 992903324 61766271 578174468 226283842 821085072 797053115 792153973 196257561 844300444 937306918 441895728 926990518 747196137 354073729 908231015 743160037 324230757 564668005 884234671 296420898 495451401 137406850 329680948 427444517 15868513 405584620 746141571 264874962 362959846 797593519 746331498 94863589 540788022 917084019 175497643 819282763 550306815 236804044 524742364 655349073 5291715 957833224 154142829 659149687 594586329 604111739 936997400 276942269 833999446 503596396 603705290 831358763 103824525 915744906 270761932 777771911 49686875 545807676 946809623 300885417 704562511 738046948 870839728 950377024 508798191 848932100 888421952 280148663 369454161 921821882 532825607 762862487 589237193 291592935 451655802 674729833 816802563 671408585 113620844 485756826 482170733 837105024 665093887 545764885 283076473 908582526 24265945 425488022 146442820 639021336 628218049 639473359 394895801 215978987 103495956 162903424 551394394 143439116 611017599 824016924 755717246 550556205 569558045 132134602 739536208 655706136 703296364 151415785 802306046 78079073 285525952 254531546 992365765 837311745 703395752 984155638 438519552 461701062 590367632 122780176 55755319 208298038 406982581 144436957 985939198 186445179 260487183 81344586 50806661 674121672 527162873 748990263 600213854 188032242 263991336 315753375 570900551 949181207 188602604 275045518 330201282 187939057 939616560 944145174 809320069 717870735 319180792 350794711 541600011 60765602 871230100 176270565 399918874 946934643 509980813 922003717 591835295 424149912 494953524 347944809 907300345 319294886 179747106 275013253 79650625 550704040 300894324 284409309 645206844 660755850 181003314 181189857 479926936 886901738 46036821 280233002 708292782 338326274 641186011 459691208 231362300 25002663 841163658 44834012 418309465 99374274 463475416 31983328 73191490 683040340 343104267 497077118 291213669 348100642 324521207 664963949 850974610 906950419 820166752 398447858 694957052 243226441 81049455 745696366 579336673 132541432 513160809 192738785 757354568 195778408 43264318 703585521 520183135 198524731 950669312 199200354 163662228 617885453 869011854 736868714 60814401 868949839 771650211 492227696 744930858 636729647 98984285 693896060 184913318 25436721 290881924 317245755 257668637 530525634 255603633 942581017 917888284 844389318 891191991 475399755 957842036 952477392 181570763 912604638 177997098 771539563 123488793 327787642 113993447 645518761 204449820 335642053 188384300 942644960 716703311 837667662 949938089 659570559 640734181 678752112 522944596 71433510 599581227 897793786 328922594 381435904 657500619 706404940 162499865 813175381 223673737 958979850 521501272 306614904 96857157 919149096 717505316 68050772 109711052 554116460 281450080 917531658 552547067 716040024 458471330 246068899 538650504 827510187 143099133 897347441 710512834 735515409 359657789 601291470 982080668 892725208 551362745 738545178 322781317 144866554 580893317 100453587 510878729 76502936 412267390 463743080 881994321 144747913 739733170 745456528 325638410 446877602 320353030 701677743 603746369 536522040 951272340 217083865 115107202 643780653 91858890 227162125 657316336 713479680 975053180 791169747 328563858 231253388 345463967 747352375 379572047 378708499 882188685 989816613 122435318 98395067 756258215 585070606 847087187 735498979 58934950 332706163 944935285 948734624 121591116 541389701 13300879 703891137 345252542 754587325 543952540 697746810 80278350 260341989 606008669 218054899 873617010 643548155 797353756 286687998 882749893 174717404 601400831 196941264 87402977 530213279 682485203 660736684 435330810 29192317 704708363 314189346 559158796 273657794 410013135 473059843 322410650 829590922 564607865 775793280 228015270 587540769 434811203 382165537 766964820 900605686 247064713 224705635 844000465 514992321 36461053 58753280 850685458 873764124 568502679 736796821 25108871 751625138 288932612 938246566 527814533 332606898 991253418 192837705 421238111 89891816 630530095 292328615 792858267 825920778 401393513 682733716 293620954 901978019 45327536 841754569 439682920 399785683 80413721 181058651 666255324 209168289 554511913 696738111 474046741 425049057 491914364 43031255 497280450 993743111 696934647 520888627 587470011 218306897 533229246 838795491 996991777 673263576 441357463 496087488 403011883 886959316 293556720 125179849 590195283 70593756 319861882 450186283 233661799 637061412 280015743 842063221 354490829 101571915 211329996 272492124 498514706 906402698 688539646 526182995 278708996 59334096 764550516 755018247 405748985 66244580 871200464 549724238 207521021 821668461 216523865 654219409 370525428 914192555 287474884 62510916 240060246 885353328 723996491 331990997 724458467 853929290 244929128 720065562 680606191 870824764 462723458 494490416 905466676 416220033 606999017 603055127 976342982 29945749 996217445 357038194 181430902 901977623 16548984 914483737 399797283 903729301 634776651 548945019 423222574 749813188 498759657 741770515 442769599 332883968 490569117 892223274 489424021 265508327 835093807 136787514 268607561 108432386 366901362 720629016 777872787 384254684 982486929 720294864 174594581 3513437 186410559 745335007 837081255 254299554 435559635 53401317 204815203 317948704 692778100 40560019 722197069 820077776 424560835 878818848 107193516 790401752 342188381 711156628 203199781 654509714 269890845 985927981 279665890 615833186 803627196 798886101 944943047 46275265 585003863 129821859 886945977 781157523 742321990 97380327 707181290 70494179 213298881 996009441 820715558 110338595 165347473 523757472 656828263 627017675 386407902 777035092 976099744 245253750 810414995 459892654 439110622 420246443 205672775 669224746 107098515 772703727 730492133 86434429 157174327 475125361 128929315 62878296 14744474 429606099 844351110 922521812 861699149 666832569 572525664 478130693 956728110 739684340 215378285 386364688 366839418 213608363 692786034 981318726 137603662 53657910 860930021 497486196 50953839 41586033 709318778 641526337 427590024 190973096 576820471 944355156 400679800 769663362 352311056 974821305 752923237 924892182 276449750 961892356 391407619 905578894 725137552 214461497 374975737 916194914 83491814 687850566 614190361 375789691 962984885 171724481 164565204 258104284 283293308 361893944 625111365 793358635 493544951 987982868 601805506 841481906 544015501 978343758 583688697 343995989 33926258 895527709 91427829 872671869 256148662 819108175 259103715 392361396 687430422 512880354 506673193 620278309 237339365 744763326 480326181 297622664 547095907 555852754 964826624 27674343 750690398 119784583 884983523 209369683 368331750 63032140 812437635 237974285 498350479 38215210 400321354 366083809 447919422 682526799 173238739 988084258 154839147 962149920 589082310 720523550 83685907 992853030 628721210 538609094 532147749 565034215 86073565 753715230 825524253 513002816 151531896 73671055 651496085 97161811 18822303 2844941 79752528 848017714 722878277 388759505 282253717 540215504 942345336 181417230 454116921 20929675 636220938 439094630 939118941 627254517 394404171 568946072 105929414 785960141 462045856 389811394 675094950 235906688 597980048 892801483 135000305 237556297 45649288 723410694 448493647 65596197 871265725 521831627 659465836 443490602 658145340 991465572 107857725 24960956 532358300 998070450 835612463 638227084 315623123 697830376 2664646 446963865 558848259 465422155 127263384 972880916 361676086 550576159 871649344 968627457 662665861 486854806 722496656 26935403 162660815 74923971 817886884 13765934 463612518 90257191 403925001 932307245 935100106 620480299 917571402 372837846 244675657 954991105 80297993 368104351 708574686 741260734 743936114 560372625 189881080 300112361 564914197 908689183 580879821 306000894 335188947 988740704 241036455 729305761 885911664 214286815 494726602 746594754 154010028 912832139 181554504 897551272 179368327 468468067 77652434 137175069 484136543 59876070 436357355 961642 893268736 490741461 923760977 89216948 476270997 319889536 1588764 249197656 427056361 42935572 236427497 354235117 874667276 729273733 824330674 817091120 363413366 848605870 260184791 402186706 45336684 505877446 869553308 353075670 842376587 351784350 685488873 440371888 885111509 106088254 430658110 735446095 324443529 615979907 468741475 824259830 946019605 316458875 150534624 20754515 575443009 759343665 610592583 896392296 946181689 144046901 469097351 323377416 890494634 95755016 689499844 680092957 988510575 198853170 68052735 361463996 520932609 275676863 118013342 977112673 668255519 224654293 275574075 122271283 268602317 317167007 618838010 533574839 272804901 538142495 307907633 632989055 147547052 558099050 13963725 893672796 865968533 431875959 92765171 964779303 169690572 391673280 763382181 893214052 327797549 42729591 147654578 816321777 61380752 796436332 306079054 257569524 809935310 669285564 61520351 191612880 858401043 570859115 418823173 582066033 891199988 406955175 622653767 971117843 404262616 970719270 73777064 889835846 378917253 979383254 562311173 862681610 217881670 41768175 948726024 862911036 678880348 802147977 879479311 75863518 225564173 471090150 356648379 183100072 647581214 316420981 242783532 61215726 236327272 438002282 869281769 976490375 804574798 15472066 620504988 756998795 324772089 478742442 830183249 476428034 848378291 912855296 90618463 537571661 139830582 382051254 173397133 947054105 976225141 964966744 304693613 241553397 586864929 197663004 594960900 524731621 34017697 816771237 457285153 221188978 508086747 129117924 563377366 151524290 253628314 602400152 308578557 272690227 778601835 778713507 318435195 204278127 205824556 952185082 570565508 607102034 665094242 991194077 737513134 437497040 644415642 137274262 784526939 865323580 718775945 290307417 418658734 868643969 864451943 491606294 289532123 460524586 735608955 878952482 814052418 381553851 13363299 502426361 878310414 159285086 900584017 275067056 91331258 229215717 819416789 994155536 283196931 828619028 422998146 792404146 44679513 444150623 693659149 588391668 310677276 386661299 327003825 227778368 287095089 933036044 983915591 428818978 390273114 273377320 914336986 208090216 950016970 400362923 810005276 781821318 10273090 805946813 774333393 306871573 495516708 966726953 540875537 616878821 6043866 419236341 26823493 79498870 127113697 12383021 796387957 44271163 408238495 452673401 202141231 933953121 53093600 602364035 941799496 886596116 795112546 649099045 526217981 184856837 825113770 32226579 918868345 842375498 659292818 289694015 953018444 205093115 546754468 476396940 854888466 487221149 595394469 554611346 92635884 388417927 295376799 264540482 796388426 333990622 332835632 719230633 33446559 388457610 347561263 769038927 564767841 740022087 731327442 152483648 323442442 465999078 782029363 759490924 589423840 52612963 616562779 834371101 358641505 43888383 144102469 775709981 453250568 283929187 707186089 82024279 285573161 41845701 100390889 798880137 415702955 974241602 788124540 172408415 519498469 389300405 686731085 406721353 641196294 289044116 573492056 491544951 76791922 32483681 968507815 986544266 241652668 609753874 768794558 261078077 911250930 851513715 706634334 894065947 153711244 854550454 236225181 365673396 349208284 314372051 49486352 807378830 661223547 963362725 114164937 945320086 277543702 999750878 404601560 945039382 760696098 492693792 88547708 239202491 491836349 485913788 863448766 524570095 603759137 392740819 250158931 393329224 193016374 57282583 957981818 75934542 914313186 559410340 281633268 931722266 154863234 999230389 195967816 53449054 992884404 769921763 692397337 877213034 261089542 238941115 299709860 420722909 719000381 916114419 112320108 102736549 752117871 104388833 591751567 969729340 617639840 949760760 322400183 738380440 317378992 107757905 303202543 119031409 44643543 714085710 661338003 604657720 131256763 665243289 583759703 734704402 9369527 589550942 901411601 513058350 338383213 672360900 568868486 621673919 780021032 850154052 192839023 87587666 436123756 308725824 460272349 978187542 788239925 573133708 116006743 682354546 112745221 600096928 10625076 345321319 177958508 582050550 467433759 253514587 728983883 845089675 936054307 322118508 244299169 733897756 992895552 575211763 364044461 912011547 265259355 343285529 934582209 424392011 271805336 242510254 454276493 197719948 819092344 812804507 998375081 738696194 547003277 843762460 325766014 222973653 3266295 652981297 729131291 622447998 65525947 910020428 651981256 855994494 694801552 356509787 294378071 727815061 681019223 595480754 442914920 610940524 749574454 94244941 544070353 547802750 240837547 972822462 532805643 984372206 471213305 241574717 235439657 797091231 581474024 890314164 306313993 693072293 276837131 468355605 572163266 937659950 842530850 593544765 918711370 956182204 956334160 617120908 629341142 629275955 577118025 536986792 742116236 643624060 796211143 371571706 543851029 930020124 245655155 528533846 707215776 452683080 47038730 301258595 537884489 895371025 269782550 280621517 198161898 175658434 51587014 396303385 179045245 292370268 812701059 901580687 526640924 288162641 686008459 381517402 666504670 424464846 75853287 277734154 676338873 438350283 930839965 889432478 783149654 428045062 730906337 319889470 235884717 998303121 906883522 412492941 9371968 222042550 288336215 884745955 354034066 741154455 994289350 438383375 756288689 734987116 431717436 335564404 666143161 672548163 390966125 128041571 171158942 679437776 211957806 905575163 514788681 675083068 87268422 829130648 785431987 887601385 934566197 336921000 960492453 437243794 822468319 889851485 131496057 79598630 676838512 790862679 133841745 122215183 668638145 650751694 444386164 714585468 821749555 258066676 303658466 318750167 729472809 864394904 729780251 176875290 340072511 491720682 1708447 14048553 254807768 556457330 427992736 749422956 178388334 536158359 525677098 894365076 365479203 828815901 573286432 527532547 532380017 621363446 302121292 375368311 80398166 350159222 75043951 138074415 471466577 141501541 120404203 251055410 237720715 220656511 700227702 252660615 378250197 881876528 952195571 479736073 832428027 523864539 246830897 780345970 392038633 451781986 394771832 742595358 644053861 933002038 572168998 192135750 919793947 224989844 882702192 576691922 192663780 225362251 536441180 501141864 111668054 800470131 922200688 802186423 448178899 927480153 632731145 81045042 296899402 194785931 381865026 650880684 538433296 821431519 599207560 29609793 206414719 114891710 570679471 235541282 894169982 57746387 328506305 969961200 661544515 583283280 508788668 369013304 375804234 509587840 405162680 359343486 836988576 292087088 651361286 716461334 543467699 663581266 176902902 608820835 937690023 130667964 484690185 669458677 148938615 636773174 893728845 45184244 165525192 626196140 644850331 599466606 573190026 464437947 192003325 311851178 686707466 330928749 631538236 664792498 388803148 375919331 383620467 89003160 528157085 701479911 347118786 869276930 386658390 362215041 224094637 65858012 977982317 148277337 157389507 519773018 760880569 85205979 472603983 770734056 779469831 339577692 879968551 503611930 20976918 336897539 415497985 548807898 695246533 370992763 197057018 14502450 905592075 793164254 62630815 392847991 965235339 575834265 991130197 179533135 783777398 366677620 210803382 489487252 828286673 92395805 353944489 505902096 425391667 199160649 504551097 121092954 423577852 9364661 640087575 975631101 446279007 888299785 167623105 802292994 301292019 655250296 859758124 581828813 616736122 284941996 416488972 112196601 567169245 183088612 108731533 284410369 299864544 12531800 312058308 918367720 983249268 929160950 694647566 144400766 592699518 576678080 895474572 946507422 232076670 57168237 200135446 169022876 754296451 287669212 365253560 105920735 979416174 882807016 195567049 686304481 386009822 204254682 503318284 855952444 722784228 48567091 973698070 271984516 144231725 970595562 733927259 386037271 594287167 751179822 898065913 9553191 267842660 25417492 159880179 580355106 309326151 92137738 848586513 718287443 696148993 473871051 179482695 940365457 97791123 847018595 36674034 470862297 817626298 497600784 727730953 788567354 331864823 152930108 42795412 233620409 487662017 645474355 254611162 413477364 452167204 886772056 884127987 84917673 739438694 967284545 715134307 950413996 188588909 331781911 921218716 639766587 153262351 359766194 23566695 917444936 48089849 676955668 536294671 201122794 386239696 30321069 869974307 91890522 101092491 10601441 39022077 614948233 389503770 882809330 488775095 1135193 281610652 598364074 192416508 448128369 636562271 446258686 448663206 885554502 867282765 50459646 28518648 777020453 425778702 98786110 872136509 588810651 705108497 542619207 263014401 51198503 499381660 553406499 507069693 10069344 358603793 632477834 921553929 62966844 238644012 414129432 90050981 693511067 553845290 524103899 979162971 11875615 834621421 484769549 699086812 935366119 103983190 477491019 929216781 507076213 854908263 544718940 510426572 865799137 894551785 575030875 849813860 534481744 854919289 825354102 650076003 57350402 954467848 873616173 696475369 483285486 503850721 714216465 274544283 978395323 478704892 394056164 664436766 907481246 271048998 712443861 732966220 392449727 537450606 382673917 820556114 933636134 513995691 420453456 1946726 228621892 367909825 823223348 791386867 211708428 606454996 43938821 438520513 869999318 482516508 74953129 57771667 307011164 845717933 958064895 627159028 232675576 105593197 596257605 619629524 418872149 812904525 338236072 748263128 463698139 866695600 518951515 745724419 753148568 355354595 924499170 139537842 187349221 8894637 846185433 754645446 973748160 224884527 18710326 874073427 820595028 667045593 665693115 123110911 748970170 737364107 415401164 964495116 313056529 304249041 266809284 716832556 608634912 745891198 183375620 37545263 504194810 396036449 181996385 201829971 362382755 832608531 612770963 216456707 592097598 526975219 440912053 186829912 923433125 201576528 267324036 416318452 10872526 194870948 677485257 441992786 585196377 47836334 138419409 631425557 269633536 407556466 427201357 104377962 252452959 661323999 576362417 177589997 869167696 372064619 154202952 227284514 120669161 439688275 563390849 789374676 583418353 796732895 591289439 813072859 972032978 505615176 912448776 423924565 760047212 529459622 699150643 882226007 250189534 416833987 521961608 459656462 623877175 28137495 645110754 381471594 789972227 795215420 812920354 77497800 788076417 763874127 420406319 725020873 381685373 801170120 530042810 68936664 968848654 998283214 728639421 748438523 246947407 169729305 543309436 567212562 273356707 453267924 674130200 369450352 603900060 565760110 764949829 827021975 958995290 749792944 40938757 676748693 351641678 369741168 983634536 179662223 770885164 798791593 180213616 398582094 416994208 102274159 99460225 685136206 821989324 103971591 556539810 358682206 960906355 650966486 213850545 187572137 439281871 571269512 171860689 97450390 957144970 872328449 563736423 648785185 364670948 94026890 175611731 855230312 382732659 551696057 144840726 721209985 471711532 628568882 11778016 201539024 430009702 85186029 551456678 274584943 359119445 876991071 897761113 2966617 839581929 370502603 955346243 831696687 691526702 352807353 36294657 439707614 677049763 985634346 31110427 340913377 245583969 358194154 836532007 533362498 459071744 169266901 834867224 415138505 809953242 699913266 595175694 913496252 377972898 300963323 978378733 849239455 505195689 730170020 901347834 805765922 739681889 513706051 783116500 147503066 422274494 53348269 390494926 313729115 209118944 732060730 82921797 139095697 728885359 49418721 486142222 656758943 862145367 418050480 281839423 983090968 458122776 444900141 659945799 239083436 720338037 477148567 553069117 896844115 565064039 123103959 675784770 142388757 459885683 763192457 535333736 191908393 507570598 732220396 26332807 116714461 297780803 201048124 82345045 424503212 4855318 267862837 872282504 100971172 920717824 392396683 177873352 728776379 354823882 283364959 416087739 616088407 960005258 118837317 218527586 554231555 871847164 732880769 60180154 288620387 142211086 615229899 183022389 414497531 104752330 10858610 560094199 382143947 929800343 768276133 981827659 870390936 374379408 606595237 341520763 477852214 999423710 588696563 88239155 897773483 217937683 224425940 723061501 246644253 715320147 377921035 783418712 506271318 582053313 801523763 298252773 688933982 837314631 858302391 946626575 554368897 966960791 831146200 583754399 999567715 833903868 792914084 487189746 109632637 640897706 687075122 321148230 522457856 589076029 229412999 732643846 198372503 133331117 348815564 95543113 560768368 796342427 32197570 408497672 215539643 292364795 274300722 186471037 445601094 368618715 395856330 291310030 793074211 300720291 639371696 456931093 248355369 493334146 753670545 448322658 27657059 675040072 442150190 946286673 583133118 592918035 17660983 399678389 600879773 244885791 763796733 605109072 799238270 204323305 546977715 479619629 562125844 554306019 291813945 26994386 309499301 369321550 536191248 315210619 805207372 2336348 251100561 243871281 287071178 707366205 798618851 758275577 298852286 482608236 5965543 193089 817105519 8243423 224626257 403824848 408706986 343056891 37983588 726387470 205047268 680365657 410972440 951750952 108663632 737455957 769589112 333952105 500840756 930207140 106133320 129390016 963012182 861359347 958485717 510880678 640902559 700177206 629846578 747839980 399650512 335630376 391865215 567611038 160280012 109157108 936662580 667277440 814641164 869351208 169109978 140708983 958954877 687769851 500682352 949504398 380909950 891403934 894412439 439094936 172097626 453633945 508037880 793590301 338453041 898339643 272213961 438898697 813916518 272829249 895059522 94041045 145005567 69652493 642700574 622849370 230461891 341831428 985496047 795040185 536189425 600304203 17869230 479784395 57893546 790484089 744317278 157859823 316514787 526309927 15996045 104622532 440319949 85400472 723720409 993635122 177351634 200710114 602093056 123571498 985844108 127996405 459096057 278108938 800625322 43619752 347862227 546020810 877233102 833596234 981649617 351423147 453512945 51856836 280700452 636696142 613195075 361725248 895111180 351657337 613570989 867781682 986174601 945486658 436835267 859813795 674985739 177279921 399835362 375753859 772510572 972754432 600410425 53260114 385189005 173116043 272084441 534417065 350572256 125268227 317365141 25011090 787783599 72658030 39607862 499126022 374466781 987558180 880107390 463367437 754433877 1458769 795021882 157523552 616529937 138022570 311770728 593821684 134604475 68038209 79244501 985249958 502917761 548612439 161369703 823065050 987186235 173753091 160975083 254786526 671536263 982317249 61549788 360462591 347118025 51066212 273585939 664294432 661186460 74343060 805873418 790297835 221938635 233658768 855450850 422170183 374700477 798322106 965572175 436621265 380182516 184384848 167565104 93438905 233045372 265911540 136607908 68602561 839257265 458943372 394738836 127552436 541462240 704134381 930707414 206510305 72537583 222145864 378303744 9732021 141350105 373491305 402696716 73317515 173179185 541051956 579960001 284524635 736090447 504553226 148482099 87860656 629352526 828418745 796894953 811624488 347696006 563512708 535855367 948054068 637111972 411093853 18639270 186912793 765788468 559280975 499061405 807947634 633028711 40520371 904858461 693786897 236879111 443966472 695983990 70285213 730305546 477844103 44234327 759678805 623448095 55144707 919819510 677210252 629163840 774078295 56910604 93833692 156196797 804490203 186869572 815467145 43143599 61369981 705469018 165730554 887529359 183212667 239139142 509267103 308721453 817959660 949509367 196420431 55944492 173130447 879633208 100917765 175108606 270501184 479588193 281506455 73252312 542176838 902026766 310533963 854701429 898657157 231837272 828033204 696189220 279963409 272038971 42513236 902311065 637319271 652673727 105013212 687581413 377768714 739464428 656966608 527707511 599879842 839491290 120511763 275307109 357191819 851758933 315990885 719791769 664153742 820214016 424567573 220181949 938184363 334834250 430829272 742866098 982415895 2602367 559102777 73592811 89148305 574144764 254950999 3819212 58467682 837272231 31963309 744821810 983867373 307706574 791669944 159332251 147587816 780599848 599434809 672723111 154495722 156629456 794901543 134543698 252836170 934003751 369129712 784057761 821859796 690193756 313751261 288296685 561665206 144423650 935330594 401647867 710412463 388696928 847634498 823425935 268731423 217036945 846495507 856555880 991372487 339735664 122192555 119593115 923420644 357416270 878521642 768568822 303908058 849627749 382205406 257648144 368949515 337369671 101806899 930961522 842811108 353508223 61226307 764319519 155031632 585228637 23312570 872115203 912652374 483009651 288107534 747517314 454687369 303254721 544323833 497549244 577261575 656256844 429620039 693379735 633023115 841564130 170359217 302415948 223251823 155030117 499783968 230996318 945112322 454537137 68274241 171926316 685298064 415373785 889482486 527930478 23953810 673595376 15946844 509081806 193806169 727528112 555289379 737079523 83387702 228939777 468995006 658356275 472116877 921777090 683770014 904957444 213034645 165343185 572650867 592916032 160866016 680969299 940683141 936049374 749252404 498458963 722464317 342454984 359233273 238012408 694961510 572013089 496003966 637913922 470323471 467995789 732562257 729042605 513535192 812947565 331314531 670923 910366271 751819106 772038409 74559877 203806486 465535345 975851357 272880377 527327710 704037336 823980766 622659148 687753667 922346842 478525130 731851329 357503603 666454053 922505257 42771518 351436949 110436000 549827300 930463926 9854340 928409529 826133611 297957569 215514119 774097292 331052255 728928330 949887412 262399220 242253980 340639136 375166269 441784167 645274359 847956407 110084716 742972803 887302615 884786237 494981818 904828902 917371316 759437745 129596127 223993469 631006461 217298513 849036710 790002743 401950301 752232094 8938745 39872569 397747310 333543932 515335233 782263697 530383967 562118453 670719274 898193859 163517371 31062357 242295802 726269949 543576324 9901756 729460188 744223167 602268291 323632512 487836016 659232449 866378138 216131864 91144252 32309402 316153591 407482008 93295733 618488215 901397558 504480249 354326095 182942671 528200620 791914359 293920656 460952903 936253896 626685909 172084687 439889794 194624815 531660136 793835130 821883418 680540781 540613200 821754585 251437570 58986323 333784230 887228410 106926085 686565496 843407558 423113048 705751661 188331197 761450007 634332501 293538560 60610534 851581446 1159955 38257512 255869412 738154628 918207510 153251296 767022612 730950133 49594313 135793392 933874083 679853390 262558523 432089832 333596845 949504227 387682643 25474064 257924909 151862131 46424221 283108238 12619711 922037155 824665991 759112322 28910604 155391390 663441262 718872596 963227259 933717923 335424853 265550362 86260232 449008146 714969340 487056133 857263444 994802327 646999826 491136505 453090428 330250557 284989628 553654471 560628473 625014636 183972752 928173463 590757971 302407215 390338629 525507419 199963396 939908358 862083858 659501437 523706012 512691739 152437257 813016529 343366996 536816540 977232912 907617240 516317894 505497550 337654465 272664951 360382014 140268449 599125081 124757902 611093876 359562562 938719012 646793074 803482768 869369023 836127515 508290532 90426893 498337424 364572356 614018661 786506479 648239235 762694882 161116469 950979821 207608933 967636085 13447947 159382938 815159341 868079149 861205997 419592389 781402583 366519219 611704838 386111969 103940783 872696410 310728902 720078283 539746125 172086534 903255215 617189654 877362176 421506156 129377838 234391126 886508597 815236227 353792789 536848209 626932624 822479444 279256419 419696660 59821054 572358329 805608 871737291 821733502 810180578 802997289 159854510 412380484 728779770 677273989 73764989 612535937 250072858 566912093 863033676 442402889 676772195 825753468 10578399 944002701 58910207 170249956 305140247 155560316 745647841 408939581 629859316 259591482 625971674 127995237 292787020 823311080 978130360 666643762 916841182 784742364 113492180 187779068 682853470 909638727 950740035 894752091 518781691 427463866 973778370 563266142 871427071 65316019 336173944 611641265 783329979 492762087 970104766 931284601 742390748 837637061 122881931 247984023 37206014 237021900 246066898 75089745 105402194 960327002 251269654 10845634 631928218 41922188 514839518 27026864 634366103 171580205 886779578 518392604 176201647 295905645 99354995 339988928 556073679 514282494 838804997 143521073 235233850 388594285 339358489 301001430 605708562 188722096 396038207 641139556 540224437 735303204 208881085 241211954 694538477 453710088 564402080 207901981 949214457 171283346 305510302 514454142 3506117 881899700 310478390 961286785 340581573 950810835 781756930 912235252 899009467 751499101 275087384 503339594 326165202 865215745 420965342 384735472 411532756 903290418 451367082 576524777 816152928 240671426 42794253 855363740 489451549 742205398 278128294 750578758 505638445 339465509 421443509 599500095 55499539 844369399 971310862 273596420 469119793 274547047 665879115 266223824 433888776 451796492 805089450 669985696 46313444 927256067 895122482 127892640 207894516 72274034 643772263 592157398 433451441 260372378 448841630 439768606 183756899 328396037 264987515 958115848 911329426 222254850 81621192 478801663 212096271 513331278 722584360 84624462 881219714 29172847 71857214 110068721 602896112 68922876 74423313 636269447 344985827 997816330 259987894 17418970 29961340 123936515 190050544 501411850 726136933 731531199 618297783 297705465 587732413 588917065 85071918 992905684 869076198 401223890 374579325 228423822 802371453 324313118 865677210 341548222 985019230 326132479 755716096 629538521 518997670 113362675 962329453 2817383 276006274 779581176 920406258 989367258 508184341 392061637 451186345 645441406 102126085 400824609 750855458 388935336 665373607 343963313 74046275 747897374 999511906 697620821 924520959 416544266 271225594 779649785 632148060 134245542 525923194 690325071 592494718 917668888 909425014 253019888 881978681 309535183 691334194 751396108 520103769 801875205 118902514 671461468 607314979 66860014 84770049 454226378 962118770 287271782 470540100 734837013 625829097 145171539 812725664 388431051 77854088 874061278 730666290 921734226 366883271 280433527 200926570 913329116 1333977 628417671 887998656 502826848 688879696 59843600 523257200 686561456 135251749 687162337 90352917 153099870 263316222 698955847 384573928 945822686 123067419 750424450 628583523 762111687 400565907 459655747 181595581 295347126 512267557 535346475 141558687 853318860 521450797 158523370 764455444 344219279 104193256 175096060 308812475 468981139 943767984 833498255 676991637 416448845 920693546 683610717 389197554 727177464 879951399 636200752 190489338 907695923 762041047 545985927 517680013 415443154 503833768 963225345 304718043 433203232 443528256 692841549 308119203 545655200 163969526 106639762 478856570 580087400 903714610 847647439 925312034 689641308 703811445 542839446 499370850 896208363 659833117 77536631 985643411 142031482 423264035 116392910 550721693 477863273 336945911 965583154 942482222 303254336 603305541 29472527 644153330 815482832 11688263 931237947 901115574 146945389 411076519 125494339 698936456 673309805 415198399 344617819 556789660 600837931 130054075 253855951 144212741 366920852 328886931 204843168 984687314 728897249 932323130 249325912 640857305 814653790 902400321 959872735 713304231 250605952 185567727 744526224 404969365 502998194 70438840 440954869 744743113 105254548 726874395 814850084 8314983 855746247 805112114 952881839 390569160 104465207 73896359 763299295 338408708 469912758 279012208 841300721 685316464 463036062 71859667 147704586 866127622 629471329 329335930 703377135 573626654 490507187 869504470 13525902 353038738 366215691 854258117 674842104 800800420 622942838 795358214 218415410 52864737 522332303 631286547 748755585 152915256 213820463 920765257 970599189 817621837 146061127 154754696 155081674 503566992 306592845 249941276 331971183 657702453 478841893 601719532 291877538 442732279 312677699 842510045 190853930 130057444 27807829 72634839 318999763 125901928 980817799 76445488 50913524 565061522 819542361 750797383 255147679 909026866 830358331 338476762 35489483 776338688 848882434 757049675 837656592 428945199 457517767 738285745 304415024 233468297 108900196 723737600 185338700 95153664 832262291 231644255 134825401 937700909 86089494 922162007 854180620 282725763 229144567 615812725 536358792 797692198 220193794 358043654 1262202 884857154 662385292 476228031 88366830 557532687 652624498 133485630 673070824 78799338 694783353 716777948 561762474 545793051 683743399 951671474 830923619 576365296 839594888 208373650 601118682 772408758 587405893 565246542 590913397 337086060 3311046 520547467 144679216 152341663 77022026 173024662 513325734 83532481 896526484 272517626 826712733 664285668 959287488 62164069 580013498 7900154 129115672 657301802 263296639 81208379 385848799 688445327 150485013 793108841 288299205 996926091 616642375 118174330 205691315 30129916 238286095 393658686 213475358 896576093 575812072 183827259 500665326 693438616 489510371 714176073 420721667 342595736 349025167 217808432 8186970 17641204 762839176 948694796 524849029 416541353 110094762 203162673 940358100 139707107 741396520 222845690 753868421 376865131 1167777 487157702 15503918 817739873 50724109 312567946 892139117 786460150 925653356 862720904 806789965 798731793 994604894 342765793 206067552 319311894 229375233 339475978 306580048 507250064 281971923 406352768 469056256 367804337 156933867 273545937 491259038 249308174 280447150 329515805 182269194 740680022 680145119 251321480 25286278 543432870 514021221 767388888 292815533 358718872 905465137 907758185 118174295 822387311 582722976 72755319 123373780 957172186 246195481 525619318 55870733 499613386 383970591 813935109 284300700 285122619 531076482 173169611 783599322 29198270 108010074 777841141 49406165 420978276 444222229 922240571 596840767 748633389 716222407 640144248 918392971 895020320 284541899 873435071 586233532 123753957 374846536 108824978 439530386 321961572 195392973 857611777 626078537 832963212 190883714 591399192 336835629 337145395 635058578 764226164 799031600 327427106 465449497 179602533 930666929 12702197 162430022 230560635 926019936 588592331 694915551 567274602 657407689 606660455 151910640 630637176 734142634 340860440 72289278 545718056 584300799 563513575 800734928 478770832 717089409 384598951 604622049 691037205 87642646 73077862 374992083 699082931 349915705 313282000 255684686 866136945 459137775 691984172 770638663 305907404 685432857 530851752 658218836 543135134 973393243 656056364 32388339 906703772 863862536 895804301 789176958 933543682 174961010 324890178 834406185 806980312 354133500 646827097 867985069 219831519 678717476 832810532 600267094 372174749 19499480 823332409 270840971 479030060 380105967 343934852 576467509 953722653 859541138 243545285 561915793 480862225 587022773 44470672 85108050 513929637 122276624 424028121 421161424 612337718 475310845 887521523 490725157 209407764 673202701 780644398 355489134 164844626 904891625 327900336 464111612 88132909 289253428 881304986 842339483 84859635 46793859 608646692 371319768 778623986 179325451 837049729 922191751 396077285 72021641 820512914 65284366 486471602 6451960 940927195 399875349 876426772 829886893 980817184 8539141 274774318 976978225 958023543 103988490 716193365 430668468 4665156 388972810 566311769 765322331 906507302 34672476 173912941 403327233 388729650 288077946 8535967 482491053 968378028 235286194 88040459 615576717 814169270 976569704 308411395 820923622 191932785 163017871 551575961 236617859 332394134 324126550 99486965 303534175 658632630 25752800 520902731 333424969 705194753 683838841 701926703 454563289 330299814 789405290 973194176 499644819 155171029 602631867 868077815 885217198 791485901 296223088 96801718 536660676 117817019 475530631 217676399 14449823 965157364 133137134 165822439 655853468 704666703 192458120 367727968 507918338 77205903 577098327 59779119 204267740 783275036 416902523 990769006 355504332 168835859 59122946 835342586 692488328 667040866 580792597 469207746 925211264 506224107 640424842 262584775 53120823 36673359 20892355 71422946 955525552 53636029 300847806 408521215 946530729 441166019 8022278 429878993 814488224 718354587 221631850 610359405 860964318 567920137 170035815 62282794 63271049 349462926 140175342 196657599 645401634 463718965 383727409 578424404 824919612 264533342 309576144 781536388 288114098 458877004 972361189 681472775 308941507 350816133 439462051 240591803 464303055 826545479 329241514 658841035 407684123 791755450 496587731 127380701 736617195 461211474 849519107 217056289 308695626 574309232 333303034 530049510 215010224 673885727 735427077 668156547 749059389 324755112 538740950 922686412 19629917 587658375 29267692 696936549 514290595 731154139 453142031 941292558 978430397 242799948 266228256 391747656 310902070 125910005 574673016 484685973 945158164 797001507 13926665 939309677 678651817 133029574 31506956 221752574 66251627 630314278 348078962 110248930 645957292 292471609 913477922 734471959 17470037 728066379 784698617 389559193 579629987 986614310 654550044 895553095 227869424 742230040 57860070 630332827 769062214 622040052 894216793 505223865 598373518 458519729 898712966 183482974 586260310 308842401 404974706 933103527 761672844 285920232 473298373 167157981 947822480 617723449 338156037 639810355 444213410 322662491 376223951 418263805 424173833 31306832 782513996 875625293 588532179 436282168 99530098 513091231 425443548 274137692 421882507 11678499 555220548 683519296 346412604 138549098 926679200 563658124 33364753 301558658 751035829 435323157 4621595 932709207 500140724 395517434 629870843 712438820 399036979 296920678 580825979 701220042 114689142 896107993 528003443 444126407 209539047 517559312 161976267 628580540 277580316 320330302 851978499 867198879 297143802 460348575 699790515 709607413 683330627 990228867 334066901 745468434 183245853 76424820 874246735 558761228 861755807 55157891 591179535 589863 705028173 435835097 603799888 519087123 749044680 390386937 116211266 981429497 671004239 184272025 285063825 241948132 244026835 107223145 27836365 273516534 376160786 1086132 783034056 920903861 509422005 423059827 807327410 925669588 493065967 949971051 165815187 259866749 828854712 896776056 596267360 419441181 481637673 26401774 433325708 126385845 943090907 938111996 695012080 166386063 948702716 936840151 433610086 638051693 137117314 846935045 115191133 204436518 795924564 755937959 8571164 408846998 973131946 194543744 29429434 628442495 853319068 516985291 385348264 821927897 64723046 722766933 935825378 981608634 666732271 156643182 616698418 837680176 960208557 902075123 943314355 371857907 151665581 695426857 875433111 994674344 162613540 195421781 27380057 349346026 25801515 762344635 874907673 730561922 327278677 258860893 41039932 659497826 227700109 729267361 381180856 726592168 732403187 697742271 87409702 315119329 430909657 582551953 622290142 638914000 574541618 21764916 995533707 695274353 522072667 950136699 528525611 549065099 792956294 569661787 374299112 490674444 637141399 692996542 492791792 501437266 267788025 104923108 629114143 291556839 650794430 627012755 601784259 430297618 798139840 210488821 413912680 417085445 49064661 31476471 509673801 110006181 824791870 577165386 115058349 591950588 726526210 985672497 439517492 422563655 830047609 237631950 819438100 946349471 77600140 267029542 511299985 858561323 42899154 606674730 275817940 521527129 573099314 563092563 667162269 985176027 186319057 488650459 417647693 649505875 296487353 213720878 964523627 116165450 972995949 87579648 781776127 976636751 710268850 388888050 404676342 529319524 555477329 470148432 223144871 902097112 547020310 393057284 283499864 867084698 68654815 19727078 904023163 206471844 67588084 638791339 258923028 743398439 354009546 314081022 601610236 944905396 874641536 455684629 327222720 104528861 651693507 755778665 764904793 338186933 515623784 111607509 751576297 75590036 578350041 938984012 263948115 944568643 247614601 948600171 64346589 182243322 8290877 499877891 40858726 442517261 366079123 302238225 948309421 27485753 138539842 701339172 498279906 823782213 56884931 869283503 2035815 381283582 312235218 167811912 847928191 96610855 894417438 807844361 554528025 256622783 532402089 639660086 234949140 25932800 552122183 480076590 95520317 258643165 475998682 286986366 672660768 790557776 694315659 255939957 115955965 698052636 533036046 237172237 181083632 317430378 412225225 773708316 506830598 392586426 837599785 76317931 394012889 873781336 630381173 162491668 802877129 984048282 743132504 154578329 488092987 601375381 197019731 913246165 708985797 98422585 217545617 15299594 522808473 415347370 560947462 818182972 269419697 934849664 934322927 459914964 582328681 963659053 194676704 111503306 57564501 120279197 471963664 22142587 902849226 825295690 532151628 187124450 585919209 600581176 797344394 607810647 979258590 47432812 529271009 163645515 475222263 425880386 658972349 502878169 710493479 186040569 871303791 781951168 189061080 879685100 822921147 781910580 878365992 872322792 383995769 618359855 22362553 701560960 40767751 879892008 517566203 304323303 297888988 707731116 850471991 361922654 764381892 944048320 946187078 783656961 205641759 210361106 901078724 501982080 571948885 794516779 223601625 971244518 72615581 104375205 925892831 729412517 550810192 234380079 696839040 542517529 716316773 688658160 87700630 911553273 557890507 548792990 955006981 507020424 801604721 312770407 722300037 767483876 71043594 879725239 517170644 953179981 966969060 570742095 806581718 37558979 343890294 512730209 102651383 932767049 334648421 348522719 753318702 865747068 734281880 207783818 278327927 734487126 78285609 291460355 392495752 183396561 458146755 322895308 993900463 812353633 720661573 134631754 540452203 454375037 915081400 730587922 458618587 958453519 325320057 62851406 937663949 214525654 575171841 548712171 34031683 201879262 590723604 701038235 924651137 691545407 540546935 776051062 148389607 744091806 883932275 59711195 807450101 253869332 979529899 54721515 514401702 415407196 74007301 925866756 44594785 204715195 399244546 483933786 586545922 529525932 130907352 805076647 794095761 592329626 156429858 237256022 105263760 447868449 819234404 80603202 45399388 193320665 755733209 317129430 970356594 939155500 199767445 862773471 54835242 527633797 111886 617792610 861810734 613921996 885119605 228149055 562527628 942241330 225778819 390261474 584341572 301948482 975270425 891451693 315976048 818222361 192443335 53725647 415355166 523756309 296008263 127792400 417645611 468135673 521965749 899725172 91736532 426252968 562898575 628319856 947679099 854106162 117873980 616100738 218910218 50373800 290754311 798642039 459244088 607175593 149984061 584635611 39136749 289866945 988135025 977814009 730368975 860585948 652152470 354221146 588697921 718660931 638715775 945012232 913556754 602957395 35156587 424037976 566998668 218042254 258139551 370616632 493621110 782284621 996380107 363966077 381455208 626375965 342436895 725849729 723890866 532020046 158253289 799657055 151659339 486690997 694922137 178414969 880872000 587040405 525958522 174728303 577250770 462253099 325788271 380612229 171558658 342669114 501155916 891107005 209070735 653109702 365100056 304109065 411417900 89375979 406501827 312633496 765382725 136604425 227434816 624861101 445607739 1734649 621152541 772813861 231556141 517174120 521115725 793897969 383995285 923611445 657705748 490843393 38735755 144663387 969753691 791623276 173365104 976332518 204945110 979523995 213924680 572565279 998508398 131824023 249475827 459933221 46508044 851314818 197427609 617788037 791874088 866935218 378381145 980695376 228899755 480517395 584547612 976370344 853984309 450392197 518247799 500962917 543673854 296572282 418342691 326329405 509507490 506193021 231483033 245380339 595207253 461035416 456411688 650225649 537937330 647284567 185353719 415745540 185961044 819752599 52997055 207500211 811928061 774894056 820031692 108255348 496859894 306793905 359732098 494171416 807738043 78005235 119652491 184901704 685389490 351311099 735273711 272177888 672537115 337196129 963279826 914636489 758947512 535998725 98614712 894696224 408650765 420254847 927771680 689856985 486874855 905841208 503671361 733868075 108440289 539221597 884455278 402226687 680625071 184367587 371361058 764976600 507669164 938266171 562514773 740481930 409266354 248681066 74830014 190653340 706318124 689705401 358827791 887780082 424723246 938775020 395176405 682614426 338997207 428111140 190817341 851747909 551359558 449757008 159382584 429482673 262945664 104807203 973222341 100322456 270627476 863462150 408098741 690335518 886978111 809552861 607634624 592527580 962981289 570026310 655335884 879290368 642027009 991346674 494988049 990845627 967897583 107278035 609226250 915243301 3325326 981934017 458056819 210408881 908775103 20778597 53337782 513251915 321842258 33669733 722745572 223751988 337591139 903946461 54490160 116407314 732189922 315986723 839953464 472168988 110196100 610050564 240695600 570082209 72254028 329107718 242591164 291506872 330249866 336564379 926297994 710980437 459238313 544791087 860051738 327564582 480144602 207243999 777375386 204678054 572036982 321177420 739609659 741226542 636982408 875071561 132636988 516038052 874729916 789258405 176711819 397929171 603192275 687959470 157458849 635640023 421694845 634720267 780798356 943698469 110738414 402021465 621574442 280956226 926033398 961446406 39493701 194738033 939272800 545385876 61492586 800160870 738389038 939252530 558262988 934526720 220656609 130929846 522320777 720870750 626593442 463818649 191041539 481957756 965768212 636246145 353406054 452321832 832067018 24131283 427148461 137476704 600122570 969831941 58861241 515871932 389488810 358932867 853114096 471506779 759999258 205025777 273326070 985310257 827425111 640404247 426740275 405540919 875166874 521923727 625668662 572452705 957264471 739684216 245835216 352840561 276840012 788216917 322158188 186510496 255513264 895854701 208791640 772341993 129402339 158322523 666164400 736251480 900349480 594347486 187076651 768230357 101166520 360636142 562735923 139812925 5445565 502270278 667854632 436998140 48283292 862397070 707575766 709885829 513821288 780593029 431026091 121850711 914411286 830289937 53849038 737483856 974074065 952523897 878724241 859025299 448309302 295771237 683184506 497619193 881782959 725976795 897594338 98763645 336376946 597509735 471772846 736079851 441128809 96312110 171166901 664303945 488674746 854403364 23839596 547626102 322884947 944039044 420263838 475866153 283240151 998224110 352027857 406656473 956302179 950365152 117534737 678907609 119538145 982214792 279280547 861307838 838120006 555729015 869102303 721425067 186705262 617884099 230197579 809369238 719439551 394323983 350656183 452286064 882229157 399930076 149225415 144305197 933088069 186354021 182464679 500814889 526782665 278697994 649495112 608470410 983954298 351407634 927149689 302824363 151284144 12437565 507201190 380188038 496753161 624432806 587963393 895539019 296013495 938302375 569938071 412880066 976085635 677707813 638596963 625932843 160718774 561938277 836597049 797452652 159419364 288982741 631967896 676343643 411536170 268202820 821630070 46859590 230800658 101584165 498046135 21855938 14643456 827237735 47656121 479749285 458340077 263224322 135793937 519757004 142114068 206709427 900119803 922872172 393412346 388737326 799823365 665659465 52596991 937605377 679701090 918125978 542996375 146206061 13886463 278420086 725302603 146016081 25838519 215239036 374824507 978971048 366971748 979488743 734034559 128271648 133367861 715523238 680937632 51648402 961051048 103926459 215137879 198559743 533714063 556355524 85531021 279926313 344791295 66205768 373787102 773871494 815458209 263941556 738702343 295407973 560804437 301102214 355911746 191157652 218466771 614879929 947290243 752387340 589122269 156023052 52278130 902060437 491107940 533184541 236866817 77760107 994989407 786755303 18066750 263531805 892898818 337011588 948102103 42923967 386872611 55174328 763464050 241926763 602773540 170150366 168755737 563940087 792601326 768957201 678986576 793186590 38341452 521918573 786128263 433671111 129846572 66710610 685020706 986688600 904281719 981199773 639672025 294727756 327301836 716494514 80533198 100187660 215543992 672287957 104396734 9316738 406813148 816402115 598591687 214545686 810138621 285617816 923460446 998914564 114297274 422283502 629100753 619118479 818725960 236342706 574644125 129209959 241482500 736676546 659587231 102171757 251781558 407413123 235897668 815193533 758260348 817136468 196776717 14081530 830452479 859857939 173120398 338343650 632841259 519654135 882564566 899025819 914134 177869460 366063750 982113966 923694130 234438084 833869446 621899000 111518117 135263752 131139893 27118878 827053378 566122894 374445828 684258153 925984198 178450885 254771821 705818531 613310534 123251152 642474785 792384101 317622041 396714813 40784892 963024223 39630988 715510137 811079611 893982641 777076531 982819977 171872929 130876460 15108423 781241583 325948692 427912932 612865178 980426865 564105317 589597891 189380858 285080936 479405337 636930044 873138452 968476934 827113868 54747276 298608463 358557374 463202865 771316698 5177032 548135403 824894723 706491756 798264867 675987417 153515181 246563691 846666844 190149042 93242896 393691833 239256360 374866291 790149620 757089937 721943597 214144675 156986614 325948400 80435376 255693337 144779511 591157676 960981792 177123531 214085187 453383334 255768678 644333378 66748129 728582945 734743635 275174001 633832695 61100654 370942286 621906681 626328778 362332223 428067977 619617653 678146014 254222112 248510343 297925000 968272379 491129791 258351838 552098216 456276379 421448028 921914637 327474681 120952393 683436325 95867648 166461051 484304923 708145762 99903594 335052230 468478515 307102920 486139312 801012322 768938183 780047009 427246555 225411072 354045550 937901387 301021532 117875433 573504475 531893358 446661869 160661909 597719189 615834656 859665856 322578227 221687609 553617855 381565510 798794184 850367642 812812902 466887408 177869734 812533044 368768719 688216987 429714443 500086725 87411046 69576686 810428663 315092682 89387196 44647618 98108034 322262632 287387190 282519537 626434016 522496008 489414587 411768504 907238250 575114763 382362651 408140440 233203600 535677157 134101015 712390343 100442502 424879603 618475657 489514811 792527777 421183786 60910331 207359440 705734969 498471241 326932803 259524637 926788321 33190528 373424375 835702412 688556859 6066762 432846298 583663199 794871234 877833919 965471925 447279403 194658338 178336230 890928834 371013469 966774348 51248523 543099291 611385922 140715410 78578404 54930537 637347178 522910414 506660471 113930714 530045075 797792704 687778016 269242806 234620524 201798051 9894402 29715070 420461502 368098315 457669941 534488621 35802342 946532083 916801371 170193482 762517974 498575422 273735087 305216101 805998528 629165923 557407447 845852746 86483037 130306176 487528286 938469172 952207714 815192103 807234732 377826701 647295169 355924383 535753520 505528948 171272412 132218715 552532526 320973654 956756175 803774432 620291230 833013310 649012282 265157436 609929082 753847159 568178560 861830632 55584918 126143037 898873818 997337720 870172067 150364140 588946172 254651716 573472729 922626295 774883119 380279211 854394271 260696967 578245462 704799564 400237833 401374037 127012196 935276230 18128044 537311351 356230840 116973250 891751157 418650894 914653223 14816752 349819681 312046113 813927907 321934439 620429159 389683959 401208111 912342297 524812953 394875804 177577733 419473335 265704090 317001983 443288553 296774034 601124328 741094250 610397697 561888837 597491257 145403076 339898757 557485254 422339123 287550810 473878563 643812127 879794429 520804221 516574394 921857034 619880383 419047075 302475877 950001283 472501707 205495073 687890204 195295886 833905740 450620233 405300840 305745107 587666452 824980368 465995397 404658678 4429018 66735331 682858894 542278269 748243904 523607426 550998358 585217579 85750439 646812005 467555969 557358021 371602746 782544186 70539728 616466100 420846213 672387900 698792515 446518642 867154231 732871622 350475947 663011112 136416731 76814757 521165983 540076592 481213092 204423482 890174451 565854725 933472516 518074160 268156403 662463889 937208919 863264319 9154676 182875660 953240960 136491140 697709961 928829851 317836199 643281576 184063566 360297280 492700051 220567632 13469005 137502238 569688789 703122952 18018798 171725166 831869715 107506748 869554059 248366024 961826916 664372637 164274218 147514478 336592974 360032540 972301741 179495235 781042671 47141000 465035265 53983132 54588796 441100005 815388100 441810956 157935183 359421735 193963403 480074550 565900221 653642958 613869869 535098449 74451861 751358198 165732462 402595687 478710018 569492889 600018259 670514411 826021392 566470570 689203933 82868809 511015295 300619848 788613562 418239546 726277022 333046300 116148886 136229904 175455023 687953483 620133347 138584480 168316229 618489435 245809122 971132080 950540916 178592424 709122755 457747200 695983393 719642033 548164213 435404765 205558706 141810526 189750198 387625324 761184380 463591894 697810643 415907579 340713238 682842408 253753167 52214330 724014022 507104944 990341597 177247952 173296316 432917369 492987931 604550250 754662972 850978043 746907392 833207508 483973153 749918127 750264385 38517375 924939634 538616583 517883475 628500961 671743526 858269897 283990237 673470937 205320981 491655436 798474351 558321826 365943142 558851790 406924994 685130004 666731668 326067712 27588664 572092583 802097770 512981169 465639100 591291857 88437029 660412867 894883618 269143108 751252981 398714083 915485511 536486206 817213165 967993332 638678017 856104301 639356001 692716217 381021726 337143123 377789554 552706933 92738958 625956056 527978157 489713669 140225307 140314887 755058890 7612704 626407083 802709518 27928226 10672535 826288757 649328053 845723697 650003988 538078238 883456405 215395792 507619339 240906682 72128058 226166933 692241531 917172825 432707321 989957635 393260115 984179262 653938368 228499410 461030085 571740886 530879891 665798966 831671785 903446059 715706110 375929675 928080376 224524814 349801162 115033878 406051431 257280926 346204236 982396482 231129203 747407453 135999447 164463536 892955082 819121070 829984615 838738364 92465258 289573697 395927038 614967451 774447560 107132046 340369547 372150704 135099185 43571320 693921711 796276524 130872291 68948111 156670750 257888508 274135702 128548274 371832188 554270262 623632155 922115916 87466858 37257993 625504246 330183810 863161098 842611739 86319886 294330350 993944653 121938896 776447064 307897945 996533420 202467635 97594397 241409765 568757073 506213778 220094992 486886552 574455159 201558349 4011891 770340072 728231399 140652029 979801774 600258323 968259193 43038648 253841851 146431721 921865274 687404785 818572483 964489691 967519463 944014777 203466641 455198466 667823833 729492990 860239399 604735197 485716908 757264355 557363636 485635362 954689566 302536179 848556310 187788389 352260525 712110654 983735398 995037459 228925974 101068930 789915899 232450016 988947532 164133561 703992018 168712271 688208801 763990536 970608263 949635264 394549657 402147643 986717202 254580602 963432925 956417949 965224644 510341074 940552863 582857948 330017080 180614994 435838582 373875840 720889553 244204454 814239296 209706737 432552172 911469801 184086848 683023461 93686727 201217034 441914499 470031232 816382729 458398766 874625550 267866968 72828806 521350607 715143347 78362641 305269298 248163776 387520717 469182406 95679664 261301612 784103049 398632807 460251827 240413150 935678994 731841105 609574120 959187927 199075295 395443124 871753595 307816043 638484760 365041186 731748577 603720290 538509481 9880740 123238253 917922433 195974352 11478001 798656881 315625460 78887830 76131320 199117030 942101021 394415673 893630052 880171613 64011433 237161227 612073286 82749945 903764856 159932685 860980162 97842631 415972141 345904234 367454020 203785688 337693335 251225199 638739739 257837047 462487153 615028610 566715485 649969742 662705716 741846886 725032704 812933122 989136006 830227046 723210603 445672533 996684101 433449159 661134228 900678823 675435427 287511577 151890113 91135184 553574387 585828977 338469940 476527477 15076249 798697560 188124934 377458443 321792877 140774065 188620587 420964459 282360132 458267609 184052873 167512452 229283266 720807507 306809804 674376823 118798260 34983678 569589517 655807271 812486970 619998624 719395127 623329652 299366302 470667035 656728925 799461543 804268601 619622244 528904972 694506540 601150945 626350189 972459719 177549668 620475979 301653862 500108125 701004430 993930135 997983312 946170237 643728801 913309838 634434792 335353023 530646971 656426712 331959496 514755599 160410736 597550019 370564284 999436836 719267175 70532964 331991567 874277291 696557023 667467311 884957320 300058730 585576897 946329699 939950998 39650982 311643240 699724624 841553616 497081439 999033489 714170640 996797262 893152060 556607477 445105859 562348469 733348016 460794477 868638917 98974308 846731622 681550623 98310419 956104863 256754684 637334683 382870392 796207450 67282761 842323292 982135647 128278542 102592280 762354477 355427652 301936795 767350466 122117586 796528099 711007420 663322847 491218829 703237666 286005315 199173230 369132207 198056869 443730634 330977695 722254216 219063005 939694915 729495089 662738 986564269 362413313 490277395 505731792 119442791 353693782 856582829 737540856 329831122 885156464 13890521 126016817 187975251 588792541 385885558 24877370 384189958 161406548 56916817 530739388 284192492 299991591 16107317 624904923 788172858 996043407 147458736 580681183 42327063 916358388 460428778 229048550 710287053 662168203 238431735 495697284 626955536 732987517 903861672 563979490 357880986 700089235 400714105 820053262 867879404 954809503 579856514 186494223 911193496 138694986 321546679 975651900 873912874 318423455 533889331 366802394 920142114 498184241 368500566 223854569 474120224 165593939 637577627 514009344 788129631 609843634 960716118 901119313 455464593 542450613 753289090 455253969 167559567 353920059 558329044 151766238 611121094 332381773 201249415 552834189 868583353 765703328 862675419 449095224 285333060 27348382 414252664 752764560 828440308 635697627 131007327 780663832 821676930 954390083 595085162 730573316 117797383 604290731 671087006 69851635 505495183 663942805 439410044 575328081 708764666 588331096 286631236 509612930 6648830 501113072 262272008 165700350 485464487 432813759 323509578 393487383 596385015 928878105 890431994 560169201 622346906 767258538 332959380 696375515 876469905 135885973 446509887 943763902 96876503 759071959 609240646 880902937 647136580 921006992 491041857 610232667 986493487 423614749 263964682 757804743 369975778 955227867 881086286 801841918 884167981 289075372 203832371 669969404 419370146 864544762 182942705 820422937 618727729 970914384 271646268 216019047 814855573 103344865 649426316 424054034 25020288 927395735 848440379 996330371 541561551 30597680 935207556 576943668 484891657 46222691 389547434 945828335 531011337 545085382 64746309 643768315 196730322 977584389 333995238 398289758 429186985 515094510 332318036 405194964 55713243 676221595 259359506 533871034 456540629 669761710 264958539 499437276 229726565 969611783 862386924 820860299 160996264 752046979 281141336 203321369 801256964 961755906 315044490 471491876 823039736 533183010 875437709 227391889 381228590 511191841 938736231 478895754 542876865 103548402 464270451 568775771 152757150 645353855 30958866 140875198 52586286 212982012 60263683 634198942 268391422 272149737 193490419 251630582 883006946 860730750 822586009 709441324 721465367 102960115 864006609 376555484 488021822 582040433 880039336 509226037 973527090 858658201 934707564 235621925 573745243 716316578 903196518 412814455 555521928 528986585 164213656 692917814 401850981 454313126 528494577 145745674 247419220 120539305 102027342 881824298 145627542 765730736 600921778 870250533 448334135 749068333 168774012 649092535 669464936 860330059 830198199 612515428 166582805 995795964 691817746 140395857 637724972 754465361 249421484 648948745 814521955 886690702 550091551 619415254 632060988 834547537 265146234 967312829 819690674 553310220 216724106 685505727 709889838 219928929 182431573 699978691 7697305 132579163 667676948 488608217 427752296 215629535 797103107 680607889 94727621 180781521 80164889 220939898 484075456 775919125 305113038 812618176 75963716 901503504 251955897 954768336 888799372 15647918 605508279 278621027 41301355 749669781 528865209 600843904 261565552 504824587 764384863 472270851 832696964 229305684 665192913 447396293 243525817 906108092 10836085 313007479 699963571 347234767 927788616 360132883 662282857 838125952 382619645 803507162 332938880 234621727 725323549 637904383 818744452 613907930 865088617 194446699 36152305 976377359 776986681 862462863 731443076 642738203 901057876 851585193 172996976 787090604 480667518 806917848 420224562 6463395 716497217 579039160 51548069 919574026 455807385 225261715 157603513 467701784 419976823 421770558 945291622 175886836 740601616 732877894 415633794 516012196 227208463 758677408 372988912 68445479 375620204 76836847 772888662 100417934 930392322 707530490 445540038 477623271 266629138 264811842 458576581 173187060 840933142 914059610 814240304 415310018 694639653 408225168 637953059 326127639 620868620 664149075 129269411 330126759 547011233 316037612 604948485 107208288 285048673 778092493 78606129 651690863 446048639 427326851 373283134 391211092 60714015 803948775 181714496 367221520 918719938 496279677 142243891 167331478 934231751 429928724 785279939 73756899 513657865 390887678 146140811 925792085 947444863 910541413 941141940 53732509 165473142 707247756 835518393 715899029 891955886 540521298 179679430 544470937 199844441 971673855 211260516 767525095 958073490 315725989 828647571 655384487 580040345 892900571 890532770 112879369 366069751 670599084 791799261 319597555 317745109 399216112 307171413 916957108 504108532 348274294 256437407 703904142 855899376 731901294 833982499 753100303 483510145 560265935 253683406 484189526 786899646 655009133 490289366 237192351 658773356 715026580 915370032 313840685 908341227 811498023 916653318 171253600 102809127 629756965 675057784 964133393 826734956 237982378 394687095 483296499 198797402 646400375 779905358 753097927 725319970 309312342 975981760 614073942 171167301 210949763 955909567 593786849 4309906 158477070 881960935 663944810 271095135 255740956 388223058 950637839 463630952 946042263 474017320 490522358 671968490 861007419 928443053 727694257 214061774 592623005 847009244 404237162 905072452 522266873 961325846 253767191 328241531 680112634 64443221 435313227 17106196 578631757 360140280 782043095 290368558 359174191 503429745 425720012 188666494 592309827 6274940 980348056 782332329 804548494 808674238 471401139 986124206 75593121 346898796 131231959 616886044 582632964 605307719 19704719 902863086 588186144 832371206 313237836 562956872 181295142 254091076 833576817 215757223 649304362 930182830 885743783 71569617 361755797 581158110 978060065 157286853 380072006 745930363 174614578 634241965 987272076 356816785 774798609 326524798 359620467 555004154 552883829 124754159 704298593 594504802 644124538 242514079 957521930 962753980 870662718 607597200 610799996 795009885 716052708 350710305 874305311 936741019 334515859 637836846 656494371 42363640 834727417 693100680 108523990 681932711 730347171 590371081 811178345 514359829 18887623 562751012 185275343 94434666 481514885 586542565 223065807 442722000 952143034 752861354 478912087 620300217 422485358 692509748 904010090 855868698 361371443 593075416 638802163 947148084 876406402 752357405 932793793 15726815 615513483 344810132 741331422 272275765 463255827 395129831 249321882 174250661 714131006 612581424 10126426 265821529 722515563 535062159 465780685 757841330 290054769 352678330 5971951 874459476 904716238 418612758 712040718 787543999 718925598 163586101 483756964 636344285 866894879 840546120 995457384 161638999 228867976 523062954 881293033 823377475 563835982 131412859 660148685 593953057 60579039 211662515 847675414 817079941 227698946 706468232 414692059 167522854 266394237 58535201 241943733 970425826 271909635 690916883 560878098 208182986 15284657 904339346 36450702 336765227 952967505 972541137 536211968 46667694 358136621 83219352 329407159 234695585 616316660 133529540 727879749 322476457 511748109 931989842 554634709 307579958 994446132 835649962 84150162 380087850 431815362 931009601 636183699 417476209 767342928 502214450 246433110 244056158 1267102 507321416 564057218 661989411 247660761 101269183 719771491 489908864 87374160 96854324 962598308 977208535 756235227 585062637 985366816 822256382 58374841 86427271 620913138 223162970 696531896 493950617 557697212 915312462 205613197 751283286 186505508 231841180 27895605 961746143 16118838 985463306 105674083 792547870 295992352 25066164 235623687 522810305 439446030 283575651 135659785 444581106 813688775 881597254 144237613 791966332 706324123 941069587 78510638 472635484 343127185 449831422 650514258 980361847 834660653 729063988 335874456 418797609 994147124 130705012 319298323 273375799 281739366 695104724 494947466 246312602 322623655 738863433 789155353 357175993 919188394 361009478 844348945 868419423 238133832 185867011 899420951 230809947 735888427 886804660 44464774 560087646 260782424 207544429 424555348 590560878 324467918 240098397 378456151 308304634 30972285 519961815 925493770 713334564 709191608 649738638 43597191 474592522 7868817 414575746 535067713 798747562 886658078 590681542 358048322 541460749 831217311 193362173 297310370 672485870 612373416 300598099 137390189 164924796 905853035 532976720 730981461 430624258 744066071 630903780 462399868 128073247 255198222 206691136 180763027 416404813 103273331 758958077 159578288 225823137 285729929 91413602 281907897 488880211 379180738 990577753 15097922 427321373 171025614 998727591 188456093 311089866 665868487 714658439 755486932 555562354 312584850 665854394 670822361 540920017 497150517 457607824 4452621 50471131 463085269 549135017 484152715 280974012 404720063 772964924 484921432 963020396 431229177 120984030 967280679 768900020 350665716 465173866 978331395 968734438 774682220 536234188 748716071 140617361 123793979 988927452 771069287 312661024 861303747 162210230 615797315 947206200 659774803 148674014 343129357 284129578 586449173 238483800 387810850 196383549 808997392 640706001 927382454 901514969 917195770 531219807 520238857 62037324 441455018 118077357 769467748 811366004 701470821 756238651 867383585 492632248 662433986 848206758 240186964 125439642 647306928 761701037 255352496 474036593 339819016 359800071 844859306 553309014 852325786 34860233 979125093 628153673 259020075 478584033 744096934 590502880 751370582 656930411 35332990 144731141 926980961 789278612 921779465 822280352 544491004 664135805 604005081 409540823 5910527 596140332 756331221 253431677 583003579 560133213 843071627 696954605 285431609 108680738 620262039 830824846 153041580 608126245 272687042 306625852 522415281 162574225 211139503 346858023 25467749 156993746 27569717 588557202 176988328 955775472 363869452 564132038 100816921 968515888 658848141 292014153 828862014 834621761 899395828 54604671 354103929 867275919 319320613 712847654 130439341 51516840 338386397 726594034 957274135 114200029 742956292 638418542 834726294 202989626 341162750 398396065 874974153 669552672 377112724 454627889 551695994 296029257 45222038 451600900 166974536 221177743 310510321 164922887 651423249 332985129 515508805 292055241 304601770 274189079 224423171 523683147 444981062 327591105 253952096 747410986 647466957 18382957 365547541 441462200 426651123 633726294 57714495 619127349 90400176 13613101 276726319 400361527 928621173 268122284 872361202 519917188 100866643 685257194 561902869 339328298 576800745 380267003 669847807 471066176 625020003 712353128 584791368 787802957 698714433 822609654 501496740 699719517 807307084 656005915 106220991 497434989 201261503 144527303 334238886 943257020 941223249 794720796 335004470 828690932 761926974 34708106 284486853 627963533 210060488 790215775 958138331 195385174 172434069 328071671 635778860 790425241 378312056 287886157 176827774 131560896 943405424 59968404 49516039 488249717 605047395 773650555 664504150 238950808 35117702 852735151 405833487 426967326 677441911 535573591 171361243 322896090 592797500 132412600 207467422 422741840 315252123 794624101 838859599 624414363 250192596 543171414 363723277 363102678 441240266 260457203 593347651 691620470 606416095 948419674 167969230 402987426 432290031 771085365 861325505 927363343 165216684 209198315 120468945 314067316 407898700 844799642 620748633 891908213 438785311 594882172 436218161 657006584 196578072 145681055 487981307 535101265 249843898 914384609 81866128 456204531 623454952 599649982 492772848 19604894 133312795 222244100 630871645 427912715 410949189 383669073 355841068 291979571 152496877 878490646 430126242 161719238 442732605 726123188 407177257 746902481 725860923 98217692 581622596 119001646 685593980 728228973 26022782 42952342 934217572 965470667 293912833 87735403 3634582 625836326 592622505 109762015 960742915 438941023 422538280 402566049 409271564 232926261 35968150 163165920 256800191 42741236 867803819 193695999 391439138 622264173 17862814 435068792 370837657 160786846 938609793 546848977 964497214 68135372 861621696 35505028 232873860 913544449 324906531 878494655 473369708 964160636 138810204 946679856 418375854 157958985 323830310 978126565 375073328 807659525 548447480 375184946 838631025 43185980 333925272 370454136 936379135 240226039 370715871 394209260 223711028 789271529 740762884 48337971 900737292 719474693 222154315 66871941 962125134 2672711 3345212 151337703 392863611 732210643 766912894 947464463 866241004 597821827 442181756 229628922 246966071 624027429 687339516 686863039 929889568 103597204 67806155 746408179 341362613 140093778 788331944 951396996 742712432 904260663 666732517 175028011 259260110 903771747 316351107 58479092 910672074 342184561 849513446 692762870 249425878 236814596 232868313 538674253 752069680 703530316 835793952 709933380 768796979 424380879 730471064 674062874 726450435 559485812 275558656 708408116 377265975 718648168 704294327 697780893 239373051 284423558 419404951 518070996 375117581 971211445 196915142 453779968 844482906 873485300 6352997 819237171 128584842 314964740 774095022 841291939 533427562 89576658 373691139 267194830 460508363 159049562 670934855 347943740 959161406 11351616 515314852 201764463 172798146 470199766 344078817 662428650 592827910 465511621 264232572 480310880 935552369 684562198 222433160 971158236 535489790 119589971 887259960 228165069 635537579 123173117 463763466 641463670 817230525 100096529 423743616 127323605 67903654 494653760 145415319 259833522 872536914 860235136 69533026 418128870 617377179 702391903 188296585 485829549 306071700 97378305 325155759 562471291 295138348 417539479 580545232 997108329 903225243 862024423 799600206 218201264 192136769 436669212 753176257 642262618 19748272 692701635 864220758 210565214 89563505 96429461 21523248 933544004 693997331 791548297 759929767 635434780 552927942 639244822 33888218 5781050 191282315 935479221 187461666 717817364 122275020 339645824 990063554 382710266 530546140 469547273 403154952 722594556 245722567 394843749 243455299 761164690 661623774 292471131 996316187 968921932 839070212 721654166 956629880 334379429 831353529 996457127 355651243 961479973 174344501 449821301 327094424 17071805 720480198 33828695 280981370 454750634 601871661 409725229 270177763 326691665 759938287 134899965 843156362 148419408 525805919 536122724 64714961 989091979 52637992 317474521 126921376 675348429 15610952 730544493 956261885 519995359 634517991 350733713 852745112 239782724 774601248 996727582 570669053 638795201 699958068 944665292 64930401 876921371 430743630 967420155 351626432 859268848 925510787 856438714 611196439 348387930 531843092 889352291 780073521 78145271 790131826 457353927 530253775 47473974 349220897 922509836 872314166 664106716 433855985 201661673 952707090 402283918 238704390 333720224 761152572 846844239 468104339 506515503 798124056 555995151 691970270 436991468 378949459 479995239 877181461 210862252 773618546 590396341 449869042 862633816 438270596 147010724 622361580 72482727 453084122 343450292 724143694 539544482 945063201 663559937 545189208 942099479 189106237 529345906 196097261 158646159 911660754 157022335 557316650 787090453 205964962 597998327 549366897 949883961 769766786 812165574 473687152 888049521 544351047 842599618 317308891 251396253 471663691 808100998 957545007 935820949 700102183 433439736 159077755 102607254 852612594 216405784 852786771 263049240 446314993 830892983 68132190 670817712 265518050 315971217 212942525 58506147 850005706 269033092 766551936 941683461 301070484 92819394 639926932 885568334 40779348 120472292 684690555 688875150 540809911 375943749 77904937 632362772 155614240 985158024 88980717 60304360 68248838 810071571 416526913 640845828 775068143 436344415 90120034 387515475 510891392 25698057 24387528 976682894 253126469 627152680 196702956 270511466 981207822 793172283 131155557 327545962 379095956 698431748 730926428 307081353 387017522 982890851 415943250 497126154 983442221 401771695 767292744 737336499 227082387 262186507 989770348 636324372 825774572 104451813 116861649 343586490 328061468 367867233 474465796 642401391 972033738 30723711 55707772 616896762 398925478 253988428 241028926 533674619 886795618 680624263 625989356 26429804 505709832 726216603 525484402 583144482 13652436 725346346 256806582 667334589 816866518 871097116 445505613 404640688 843518716 427145279 283607465 414427623 599193746 121984812 6781798 41075732 831135528 125687484 313544604 597684023 22977190 378397863 511890384 459022038 680433058 171947113 452438667 738255892 727478075 871959281 848039521 344735616 612478390 266527247 770242141 172784810 756079726 52111215 469045182 802127738 249546373 356864697 508120553 880176589 654792151 979753742 647716290 477810045 602904352 206826570 100858111 626228520 1825125 995544406 995397157 747414010 667367458 428999447 624616083 767245289 866613643 681684706 192949371 467561658 952872700 501952162 411242316 141445148 455532838 400726311 904558782 661749639 350332955 307519812 489758772 827191935 285350799 175990219 301752788 129668484 821530961 482937211 446009713 345111069 836284273 831675592 410184357 40599845 943930724 157741368 315314247 107031306 678058520 430003532 385216043 295445664 437613143 435696522 67220748 544999054 269525497 388494856 717968271 623526754 357146284 993496471 737125706 537265351 204926795 964052273 381114719 165507894 760008210 167209969 808139632 932995431 596655615 486253469 85144956 159231958 328758662 122069713 560457380 402741890 897199533 791486421 19539426 857063631 974555287 917094307 599004881 249807397 21348369 691553884 395803377 323426955 835824166 549414660 479762943 791743272 545879402 634953351 251939376 245788720 285469627 160401551 957599629 177741220 168382615 373671413 148563610 200516065 183682400 841146305 643936393 340828514 478127335 588575356 312604658 296893482 328341430 322793488 807012275 519093325 994651202 409686345 508277510 820780349 927843801 8876809 280985376 528934960 849335955 776105098 997546192 648298934 380835194 69142000 38536023 308695819 43199985 951924659 297135494 148498972 178642239 970130757 399198631 429477212 470231926 455556905 476138407 647128994 868651709 422592129 962280296 108137025 514593330 405367398 870891712 504524591 321338804 604516020 278236644 809324522 349949137 328664290 304040203 457131769 133560822 669602482 549787097 103696496 441924527 919772990 535818891 450665660 538160076 648420691 681406093 737637358 281824802 577995388 809957367 610122417 287008687 692196102 923594298 986351838 556074044 276882346 901399824 224402266 694224304 654129030 751853377 752393691 795629777 780780707 374208532 873814955 321740924 37707625 738948827 523618624 520494925 216582343 277204273 368063808 523997272 765795288 874479950 703118063 417944469 449833292 24491405 486126042 739787240 829913205 592229560 51492400 50902677 544812080 230735738 648026170 629221609 503979945 957636487 569587490 835344639 499321543 749094340 878679339 694778075 265723202 215505461 989731310 303182736 12213250 765126715 373079860 419015845 263154662 674694120 958576277 214397908 326422580 869561830 319644704 215492947 318242317 923077839 616073656 643246132 840234552 830208713 160095468 391671692 554595332 170456389 6594107 803127607 173761682 564389602 445687407 47317328 977478917 281499661 26429421 3167256 9829651 683761347 55496860 59315745 146993832 367888690 208232352 292825493 362786297 801058869 489531156 778000206 186632895 399560326 247972684 489856998 25198917 463097453 470197768 364197326 19964171 542442874 12477242 686882337 523387515 397857482 688153561 581122288 954439260 97924127 469762513 716977511 57519960 530826174 599650804 205335292 796831961 677406285 873316333 558278662 541145899 409924856 607369709 679667291 33585770 190921976 660934195 983825050 931695774 744374174 759615136 178918030 521954603 539001682 120451394 305451645 92268690 349342561 881623533 761079258 960089468 206433390 340786166 946998433 152436199 505264277 348477244 761937591 437699187 568598169 372941951 484612370 564213041 736155643 703265173 515774777 998029577 826676277 128588642 352596086 173268785 221071828 515042978 775042232 807367228 271881764 257562176 809158808 765607497 21031898 244184921 524658816 85180550 204824061 839474949 398296183 896343099 890145320 958396549 553943818 774732711 550086864 642887206 243745070 932940243 821858216 116639779 832942750 344538230 496556379 131731226 256628136 38978604 657424481 311629355 504055770 396503064 788700941 452719320 550107444 951964543 613270020 560478672 571502980 716093631 657051651 337842257 70789512 288571079 769756412 905040203 222486047 282949755 409102893 506276292 328803328 797252154 686008702 618354451 801062702 945681571 142441165 423449536 731296315 486274519 743564738 913608098 575192920 698354648 225499903 456332065 306548429 868880611 137955271 778222247 99433143 992858045 608529954 622974696 19725825 344577629 555325685 849729936 800007799 262883091 625186261 430726790 867022685 147914349 560796708 807138386 932293346 465322264 424272092 374363507 229227264 842645888 314229955 140979440 930035386 928571617 276680512 816735240 730961843 345311578 156365472 609090712 645547197 996131624 132044724 288913310 153732947 469864451 355958938 483006601 918123605 489110872 218614489 561614967 426307503 171258412 310176466 496957412 160738204 97268936 559451848 745433722 885208335 843387927 638588890 231486463 697438206 752167486 607373637 969622825 660670074 883986645 415554619 464817869 581196675 898943862 929136517 580255132 567777769 419808112 858277965 306948060 193309678 676049395 788234682 112425568 392917638 206504833 298677134 589718480 671597826 644516649 982654271 198691971 234211185 580158118 265643203 516716264 810731196 373646527 868571930 854827679 262662775 558989143 41008529 658311642 925030936 346628703 329229091 480087193 348502507 594452017 409061792 963367884 859773621 791932039 824042435 458242054 208740056 194911036 664486128 184653220 193812246 750924295 622267936 325903871 45734418 38656994 899177076 3690958 624135225 947557422 82984606 821406702 664882627 771028082 781394796 823285378 115920030 413946892 175555342 417009447 289638733 433525010 52393712 391729260 924272421 880335401 340668665 772200229 273661469 315675133 208426062 535942629 272537161 284372198 302557538 577352433 893556108 34101707 511721433 984271815 310331522 755223677 610361464 96656665 509292784 787112836 697439625 992066720 256306215 536652456 539852031 344330378 408672351 592357470 57901281 237319336 415729849 993477691 331293595 13408558 75915534 58156137 534623059 913214348 853995300 484682610 727049161 275373441 167138886 391097608 591741550 664231743 589268342 657731810 419502329 143801374 356183391 667041153 834395601 511650871 32114634 708990898 516432155 407702183 313882361 514683333 603805908 585668866 205148148 970987838 117456342 909777004 45792955 795798033 652257956 414459029 528663059 316997094 416252284 819572245 422120181 571868785 819809153 162470465 709885502 32133747 427242918 575253275 268531323 334086839 214345131 598837020 169948089 651586573 543431847 254733208 760247966 682065939 167288612 628675301 504529810 297295408 997921237 49644837 551377458 246988461 94772173 573118753 989368593 387718967 491566426 38145728 170732504 778663627 42807372 807834157 984433245 303084327 90928685 990220911 772513659 817660190 212089586 447939622 286689761 964784986 171271450 876610944 851011432 32772876 574768060 876235183 74354249 40366412 481054407 319487622 977719688 417928083 295809629 767692233 449576996 741335882 719872866 174239856 894528507 810245053 128705959 610627264 961949673 403014355 572444374 977670571 525100078 546695843 447132299 581273164 705708964 910231612 777232676 837298380 710280393 290847962 487508626 863253791 979372414 6516080 121870796 717665476 344179712 99838023 297550700 591378402 201857007 307794477 562974278 139189989 505671543 136644223 869905113 96822254 219912444 325246829 874159618 316781671 360535987 60759068 375760233 463390493 97527340 342600880 160342645 645979779 160025396 683220696 968180704 293288318 470380011 576791296 902103680 185753470 93084621 29210177 150356304 205102324 924154550 935141174 974600413 90885686 721263190 263146944 903737720 41627712 355593241 254346831 675643512 510660125 61019648 672549022 946406727 423140174 609838608 799484869 637054719 431589804 566485648 615317560 284336199 530033552 895700103 54750938 67760284 50520062 455365153 166460772 370096896 713905907 807521236 613050288 434258214 584119324 107449709 676314248 255632320 847148507 228130948 632871895 596575674 21847733 886597846 823884796 381874839 377368678 476983791 353287952 551091041 324937767 547532989 144868765 678620833 320736409 572726279 209792397 529642565 566100063 981466796 473145149 629909048 897029836 750135663 648478101 514955719 865940347 528066663 771692104 922934073 989293125 210533883 719282340 419941664 776734627 808785856 703840218 756692156 448594733 88656504 850130590 708725701 221136898 790302651 804176126 503554898 722597286 121508360 273779348 188036680 277435906 575065007 697945875 54741020 674312417 686702582 573139164 82567226 889363529 717472761 396092477 461590132 635694329 111031838 7399787 537854521 129402545 608179854 142779874 293349084 769698282 795286324 234642763 188852356 741290042 264515568 476453211 640679923 929992215 357508177 584745461 77589703 145390436 540009352 730945333 69505769 878735263 727546616 88333295 721642255 496619014 200243999 793695375 58965194 496715952 319112516 348707956 439282223 878302818 496079672 909077657 42786005 991292048 193423497 280956743 841109944 705598208 222060522 470552992 233430912 83389193 747805086 707077640 913392772 244278322 926966366 920585006 188675863 122420872 91756725 944943961 962862569 428132077 185725878 148689341 579948917 756851893 254413421 270298801 74083177 534461603 654369355 913215303 838820996 215326785 924046082 951648722 656013437 932565779 964634449 640582291 352921855 219070912 541465085 534753591 414358763 384468327 889657585 880176569 875684446 359118792 155575368 248980052 796091031 632333010 206422017 567790409 990165306 334798858 321790320 203613837 418334954 179905224 983275281 740001954 164410454 916601667 252728112 309784215 100402632 695828887 994306219 170398584 64764883 115644979 37873733 964069762 67529114 611867623 656818088 971592204 258265744 151103562 331470643 119867159 869564421 24842878 644322001 699125921 362974883 871652045 381162789 985007808 383907647 443798832 778289072 542963768 56522410 730280130 347364906 352751039 25276173 204690994 498678989 259858221 507199478 69620869 777050043 484276742 635720720 477845629 624289530 901279766 349452626 136927013 411245495 116000531 447889326 834303277 915276588 668693046 71040685 342446060 993407511 863545613 459757587 604289530 216105988 940677430 609878486 751784873 310993564 804055836 41880329 244685797 909856021 424227827 963474061 411461861 657045981 67790627 968230012 826100581 328415512 219853037 420518825 682991073 407096943 713191821 481727622 851426838 934403488 754206086 378713457 802855498 516244730 636241089 980395448 47190536 628060807 416963009 774429661 41878979 4042646 111404884 316761893 338023332 390629610 255798582 901970657 729738831 610065436 264583479 509593738 278828367 518363955 173583571 297735908 953800383 53283470 633087006 92460169 309579561 445129073 916701811 408383146 89667725 125623690 525624625 769549472 597103774 912328404 470616291 418349903 176153510 649398716 265561005 74986494 51188241 304004157 75997597 761160762 60026940 712070873 922248109 451470550 371445604 118665778 917746581 473073825 288014980 954752340 61136503 221494994 278346895 212498880 910244558 358938197 464641533 613370371 105836970 765796449 253253625 880487178 239460971 625195914 778148290 892858118 134531633 286297708 298835739 631354377 477137634 106526141 711643234 739086769 591114146 587033324 242744270 262575049 150545443 280661322 588296721 770535468 310251315 278102460 407678107 569035022 734456776 811870180 15219976 581901003 821013176 195130836 671142365 810634580 553119026 400866483 51792310 878339186 122267807 615297459 292986335 876020136 508641165 203549323 384700491 567219774 588099742 204034059 687287536 932470035 290208781 329085392 182163015 45289784 114119371 709551366 684486245 6719158 343080471 907484343 959007786 641987942 373435855 659679091 962092120 650669500 691038223 136156466 480605013 8913542 25987397 878272429 637809920 259368766 416701590 584785305 914405829 878728031 562141705 98985701 782180169 439072969 73446844 834591394 273754757 345896143 12153062 85647765 712660107 607079764 186057995 957119929 68951988 602919762 95656199 370027026 254947696 359416742 435644025 385191287 51661251 899090772 860191201 568411687 297721358 620687779 216435319 971186366 882552657 85374427 105309880 865429200 461827081 590570703 984473798 176567032 636342722 155685788 641394572 191053279 163392304 88735236 883064475 765846405 156482606 93617269 738208043 71456861 282436086 231830897 876992635 68849814 115924265 766442480 284240827 792945063 305912271 251213254 236309016 553569325 436247365 807860390 752969001 516940946 996673588 349478343 464578300 976261705 892271589 588066689 636657199 365675359 838701247 889041633 570676206 506784258 438465621 98704792 174114925 946201270 18905117 59174262 236351889 559557394 495603688 596230466 49539465 755759041 366521403 619353063 177131353 801723399 47505181 587137996 630116807 778695565 170839631 225885090 642953881 609254720 487920967 705852717 297751450 308544548 405692188 66103819 260549144 773844336 244069396 55931903 305957448 371453794 617305181 496089296 222888252 558838922 537037919 23420905 896143324 569039019 504650903 270823250 104426543 239131307 171361368 29293180 548159148 191027016 572013039 155260119 628786316 974615428 902646252 926986382 872531607 561743356 670000005 127370977 471146715 828080072 172351513 122820746 304966436 439028631 617203480 173906715 381715957 972703711 418251915 504614287 849568481 411048777 208847769 414226806 220060029 598727314 951596212 755890076 156888850 971723711 786414619 472784806 865245010 529174289 699937036 460227261 238953012 480818452 298187345 788710159 950149495 28251577 206910139 784220519 407495368 838980236 263373397 615783600 936113313 994984688 437939735 398876803 723322618 914267622 462326894 214651917 509925332 687235249 353933572 572375066 282953920 807202342 168321128 497688033 860155305 931446640 867583843 691575578 487468059 335287218 138396332 338096967 996083408 194957360 680646274 872830867 570146097 68248862 582133951 337646145 333313740 445461942 339940293 498085490 142982762 107998137 14943527 995797418 196973645 774301846 913240075 333587420 520321317 111837921 253498888 9256166 483517965 900632572 398785433 361375531 807193278 72490456 327392847 510363937 937805739 409270361 243812789 881642711 98375489 573645389 457962666 49626935 151519583 674165079 583873046 190464312 545002632 529121103 851419007 938079826 140053422 479808434 139736849 969055069 614623341 64794233 242998031 321357430 508895665 694505725 948715979 449528590 375370726 972729022 380431728 672295212 859045101 698417026 828166279 489897386 978044026 790008536 179755317 472572543 420260205 494281030 185692213 99443387 282883483 753145347 540721250 756866665 738690692 821724198 562318692 127717486 99360497 766338632 91937202 496967480 533307956 318811971 820040600 770355079 303182869 521705948 593329877 914923521 564455842 846757334 751948535 390734656 230896448 778740092 939064624 416354642 325296207 179486830 721680785 442067317 492758397 326014101 551858937 574400303 462158181 356388728 661911122 547175505 683268850 961843583 442471452 244547455 365102774 394214345 408216748 409042124 730527520 934496027 235714932 449264003 266532753 699883719 597460376 466777757 883601506 153555437 631663603 1543603 711882482 317254142 701152622 205821507 379561628 606151640 316162396 4752373 716454039 248729743 179597292 888678146 165932602 747527146 837670711 797948050 766769085 402974407 668261745 825179026 45453746 266185674 71769044 504147743 145251042 456181223 783430225 858203829 573876959 575901841 858356216 535092704 167706668 795766327 327600141 914537149 560938872 152595918 651222828 583631368 909651278 784605522 497553551 133533291 333429279 566711278 379228392 865513923 83026998 13537998 101496010 656201841 419251712 175412611 713243674 35885429 505620554 242526098 985558513 966127453 523681251 881582210 49390757 149895065 154041671 16641193 426463717 754300419 90052049 312060224 190527951 490532202 972634160 759417656 403448957 703926533 962460482 691699107 443667450 592615326 354064767 306695999 373651060 691315453 416413749 536775525 135073063 837750927 461604955 69450104 574654567 36498880 823005438 578955966 300204032 823063805 162674510 726412263 89494368 892555367 412614532 208346136 526671070 828768537 541459362 858488464 591085888 65003169 395930 444696152 423929823 278941873 129248802 986592618 101490998 316450940 813316871 966439553 744685233 536001919 170597175 166058833 746899501 810100000 709069213 608237803 719165927 784738377 155426724 402816723 115514606 51836572 385758393 907583898 82880018 443718181 879263424 837114462 756851735 635832838 451586529 8759507 208577352 542924972 5824722 854225249 783600395 843259575 961261399 207998772 270464482 652368849 9475494 294034941 25833593 678522277 398955849 642404437 265277603 342396580 515170810 288853426 179382518 802211585 665942232 837938608 699707652 217361329 739081809 457305102 935806565 187215269 592989279 42671222 296730285 912009617 541040926 22813222 543846744 869024697 649810782 986642811 716320672 839115310 413026575 100195254 564565813 389909844 864593296 175747086 951447407 395199933 898755173 586399721 28625173 382673196 563870671 543844863 111864047 49893346 746456090 807950745 440927634 898033992 784931740 880073230 25900250 208564577 916270694 775758038 231300881 154535976 301893867 521735614 132406418 183295920 970841509 486146042 631922153 456831462 525686940 256224564 265690315 353066328 508278796 164615350 556300387 90825977 432001239 831820720 83491151 260009002 673310487 625491607 783062688 346159001 311056781 952189251 948218513 6061671 91541621 562370918 785437318 393454885 173821881 387133192 442663720 715111653 775369979 971209613 249797381 428126081 645028398 299990195 344989695 198419281 373278513 758976455 854892302 434353346 224645142 284955058 628012341 939987673 127585945 200195378 960960318 963255898 55338170 514451681 284935993 75217345 874909924 789951311 875192368 661265181 87656389 404293654 658814811 74369593 922024678 332855482 597227552 333679686 797652343 887237142 250779021 85382631 197864594 899548524 687835404 841440975 559837112 364371340 460724792 139440793 681970008 842373879 304268192 265616575 757154144 148045469 763961449 887825428 156473587 115402548 282023965 414143406 54807019 331796373 21143408 493572576 201509142 285328870 862640074 64439209 684920569 348407435 384366539 121818046 385523258 559359901 134133316 551051937 810386157 94516693 462385298 776217919 401450714 613700608 407658810 961004203 813582929 50262911 196051370 232488418 107049897 145355420 891957680 693559393 653066655 909681230 277508710 613243502 924619192 266212062 609144712 670571144 866198456 71184181 696178114 302233458 195873238 109332479 681270403 696617553 288577678 647667553 625221601 446274755 182616693 834582059 614157356 949201111 377012685 651475855 521611781 867478974 989832096 535153165 792250079 999231493 624301713 930019923 268609535 914222127 526189882 233799099 219778020 851399356 489710691 654873886 477784456 903959342 533546136 596635464 347199337 361099725 838674211 141942048 569677147 918427239 319674210 783965848 729465621 440476876 218593295 470502446 574839206 301647393 463150529 323539692 99428106 270251882 394371173 473418933 629634360 866274565 859789443 897971213 663893627 472013614 878904886 373280912 809599422 892854571 554206885 105727351 949259769 710974607 61109853 863633827 250899802 103234110 412598629 236358842 358592362 83443546 66276331 333832089 801157668 987293218 239292073 656688030 711325033 551741804 772198355 680192197 658410376 595421842 139057952 466925642 440841896 297747324 274355286 944079315 42672366 872512428 57575361 187846916 905784549 751302751 254917413 387754595 366810704 888780161 442534320 233224223 556845319 918232318 991026405 857714875 985658252 445220619 407499853 486385265 737277011 395115140 542720669 152872512 590423378 129836645 18166523 104057457 671960407 689646935 689286233 863352392 776976977 106257882 536834275 802918168 508821138 121244695 841395114 650199119 305336033 89468788 181112691 157492345 267290493 739623473 744755890 253294159 416454448 973582138 675583164 355324184 778597067 644900714 217255 38105512 602149103 334643486 552493950 101690678 905696529 431519559 222944878 743390522 310278627 615038366 324988624 848100640 457458963 862653915 208407030 867909328 498100404 244407980 972306545 280080127 184674080 781445696 562761192 258927449 725922752 37498206 275959124 782097429 480803377 317167131 768091884 792630597 611684239 675705991 564812252 753505093 573301744 484525966 382191473 231055437 191082622 804086921 144884024 141131664 485269928 680901930 392441475 911829918 188161016 122518949 38295137 76744172 889311876 78465606 468374546 920841118 849742821 89710074 956810207 126357451 531025160 838714668 648306968 756639116 839883170 79223490 379650040 539306386 13084161 130349466 175066584 64506428 698329564 466869448 869997507 952884127 308196959 24735649 498307238 368343755 518347595 584343396 135514204 14687551 438086656 659542198 494362689 774105701 758967328 409548537 163450412 123766343 371921176 739881207 849196150 267079102 654994987 226997773 724826076 616410287 969864553 892321747 327383373 718904454 374894520 523934574 649233822 574326411 514338444 721057352 507134615 651589536 943732088 874037567 214997885 121882701 582788142 649533116 847642013 290917305 985628731 759807957 6723650 451344159 185448726 258720457 34084160 73048005 695395409 755755360 650663576 521655373 215525050 995724856 173291617 691159328 781558919 271677891 387302276 368448373 913284741 899697853 225665264 897808085 483948530 309911648 124983910 532799966 805399870 344190627 5948933 255255004 810949250 587850116 439203069 337795598 82312582 200227131 880095497 873832443 479997260 637459318 158978551 782585470 912339337 970948768 786830876 168120235 117305988 304860019 394366938 54451187 910787716 628547925 257186779 509624715 773928185 221890989 998721435 681843389 203008843 775078631 201756731 544226579 816045636 231296892 318863183 6815095 197213425 537777172 247544878 241996288 580315776 151073283 581745424 811054597 452389553 808979938 953513178 710719801 437766414 397626286 234964463 685335558 288447985 626040472 362820206 518083323 16064197 643396583 144438402 733578518 890100094 420210433 643875602 476805720 180777908 373865049 887674825 713728591 712210646 556816894 996885240 230117241 782248659 368805386 625427907 422258952 581086415 944907627 371407232 45732069 602218015 395958937 328085327 603034811 147616257 276112960 170335699 213469218 703774777 787159632 907032647 176433375 140362879 873602122 892392616 153415753 970968567 919781877 483152037 266782445 595329864 523210472 760303772 171596558 242113677 394042961 362058666 429545766 336134305 52894229 340164844 595670367 773177098 875966783 794728886 283164534 761338311 626975444 163840365 872280446 650295757 119595254 486320488 557647623 997309983 258205355 989327089 425890465 870734256 285699959 827203150 667519310 436222511 799210200 684870724 153103350 196807876 625924098 502879720 640644414 529822263 548809755 88882371 650080911 281518269 510476920 336067836 67924271 783490953 219312867 541490430 663089304 795956977 472640404 683926046 665679261 968617601 730008877 541104204 890385006 945924120 362948664 429471558 607411599 392848177 166286976 480831231 757334999 720996530 414264496 931911469 327398166 871929522 948812631 967175059 39046991 967173152 86485019 669650703 929295774 373188452 628411286 489105072 284337425 716359122 148071148 102686166 916433659 795962120 900719475 921941196 368572735 305779793 425290026 179902311 731779685 771849465 841859667 387614785 151156623 352345607 778947876 997309697 853331935 27504008 229424736 41797936 26024668 972822075 344568137 319110853 382897938 299946771 919736506 904214410 619739851 756830966 808960619 388965378 436939040 252517563 298137439 874971532 341012023 929408041 359384359 744692543 437263371 274520873 395157741 240521727 940380768 45272837 481709341 52247202 165714174 232665422 172055617 533751849 234623531 881908107 955592299 763902157 27045361 852145361 155919882 681338521 751949 208420848 148349486 498589868 475572952 928599622 992809414 456308718 351125668 838934221 889431038 936421124 708848429 162451064 164666409 337636541 845189110 415443174 372283367 510955871 548966196 627772113 550537860 278943031 503259612 211677681 587372024 562149088 951872362 79231420 655550213 516792571 702863222 895253676 240519800 301418447 108502265 339340408 669876577 872507729 156908594 959095373 460577748 299383417 558224053 683068153 833672250 106304576 428652619 958001316 131280752 752120050 8471940 449373743 910620490 499952222 366599900 59214595 690224423 895093686 782135212 149278268 435393363 702223081 693501306 453817973 806195947 446257950 82456736 890483557 28894687 85105411 982070766 757833462 289161797 616446606 736162189 127900670 683370197 152053354 97586075 124581723 942582512 853522543 401970876 374483815 933034455 967234456 838054434 879210270 34914331 909755105 440361379 897253514 858461554 23341761 692492476 974672248 242138251 609772746 308072326 85091298 169563506 377802673 555284265 373557892 967113556 880935909 484257027 525838284 409414759 592693084 135716851 589779108 11795688 161223091 100233425 247658844 137813745 942368560 134839749 832471711 519234533 890038409 171304558 844975627 624864462 393047721 752321782 245648589 75213416 892658259 796494228 595659992 5176429 639198952 682909141 340620532 3417652 959086376 893654696 585686671 508172337 300252490 892128114 182212233 394001202 775524524 285672383 224176940 647204717 498646914 246040689 950956176 504355605 301002281 737462277 789410230 35997548 371964207 790944824 637953746 386268858 285245906 995343063 611415630 847069075 467210485 302210491 588694848 858912586 53942244 226122833 513391371 768453568 32417877 726913773 436269394 982173110 263743412 242645573 292151815 654332568 722233038 428880844 419288945 77326871 24250755 548148542 755240458 763553925 42225514 976942855 765935762 896726012 385810427 567810902 498836188 610728754 443445215 885115704 683602177 240800971 281061034 379619509 599978102 902125883 230184793 866507468 203219977 618123234 704332239 328601782 926140560 457386996 400447517 861007363 617834319 91522367 971123109 61185375 56924508 332810246 778045463 234344280 70749337 873991266 789252061 4983008 693561573 943825123 728156754 614827112 199530758 716230691 86297201 285667181 403703686 58170036 523558073 587789747 421011227 490461593 22275950 213909438 691264390 681362261 958011894 509907801 916045690 504325855 20873741 83927993 139014713 239293480 248550696 905792622 125602289 829723184 553549694 859557346 416023708 247980486 510627436 371007490 872323254 895406467 343954772 725071265 315707517 460824826 196914917 769483841 390455587 634953600 349012379 976764448 226468741 526143141 194800571 17417056 60908569 695671921 371078654 269468361 22685568 402781741 218724019 392579543 19110931 809399639 253753840 585733067 729414518 826469920 355284487 862341798 982136325 711958599 821375646 757007283 257056381 253176575 23490622 924257448 395308824 546215226 625765686 802841795 408432794 997922055 143291711 920953059 677585338 679093499 693868721 268856776 439659820 204942695 597660757 988805379 893861882 467142492 211331766 507605948 1563765 294189109 959829491 341592566 561879018 320734007 530398864 449169093 149897483 628971997 832120462 398548909 316269868 73281972 261305608 728415532 192350321 531566480 525980399 860084380 487963562 264302659 285466388 699697770 153119011 465499538 778352849 882840194 163038576 261558224 678239653 92052906 85745475 908843400 738058331 875314052 868222564 276451398 272756941 510557376 177442498 384751541 536324445 897925651 160321390 464022618 805103144 35264328 305020647 113533007 428781592 948847568 387373881 234235175 942227472 734660359 229566795 912862971 934161891 419748955 63707484 168061582 532658560 604013706 629818312 687212302 116184035 994630430 568584962 847258772 420498807 765332924 194675134 951686407 680633000 238456907 211633827 905701935 812851826 189973992 153873312 44772968 515499855 901681082 537197186 215502621 79779441 929366515 812997332 550023292 848201148 285601052 774484135 943745319 923919213 649763609 714807519 616903627 601895986 239956262 931323060 4609747 836091476 417769339 255229188 318712967 260232587 876096732 898529297 11486774 424368342 184761758 154522710 978308535 366805247 258477433 867739018 940396734 645974872 859020344 801986243 667903361 433400258 512465552 511203052 896159653 569117740 37853266 462268287 23355504 683458493 531468296 681352962 372641947 685709422 803763456 381665761 368111102 697104101 427396786 476619679 792630042 785392283 533928454 732576560 70144981 264795035 209035672 863414965 300498524 231614245 946101545 324038522 556218148 466705192 237248415 590967966 372946209 557184810 920088022 423520567 290440491 769854978 356552149 122239769 918423166 723970188 927480856 29188353 368789602 96940960 412307550 757330829 9692286 870565188 312044802 115515020 248563080 912057806 114273525 425439493 226148938 571274341 861102077 410704468 397844156 690677471 429208410 752448967 232418678 958381103 704502634 400653909 154048161 83869814 326434857 236936432 300932668 322842059 536407268 683393754 366337487 623460397 161055761 344707707 534518214 44950885 690360096 516551371 474186399 668460235 962627889 254857562 949864828 418256911 836948466 181595412 748792516 345246299 80197827 970580189 682237152 626135067 116289569 845993692 391983067 948269742 208849347 889767818 214812355 364161813 923810165 434677999 600648084 52545460 785943451 397217699 868751944 362844760 365023102 602163789 673058021 163084132 725963125 433981929 169115557 595189030 377085884 577903823 320039461 623027225 621499991 959476347 706563019 365423597 174446129 858982823 898888423 444568388 134151321 943886814 809636539 572367101 527922042 950908541 658280339 446110375 455445341 164283638 146411309 345391511 807230266 798471766 300117868 533853071 847765890 570597455 253826038 638922073 573791606 521556064 622394884 967634507 157206209 751707461 141322321 36795520 455918278 131418538 2906709 582771636 850335667 825065327 889961579 755992907 297449606 288531924 686776163 363816198 626380546 382267100 784052925 958286308 523173291 811136367 646128315 424305688 823282143 254315745 135348512 500554385 176902891 33359213 326208599 231934122 142495215 146600554 403511870 295295797 550373680 963174566 956038856 733762092 759582854 822735395 470296149 749168801 281020771 623500585 885170350 845292524 390230112 946465855 265138130 118259734 748487166 412706845 726383469 490362097 367097087 622714744 436248483 346340377 949518117 642799748 580751226 936917205 465847257 881089731 436262315 8725027 593887770 837968126 297821705 543177780 385258895 688330142 878199733 685817031 207423896 445445727 755560376 972063582 303858273 971026249 171267406 932088179 734594425 339140730 685569726 7365009 580251766 100793611 962231715 153066732 73750768 481555668 969594013 124354104 358048748 528629984 403563975 572222467 214705731 295627919 212950147 466592258 308396233 392479258 832342678 945310758 520914581 789742085 505477327 684690313 504164228 285966887 42469643 350113242 613727912 79360896 999060889 812083580 226876783 681547411 825060121 700934564 990174860 757839242 827238553 489172016 372062886 988366282 935014998 986756724 395823986 802877409 972123805 727712370 550358528 844386069 822789407 445392145 450061567 358506090 560948735 957281127 184531369 36270935 585434920 921483365 582159343 580440319 84282056 988045049 124739536 727380389 400906114 483406438 684677493 264636586 380526969 808188033 363519809 274152810 237172656 929760607 39026639 698026356 460395491 908602394 756480685 71826049 710999984 852030986 729096010 784381308 252551054 95308190 798382957 376710014 741970118 122650422 278974556 839185564 103999859 94311109 613167437 328327402 690389068 548570936 435061930 141428620 88006788 851172018 509257400 538153565 302301534 401528782 945977149 688441389 555304109 586347304 277928864 814218269 725163647 587369757 494075976 913160194 631317076 76842916 6866696 163613008 293113509 468469215 207027334 411567108 881380444 367788517 859883558 89739089 299893279 5447344 524484821 530860619 410948335 739827456 628815417 163653590 763717288 205925781 587068928 264127653 794760478 38086577 433000135 668635826 141234307 2205781 649567503 328591143 955476936 37433468 103079928 555757648 147834398 502004912 70671518 437037779 553769908 898184312 739234923 647339055 155635585 854804232 980838005 665995921 684384237 435310234 546070975 60986884 174896374 996892302 200550824 773169047 614690674 831245152 49951986 220384670 709316173 190899387 165125818 868068618 85241134 485390241 346846069 664459963 437838007 167319365 912472124 68164676 237789131 925986416 519298171 277985318 736694193 360397963 752694951 904715748 608302716 196381260 512971802 821402964 636775425 834923919 859603402 945338347 389533984 819202275 907716535 508711732 466705029 347933598 175682874 712153248 916557587 594054375 986187729 143222642 523763996 92408693 365419234 906587263 936560104 141484608 977782631 907026610 261631445 891333091 403730584 598750761 236387585 447543111 831418803 338957759 72798979 996661256 309997851 24259899 751453474 613160437 367406403 524716181 126993371 229371921 773799382 420014410 348762041 768308753 279422070 782790739 744439608 199518900 38178074 54657352 202827273 963743726 361111284 910238421 689550442 116142216 474897646 377704182 920130077 126680245 863765339 955674596 180874813 358088492 99120478 36754578 987217051 547228240 216787594 667682236 401878592 234267888 69092203 38201859 518239815 891802412 239654493 56682193 269363448 449927297 394550610 212071097 371063614 578640703 829395003 794799953 339946187 570288098 402967249 531246662 919509269 881693956 648467618 456538413 109247012 529193529 838702070 684137877 785214641 711546754 758113056 841093077 737477889 712820317 899813823 564504835 268187879 432193536 275091779 357667796 78430048 662024540 688991805 318343868 252309013 689275816 2066372 999414954 827659108 292633402 648645983 72265849 913986036 951366068 452169498 388971371 449181929 859844354 412364463 11055920 592075445 467610866 356403354 691538866 832286956 816294513 165590754 394110635 255943135 895884168 897121100 784206903 947766777 195018578 759810446 945902098 492362623 320697781 930994512 513139729 112026491 878413424 378743643 97965515 148714285 960387914 499178288 681801286 735191756 946246681 947922040 840227244 399093808 300086502 412193762 58565247 986851152 22019126 22399143 539949544 843729040 727638520 263249142 272230271 945421170 218774544 117830292 418278210 525566649 431719418 990016528 515968036 414264532 751265169 203415461 772053127 211038776 281426523 499185785 901072888 255121110 219365090 52994820 361910074 691789716 354998895 922919057 190005289 823833146 442044245 444386194 547682730 110391390 30650775 770207728 440628647 624221550 689851402 255756262 688267313 800991590 421146096 321868950 973982470 522393712 235346300 677293510 615445736 869144937 483522999 634239130 464010908 391225166 412439293 564571202 440237 31263246 830838052 322780410 466065672 613366892 212614275 8430001 656761375 383920523 886595324 489085646 228316341 356339767 71547005 452778970 44150788 435272967 878792619 565898883 589624682 399253031 966511084 379727506 211630394 732073627 710499427 480174451 44245910 690416545 657427791 133820884 963925818 475334790 804526873 511978800 31894433 802669132 837778995 724120834 232976320 953468682 548548324 673058957 948427781 22483070 424722915 344195588 608622545 230977277 733226629 386182643 925134295 119316845 825267906 516030416 874997346 217562623 808572930 138212745 360795681 184404744 834202237 659681616 366170108 63689679 462101379 212556146 186546078 783649865 415591369 113915562 775696132 548550209 962525854 492891945 142429981 497219036 440484718 650506806 948325759 316577301 190808286 536865727 729816199 102082537 926237998 964672376 620655592 395828719 778092988 962951516 419330069 823997756 555151995 351025531 600182656 346757190 658770782 76698363 979448274 999613219 162257869 549545375 53527322 794094416 327995955 229745 308458860 428495808 175584453 857027568 71879930 762196627 99633224 519419894 611322510 635096370 165968119 280785582 457720530 52505404 729063340 981707300 108797554 963088736 886031108 989765129 373798586 296385785 194645407 669933859 727202991 409502931 918189962 385928552 198113374 842359549 813115114 746052849 759893186 238976827 997619863 524472141 105979697 690540324 765396837 907724466 273783323 337049360 322619440 664380400 246303594 54747172 377044156 250738273 453445068 490475773 309852826 902480844 152486692 307520843 130518561 966800739 193150864 507327098 864615049 718337786 991868778 609565878 858962963 469352767 970978150 24160704 611745938 129715553 725609426 737899860 893880744 373893500 21495400 961252396 743075723 511652582 433942112 958400185 315638293 708921084 506054363 997478133 658472620 591801624 404758422 442451077 647674935 602820394 583698327 95731289 928107675 341357389 391470496 826843952 578975351 634127315 411326937 443905202 237962200 507324827 721897110 911919646 242368772 572659412 484776946 349608849 818720119 798736359 625669080 651443371 176787903 645152727 6276526 282249288 874404922 429893904 213493002 317356652 308747690 896654836 965622128 314205289 765580262 643618949 185768309 974165816 437716739 872280504 875414453 10845537 431590811 560410418 292656292 310854287 508270530 20046786 850667947 188711751 344982233 407579045 766489038 990370234 754001901 516721049 456186929 404415590 313014348 183627161 704908078 791025986 853354943 237965289 11322582 977124574 857672724 807798186 132796712 275067860 862947644 233627651 952682367 135582564 21396958 249549783 548660874 923723186 677754991 863673845 536799619 753866150 270529893 456882836 413475025 626884651 36088259 447027757 73298877 74819824 107286330 196193432 349501559 176935414 382073393 855351661 239877825 722380658 291248893 407979406 447637975 234690123 496675051 651354263 717286096 80526240 466390783 843976556 381083914 50442605 751684794 651082329 984885526 43398077 507966416 825335678 231014760 986304666 269553109 313857078 685168440 909516132 104812673 734122133 508538469 290120788 985034969 637347018 483241233 986888108 612514973 40405665 429166537 679410168 86984947 388760914 588441992 377854194 63601394 337241470 505825548 543259277 983089550 512848863 926614083 354353099 377469446 812984034 149785562 501022745 611934738 755669684 157446689 940870365 792825644 753135342 84015442 338248663 418844355 331877464 710527048 993895015 763760082 278149447 262363947 121082131 958515557 497805357 494909349 283125735 598586128 970079231 900653837 206164822 228737281 375506242 58920867 135356634 868929524 577938739 820766432 516365386 823774485 500651467 532876524 402479702 716237865 620418452 685578313 713523437 711219259 169765333 681531664 196115856 731684111 161769585 167924835 616998746 582159187 767310483 200295207 177409209 32915274 617974144 252247883 994639912 353775136 678948579 397524473 840057194 882802701 645986824 532301166 653009 351977898 339127006 754169187 13136651 61445290 275455986 333555997 62950243 685934815 119035090 455411473 966251188 748584585 788377726 424110784 214772138 280256108 246671102 173995707 43937029 760763969 837933483 410677694 339342941 828048484 977567686 528754913 552250815 791389702 824634479 864924890 183268794 143158445 263675836 245740765 417271883 9177109 818727417 22429229 737052707 98591515 108715909 376535504 330648267 535056665 171053551 679890886 248833078 202184967 42261489 861235202 240175737 953721210 741585901 909330586 848721166 888937406 674583054 313943682 429873700 978349551 38470072 913330867 767209894 165819716 896293282 801672598 277372991 566440290 511655965 272454366 164168221 815132599 520870834 889444815 432385451 563151966 46842324 86573922 713912816 557866948 454058542 636366625 478837043 664491920 389060714 878778334 800578809 773998187 863741794 223933248 853106240 927520588 880703370 98418424 416822264 857572940 306955004 490895912 666290453 887803713 379844578 167286145 753767494 133218664 580286711 366146103 372757921 161172195 343914848 664756524 509234213 55906287 876798315 132890174 382566156 70762997 983467215 780943330 513074423 958748364 14846215 44327743 998798847 12230946 171121828 610317662 348835574 835558272 513010018 392410448 266763756 1981567 909614656 819421520 412576781 85514143 527226341 641013261 438702604 668721569 215197742 364559464 761278873 389424112 39153592 452520354 611837537 553014392 366006077 96134139 712685881 833522804 758958907 695371508 631530887 673700989 386281109 395987 270291533 737359004 79167419 962753025 936784620 246886914 590704431 596963293 895225114 769423989 699889831 996608639 191941636 208442740 817261258 847871782 246808561 249867240 903312102 751422870 866518689 565370818 155158331 651567751 854430268 221225813 920395269 24014188 722974053 774626277 686283598 617549535 684790663 116123343 441761676 451504908 496494819 313651841 132378717 870382871 267899804 480649118 725099917 769840389 391525864 940260962 404164129 83017244 3809158 185135263 15216440 271980164 961453515 549198420 581763989 216609270 599730305 400080228 321856637 238690433 198725368 59494251 299182125 957894001 373197660 123337097 317469260 468549727 59712797 602961199 89857454 400081011 451185694 703220853 345404658 382361380 271952938 857223071 996100845 17497346 326542854 111913825 111938825 874276604 977698489 26376668 576528142 879568820 595857072 789089714 846841748 302918909 584578987 660504405 418917584 527728826 258692734 872549649 877501063 628993786 748416275 734861118 435565830 84901603 533866248 678163132 211712398 112755210 396001821 45023010 77163056 43949427 243464797 97857961 995105215 208940850 147362459 105745869 281151879 601193485 333736346 870219880 509870731 512644494 44647568 33925141 497605921 620852834 801035612 447461595 245397803 442956730 739907463 327326474 377093286 255756390 361140987 59995864 125449528 860227427 763935295 859861077 794020107 107932532 470404681 814195762 142190951 774018667 22057683 166020542 110714108 536427462 623858325 760185468 371840200 371273502 156768399 860996504 537414410 664012677 52296450 486722200 391570191 714955996 657192917 414727639 16263850 573332314 197617475 940699039 497839094 43165984 898975579 601718364 673100936 652052292 838224301 505965625 653047189 813849673 710247339 154463954 291839867 706879814 815615355 219583613 148462494 908891368 894073296 742975047 559746183 990553097 518558053 300099954 778351880 64026123 182290423 408543349 185936133 802028252 584309951 507727875 817886722 37312455 492196258 268055216 232875129 584776683 376649840 84281673 958737331 219770298 587738334 543044315 651606977 701942432 892839198 793513712 793213870 700893871 281676991 961618905 785787397 812542239 222374650 317155547 528511924 692304801 206859955 460083759 697829913 263339167 887845874 323050373 2896400 868755600 82544692 340814568 331944978 880050763 811079080 623645073 750598151 317295324 54336812 185261922 87889939 95726901 732919093 70670171 582642780 442933745 376439701 433262185 167680427 621018147 994580184 148434526 860195696 434479818 778183558 260974268 813430674 432426563 856258090 695652505 672910080 757298410 89395564 120521591 668125250 741025638 227637640 591849372 488716299 805689623 376455939 206486265 301605559 214927583 186975820 623428911 829468804 284186706 584474291 871786982 783120962 50707588 797299122 889301045 815814962 745172840 786150093 783395714 287657612 729529120 521302476 284305771 224758495 647669822 270338164 972902027 960591924 395494835 171329041 920677111 530525878 38246686 221774198 445753048 957453079 99497027 275934385 13359315 826922700 878522941 903490921 893222908 708979596 297031478 484578499 826961579 426309689 332777280 762964593 16296462 367141742 123973356 772445893 673691165 209376099 200586364 463164206 174652254 79258622 557006929 268378327 844931767 859812103 15772820 614664662 22762028 889776427 284492631 323845716 831256637 291083571 582033022 964548112 845199255 245205458 90440794 518502131 692089848 357251991 819023080 584129504 751984180 25019678 104021269 47281810 87736511 449601200 672630625 465985458 715976133 691812697 751266645 600144643 791976011 237295488 419671434 34569319 583941336 458699666 29261599 928763055 498235989 177785327 252909855 329614829 130644365 84507013 842130660 247861786 786459572 760254489 713114828 930050583 400730172 966003809 772324040 753694399 43770328 748594107 931618240 670555822 247190482 477945244 782130113 693190425 876883009 494873511 43309309 224280202 867989185 69195473 962740860 644567425 421052518 693553510 889166633 14468104 654836183 870038554 331884748 948542458 287590506 671938945 7809014 823642732 63000292 841966588 552916012 936442799 775895143 291604547 933688885 37258292 742703030 952912404 660819585 616678235 396790488 492901807 392499046 396472813 104164465 661520046 411349373 729161859 799068800 12411687 426387730 710755846 892440179 366075380 731067466 653043825 429077077 707456575 541857729 721004261 867564814 940503414 560233067 900370878 750180181 165571502 345877571 860320071 995562083 93400764 692868533 920042947 506493305 874654619 6688933 978750403 160886077 636179816 648858123 540091950 600006376 291320318 628883519 186979835 4510047 996969754 474549510 796110069 522076857 450959610 837962090 279958578 83663569 841234519 282599921 635688819 458001006 343568093 108620918 790963503 50718673 30462549 767841322 809522933 391533611 519482931 884764500 846868472 486394341 974895354 791605929 888032086 825458488 913035 952220767 689845970 158798624 419048 913962635 184409264 231099806 728362129 709750737 589487092 822611111 529307002 272850740 537576236 268301405 417923402 891505873 50684167 194130169 446294910 654244306 700362381 223395100 30217005 631191685 995675573 660684314 597672415 405530141 979726025 847951301 172344590 647079741 701085528 718802194 955011387 288096304 602841935 674829049 903580175 617042284 886493360 253815921 179457466 179374320 143127225 738596440 490172936 906296913 290940252 764455847 849545869 231117320 2034771 878757831 865762703 108476100 123215752 298338202 390081351 394319155 660235454 885307060 971330482 948244048 274338211 15039230 710315037 254845619 581750729 795010737 889688014 766231153 364919542 321368616 523196570 735914407 876156401 600081855 505135235 302514617 685203010 915777872 961549994 927675624 247368261 812789557 538392170 677209533 949576196 600638409 351818803 731923958 670087236 678425909 991705446 343861161 504049706 326220858 228939701 889998265 520957166 692193244 871158132 310689637 669611882 761553284 499671745 304357762 644746741 404444369 626704115 275739120 24556973 803489282 147509476 48916125 577653121 850938249 662642498 966842028 330162900 768569553 546332575 353901775 554224562 952289081 230669709 809290802 442044384 554870384 851312108 132545143 85737175 609620490 419113488 905418979 132703878 980701530 107374096 492889549 923246669 782829629 754474772 626034033 219979305 469944697 966853186 949817270 119520979 882272806 810548861 624078619 161088471 37530061 332389096 13389502 450967841 177703177 781584039 350777705 925135536 238164146 849783502 381149509 505816104 810667994 479413948 3440883 672718293 626362829 643686186 812803087 703935594 291016715 55952642 671304579 79428852 684620786 383432526 387579188 437984480 290282036 541549962 797907679 116570569 772266462 910907070 535129316 12431429 575431468 214548228 321241490 412041285 959929015 155058035 646641356 708421389 40009003 743586164 250606379 250751429 555728948 899111247 408968023 22529140 518792160 203720805 178448739 389595122 122225542 745167959 214847341 370471278 27894947 236352981 588656610 875817789 817671080 390133657 261231389 909838886 231863911 973966858 924084782 627510757 156130635 51964195 925189479 29711668 475031365 961242381 806882230 634499839 184551909 659824217 379689470 693048265 512396759 711854270 742661037 396057036 786713609 560830109 348509299 440453784 474728568 241889913 823071038 250593585 849360800 508950559 623469236 589375163 528933878 818626352 161946571 839375233 928613442 89304002 307650603 652801900 844763928 682968197 872745554 261957912 146724085 923980953 784690099 154841729 943589946 547120823 269407841 707642488 383297992 683853077 339303560 185638058 675570629 655459092 895372508 900971923 258153935 452344460 184169165 364901616 514171151 901256085 17098506 285676660 211166326 338333879 759026633 813481308 500223071 491178807 498022482 72385855 841531030 64326989 191052352 353282765 176348027 790683923 414242312 988301521 262284271 953698066 101552078 693664766 505204453 388105434 493095156 765193260 545067797 685904266 366886979 522099913 208026719 1351958 812078692 682521359 870569405 715189469 807472262 662201562 4484300 373469356 866878564 482378579 888749991 894713408 303527552 433057353 864492407 496917324 777552950 407055245 357468597 965489413 649467099 156052593 813671211 220522235 590693522 245204777 520089500 115260672 318826810 278147165 135200370 320549595 220898830 958417999 520806511 264549298 886361773 393410021 622735887 421480330 252540066 74107962 528124269 718218150 228314860 409916881 578291530 638229572 216683393 495023696 267825233 677629029 998661668 933588589 583447205 783741525 683772358 914461544 438912621 721743948 397962657 72228726 944051431 318783641 700886128 931093233 322174250 85529336 353458043 456892771 140679221 938820660 860474244 71088937 423584178 388648677 481532883 160328651 658998229 153750062 381284222 180123347 889192967 311107022 806914410 62165011 449764501 566539246 725391802 675222061 591118824 298867898 841527708 464771965 813010004 999585061 278481238 689210193 382919240 808253577 132212761 823001022 200982994 116139946 674382488 965448213 302800364 81807223 493572113 727261184 509465429 563302284 815049236 16029090 381191460 244214725 534161388 936823867 912444619 206221558 160706676 670538258 502088619 53822817 173080694 885309219 2585296 139024392 402128824 114657159 730758986 953037394 118480541 712281938 397556299 231899343 956701997 977529036 474375962 890915630 974014158 183610306 644363540 584403614 74786621 999875599 22971295 408420769 944921497 356173580 276643753 754810480 416584586 291200674 620711487 297444238 66863483 254779927 689734282 640116866 42761075 626755703 197495966 271949565 307260337 941640874 951057628 771383546 803782799 47095070 72653808 604012686 93315656 707696565 783741430 372581222 757271055 495435741 104988120 275554445 973780976 203418438 295822267 784544043 950767930 471497789 588295359 890004679 813581593 307346979 170925610 938388132 719770566 275424456 614553625 165861842 827367712 497520315 746833832 583249760 498661670 730241034 462781559 114473773 976898620 83055317 352316973 456437333 566191310 602412046 547156600 327164171 985572171 875120831 998667405 944356854 82754409 829938504 189962873 51943542 326950458 780047353 995431 299384342 607930804 916682963 68572959 547102065 412012061 297601277 53276180 51956463 866587576 209560596 914560430 474746229 906216719 161167120 587787376 366109439 710696162 363840950 932594493 459009508 60602868 790037216 872451151 495608829 416391348 8522368 392608180 584105542 753392250 991424453 368400001 894616546 148189130 615364152 704383486 944788888 215363071 598509835 301491887 495706457 499006966 177396968 304330039 318174319 636261678 793488721 515160674 836044794 730124331 580771534 300705527 638823721 29119736 408850908 114789639 683197206 131036996 82134444 104821164 648481455 554946939 536267389 879069950 273472938 510132516 333271372 672329722 173509566 638175252 429740560 892878822 30522855 205867668 627594662 871589745 389591628 530889201 467162118 844156821 448699996 661752008 345947428 459880670 632163609 770073793 312521724 842926010 629931723 976512383 828606946 49414612 858096918 280375015 920265225 601826443 835875381 620717171 776422946 477736688 961986195 708866475 423409551 973298156 529570181 246494673 915718630 449911745 369837306 622895067 809524085 378307974 714669145 901500604 554235297 146295659 743861213 719639166 474242078 560096163 676567309 581518786 695765992 167414360 128961118 575552108 843489116 474785636 898765277 473978063 863956908 350809766 280080122 434101097 803867051 148932464 848497172 195942359 287516802 98239152 140720540 476308493 831961812 739560812 670184606 55421426 314600578 376341560 120366695 493166471 367475226 855257013 710358357 943668709 392996588 655217273 198236653 448553394 98587504 596990445 824032807 168255809 659422482 66345993 149752944 195074090 62942889 985782199 886513803 748814437 703516259 995518545 71929293 185361325 372788255 569069070 439806349 165652397 864408281 283906524 183672940 377962878 268730253 25628664 611415150 749854797 253632912 126255710 223139103 825290771 92583456 4930962 23920601 662399075 588287025 959302415 886539661 462392788 299497165 874646102 264943554 751473880 128466563 191984352 407866336 747056138 283225499 90080498 89861261 959667340 807764990 287150437 704101638 750949751 485094296 799345300 223347913 398930554 100062513 901876941 409887979 28493887 841105048 517663179 789161727 894980334 384703217 45257096 938062524 574555914 824978377 21820798 867199353 881701917 823670984 821491019 807782172 272876611 986858980 779805037 43838917 940142858 888509794 819794828 228021629 206823859 362470372 185729792 588134488 789858919 94556219 936180248 729127713 360671738 538433453 107153150 565282808 147292803 336780171 23257449 183379110 908029962 864671755 835191430 499790914 729340289 670792946 361252130 627488197 835614838 328375130 933164809 346005115 23793975 897069778 404891130 792821971 817716450 455628466 967930580 438786625 158525254 535316947 735588940 205522286 553312091 18035748 464089289 262611741 347175079 34320139 478664976 8836290 82268208 518030020 339138930 529829744 890747643 996279356 420241007 950716115 529925530 396468535 445735524 392682359 992287116 502975810 147995880 130738610 413580672 643726430 726427293 871897821 136650691 904409219 340517134 767786838 913934259 61319683 490478692 475117032 315488726 773857880 273039236 844756463 663815371 763864951 202400541 135757925 755902319 506936746 991401353 500603907 929020415 665249473 895507543 412126984 656577570 337423272 495947961 450295681 80792925 454174675 633655353 979379613 815715728 663078662 600173596 6883631 240408432 669186026 928005591 259670955 721941773 99944436 828804313 695864581 906400928 924174903 97187116 568011065 871993687 804061508 850694528 999289090 553175513 159164307 834137590 383038246 834406692 890524654 288118994 668371014 618724908 670607113 492686699 512145296 452594159 192680397 527008633 676097727 44339160 752417329 885440102 935068963 457594701 772216978 854550609 536855439 134399478 471249074 436741523 985358923 749999001 482495183 409394757 947162144 604609360 665059171 234101113 902902730 404677594 631051102 906516813 771182983 570106239 519035384 266730787 919321850 904538975 70666421 37957506 685968968 326568817 687520556 440779501 564009825 217210675 592647182 50493478 27053096 927961154 506105235 169795577 181297536 450879467 505568708 120709956 358074586 65173258 677863008 659350431 233254104 797866029 78490368 90603957 117118149 63968800 458509994 984751272 746096480 805471238 388402048 761357405 78650565 531286010 172666513 963944076 98635250 16014870 848561449 995292895 292248355 226490468 149280835 272973162 831402087 465229906 838997345 461298710 962092416 312145528 718225072 370809078 114369333 526258082 972206092 232581615 960112700 264939702 222952750 249061479 362261083 270089755 39842754 106730334 833550947 69407842 52402369 773251434 987111746 282178110 898372050 373815139 785631134 82717010 474683658 911671698 397592857 645630933 213082555 67182813 862430527 228100671 487365728 914706055 423970479 905956750 353442698 27507905 43392191 933920301 647591465 516198469 746132118 213439250 156035268 642735012 53671124 315147977 569575207 857575907 24385126 774490645 64523771 575549668 287866780 74329424 925612919 704396 476895442 854375859 776132360 853260673 844934742 765285141 649214451 411991581 303286791 241913600 675531653 14133081 761304325 502866293 752694177 363369686 648591450 29580365 285768335 238760074 532757322 162801902 365507336 868196699 174739788 422027250 996932089 925981584 922350863 984393870 650240886 36865756 989623342 331352140 779882718 244946230 802344405 476401083 631243652 30572469 562811500 539174729 432359419 167634228 104856849 685233552 304567565 367445340 260066121 82346739 23049435 790031251 149270874 55373880 387111089 768362640 990321776 102347777 785654617 561587438 6294894 687533282 733157404 35373152 63384403 291295417 369304954 283281729 798118474 96255613 234116466 696639509 28608647 62494967 464224609 426431992 168739292 505838181 611363506 232340266 641173964 382345505 158777196 73459874 819607618 6056415 746294914 30251939 870094978 693316654 919642656 440068623 292120828 363157147 662547696 463758570 247567558 888322081 495584561 726479534 997692472 457275943 300534093 6563311 687163251 569199795 112667724 747781980 295298661 398519174 769409628 847923941 641201333 646340019 540880980 258966872 136977931 63637188 313389958 566167823 439172351 662316403 973272851 229320980 365667662 242034399 431622303 757773398 213613019 470539966 96560215 778422546 819028968 496667350 615984777 776207414 150096462 819138550 850764903 651933615 414276591 853699944 72237131 740906561 65529184 173623951 236657667 113556772 928027671 713608209 445836650 183265099 798356268 762065425 957925213 521917269 373807778 991691157 452168107 477621729 953128628 912577972 861640341 618245325 166706391 90287965 884030834 432435202 94620608 937672956 662653164 995144466 783312029 751279271 33156051 174013462 67262928 568628312 225500154 720832214 483248525 777847664 4719609 163346974 529216816 897638310 485919598 634475989 934957266 753149931 909358459 354253032 714284951 202368801 388898381 857292650 441948293 65358421 797622156 669638318 468135369 591204726 820173489 575587920 570685390 564613716 472071492 621678766 205509161 335741205 677254773 658850447 969446472 544780794 308146798 799577444 292017953 509426093 786640951 851220284 498628316 444765813 567286552 216632207 6105184 539818021 293841255 413013666 201620417 316597734 622735815 764193656 427577719 112430964 230876306 257729698 174754985 90192438 927967858 247070287 583102323 177733411 980609479 923841438 65805943 346540366 221559567 299154861 66171820 954724625 933901461 827722733 800150066 972636829 308446903 924733073 624873571 228253890 42193381 932277086 602881351 831159238 905712137 712493075 747661917 958650024 185468574 485529628 186940171 472853771 419766114 137920308 360245680 336999214 222612662 222696738 56722555 484130225 352126001 288822317 674790209 164940695 469357316 405094069 510301358 910979807 421122944 527299438 799153433 509351337 739940662 162150692 493371173 202994926 680873696 689918286 497458357 221641600 79844607 454379418 981294779 323758954 482664334 667848352 852046069 513090546 842068821 120907472 747732549 576563189 965446423 226406320 350266404 859496704 928164856 657730029 614198957 941413603 252927423 843867064 637844199 510664800 737583016 719239494 396181755 306039495 61427787 569782289 892296638 514772223 606316363 41191421 157945251 379094497 976324045 499767397 379393337 10443490 514742020 526569866 823247355 78646892 823097669 248407627 673705681 426693862 999744040 394683877 205097978 710397140 408125596 609658920 342926993 920154925 611233704 845915942 143506292 591313144 597331170 180873548 613094458 27871294 834889838 668959529 90524591 827014133 111088608 208269625 393969017 288244301 447289012 651628236 70946770 408941638 967401680 223009913 932309837 217040459 588724585 484247614 702153744 217287773 531441300 291881327 290591347 870752985 781293529 894933106 664553197 55925613 123100318 222943466 387010880 392583316 728279584 818343671 297085759 766513562 748622406 772260506 594578577 209440371 541409497 55564851 996699128 38081197 376683031 776503053 42669546 587603583 864889256 914274613 490908803 374690498 185412123 911021706 445874666 277886310 897765542 342062820 886340728 630486190 659429213 208801157 572458698 677229321 73799473 632451919 375157371 618873682 742993436 449647978 602213362 813427879 788255250 331021717 457728584 140735134 233991344 488499681 49970851 434840210 212037883 204268551 400318484 519803277 946333360 317132292 570895323 710993935 714716741 87406382 635915332 244663483 596723878 155247143 329820996 310141189 687710647 556841574 880574202 949858612 280393913 769065170 658218087 232047540 760058163 714053929 501180501 83519231 110565071 789662924 66585139 346287763 759571425 199681895 825670282 424592682 808820344 767402508 562328901 75436144 418575237 273845645 865884147 126935872 215799121 50459561 62566677 211383191 600237416 213156316 151420309 169372367 199054713 815227773 244683519 122648263 713204128 452988740 809782601 961125018 325342664 498491179 389987245 822473643 686287489 769583167 576910162 429555801 372373941 969004645 980928606 327525753 236557522 764819668 22286935 213807208 636474795 263911632 224041883 694185325 981317468 953028301 172141880 276373209 886489978 172081720 833108308 959610822 967903597 208689757 65994468 563821609 586736624 367259699 43444340 725524169 514740330 625336501 514601325 551176773 980638240 500414682 858119853 395952331 500653539 535807269 902319242 766928409 68497636 113065214 325798598 9664185 959815326 20256126 953043731 820836906 992668447 330736778 955154229 961688772 605795420 417776882 122912594 738439266 49862565 747922600 382743415 475797871 534533169 994478800 205111812 950675467 199678410 606304558 385744725 867744006 629345239 772487790 623979062 953355351 188807425 573976870 691029475 121710794 115007891 820453806 474600143 646735537 11558040 265027790 241833129 884120813 437793795 727664276 628121709 916818677 186508073 115593517 190350333 894914127 370228672 807993297 934763604 300908430 4985906 853187007 320790397 741367575 361733973 664317102 598255309 97610363 264783459 580762691 255132877 270783264 191319783 566126551 762584310 943518919 892501445 552128163 706616552 365334375 627289936 929756866 186363933 609857338 30955312 789597622 408697512 85107039 207754184 995889576 999413530 982306422 998071759 378006577 360743064 187183002 270676621 298447845 89117723 611716615 643626239 604855482 689473554 825394552 141645165 2312463 817632413 344429435 294537393 377825319 536502019 478467818 626956355 334787391 947299625 938551975 514788180 997495318 896936430 471394156 359551646 139802598 92096039 938656607 66216588 772354 562645490 776584373 617502078 599689676 251906071 335464387 87035154 800837404 600804999 411874392 128602151 353570348 195342058 545674341 986768100 134769255 484683680 406552153 238303658 589321886 711608802 973594674 349928606 55977511 107460415 878665010 612476356 71640078 200720706 604560651 404649644 530665106 44900878 240826793 731774069 262773982 964195228 558569962 614577688 990925836 241909202 350938992 379959090 19677940 110588026 860167791 709188467 410416710 989014911 677771408 881211582 367683435 508096600 76218557 84373928 577188543 295571827 787707572 957248336 639172750 744910031 102199916 760747663 957173028 88129617 951733044 211385137 232046507 261090901 618283923 296133374 521767397 547000363 657644942 877797647 869410266 352559057 767999544 209097105 768440364 619760875 223677747 784739481 89160935 395656617 290062554 386898619 864485938 68455489 665651660 799845446 93217164 657263808 369431601 900077295 621075015 547126211 496760142 105927710 191885208 189742074 62742403 293013802 452736250 703171739 359713012 342098446 775509832 803575754 617264555 918785846 507023918 384899974 496134079 667744039 731410577 284647455 995826279 672427987 479283608 765023831 311306686 861017510 471199253 816303431 152892792 274268160 688706419 215852126 810089511 664141650 389299272 164157263 685883582 740032830 396686316 648142691 343832275 366522774 261498151 849304826 737791120 748698564 288421889 888956166 619689066 498593235 659267000 894232635 459985321 15003829 973053161 855146341 192759214 731953859 356900588 483170196 985199465 799904163 603252612 93523668 567018980 719687705 883307683 118854562 685520401 71843622 423347108 588604567 824398830 64968221 99598019 473071064 155895026 913118573 954454753 696538265 394212986 348001501 729398669 832548026 189947975 142091857 174593911 436473814 119436435 331471196 692474216 959936658 251476852 895478996 514126412 984984833 868557786 170381761 644523576 610394492 304667391 305783641 17630864 46981834 497434817 524383538 303847433 116243273 316155509 176393518 418217570 706045218 978923593 627914791 615921453 485169062 244607258 914892156 488007945 222867560 281320232 137136315 269031374 198606052 308830123 10778120 836102528 787073762 24651378 664486071 411211427 421729882 58358494 934730808 101418016 376341460 102785583 244565042 183240336 508752788 826064192 610818764 693938611 897886000 737846898 214180854 42716268 57276945 802578304 688544331 546652000 98539923 98689646 938613529 226891214 646497482 231767005 850278223 134064714 527491965 365718717 296827844 406213198 491515027 777864504 85593235 87560105 278436512 657907384 356469728 392299927 982071448 550002591 238780232 74569696 307117847 844514083 645034624 473339071 136310050 5081370 243692519 595144307 690925708 626195621 72799695 921228885 519458814 234883016 508539300 487398797 305289730 641338694 373064162 611937562 237111887 296243787 607732396 11579655 934320861 658699891 544216669 361278747 414025183 726137730 445287107 234297159 556887739 846021435 530685162 568549489 835753955 350591858 141399322 784698091 320472549 745312511 263210454 327436578 180801129 587937863 779989831 330550328 62105462 372278330 714094160 725618930 588506233 283477239 50159043 151235809 227012751 414608818 152164620 319350715 54173708 648567636 154642358 986607730 88525344 284600591 756744649 522592692 196539099 974850070 184918011 29255238 406013598 753558477 442200046 784752878 219289400 501913776 6112920 286392423 81520971 584396063 244101487 816865488 970423502 862573760 890680975 873584044 145194607 234027062 6174253 455857718 382176698 723637152 967165019 340863761 554550379 856875934 264847991 486419285 520894557 785885864 209484730 573421067 492177357 529088160 17046578 206559538 885610093 782913754 82122143 132767731 833477182 686313214 662022099 751607818 518888724 43504403 756636327 82096221 755164881 163897410 713323221 429007307 677871236 140157648 109739527 262540174 411005588 140486762 201394561 921088420 549392066 487093262 908643857 162863072 170378668 279837304 561962154 762614961 32841303 154506898 217418668 13227197 532125349 945122555 351530708 445674821 226138952 48745691 587453983 453986258 984840440 313018892 501628226 3508917 672040889 862053819 113797301 648215320 40628768 59760941 864253679 962100401 320866677 285913557 827155204 455342010 866138840 266641705 258334634 570448172 889514668 862480527 457791110 970277350 312306929 684602391 242593890 926940943 168234728 267268841 332242967 489675296 513198782 202247347 553144308 274021305 668063470 498289666 9336209 648236738 389784988 98816286 842718057 554573821 251545661 72233367 225040461 897480647 615428898 707083429 704226632 403837992 313162252 399063451 442492483 656402312 879152902 923733078 770811021 349290502 250938751 186852296 36574831 210261835 766407782 821637974 40838967 743061000 151427743 769567799 618706505 500063494 79866826 884883059 323043937 252468544 337596773 885178209 593163366 226465956 897579416 549007898 463714264 324825236 737363840 929146420 579298507 674117123 536653507 283378403 22618687 111961994 711953173 876352842 161891185 328128435 693228061 909588137 782279160 791083070 477477989 900421992 750448857 965657435 127207926 587268324 656632355 474273697 45191888 514886664 954386575 488946134 685403991 116577753 522471924 180426993 68753843 722429008 714317343 26393047 615985539 430072594 498141269 506458396 531561079 898893784 387252701 331321927 724261929 251501874 747294269 821428318 184649492 78364255 914205672 689282227 519732663 334020462 705865432 451748301 356469348 844705830 587620024 945502519 839876440 385848221 11640137 468298675 171503057 100832481 325206867 11631253 523822461 735517984 796426451 872031350 523612445 966679825 27152747 523055268 2333070 929600497 12058348 933487126 257704382 84582748 44617318 72895949 909360639 92329894 373272990 21473698 391546 843928654 944472349 541921585 630598774 876812509 540471096 976844258 134911416 346376235 332970267 402932821 915014304 242780956 233617809 212742066 880197741 171013988 800720939 947573600 4325586 979985403 558391257 758723613 334762395 577058355 183464776 691532760 745497849 551106630 889174968 253747387 832328537 737724637 484053414 641689305 749622418 126081764 248525882 289489627 279133098 633389149 379407466 305716655 144841076 769503880 395383856 588221896 562799538 434296959 358094307 36816542 564594356 964597946 693017045 853492483 329346281 819629941 870752214 729369339 5561694 630989188 793371867 363113306 369790682 955620496 874927257 786710352 27987852 154689467 799187293 496181121 637666483 473623027 331350287 218238622 338797241 299667220 324121808 331486906 558494412 293114535 295709273 541233598 142122698 729086978 137945321 937819157 108668648 208272741 784702135 53538877 807629431 503060475 143123522 322901108 670378636 319032414 834905452 528679911 872144882 410311861 917068422 407562350 945859062 957381712 332564307 602365196 685924266 704212518 659526649 665120243 177698110 753283314 770244537 557606905 939389787 490670604 658017117 266432349 131692660 810401795 159553030 431360082 442186848 693883893 413053512 782915334 399566419 96173298 812818268 184514161 210784756 508271737 537186232 910116276 95155625 808944464 800952583 555763062 680660098 854793710 504766421 927195330 468126282 651484338 245840844 637051945 801791284 246839605 607043828 273439804 936080314 614246814 673458340 177746941 716462725 95398028 504679813 155316913 982748835 755894493 166611954 127840158 985251772 3586824 641206390 114481685 949064458 960934098 733613354 554337687 75285775 543043531 627588120 788625485 640601087 987958955 339615540 155454225 964193089 687919215 885999715 777919205 808380752 41178365 469233859 799696509 427004524 254041107 372513394 836691224 189310228 936358990 177427133 290255193 187425336 203496274 100816595 409449328 983823939 248296074 673511663 999698266 647609455 221789046 305401982 794573396 610439940 994777482 667478115 71189207 629103831 562323494 438098052 659257712 812005548 197402067 110277351 182507695 917993287 47066463 905669413 970987098 748357291 263683219 776735951 87905340 33706164 473179138 760300051 283153836 557327982 350310139 680186992 202411104 773272081 94843591 717802729 486415279 762428212 246987515 650483787 989162323 907435564 495120366 317404 437905432 270294058 409957591 342695439 611689063 84653282 696543793 707154506 856595159 346714790 99070212 791941460 488702729 275343903 9664562 84781683 190346234 721762902 306909071 46601648 173726829 524847981 91389197 706942173 220413279 834957899 709351991 408460338 658673960 368792759 640109501 564993012 592065187 651780675 731480739 964477069 301482526 446667846 736630899 856643151 302758324 150037756 36483253 34325529 140804679 100373493 748609195 102570479 660927422 642199608 895765809 725396368 136840230 201370298 432288597 512272039 467781627 604202219 166857142 41308535 200531965 463890802 266789514 403131855 751382797 375205572 94136577 877395740 145625534 423603785 637003340 775418478 939450452 756624866 384371646 40174029 148154349 96072337 310661273 477240802 148590929 969968269 664577456 721509269 541447718 210721536 456631534 845551468 401761679 622144196 985663258 984433072 479359536 824301477 519456682 910292532 970836962 836714315 879032860 654441009 399420617 748809219 729089871 984423118 963836497 651656025 830563941 48801339 29894219 259897147 856098461 367299501 749549846 563624083 226635118 432964834 517149539 156040488 809956732 389887956 229126719 826637510 946387268 31884858 469493916 652527623 125606375 307204723 736430925 20148188 649502547 551478231 950928568 763659482 828933498 833867676 311270565 214749704 825203904 251314747 613562861 307876845 913072062 541396728 421151090 340076572 585198736 617515478 916975854 318627159 342013866 674822650 9128730 509191184 797250735 941319325 966415155 48661448 773279964 81408665 304128764 962389163 4517115 453807083 400516597 550285616 443646759 955328761 171812901 211703478 202257895 271678874 50329221 782717169 216434926 291079190 100126934 169933625 341867382 960639971 515962115 624477414 157046091 772128152 243653522 488517309 212088988 494709201 915877597 74222200 393935927 112013862 550047033 444054820 261127754 713747722 779985736 590337496 824493005 644819925 251769421 589907966 897910158 258722167 818515368 778212343 427861591 345158661 555013831 763900637 152173276 188381914 587879997 567234750 789537512 345794547 143211857 55638163 595363223 937324047 82717644 704049579 601296969 195939058 531294629 189336343 411957191 203655362 374791086 287936920 563591946 100006458 494983452 611951657 829878234 180708499 328553955 119097291 989396926 792018308 759887864 667332835 187485201 713158922 194618061 496736530 609386181 339924683 436884781 953420593 218981106 499642325 423256647 221713995 563197258 605637792 475231707 897094018 611758028 798984114 345200320 637838469 598267212 526615798 443261620 300940144 659557397 962279271 294192372 456694454 35102591 236964794 281296602 691087877 309315854 831082242 752209341 574279053 937844147 643358517 147696904 779249891 504205692 168281102 707947323 560621498 344294774 648807641 502302571 960454307 868643425 377757093 159668077 305520159 336505682 700413602 425824593 823109561 325108542 900598097 756028608 151822376 910290280 209642107 568861818 622018900 125550224 791905956 102133308 506233845 127814603 656694504 101076442 357617605 278154685 837006167 113120189 297978652 353300792 107618499 208927236 613994717 638502888 331496079 445796170 57924737 617167156 175046113 645248935 312278416 834077877 889566203 690972103 129022210 902982094 105595404 236468972 790155910 883812632 109995310 265870677 36364750 778129703 153103292 456988093 315223339 70107217 493390931 442246791 74680158 384352626 464370937 246737389 754515376 214819619 257857841 999003403 807239714 547625978 353597944 16684270 375765697 634818507 21958509 845047157 734819916 527578759 567046193 891985757 169155191 408492947 414709494 824258464 366372522 751290002 72879257 475835345 453759506 178016509 138090520 649262681 814101720 249115536 501888293 500696881 503812873 27243131 477085877 410551464 690802496 737756817 325608708 61613453 367777870 70498894 996126180 270647048 778200409 132272476 721741453 518100635 312735146 51953842 76618459 115101617 727337583 557681244 82545057 239402528 412638643 8283805 332781582 576095838 70423054 687109943 167151517 269419515 576533161 960599735 199657213 440365857 569076680 944168880 318691366 522196599 470825984 899094473 647433315 958814071 562233187 452351669 741738189 456787488 32461374 42568164 582026978 817189996 754219290 569694874 25968585 231831804 442163741 639055387 885995991 83568789 570284633 674328466 777420732 340223287 719906955 385616682 88608721 104855671 784051291 549099028 413066326 111812684 560711868 819550682 994817640 192959891 199421311 947481631 314129012 94011401 627399105 266481469 636301542 985042839 852782249 415916255 287661647 187433677 425755045 860537817 123794080 37718989 663532057 442979340 887423237 449273001 883626741 645450377 228321703 253560442 849614199 801917779 530363021 71271118 234936490 634591638 703134241 529251651 637333744 521977022 920719629 832430763 918871364 945678262 824933326 504609856 403460043 349819627 382039005 199812965 224875705 209780911 25903778 50954573 150928067 707183305 277156897 310792431 838449804 95339870 298637095 980704914 51329880 767193624 704826199 204908708 632714480 908673788 728182779 605950382 889670377 863590016 979184109 162784696 914934120 637848554 309172281 757404789 919941039 767337004 505549889 878458398 42999232 617186048 735129558 887035181 655710137 1701936 910302221 716960 454008289 382969383 777676388 927844645 632512183 143929670 586949100 83215277 288357705 378084482 296828817 277449799 405483913 258385370 22016644 224295142 960464717 166932334 271675039 170719838 559275019 64820215 397407157 103445974 569164865 534451837 16270292 565862439 824779523 547951058 602388124 482335347 486690755 423016987 319938870 248620226 876503744 779922850 196789675 645782892 893759482 68521539 756219295 457489288 200924212 138972441 760942054 611689470 498179658 116412242 640051432 281541347 74992519 993022116 666894236 949171687 601483288 772628880 145824824 983096901 648201613 454242908 297860367 596394359 81641134 560406082 309537160 890174666 372872348 480627062 437670712 463382659 97353628 586720972 357872002 60186393 457177431 278710504 810343405 713627869 927462789 256255978 412179776 966182651 415118286 373024829 135582956 399141886 11898687 630618117 45348246 677010325 150350404 532634011 75080125 371337984 758277555 705910043 223101556 123044801 345951806 494762758 313759831 954686543 479992682 673550642 850680628 190606109 841737747 576020419 807962960 938604442 446822562 981856592 393480471 920857997 547580070 353384524 321381949 932376420 122103955 747305048 127404753 94463221 881755791 174724326 106349632 190314745 819075892 83511523 186294993 990451072 971997256 625210887 594010283 980566170 784290263 777411327 144159692 903468608 68642641 560050107 640088210 685055505 790341532 868868470 749134509 297418499 894228099 936033951 157368194 596356226 395188782 409207771 950487549 530504868 166669156 289369957 402971553 397083085 384584318 488083745 753145190 247089818 315623669 307971913 861717452 394266760 933933023 406240578 258001034 13950416 561700609 627832044 608941424 856757322 950624796 802405726 902590905 80414660 72427873 713263989 859920233 356325071 642882600 33167191 619123630 730220701 232984008 936988097 512897115 127256605 207189056 469953592 457516316 952570059 731736270 807012945 658357466 644188656 186659917 888775420 206725944 525636660 976607971 359736617 974695700 643353794 230282891 267722359 628929874 737283593 97766056 773417650 332779067 402371377 914830712 8703530 304120777 546565920 218550492 123511764 899732222 511029609 836237133 371682050 136314972 7774888 880642993 701417412 210641128 319211265 628790424 49357857 329796370 417710817 326378884 102783970 455740477 749009031 285538909 445217664 267620347 104350681 958709554 646453414 881767839 951431199 741729656 726927817 430582396 463239403 70294237 409045093 200573946 442843620 795096542 801994613 319019742 228404535 30721670 668209940 532104487 210242192 209329103 226452741 738960756 94661825 769535434 167064735 270501655 947737358 136611688 284406179 626605073 142499467 255636262 595443859 85953833 285438814 210360559 797497960 904637172 871266836 948645745 81931481 841969131 255068832 40396871 865309045 771784647 263208504 835617416 689661121 170763734 851728087 207755543 292374066 538529699 354145236 897012554 123178214 418121604 716211834 140375869 673747198 779415393 368363560 275291991 547738888 591306794 591133138 469750183 756052768 183257920 425790986 316689110 637018972 168704507 762939854 325762151 931428482 916931769 163295838 686884269 947967502 539933717 785727151 9861343 964123190 857543828 805887876 492079290 481926427 881455014 909148015 1467865 199393277 204856822 88969933 756291522 221127310 683860222 916532182 88561664 543787656 296827399 247858595 580416272 51750363 732144021 848008800 538084266 520905798 30649831 333828160 758939038 158369903 329598522 368880365 774282802 883794255 48083781 621676992 800849712 258206680 551374274 953627767 379084849 883327228 991491914 837424762 230076947 110373139 574466694 194108998 43747390 18936232 986401868 947244704 322284446 99170143 438347839 163459883 69121522 254441406 956317869 507058296 778437669 40896968 48196532 941808355 350109292 388553802 336918902 587158420 368410156 689507401 540496377 761991284 756500208 639354191 870723475 282734482 943740132 567772886 904046819 701126490 319250951 618161232 805367413 195692346 432286807 792764489 955539939 485267666 62484789 178488728 376087934 380403936 128160794 468775549 856660681 391462201 862709022 246777679 606795974 709913066 957462926 983073952 213624712 765076606 941491594 685604320 747196694 820841165 114923150 105019674 453269087 204826336 252008467 553006092 297928546 5125282 35121582 5982142 227317930 572046451 859101722 188686937 324230284 26792284 226077722 857864385 288717508 789262421 312158086 73753248 927723388 694460398 672064207 152655276 825034149 125378857 715091286 541350687 164300003 33335867 606727080 474022075 837774686 649768306 617258833 920811743 665913838 480640769 861253462 580400713 611703066 564284094 712609498 98377177 800097389 324993930 885235424 230388641 506782276 920379956 405107435 600746621 426201236 149436513 19929025 399511354 224892352 427340160 727585610 758276818 658457326 81208956 64518688 125129896 949867359 893949201 19785759 304514974 663154575 842060379 616111644 586859762 714735920 852257078 85527742 260909239 237816288 200884969 53483003 338383833 615567330 282102929 626053004 682137083 440279655 232314891 272015889 628036846 677821069 434614945 971684721 914310033 139654134 369047580 319122767 398100276 28308669 595021841 355266938 400319052 85611394 140110016 55767550 734400248 170562574 186972170 178496305 593086456 962197447 485203292 292985672 375961570 653736436 861673625 771903812 316323148 406115200 133681722 219364015 388940800 470747983 582369042 263515812 572868317 524831505 141930567 977761185 473568462 527241501 114222633 829353654 772103775 475964500 746503260 426094948 721203529 980683060 731031905 242450722 235876881 745079105 153370730 911528145 394551551 73650765 986062488 631883193 801696389 548151193 248101464 587432347 137002858 520359857 655725924 261713320 706331622 881255037 652911559 59243828 979033496 484048649 834366377 624092037 289406737 946708018 544518994 51202375 75498892 516713974 610690652 183086107 702464432 545494211 191323487 636886703 273034629 310086476 819642757 751920699 317015944 448389409 309194368 626975302 209561291 818921748 703449616 205171798 302739909 851500188 602116737 388197346 270000028 326106098 112333582 38670459 563366797 75118961 974697501 64242839 882632948 737548492 572013120 709732659 729378670 306458893 104161514 718250335 558385178 199977151 99127661 124144810 168059214 686410193 862585630 786385021 322121797 829560753 383491405 244762093 222738605 584890504 454897561 762791240 757218236 880137130 40624130 525340899 50416425 857478671 85104517 733929933 876263539 187613833 541201207 329366495 849124227 487946264 889967273 636299007 436455803 121726984 747907660 747028027 971114602 341643827 400859300 430551312 925871957 34854429 910008880 67593177 673761777 500731231 754034243 495799471 175549264 906716395 696245481 164356679 832290868 763403484 740488873 447951247 419751354 493678950 593093317 527396299 761474682 398598140 440156633 34851702 490382680 880019676 591159620 828272731 849207680 624516745 415868580 559253816 514082769 71236095 275407783 577504943 745476109 238659928 665296459 42342015 973524677 836052081 29632910 940526189 396760462 445327049 371465561 928631591 419415262 715036509 429822644 682379834 451389384 466901215 221578765 767633728 777059475 924311837 556482036 895571006 144411827 108377781 411729305 498769752 244095349 515811389 51596040 781960133 40015558 313299269 710943217 195563330 429741678 781378991 904585509 994128379 268336579 847063312 154771944 267506345 739755692 333122330 140443294 323174922 210045908 702294687 394519133 393607003 91890409 556256183 318639289 329892511 830221976 968999539 663227648 719410950 864694430 231319593 11895951 413585091 368615538 700824522 230936334 771709227 581996535 324232704 424034175 550616079 795487370 819422911 24866550 654245203 747802355 528241086 178623218 57416098 637749694 720281850 440046939 140323484 860068402 394709897 868974350 560665772 805242089 401778164 524396779 922125419 752631159 361681663 92647085 163399124 549083963 104664733 971768321 864394622 206702637 598053554 985063241 124992476 202140587 756242991 227991671 872907417 878978176 786687073 832248485 438018125 671316371 885128799 583227893 230772683 690794409 529974893 326166917 291040364 657794987 428041738 745787967 856749887 568640533 974119306 55622982 374382131 781744626 802719113 87886686 825572753 303337097 823314987 530057899 434368535 820094400 243514622 593084292 360799402 627596598 190280341 988211430 113106603 709061752 13755454 877667175 313962347 946533716 109009448 733403008 926053449 766135389 260007863 652946280 616552760 1232429 171548782 639139978 125708769 800779089 429638614 740593593 618911273 653006362 735972945 727388261 180560252 99439819 541388613 76698599 85874705 204259807 475735227 930588261 832374258 870062498 362763685 947047728 368179888 125984575 799451292 608779971 400658822 404483610 512167621 674699651 6158229 97452678 126889100 221995312 311515057 794220065 28557794 670639786 293049968 972380427 782513621 955519563 2658930 707872459 173736590 589832718 618678857 649683139 876864111 238138579 626124854 765566557 500569332 825959210 452965565 518012065 768267653 742045541 937149109 330603892 192824437 420145704 901677772 747211825 190714669 94848713 297909331 539479910 632878859 579200673 378289468 157426853 617113935 660812868 917369632 171122791 169393776 6401445 465893487 246895966 873700429 99460077 746043236 41847705 421840306 37910966 348497859 492474433 36480066 772350675 880703282 840054090 511801301 797217462 791939420 251754202 455237860 891645593 476411197 421787035 100478128 322201468 740576415 834882107 215108302 157440231 355651839 179471699 681612017 300657291 26208058 766443391 713554933 673921327 400413488 195954369 638872838 443341398 731723336 165597407 174791633 987670763 490564206 650303742 942959968 192830017 873102610 976423901 4647632 498689536 700340398 293474660 242162857 84289139 808422457 130633168 966854221 568987115 619295266 595558045 442563223 475563421 208176103 465679455 763446905 717712222 523229933 613015516 688559515 726683885 844376931 629588981 83993840 687554018 250763041 384171928 352114683 626644426 516717451 634282040 614636746 368911201 421459862 450408793 834956591 958748515 417851578 91259862 338394545 397089537 464756644 613622431 365421684 477946531 475166838 279572921 863942582 203987316 395507133 517859040 549070195 157235295 836444686 931928849 126411624 879118982 419243144 552400406 883710558 190092476 188290317 132126330 551599430 725641476 963894235 561931698 551720993 964661457 120579834 332886515 985759951 489723588 131835842 922912898 845963248 994784978 19756105 554195049 693173838 103852409 12790186 257247397 402004369 84487083 16211371 683140080 781606736 184985398 891427404 258136188 663887344 9916711 958171935 228198823 465345471 328421403 834786633 725617822 544854999 509024017 473602099 594514133 356454877 547678389 143227159 325147570 129447617 31188597 429483298 121334629 800425967 334719440 41704913 154793034 93293729 738439763 602370974 943265481 137597542 630584685 371783081 410525748 472649105 653404178 968104970 63469684 341729023 245793970 696082863 303314033 437736648 387030310 519923670 646447368 395860573 9318853 485574282 489201533 621568910 602534815 731735884 890172483 325093496 736344162 121426321 67622435 195166694 773696835 495762427 584466570 145829536 667592191 174132190 74533041 535063161 873769795 644206580 303078078 51482646 902290799 597472126 248703407 866100119 257644305 68708727 517641271 70432982 527448783 601074657 527168272 21470333 945454853 362581280 651879925 752050494 553322669 297184728 31222861 58114458 684246824 445945544 3455921 219142691 234548656 39111648 256027025 546765941 683761452 829439140 942653980 265791156 10959056 692768271 238767233 543809827 854279190 623037308 780113809 154575155 914108622 966392318 385710885 619123999 547873543 56428402 889726082 224114943 787086517 966228890 155723117 25522945 246862998 238358777 59873027 821200617 567563005 849098567 906634597 597650777 983111579 14355773 767276633 996514171 995112932 538499607 642999569 24835955 695588781 549411101 200137236 515850879 298363012 577525898 499594579 489086647 27559610 838146501 969872917 843888833 782320165 892828372 90156328 781553495 30051588 118510042 746189716 905555987 507420285 244391731 522996341 114273813 822460564 515431481 639916052 186280508 162388225 158830571 684073741 854300482 793376915 432105015 581647373 88810439 637960799 393065966 50168186 719038490 754787742 99386014 99437583 324313179 870338202 478497362 772906961 99056723 512370407 598386638 782349102 405212646 146254511 697470253 570719323 1702177 742190448 705311091 205440059 511266460 29037596 840622688 724882859 157258452 13605006 845734859 939666795 302855714 15821442 493019045 999226932 664319592 222347983 648125028 612663168 383213021 953678459 154211535 510356126 773495976 714156663 484224128 651004206 386265106 91121355 990983033 928989443 493201841 394088574 245643050 395565684 411408031 717800472 231147270 694869115 900155053 826791334 266873754 830371300 854939416 107175348 537396363 159571906 806577061 287299030 904355084 977335495 708832633 415926665 660405458 936927566 306416743 202808309 999508444 372099098 82175883 178962404 65941974 10261538 964824375 904817583 293273577 249181253 595315071 591985810 394457832 953590486 348624062 728850292 724982450 829835358 375365711 881015147 332585242 81374192 400625912 364532227 103139894 39408444 284813980 812510411 310263379 434735186 565200963 869977941 509335518 838373657 945521156 785813391 50006200 614417469 199252571 354098005 500141390 65800373 703877827 470951615 186724965 877501468 24517112 805429985 8933279 119498655 112892991 339285647 31182841 545078984 186997161 521954102 913340485 846369546 72071363 28303574 450593929 798072251 831548017 803610393 482716112 215869992 503639326 673330183 350494013 6796819 700404847 561418913 165241594 705031683 774018999 870548674 450063163 760997529 186052819 406563632 564544507 463274721 667817646 813554773 324204151 45161393 174839234 531821260 939447044 577793852 450181724 183659362 965839822 359156715 303301503 97556171 983552252 184462047 409870916 971852665 914269238 847449137 203934445 244513480 462079033 257316565 596744462 985086105 298248597 114449785 51443086 255235211 514417238 94357506 849281568 502734852 485318065 505088067 862214296 173052953 179670284 834390065 877505177 48278456 17149684 978359045 854463765 988249763 329410487 763650669 782865913 982678429 882796610 122995607 719348131 721852595 755958079 254344694 7859360 11832912 85393151 535066425 376774698 657687278 217195410 396699636 472991468 817591277 690761255 953132523 122801454 971614462 820288198 911378362 596437615 580573950 540237555 853135461 599285567 72021285 133956629 972852696 191548538 676118639 380774953 611791543 2433177 321605 135559424 603278210 19978152 981853605 903135242 81185518 10895795 862682028 85812678 435210266 586510574 234529613 346802579 898282883 210047285 245379819 789199481 993644040 943008440 722845868 563214985 951464267 422417829 693908457 807883250 736889009 985898081 180305720 487763035 218788199 40462064 408368028 938548000 97136343 942015108 679471671 233542301 208414751 543339783 194562925 193609117 889367385 270414762 946023335 131637310 539665764 532983796 811187846 841641952 79863543 345998004 409413705 64769801 156330222 219840446 168300367 346234631 481314021 936896893 114817095 57868687 643736091 443306806 484453750 492077842 700529489 642840573 131952415 624844378 418426785 950124080 369145036 723794550 781325042 432541864 23250841 782066256 673606069 847241814 317779163 777002445 444805597 832776827 9122293 445751348 532056336 679406465 11383683 49380319 770113771 109121421 399201450 187009810 548805761 50298816 833431688 39104681 926040980 461157606 940734227 146343364 998376946 955243510 938576579 577602296 518150529 375093171 140184404 239797184 789641192 564457372 306187676 11419270 79136192 259536775 158834850 487399588 982554068 491726654 46876363 569461628 9323479 95474092 294248529 753827569 959885209 688236717 768765609 201468605 40941178 411592166 648027886 941763773 54456342 162514423 564131643 560403119 157025778 839646594 487983518 651529327 992312134 534257499 906069285 98953160 751095598 997588290 602901880 975423548 743147288 802768521 749328404 71998542 304593868 377268871 142306132 630184294 485246753 942803345 843007097 593322965 258218156 604750102 51455227 896726439 764402643 679519883 414162363 621576961 325699348 9291985 419934320 558748304 233795139 838572466 936902393 791501695 852004988 107840265 395037115 417885406 835814164 314555544 279656731 330742926 497354565 484451677 131853818 110099925 905427563 495802669 271218995 753684232 366614121 441906329 299850570 621593752 589967014 725836910 803554863 60367112 693573879 689449645 901630353 590137834 512705790 726735874 271265493 629669248 398198751 36274344 595877745 421714031 912280423 585373016 202186858 513009837 417154650 775946342 973548608 175872901 632027972 538982088 960970991 795929425 473005671 328488370 235538283 997362110 271676830 83743501 610212674 595983817 76609359 597118802 195766585 262551772 431994696 753462161 99713537 574509219 860921103 130216608 856133794 321156029 949176833 156557946 852236444 270405031 4424944 800124366 19281101 799137584 931863788 729835198 981565641 19600526 238468095 572168560 89117550 770213412 150370574 435682704 185117019 813749840 8088523 386314848 470393621 526260289 191977541 166103546 994808659 572373836 371314241 732880226 597567646 924601686 114017334 735632260 879614624 477325998 156188008 548849654 982744249 208329506 252249392 297342881 78712619 735024538 838225489 221887784 711327316 837933808 637235823 950900242 917218905 617577927 407575933 649282703 807722016 515456828 727209169 479089707 804207302 971302957 983246882 242653273 850854302 389246410 265650128 419211884 990132169 72500713 257690718 738994282 767383978 812633329 935785096 722619613 122869216 136574314 211516788 103712253 709451146 499029000 203615706 905322963 474312344 87907160 724490305 61709293 650643160 742028656 369785950 499316206 224990404 36485552 4355966 454705283 943935981 223581128 847178798 9679280 203571369 517622769 122375034 985564382 150937000 532653031 274713968 208979580 328786168 370824652 554324400 839408594 498358888 920062043 734799942 434454378 518158661 328748372 826395019 888911424 207612653 971656609 759139523 330811157 740570801 738122713 432255319 730009049 68099602 383307878 576584066 223447120 747513479 810444646 925205798 47350406 612797141 722148408 763431825 794813527 744139761 560274007 714295252 145522276 378310135 882709709 862160578 65261724 181300635 937120712 473176474 434417340 779875272 940231561 231328988 787949248 826929447 214205325 291471835 336659427 899825145 817940879 717800567 514380277 172141251 610522378 817322488 160273210 13526754 789857017 991733251 717424347 727079088 936578198 458008392 739184523 615149478 253332144 245675938 548017815 6533926 815041652 894857730 244977824 937912548 441453002 272203703 173912286 148936546 773180367 212916443 388564135 850287636 442671533 259106447 681705815 813135699 903252730 733375155 734063846 663935072 252151197 132010019 220917862 619051432 458163787 738964251 140481546 372283549 404775282 68796340 369740427 132235434 689357655 616420629 470223799 458614785 255581010 740139465 977949789 252539715 439025795 495652714 500375426 154668331 416384522 634056400 976793151 260031439 813822648 748365422 915078494 218688660 1701608 9329090 750538147 200811529 111493123 291358417 930420825 150659024 244248229 248301438 668991765 194609606 615182251 653911643 578740162 802461614 455893176 776632069 574608265 222692793 225277985 977167988 586121727 866447314 177443469 464325439 492690761 275138944 765230087 383515079 686514718 553940977 648032174 544025179 479285667 896940483 420382787 838743513 401207723 901286016 621764709 360480792 438125857 650004072 240310911 408301516 124840844 879907532 62004913 729802178 980056947 101452184 721301078 190311759 992319478 728356177 286565636 987289626 757730957 653576642 449941887 3251696 145457014 654021520 389825171 209610453 550611422 68486806 936274505 325315790 888045081 972370941 628190124 620173836 510880645 650927140 191562014 542028251 410317339 26267942 696171100 183282697 40652556 912776634 708215045 412916074 776455618 392118170 40855016 667216802 437428446 493457923 387334165 307420261 136994142 993843340 666602765 29057596 355393397 420533264 408254351 792704246 675087886 240138926 64569852 289299756 198478861 461066024 102643803 455018702 193101767 156671229 664953472 492599253 266455201 686257076 571575980 243845271 731294458 401843938 129882151 494100200 238603930 632386424 55176798 443610224 41015871 504187404 196288201 548463681 555797780 485084139 357635795 976581183 920082960 637082689 627312596 239713217 681406607 529996778 239821989 492507422 119279581 947173500 700155865 792920685 303278981 292743500 444039140 454419564 936260516 670958141 14328841 506893691 637676916 707606945 125947585 556748446 10701943 835718994 257846288 200386857 703405226 356934946 445220238 170810512 717362587 990890943 117040272 860603565 259791148 112423517 491645888 102172347 737374719 281842596 155320720 652280313 766946185 765380185 356936203 924931026 199263005 776808618 412691451 313441679 931457665 639062579 500223277 3344922 947532305 425486280 20049898 299158782 515872891 244605180 279189225 229658237 944465661 223547045 653735251 784494487 298417569 566589788 154711213 794915435 713224275 630278313 535184073 899387949 245319556 379682882 833934007 926672318 302982779 715835997 285869746 77734384 264955326 335795138 387032406 175558171 30701666 442289852 771999172 625847116 966621663 876300975 49623594 754479107 515361036 532157576 409665798 115548492 70052813 319068267 632034755 351079193 510940470 703922763 794165478 898859939 546262566 873652226 736212786 53674917 807005579 603267481 533224758 513787902 600218143 336143392 614047887 513742806 269279910 615027021 440529926 849075994 180558169 609624777 6439806 889432179 896066635 417595310 843005002 790527632 938097462 35292118 467055784 348995852 239345407 899751190 586061900 683384136 942645556 306400750 445111789 804084832 543109866 209869581 694694998 619144585 357251546 689222550 571340225 265129100 48364143 879020725 33824685 774064241 310778796 388331330 141264398 41801441 761520100 548334469 401765490 896334584 95682482 875446834 60513770 126135611 332999003 219062107 710804850 764597128 36012671 267299686 384131667 248698555 963414306 581267709 550632582 883986294 278811324 8036183 661959880 735055127 328759508 53330497 520186960 831540817 3932855 903027881 946528802 77617621 688936960 980569095 865823771 326136899 749692474 140719781 162754128 85427157 233391851 891049678 544322612 212335229 310392093 117277027 312800208 157963589 461368600 163248662 680357451 627753150 966475905 243385936 503893786 133230792 766345329 600753852 154375802 710002154 726408629 140412810 718037151 181899894 213019825 703259970 85322095 984801132 73523613 178343148 599734525 951189829 198977766 505177161 380583178 414755052 761288681 271204316 99510609 918164122 814028564 54302910 320311921 707769907 282931067 777447056 390624993 925554230 46951494 900996557 266362512 315893401 28728659 930253294 216535605 908425253 970544913 603473660 222841632 108368903 762758657 265950159 161723509 511972378 553910783 631203979 813099258 258468048 584862672 29786828 340274365 174221759 990629856 85409968 389675316 610555498 195316614 656209093 553714485 965531964 476038103 24051226 606836435 683325076 261199592 792662746 840355124 564753820 937884509 90017408 928714076 974708571 176928332 267860267 807097993 476669563 67303347 966283860 308230693 944946551 675037636 209399725 221154808 836952556 357225326 136612094 941961635 579327798 44133575 464372227 841780779 646494803 378932665 763012726 247845739 640439387 126666897 948114672 534653487 809375996 341630002 908914917 19645446 84763184 386946353 359105091 486701334 591846217 873456108 113185201 575319134 239513639 724858949 756002751 914661771 715356210 749864455 511994265 673211949 307247012 837037740 127945546 103261508 541413149 317801089 499894239 424839544 255362327 476458013 85676699 630522259 822643515 557800849 92752605 415318320 842191382 746047681 997073382 79538657 49905081 688703321 223391101 638596158 164460721 41145080 880363011 104953837 21120787 197455186 44706031 936097355 763426166 343124592 398659697 759370960 228621374 837134489 898189400 965629601 927814215 84186805 54075058 912463133 832822478 363499033 513257450 520628372 152510079 366297840 532788934 752980837 596073469 903901196 471176772 627007682 391762697 845163399 133601297 976262244 231285625 740641383 301961322 130845529 218584829 124029890 851973603 645040233 916181909 897733728 6561327 136812769 165149010 114565704 659155712 970457343 248923315 829405848 138433381 763507508 504918800 135118162 405719756 517581499 726259216 458933365 816665792 281063101 955026797 719647901 845203762 53908930 703633805 24191486 91189104 169752673 156171996 310695552 241527542 392961870 571571380 201533638 296050849 344174362 679914335 103241325 422742736 349387274 745205226 424950625 878017661 709345754 300185325 449269580 797496566 747780315 351308272 807542887 396818662 599954950 319471505 483481934 729727948 700525513 92624061 586419245 149940449 522533946 787720158 309862308 446235144 463124638 864799100 863112590 372417628 466202860 286273869 238036861 598341990 766712047 69371470 675018575 963050235 611852861 86137992 250382157 699884383 3421955 124340069 65184657 42790972 220915334 851562829 359466111 585751783 72839858 908335586 696720089 963240894 719847524 505596073 943703771 891213826 952741602 324917073 420624989 311621115 621288496 982730543 414499310 654997669 672574837 693082888 351324760 697874607 36516457 739623625 322419736 532473987 536600657 51378253 394617022 426532223 154936590 773941119 737591477 678454298 479329691 303555845 678967348 722590646 61594768 708057667 499259870 83905412 775794474 987608278 780704897 461978475 257765663 734970895 319859881 753137106 739707378 922131315 609599561 891916009 112076905 147747715 444524786 919312710 645925004 952978617 35431678 947959201 335790407 557507019 760130331 198737006 680226533 664887276 898853832 595924471 627093736 392035308 102669851 776272734 762265830 777155174 452945203 358664976 62289938 269291769 680465415 720851650 814840147 357118074 295471744 959787131 253737896 453490573 267775524 989424793 785441760 556110688 601093733 605792558 415721207 554066674 813426799 864494101 129562353 304979759 692161085 131062440 632311428 54496831 721840338 918396490 175154403 677494695 236273992 43865449 158268573 323904952 355377711 115892625 628630953 671466473 288415934 345756738 608487676 147550372 826178317 124846936 840295127 179392843 817710405 968871011 310089835 43707166 357538638 232344382 46466855 177507807 141902815 2604770 106482324 101176943 31957469 697915378 693240117 55048451 899412153 765601067 822938484 535861677 759113945 846455914 714414758 512361907 125605115 127190883 194010329 690483139 447999773 73585527 612270548 156660148 231568884 821251886 687547763 708106384 852341758 907696640 197606251 450991627 559100043 430364184 997835585 934192277 625975305 377015737 184213892 984450632 28701246 150907362 88287099 438936542 919606408 659144797 603205232 123058204 781819143 432840178 833701025 260209845 786198207 171972673 22184928 120412855 835146024 874206776 649631920 306293050 531878625 540705194 337181398 911344115 728566794 265077717 519450148 148850472 464509604 688446445 251977531 961557038 79279878 530604419 256020326 316433592 926216058 371175344 647485323 942830423 791056163 701593892 711840829 324235719 774316924 543446117 104452016 423839173 898221 923431739 800886734 239714520 956252968 625003003 542303355 883747461 540002766 265475193 284741717 491511274 454494688 642364574 348919808 726789826 769057758 540343333 686651199 718427665 723513591 352432373 550340757 77083573 901460669 638791779 128921886 766247025 920372164 159458363 712935786 13820930 744485268 814498500 832819896 139570636 935444717 117682342 334694207 339597549 780388462 763887413 72271341 76036557 799664232 920563106 555787438 401720496 984053349 619434533 46466297 63517420 902837244 932659328 262282710 437809563 180455189 300082659 529082605 84071301 970049943 487423157 36932173 492149622 677707429 664699631 949850613 319291141 395487941 489031626 902951550 502742495 424257785 587887272 92733732 276999814 468996180 699216806 778468694 993281109 741101436 569463601 665799964 528776905 797701242 955538107 541791238 430172090 146870409 578861402 490764439 606067006 757254672 173990805 677461375 287434089 136080810 977264190 917060548 634433799 296043130 201348537 9818188 320685445 644430535 937091981 679934661 47536922 164620328 753531853 720569397 169157587 653688770 830955006 14940144 972688160 150287781 181735529 489924436 792887419 409580724 664406394 467627995 32905499 138084121 588988670 507198652 598545847 844403114 106105892 879463903 41128950 489926265 541331398 581841859 912814228 182404214 853409860 67235867 826431744 807067183 820896405 992172653 956386581 212338490 231100621 832084624 695683369 121909069 317886900 727948290 184020908 71219721 522506024 172460100 961767606 684194503 466736016 637351123 684396057 818536699 300720657 370549323 988846737 478197885 545847408 771879352 211106749 372622150 453645455 248920208 706795598 484002170 162549492 191173217 434847101 643732220 912388267 195293326 368092243 149732352 544974115 158437394 459615947 249438438 607378460 499910382 659392639 195958082 230542229 100828002 625502655 273329239 217633557 902476068 79058319 555055490 672195413 650278213 903338374 588312564 171721986 27399771 490139898 954783188 979513622 50813531 43588430 241246894 580774477 351344021 505935097 429794584 747736818 459669148 274666153 229627760 837653140 20174311 49516412 603105513 113944753 336508273 68205346 815380188 537370579 932824615 744487726 184508824 591167942 445156437 278381903 24416875 501768016 460563243 372093560 69706070 530602577 252364998 291065279 763723889 754434968 680885195 282764422 4147480 81362975 491875020 706569015 196178569 49667302 483789869 230303305 181068487 611106435 932420031 936324571 533449110 84271332 771822912 849998123 287320970 883011526 573755294 936279193 354404262 642263417 126264898 943571123 612537768 772693564 763954164 969005128 19202517 674746054 292613466 288541381 968233860 312300885 985620495 197015968 471438709 122420820 890436622 650604746 882609643 709667103 671258256 948064236 219425097 121551865 753201493 628470671 881584668 139075857 871503794 109637550 381146301 753855501 276605267 160150043 160882272 22779457 648147468 930718281 469056576 989457355 528489198 916462782 118340871 378167767 579906603 832122113 819072151 819831557 322018772 670324732 222494729 670505132 209195429 858335171 947316647 491638140 564322157 769309975 972236173 761824155 583117013 92147263 843875274 267042644 284655446 490228371 527209424 577723560 765846326 319199389 946285769 390002917 685137174 562135122 898525794 291975414 802843366 498838861 730780507 593927691 128350697 900881243 448055951 224930864 20942763 358519942 278335063 391840334 395859898 63100372 117241703 153996500 165166859 219335500 103071403 429026131 981536639 703193271 906819949 703589581 603058488 831545516 594102541 57460227 948236159 983647831 117216752 540210626 66680875 185298045 520096634 253119803 510771206 752098284 238336434 817809165 484939986 88100153 390615495 889764168 790498914 206535507 754450729 916114179 677568630 584158368 432738105 618881227 766322230 42283143 164188949 976899587 964991450 222336808 160754521 931232036 56845577 801653742 909711505 401246527 33126213 586117430 931890660 441589806 225632407 2804051 635174916 737740583 20551231 916235811 144936048 899194755 540891526 234017573 982860985 339789164 458268976 129965891 245395558 64704160 326625707 204777550 617417437 281665900 918188032 523148334 175747738 933833137 472046845 695887612 30066062 614851465 823130048 779676150 614082674 777714712 645098189 393016685 399298631 844836669 638430760 13933542 332589190 848614539 167716908 419715620 795859966 461283892 295934483 198753497 706464258 945805887 601158179 714454143 667326732 610357608 67511325 716562849 89220430 900779460 242730499 32495797 846346117 899636356 482588783 947116654 672839419 110517282 557426000 880677889 579129234 251082680 774565052 190395982 549112418 463055336 578917382 867783323 21572426 903311328 27442176 738435569 921656438 280808959 143387687 219763434 757475007 144258994 829116324 796216490 290590025 476604066 562005843 321701571 549657255 234817087 270124771 711715953 244894713 336530536 757500541 965622155 251349073 693745366 799824663 306902696 89611516 730201954 766482523 850491884 275639133 633787605 120689792 986481198 199311174 620122325 835564299 739296658 862925497 517319419 434161092 939614232 93965443 29367774 131907619 792082415 992472063 394444160 139073590 959732710 891166513 840534009 306578291 734709584 516123588 125433461 409290145 738038638 837387345 639519892 817863926 121166639 142646226 129304978 924038993 667322935 791224846 666641212 741615912 571395186 334236873 102909041 648165508 618437832 767181081 693533488 679546573 275910359 973562383 384653005 345893866 902831203 809525025 265765126 753019054 593470703 929060975 392578406 499933407 501868076 224147091 541251496 301514 583262003 40685716 585045768 895676536 593540885 137162193 913958633 722513238 786871603 239078047 164823114 660380553 147989176 833344809 17658049 137117798 618504729 490700609 694485549 785497601 897101033 921330590 629534621 693346042 641343662 124920710 816309447 436599725 808070034 942620047 923457284 81978428 266135732 871769474 510226479 395318093 199746598 634118304 305931633 584308176 90013885 448575541 155185310 611595781 907959890 932363628 144578062 403019396 732033864 255176522 839643937 691122328 199602822 471150771 854342650 176242194 442049264 580247014 218812697 864554980 124247854 980518180 711203959 930649011 780989953 500006518 785677365 303266582 606817103 834926386 271088789 578970311 647172644 436929693 136765163 244307228 24409962 38191843 39307348 94534861 239260528 707391423 244062458 801303930 354657189 445547767 339518274 739592999 105634037 249368119 335797845 311004084 727108766 68562505 143780500 63689064 557991748 936667640 899231989 342994939 901066911 309428428 155181528 961087932 609131423 172302113 199374397 683488500 911655604 508915085 867008680 973904204 679882644 543021206 435238372 557418839 192855044 791035583 579946831 244108572 787943001 825591625 120191580 375298690 324435549 591537357 756527279 841322348 546244059 598123382 261166354 420158193 735354838 403343282 769717274 497512416 805856006 925191333 925618033 523964078 42524713 141246351 747555701 118149254 171559607 108156248 739734917 982921934 24245840 444085098 843735418 556039666 696637623 72330351 190516040 373537056 444950522 962052170 502782402 760167361 200817222 136118750 438160539 568726254 106734961 35522630 932662370 49603805 49037133 145282659 291082252 245679230 232250692 561761041 341184454 993950606 882248131 279756129 17267110 852171769 945681697 886882967 354278661 92370732 232633769 125435056 712530150 161913147 98562042 396159467 919060986 298017275 355716760 465308681 670124858 665591028 635044589 879862606 272152234 930293094 498431794 292192918 241796701 799035812 573221939 252223927 174264363 19768107 969181347 756323781 303856879 743997387 995206455 290579642 343429638 929087427 461499714 622015554 547289202 557783776 123658850 967422994 666650408 181738666 538531561 11854379 666996559 125866023 983955115 347553506 703521453 77975403 438560408 437911832 347508373 87864998 547084522 717008111 284010036 414174962 240064646 115224334 544952393 258704280 518329863 591974910 516652462 587903859 715407568 739074542 617769496 353540409 530621609 438814213 445344699 258343327 320150766 966652707 831777620 717925751 272465183 385425739 144341321 737264406 12967028 573826684 774694094 863872619 515250878 836307511 465863972 589122162 237155973 911109838 918577977 556816336 632940490 146117389 527071881 329570504 101722048 267507128 500042893 809319759 299454284 870349814 869097856 150495924 359295478 797854775 181669628 541144399 37321735 690228236 359788255 390721627 428603395 468298152 742485063 9994042 677456244 577653966 778818847 693228103 930538725 459333236 716780876 281413159 472704562 374219956 399598836 755943538 295290676 792278509 220294243 851793587 959594005 781861012 486245315 575531816 67590782 49304893 578580467 819458130 912797179 333459772 607497460 195844617 205489196 781970219 178838563 569851334 888964259 788880906 230601168 950100270 840635439 662268820 745485323 880482387 542727605 648731583 814720194 846057843 87643576 179853579 50225916 383586215 277851243 596865700 340140884 482759456 848595874 814976670 64137379 253305021 919064858 71291601 574138057 269198737 784230422 433896265 859282982 688574087 256620178 76915217 995790418 878006449 16421686 173096094 878194299 996133276 40323887 395240906 280317623 526002174 275437269 780781911 170321218 265567742 599500156 926249272 466343966 964207144 874669181 362790587 320892121 799139002 269785491 137261737 885740011 832985951 924910115 789943230 879987098 446461757 227510238 910653002 73519929 166365719 873317865 132706821 266501106 856361347 412331436 302792187 287554101 276829265 921456308 59018653 161969426 372587061 723453813 935490714 690796493 393493416 321046654 170589752 386716640 818103930 119834487 938775623 28527150 810209284 461105697 356430170 748215700 621915006 563766545 798660426 819655634 737086378 365250667 979427110 698833802 557792779 82576883 63224721 857417333 764208140 860310564 97042559 494694728 81283064 838233215 449104348 996697670 936331970 603927130 509431623 137726896 822250526 102318148 948365960 835291831 316164079 133970570 898827730 175369517 848792183 127663757 180980479 644303564 416595828 967998191 493127724 984172966 482146248 895450103 176465134 834585086 2331847 906505042 213138038 47045641 655550367 814685122 361025855 656432545 921256466 914086061 192315283 190458237 312230796 209269988 437148171 619916522 724697782 631268148 998148054 463854604 500802728 380244190 12080484 634177178 383703383 362433687 774770739 97921569 309175193 435505910 207244281 153211939 489449180 728181786 261676890 486752028 249854478 93323179 728146544 69767951 329692231 725160145 589182917 828711912 293282410 693219061 947876042 992738363 222474147 199233564 744343928 670368347 269850033 643138866 819397853 504962638 617783260 114050990 13869830 399883106 182899293 286961946 459229277 9351018 710688433 315891627 121935916 40418982 465981955 324185381 241190076 965945130 319224805 9862733 472972538 279142375 945873846 568827308 503698535 853782644 45235825 797928203 689374810 669748945 41013364 317997750 596639428 815363658 330889181 821702055 577555748 350302574 183050511 337721311 411072149 640958579 399773068 864725682 485484504 644938023 810465181 644480023 244989883 251835830 61624682 344459420 372745705 407303537 868419922 279031842 288839194 548288134 343536736 986375968 297227851 686995413 739144827 781406187 726379406 149621535 681800459 810623622 655652946 313891868 600210358 701007363 77245271 385785661 498336221 201360263 209006 107878199 684575759 143353617 961647853 939976409 79514784 756454248 358024417 42153414 386887720 544579689 803662068 978617036 804583638 210996449 581254444 503635700 918659042 701196263 951436839 554688292 716221067 924818793 873507549 40382598 311155655 592343526 554959483 241253816 789781372 654819139 256687540 264054211 381158579 308239722 586107176 731207936 442237042 440569637 481708527 225638683 478192463 492739021 921986112 691326985 956999506 722920714 173147331 434107760 403485973 947991521 901264033 347743181 534294213 318682881 412253372 877840730 834845113 133706867 289733549 679883683 199446971 442454926 723799463 273168209 486551214 478570742 375001737 193804786 965903005 38290791 552991889 360225088 235420422 513274132 797291701 80667259 71032116 99737157 451549586 776693276 809543705 640907031 487013966 139797992 50226220 122724437 925199832 242348053 48922972 336414289 986964813 680162851 331408363 52242641 64303075 105992205 952628386 764482811 390711185 903487405 786257114 743510314 13067710 80815094 791247719 433419929 224872146 425766727 829112252 541180604 428462198 618487731 883429704 985319855 673239573 388351131 749919478 167475666 126760592 538052068 242195585 611020532 97536251 539046095 440047729 157248107 987566708 360586283 746588800 424073974 903973141 842868728 513071067 779260001 588843783 946762496 977290572 27093549 398249994 340151208 238192141 364806651 223482565 122633613 322271841 522084658 797041324 455105715 670249415 227166461 715532755 903495830 521078628 379750224 790401265 941540156 563678531 377591892 213097333 87771519 438808805 862211520 396170715 405983048 323832878 55108443 221106830 622387406 194985233 529158480 417325266 816012468 478545965 199492699 116176520 160626048 619540075 561046724 970881861 857668412 264454125 491949032 628859305 765057253 750000457 323517140 491358576 518209845 921412120 279543967 571039978 123342843 522067958 216568188 560668748 567776651 662419541 834188622 644311002 667980469 564514300 939509186 820773276 9314081 354876015 331335905 807642079 870813037 933927268 54695798 487950967 874310129 191953173 733187599 206080767 346836168 66857181 104156693 821515652 717108881 595636086 126422167 782844587 764866082 460389624 223295939 353948789 248462067 253041116 164362087 455154265 263092650 924137644 829233113 844224615 102537829 354958764 799753374 346055546 297431922 519690223 542199768 92181472 845658806 197977610 824560828 563945679 842341400 616918421 929677748 368177577 860222201 5832145 870869959 384046404 573170001 975022750 677731894 594027200 736348449 731935743 574654550 872716699 115986302 817173057 477808282 779037663 465168186 309237998 535562911 66856467 955188154 741717906 976085364 746897788 973042203 313888252 777458965 928588899 623323697 411165695 130822398 504732909 229378124 58119980 729805234 404747533 260110694 883246009 847750418 453671928 188506162 802733579 113501157 240460229 457348638 735382599 741122923 213383244 17628198 301843261 960871864 369463205 46281276 989471300 828149461 194763441 817864495 552698398 512458724 395228302 145102961 142648078 987177693 900714841 246629638 139447819 759671338 583034799 383785227 494941440 309822472 347718394 690666927 880143637 696716132 902497874 174474857 724635361 482309937 496239614 305388635 839203368 490221582 12010443 523694329 743609476 331368844 294192691 832978667 59578084 732505935 889623046 491031967 818585865 467461489 347228083 437222586 458275111 961276371 953967555 3671545 185048161 930566937 782633933 20523573 468368746 96297077 292714940 458504476 818845968 869802204 221403318 459355020 377941727 353066017 530934133 267050453 668030094 164705529 886551584 594821912 502174602 145529492 142242762 219341968 723759120 641909213 610546670 625914827 126420425 304325813 658604230 138880821 260977527 130910717 810592135 615702502 261628854 886783326 42453742 664169498 262197801 398292042 891436227 902493102 691519828 611137571 708042434 309160419 205543701 212549687 877607378 558390811 119486633 516486952 791226269 121580184 45913437 799238560 308420185 473362953 702273084 605199873 604710109 168533324 543382414 162339030 76533961 72234423 533613421 680657491 524491964 75488285 702861521 760638281 240902426 223181018 594209718 57886914 359125050 336599120 737396640 723718929 465062807 990652242 344276848 202000634 916673221 961112330 890494279 876485022 156654859 577269592 430881896 252792728 840324259 35360944 407506314 582824408 541486858 823423759 93861458 217927452 780109582 598456066 290046762 678379928 188868294 523072244 837268982 563417522 461784282 417826365 144837367 882298815 220946756 738897677 902988646 440505326 791392982 647059326 337339512 179750217 463783807 838482795 416375042 802715608 356246838 16319041 434266483 918055429 480700816 135776827 258369140 811309854 92220698 278818275 507546617 534779869 977987869 491875918 608420936 924069689 281392586 531512842 90132010 437084349 260607655 114584787 143251941 235508708 219844384 486936670 847750477 98115965 465187111 722614332 924772204 541174078 261254967 187730530 2513461 673598502 404898463 75123862 896917158 816174835 11979058 922761529 378587355 217104559 445309964 33345962 140647019 637901189 586760564 836832770 790869464 413346419 520950683 369048620 315368684 477768981 603411162 459081453 684412626 784949352 897321634 14780966 967202628 11933453 304138721 971428609 462684405 437312820 843815632 29324811 188563871 381701081 539142953 454270694 631291033 474317775 917551704 231425867 302971833 2211596 728418908 171738648 550889976 400097951 118188032 792343725 851632051 928233624 97515452 889905846 947970092 466869478 392155831 289913307 918107341 816786384 800811510 11047833 459287995 127564060 820298681 95568256 537374932 302074006 167685408 16068718 338501568 912235741 546021558 230721537 420148980 224636342 401446818 832737211 733403447 448529333 410591812 251286706 435401422 830873335 478023252 840507907 160773929 696629394 458180774 62843883 716768218 289325313 50471975 320138698 615427292 173744659 153909041 887950860 861473422 507133503 867406497 63450684 671658640 873940883 175073724 958821150 75210208 815875469 263897464 356460305 254936733 918615988 674782440 644886574 202169198 893793768 680522534 297273528 633072903 900012579 590941052 33445024 318070125 451936019 50230644 790614991 996754532 500221054 230684113 752095541 937443936 372232206 308375540 256807631 884409598 557541400 160507708 599218554 369448066 443648532 839378017 732242938 758179864 679514864 669215946 519646831 75772802 572270371 193218504 149665071 52527831 599561002 640032477 34650524 597819062 837913619 462315863 806179600 420228781 36370300 438681596 9638404 809728041 937542989 66088471 36349412 51607024 719862962 380346705 172511111 620718226 767140572 266831026 209023108 977064248 107243534 166088193 30111159 393733418 757123763 528767569 230521396 566385206 148250526 986252424 543666032 721175479 727000397 638430873 945164170 379658149 771336706 919170981 16172761 197876959 660793959 760735972 73321422 953304183 70546425 930365222 740725215 275957504 663529254 328128866 897051762 274147508 941106714 765980669 665352889 393314002 414440297 181515498 733516273 738955889 615675986 965438231 710275070 327812562 272409102 987901819 866156961 146595100 534167098 146054449 179363093 958967213 225716987 142264386 106624101 762250530 734090959 52140072 880918306 302560036 878104060 180347072 108078023 777240693 826349663 468207737 634058549 92304160 590122739 361244082 662879406 153528010 753969879 712346187 756851745 336186972 369234002 470129019 546060841 919815273 103229133 471345674 265149302 27621702 802790764 890490480 421633398 810025130 435389097 813024423 423628985 122683581 729203619 593594698 343115187 130302073 412466020 468202163 984667836 397738970 333484547 765033033 729559203 879209240 259727252 547662853 579408736 931567430 202550587 333063677 702231620 803608115 690361555 248133385 267240487 735034383 780575822 569733949 311794692 674049938 647618045 990092852 675090852 974561437 945861419 262151595 859196140 567782097 547054175 972716042 803522465 413372712 71760903 607362697 656086478 714929448 511225677 846814839 466549050 33261807 107630626 663130877 376502991 331426820 463547807 790320501 905183237 669207347 997237318 12333121 929668623 961241185 125008607 270000679 478397782 380584057 617491136 962781407 389313567 876597892 229996666 830141340 220117643 852557689 964309524 517009788 657873118 338961698 116278425 614109889 726968237 315866194 128549505 972579923 130595098 834919486 375753389 82785543 927670715 157513879 893858201 657505737 482871772 623620779 65734035 621866808 660944684 282158703 410949260 584772279 387774531 797588810 698875544 60760014 4031764 525156598 134794221 411968694 290977349 903729949 724266528 974578775 926716891 854356397 611534482 156023411 70455191 632699608 471329271 809343205 325968998 585575441 86576521 823393615 99230937 585539820 887678847 588484083 223270348 667352126 485560529 713081476 821620547 567690442 228295420 130312985 864205666 755691314 845584941 69574796 340357932 110757356 510554469 48886878 180545345 392055575 506795217 238877523 693744595 645739831 119322081 588059106 645385456 936085918 916495663 969327346 864572386 693696271 186433699 824325226 792084517 29022186 533352667 798938743 826664938 55876372 372334970 336123959 418733592 265033071 645758396 935844030 740276396 287976894 682455380 984956067 206599074 803454327 887086714 382520273 202148960 996453136 727920564 800620705 990224584 996536796 880820192 780535655 475103922 931808819 842550805 990494043 330163798 36339730 551546117 429867707 693766418 728648558 897536807 217985781 377668267 863287715 770994549 279480311 36579575 257893101 599873474 595350057 774549998 818473259 37398895 292406328 880744573 7451472 958235621 327894714 292736857 263414567 716198567 296666842 881088064 116157577 539573198 397993320 351827089 798677606 709496784 676340529 509045835 55948045 151408638 84484388 773436931 351609066 537848989 170289055 437892598 656638281 437618631 175927296 829237792 105731919 430849723 899062995 37785194 519761370 160655142 696701241 821443714 866882295 211118531 176085326 162713102 556865554 236582859 223874157 970292162 524931567 926583018 564769399 107213973 616625902 497004564 602468918 459754069 105328809 530873111 670103145 500682838 511857408 295077491 639192270 127416939 558427336 765687767 538341231 158126954 513269289 900680297 931506236 32519287 765127669 234787896 487519516 869880066 271605853 216748101 161027429 478027425 269520626 777541741 954232913 430438371 846895397 759381753 546124273 931178471 890504261 269907053 36124928 700106237 970891860 450243663 210350668 325186524 30099048 604817027 994584620 505266343 971563655 643402193 199278299 263830904 378456365 874192742 975891760 787451171 937783312 811144817 615271688 824293652 508744395 579659210 434351571 842899293 427134318 506769393 718822598 317141049 373874394 845233497 882517177 497347061 313042617 3382850 446270893 259101196 826332088 345655281 6918168 928517707 746609701 112443370 220464054 323260231 415426150 212626216 256337693 494175961 180686341 312871056 497739769 231655247 437466770 762793900 310944218 97184665 49695291 933067020 696245067 344741628 297816825 413069797 668350952 42364535 230824284 950369644 373398904 217875004 595927788 751481060 441648551 106472869 509605206 392950034 669156320 413006773 480948530 306489564 974764040 70914429 936809139 973372954 118662881 830250068 711587956 537160081 823559006 320118909 344622883 508206125 633453497 391136613 671586523 620617559 862342381 150827729 110805824 723959184 910206515 522151598 418782260 956212795 930074072 467492278 842251528 365053068 561376207 760926373 213808468 758120625 707087142 625173705 394464484 991441405 512762055 927309848 283851409 34782249 779358663 530284493 978236115 978007918 177412723 128734170 659861341 830894506 312603976 757051853 114347481 169068639 6401294 784347936 443761263 522210459 755617440 714237816 743591510 368117718 542333153 646577484 792397708 796601855 245337694 264996602 639468475 653243011 974402088 916342620 238785965 584032677 258292961 862630922 375606124 710375867 303597375 871533429 303291458 389703429 317037396 36934193 973827567 213834573 61006892 853073235 381788705 246569882 819526486 261882670 282308163 849392730 997292802 599062134 583827098 485541037 21099170 916891440 79651224 680793456 62692403 2618499 980193082 228388590 181349255 121174155 45592679 613853423 324066403 859590308 767745842 15461010 808521746 838409236 558479111 371841852 307870371 983740620 486863117 764866599 944498510 657559258 571477981 662771407 422566384 803728287 927938010 721001695 342217077 473192794 316908421 891337174 368169289 576706834 305376646 829998793 840760225 249725206 395811643 36131391 844919101 353713582 394581650 623143900 561378954 7056575 166265622 684557717 306232770 283586677 79784259 257439377 570683268 974828052 989824252 883904887 256775948 972402748 502669251 379033719 13034299 39540822 617496203 362614312 643868045 264853564 491173761 911887568 82139460 780757766 494613055 255597946 570186639 395979238 782684379 555502502 32887744 633266657 658915260 623935367 729089865 222566839 394317908 621533907 284498235 968781043 598167300 528296854 794684629 873077791 292981674 112569560 117607547 254754496 432259466 912215053 354976669 718278323 320959000 958418822 281139831 546002872 474203890 237308074 88799075 787819040 933577311 412357181 760441301 213203016 296587353 629296255 992538868 469352812 924925597 428212878 544413265 207013649 530817930 274042828 846830543 438378444 425544560 874515912 252674548 514598088 900004616 612966878 799729926 437270356 135701031 969649624 240568809 52784692 337289008 777156815 112062902 277632776 936717034 453929344 308390815 463755622 507230687 707080459 749654110 638858111 396380143 847542205 509194092 330974827 625447173 291821611 929617737 526397848 506538471 284062504 416183373 949653173 164053514 910384064 45978249 307531806 386838502 61529139 783176278 98725040 740411262 346440761 131085703 266388334 781290873 109824718 502958887 703790046 439658254 49909281 467798958 975338795 830387739 458079123 100622893 304911275 386545923 450960190 232710024 598596416 457240303 177601550 715916980 555580531 993554349 525914584 337328098 448120426 835228012 995927925 884968833 163842147 303258943 792283512 27661660 822253826 96560003 423315699 321549049 583404367 570637026 226175148 882141675 104196759 64828323 707507586 221566545 916543647 858776649 52499517 347828225 236355318 259447286 786397467 214940685 912075144 753996752 235000181 141367467 338404187 137383999 925380820 935710779 764243865 580293088 778533990 854768145 665405405 439619366 773642610 14430932 484636578 548435591 136717860 423969517 555040019 825202536 840650606 524627122 726819432 202852180 66780866 747309965 919905943 912392459 607172025 529259426 223421764 320659861 252359712 773012016 475760986 324130781 69753890 511190814 55907687 288839861 917281010 262788622 55182616 936144777 275429083 734656153 933035792 660455309 667047670 148592664 145325426 426894639 594766723 786531207 409040237 859847338 790291336 814994851 88741380 672096579 10114956 495117542 655614353 584117219 830300692 870303978 464743219 936175410 180038500 640417318 669135516 702124539 152348064 362489800 201739944 83774778 107599233 726212750 525969017 426175195 298812530 897122795 647670627 781482210 386395955 547108847 21975265 675792921 243740064 908699193 666557712 888365901 165466412 126063867 136640314 701562506 207626023 323647078 396446524 193479024 146543785 109269648 866960221 61747653 348013326 39072725 250010601 925748722 602037439 420448906 291933 407957547 917765201 326197144 364202668 42809278 280397547 295792450 706763002 803432053 485272924 842811970 878791757 791308369 771710665 311539273 198066369 260223608 514421542 616929237 595112005 16978901 69728676 396535927 554994431 475169178 900518089 837226125 95858579 430229766 666535456 644108898 450195071 754689080 856401856 166512558 139655507 864985852 202247531 696384376 119500484 663470853 116254702 663253783 777013595 660860384 373439147 385915691 480146049 3462249 376188113 714348649 417331859 428908486 779160410 459757706 563538010 623032953 953302671 579847918 523216221 709196908 444886671 950573341 353888384 499121673 164220284 545863769 566720680 8286629 840827908 842133059 538587896 643524050 827157025 872994727 63850511 845374833 207476632 848035095 279319864 922941834 913176441 474647069 599359070 917103532 968335424 116765139 660111565 313305883 811217241 683702153 905673060 429512478 611077876 839103739 869874919 360313923 964416384 720992121 883840765 394640951 238349326 941350783 646924671 974033701 278490643 48299022 52818421 327322887 75952896 806767147 938978147 802111366 187850375 982011768 370332381 683084840 330524177 48640567 154603919 165387611 716630778 315631502 797703909 962096667 533208533 369477156 594169276 875789674 918036292 815801526 404288326 706397394 792254690 603868644 135207913 247630010 61113123 270892603 180714616 699247732 45174700 153992959 210540145 193271413 872776889 375026798 328215899 640128389 125641316 970753412 105148291 247332830 61844102 225641658 467043669 453734923 568086284 747821057 133589636 150116242 298300 220775918 761747447 972673407 301548424 136931426 477801932 191812889 955882176 113034370 373268821 767523718 199489690 13845424 558058032 275750269 625192826 672198650 762687244 432490855 864473320 49484401 304455335 226972251 619176148 4748211 429463940 411105616 718051164 388732236 260902788 244121097 736379968 26028708 593862481 743561196 561400282 823125521 166977604 474867410 683913694 7056111 917199176 405982624 990575794 562789186 938022983 954034273 229713969 877446731 314277482 587894394 801085114 874328371 251449306 703347811 372515847 163367946 504772745 159555265 763778877 795020451 721037738 710291226 817265898 652637626 535786326 923489455 355231483 610091817 978378062 981233010 844037217 428952908 175160958 378952014 206341112 736875710 567234026 612068788 351164126 615193775 276178895 761812358 88191319 995515441 871996232 914072739 516170822 99609596 721381077 574311475 459484057 413689614 331172171 297704814 789704750 630662397 624671892 735000370 763230191 594354968 983974313 691398009 622313497 613915301 185331365 600320665 530067342 997987451 486262460 664646723 929603053 1059839 803455473 895059495 391126074 838560189 939427350 679131828 809259539 949444761 269293455 326838606 474450952 527644778 563065571 217178363 663137298 568248965 286267636 321321420 322867516 725158152 878537632 403276949 209865769 946211344 769367471 402609512 381168723 70459001 711355297 633085937 769826001 950911302 377660259 376820274 798226523 597960014 106194787 953225473 550429498 838095251 227624720 195163454 499853825 467279269 127664529 679245003 298017470 881196405 367057642 396424056 282577664 445688207 433288148 505591815 370789822 40316553 227937510 226459563 950393498 278639452 895383982 942234963 104951588 552704394 809146080 845539118 117499432 101457603 134798489 924549431 563964810 565389110 516553217 604974863 298766647 29217428 635854572 3109664 801816947 184732497 160070595 472802000 147081179 848361219 200287758 301981410 707009468 981307224 104837787 480191123 960922031 730135985 945939007 903350358 587058061 925217800 787157940 129032844 79206932 853433228 315172526 632728517 734149678 279115577 386410800 191191695 218530929 694818393 939234712 812633847 183361584 902723136 927019532 778054976 79629432 345335679 566160606 713207219 147043930 813715928 387561021 160279077 602482662 271488990 449454944 537431884 861111524 79401706 248303915 608331904 326845321 991074736 243189828 344948293 461638160 247219737 78388436 622280574 106129421 126860563 56527797 144336594 69518348 48777311 146312275 470796749 471583725 819712948 943816596 401629328 28016301 126736371 813487340 507022587 961548774 434506127 761929684 513871682 487363979 46874900 456259005 162315647 874167447 538678333 736513261 59009421 24506102 181397447 150967835 911641656 402056611 960308304 87485152 252831275 824777692 593861368 668162958 618142263 639250094 149834756 585814095 828203718 614676848 46917956 789260793 469594484 244752553 541379123 591447155 422197012 274851772 493335091 138267758 559382455 119304908 933536131 42171783 130760403 107929861 340684501 802559020 689760811 387129841 199133400 802102129 360650616 615346799 82853030 145719666 553079193 538370010 386868739 418484717 134200770 396133665 188404225 971249143 359962495 677326298 480309166 890120582 49966067 806890574 59596962 142193273 658294785 873942923 523052843 560956779 464487952 389745220 43320224 766342386 760833577 71915830 961616185 621275134 196253201 499367213 574211137 978647153 603394686 821930749 680690017 681952196 86413864 625903442 588607575 979139640 600142961 479080604 1266204 632046833 323254040 366829727 669544937 366056525 869830205 338591840 783148842 464111031 923833929 98176566 277401254 343147340 951132709 952423675 372284840 582078211 314399582 965673248 837678877 46122787 21078221 985326232 469599502 236060844 154958824 33704709 889644413 805087443 158357444 505285430 443330156 825646711 537664851 58347403 197941843 758483133 31669497 297457526 672615337 467737617 57989835 855652517 987051705 413362360 818063711 414760371 301931186 969318790 968746209 83766933 724300116 175890779 122412258 551601435 623798605 182208443 641537204 278551109 348042039 362313634 519860300 85480937 892673309 74985362 61026794 703573384 29657798 15002198 85980679 311217017 19934780 798426189 83084445 79818631 149620784 674160813 169469496 525394525 148486253 880502456 752348692 606565937 704178369 615625543 444194895 485914081 730326388 160178790 797284433 236689965 747269804 464049773 292124230 733526994 702999509 524559893 829454770 990482272 875713995 333189834 435138212 865300670 116246043 688515606 247641189 595338207 653110358 343076384 542470263 87142488 720381213 121202448 711591153 207517876 129400864 820501162 655877660 315424449 658629417 559007571 608627326 195811173 706689086 283473194 502917321 464698039 976424523 746865857 156961828 507648850 89021325 190891280 766613173 488392568 448153303 791477635 923128012 543803798 817897050 702181161 809227061 596608068 771543521 193511291 249514399 984298902 188421386 287958332 127938892 693105110 705376895 389807272 739275542 367342306 754333857 669812247 77099025 371415016 923860517 656253768 466053466 234603389 808932204 588486635 901385569 369608597 834037749 38070341 672562653 607945666 728805157 683065925 701961 735537110 395157837 104789411 498578135 240914354 427676478 394247819 72567699 33020895 970511719 709037869 874093144 592649111 432330512 372335673 357664967 799575059 482463403 390761594 803461008 477476215 646572564 688400489 454670804 440537245 263663203 260705953 424541720 453313262 150795388 554417631 483644042 953173698 991964138 476559601 425238624 46000558 548608652 740718230 67930954 199867177 898135135 358899368 508416248 798322018 532523705 788711763 995787371 580420977 306051296 535178908 899095911 810624303 709147272 186815213 865022655 366207332 588207932 948231848 226269906 698366973 24836001 506881715 192136836 638775470 856235853 610293318 693106784 559066110 482210044 650814847 741784796 916265767 534882820 782748911 856424828 527654113 109434537 939413513 448550810 555314767 242752002 691925730 429459022 575464230 866400742 200692274 883767557 207494545 187486398 282323400 745807223 559732733 935284253 359609346 138439757 875812236 880021889 220116644 419904176 452004889 278568338 959364193 468698299 972421073 973126937 909789022 680039594 318411475 781433221 984252227 636537017 708372157 624672412 977913403 210049106 614396778 723180788 76066914 387819191 547750692 859110487 4600074 676071534 508415258 431561033 297734826 406065236 360459434 337904774 457993782 298706618 888966650 920595786 803449673 62337397 154815522 585021591 637593135 188160777 829157989 738449590 36550756 104307294 106559145 31037920 792299538 141494189 511144477 131892487 654888156 112691576 232066778 613272067 892733238 293261416 344253810 678626809 794347918 541928793 639199431 853379526 340530783 475747005 294865266 901421540 809835279 8633687 202346907 412173884 210700913 406447297 674177116 143589514 280434553 292235800 448353852 370697429 22911661 322304057 814307293 411569074 79915001 389178670 153186862 186675836 80482665 548054735 624678711 304317595 805275575 568308332 958382154 893088768 480875056 351825240 620286982 334957716 331199415 822468932 115793174 765237127 874986069 432871692 323630524 632118955 860026470 684740657 364838970 727933665 625497741 273188156 204566834 658967572 717100103 168039306 930017367 923871787 928219338 134184892 629249082 623035184 50553453 119688883 964344027 450051142 472958611 742111434 473630093 335100462 540837869 959245890 6664665 416419140 592389842 509721617 26356810 233933416 609934906 337577400 643781095 754640681 434103782 329610176 165344073 619580501 810636391 326678126 87312915 176633494 60770374 451203826 505056655 330135389 921889746 482654236 550418973 898698352 799841501 728425910 20136364 329935219 488700979 223864562 809619213 273200640 773498732 105772456 913515927 555835102 800201199 475004732 808317928 85538588 865363649 304459384 834947239 329595536 253043873 697330859 681112376 914964401 807014064 67441918 411390481 975964379 284305800 296321246 400083102 503565316 438099400 684032633 268138533 947370503 256372491 263477282 436231334 416507148 330088609 862485635 445203314 602635057 847818033 862312986 582395558 447446415 268222331 377246281 680907764 82065774 445815142 725752362 5434656 784142855 642363580 781407662 85284046 345983646 241486314 294615597 575475788 881888841 850968138 905579658 868644310 731989914 353068157 759117024 33120608 595308927 453339784 39455482 955598649 702437927 784757256 955036760 191951974 324548183 672495629 709513917 317752108 78706737 859369613 746228862 753740429 196340708 86082167 955377723 277654988 594301248 857151737 112836243 886459174 375740735 26902261 756348548 127742006 93690189 219977975 103118927 965537930 111462967 857374155 33270698 210046732 354376600 428715555 911513304 300216210 738338075 970627099 819673076 761677508 887500803 717321196 857485273 817889415 307452891 182540627 397733531 6078017 291271379 586980720 323587581 368986304 470134226 187442669 496912004 299283912 889630898 5580221 470479650 176455494 844688640 876613558 341746996 676904105 110367008 936180343 2928404 332027189 615993474 337026750 203620173 790291810 197245624 468853691 302369116 418923829 358386897 150495645 190532089 281480378 271000133 741720858 915532237 22321745 9735569 997218041 628411017 526556937 927775485 137508799 860949411 452288779 971072771 921898311 408848565 284929500 10472345 103448290 94883420 178443896 836526450 550136585 443095221 869078339 305949660 109075944 391008740 976394762 20014981 162244865 777268579 496173363 236066525 459390134 228832712 505008788 874401936 555320284 666027129 53830503 566872897 803171124 255906862 411291439 520850245 719160760 326611170 523049578 348111759 676192557 647159693 630399947 27390855 625142591 338641968 462433444 584621298 73955689 151446018 484938710 407019662 416958067 220746739 837158173 591848748 481516279 114173811 888386209 539464725 132139060 370459096 806371624 931334495 884503362 944479339 90087081 638981277 797229848 514464922 416043684 179970383 980946224 174880557 914670054 617964043 459366137 526781008 339677710 227084325 264100869 807929338 681519632 39137905 686233061 668451443 48310674 894001274 720524213 786271819 416026021 482126311 711366504 552440742 384732835 375439378 199233939 317341913 81050392 28329215 572365101 13886837 684097972 463624351 621512186 676037331 853122227 227145886 352831793 13612641 978362364 833939319 587564780 773813309 241546378 67480267 556361060 221382536 624329762 775858404 748466038 277846100 574253195 36387786 557700402 354250125 763213531 814535433 424024908 790052438 89016189 564984210 325302270 341423788 983286981 566653054 127557633 337808133 322628477 679997094 742402595 869521942 973311137 830157128 634364808 562320540 629666715 954259986 440570685 378224610 64942764 357842900 997784578 617184200 799265438 757196544 326488258 504603613 271818751 813248319 187898823 608319125 597816964 748624437 790448731 584307735 29840324 607082140 173813383 521957677 556657138 845332922 272666809 815255087 543111539 123501912 458062340 800185060 924851096 890451971 659873619 363886964 850466487 524837864 750035774 937611573 700441826 430744462 939208190 576188696 978945848 712663734 138103806 767303645 974882326 276373633 342519687 344837516 575530721 127435485 593918062 500720398 663218277 762933844 982087446 554675514 374392090 380431813 263757540 52219776 800042068 619734938 317389603 376029806 631032673 228756660 99975841 204400734 278757956 713943825 504429821 412118535 302279416 907975680 666297983 825074422 690367634 883090898 806679149 434175303 556690873 707966146 688225650 959387852 909114769 234930806 343512532 665907422 43124075 852665668 690887360 1411598 812808291 74862534 832624096 504151757 26590436 798644135 343864598 707259156 775999393 496641616 841437767 186976245 835870667 708316855 514355801 146206009 694811450 931491026 743801330 45788659 229154701 287902694 960824750 558738828 199508322 295783384 117936867 451674604 312563266 785017920 634939238 78829541 237712165 688112187 480491768 875518377 175404193 306087935 389383948 685753607 498146768 465878137 691449664 166134489 347597098 890809789 924878245 562734036 619346979 108785163 183735029 470635857 102356905 220995672 110758907 637373433 960764368 345239261 932173383 413755443 595607314 548578600 958791942 881866488 173074737 883325305 224501264 616896764 105729870 880992589 512821781 99084614 40251674 269325676 162026775 463788273 703912461 863564701 575713901 508103646 14565187 435212510 825236718 289256481 38221648 814681446 972702812 492935205 484268744 264707845 41744537 192726234 481995979 381781711 495432668 753521839 534906406 26306803 380760087 755652865 885065203 816811650 206604638 535310345 865082003 787781021 473318060 446026333 82435910 155110395 269425507 993281489 118989010 757761714 237248176 229497438 106034811 278788707 215975874 720877884 938032157 677157623 26756751 177159885 224100823 397397405 932758294 848571094 870132161 540415235 786578547 829576191 578141204 538404081 292674882 831751271 584411287 936889443 449544584 883022340 78246068 773854188 526149493 911940961 796750457 963363775 428838086 284929800 597552011 97329825 385621978 958109971 561853487 909012132 790570276 135827098 371823593 843256987 717295684 603509755 812439562 620175074 761914224 836405475 989939426 666038931 981124455 42423151 616449208 403088890 258825661 113584409 785281303 374232223 690333866 49606861 356304021 647140051 117514026 268002482 817251390 289700353 286188275 912539688 730476098 129860076 440023299 654421421 727519693 338020874 915220024 532856309 638149411 888438273 67716779 993600536 549057402 188630045 409442827 745548305 457081513 415567286 873035607 268847868 294654870 75040539 154218307 305667182 817669658 420761535 836717746 526778049 234872490 639919849 598987287 465284838 986210754 864905647 713529826 586671241 744149483 25997523 715552042 868519042 40269342 163001086 217374584 621644005 942741541 146019881 993441341 331033871 997627876 189108750 454318244 78040600 508372536 945357804 310053619 996249302 68089330 221334326 491698248 702668467 586634944 370022369 441476654 330364190 628625279 437814376 4003391 646239611 311372846 940413316 177484251 694304108 99520354 410445561 114458785 788471503 825363434 776026163 786838177 326227067 965206761 950256449 816508532 623156358 916520014 817653681 73874140 917268182 695363985 91615203 666019209 677739712 391811508 932985140 128800335 495605061 971689410 658436005 67898436 66742235 507530730 643340566 633918409 14515515 10395039 739858607 37866553 770657071 777680605 992073397 71454040 826840929 685677454 201509916 741030524 510722352 63939536 833430549 20800551 1175505 18443054 192989989 935169349 935413730 419000208 500644268 852325387 284317266 102788732 612732372 840024744 765070750 546644027 825972957 880020205 5816230 248659709 726328906 628640718 489698982 566483100 417013187 896759639 899722472 569181544 255369303 912845385 894946443 439102737 103811626 752677930 826179474 279761580 124734449 290861099 570450484 251701333 400289759 306856032 548508012 481798861 350975540 424796621 779019694 402058647 852361133 304693544 269592202 610779343 493604296 959242962 911562062 115625367 439564391 380403692 819936840 850642134 315943858 306565439 892157690 875092313 878902244 79609965 703392123 203993509 324925955 681461474 673866794 366931872 265264797 7000975 669265375 735560389 932509902 157929914 704114708 935907912 143849426 827910025 917391729 194730220 860947112 885772027 186217873 508969412 260034556 877403503 961871877 894802984 492032841 96369128 234462163 777846068 21065401 804400536 16850839 908097260 765817270 662591940 389696226 970752149 401746058 624243262 554323391 221526425 639225267 541056905 32173722 191993752 995474580 793996202 168626078 764624997 465373563 254979652 656671169 922122963 722122296 968711796 988648288 616349469 878914494 997937043 926447672 160962735 218652168 400390002 939763491 469660942 244268130 130307119 880878550 750394036 415480276 818949409 822103331 145501205 57688342 367240361 700610358 61421928 760103020 479030290 89839248 623376638 700856045 936500587 785479724 145406953 903147101 366936824 367587972 586139426 614643680 394291461 487822532 575300139 786139559 612732543 204836032 704317539 305299004 770960113 633184658 265046816 669945655 432352548 168352890 140124679 430932968 945139914 160710866 390696803 146555409 514801360 909082924 196582463 24965874 955456652 543665635 732957076 793489831 856463196 507056 837124222 822438292 918633866 709343537 377746168 112112429 628188055 11750116 758529437 698566333 87109376 221702678 563492563 822402739 652161566 518205611 345352983 317498293 406769128 897102754 854570421 314573252 362943811 145656246 223102770 276370651 190103072 619558493 248487900 318974150 203784000 536019815 293614277 277120892 250859932 22076342 386482300 498441319 694590317 621275334 597279177 934026209 787592436 782017551 703867875 100829962 247602852 666112312 524394593 16085410 321366286 113871451 745455554 140401018 665622422 632905381 235491103 473806174 56707334 547252037 527866459 626200480 720158077 896370668 235244936 78856329 852827449 441642367 802247389 864678696 469174658 313849610 84995778 531030280 696334273 766038746 297434147 962083172 157390500 772132148 499418827 981961419 959859161 182411339 284849477 726895871 350853964 489229233 209148482 373626780 861851836 305575422 622800592 441770919 533454705 126277219 32699777 981350146 63961095 724720802 394334502 13276148 732376014 386708403 391886684 808455163 672849356 376011571 872371629 811912428 614679531 753499559 763398338 130496711 70892090 560279757 292899934 404779767 909484402 591280077 882135487 24387433 893452676 494198428 732849873 668002063 917526897 398631374 862797794 621575662 775436476 818111152 154588472 345916441 720010658 21897431 919193405 67614540 386230145 457022643 916475871 306867565 757565067 610485933 202377239 60823708 671115457 829808699 728994859 971581835 825958777 132624785 79028098 311836308 343140791 832796784 464974749 370895906 765563370 525790296 105968568 871401217 217588817 358591802 247685768 426462144 552538503 4448269 296568491 966751578 545316829 941006417 812938913 174895668 361889591 79705050 353065614 585363352 194914149 451338797 578798655 661055458 986092159 647163542 933521545 52364931 808988169 694466069 523808700 514481670 515677053 891583987 267256521 299884660 557583223 423185613 165882741 873940620 478608782 203172547 264203635 997902075 79190252 571089886 955557944 373178264 480588211 119709098 731818258 672261861 694384507 838212077 38817737 556648826 962678416 719898569 705981921 2689080 586762177 695992408 906407669 359906084 979087861 397157760 259743069 940601598 858641923 280959682 672648605 621264389 973088007 524161683 738691678 425143160 456023633 987771559 648430042 694503959 849990361 192824018 875118566 788138125 2586453 743275159 539869704 850276536 298118324 719478652 554681033 408241195 490453606 835158990 214156581 255781642 449518262 896933428 255532957 324430622 223159270 51678804 365226960 31893250 786897816 633681801 656415611 995072633 208032733 965423238 111883625 343697700 968497642 551445839 283048729 708174715 978623944 59048487 198230583 922294137 882036251 756248042 899849138 4624156 244928175 770607138 656374736 268964395 97902944 482177189 974971004 114049839 711812735 278957582 82451896 533429158 282272011 161589063 930828183 945657470 334369434 817866884 924845379 104571517 670586123 529036345 271741744 1901798 469125239 561482778 501524413 920786134 681257781 242458064 256971478 359878130 864250007 462064084 564930109 787387568 347307446 145504637 799893543 226722745 332668415 40701182 864270749 434049703 560302553 696492831 494005455 823865231 306276418 56063667 286351027 394325600 662854237 475194251 486563866 919507030 866646344 705026680 787570120 759775238 796960843 72168594 982314636 283621524 153892715 267787671 86470141 63241550 787107183 253818640 859640912 69804040 714854314 793418940 587926763 228323190 68823649 473888820 353796661 173821061 762090659 467661357 582237404 415227702 486738253 744092163 209388670 43053406 460770894 525511264 77451769 757883077 913556751 762700816 904826182 30665482 849415736 180476592 859139718 575808862 475392879 489952198 958873904 498383073 418266370 906777069 431688780 481386037 654448266 465231762 174350633 450127743 580122183 880408071 31404129 295689675 897971616 413430405 341337873 890011126 298264436 501269420 434978887 463119776 567958742 178463331 844251583 134274245 953249700 881438957 177436483 623619013 802387132 32741571 683060319 198559605 662419164 237921423 609029934 373020053 66829567 420985263 26378840 583723094 177258760 977807589 461066094 764794063 557783105 35969241 820947568 789967013 848680478 30468665 419720843 819578459 420939837 187903923 938572436 337149335 485402685 748348492 911889956 419627385 394357688 34948191 103033022 297146192 535643993 292854837 384203344 992471433 110049424 328954397 299861461 706862940 407944009 789602409 290269831 939276112 698437328 139584254 742434671 408761932 493703310 756922184 923614831 946714322 441878335 407424703 497989903 921268105 993625809 69857526 259873532 182100593 358385652 386651722 741850001 650882776 464806140 86078769 949028494 553023085 180131645 139244505 343088688 856721684 333311353 198660672 432119445 943824820 593573766 532834171 988545886 964830667 644771473 802325270 124831552 808817384 892573777 484368359 635411810 371600886 190807041 242999937 355894827 645220162 918374743 814238973 276603898 436200832 117334704 360758150 862788991 947839177 377175776 228687318 803184445 787053106 886189582 100569297 637946881 674508713 201978000 763970514 335252088 363707479 767941374 500676834 916352781 552109812 361174985 610331037 901909747 18291299 380611281 164876017 63434466 795921045 668877988 884621730 605996232 111497911 929008242 991537077 109926374 130397843 211013127 772297934 213648522 570710975 113643276 450548519 707842185 373909107 99769998 56432752 819785278 910251223 580236987 804493565 805586337 666483851 740770274 52581642 23684870 300690774 326752411 241393836 715906302 921267534 365399463 593095036 654977177 556007711 673736152 988791758 303520314 104585453 235369041 311401180 134840163 273355362 672180522 135777534 432343107 822940803 285576233 605438750 843605217 577826218 251419833 938989778 26187633 103511012 897365724 379470373 16685009 621069067 6910690 289902705 913430553 880393967 54438018 235556960 541727170 708426326 96010741 585058431 193416302 214505399 779767405 846873033 160043371 51399361 309607816 636545711 933552426 927208699 672766830 945941021 626165028 387310944 929956050 17718530 916238583 559367434 51876848 680970421 927031175 207758434 733593361 738519942 860439403 877805561 800811750 294565797 902008008 417822339 532365445 842806932 837465568 731225026 153502548 762666144 632633909 145974932 535759298 403844265 852889418 253157961 685917091 11359380 362951585 817374320 493724147 922659096 831436155 813653839 309985448 814071033 441243587 359811869 71266553 832737668 804929742 273530997 359649148 41312806 347591472 774089828 850215648 850546166 314490971 852750925 692503297 691139008 548872688 448376360 582521660 313732544 73273625 793716460 933597374 133223400 673541575 70145541 778949039 502141991 947728176 67057249 862285094 354394106 797823525 84542529 546062714 558638927 880420564 45629949 538344894 263779522 943739507 395279386 126321510 437921470 940671906 628864410 737022528 31629447 886721984 236553449 349192343 247839582 525144394 967036506 676034652 947854926 161303251 529775392 179216412 588601726 617149041 654400602 143355114 553079532 192137235 911160498 273499822 914980777 175949770 281368021 531347613 674462350 313891893 972963604 840661601 358879041 540997200 109983797 663588918 527716371 471990785 775737984 811937283 38498661 146291270 209393362 887324467 882651393 21861667 674098879 127588770 776903557 186218765 856021890 389725769 745009876 58857846 963869181 83603442 32189020 212507867 221328124 21840016 41185362 273135967 914192427 636148116 964775801 312506874 239274293 474559832 474878802 196653198 794663471 402536933 401706835 154619587 560388663 337050138 409273744 835799799 864278979 356472309 887510495 709222346 718189484 829643483 405118269 37402391 66443477 736627300 656845154 385630642 600884697 262963307 604234954 458926164 803955145 342767217 585453465 716898189 587255670 292005961 907289609 374533852 347922401 121306274 450298852 697707524 307939393 779087229 754189405 345993405 250916342 459962918 448873722 713516198 468681979 128387940 801335913 406583443 621099683 363046605 498975080 428886685 674159463 773980799 609995276 236524522 513730258 313991678 72712867 395757474 543444453 441194315 490566815 732879016 560688878 517511344 69498809 166925798 496511835 544641111 889074973 145313007 980091948 312651205 890993312 42436459 354726487 32541974 938980057 120830419 155116744 779919196 381362799 787280333 140241214 144090142 620482482 531610180 822272788 375873889 190391222 731852901 66888823 998061476 153325676 931116211 798458616 258110373 182460357 838412168 246708716 449655286 643131576 689616162 366363279 658448389 249046763 857579213 995447316 462667320 790248061 426210221 16502366 173337599 618247638 702056063 652443527 671508092 431520220 445707563 999999564 588406478 644132478 728320947 10238753 981856900 874322817 81272446 729783302 231180009 593251461 776087279 58092430 598798521 129277435 120807469 541986631 760592475 261054559 968565153 688364678 887127483 38856159 552095323 322798692 730144787 84433763 722187845 376440819 216344518 795281571 107498350 722043174 834954023 152531076 565852127 951498868 230647049 534912074 428626212 760721310 600813136 829623072 591649484 129210961 350228730 630888678 869201223 981500954 605595711 307727379 586721777 366652487 804398207 281663961 402007826 503690140 622712094 799554567 560771582 184965903 397829727 84206546 786119208 973183679 116346191 343008998 523102818 374798092 112938006 155441259 86922988 931424811 47507636 511678467 60814729 350540297 40700697 563037294 575273319 284933310 796257959 243413042 218559547 159031389 895750100 303267409 535237362 516298624 954568787 815472929 197049742 105704769 10590594 234725005 513919731 993002384 671009191 43151320 336791799 698835858 962766107 770029648 422427096 924906807 513686951 12152034 550810773 211133230 204650752 311289942 559945546 804695522 499370261 639705676 370068035 197822983 419300940 327904675 333616726 229620392 48245218 678320032 250381683 128519499 699093312 228532307 611509337 105503817 603138021 363454188 693078012 135486761 429743338 999765065 299944868 450418789 528361305 559503970 436468620 336488562 378556811 850507016 396008542 470289641 75427513 974122536 394188298 994933373 461314751 761206693 919795257 190292368 983284491 795565403 798575826 625967219 597943432 410204761 50081827 162326628 743763494 48647814 852151195 918313721 481836055 488694614 550922357 13646249 21408096 424252386 687524023 187699725 567449618 754647692 550912167 418685587 149478606 100785231 41868139 96311402 708945047 150105916 691630419 517928030 415865946 889662588 817331561 528825171 401146365 282922610 757224826 53017653 536472616 849697545 193313001 105372864 346828802 899270686 824378157 396308255 491630152 748495686 990336118 435174728 823521042 659400511 303157931 265079853 98588039 488337641 147196026 128954190 456489798 414419848 614532424 628970141 74478621 786219366 772872088 686075362 670485700 102798150 996081242 633985577 80343437 658222721 60597904 826576062 784099477 585586354 34206864 302092485 22738956 867460758 877393280 971627874 38838000 589271140 420486268 787430568 62390953 988618636 945251583 428734302 596491094 475192102 840138468 870551573 689038354 183659834 525977030 102880541 85514904 564881738 173681012 857175133 734911358 443929223 684239758 115582763 463577190 65623233 708177199 52970770 787781886 290306258 158984137 87149930 830133619 575907369 523078786 173494282 822363092 133512058 308474245 545624817 863505513 83390876 984252138 331540427 378764872 933313180 425654568 845391701 118879056 726269541 708534783 462699824 732041722 448418085 267785363 246316170 581296955 933128632 556713211 295254405 670917502 669223068 360033623 821507525 426431518 653816950 177319611 289225780 780919032 38667114 773462378 544745794 780426314 600496155 809886646 578209140 91750679 713821091 110742062 302157092 364236214 607265946 407569444 466324957 563507310 396284147 46588280 960299257 196669382 400197945 751694339 265233807 28429986 709034642 361414703 604492437 250733147 76926641 677630143 189370199 515596108 93467056 173609433 133788359 624556689 315478120 864635100 450362358 138282283 167821927 225842146 600680895 94544956 923751700 587246464 747125433 221141285 826907357 9064075 803651087 965586972 969892322 45163512 976183142 555853960 954179517 989359274 440678050 773294321 452164344 762662782 139110335 877034170 651109566 791876487 287028124 897217813 47372341 804329218 85740158 883436798 455299546 402525947 519545154 152178920 816557321 433244669 283978897 243458701 449002687 40866649 769690832 526190198 399601289 236840771 802311084 113741896 716018817 443651520 638022726 329061739 969127109 882645064 909061708 419639864 710750062 503652785 639817653 137491780 968607873 168054526 383326831 492997510 979703492 744929097 81315126 242152835 862243804 213034330 784307104 140345537 693259556 455583885 21401987 850172017 347561394 260496418 714614788 249303063 428618092 329858244 119721128 232352372 1211441 808426325 436379566 84069797 936237405 894968382 493374268 915994371 60185582 613004438 810404243 724316223 640408481 361337585 368827831 907574601 568599864 140057405 304742411 76770670 274540302 617418725 564994710 869832372 525766855 686193533 597831198 312736527 807349826 20064332 994663231 267699733 510952804 651742593 705465891 425113653 161714527 813473586 286313002 408177147 311065177 579342392 894372498 919574115 521461956 309545800 323717491 528548482 237561630 686063470 849787972 957177253 378571077 124182537 946594725 901271878 936893265 746601058 832236815 111075114 549101615 459544023 327179016 380594749 109249855 402292821 234965700 498926758 992672478 841430447 431081426 447177628 848186569 523638102 833999144 864409691 739682329 827047943 683666003 69181492 877477136 511648462 853784888 572912081 661530421 69982179 85890166 580141070 320608123 559445233 433786262 437602429 47857414 504393163 686361177 900893846 323500737 131583574 704285644 356483366 609052148 527137913 636755802 649769712 802491884 249880310 355918690 835114310 839759998 467885736 374972435 595685438 757115803 765849406 613356336 45847949 781580059 758730268 557562566 487058082 39568851 23172320 134243485 838492678 525881663 301001369 601949963 52935357 509345990 553348637 268029404 134086663 159622974 149373197 831312056 334553346 478648122 183534231 782226602 359305321 871650882 873557658 956352887 479120093 268649267 550233555 954091841 524145324 810076369 985307396 216467285 461370375 195831950 310475199 975829713 21157509 749354206 910485243 340105792 945329023 61902474 501009972 423770981 668568992 914590640 369106066 640266190 19699065 893723275 394130216 820786274 337658182 161782353 752938803 512848698 484576902 989408040 380486307 345624518 329268908 930983278 706566154 916675727 34749653 953627631 179496994 645086681 251273709 58531627 90480706 197570057 111705606 344144452 256864671 229661381 907387791 81774092 444199837 589650606 199686129 468310926 813474131 696528509 789952358 37653075 249911346 603491472 778225193 228244853 736471294 851768221 165896818 996335959 40763233 209556225 378581575 126952641 619016935 870295316 450991807 469014405 668810860 976951892 12378568 301021406 467202463 213608679 693231679 561428313 7461250 632509512 658763260 415754274 525120572 907377365 22219461 256976027 875080363 36418036 380564973 273175147 545651694 101545576 34869494 135818438 189896579 726374052 993421028 230484536 531730341 502516594 787536232 326752587 424236384 768505266 46526353 703830485 579536172 218362234 666139762 136696260 767996057 634104458 252429420 361927965 415396414 702570542 882617633 753398080 412212175 428763282 426971423 957294791 596931596 768776998 154271464 401685045 508989796 579046303 795785400 930757184 580955656 93550136 845149592 322734582 124504331 172304571 562719970 70385525 989583699 588161021 130822707 939637066 862525964 417521392 436646906 889155915 914384685 241594158 812327826 829795117 369622802 140782490 565949388 150563947 312923705 507053204 707991558 797750097 612110236 35170742 566703329 637958625 658178005 45731670 422688375 207410410 992037565 791924479 829503513 947288666 144076590 303501880 270146463 601778221 256867101 597514287 197734101 744141589 178038530 204011999 746909061 262890384 973908963 916810379 785667126 776043139 72474505 384108496 224515305 547410119 506985226 749967414 854666655 366477289 787389780 912847741 808276886 760763263 930246180 863719467 446207189 813572483 467252967 713209572 483977571 517508654 16985103 155622379 575020853 777871967 978217326 727956530 688549045 336770697 952810606 600286461 537349368 54299585 6431103 423461598 208536416 762903561 602216720 396227968 766090141 137975882 342401561 658467230 111575582 835102445 610695668 867148369 914398545 596852303 727846387 366680183 509421075 282947328 864891689 287539847 356501838 357607020 992314832 714564266 247809589 200118312 751997217 588703456 173475275 101803895 597966626 852846017 584348341 57813703 509260370 223093722 33165003 996979750 47724146 990032118 67047944 137480451 782265759 764767477 352775936 151443496 230547807 82550483 864035281 871181895 582410103 756668871 38705590 537310366 2597965 857514430 98223356 130638718 670564975 766156955 596669833 441913311 461991954 533952730 202804395 91310504 828700477 708854547 17638110 204576799 526751990 899832175 597316058 192587597 352080556 189765497 910779531 200764347 824142167 668425408 644316910 658073744 180001550 327328434 985834856 926537741 814341663 638990409 900678937 223451907 293867532 884577654 907940830 870945188 515604759 629120223 22850094 368235770 613233469 111854542 839876655 37339096 777250275 776624313 867814451 841506656 21578257 990876697 386227121 66557228 173439750 817481371 66748148 28437608 940844249 846059497 943659965 331133395 994679121 636696863 895601299 351613644 637714540 244777700 718241300 834150998 58628394 962489139 121214639 282617779 648987555 752568282 445894674 615453494 548473181 176890559 68403777 108345178 724141241 702593563 145888347 316005507 774281359 896578908 299342632 905171761 752888850 273713089 768233484 615582309 124416561 561152648 729730850 642839442 74357379 907254458 667365263 538907006 546904612 602315835 66059626 915845490 404667913 569277448 997849653 699445744 986968258 953263913 156378164 792288917 835797840 985883704 864728730 461257953 871381755 625390855 638498696 294488615 585163742 984844402 796194078 607829889 712766356 306106512 840326209 894696384 6172157 311294429 213568784 321520458 266219218 535453775 154445376 101159741 587837263 431235942 695047143 971286603 504421513 147304364 706771812 232944010 620642070 395607512 527308757 64531434 532458089 146063786 543447604 785587684 162773341 565885610 962733357 623667384 608909332 402838139 512751488 855023433 298786197 452703756 69754717 938460505 856081696 537634813 887008753 396065390 680881592 981783917 5693794 444875221 13302452 253035087 223712605 26284183 798289061 55922222 963081461 697682561 812007165 85011132 111371537 204494951 257150563 373596668 580959908 838762456 840499265 672604415 587999533 386098603 887320697 319477258 223792017 886259451 407352373 880959460 813013877 110039520 318303858 139432835 483855912 231344624 153538618 24093968 675055452 852037035 431333273 483400624 919129077 154190670 87921196 233069177 339082899 468308896 790949092 292349982 513653526 43742501 380838046 690315841 803055804 970574514 457171145 280369671 478313382 532934984 584412396 370575330 855701110 85492675 452751500 785542785 395218653 212140621 154462530 830730497 318900940 952951802 838588484 934848349 552744587 324620755 468983011 494862098 148719717 265812048 373989670 273969618 685155611 725605173 435330152 835956449 115343392 465356657 535447592 360455615 867902565 680050685 685097436 494150937 574823824 875330743 836792785 916017962 706543521 335853608 902712913 561358999 218376780 928644343 233516705 568113567 312952686 364441492 428728857 455757969 890267377 991018181 258328376 540978892 141762343 252753698 759072403 97799825 436495172 294749192 136265349 45140627 410395211 411260245 695643612 240790160 647257364 767772435 424808526 626852100 172464786 861742992 341109735 273621844 770722369 643633976 327727923 333657251 999413022 749338162 571343652 459731038 302151950 957530421 302783184 301723449 332533440 166637157 452669788 685271698 434984281 984944997 142202792 923761021 842586581 77157979 475025628 681494075 145790165 499491037 533361167 849096932 4076440 603566911 709302809 50449830 169873356 386700734 60569408 922890186 56317214 963995833 233529804 403893376 383394909 596402645 188290487 291424528 962003416 716800944 782284592 931701732 721544059 313816388 714582190 48753264 945372943 767234006 423305888 218605040 245303320 327019116 813055567 318431462 433090732 469766124 444020559 898652017 143294397 426470591 34425200 59492262 953210377 70368388 474780993 980929304 471241603 771281997 430746409 839767924 455570345 735426539 199502881 482093432 218493433 118748793 23247280 609241396 309272825 118013810 100067104 876460195 568229019 914192091 637530542 318586992 692968886 831575993 863351125 582680270 945391758 260711672 781577867 824973075 90428301 414772954 408436672 647041575 486346231 624563025 221923070 520554970 701380972 792307957 862807357 602347454 663004640 983383012 532137650 623366147 798163181 384969870 858026503 829867237 926240030 321844773 669087434 574628546 341485211 576443664 332483659 629844077 209297594 68914864 165668935 639322338 288252644 996609698 879763572 549022390 501889609 646255616 522313911 255881272 79583395 866422040 381550069 75200991 976568153 38678766 240040989 188131013 106259420 480373852 989880212 646326100 206856065 642805610 457469335 466371669 355310175 761453410 987963487 107681859 125483640 176087333 966940601 186604195 809078351 129017320 338937034 181699226 169570900 696283516 608187777 219678128 880821451 837773525 896179530 816238186 821783027 171481559 942342494 768807024 628754684 22177389 971688182 148304543 549974182 160503194 800288239 833667374 219358555 394847370 271392819 326069771 981617997 258094380 936856479 311808253 598285824 892200259 297889773 474146679 462216957 43361152 42626038 354748692 45018582 265852735 867000415 128973319 683187942 321768679 369122375 388145511 665828751 809990697 430684043 131606842 47706836 54113759 568513616 828051238 412858469 65834348 287989657 456316879 314224184 757867725 315310969 477116300 59397186 76900057 880615479 860539850 964402563 414612129 484576543 355020309 241560989 593303769 193439569 319247977 280624534 258336043 439838410 547401105 302879803 934926838 639677045 814809511 19858540 359158359 921354603 380714059 521760803 45347307 981263847 240858998 312206561 423552711 539060430 534667594 531414214 93932052 226760099 128126332 720090188 385202488 279666128 130082240 787322664 137247205 707609610 130412818 756482002 739588755 974201660 706945924 426359268 416691146 477371408 702328242 554817098 795655307 697464434 446672833 940324801 292398078 29709843 949780081 660572843 999502411 769666835 384302556 929000206 97083775 396936139 150472501 122132298 747545846 827070220 390125931 692103225 841030863 656485305 415361455 238657150 110260026 229935939 936925498 569599692 190608845 719741747 323552835 372531594 570295921 338017283 947214089 985560880 388172943 725760675 378672450 590861082 166714526 93208832 357679202 168142020 682408750 921923604 131718076 14794646 614241854 531978612 904348125 483589748 861095866 4576817 845541433 530269061 579023848 514161418 916232127 939942253 566807113 817268912 908765263 37020501 184026198 996242379 604390428 89463502 148234207 237728580 242974393 59936364 167225180 625256033 496809556 310070149 486630648 129185913 159968340 420897534 276090662 226357477 629119279 887143032 713933501 126691520 631124421 971456807 743513042 886383283 3987978 633144068 650700311 190215322 706042848 320676229 322640482 647088985 606264848 28974837 113059780 226783132 62200321 84188340 62477030 63335555 782005959 137766747 687327071 701746624 443300199 935922822 532604514 153830569 198939222 617725370 848991659 346586213 966467977 135482763 125076597 550236918 65116395 86005304 705966140 264693516 556829278 186909313 628061796 995370496 156355504 739637698 796055883 328495335 792439031 668525441 980416922 54015439 622422918 597108454 832674223 135485846 162003727 917269012 139690479 503404849 702568045 938339981 973913937 659408856 314947567 613347047 295981136 948625523 936680223 769371557 463377294 89004673 999489754 768106213 870839429 158780739 693948627 523050842 226881442 189033917 215696541 632049121 49671643 534296328 219997478 822154797 20290897 390174550 179432591 684556089 172516329 360500638 677400271 605256973 965998157 35726183 964573240 498778048 792346845 916614152 902055576 502643089 848468197 895221709 104643774 543446745 455429297 841423821 123985977 731544463 104800060 819416196 939565875 868672806 45430289 702738364 600276113 795005370 434750093 712607328 413248452 156586275 904819592 277072692 792151118 400139330 43582583 237642536 563293664 171163517 443791941 281414502 508023718 809937355 536954445 222402094 45394280 423128850 949313435 780102615 521998972 330696116 464669084 568465340 155590531 852058151 692780422 654535409 981135788 973066114 518627121 383926160 918905196 319609052 868030241 620813637 863742820 992551059 17409001 280936739 71168156 722881897 950263736 925847007 903084859 497609657 28332244 461603469 422670318 696920998 942758728 117573047 824870691 276071601 794577660 261305802 875712908 174375383 879572476 173544888 43854086 422746953 591416130 177754859 236220750 265897958 174515624 227632493 908531022 103048693 698503018 549396092 90293142 323943125 571404017 804191509 193018592 657860126 884278694 667980302 461301714 616899422 953678126 554098377 163420109 37067742 91145812 992610443 459184173 149965077 785609438 712165795 992238284 392153400 803836685 44671240 259716649 478848239 588376772 832111112 757624417 289921647 683355207 367233023 399779714 648082854 69287687 765728406 388433614 634695685 344457701 286927266 346501248 577738200 972237892 631887066 99871650 165528492 56850934 535424601 974087997 899703598 228887393 252546561 222850274 360888528 716123996 706557145 353296678 592033902 526886886 954465159 969340310 236011608 729147841 666361185 936406140 937104982 939709098 956539181 142431368 37830945 312973319 40551678 965010498 485576631 397889738 705878121 761978392 419104562 227209279 23084559 860718859 438884789 11486068 238774566 752448918 214031436 127862238 423685419 743473882 362378127 596059241 695210107 278033682 835147699 560247345 757496953 917778772 577122587 838522134 432614971 330772191 170417786 499440435 144032790 907603645 414834933 367191521 721334080 718155406 848430057 308908741 155272137 329612648 638571149 296183350 144495402 943132722 45484961 215601369 323326793 544200315 131209067 417224501 460611824 624287121 71724920 687215409 11026210 157867625 264586230 233120202 845963031 136877005 28285076 341589829 463523314 302821846 821888604 600498495 197053568 503556724 727344537 447056737 569293407 856673972 670849955 106651139 229873072 448278302 905054177 241210259 807367567 381000999 239297890 299777750 208851928 903012848 513655543 824047743 529298473 296556463 282637418 122743228 293550466 133277138 354418959 537520567 749435712 72747548 54560474 538776692 198202519 127647334 611816509 757663289 807582705 975535404 953133712 362562719 209116258 522033078 574414718 917961872 690504161 394581120 501420447 197408095 21332656 579891874 711332394 33019847 908350432 174985916 162450482 214864532 702656345 246165045 834466227 70517076 235935468 269050452 139841348 247735319 273185551 737745486 620704103 506363863 246514110 556145159 953357549 872399611 264984223 774849447 329619983 429551644 395640548 884202489 560542628 177985836 367003039 403870079 348513366 261873855 698461444 888389460 819198487 789960544 717146422 45630586 210570540 301386203 317593990 467244735 488613633 906239544 592567049 251480989 903761306 666610544 643981861 431813402 46676667 217586175 81559644 225897958 457474734 194416355 484888461 744657217 560638789 306251060 145038346 989114506 218825946 843858744 887426708 247322328 459982389 178444293 598836558 247590760 500808845 991117381 936870509 258270141 120039511 601862179 423012383 336209741 161667707 786528561 827283191 409046672 226685369 997747542 456615262 800313041 421980723 369308217 560406238 458838240 55591670 412318132 574015601 105663362 890483394 973971986 16862176 595344187 928271426 798167385 438209441 675392811 529757605 534986612 313963 801621425 626316853 820138660 943153888 919029686 632757623 846898234 79944777 581814828 69790237 128797386 425726055 76877058 27239290 621894022 18774166 267480964 733546752 655240208 598695013 915266636 436572214 601713701 53650068 71344554 528411731 537896206 213751065 428026569 998505514 349092502 276922865 207160634 740348153 394250988 294639381 915565236 734585308 51627713 410739237 380565543 219252888 275818282 719421235 30903123 559206965 960826360 322225714 506242059 108200259 848747200 613941351 448325744 83347686 900405876 646879469 400145791 351764855 4943571 899478740 428890374 441886656 770869038 405750685 751631207 601031763 483577459 56005096 729430537 387704571 911129285 472370551 281931923 385882179 40964763 101372120 485739791 2837101 483366578 278116518 796068895 75135636 854443092 195236012 426746608 250143104 723192774 883632614 360301134 464170889 647903461 177120727 623968263 942696620 246262712 506278304 930917248 410831120 654258607 572785255 919137119 689144047 640160366 780310279 664573193 898614198 759496418 274301357 521790744 939212054 71109376 902088396 327010614 350098239 935753310 713045963 755227787 455556200 609523191 763683598 918828555 386043029 913931570 275781650 80148008 920605955 135250934 614211407 945921628 574444167 5369389 952054127 578830727 140628250 539197481 888511176 849077565 558702424 256198507 3914848 422914982 950401973 979869105 435247708 340901744 566239042 810483363 331843478 439156104 672974554 198025441 595719752 971243716 819288936 164018420 320863860 763843916 68084335 629085367 363435221 484607256 157645675 724035940 502277350 949140507 389165346 885896497 8458881 84908572 864941854 648041682 611864044 12809735 254497933 690587281 600458446 830513387 97677484 96995860 930617623 216944081 514092420 458728061 157682937 358867389 176363502 294554375 20944745 647053762 915223599 223015975 766692646 487104677 827555385 931735494 596717039 830949156 344417803 755635837 417703971 544302405 581757404 505457845 652880028 330957439 668559427 270691893 458076789 474786437 22428879 102544421 305569597 869621999 162966809 779901750 946725059 226799838 311430873 554646942 265775793 312375032 425555013 9029202 406370527 664191551 921417291 122863895 265725965 878573916 651374521 175299948 170552020 558418474 667309293 374491778 204034687 767400723 886036063 340907051 315674200 577175385 745443161 523669308 74344864 254149666 835627860 267716710 189948402 529569084 470181961 487495124 93963162 283458401 424592666 462299021 278575907 906387819 866073546 588076917 514376115 305931648 381632539 5394155 736452529 731202804 458154857 731904754 681572849 722151743 452311715 939538636 145003669 467463909 923469724 305793384 169349136 102436286 380692035 26411056 60318993 543153517 434230556 383357880 14534196 258374671 426597940 316747409 502305470 429119566 114291795 181673466 470215613 126389553 284744680 520390318 883103453 465388246 462542818 126895669 441968830 947680249 693768104 594587497 764048387 456790714 927037962 618084202 786837361 933912653 909397106 642165672 74167106 464042272 254237670 475851241 400143988 864381474 458870310 656421323 776572340 991781500 780258947 203338490 351484454 336282714 215309890 703078167 664705030 730315288 831179779 999598953 28172118 823240430 589034534 569474411 159307899 839596586 205965790 134722434 221905202 494599234 132965086 32919097 778007443 920684940 32432873 325520659 514945085 406501601 644278498 540082401 8966335 784784314 69262711 544042734 314478189 742156042 624743550 587174381 672916290 370271331 169950153 777942903 520601032 49349744 773981105 819265684 879433568 103708805 965240619 888459569 604477749 95050889 2762447 788249696 543966156 916097538 269550875 512719029 797027221 242078270 824730627 508290998 328555766 431487916 934568364 2137594 545708683 482454723 824462232 517383345 8099483 645879230 989616842 615624608 577452185 854978766 401370131 980025929 613232442 631249601 423088846 367299452 606197003 422162660 802241605 589801663 578806171 59479668 704551187 985799571 605178442 916154185 437489445 175801322 814468167 51141451 180142572 106991460 495244682 835573134 741530667 512114827 286313141 120108820 910169731 493547559 502190791 202399913 735691186 747855919 164571227 798486130 347155312 861941522 967938001 608225423 583758789 554300310 397508973 712254422 142688464 415977805 388408651 713202758 531902889 455804257 319249189 783343631 290008690 845300866 974447462 27632874 891994560 515930811 389946190 265704313 186031940 282082296 667334798 944216778 753351601 670867642 556066078 856995361 996950114 225080695 282756559 219338561 231234885 503179105 752945053 701230076 414886989 389587221 834881838 539585363 635445907 781057790 999455766 538798682 897545757 639209752 364190052 711948787 714561729 713125153 981540448 796048722 159477186 623361468 170157177 856627010 69940468 323480060 569364422 960332328 640233062 950051244 919386573 776817154 146011303 425485377 5849617 854976757 36165143 229147471 177612251 859160135 507158726 289229095 623896026 420853149 420105922 535136403 99633767 397930618 755304912 993491779 19765420 272987557 785913965 492250220 719263570 621535328 713515931 606714013 375459912 383897585 385319211 122999106 531671978 144842957 556586206 779245984 59773510 516502022 783296120 978853102 645504026 250374004 77814750 60144387 969394523 246465483 936222780 840437047 482523618 662410176 729270133 141724962 810371708 986299827 511193095 774802487 716088330 637916124 813580866 958495209 999587659 881305731 26636740 285999803 439343605 139340805 671923578 102413441 172415134 995313778 132263075 909651885 880747523 153264949 580079115 140134060 147600558 199128643 469782286 865664726 973515863 511880207 477027966 13576900 431447205 962079218 695399559 706303723 84985502 572275999 803140161 740435704 87060986 51208653 417346698 567309051 464137065 702865783 814451670 273988865 106495372 30210412 615069416 464854057 438741381 895547599 841549511 120957939 554396174 532480139 710494286 104912237 286408331 909068063 583134565 662913867 245151023 910259021 794848005 557569074 613194170 291098197 873090899 451088785 12245857 814617384 198820311 260722074 254240557 27002975 93520206 696033708 958246889 514420020 494622438 173653084 879643585 301113352 210544083 876111333 478277485 832537952 484737816 517674595 657852257 225753275 967315234 692571115 130399362 833583189 854876187 174662981 228692620 317881465 986072441 258351760 271830726 279097113 955371142 813119407 902279241 830740231 768904602 145855063 143699210 963654583 628463267 505957812 365442379 625605153 315117604 446047592 790130679 649524308 77929007 22177918 662449861 432127979 821390786 814391725 851630578 775482661 390812831 45439119 438302507 738363686 91053195 827414080 527078632 221246413 357572974 711644146 773758602 35620184 360913857 794009730 992196218 61005879 808469737 163299225 441876541 431943253 449284498 995845588 750543339 384629589 992644714 668372199 380614392 277441032 421266912 380814283 649261934 240414646 671036781 171737532 203125915 924162906 354633900 674669832 715647161 639742888 460141242 461472144 685731401 321644942 965231680 849231895 671363773 45548653 407117974 285845239 937851244 131280061 359179065 973508485 625714187 225312802 574829711 210351012 546812445 385023219 503137975 938790943 841646743 315250464 323516274 255726821 438169244 582493327 902557325 990635420 151374010 164128248 703730085 732314517 607718057 298687865 965469948 463275689 655355054 597631585 961734527 406083601 23927067 335567606 364756374 205188009 593137234 154532176 399395508 632820393 50128695 274267871 999840802 248378072 186052351 680641941 457545950 764787936 822886371 869605054 781152550 436371964 57665757 663265383 253912964 104578258 568785002 262157170 654390368 261604380 161778415 422777092 511027638 953924660 468909103 708737073 64609995 945062521 870426757 433588810 494346469 301222387 3491367 124747941 227055961 671222022 698034069 167878601 125626065 327253234 78414346 814308594 714582975 570055963 528899187 453895609 98315346 32220674 889297350 896804544 290849777 422899100 200417886 5057406 686826202 17375635 814858762 260934021 767925965 325893477 917025789 691153742 180977255 841333209 58261044 500113244 460294952 527494420 448828246 315343425 429762528 495010213 614784720 407378823 251152724 521343993 432935083 805245909 769427467 694027508 273085192 502817838 874784430 721183772 361594312 354040593 661053819 563869160 704753956 337985875 638176913 757980796 379578405 789352925 185243763 122395545 884795989 875983438 306193734 961534362 217138996 752101446 640710855 279998350 301162505 363688158 100831335 801744065 984876185 901812244 992965253 82415490 386955996 89076862 79347268 391593865 929541539 7360659 838351145 687321040 487064309 936810841 379120813 196373817 293676647 386106734 478612536 600531199 76901578 613379959 771168123 48218294 887877624 659968594 211221649 847112950 64067336 983148009 365555602 655226095 487834663 716036285 684999417 794574405 86916625 367414099 842593345 634025309 976861612 183623347 890486385 119428840 11509905 77717396 464821167 866314256 834513046 960372908 362483013 141894585 236360373 93759427 78225600 522042409 337984108 891198592 188258340 229174502 648191842 571618995 635025434 483579084 999575090 177992843 527058218 573834040 820048014 434665490 391703209 968274635 340405928 882104070 741374562 251193317 711116480 594169269 284982355 283743240 572142676 50737339 736368825 104935990 353728800 454095363 453608698 358442993 493770579 756534059 971406276 43463176 604652107 720106834 135693322 26430194 897382635 209802876 84599600 81020282 761145812 950662195 51243326 650977886 65647757 631003130 941598609 167898461 865593082 87065518 975193717 596218055 804344901 760718751 355206701 352307398 955972872 231421758 26276103 249191061 526148058 844998272 767867101 602535134 378771563 305481968 967640018 310510367 577451149 881455106 848885012 23260399 802082676 139950427 942840355 85691634 162188765 44510452 23218192 556170255 559050258 956933625 749053156 221472366 863916209 685017398 543299598 221778131 909033961 71313205 659397985 744868661 846538536 754965699 882771330 136706016 105623627 219482419 510407395 305927437 386153170 817179135 753649941 404362808 70032827 971998816 56471339 321370763 164045745 334776653 439418691 135455776 254505730 834997390 149984010 505032030 64233672 312393284 903347933 219878742 336829086 926024899 263052062 76926237 438040498 848866653 814697124 693530787 841669180 602804194 456001671 306111319 939379115 911609987 788034628 822656195 282502779 253985781 60788381 660816366 327876948 918905750 600993514 987885028 775932545 642330444 400999950 279812053 302869145 702962673 89231497 942103330 809253432 664505982 578566131 596038686 55254550 524053946 523708227 963924188 921905578 51729709 802895672 99159229 206526854 311638582 528819799 19794536 606823356 961001356 663730292 121612247 756240832 998505103 402074461 383941282 421917897 413594668 802711128 280394309 26346391 368409562 492596363 471484691 192056608 717497465 248096202 893793028 794395290 324650838 56980952 447171436 208809398 412390787 575814821 402253505 216175640 348187489 7291712 496789323 557224439 23957346 655371206 326846270 67565240 504234234 215245329 732856959 928701172 503290708 622479639 166028124 978007238 517814711 297189796 622786695 577389391 503790611 97296611 792793792 711018204 737940860 483599414 797032495 771357911 82523627 488597779 367907358 322757508 874398796 660485777 967596272 679511268 621815078 468678948 471390000 34178761 298139552 711341470 459117877 232177101 178568272 294536169 396293873 187808988 816931759 251960793 438116661 892135602 83100898 214252725 95663110 462513160 14069609 404634734 54016984 365801209 200622144 336631859 787157849 765252580 580281585 340764374 977607569 794339246 696644432 894636085 995524255 911062134 726208821 908761729 600927560 879494241 926566946 151424325 535056254 597352208 510826882 666618143 868095711 314898178 564509527 562079669 474929177 226798014 208308598 414267515 27601139 593130754 937218273 982177953 880635358 593892927 802896749 220597967 223110033 844373473 930600047 934470835 627911825 277280987 767080829 339320804 618020045 549483132 920431760 18042206 27541596 19691952 139952788 324906876 837016680 347272353 495312702 804060197 428315865 642575198 623257608 848405997 876928600 546963739 251718676 243383969 151759239 80412039 475006269 792873445 947155041 136565908 696579537 534504050 556157929 328865297 735210298 454748120 590711690 917070968 701851890 239439650 734076418 819964828 325547606 36730416 528150701 77052567 18895233 373354522 811153403 942719203 835424518 931263617 113720843 992349587 75212425 243418058 556514257 706743743 460254764 798360256 863278858 94126501 599555322 860817871 367138394 644345955 528654623 181315949 769892245 928045617 531702336 654148915 78235892 187397073 211502266 989493102 684864056 836426742 761202223 446786459 190698291 823299606 886746188 148232170 353212575 586342919 398296096 555906996 807688117 420994214 257998282 337019847 914020973 345122920 9245723 714319623 928057174 440814891 438426252 634574157 915501938 783986981 831963624 598664925 608298291 736505904 643409125 798988280 688485853 804990469 223318620 84377385 124870384 707810458 532450119 552209369 914341787 695709602 990360026 222484689 311924698 640992954 32462373 755750935 901478021 846012536 929614552 383733587 556973852 762965867 958658505 230072408 532309952 156116778 634168856 464029577 287141678 490800241 892489840 939686384 413647913 806113067 290055216 175937721 362090739 230794746 753725866 813290806 268047864 344319553 105989625 715667311 799161730 760579654 323720770 368219843 653201282 663351217 940977237 383320539 943236105 119638695 709542887 674588978 677391789 81379658 261611941 440446332 187595759 596101310 618673575 197526115 488402032 221995593 260138125 551844158 724621394 253582247 21942492 220517774 730969501 473341585 970882223 982316735 317070251 259356667 137207048 757952969 294748284 347545636 890673671 661700848 682233955 516155240 185315506 354767616 558933723 265267369 8067593 390799114 196532208 208880912 503125525 182122545 207575254 386228468 212474879 356915705 601651663 774225468 222994104 545406209 655638446 390821697 986353896 986660819 584229526 541234278 85817711 501964807 48199859 969554486 686050801 453360060 178880328 830401626 509230932 546421428 662087644 274027146 211435989 929563877 476899344 293829509 674446108 835057940 466715372 403643240 519927274 355293761 810267689 783831614 52920574 453621471 494715776 462543359 224578531 897946613 784038364 405559744 660134609 509262612 591709707 315333310 547128401 527749610 986900968 319247343 328244286 512441515 507639998 846001620 575615942 486724449 87655337 957744359 502751264 506082324 477734634 766854861 798295929 207970883 441944263 50042385 489154112 250931860 689823259 584731941 720949145 418497711 383115029 903717881 280158938 367871047 434975501 678489315 460212295 869529805 71877490 613408254 609877137 426178551 540849321 729590027 611015836 266106154 734385975 858990301 537595844 641642889 747383154 79687810 657869043 316004230 33314920 835390142 21802277 142499476 938491634 527080242 28833236 791720761 678030857 968934055 285949737 593515805 975242877 71827902 381566175 443879849 68175427 204736826 342434682 827886621 583460027 237805802 626908355 471079423 848260370 988516573 792223759 943976423 511864789 133554315 463395996 930905912 161172418 662440223 125023728 189216789 63233581 517252052 732770669 749687905 189883155 475354664 694453699 95295899 996840917 312576866 786987112 964357177 962606342 657684266 296146390 785664760 42342101 509357222 383207370 895035814 260961356 166948302 479910650 83839172 821720159 537461699 207479580 265736583 345665865 665742240 784419450 517745041 694069702 280825193 37787995 218039091 490542152 155168569 455852633 225481610 141976017 33613438 301554863 662175349 308750767 29372515 847776961 33863759 625875951 44740850 976386228 159947444 494477329 937451739 92040683 918041143 71348820 515855072 242485667 137344861 143565066 354230941 299434234 301604447 147584617 332011846 21504959 304227853 618945671 995369855 843512087 140847383 515502536 82371080 721594690 47387678 265909021 320502192 937405824 23929263 487088627 742952283 147236554 55352127 382776460 436077303 639548056 777861484 75353592 411660138 133778716 460065307 847895477 572631604 249282401 951819783 954936890 925901627 990948806 36328010 800216436 879338039 604792853 275235189 244674342 670304272 798669039 618674610 586589550 194942147 549345264 64358149 281338498 759325549 209019150 390416279 326067114 977324715 431173141 530029466 120295696 231290475 740855630 864820805 958411050 486892893 299334262 447255267 4738473 529385027 189820136 313786964 419137543 758894900 181589842 105907589 960222132 160579251 86237097 775020876 777008311 671412786 97623666 545919896 172330162 471834665 805780940 930321039 179794565 275784119 166486939 588484779 331351764 235862178 491886514 530060608 563148881 34289801 172340957 937617287 189942866 522317009 17385773 60354745 583002360 188684035 221610090 486959892 275365215 58411188 689958405 28907829 497999813 636715944 646543220 32935717 548748018 152253514 828929885 696582812 524498811 254461752 87105918 302983145 21175334 80068908 978435645 424318188 445818826 597632093 248489333 111129140 104213223 371447377 700871054 54069941 274158312 212676532 340162900 140318509 32386183 704434780 22767692 901263544 725370507 345125418 103099938 557518187 792639544 204337735 490482749 58758873 86461293 570982319 248699746 871422101 551033560 580147890 801620621 369390832 336668857 435371023 474555007 835019916 568841906 661586016 382728024 734069206 870222030 164231131 759835286 864908832 955060612 315358579 159189406 565003859 340725184 778355824 330193787 219341290 795091582 707574244 498006943 474221195 762000551 375790694 691057110 241617829 58306272 762985493 923278204 677182284 811419052 545300089 698343051 331398797 407835883 794122633 985648481 574697534 115945456 419236030 358979645 750007318 137459488 543006236 2693900 660728258 930791168 160218277 189401316 357243331 984167031 421005232 614049846 32165758 404426259 996627280 527273238 288037821 819422266 584451936 107663407 337554883 31531576 901196242 735694853 831694903 629333045 989412560 124617672 735074131 746148840 720893729 847435738 462725494 388982786 823817004 971926012 559123698 566273075 77441855 863328998 266001415 933120136 553068504 144795642 461438704 151093452 846184480 79713853 330347594 900471087 922845419 745310729 422949458 34890379 689315391 873829610 710720941 559402600 413069822 655457002 969349448 168523156 570115794 22250849 787037118 455175277 794800786 277267902 548018539 396698942 423591331 542076078 592628035 418535725 941201465 983147394 208310611 704496229 626468655 872133475 537705754 860043102 27355336 899293362 97170568 473085782 402157616 699947509 42635487 110851948 447307790 998497767 435114656 97616319 913498563 618364358 204626394 639308074 779106705 529521720 421839526 137472224 307268539 753011446 75859623 997709614 367935733 349638040 696357815 137492946 875897846 385925675 864914066 481983386 164037611 690762453 594985934 357336903 671541701 619847964 878731841 763824383 424008001 310069112 761236196 793629911 797725785 593208007 181056810 85268775 3109590 368435320 187964345 187099507 783652679 978738581 679314407 574075477 339435526 75810770 683530111 533394903 871658212 666852799 528409182 377113240 116666504 312163641 177226601 100847453 707103533 639805810 727364296 410912362 931189896 863679092 113281896 455376125 781278324 576825701 27787557 761815365 196993870 48040120 766751928 173990725 864009062 91440023 911996828 863429418 954776041 854625196 903814473 911389600 848402537 176920159 789918116 793784145 884500792 117437348 308093989 657767769 161283422 607559630 623028190 635379719 454144233 645260855 754560298 853198953 799521871 672284580 213851698 68553042 141117454 485972725 906849636 309065747 486524931 34067022 840902103 866379030 980342867 970559728 153309380 44548014 508772104 101862634 963587786 541437178 22092930 551171551 465031639 508282415 847893014 608735841 323720361 50805928 725537327 809545603 156319421 394686558 116018133 335311967 226196518 226707734 841076660 904070834 422482920 596510334 409373234 940979030 303169248 520817806 862876440 908741459 513103635 560300781 450661394 605979153 214639591 437755863 900709804 820812560 747255129 34993841 482775917 987922267 523835721 21206172 219717699 686013296 848257567 894368509 995556133 377858550 451633789 221729174 899567223 905577246 240261964 604263515 425292397 93584298 524426777 825080243 907358127 847384971 991038515 294626619 992121320 50391066 907684824 153835061 540530699 585364932 210754096 548955030 808525112 831880319 642068784 83376505 396494176 370582519 832741494 609603671 869075616 31936340 357673454 36728347 909360115 882783761 339058277 87040825 576290087 177388014 62025559 396502775 395827776 686253643 907808556 352723662 502164609 800326194 382457033 527449184 507966086 825260142 118869887 590054705 262210806 485003365 614016188 814510741 661004404 857883446 507029232 356349193 772094120 312557186 818991459 413840612 139500458 130065636 265388600 632918343 96178918 655267290 118487746 33406443 402161078 351395729 696842744 63649115 42398216 679011757 976577278 998516844 520664965 743148098 882827048 109087337 228596580 220887913 463581898 81025098 933246466 216115045 914613182 629045805 882187246 785163005 554622563 734977039 740164946 430071618 935488759 734713471 787192740 395799579 458028315 107890968 571015635 509331068 295698619 395182168 625770471 462035378 158885208 595197087 255821218 598085040 876320085 233948215 614750466 36861431 486169891 264614751 195494156 94926909 113060555 187788615 349989395 638849560 17393940 807688239 819716389 10349984 483302836 952362954 794198143 620293542 530099736 627971557 867059791 857096510 37955967 435996192 206153200 585757082 348584163 465075296 964800390 925310610 621255015 845910684 327185313 174532079 31417078 286148711 263081522 736259208 20394774 46144587 669716866 539180034 891004932 55980752 388006532 287693911 737556958 718776550 414936434 570355416 854194193 185521633 921626845 440473942 910075100 329598848 269759323 888994318 16007515 119944446 55827340 523014606 472092457 652719914 633711892 349387019 971149105 932803961 695453349 655212487 923097696 64238616 41401640 580721587 209189929 416363510 258504214 801255194 308561021 13367671 614163913 918138678 932092555 293688753 406833750 979333136 157341989 262333766 279660116 155657970 308665807 708740625 205752582 224968161 899389090 26540677 516017259 25501874 244533844 592499096 505484913 471361179 911614255 814951729 84999885 821364220 486463512 815006874 717041432 458683044 799706915 785309756 978185457 46555839 443756458 120572860 72646425 973576902 21656674 569241430 214567066 950792710 623718356 757995398 958271333 702133529 156346083 831935348 964544106 495471303 466742843 894170069 787629405 542589141 586332240 95834093 341628823 995686202 715364986 896804042 954529299 892399966 729488164 96856805 103917898 446933358 665047187 43762497 158188313 525253283 325365143 786374836 612096677 907882179 876943455 567749082 630642693 105796573 734017227 917264869 855151135 980715268 44807926 67671706 979655927 320682326 557349731 73622817 826517776 923585332 874862313 619621539 790506878 304791469 722926427 274624875 834690256 29627639 55043090 181160544 266950151 699171564 529661605 278718112 225488029 762044048 268613559 18446636 351948015 436116085 907470341 851449158 466841721 62225243 584035196 371978510 655739205 117974 173392487 707048514 738440085 526878929 986772028 70479738 770769528 300445536 42663394 572102803 477832791 171886660 871983218 205392305 941723409 321347541 745667621 725319916 265025549 791615919 758461536 752139320 844125566 956920218 42452068 923311413 225103057 741783756 868633683 637689432 352083889 843162264 517472594 676003726 522036419 805673752 468031699 530058117 905845237 611037142 769565504 966426470 209811290 775619682 193983855 758923073 268969200 542007523 613388434 723064326 594106414 908543210 61446353 315275986 57066300 816167946 633781923 920245414 376342311 456739292 660554460 69521189 628595587 355653265 602194753 551859471 687508730 205248111 796118375 195432984 664558420 876484318 892805915 971159014 514824480 44519223 469531944 512010474 968385850 836072805 497760220 786277693 440857126 461300595 466962542 303139353 854369762 159959333 949768589 789410190 565948582 811166142 775863316 48409956 148023578 313175568 610235442 296508046 343785495 294717379 297987739 753626016 85314461 667027233 582959637 33294709 992729333 456187339 953481114 658591210 317073318 268999779 651858634 133755421 936664850 337963058 146888842 997726074 996105149 49482460 471896788 61882041 602597817 799744162 560602912 403381265 263903362 837787586 690306041 381908726 971829937 448616649 91874318 14129247 533579825 927794726 630134401 689704374 12694909 444407843 646976935 700019939 203992739 677023539 982337320 954809449 715887819 109050214 628590191 837805910 536666567 35095263 567746745 522203107 128763233 155301935 524109098 854964819 149694779 632978413 421358679 665644050 310543928 758457773 852947700 216826727 279239986 371588409 842847926 246638793 793228904 384218905 86724212 828299902 252405159 243787771 100421454 46551423 744974159 215787114 344191700 49946512 253335559 579385814 879777384 981022631 398300226 899542891 203620330 916505461 479859644 18088156 563416783 652091438 450252263 943894834 514871029 511466215 714882392 433790307 200160786 813367023 777851475 420117892 43837783 751304220 50718819 332567055 473707258 209616836 294905395 703027591 960888624 892869012 640956227 900343428 814270366 15175996 631005753 71763632 408705638 910973098 511815056 934432790 453610641 295316072 829314130 27248430 877121237 514033200 52682066 271563143 492923854 583037709 677736807 12057816 650839491 610589761 233131396 169207644 80224988 197955890 742864317 686104606 962271386 337795679 682063968 686254021 445382659 650654822 88292947 542614825 585984759 595604968 24906767 462345926 476378195 692448713 397587681 678794386 298126415 377543619 842234793 306151200 89277385 582630628 387983054 777049108 159745085 330445755 770950437 35284733 726759985 449646383 470808464 225326508 779987704 544835828 788365032 897030198 232581081 527082197 519318415 147422853 776192465 967022791 54798857 960342231 998783727 372838504 640016738 880782588 341000726 603370060 267561199 590817579 472497961 331856043 756461267 242608967 638997650 594238485 415767763 181380158 884105760 597799341 882045077 673708844 622119565 82982997 765718923 232338144 496071072 298251366 655725547 888135548 118114289 297302165 783050835 320622517 452402934 986153784 86733660 936617331 387331185 931470585 619688842 486505233 241081415 907406921 954410626 167878416 422375596 751748296 830405729 580832409 980804467 287898304 795858484 904352705 497802371 896359241 338038242 685473210 798049523 918746892 789105446 703188921 966559531 386322094 8598200 668699213 331647230 749629207 976429258 522646341 736507161 443722791 913820560 784644856 658711278 812388232 563076118 6641563 307848504 798210635 700911600 773638298 189918850 209975338 570558484 920275052 354403687 941161369 779038255 280958154 404677728 541760534 53994604 235679990 14820303 183533591 816320164 647671997 982987970 202701465 838930439 414530689 947600389 414053091 94760756 69462349 689542230 950066742 544387111 205430426 965011800 384494730 93116842 585888830 669040235 221627100 950364332 110783973 404591097 68450038 772146783 625836592 265679325 979808305 7879034 589275024 725738617 506430934 978928904 48051356 447919985 394160862 115122985 847952997 369242652 927994984 103819626 134318524 976365403 640551708 972559379 423285349 750206273 980851409 310907574 79747181 61227567 723482393 276547246 564962926 944649654 728808599 886462703 760750738 471302052 924215994 195191685 697109781 432429465 662031699 80446431 490864527 415125868 987176390 959669032 367781079 287277582 258366797 263409370 916746144 293256506 397434714 745534904 58332791 295266899 665835072 235699722 684435132 368437565 224673200 504360833 851242370 821591690 311095461 325507280 751834375 152032659 421575471 996662790 454434207 869739448 877617036 462287990 861476507 242653607 320795917 806085538 692001434 631827949 235771481 444215226 771311177 414937102 436850024 63082483 933048588 400503616 430353573 140463174 471338734 195172720 232469701 751387664 15078042 515733465 707721437 857596710 970593512 76370703 361377452 232074762 468178348 175356088 755765423 163776775 549837860 964773862 357180947 840718088 424278050 709361372 196358528 95308287 942826480 388128934 334494860 132858495 481186158 553639925 394222400 166189457 313420966 33884224 353860105 73065442 425204066 547619017 888550985 136948755 825838335 207901146 129971843 439213086 740389184 238211032 654202374 35674707 245240197 101756221 763408375 346423275 165869786 62878665 464015992 497206517 991499989 527373878 99420170 503797303 836235474 129190274 708508578 383437562 544498039 435313030 332223939 804189512 540600063 947852519 887938647 522841757 102421070 112332129 137815543 506807808 191280663 494123225 550719600 616871810 781360068 572872585 760581714 577093904 663011435 615063102 365882219 455341367 416202672 545697910 52777379 196888454 244231937 633652989 915578675 110220159 66942908 859981757 310504835 281883069 211400958 531481085 986074968 537187075 320677260 291604151 661592415 120841526 363509713 903774576 237891332 969524039 588837645 126799009 969973167 341848363 134123944 874750633 503246296 77836217 320957534 595738343 967337941 126341898 713620043 551958094 692969728 427980058 59730120 565868221 622619226 157847856 331134554 259659677 666553849 934030940 656523332 373486943 42583039 104370783 982916145 816232839 116297950 508075364 962275547 457369696 672670128 398352349 73910758 910926690 515278545 346177745 938119350 854485138 110965213 830831798 497455047 164992989 785914654 426491583 7141412 564036944 829632677 98413381 674241144 483581314 359746535 437236791 977404925 83736055 219955084 993793296 913516727 436821018 33554861 598368210 627587016 814958747 706366521 250056502 606893612 685192336 605326435 860621405 712349239 436582311 454977081 925215093 902890404 205395680 60358294 901975630 294044003 424822102 898255239 288680423 529216236 652718285 585045043 517758946 383667570 121453080 508240954 752100506 12127181 561242984 92120103 231810554 174896968 580054426 950518596 925008771 160780960 950308922 799876971 171641802 449741482 522956471 895321552 751514324 86469861 837255602 737113384 38232245 96625760 625946330 963503247 544475872 181479966 110103625 956074449 652096423 146505597 798053871 409312812 939919251 157461380 357418617 148143878 481437588 299347654 509773116 474352530 315749258 998144296 392328726 106011691 196555457 395021653 811868511 758452406 842749469 246057936 13353833 376992370 496204461 445472491 527628141 18247063 514171743 628485621 816363913 353432317 73518971 469334039 918318471 945232612 619975937 103957921 525180257 881688473 646728075 990461572 612841658 829089140 767691996 371500356 434970086 621665031 621112196 151717435 629047118 224569556 603923370 476902206 102235503 447222791 864894007 122166162 385416486 444734756 183858171 354570732 56919915 666918181 320550809 609692848 289841676 135311354 396545210 970337450 915907090 194652038 46413281 944061961 924249809 334904776 465142561 448358936 177899939 888942386 716251680 537149477 259003251 244727918 450401186 973089974 9394805 500083222 366397275 772674962 326759985 343108371 757408458 193639212 488378816 772182798 366836848 82041132 734628999 8501991 687976756 824665661 329353331 407719141 581589389 937379250 159850394 869979455 912303167 207847907 356551714 32990920 859899492 539275746 751713138 570346996 733706510 594771152 196406238 877551872 348935827 282617892 468122110 764920360 999571721 619516196 54826701 273274050 115712849 350082411 625699752 804005549 389380941 918742125 501688404 28186406 861103802 984946422 561977826 904237773 620723971 771099380 964142168 536699317 164065481 205133043 61463759 156456030 912667104 293878222 688107395 747050391 99632500 508859648 138198858 934432901 472103568 905511186 742706810 363858667 420345628 464225656 997095545 332381552 243081248 10744891 751865936 438412895 559615338 661660068 46480914 386138645 386177932 48255256 262375937 237606653 974769863 367582411 576561322 460171893 738804303 397326981 657745826 161173185 58792165 732913273 84651689 975428847 519130157 859875734 222040836 713852683 958777644 584954184 726696042 218090249 91023455 951215523 274494064 889509214 232400632 563970848 426756355 81343018 587701516 804113421 945187670 439856081 664741965 745694668 7633010 677989631 428354505 590382534 12066977 186414208 311313254 364635151 763736229 272610922 437796077 240123771 819774077 266365074 315075432 181124331 641068350 575739977 975745408 647294369 753187574 513513449 481966585 815373168 569431933 207590687 996672901 373010880 721195724 261960269 212740285 534037765 979074338 566555626 469694289 466983720 494556581 145222530 648294651 311832453 500269544 253554884 506314110 709415102 172490880 894406173 764527712 836741749 278282643 222987169 460971009 83784947 653166352 948536142 83847588 443736694 908198077 218136826 205663735 654762767 93569178 503974769 200413383 784009706 393734553 553865771 515483467 295692905 426987895 181681337 197890283 783489288 111385871 68228656 252902444 846747245 654443062 131849644 176177259 131113195 940709305 980306909 968880493 76029224 79421469 154486715 403185631 236758179 204146874 237552197 939990241 73447496 347938933 908067974 157797597 388052414 752227657 94008815 128965302 61174598 558331216 683411480 373692046 627201053 919750699 165302316 157445403 581051659 505571304 590349893 831253981 283098337 772512211 226214061 375081669 368273302 65526635 600865398 546578301 100290127 603949470 247739856 278432762 772790836 109824351 84190251 944746354 511706592 711010209 343777202 321501838 853864266 534084048 88355293 381096955 366937090 448044483 916069340 590724329 450650061 726464760 774141016 88916334 13316327 196429986 204056504 771274786 185337718 281332920 760390884 143483060 437646148 848981259 81670690 999863753 883241039 873599373 849259136 650921088 42542013 6097242 615284341 542328755 32843215 892671171 180574494 357327356 915177761 943054721 832854050 444564938 125849220 716670716 185180579 832519479 723828448 401599277 780787751 947633056 169218342 196778986 886294003 871106610 73823058 550756256 919309172 284805659 362787958 710152377 757703414 909771424 20237548 504772850 175731116 423791999 269007575 118639637 584228033 704630856 218530054 941495870 876777457 519631124 856452578 723856678 287016261 490051417 842433068 405045360 887646093 331085115 306652093 245353763 898777537 667069144 331858668 468632214 35505128 261438930 535768677 821641261 631531615 849360190 392782967 199817895 15509652 889626067 137580927 900039727 4367048 884612532 172992747 401130020 403720451 591571083 424994643 604375259 923274295 422435550 306128454 404777426 970584532 927988667 21347901 177130660 197528276 781476358 412453310 208855981 573571692 681363052 453909881 230191737 486647098 358490113 446670659 154874744 739659428 202351162 500404545 279237821 866182059 585717268 988987974 506531584 46726067 602163237 268600958 111984246 625725660 181479059 874785001 290861925 33873895 635144039 41444792 461581311 992362006 524502815 918977297 469685775 531247147 191450622 602915589 173601970 245215769 51821237 157612939 384290721 861605043 485770820 836410196 572847656 578460397 822995393 878346864 402088616 316934273 120137089 55138496 468418632 528088414 109372888 806974826 372339167 922791396 47520914 220484002 940010029 805191781 666735064 950304439 365586264 98886201 460151831 840029766 543409433 533259315 175906814 827797556 52724373 346475653 701725848 547102539 53601816 167678262 118266275 981931611 594747171 821367802 282350198 668742096 388653815 657194791 950938402 181198040 859125362 196592815 148665205 255766369 805761609 111053579 21521651 406325585 750984578 114357671 501635460 478954744 202259183 320246051 549155674 581695398 952600200 491294984 607331156 353908067 147838361 542543890 11547019 506866675 975641679 108493247 704193399 960255133 763637429 189330619 264459033 577214486 441904976 137606187 977064396 37939611 926278302 461573879 690321325 136480954 129530618 481368969 523928035 978789010 35514976 354807209 284694665 169868303 166019622 143925884 730767924 1349423 995186145 328157429 60482879 349789895 486572674 146573957 714442428 503507055 466918109 539851653 499103109 429022911 806938364 323100650 549719407 807349767 333147493 455068934 862416927 368584107 75966454 833563136 317068275 295185154 742348424 558009019 105102908 449883038 330632504 252612849 878853221 162662725 535102844 44194007 129568716 282052797 242183338 630659045 483850858 643115437 547615763 681490810 319535212 992817284 799337997 224741782 233059549 218748103 417801478 612269244 929630434 481291276 942183291 153972252 603005131 365510885 302995250 62423012 551748836 989527009 634881082 754273569 880400799 89556855 114022654 232906528 471329824 395621269 997091775 651870647 960794521 237255026 953730463 804065028 929790181 127774100 236418752 805402353 43880197 216771844 454400097 689163928 159118151 222321101 667125136 179642939 345604968 71908167 793398421 665116631 965290179 134611746 666887742 955821479 33952997 151595599 81694424 134219609 239431373 517265741 259950082 458911372 288138857 616535467 436603321 531089350 123901620 669566439 366281272 440009480 511134345 26607922 154396239 85720395 746716271 259300995 808047269 765064812 80695618 476462199 572466773 80890869 277753404 365417885 6284226 243481258 854381804 481388317 974615238 193320184 718764466 891239275 729901151 67817817 963899127 484252494 354387534 978059527 302889162 145637490 609817509 432626882 69779267 529300811 327893707 586425392 237615059 936235875 621469457 903776556 431995517 378053676 676561141 813019441 444141919 313787710 974945471 79346909 643213148 611851006 622614536 65823378 638926325 350650655 558722373 304653859 528752724 718147432 597043106 785980386 389883913 102566263 402356759 830289958 394043498 611380866 6143798 575953070 889863293 54808859 696034232 899914407 929256082 892837551 170402860 794882443 103217114 921279513 754473899 677203531 801196736 869368934 245774769 587289041 160395603 769778549 365587241 228702366 583840083 740568538 168861495 143228646 556351837 659802891 281992468 505732969 954600125 129296511 308893095 867640404 653974809 387351936 361885416 997150447 829391611 978044116 412477563 479605473 611564471 354692650 103341841 388652643 566539236 302626331 631876601 628047415 642808725 679095758 899464068 933273981 399703513 716062279 537313890 468070021 565003902 150602813 700213415 387322764 168431260 398108563 450161208 289703552 469244674 449294220 760798293 366192406 862218894 552892987 256090940 865214741 904404594 506714187 761223207 711685770 865468032 784521407 182454350 708515996 92094432 55722839 360626975 776123561 381384529 982449851 222269588 804353837 963781152 183737714 262268606 68092064 908985281 250834030 892568030 295691109 341180884 853268959 598447369 865228826 690363125 340903149 371439559 180300036 157776922 716145353 758026745 507147574 546032131 252902282 613684888 324566821 807350095 717249448 159429675 825622230 875982489 728842307 690137214 698868120 352550266 256267781 280462482 973604899 684413516 387816039 605222266 626791667 733555922 368571578 276930299 986966919 105674563 155007133 347907993 1581746 339645897 394255615 688424698 605064873 548825239 572848794 798927350 198145724 645427908 62010370 486925408 466384442 383694408 808162777 726740994 72962454 899875732 453777543 253676670 114709191 575728933 808624819 935026975 269832454 494346235 61465356 526092383 97168063 652265659 389318515 88739320 63392625 340973180 772811572 121783708 444436956 68615946 400088348 860952039 94584308 895223565 541904205 14312837 351903325 101096270 222021401 629586981 634141952 156771618 493544457 772830189 287019864 957424814 851418868 29833996 455762790 447863829 56199573 731980680 527729086 820297818 850889737 791205169 335561725 319645683 140859338 710618314 273416767 63454770 206700740 710029722 683224411 709966690 160050433 982861058 938117633 111984406 70368904 576697528 249672603 220254934 844516961 606734908 446857275 783209119 779234970 87326763 900909916 252636015 290965078 565703878 616260264 331118530 849487564 845003128 432303259 765689484 356585828 640430865 676730972 41049744 859896708 585119030 13708114 547485373 131180998 960164392 306123836 752876893 534894143 770514474 96685319 472032110 780830761 812287209 210560716 349837150 689030972 111985164 835682923 279107674 385381312 494296092 211578600 842243235 295046364 227101404 30081370 496282719 170621978 471687593 919419170 371920080 256805584 413680982 603696760 242050586 111761811 942228026 877132111 192815139 782412084 440886834 613257182 716298463 758004914 242204342 415587984 213154901 49072461 119519580 849875197 32469238 268776442 156402374 502896341 731972328 610729537 849297950 519151629 641670551 573919181 844614693 32555322 415407933 124729019 380069642 218356610 732961591 161552267 712189372 398046797 544368817 190253296 329962515 100852013 560692152 984859043 937361968 278601905 456091888 425440189 555926590 121784504 912896490 178128237 454040291 999430539 229482994 865126441 703326701 405858931 287044258 211829579 222904410 168850476 747471919 947986179 608881098 951908293 104373110 592819219 921594864 451707242 936026774 24994245 274680117 876575299 758836424 398461632 32860926 972145813 544694142 76826986 913607091 262881935 728686782 25794903 147512516 188917328 306280627 479328465 179114388 318617974 352477279 856440993 229348703 736869609 145419540 655802773 571839725 930521313 144367284 832442056 668556231 172136016 882641303 614131165 49017615 183646468 408653389 500793950 183338959 641685811 493532926 779595408 219418183 688761134 308597113 167524343 547943209 348613421 994062481 843936103 644503161 632090380 748703412 130343333 275010845 105548696 274244452 757654036 174574062 866773066 347942638 154838226 911450945 484261106 365097813 177868559 308314715 415550983 299516009 741530205 442065179 536645271 27535388 485236949 893793538 80888075 693297513 667362271 81321690 426508845 515278765 4717518 778486361 338221618 270594809 423101369 883020252 555524633 651865329 387211428 890315363 773026631 885918925 465007185 949821775 831617815 673942990 973905734 150508628 522234646 829798954 318509605 453466074 681361011 334941171 529457370 145987226 725072417 42313906 959401521 303356066 722187275 789392418 79985115 466258010 647300062 906378189 930118965 950010552 447860454 681487443 748953133 64240726 520402873 875822647 993800942 100174344 54203676 63355271 668757899 658361254 588424884 235973817 100048364 418863565 650774583 675378355 38160505 975769890 1629227 176067411 36682449 184781823 281808113 799650320 48542488 250496457 783679185 942014209 349632250 436715618 155387550 176956097 728281007 243579676 900866455 681730115 312906163 287244235 798338784 575356664 334385157 255653763 647052136 265954818 680665456 83238754 161108838 215071894 230234581 854750845 422961 309968196 154559634 207242658 390386884 480909307 61894394 908337632 185746503 387531382 157020949 749666168 113446543 512038788 326376760 307114559 83016100 372348911 195940968 68709619 84325876 913023414 172965310 693948082 609670685 638559481 244937059 596521608 976853665 821793127 236456510 358871408 237489930 140355749 555969125 792252148 459899887 581932357 818182583 409927579 290714281 333807311 682271360 217448382 827164043 261528433 505861671 748117336 851132912 829004066 445756459 504875302 256587850 100111173 767570287 610765461 416504826 583596017 268369649 635828564 45106958 824993444 775853891 162342906 264959531 372917831 977624312 751001563 472456411 774840697 623842652 350501884 915296366 562641157 797667617 314073866 596916358 630036352 788547138 811705782 772490745 480701032 372391322 189080365 987993725 983778125 190003790 858252672 290123305 176676468 539512464 728785670 962310003 890490110 423941319 930067411 686217841 152672123 872059082 321367021 569309832 438390324 901070383 324014578 872935635 401450398 47448835 165209043 338608031 73635602 222956841 982281735 206571219 693047827 904870846 837879337 22060576 807287147 150722596 965947925 724331603 562795804 864929957 119739408 178254581 513016342 286677661 89595180 673472444 348529856 508831500 201105424 466232678 828891914 40245248 883498250 143381811 636041187 17918722 673721306 993052681 907186040 113037988 628123332 233573902 793984535 414438263 495425168 703005733 136976388 871216215 810418398 770487966 904723783 44391440 224718108 846847721 981944143 823064551 354564322 461247273 835913231 710825455 421162221 607806254 846025425 849213742 381469580 663174956 849465169 750739302 553397 521212467 185130765 366654286 75744882 967388104 259407521 985532984 172636060 547929560 6906865 270550947 587833971 26596056 588194471 77608076 298478456 207156798 890881995 571463949 935514420 866273261 568410532 814466044 440332508 109191162 755433854 880524696 471296668 230632377 189448202 802538014 453841680 549983182 269772917 815770866 653643837 217277242 367879876 742143753 423390551 161767890 586947268 275740838 875585420 315091736 328481710 194073177 595903891 259242365 576950063 267595788 475879603 799135170 616344703 86964291 292793661 264169964 491815267 446710691 263817419 148863349 520816046 689654228 110200393 574464905 24826979 913070693 803223547 759978701 873300120 143215594 653342642 402604354 934177590 437654373 812790896 721411549 920184321 607591797 596118817 324462060 187756909 722668237 368475910 737287298 820256122 546447349 205015405 947767694 830149216 992834236 716097472 693308293 656514005 102322438 644187620 937363369 45106426 56141336 811614197 71354386 695845728 726354914 417087721 555721298 440113545 60367225 397884438 755839360 175491281 231056168 75804200 541927095 979850463 128433205 69979385 816604078 372643707 189726836 500213178 408736252 169526175 817223640 157492617 299962312 491218676 65324589 627448728 227278329 215546566 820313378 514724868 928934814 55372092 450181615 564536934 579689028 176748050 196275616 9358227 246713207 692163303 665235659 345490892 766007420 661250721 529369268 84305933 130783468 424635616 44231155 685438019 141304252 455313594 321122755 16509502 678651439 213280229 155607788 118471385 544489448 734540005 326326549 883906968 606233317 770264150 745892065 424677638 991571928 607316731 973042981 728425745 211480894 703281720 847142258 375410530 591915601 833221791 147991459 434097945 580335928 183484242 203268807 772614313 144404864 157929252 587659454 754140033 755534833 870951722 453283910 197316013 871993870 971892949 526905729 775662002 396273767 598095973 41345991 843492725 381028339 263155918 964141031 477002890 136778138 369797452 915080921 423344476 262195524 268376743 193216808 823367984 412250962 305393912 30147584 358358220 529683920 992680349 659044383 616492477 825085781 509730338 741142322 600723952 706290431 246199000 395383474 785712460 156436455 650183897 57233693 993235775 767327758 777362119 912405290 19174717 806919566 446262636 931571499 524600946 862563544 197461384 877282621 480755389 488286258 685332526 189863923 487501498 811289553 998303725 499175614 936579855 674618791 290654148 256560834 279706549 136458555 868180390 625891883 828706682 696955199 185690945 199088775 119649217 200146446 793565866 793304343 573725327 136199740 999694652 861005965 972829558 307812110 781637160 610029835 74580062 176790692 23878390 316944920 893302050 597071495 210003763 920579498 83557941 99346281 661833220 712222526 211748134 233332625 816380885 960026473 384420873 190884123 231444152 606551460 701069481 562916226 410914459 206972864 443671558 198577158 637373841 551913070 370347714 630973244 29385007 373991990 877220877 996347484 872299881 335352546 929818472 619077871 442809677 370365216 937851062 14821633 266838532 124369368 673091484 899103003 838262096 576503850 793164766 651234619 264543858 400349679 419736968 132084099 888196860 357374220 966492447 115314559 479849761 731356087 802772374 4581544 401526609 288695115 689448834 975311982 817872408 75512992 324791401 183758793 58806864 326895668 409841909 422252212 194572459 182773027 915757991 315119931 908700856 522036223 602423243 756532631 519547271 634969794 22086222 623061432 361581883 276232852 677530475 602199940 550064439 576339579 357481404 304206857 418543714 514332932 994899732 231320503 184735010 246178383 136785587 158098151 331518006 936788171 343338754 389951559 799364933 362182170 245737267 273301950 112295161 860323809 929281910 829145203 270612450 519070148 176325752 118170313 589200555 772726259 263735022 403004555 511739521 377871386 184559016 536870815 538636221 751812644 713339474 786314465 885494691 673739681 65610260 728223854 249271559 898751901 959290650 582490808 578743429 470031653 992912792 20445858 25720375 381373607 28260631 547967797 873312648 257019589 115786747 964315989 826156259 358369764 362107043 239584545 801884079 384413952 74791330 618972 921931658 889373932 232174473 645882290 675062732 10602136 928240830 887102334 840845501 82687178 42227592 1054510 514423820 147197675 250415262 788904585 331907186 201586487 341628429 304091757 160156649 512379166 59350342 422575258 404201159 891994574 983667668 948585767 204522174 343883994 859588630 148935402 999256287 140510262 107598865 257976683 854420440 298078743 433998971 659053053 456926093 155721724 414740349 537828057 517232074 452995930 551768096 189096843 482174865 869383835 260299009 345525479 84205523 378344898 796828297 158669777 781251220 712242685 433320895 708484816 177881807 542835938 433904501 708949767 256648381 829637604 549769423 205964568 121811107 630012034 858497399 733769750 643047372 10488649 217704228 448900397 923536838 168773636 65104668 834815523 823247393 111455478 865469840 278609019 44875647 153526007 938547799 846236963 896509685 229377475 329344231 817847725 799419569 866267609 910011606 959885778 975780074 617251840 556201082 876849703 179828266 567717796 715940753 362849813 380383928 162636931 284454176 798107986 476656860 724066866 9638148 817181402 715495076 141846965 898880787 434503153 789469097 270272996 158689567 152080306 811095515 364821539 300577706 446045380 120276994 541483640 800136416 150554529 774755875 302474332 907418131 287280385 604335029 696696844 755342117 247250192 220409718 621341091 283594794 522891726 98396163 676521746 368813612 646801588 857237440 730894831 373547630 997900443 196989088 81086010 367169137 952336044 3236668 625283614 987422110 443357920 361607812 587866510 574920313 417325593 407135140 160748253 624933412 68559743 226932489 254719729 780892834 483385922 222470015 437088146 467792832 115857980 390372364 61927422 677617124 545703298 610185816 446585476 578318983 6871395 339267625 572709108 192840937 581568587 686957204 260607351 121969901 261120859 230819624 393201599 628947883 591507019 128264358 87167500 726338915 337003261 66377490 717880858 744602912 795813655 58836544 667640184 210226393 430084720 819311639 654403217 133043610 642124276 612638321 725482428 695549583 704913992 358897851 922061198 557849877 19223550 966964057 747397858 942771318 965522231 640847400 178320315 502818657 692980566 451812432 770858823 887151029 693545309 142198340 536076323 669794020 205049051 483715577 223350686 10622356 639151711 154078888 443903541 106591591 583094497 284076641 722415230 277518102 154793953 548930074 522558254 338993363 129757147 869740799 440586451 185776722 835384012 610904376 531651800 553380040 514337216 620219726 985606086 819811244 315821950 767229811 802981886 605578606 190913345 898389399 759370212 14886968 654129793 597532116 534007158 367416240 160949726 15043459 540925470 844703099 120495465 381899501 405850814 191119009 972890510 486337585 546353390 244212305 1841070 72884758 420756417 370349118 188890126 304126424 259881699 321285251 349845978 888337198 736536007 699826915 50822427 75221962 739995105 91987768 79913397 475422154 847312019 761282104 333231235 209148745 139212320 779409434 608600286 717123260 581327906 513447211 917481553 240349772 633229437 215125935 471192188 970637701 837491735 612169206 531922112 993641119 430618892 548497610 986183830 157648321 159273268 468224347 820044236 861163246 29681920 993379975 890900419 230670932 837885584 472311213 230111220 201264789 494880848 486081347 183978298 442559477 35925120 200440322 651570840 911835134 185518426 865778774 832741827 550456271 353798746 55595537 938053894 732494332 555805384 968914939 6784532 43499656 509551427 690787061 84187272 793235397 816977144 150889772 782672279 914943512 843730457 152447264 655249327 490130888 328545859 705026731 536063216 900598039 688668811 631617962 159066500 545789135 439450561 901312311 968968649 351198144 640203324 260713241 319372705 904219054 708577110 889971785 478380967 47681240 226117590 494805480 796217627 308944482 127830628 455909957 104185218 503345567 747089380 779192650 137477022 934430184 734257788 18974930 965916001 980364030 995305323 212263025 388240473 805233404 532659223 485382242 554928567 204601698 555732113 863213552 308838222 438199921 463321034 112390206 180402564 496950561 328547815 137565373 530323719 101162623 159762133 298397262 510436832 800024619 275829759 882504537 348840379 853955468 727557647 594863443 85709958 23041049 514099860 275829959 483349547 401886141 598457341 603884059 95164447 440861531 395784830 626335684 364492671 307279854 395995656 835453716 462990533 752924838 598596241 626262461 556191635 876752648 929595692 729948479 535714758 620985278 245659961 689281505 307254649 780693301 265308928 691100561 81339007 767150190 531301022 648664766 242790342 151873973 628592566 749956038 239646664 238006553 400942328 411361670 610033222 437583370 664554809 452267751 711364305 657935247 583057492 742487088 516549616 722309321 118351265 438269283 690725171 831399878 573555487 658564004 7861598 416787063 456639454 649784140 553927401 613811056 498023948 275977412 887423455 812641403 930295872 808537939 889248601 584743698 682336905 577973046 274049380 403086190 27314441 294489334 961043658 41637435 956134433 533380929 573951051 579620898 470418649 995535824 345838360 792737897 462437780 640954748 923379798 539753621 332081403 197797639 489467381 32104211 184143162 52553696 297092277 250923528 604841996 81949509 663056760 35528813 92485251 170501995 698934012 380737547 743471970 872934324 771915542 139511137 38539889 984185072 327026825 882543292 434617035 463695047 676199267 716406106 760571654 83846799 124173097 341559707 347502709 244119559 221151145 383091281 397613102 394367404 232069153 602730417 835282599 424486978 447957291 559413310 236750104 714496458 499667255 971048467 287448856 293193451 451817848 792589205 152431590 713390445 532501135 575512519 233447811 217767505 961052142 913980664 29897556 249706443 457557180 554413200 573255708 511852790 427292090 33749845 780712208 814334867 352939592 848056572 624694784 416642462 214865431 39271253 513189141 480983428 490446733 553685645 686014468 372801928 18495626 101046547 27132138 539223754 416013166 826323804 122532624 444367146 822940339 953464842 324914741 815245289 206964500 500552558 374617237 418653430 2702028 634500810 23686271 770991365 756595544 215246612 309009490 515050922 275990177 204582555 987139213 293478448 888421405 486844878 127548668 921930824 988776681 582752941 260586518 267167383 180841674 574728902 995956476 950791228 52530035 750161133 450795636 747945060 87644354 80016091 978124138 331712851 529667940 394109126 451308804 473924710 935360728 752388751 393863071 890901374 354743086 886643231 215428652 765942148 225943519 334430448 863967056 324757713 868444934 267296046 213444134 906666482 33084424 667832414 20298597 245653137 989145156 890825908 835705746 548030412 714620508 960057488 428390770 263830921 470398449 301841364 877350857 932443380 669915222 143815483 834280122 243621649 10741629 539578764 479099120 720566435 181230013 391047304 445795434 127928294 727046933 687989063 446354242 885728252 94020821 582081244 716635316 750622434 331841120 692617314 248300123 3785082 948750619 353383514 214989986 976181224 990632375 917811480 140284602 158089907 972172067 1646201 439402892 218603891 459351859 260298494 15422021 257740565 28518818 317738005 222604381 391590951 446141373 647401482 351654280 486051714 836837688 916654289 453812940 323564980 513244398 647198521 991935628 110669523 818038146 618455887 850322725 53693562 996715464 969047304 355002872 752648012 536771765 699731912 545853597 994442564 691720943 450975507 955096841 474014121 173425874 765072642 733718006 435411646 277915639 670832337 997772373 974149809 544133550 12207616 888402527 240312725 224304550 879407432 142786539 581789545 470333210 437522034 513075619 963389754 266269762 19341995 783077112 503661356 554291633 378765160 232655821 316979627 396000823 929463838 570971241 559375877 424409936 745594415 461286128 177418536 707311693 115575064 837836027 156538264 86018073 475127114 908518694 222298010 903167745 676379213 278301506 834875473 60350860 504384508 225853730 631634874 830509603 886883505 727627806 537939556 625546161 69336844 102688989 747983403 789677213 904586133 550388565 394810415 238940755 525388836 581180834 32189332 943289752 677550885 526384527 126898711 889262810 622856643 909183964 954827880 682617953 24164211 950879109 497119477 464366360 666087415 222658721 823494228 559794256 361287403 181073090 388746340 878081180 508568383 492069443 62801171 551432210 14441648 783454233 157463378 458128002 676940777 118959755 24893555 506305059 992998897 147757196 338854152 827833430 754133399 338050280 152135967 335037583 581654126 471533448 265572501 395559502 494726297 413744046 521058960 804633089 925971247 323474447 257942641 708072322 832072940 497684524 45775266 40425637 465805368 425064527 420640982 847875157 884885844 590469538 752474060 193054966 640375860 221092904 952389565 922667503 497829241 46569098 357512982 618900986 721667307 257607269 358751852 971321812 444347232 966267084 271309849 426706813 800705517 984904731 605701458 49942898 84834229 365977755 778917126 456620134 595403597 104835020 544947426 547316229 785668530 349243284 837514795 837053803 511687126 618672725 980465794 464145496 171786456 561000323 709462214 369034063 148752125 725431796 967510707 729862924 826435464 314390853 614704617 574593305 492205979 330447375 296370209 541389226 148442927 9037312 71352774 849626721 644907018 481693880 774181401 523291997 512555421 832032191 924292276 967700047 115459496 676706272 332142749 415659078 955972843 155209380 13032991 25433598 25416421 359689208 928579590 765865618 684419720 280360405 165574253 180760569 293706594 336024003 914277258 420590038 72764818 733825076 981032147 98634879 80333209 198197689 476727026 382469026 949254429 939608575 20417641 424410936 358889520 842916132 297118194 568845562 982643112 127987828 743195131 730864122 621726117 974271235 583433458 267034890 391161267 214022296 193055231 463735076 776343710 204285020 218995844 857432206 357811510 519188670 622776126 391697362 450696004 425310076 446628769 207788014 724374306 863816603 161649499 183860427 970920260 754626377 324283675 328870909 837793387 511015047 729999261 342115771 172062472 53097260 426044314 287346056 182190573 802779872 6390002 234470400 512142454 909915305 996456707 541465619 771484460 995178856 187185605 933552356 339522401 254379460 644100437 956517965 509824074 729028241 20429197 638940426 544008684 706434199 170713475 278499899 162678934 620594029 397115805 367063024 448752297 454631856 256678553 595665726 494089552 355119611 650452884 220690643 773277789 361297598 184051741 446511595 879754616 244651190 428794222 683328426 529121313 241481106 715929202 171738441 498656631 163142029 483723204 575922667 315186628 519331137 208171197 151069319 110609031 728313150 940158289 637999400 389888135 232883446 772590445 609132638 789815557 740075810 607068745 183008056 391813789 593969231 587607060 808282300 100206198 476084801 764750740 107498201 769474276 420474229 806304801 782890695 62712419 622914700 784973144 410716510 179696725 233313639 23399120 998853792 938400379 272184670 520779940 666025728 864943582 184347333 895025122 408074493 162782981 837160513 744488714 777613205 64038322 559672683 152615850 435433984 381393079 290071098 781947033 834535860 257213975 234306968 213264363 198931628 875193515 950646494 402239992 986349223 633276123 749179455 500834366 975863799 314944225 228395333 270269075 253704422 593937289 724601063 791120102 308963025 168307598 661730898 584006331 164301332 632058744 698095482 956437050 299751044 302573894 887873824 71411890 944929545 965089122 377839656 412810371 610348290 687649684 135579051 20456956 220619240 497474364 136399718 369954494 966886945 629252738 294488089 96123418 410285877 707589993 56237534 778459054 203651359 731618222 281396883 657118834 354370137 561517177 508497826 243870837 810893802 288281601 767337786 625769116 118379805 636911282 431252186 871822305 593331475 481761229 709328482 879239181 788128714 486520178 167084674 181462565 987450536 69438527 715304291 708557254 918609484 916347640 461093511 356369586 545579258 515027915 359242601 103148087 558755456 84266825 91741781 864302743 586605534 696756771 592677916 518523757 923570448 546905075 959829085 748938257 216734048 217966110 19106926 325279356 191455475 241072166 321171764 920882619 659823461 387359454 566794514 587789314 486168717 536277036 305146166 162199065 949939314 558134363 338502506 226675014 327625313 612991085 260555217 784759026 956848385 569056876 454379534 173014552 249903142 685616351 360526454 677208413 934424821 33666178 886458544 276831835 956406473 248431849 695614240 841496906 677761112 477583488 946873560 395336991 751218271 335071175 976378310 369136623 355679960 470494254 150044888 344022009 65493136 286407465 245465391 734338330 345646727 311566524 660265386 648083498 757451601 329468086 852622743 923773012 83440523 776360531 790235903 370064639 314365811 422700078 660678485 836197870 272881970 401762272 594060996 923642777 881243252 200765196 84955472 783086550 998010563 644942844 868435799 280600733 468356237 577442851 972819630 245366493 576019864 683717926 934850753 689459383 799446542 636838834 423897476 859525449 791688838 587344016 729560300 373231867 459933736 320174216 704591207 834254243 193949180 998881044 472055439 545377794 594650192 703245159 370679761 821214423 865569156 452276483 198904410 599723561 601617285 907239877 467042657 362871156 998054286 201236308 946959329 756774493 455011631 969506134 385027888 646803687 380289461 684691297 181493783 468605408 28761100 361625726 46083940 618406612 848604290 658532440 359266285 967388339 906700108 785743522 511984784 503613133 90146219 80625258 666442396 739598418 144809133 614742492 669168609 224106391 683346869 422595031 485006771 512710618 697166479 753719053 254137489 614163825 544183383 327745458 665531033 223216653 906655279 318052282 744426509 201091266 698502549 97406120 391261878 189846125 906278021 351059999 333427201 986685715 293405337 860363758 113984387 420233319 6837190 66698104 951042691 757577181 240504833 337578149 117139013 388092041 904816901 993261718 5847116 787060318 359918313 720139886 830127326 224007070 439643298 646728079 480984980 145525186 551198128 28934633 769811125 598443810 495205260 721761045 154107615 299753593 952616094 764448344 202340514 627235495 396165936 250067230 772605697 402766738 966826200 903971244 504979876 479865111 448463359 432530805 267124052 821587470 405613588 68717516 813573171 860546280 963484950 199717304 195115660 222770103 24559476 511658808 727375669 537747302 785619395 536299956 565403847 57941145 216140249 760136396 577210445 500182879 93267766 363731757 142611512 328604828 682463259 623319612 939099871 649683326 467849048 527206241 681874048 836074506 312824749 14592848 897252820 975533563 901407006 518816258 220569222 792086902 995552271 907232292 819383643 13567978 140124380 58051391 122935758 859160041 967099189 354513538 205794877 552073621 9943961 539741596 120330703 709615174 293150281 665419402 140606189 431764173 461885800 831902045 151749550 859094793 746350920 554360 202853099 957795306 760771919 71640142 399363474 883316843 748079586 621379097 718580645 51468436 523191840 956414273 405991519 557818780 774271046 498920986 350014119 184043008 931357122 984292752 394601127 529244795 798631206 895302202 934975405 793611556 332270419 498895524 745016187 514033179 610541524 926158490 180581209 11183589 778340698 395737445 48220915 863992237 915260283 600690906 283124799 732695433 242069906 590147812 695154107 308826049 72948879 896630594 389741626 775689922 750065184 970498522 97546344 860356446 825472164 325984002 321254292 954664104 475443488 577644218 128587942 367107631 697406594 433449296 755200573 629926749 857373585 583208098 541214876 790543029 316621491 171763709 320032385 331811466 522011829 799073967 916486106 784803230 620434525 41837375 848018529 479514207 719610098 240645642 652064469 900121314 210164024 371273243 797389197 597058463 994282512 828572871 688261096 14083898 387156921 737958813 705977639 891646962 605660123 740369964 628003 121563069 850839816 815408106 186439904 655324089 482658450 526527156 455713468 448575635 191859481 807167054 116557694 534550124 224743227 560497577 939731362 721810798 414677214 476397987 141243105 696394282 215497833 25109070 652417579 921820437 177235186 321277259 784614381 601493895 226565675 925548302 743137150 265466592 706819193 330553880 841665800 449803458 397652846 392448072 532310015 288034403 609811714 611694522 964961415 123811221 867645784 518982460 225714359 159234408 488824690 306354673 521474342 972032194 181279071 720900380 97586837 716395345 448695242 559669726 196376899 983332091 500783 452926252 53613276 996726702 338823826 967430439 916287583 33090935 309548317 837503181 148600010 589296524 6343792 832064706 874081020 793287081 687687875 610091302 989948672 433638912 50986145 110151610 238777393 256287655 591806768 637223382 571163880 625952540 921149551 388070228 635513619 560041455 480800962 704365960 961175232 456491831 305509886 177890623 711439870 239228310 282975120 76545953 231781099 449350151 46418297 433312567 334565487 188482215 168109033 613185880 347436745 111961254 622825158 19618989 161140908 938749673 61555246 234085724 276062322 19412057 981228276 349304931 49107669 16856664 497104443 457863282 656263473 452902129 552403044 210476932 774003186 380483264 487961673 707380397 117778549 367879720 221888211 124011708 479148412 355460006 283003271 189748045 161559459 657276788 373379302 561416638 703495942 642041653 596576025 993763578 522605096 278933424 806527163 12452532 647228583 5937096 78251189 356331553 925534957 29149600 499625629 909692986 808741846 637825580 940250755 483211438 636013540 357984034 378099844 901651664 307335604 170997285 921345440 365340859 888561798 433116807 412773950 966729133 961869652 986426961 872523032 276366207 723405074 695976403 428306300 69825550 52176678 489124939 348447650 224973694 625759767 967445254 951400971 253772321 785514812 812549412 917624779 763157444 695154887 316039911 362197434 242032650 179689938 720719314 660795338 107091605 382199655 525033773 752095319 342963045 949547476 100883670 147388186 978470456 829899922 893826962 440459121 921490573 507324144 303487259 790540641 503027255 380702215 961612878 996418493 184175954 996296034 473619868 816993410 524571957 695596333 391034091 751367131 403553189 255441107 125653491 502355304 774778684 89149890 458883377 5393725 265895276 424104251 403471313 495202723 40267635 110097333 287792054 832522169 769851880 477276912 134677469 316855384 689412039 564371574 210927970 997362781 774716818 990208839 759919790 865358159 389886804 28128213 933870347 229642570 971375137 349843405 979468617 17805880 81265916 890772091 309031164 93747695 225059844 505712712 691875227 645305779 477459836 499646383 61789469 663374143 100100098 876589 724365659 69557116 644388759 200305101 432381892 791161091 985329687 731457510 241345061 227341162 75441364 949384013 858162336 134535224 302684091 235554040 168384823 794416842 779463674 986486763 87753874 82173100 625176619 378441592 995552544 335419698 491083234 962447792 27623748 657490751 553390391 552990737 303512573 253129388 215170755 769845541 335819254 934829654 395892748 225657212 64112261 557302740 350098663 451702852 621438236 199900272 56801611 743528615 77493077 287516818 775610535 360629147 393518814 208248797 523719979 439406582 553861072 66324645 708460493 654662301 478026020 830671669 75034677 671073534 6670148 824414038 136294302 885620383 583027707 61246130 960202342 274510159 655944466 988632016 578617311 361163587 804298329 502700033 671008100 219048717 392710226 352488110 185136305 252180157 772115407 353008989 5171074 858981302 254794960 61050616 822596150 614009422 210213530 960990271 342795252 45698579 145863922 53671744 135352861 59673907 672149507 242415216 999274950 39045803 109218853 96899451 783765662 645489633 987396015 803235257 628256711 550699387 481957457 942631017 568903082 603935402 679469945 215154085 439510008 799225378 894671821 938249435 373921208 325779644 85236007 148967290 657592003 762339454 449296779 517432739 353389123 247216468 440853158 68212198 725169958 866826800 662360469 61278149 571472317 318995402 867697893 619669437 441985571 22735169 752070561 93556292 40901546 765960785 598099635 495683786 451623636 325354375 780816349 895695473 254289107 125680690 358955655 750266743 329121200 638886427 215414526 433183501 314979522 868460180 542852400 814806974 120191725 148149289 636491921 587100682 487540707 770085173 371142642 671209026 786246558 233847672 925931242 358479783 13800672 30569109 726548194 906973679 819086806 295041708 953141839 929948339 883598869 711931449 965987038 48116549 305722464 127783160 334031531 637037659 465614713 806011080 618457482 451795995 457226651 263429606 270390611 518686590 637526609 976914771 626832737 585005597 684179079 77732208 203917633 179907202 996056857 189305300 498486346 766537354 630928813 321354512 542814540 943484914 918235365 301816527 323664575 883975167 498169640 748147946 223569641 629958860 741794024 356221164 529392937 244372100 126182922 524634426 995094593 145239218 734256707 26289733 296976371 663910602 204679130 687916131 363420648 757650071 384499929 98894352 876843357 829495266 640116055 636054517 56721179 581139024 305942626 132878176 962068679 291333278 213486687 840283352 548160550 303948010 485576845 3880227 597719031 6694973 925828403 903640995 139773839 736325015 691542453 225481262 924532757 744596085 703337611 962269576 679844891 103251041 624290417 760123055 945168542 344979076 781525393 775062649 723249664 419571753 570111295 716947906 770049991 171318848 528424371 848506741 241581533 925164456 920725870 159917322 620235824 219606877 676473272 129038374 121230770 193578574 720218736 806765886 371195580 70069184 347475840 638474412 158507534 445775384 446223523 979755748 60024349 517991823 249742651 68464677 51642198 548786400 544726414 272104714 472566654 792243060 277043535 404041830 419812299 351742290 233370969 860668521 852066104 245787889 756652138 800001227 315949344 686649763 178624832 778305417 286000217 124855264 845971431 921583248 120814069 526261062 877353694 534817356 945550561 166031576 89831633 329636231 521701421 707264059 441324861 980644384 265701467 794767901 30998662 20829360 277410472 783358589 84473284 383518096 458995114 866882013 977509315 511713132 18669414 662243253 428892966 141273785 332337348 569186644 771751747 148213445 760382734 680272669 798070657 883040037 30524592 798008136 639089637 244651148 966336770 747175317 855789191 237327157 297174169 746103998 110302697 831933342 231114810 860188073 7439678 768812740 877467553 74859551 478269791 467707367 952824785 591264375 218604442 24219704 147773895 289489518 659848672 413387577 367385973 183721735 183898638 518036926 697875944 328901092 487382924 882460100 84814365 972803613 830057823 213458993 500227661 992183125 791398928 16140752 40031943 72374323 525459643 658976546 167678604 749922255 200537808 538092611 760044356 591264182 217515866 276428495 209588002 722763277 367345589 37696034 96650766 765602885 957121932 949450327 18397577 62324687 101939346 385666432 14328016 931202200 249879686 118462390 215766579 800827196 549040484 126924588 978934752 961078989 312978454 452861151 44682790 265671120 455159209 960212593 478696855 268551575 589633761 743898386 611962612 940463350 663838770 226987980 784874204 391433974 474284864 608450036 279862674 47130139 304169118 857602284 53336253 814779327 562376577 426157934 339361648 474322471 919693420 341545187 865095023 264911761 281242352 606985116 417738157 420604925 624421872 549657581 257208237 637162351 629315711 280733933 239535572 508189495 677555247 497891550 29111656 960824785 873961554 572544915 335994066 364456084 47794865 44643999 672380758 457538137 397521095 909639249 584452545 663495850 875777573 270519413 551486360 445245973 889911312 45064678 164491287 735127576 374124807 210835169 898932420 631303220 911373935 470482587 642093668 718599512 558826144 793480868 848303398 447922130 592920055 948160950 773850673 531773443 691400058 399061672 513439078 537535359 295790487 299072526 497375864 880846368 858927552 18108204 846521721 102314814 838479889 343444325 428936095 633573484 144524786 239184799 419182115 494226331 531753190 183147409 949817212 23833481 230039190 304521611 594177472 714465532 421086431 250171209 188978901 648326360 960146811 88872456 462925070 574720963 491251269 57844981 248553001 245881234 88362081 610723355 594635882 306404756 861558709 346039026 52093110 394937960 474934093 173764385 964305935 342159218 273085251 745412113 712838805 864489251 905971948 782572511 708588095 597678163 545203552 816937869 109126877 508241771 862478384 527437458 665691972 637309111 769937211 984189743 904473203 702974019 928417623 777331419 231027394 864052640 41398631 199966250 283545750 461657047 730287659 577682287 246057688 607618140 993657662 905414177 151602319 724523159 3833593 31933643 630807700 133524161 572464504 316348928 852313994 247196682 531546124 658949371 594141865 403979107 658790014 555778425 494751788 783793765 587390461 283800576 802362777 290098891 45561901 984927813 731457203 916607403 301079526 765515268 981296698 32206994 431129219 54944734 791058885 380280401 540312826 934130963 685427948 771610799 811952997 717029698 528291276 506633873 636153122 207375822 877930575 519987581 892704082 35810243 91191196 704161869 22777820 610457437 939400624 854416172 798023685 630462447 805284006 736860949 854840879 116251296 818640807 564314636 77820862 566889767 685964496 971424038 581259212 807724667 587208733 304698864 125730774 928992429 820070879 279552891 907760631 426661408 128502207 515410770 473120960 297156244 231826624 272244880 310969502 929382295 46250710 488347422 107940197 33536587 215592574 178070102 595073594 292139506 754059452 145362031 860461010 929835593 845250632 397502762 764719315 546374755 277270403 488497371 411743408 870493595 769363521 772508434 282297119 820018944 343986212 670579845 147526693 46785841 7815656 869050835 264615817 451290243 511590642 754762240 566492071 851772575 801557224 206581462 951963576 266506979 45015764 876141265 543822868 304597825 891102585 118208617 631268352 485437269 379504828 15401218 667232581 490316039 349549209 717395759 565348645 964575639 712321602 290271279 827586812 108911797 650232476 378264003 311346604 517914096 903117521 168115317 490657333 902138554 915816848 483156077 152923627 220597461 850741382 218482182 958079218 619168736 580078788 451231282 491877364 286576082 242671610 710833301 949814459 264593119 846672485 745226791 875618516 437689236 927151887 233268766 984775680 827033357 557633369 657202536 947094158 835222099 652812852 584896563 347606978 609786617 387425613 394604944 512333049 214397911 363353167 122013507 718554100 376364051 947553601 927815557 878858853 384205708 456194640 434813155 390429213 214324341 960047810 838867780 44049193 130912527 132781731 38400769 110455361 282965139 48618859 941421380 289883665 448834800 481086179 853417409 460185502 762156129 235447370 760397126 705907726 840686107 755555951 580700352 233289704 88139135 607074486 473204403 710202813 830374984 605926098 145574339 7993149 35429343 176250516 122381842 937252215 575910465 384524721 841425650 341619772 742475062 918368618 724733645 832721119 795997954 442605148 472126684 93183707 969477622 648417809 782394534 318894091 753327173 16293937 519797990 375622736 171821008 684065939 874655711 881200333 40181383 847772870 242407322 615148669 393684538 690555159 890785513 565841509 681666891 705235814 967488827 611544159 80090462 149042542 163671344 625058113 362881152 450806306 400364805 948712860 263356386 524265943 973506138 141593852 263096498 524531477 928443852 54154904 967978357 266816678 467349751 933673352 795174088 468912606 644580494 458649895 936037984 949408658 716979433 576688752 589149230 678391864 641782421 40290980 188304754 577330522 811461760 862931571 532518376 925313394 240890935 496623545 633855712 357000428 240849209 536273014 433254509 583274835 297101331 222397654 522086393 147799701 291272149 185437277 321219086 257508016 393280958 628465437 38283072 408969917 333853667 493381305 361391727 223124179 469339821 422416882 804034397 393897304 939227290 782940084 442061944 647605778 165811519 445921844 822626261 839796463 354005104 666097883 761529607 661078729 38506357 76542073 450706753 911671433 656785308 133194812 340076058 539910186 755255481 759456449 66073587 596553176 852970956 856156658 130304894 258465570 313748070 217772564 48126814 834680028 105959410 648348351 253001229 606490079 850702090 360333563 443790025 256512795 101055146 711147391 359078544 993492631 153984584 50446068 832042286 575254213 386829195 984365692 858356588 357706099 630596406 274334820 856266937 723567740 37968589 249246980 321444680 667177576 480386942 342571543 10380906 603609029 1178174 847990148 840461607 679425887 867593894 343732575 606713995 513097388 642644903 463126378 820213642 551879674 989343472 660831420 247731256 310851500 773901418 217674490 195579346 76874430 756302763 307028768 492603057 161434389 641589573 716712786 149838865 708874356 958038000 520462331 463814565 137016830 287377614 218514865 280709147 364518083 664806858 977269860 212149784 117161693 397394213 370056365 455206644 405918867 678471003 214268916 91292937 847986568 585170890 253101344 761947620 418709666 853626327 465139655 952958245 210908257 581235436 920954716 299464768 350767943 738983956 497804093 549788417 227358447 366432479 131177722 15057430 474628634 668436845 748027417 308767610 577512325 815107230 676145582 586346899 364525927 715335100 924598070 471336907 494598118 486245798 292552110 107577353 876679290 14073969 912613076 204843523 246934586 360672191 20145189 853705788 913383595 415371014 595427008 691873878 311525055 30510834 667155899 830529790 115065148 667523901 811282337 39583543 819650842 836092950 938546689 52304840 768358814 856231016 135327305 353255337 600530503 393428430 266382680 66981688 489834005 728162872 328678031 456411612 883740561 328694443 197788707 544753121 531338334 739828259 555383591 90579613 981741814 118254136 537829384 201032315 716586723 22112674 593853083 605963421 398629756 954004646 920134797 44005269 257137328 739855523 928186415 821705092 990049903 524383288 591326971 577985678 728381737 29127146 785412553 119044103 800960032 646199430 664192512 153503975 507835788 414003775 959613988 544326834 121343060 678944836 355586613 109729061 147418272 768847066 441250310 365000364 231730386 270586810 97170906 251262466 797722323 860357730 455551418 466177676 394018378 140207922 590636147 928406151 642230290 988860842 532375108 195326409 68176594 202033637 563068077 204479874 697759115 856740801 916512382 381893148 373198072 266011982 887412459 686370249 760732487 285386148 966040024 781154542 691044448 714187784 612638404 206951403 137930872 583309923 445831109 335108990 696079083 301361660 10974750 866600779 867324839 370256056 120543738 228025681 840410568 346248855 359694670 687851889 273006015 234797820 444470487 203109885 838793504 599084207 471827311 336847698 524511966 170441557 258902943 848764786 762630444 567736009 846982083 999563125 385048627 577711755 94684356 48083802 271559458 578412574 715797174 405077548 593291497 588322932 148044859 38128404 440704124 344897730 86545381 441319740 739676329 580011076 538962529 217521578 337668558 308991885 575571373 167577229 652813111 318647293 526462715 527482259 629207729 766393622 86429356 603188895 597386013 53033679 184964598 447118377 840318680 472637612 50830010 406350663 436435472 909724246 417124490 964505992 343032303 835464715 693257415 92056470 118319626 616201604 862405623 908915345 245325021 973760586 1012054 860895841 821892482 665657571 411912356 903166316 748383031 450547556 500595838 657618918 113920329 890074715 86746085 151577446 248770293 346171557 785882446 935532741 257288916 91797411 274971035 747023462 527244826 327756599 708794868 378023120 799913000 569443808 867563863 267561698 333638701 544534154 85057253 205764149 781235653 731092152 782422293 792843001 539528237 715509772 299524141 767900006 113165486 676105360 751749203 822408974 636402788 830139404 852830332 224494280 304853884 52721380 112170865 923324935 504413712 715098791 266094462 509590322 269978797 691654933 684217142 544096996 12201835 750720267 331006021 439560897 977775091 710092720 40965195 534244302 129507274 799629421 926034742 417489054 499964285 167673971 123250681 64053244 649402104 390668885 363274966 620369650 365835201 282470708 567293048 573276106 650164790 514471417 494695027 870488700 209706557 645106775 998449842 688589089 924827472 507111336 668838049 463165994 52437886 812890116 809733505 294802735 460162240 576724600 732402217 705379818 797192222 329205194 493131886 791803973 384717634 740278018 420597104 607201188 944188363 182099110 224177931 416568246 864997543 20481298 204124351 46488194 681716965 878628515 327578962 946377116 906685916 212249044 814036938 500330983 459159413 620733630 820657473 554443474 16641815 30157924 710197255 200760646 13819713 394916036 456114791 649101960 58948302 329878675 896952209 299950641 407049437 560814895 871860306 654069796 455787633 962909036 179598354 984194754 644184997 384862121 838840875 838888895 759482738 458920912 791480055 585949060 396915085 256295390 743489580 946902165 385530592 70725676 751494626 563011747 126436310 37429750 935472522 913622246 455931347 8073442 471831326 157587869 736452436 753893796 439075314 988247711 358299692 441322090 495147266 489190094 591575705 869512768 389171069 434387614 889412123 566289355 680298786 171740430 547754811 773912494 190437104 861584197 124881634 972718775 362636447 859734717 96732588 72598255 935204641 738727546 887530669 324595519 176389471 55555990 285019770 828634051 94426751 911952280 930978306 392512558 460007644 830226386 314103101 721443691 499745959 847525333 55773036 985120346 897215456 830845845 872901508 379089188 22109564 134467600 497281267 882197209 907302672 506920931 785251603 430814982 574317463 546891339 248387716 837439725 752741370 481823867 304454524 879552655 471133497 945657396 928651605 14507735 304166818 854562364 768045805 375074432 928199546 190833874 52136220 897366662 378962743 668525253 557851650 525492178 199983687 612111091 591268037 241935943 615639708 176141642 752580990 634199328 674748922 723083260 936967050 580773005 876794188 846017257 10587048 871764547 53213435 464721891 25299118 853442979 658898351 540246432 381106660 23296032 784911543 80795598 442384606 909974266 160357124 71844518 655928116 7036803 73620853 243925577 928536916 403525312 206760396 44958705 146204253 102302220 927475023 331585891 162040232 737194977 123305842 599126143 390997597 791525213 418837397 280158767 542566838 534842457 429990728 266262695 315801597 543861741 746597390 839529298 801659819 730204870 61491665 449367026 43145577 614497762 545397987 188522738 324114040 162783330 475477198 923943315 980330939 248108019 432065675 409518019 455929872 392635499 263075142 413342438 345816099 545096748 713657066 424162350 548792269 94208961 950635358 592628610 505437874 551358156 262638890 612002340 741446688 476352601 169707515 81916294 421944099 701702533 853193519 649505667 180570328 719249344 808435898 87312722 131822822 245271509 665910812 635375218 213055040 529691591 551262577 819112982 342764561 420613377 426823284 979314916 841325154 351136246 832725171 791212089 258023008 787673647 702527422 17082921 258308026 425119260 968156934 548878510 506955741 522141342 973313241 641629426 852813978 804006160 952120256 703595880 217999666 112719492 704475478 849597250 374470185 995769723 295688288 444960155 212726234 529477362 685777045 103062632 422121836 898376932 633908663 130934637 242589206 678926243 103701206 855974274 727317642 985252002 999276807 807686147 779447311 26833163 84541666 683473756 582803083 822372183 463019858 869154690 600879877 773359212 250709369 270318378 24126217 425521356 484370851 221278515 235692428 494191996 877867283 380642186 183365296 485227023 583404666 270622906 608295744 933789019 291805313 75609826 151991024 158280437 61370633 437976030 69391388 133543791 340958187 131513122 740086874 369158412 344061879 826822138 509064685 433220521 604389162 208756148 748937154 665102559 867277928 638324338 720392976 814749055 953097506 734619371 956391334 174154296 258610773 745589488 388311584 151024463 613761087 553629711 615083924 112004131 205706635 602558843 209369851 691535676 257123080 116084228 997058477 84400633 997416905 565758931 371328891 549632077 112516552 290028278 727297178 678521453 2620291 66800866 629018390 778508901 90237896 326173701 638820984 307269740 915398092 307938086 868500259 828888894 766206252 424015896 562888909 594315981 23311261 443414171 3070667 284732074 236117170 71448401 182251946 343510768 848302587 304236616 253869893 444326449 386769841 782699079 782707011 750143955 591508511 6901175 499579686 214019175 735840183 518708234 482413280 678780923 102396523 67765688 147910298 267039286 792235790 327896562 781741972 520966233 281334738 590563678 87353537 770649285 903300806 365271830 551083452 276183224 641246603 550418885 511618360 802949410 72608737 463851924 298212944 747814107 404151213 347781443 358634521 7109138 329328772 904866759 237811770 306879027 269252052 48571654 321412575 108873086 381783563 260801363 742969900 461227046 677674642 49121442 45804425 970059911 391091620 86243767 681512349 333575517 900862630 670971456 464848874 570312652 310733074 294098036 927997979 692997090 507259004 204699080 475755130 664507040 532350193 670330584 505958257 480628418 819319212 400072943 878304177 815492991 170413622 134189130 390540888 422852574 373512437 4584229 846608545 364007573 897413816 286937194 283570528 803313534 229854319 22966737 865294177 127205484 264550931 707475941 62612337 511083920 193314461 80961137 280804792 388066849 127793978 738160770 130261351 861626703 322683083 984072572 691769681 834333604 297433685 978333266 87574816 845543416 245050625 667161385 438678394 316112151 311495283 190182163 21356995 739175317 463643072 574770555 552262854 730355569 567877160 286798027 857973996 103348628 121863444 494828475 702010516 181537373 877469029 185999185 13339431 124623773 574776041 117317954 669048778 423582442 866891898 975687302 453268578 286390409 241746567 737132663 617907273 753305169 147163517 446408760 102441029 622777639 625066417 666676360 535845571 25211623 216516174 188862359 35559230 863694274 70940022 721033419 2759416 899178458 867238439 898989566 636845978 166681021 269862384 43867549 118552944 196495108 292208659 851533139 260993631 457878822 771362270 130517526 751063529 469497655 365711956 226694776 570087802 604626963 421501961 5167862 862235259 712142863 480694648 517639137 501698864 144119708 95415297 587218348 560058957 105318630 822525557 577442819 210501832 979548025 634193692 445670900 835877683 383532738 179550018 93850036 3115787 381190793 569766004 633983114 655285604 719638350 304883705 779205964 354645394 331940977 79430819 561630617 732644968 805326521 26787714 798893374 689153019 600327491 896948152 412425 147259096 150680425 253312920 31546060 468065083 665085532 151975869 422149131 468132541 197406333 284524402 240655782 570665056 127480651 556253118 994496415 670449511 629397721 555350513 384881380 526472449 550032854 763693001 727673652 541801657 712602174 753488479 983366705 461719277 834376047 883802632 564531560 81654137 662852476 851293833 39659197 983644926 767727573 742423762 986193762 531946282 337463249 205622034 309138034 42708891 463654009 378560646 706802338 4830019 502051217 448071855 838293187 801566069 580811194 363749621 816422128 800193669 230923066 902935872 936614600 590186863 347642788 33107574 8058749 144198845 188869944 529267469 116961793 347728882 358906082 660692146 778053354 701258967 8859156 725978977 661868044 12455154 766527762 204094509 148400360 98580168 294610632 265723307 70111238 375327570 980536909 30830891 66625859 666146901 629387567 961288122 739705392 871584878 388324450 187048649 187692314 604738462 506865311 173262008 419172763 187113176 578325712 90273142 118400171 894447826 575012920 820513177 67582194 809731432 827445611 960041461 406784988 658608492 307960443 969204905 262458989 562652406 399547312 627766529 750810119 438715266 257208176 94876251 843991361 556956833 482452779 940303129 989585998 729490019 661017406 112969517 591773535 559131063 923080374 450754671 220280678 826654110 458384772 800479626 204589669 549989154 511769859 641163056 569985116 755231139 441309160 259740104 84377453 143184523 757790380 598575132 454820830 225516520 373161491 351968208 335513274 29741333 735148627 873413883 292163696 10145826 91114106 763461183 615798522 474731701 55341982 222485974 201014479 61156644 972115412 260461494 963056035 335983255 626283742 524138474 862499925 489603886 82508625 951812473 586556486 427250600 635479125 892397275 533729758 353057299 438771528 595454588 995459533 356642420 797635385 853433512 654848442 553461030 898853147 440077036 751785158 213595585 525182218 653955893 4639381 447461969 627364148 948658230 199069941 369914975 114961321 893414624 822866827 607413535 220421877 82469759 202567523 991744275 125764655 328200458 822548099 797394197 209645335 43700911 395673204 113342957 932180896 530459834 214577189 433341587 954279902 267172678 198456813 130697376 724082879 426171484 114464547 255839216 339857274 515437970 132755367 330465422 737141517 101419485 464944250 714649841 103499089 239396850 944548005 72828624 29090301 741495131 559434584 251863036 279269311 547803351 631830168 614110587 857548685 430982240 417025202 852884014 497525196 881579609 573126555 856837842 952917930 644065485 447982357 34135342 739408198 139210904 292194826 121341540 305463172 361624037 225963654 467642243 774448733 82773128 390557649 206329160 59079282 714574900 903598046 718317217 202836535 723742632 366170454 388540672 410518472 383119444 894928137 812547060 745937742 584462297 732665087 302376180 631198477 481106108 95974226 394784590 578659034 956431753 166837975 874928388 574990522 745372320 528095486 349026427 601799127 606912876 775523492 341080936 715946070 528173237 503746579 345530517 880969230 169630852 998478949 939443237 346819266 281152453 852354349 689610824 335788055 242471579 696469149 493179184 25610977 342962958 970130695 795050678 91699639 300229947 951419670 435456326 99851147 34803442 489729766 927534826 114882545 702008136 968130577 924197186 1606877 598766019 921911574 11340994 95926788 643934486 379990720 548999219 494694022 839282623 235550491 657534878 812975054 92371157 485249264 872390184 815789492 188731518 606737057 512998935 383765081 661002776 721241964 893707258 271284809 172468492 101915447 510073160 626080418 987866209 344072149 590748043 378630788 879645576 547454463 120359700 821489437 723281065 139714691 326200309 187502995 127000698 158087264 211606429 293233374 931359142 409926078 819183179 238069232 315393690 472181874 448212370 249402557 221209792 176710639 112350437 253738525 951068931
