4594
281389158 117655309 719499169 215154365 932356691 812974834 942728702 236564990 688229274 526655523 566010576 478836708 664394717 82343958 884174519 479160392 941694300 705761973 819791688 156462678 414350233 96861284 824010357 640453810 868089791 85403286 135947553 115776990 841829587 825414958 901178992 881464743 974144787 675949298 987582521 971320655 974003554 315667829 873245428 606684924 830274625 274246305 477177910 412758931 432885474 285189986 949119645 532339421 951770914 215064977 692107310 220367480 732966362 676640026 827508258 351033133 683631067 179264436 427135459 124248068 987049014 134014118 691189262 170034034 679458588 115916807 417948920 328566827 546621603 143098617 604735688 359475490 944550897 174656353 665363909 636104712 807212793 122176896 803410759 387926759 892709990 515279410 912675162 352030636 941993740 725340003 918321838 675514691 825032471 807350709 960298867 906338724 973190156 505941409 772677682 667368192 766331574 709845949 984118928 737843004 923583647 836461861 979655441 15823229 439658996 238612971 317511723 179354439 362226044 136374904 613181232 335274781 915723788 27741587 620635699 253627260 474664707 393138288 431517297 345356257 388862641 42765385 890606817 717642587 826318292 753443872 874437369 562647224 860454658 348563560 384465832 150799177 326366915 298393728 626780802 522249941 564256391 56419590 429763207 87726135 466145843 337730740 588621392 345396248 565515314 305529869 361693020 189070811 780087026 417068682 594128159 555335078 756374383 31096407 849598861 495591435 863038205 90812076 675641318 162860096 979278462 631142054 935788241 199046458 272251988 255260897 608745957 359721998 863743914 55750097 210665461 22812031 487118069 152087954 450657150 281919583 680352932 332110976 874119950 520919696 746128182 159825484 481644149 399242399 809202781 213046407 532263508 325612049 876972786 239757290 723319411 341451843 805768665 736567325 751999717 170386727 790958965 521462690 695575300 521771481 683956217 640021778 665917239 33937424 190998707 47319621 548940124 18725366 485823534 56206560 416544531 355278218 442514253 441172431 784239736 180436502 216226583 157808029 375093685 226068470 444084506 158955702 781228049 144270790 998933110 324135390 736930890 466294214 791250499 559428295 935916838 141033232 234647262 48926553 114495572 60218088 520699335 289355528 965932695 184739408 583584830 534499690 564248746 430919121 869722678 181117862 641216806 596503455 661708160 17094877 557715959 444635000 622237261 440359531 721525550 145704461 877488466 265862226 354943320 46609002 165184296 143808569 264163324 162070833 334970528 284936065 555287298 170225121 312054232 75154114 527000927 455476313 977450657 45881222 296276952 47248588 536261662 144922090 351787083 90210295 332449997 40646551 602224901 598286279 983936036 929239175 947102903 383306418 949602347 236435711 638682517 75086379 831444835 393461097 661355076 209854689 571627492 212382439 564738442 377276070 596379151 218718784 502030329 362661586 591545162 165867869 819839488 603653389 947943943 801304314 930353951 189002786 953215578 788680516 898820190 414068613 579825433 310755497 777061300 150647609 998599727 214151818 355189863 354343815 589296906 575414438 821258712 569208559 893435308 97597510 174137270 120942283 536730791 246103385 704392628 571958192 856334549 155424838 517448791 35459873 503046931 301810254 511860642 133982165 328921039 153499169 948954991 760136363 936027549 465849540 647501222 402418969 927668103 264193311 682378539 337392619 908787563 817889027 869436246 186951782 634534935 17342004 146148708 26135954 434087267 52794108 664480231 126296362 317081432 166152107 325110185 76226784 211665510 97584677 883662662 662202916 992936838 75939266 473657291 319205031 799001578 216058428 348895722 112337678 399927760 314780654 892730493 79281226 441140122 383816836 574252302 355814027 828674808 654027195 698381100 388829997 495225940 387746965 431971127 7031579 233439126 208652215 949823631 718200141 985469217 745102540 896623324 156972376 848349479 295004537 828172294 519329396 675515094 279450929 506922373 457934714 909071457 450348711 734212472 458971518 693179259 46334032 814886232 31016907 932805077 178169306 813625158 415215917 466874653 136398933 784098704 396822866 970732789 614512226 836422022 270102503 610519232 404816255 567308243 524792785 568781855 254641067 500540808 484706907 673500804 113468627 916247909 820980707 918457103 184069118 793789655 318510287 938865206 620725302 887881781 842630361 969161065 319537737 412090941 392497901 478709491 441181488 876837001 638910239 910257555 105350157 701389082 401775574 481710203 198687515 677682372 96415782 122480334 73913515 917688917 429484072 531114372 151295547 764857152 38329015 167793077 146767940 159389076 68828974 721720958 349706596 564575483 100571504 451265502 326309604 649016770 569633964 829967038 550000424 660201253 515199009 618538207 112594606 514439337 96513322 182346118 150995138 315507011 212423201 415750328 148928304 213310944 87816572 177150959 102896968 690781908 222213298 389464896 163260152 284943972 128636079 851225385 139709652 973475665 465548493 649397974 29602295 609231420 326683255 816378624 232057861 617815580 266027038 804932449 415541241 758569019 99784109 577153098 434586014 912430903 761792058 836190420 565567426 587729225 416381930 886390630 405008987 965125762 810368814 852741336 491214155 588480829 62474868 518701825 70185021 770820514 92317810 874646104 223310477 889568266 19618119 700643313 13063975 528229248 394746077 402370350 24788639 246345312 222395984 995708978 164182056 335493884 131701761 334142173 90131761 183631813 173805985 935043741 583102901 762718907 634788680 756116257 578596852 673696641 359658145 584635962 466534967 795447353 244301922 868061608 529831464 559703929 263648816 718480468 25187308 997038072 304017688 510859062 158712997 862724429 9424350 190341150 98690577 997584999 360254768 771497260 315904839 397080169 94704036 516179261 321866968 572895178 505842977 563756712 321896780 466080928 425709746 947072196 543351242 565331402 381530917 759843111 755523751 882220692 113065399 873172283 658665587 843897046 567796083 627645392 528487492 791529019 351898320 473962089 396058789 459247220 301225017 493447781 400221994 992273118 93737769 708915105 151811367 899850468 153991356 964611366 606777450 986730226 201512277 625572641 544933623 785621628 544639159 699360025 241890698 816814836 119750631 477862525 259223745 863560516 61533353 277698089 243762446 680522217 7578530 925694424 210378583 339208749 152787265 169513340 129741666 254281247 12565798 103790556 90296794 679915244 478802595 750880596 459867630 816947472 390872930 531986086 18088033 971547819 223986303 476943976 241959516 903764574 496198824 579214160 258632669 331577671 313719674 375731695 20397769 895621230 103879811 173386588 160958026 446645076 330090373 576859815 387716156 832684125 386573866 896911733 161870596 714772335 400882452 730355663 712439488 723291164 451649585 467972945 287064942 653294431 438257894 556019570 465036314 476742413 6793189 446411221 164234579 950134602 388566345 837841185 173040258 415061275 335780810 367664742 149775863 554893615 530698698 962984138 341567251 796233810 767139547 906352063 840062911 873307853 827732084 844134617 352331632 551448993 172385590 977314264 748512826 824535497 156662647 173859193 81767733 936834970 112702771 173488639 74694336 505828279 317732184 620001993 51937263 597589612 527824347 700575048 377434785 703723417 398060457 791979031 530679222 943675906 619856100 851245085 488094458 535746768 56256806 209255532 198010626 919325345 660187286 815916528 375596718 989483835 341634229 544039444 145416191 769274091 96008759 948749730 588843596 651998332 96269393 251292917 241139769 980960561 116014988 135011274 1781078 203449925 162493585 598215411 432472441 854819672 446679661 892175958 806591404 899050057 327274061 372002228 247846774 431386973 110949488 142641229 45715663 787927492 126728417 933567687 12693198 934211857 491959026 818803987 290379810 823571567 305983054 642180149 622358097 914885647 605899040 989607110 721610748 762590036 699691205 738452480 123868391 250578713 215901889 254293167 133217050 152474773 15059820 437893604 108183991 617810317 87230621 866317960 783491603 961826847 177550376 700097884 206000705 975114094 147669821 363249113 314530644 551925355 137434660 930640650 382757303 801416603 58137797 857021516 344488167 729619997 621781466 813455669 589601680 740438911 127407821 691416198 451348487 616038450 591073851 886304842 777281732 971550597 21016933 420823417 279494082 833905311 167492468 513044410 99744398 367179788 251776279 980538012 826042128 942416959 759376364 855657553 294085847 478908182 346014358 356154790 283387581 416738088 247229621 467215812 78204037 709628810 564609126 788214781 617765389 687278297 196748424 788914734 683576087 716950835 615310908 960859959 425818169 842364339 444955336 473295189 162493744 247020905 140210858 338627234 264573194 937117123 708897955 709454459 90585019 842195998 544090875 756932999 231655956 706984629 530360508 868475182 587467663 951231942 99125457 560453797 330201591 631429889 561648138 957917996 249116233 657566105 198245598 416734101 292864666 860907131 753123704 862405913 745156957 999790071 473339752 835227950 251842459 894846041 855068957 887888723 266443847 427784822 101063871 407552677 303702961 949168450 504175509 671187306 58350294 810033166 794107002 813971226 279161515 901079408 234956321 652912894 72301521 319799633 209999656 324341198 186751045 708177858 368931087 726405349 367147541 537472847 525572375 870965706 554956040 853560754 793216168 899972311 836048096 884035977 281015738 477629593 458430962 544514336 463696543 884875609 579625556 679180947 62301851 585852741 1639884 690999627 222615669 904900811 243540849 708821047 577695223 664363734 482514519 892779058 591809991 916932584 597211542 661895765 78332152 812779305 173094943 997809161 874455871 948623163 161377010 431666101 245226848 680553356 340673133 652739239 465295800 733492505 58073894 395947848 234083405 836929522 603310622 805041355 287369893 702939714 216160474 356199838 190533521 359508690 313321668 856719694 302975380 800675757 315422263 924495370 144366864 569135377 7519814 861108205 596483057 818532029 189066777 421223030 68470607 914860944 537842351 730579579 620118832 673422127 11304222 399263896 233195202 793320507 282391085 983724404 532562587 710909582 74710461 755163076 384252811 537911705 171875196 718973980 90778133 345590648 87884093 794424055 444011126 813581690 461274395 854925670 803124613 830653619 798257867 846043549 784320897 799396320 209355011 616393716 377799808 597402472 531379722 618288286 137833449 759426044 164762655 857752499 473479066 728807398 586526798 744267820 423362643 857506899 518430496 652108871 209389925 228222318 110300521 122282504 46760979 73360043 34734786 216452644 196715589 894419668 834666154 874688894 496544418 647929391 134815543 683103430 354999608 737575874 166978158 282930934 77772878 271744004 60658913 841572009 628938077 770893303 657582434 882459612 342147240 772082631 112067724 197528930 24412715 433327472 71081928 668930816 399101972 774305607 331296294 757443144 575475829 638933685 523468975 781853516 6026547 107671555 90692260 98496399 31072904 714889154 645535322 939459807 638935186 705306621 614076810 928860576 816529248 862134430 622597191 846538735 111679503 681043276 79947917 678606724 569944193 986653855 630971239 684766959 53059257 82644155 13302296 426573645 54255922 378061258 315941062 880069490 649754130 885120274 846016536 999219953 959731498 993627300 320460508 375162117 45548841 155841940 101139479 466769092 240990283 394451181 7416547 926003478 381713861 981940053 822628394 848490791 582940154 600023813 510637755 851969014 572542528 983772479 366579117 537433205 373502924 874078088 278426585 577567085 23048466 747150517 201327717 485179943 169358603 895869522 893588203 922745397 626398722 673958268 66044408 127031468 76492091 510817929 265729426 614313765 287561111 663756388 562013148 755788548 665578906 909619879 671979794 776691638 81006374 798788726 241690964 582504973 139048972 513524331 359535863 747220986 357138034 409434164 326240794 520090383 504598797 760023027 32660536 633431242 309184281 928285978 295595961 561634779 505399420 733072590 468687668 606484593 31984172 915168055 530629805 793416365 579263366 699429147 571993283 647903505 174859635 222699264 166505339 476117504 122225067 594322211 45698050 972784273 526633630 854095765 264908759 879970625 476847041 528947946 509317996 843028624 403582285 922117759 822579200 977268400 269070676 780272209 140164194 877345054 641409729 910721529 46118198 961170694 14454815 664047608 547069790 977200493 105544879 609081376 37824414 634113750 135255409 687245018 356068112 481622119 319630175 852086353 46975472 303667112 96152804 490666351 250130344 899811712 601999108 685814312 524490468 681132797 612312363 637393367 259397998 415238933 34461433 264409007 73874722 341539194 236742583 803499962 206472678 952896589 376340276 966773209 131767065 638389212 511468477 847563700 97268265 969039958 500168452 845634473 123484119 835530173 775180730 923152735 554654159 640874194 479256182 612808582 169357664 176846216 3558713 950940565 163989270 196928003 12313677 120958512 58590058 707588881 211225702 331930207 171023822 980796718 914893927 930244085 912087151 946638189 499748355 835537998 561999259 565397745 93051498 304874491 219889767 684059056 417331177 724226835 642318046 807741552 11201039 298603420 135263247 483085576 259428516 350229627 279890062 392402227 292242482 908676491 696247172 922365357 538759944 925966066 690246570 944583432 799411004 987755778 133929213 297486568 95208032 697374299 307418141 780905224 583829723 778487906 302682839 627404601 390115327 952192175 741463027 781935190 624906162 637233865 471236655 988467006 386922712 412121589 183523823 466097596 428715181 823573713 245249078 247345598 234882337 653210154 324534328 601386714 28441777 176269729 32137373 77228358 76909916 179984542 103246265 800344443 493219410 494814316 45878334 598795637 388501945 445838062 53152006 133689611 122240047 905799577 231533382 752501623 542202999 614901872 250723296 561955381 240604867 967595722 510377853 555173193 367971974 424271432 220132960 399167687 221511695 524123073 463364525 899034336 727198856 797600478 652496879 769339641 201492857 453552353 169591373 331281776 327712070 546341898 120566483 384371252 12852626 177387416 10988463 234323647 213984999 426898566 418856651 806880827 151998368 543678145 279339214 432305099 13872182 793569408 543244694 955004387 614052293 816095673 225445713 380179741 302837304 831502584 363639869 373127015 197541734 668898646 622475426 804972873 254347392 319980413 203997995 525767218 313576379 386991829 246763652 300018271 215692011 262426497 55657169 662082946 353643113 705161537 294102147 624207691 396026373 968936876 606116807 787391953 783005190 840360173 489116010 789595665 200973652 532995213 475911797 582804399 419830436 829889164 310079299 897613863 170496401 878747492 796800849 990711176 330745429 932031512 26527255 515095431 99889498 208075227 70873632 675047138 643661995 644464029 490155760 732945295 611620275 710355664 167333066 488732239 486465456 802588544 509058034 800182127 622057263 987127702 529559318 870375320 364814765 941332782 876750002 959130494 538979707 917491669 49757876 754818588 73390237 974229097 785784392 970421811 131073123 730998796 607686302 700988896 167631080 354446137 256510870 459552158 41432054 47973313 41959274 120203708 67864707 233390178 212191789 939637974 396889590 487448304 128690299 563509219 325759100 419928853 33906893 361281949 278636364 285506543 277403324 361572068 217106254 788319973 679478408 860050903 717963140 964283100 173389468 786406028 57524996 808225181 634043209 995420093 722568417 928515302 378235635 408290415 136991817 186661955 152154200 436959618 393942417 728437540 8428928 492461661 262026844 714819092 83900904 593664060 177530640 573928988 19319652 640731986 228534078 501537076 70495277 923048313 210654665 835150137 318389510 970654339 832440180 888682428 91262898 616613274 76486057 217797966 130633446 678550263 212503465 423156980 266454243 321384588 133115651 847467531 430370316 958986849 369414474 482859391 192630812 470104324 221348282 791250514 137391666 444351675 184545721 852543528 390071690 713721591 654724721 664297169 286823045 569907819 137995841 814048518 770194199 910562627 835748436 900488506 525759603 726828950 107813511 841367712 592166052 840470301 108252148 751829543 713889818 828610403 177798900 838523582 212961974 642642180 311554158 792950621 282802872 573488700 419568138 575298088 181231501 207576723 122959163 800258504 164192098 327515351 83904659 549905788 260486207 865256177 357560847 958009542 927343927 969438768 948964115 979791313 757913761 965537094 874328476 895130918 16863772 170265617 139513291 451264292 423652199 468998594 244305448 636148696 110931177 401637781 133173848 519377367 370049174 755939808 707663479 979141048 387327147 910677737 71942713 783625857 411654398 541193090 393936999 452499043 187513930 553794935 493545933 931594845 205262966 982621947 87778064 473817759 37079440 848024960 126049135 333011253 29577423 615802425 272546476 841543340 283182527 473273709 53136507 980036681 933060128 995532025 591701215 768043700 662800162 874266515 229542896 379564401 188181234 754063831 679482258 976985720 218486596 746564847 162253686 597046519 200529387 472849172 368932257 747223410 302195096 316091571 168916125 189620942 153642853 875710834 170988263 252754859 231174477 295392956 228473587 793170173 325372444 417062354 121862615 373816236 165115688 664410851 414258009 973817786 659458588 902166479 277383253 464296665 120468492 684613104 381831662 806966445 266749442 922012165 123634891 476840937 48641179 665619333 458630784 900066561 31090694 233659039 49068334 744054810 499078380 718525367 239699157 765537912 260609859 785900850 534264912 937696686 669986354 922778494 113720680 233562406 144215138 830949385 600090993 627963218 130510816 503805202 287127607 402450662 290187949 389721325 313642360 866933099 603795416 700913737 208552947 892201380 133675734 600333947 465457938 919324207 3236060 959865308 406990136 978905089 711141955 713553795 414188324 895034053 249379387 496090626 318532059 334117496 180809085 896389121 385404168 700116047 628298001 789217753 258915716 416521481 246753895 764414047 350223250 599014935 12999448 450839570 325081881 863214133 491660299 870345669 179572471 306747249 272898427 379614011 110617852 995316732 64155340 972009172 579136531 770323742 506846565 877928375 243581358 556798376 418892869 896003698 70678223 920474635 149762752 526154288 386569374 967452410 328230040 894640187 378098768 715829665 685446846 934218702 616296961 898685709 540336029 782769206 564966615 618062122 384990632 519033489 187461018 848310941 583389489 828607923 57848043 199084767 25240993 699512830 9146172 819126429 330862009 968926553 535895338 963616122 583948064 600783093 573588591 955069529 328260916 566409788 159623690 870888807 673779364 867488140 470584477 892057219 24249131 593924870 398260513 911967642 230568203 944268081 355523168 661938917 140206626 331524372 269499832 577883832 109688156 755763360 593511061 604200075 370980647 743005840 433235286 986515452 293451296 423662122 311694469 351876366 72737578 828055578 642667250 771211933 481380242 536394843 341023140 899713019 758307308 839632347 348523187 880995187 613076357 616453341 493733515 759188386 430583627 824367082 766829215 894776931 69379932 508325477 98671129 630019232 375167087 970983899 116795766 444950410 196898958 684603401 178648687 990685443 645254323 706836181 415519871 827220566 298864432 430318878 402933086 762100955 549543468 987332568 11590440 609333691 263120837 884978955 553846141 947537648 142343439 331625820 274127449 872427445 384060079 502601104 174335807 544105897 138023531 354496579 339748292 682571776 80652374 592208191 90977050 327489063 57038492 71342433 20010392 764248047 320880848 578352268 422294826 490418153 377213240 674969640 577457712 662797272 101795463 348773544 84688260 609757698 169784344 428834709 131061356 448685109 397370836 974024396 953628820 991402715 686330416 852887755 584390363 644923042 363274046 934418374 697446770 845980055 75346067 883107283 834386004 857315096 148751760 641721387 622685919 948179528 268110467 317440006 218661551 466559354 420646267 496438836 296969064 402596649 161183631 937524393 468664464 471822769 107488115 708160894 473290764 745370631 97377879 448204898 394270106 444571033 37366048 566614961 115691589 380039922 366443683 937901024 708123 450579870 4897852 843501293 578415398 865321652 709483575 762490874 687377749 732542249 718735188 819344606 124434900 628927816 358797328 986730113 734772220 818937725 252272021 796427496 164925888 481681273 443591540 732143924 49199648 801712351 374164245 519318873 194365547 365879512 23221543 820910392 716663414 945868697 326464507 871293068 28539271 175471727 35776190 527507611 459202297 700148000 599069964 650833859 371001338 614673627 319683058 807460443 158604111 955566864 562633109 705130663 189308660 493640031 180338710 710685224 689382733 728328135 474213421 632544499 250519712 830062850 416781855 430908874 162904230 892921940 292590387 515488096 401391972 853017169 867195 198459726 31242868 788422738 141232789 941932620 589486112 969837139 203352544 678265583 637525599 829656610 26114811 654392767 31390799 706890481 668258863 672254381 479750674 686670094 571914289 726914271 223216946 629372876 514100362 563561293 101633311 326746221 198369438 440365679 195835926 890033801 266031322 807061094 533617873 844408766 38185904 996459079 210336017 556857101 241132146 394599918 339103958 373995481 311866912 346145389 308787569 828869877 66164245 109674104 103519594 922542990 52816335 794414173 491097062 831412206 696365410 740579864 34659035 495967978 487090340 665022954 419461582 544250910 403508052 673143143 477843947 693377051 168736742 767245245 227660184 989915777 546702483 669849419 376822511 623252204 465069970 763404285 536175034 645165853 496176896 608365963 65154368 569275147 455076704 657685378 558062429 740434143 241378904 282423807 176010502 382390003 67849397 715294636 444592641 975055699 743750655 856219087 850156318 860869625 353364239 761604191 759771548 960743406 452576307 887343672 444445731 711541673 137972144 181058357 141829184 300191676 286343042 630535572 7313843 857950383 388496918 813696366 403157388 768834699 603621268 615346104 393539858 588006956 209180637 763529555 455372563 734620801 58131655 337102751 28915259 730833968 419561308 580070378 525770778 977898714 847246895 928334123 65736765 869056416 746768989 799140206 626921856 697862113 322251200 880511214 526514070 689829498 4636476 203435433 87867277 685778221 46935692 926922614 537588888 870147369 226334684 304635249 129615531 980548981 645637228 780275969 478572251 569726974 17975078 166120949 107125049 155122926 11670785 204188199 18805071 605057801 4945991 482718628 292142988 660775889 541925466 863830641 224384579 926300153 497039146 611253543 410520300 599916396 178738930 511471235 212113681 882885382 253175903 893089205 694806092 949341121 132839664 253524603 217260007 565073983 76362495 999124675 277676751 333576975 27662160 424080295 237573939 539521615 48574475 388211850 282976673 309607295 185723555 515745810 143711123 167509467 9789790 101201374 68974878 217716798 184379387 938881942 781779619 865470841 356888316 677062493 194934574 323168250 277940094 430030872 275632805 571754834 381204216 824494417 234230524 987908054 698700108 840299976 208713687 567587101 218486618 535124321 152108631 486463458 294774521 795592550 587626553 753524034 682064333 995392151 239989260 723632097 590388043 767782107 136252283 740362957 136785743 690202845 182615069 740529883 330296424 798475261 270307675 437523056 185737328 848744971 444187920 513949832 417080735 604845737 508655662 874465893 169404775 984380496 850022790 884253337 732913274 992799333 207097351 883204264 356822443 897434847 571881934 808354248 212071121 918861741 358943892 953490495 93876062 523900499 23280421 958979567 943649457 962607531 358505658 874642050 766254475 956086428 129982896 869418114 456729677 835877315 823681638 978164387 720932374 782075990 449718526 592699065 441097182 989596266 210988535 798067520 215177646 478502855 271536992 803858842 505078209 949851848 174013984 238462349 100670461 262559469 86901561 664507038 56827726 212959004 13858942 983856157 320477838 894313902 714139135 821672753 326675152 884384976 601154526 625484428 134884678 389459042 323330443 618911711 186115222 711980888 418444152 776172711 196157706 253273376 139996592 187794581 136903711 404912500 94932179 497824497 339692644 385073404 4404644 197536975 169986821 194986102 29577673 589899488 589658629 645202848 230540604 249649687 16854204 993609675 730749503 976971247 671823085 865031674 272426345 968179336 400507818 607279761 267583616 954577843 228376816 798408519 406923854 796357647 316536712 835264254 9181033 899225716 761986727 770846706 641054748 676396023 530709124 937711702 304106955 816586315 506662358 533765387 311254936 920739897 35620095 486077112 116148725 314568707 103670496 803973896 361282985 879692951 598374338 767801472 102697827 863864520 636532026 757656746 731360717 830162901 85346904 903892433 707627082 765786715 426082298 795380866 610631576 624969586 474676206 691364038 411289875 835619287 213287808 753695926 295903057 665632717 299334119 928620306 688984380 906907600 195475425 498503732 37088095 221520011 158199354 551548554 326603425 411622607 363268917 861733020 232611003 708012484 630214127 852313180 281740790 510346481 93561518 512930220 51032569 871096977 575588187 815979111 196987564 360280735 29464814 562223366 299933167 785682704 289645960 322176906 142610319 668388434 170483218 617671580 438783039 609328305 360309746 435647761 221996057 393832892 102129497 320173479 296811232 842488314 600287721 639843025 336862832 879890613 270680950 503060767 376576199 660443874 411272555 942267522 741165829 838905667 493875828 711200480 95030400 492360511 242587917 435110861 254181307 382501667 2858021 379678374 314652463 835983537 785456098 932165497 728647874 781631756 594044256 983127483 508127027 516846350 500897105 598923525 12138568 737811846 118910341 264514418 239747130 354027142 113287333 511250258 466312962 902947305 742707876 909031400 165327786 235159684 200988081 706816405 633135139 973775907 219472366 282869577 134082172 833160554 613874853 703977868 15582734 613490451 170319396 648759727 299612185 380445564 317625664 650823260 524963456 647014133 442018058 593084764 544811479 583180756 579586114 835964228 142168366 447041942 333555739 429421937 306921054 558401030 412795674 421272965 261731456 675474557 307729102 318356359 53656797 135753973 131985623 795551071 105906961 468053043 4131657 291973843 182154881 185722553 184247536 277306779 172753759 941140540 124769904 502013142 289578205 861827659 435392090 446213868 166352334 883831738 197508474 786199286 730364550 860637303 800510955 915960621 488168393 760216912 546970147 694913270 20585732 867202109 367650252 585710880 112352522 931537230 476302256 699719566 454158919 792514695 133628360 559092503 57935341 184476460 63276277 744526873 727755362 880363393 142960048 172388581 78699484 937514911 615382805 784336344 469618771 887786796 322748561 541994058 147781385 319535286 104644940 738067232 546261421 587683962 319815420 786269428 714531958 978638430 603051439 940056970 695309980 707474852 316588439 470320508 219733508 902480036 698264028 96741511 179200224 46246481 103197849 29885749 535900706 221621178 331900305 202794992 330881490 86055199 802243049 130632038 501121555 235681974 857912842 692914072 738342611 340818335 650796382 488959125 837333298 207482013 776905723 500381213 812889946 523735966 744210601 58036011 900343426 574968547 626697709 451229559 610143991 525626058 904131359 495946071 973325360 715351409 728391618 559691304 913158355 95785238 402707178 389196176 632471692 357723849 987312752 693375167 867183479 66281348 235739766 121360016 270520501 157172071 629873861 201367358 349528049 71706359 520504930 398865323 950755038 518281584 683711447 100795649 806534208 737284656 780889046 776696332 931605940 752867328 794337069 54801499 66595185 32326880 733563827 720371520 863375997 539731500 806748905 330313050 747211657 177535799 750743552 701625878 929271786 252700623 435428991 349772903 364375194 39049470 465495620 400314935 774829446 543150451 661386800 561682935 949806223 835948871 962854881 952117489 961622856 278144111 974491866 410225828 605164848 146310951 553650696 48949067 493535968 237860242 795262283 240912074 693073609 27380408 847600646 734834361 851681443 229339299 305663611 300954201 805100592 420052619 761747435 441469878 869563019 42189167 809496548 450976992 656615201 454785279 598817304 174303832 833964455 430385713 970690548 78319337 436909563 203220938 754251323 658597865 807399674 313901909 460294678 124775137 576830772 84658938 796091773 570544597 904867017 793873056 932562032 336947945 643085156 439259243 644129021 444525157 799774970 298711989 325541613 255415133 634070042 335491738 520934398 297166121 517066028 404466507 696811582 549549820 947978098 912936531 933675513 262096764 814104892 385111830 932220296 595753211 633535556 290628794 611754863 383763251 751367880 609622118 873234321 356919880 388722696 124191454 399565547 118743740 696574105 594228979 602600179 589001057 651457770 589804520 877452240 339874189 801368783 272023863 955410102 176680934 187133881 142240300 408104331 43530870 451872198 110132630 527642535 151465312 610926136 546982369 919968344 706440621 828846978 674931459 942408637 838203151 983793955 100856753 443553116 200899782 216390001 4928275 960551628 248977769 714371018 608291795 717012139 217948956 285338194 182112725 683194927 17245682 880278913 215689549 283611510 230746365 701957364 588376695 753427595 190704806 692033035 408462160 945678066 408776036 719049091 321050422 933290833 893057326 941890519 145090697 583034513 161782865 192292844 190696736 612368054 95209688 657077414 411528023 540914377 474747324 747865649 672737399 809914940 10843765 123130124 23465709 946333367 127276176 677784585 378813753 637591645 497727759 595988136 317325282 967444226 883053687 975160562 431740640 807651685 382316322 854869752 406007521 954428004 852739677 991218253 160508184 470453353 130931044 885007537 366628068 670482742 287041815 656526822 152896479 629626098 172978876 381510670 168527496 678962126 213275404 668007317 438620546 748361328 90203547 194373001 155619936 651126567 279954367 353492042 238127269 564471000 217905952 988802907 598752996 700190725 616909039 904371682 20780786 880370129 206004488 960546840 64271711 74472954 73517598 867236665 52429984 219626700 141100875 938089374 647716689 806413903 229517758 465769714 83680729 348991004 165089616 975072189 581251700 726512672 31589871 251898261 77051413 636887563 348896810 866691076 838449056 990457186 500567594 886857525 454767588 548264235 135502489 883841128 395605157 662414805 547414430 988385499 71239973 411240396 42015955 100748185 10957022 877338138 102975143 354402887 217669504 830446422 343418336 757465762 485480771 805450730 222977415 590198758 277253834 862791251 102734772 824105523 239408419 571865440 148687602 578750803 561018152 872290310 787223482 866800983 118663617 330976677 269310638 431703339 165902611 655077782 294627090 848542706 558300863 721488837 31618583 779970891 355819497 799793127 659579497 973663769 962120756 970333775 54366524 462982414 181085539 544615020 236470750 987897107 794580884 831269957 398839167 707820087 114578836 987054711 697776515 747203981 188213497 343067221 272799629 963030027 136291981 423556853 25689518 781769328 373180289 507553527 352248919 575986433 565652330 790276933 352255143 394522542 124044759 921169280 38694002 148029728 81528824 666144248 7298468 459226293 292876009 324364847 230948052 455077272 265730541 450254731 331967833 896740740 340477029 481520828 63838135 718279692 15806670 228175435 206634404 980054158 863168223 921648074 192092724 442955710 282546260 908816826 523061143 739433740 112091535 820945575 496947989 952185607 549754022 896041081 538874370 863047867 128968769 986524008 860231312 965125572 30621014 980210212 33302963 135877592 27327899 73894698 47092644 859874582 496492951 990454783 407211160 676229633 492515235 599474230 234963064 371105767 74239057 977085624 55691258 164668682 76767538 531468887 518713720 618287134 463397765 905433820 384187520 950741582 571703058 851117346 304153686 873536379 649778453 863055005 444359518 619108950 178576461 495178452 151146452 609690648 101164711 510780023 212284963 909677809 63404635 895368848 56597107 293685716 68669189 164428431 83670263 594161032 219916681 369780237 99933509 513082119 109792336 443218019 67373062 517173770 236389707 535641823 156288257 720857346 75294277 828032619 450752657 619437663 556251794 893296585 23049255 766976875 731945376 788645507 167223754 413846508 355587287 725483931 119535053 589921126 478113344 722797538 107777115 606138141 404871018 491293286 45144131 394178165 215733244 766888072 176487810 874834739 433456816 626304708 556589230 704909584 592897760 848187247 8829224 759576220 233578654 250710302 60032397 405540604 178630844 352587120 184925890 459453678 116354498 626492474 277179594 653039623 132788795 350135119 304508983 992811893 633167232 713061973 192120819 429453719 233631728 795899537 355256571 638781784 156630973 368070759 47127992 91844991 53441386 491407453 189849387 279755582 198620063 241431557 125850853 264175670 220949067 849960517 827525468 838743057 153729587 891472275 749168816 755320892 71670613 682867341 468598082 602281544 222525898 910718397 597270281 701833329 73478275 594722306 257872689 383189709 229674055 881116595 217004704 502493225 246998468 588736307 581548089 950674317 546508780 949690655 735394616 928401399 524183060 588038669 81881115 419381007 43885838 980977982 246119125 606212462 66568001 168416759 129989703 431796981 155139546 389259666 138337715 553834096 67586627 786327530 231348514 951540036 814180762 931002440 199509349 710904998 83144858 261244555 179991507 812963081 257718126 649687796 451429229 636411238 315438165 493866045 75761535 114298493 12943251 71774444 23966871 646663303 387487828 701621765 422399337 634531634 202785377 757207823 617797676 766176704 486357556 967987951 775605982 776023112 724920093 743565452 655671348 954946387 570448400 627184974 485903950 795217290 195540757 405614361 140508686 364566928 179228868 372203322 15962891 718867370 648480252 901859661 196613344 250732388 85034978 875923463 333798699 481752811 472900557 915554479 574564299 695771816 80561387 646424381 85072862 611619294 348184232 995538353 97208936 970768716 891792623 908300480 678234011 846452467 844502255 858563367 719256689 951376460 742501821 895316026 753276123 772922837 715097465 884987650 315326479 617495725 200228341 819363672 110401183 647475307 268579403 904599480 797299831 910446970 374363178 387504565 323146650 661384678 308173340 650942592 644717352 798269208 30663798 803955239 293364319 452165131 374733236 823498257 69213026 453361234 184393303 676668314 478879134 758898891 408340500 703019622 279073862 484134387 252200846 431916064 146319797 681649113 147068994 597741813 259331015 647148873 488487251 797826902 54113334 518395623 234640441 491668915 143165757 498385278 87935059 190012122 58964734 228868450 11077076 85235997 24637244 235813551 24609576 635334790 434293529 700270539 203180013 734854693 7606845 539233842 421950233 985175834 359593822 385972171 60383050 168930305 46179829 360219158 22247195 574192470 145591704 470948161 193533105 295133541 131864581 810907437 773218310 775460539 298584450 971730115 337109625 996321348 971864538 975033288 230082051 739451590 465144032 732757867 442367190 978761875 285095132 354217215 47773407 587246559 143253390 635607235 194408744 499254636 277595228 383387501 329114443 787580257 504982357 533229219 481510482 798097949 87100588 714508931 142676626 359746872 241648765 532366826 343782721 797803864 702266101 831709803 773905802 806477126 11636391 466638758 607719 309277917 49035944 955169725 245316190 773852921 304129975 662479937 623042817 872597934 786518056 944388092 50998754 638378215 235219982 665082357 563060487 639037917 358973320 811108932 110928672 229252622 30215019 923666046 115522238 826853702 581328485 811368546 179216988 284088867 131625795 424810803 370608510 837845893 825122676 958465223 924650428 928150504 51777056 901427773 695739312 824447768 632388937 653305675 614491770 954224539 99541965 480439797 139734189 547577706 239740844 393876007 315693116 845511906 45044586 174551093 73227070 745630155 565041244 770873837 729855722 912237739 153982636 901432146 395757137 763722115 564749967 690925036 75788976 814728418 226855811 293915600 169007665 981035583 101887383 595335687 237808750 401893487 105022197 349847102 288585462 321021287 20369366 321965854 83224610 239040530 134936595 542567466 204565538 231093416 112237248 580642013 222360761 525259802 476966477 920383217 672472564 851899527 536621105 902187890 619765807 996703381 252456102 592860536 530867995 802249505 249438436 409405786 391493172 523725597 301214959 401125413 206169121 521224902 278689196 781762795 580576845 819806573 407842939 857446500 700563043 705821014 511285243 868301666 193447878 834415321 498722726 801477796 789302981 902552546 401855969 594218375 2958470 505521605 194526787 799070936 364970215 978501974 602236890 915623710 103109921 819194517 203002284 716083010 247420527 928535382 227826334 378370435 61111544 199465934 142696993 686073311 637463807 865517066 740162488 790205580 670425319 991690219 518442758 801360337 571135810 817169118 783745671 899568725 824233483 871594421 236626166 845956465 748193127 794989499 459228711 683344169 537373883 994416497 870809113 892226718 596072859 825568260 268420761 475783297 340206254 356245020 222296240 261543385 107049149 769838839 705034960 993243245 632178879 876203944 398309579 743617661 437995956 679037218 499789115 530350605 371518002 714024731 247688075 315153895 50173823 810057672 648183660 890537463 591750939 652305036 590574181 964548981 257976484 445910795 137952833 650740804 631813882 884541759 5948692 410240791 110514324 661910561 207689202 529165987 40527238 606723913 491139963 979576430 13791464 514908709 277651303 525788216 442036970 807773592 710006483 748153860 628140507 890557123 401720704 484121150 316513842 681616145 83842780 533542742 437653477 555979739 326156962 530934343 457469026 789518309 88814015 511793620 108770324 867150263 215726756 275386485 144530350 376138331 8839799 205770812 186392937 359560914 197512630 859247087 733016614 954407856 828763027 868258150 512600258 617497590 448873453 803631170 349969906 914271014 554947315 560184631 329904820 868977351 7117043 872127574 854975212 932400591 418081734 716684977 364099221 918793507 854907014 920893174 748849459 870728953 305628114 510452888 66774108 283058721 46768211 376631029 375741739 527669496 299961521 952527862 40579575 182132443 171085114 780571656 272068559 961145506 623482554 949963233 604685160 849116276 382289884 813023311 143624688 493517091 469287582 770623499 62465126 982499132 227430766 309180876 182994970 838104058 378346357 701222664 424263788 974627226 515253258 632505626 558932985 853744614 818409006 871608526 236170323 713974355 288566530 415219833 173870034 852158555 382850467 788042707 624015137 725960852 58424344 775868816 489792670 924808204 566731038 674929388 432596331 437116776 167270159 611517053 553636399 808319247 740364155 860460013 690585700 706897254 335439079 927445325 155529283 948466029 237362466 787384269 301493387 394686936 7476915 171204077 113645445 808539056 39695055 474619636 75381334 519164728 402366578 930333877 155754254 811747207 136989496 241844229 161850597 349308827 17042629 966033943 377464806 571627272 353643678 578340419 310717648 779730369 383737831 903905726 888300007 974132790 58254457 611423402 574705726 625348713 92212684 127155607 35848380 601982263 584505016 773636638 477381477 758238403 547214148 862418430 156777770 710706457 192542659 587838952 247780553 755570791 341272064 489234345 318851880 724231204 670062918 763375540 465657961 483814792 344189533 947021178 138456383 437890995 429405360 895488888 331537749 404258428 233046448 564414329 46996846 231733118 106648068 856573656 575602224 746592486 69453327 192985034 190663837 207773219 70385057 896416234 399069475 853158449 173570539 494114538 76406486 621098558 209494761 997201857 79149480 414607456 88384613 234152705 28234825 900216833 349784859 524746671 167832226 169613404 2506371 228614059 104906242 832914354 368308486 482106978 361396612 517695652 484136439 601554325 183995074 562443991 169165252 991257765 937412724 988733027 267823422 928290112 713163217 873623873 637411452 833235429 789268572 815286778 390096347 682269527 99963962 627759739 128976340 933107250 81683657 838534763 161151509 705233250 553086265 909843510 34164724 642987088 348046897 953350931 425807675 491876019 126683701 766693643 482910097 730972228 276956490 475667876 49763967 632257076 522299813 617093909 162657728 181426043 21531799 30503006 1532750 334917320 272663234 632077543 433321909 542206776 520778721 919154389 662250912 774097466 78995219 868018043 845460995 925933992 605593124 894456517 160990379 854403876 494543739 751033095 576417421 118736241 719358680 553550481 762820461 220398062 791641703 421822792 559604235 79410702 546742420 50961502 745498404 214265797 436206913 300866779 707509832 209368752 753087305 518191333 720792572 528448395 678098216 4794989 305711882 58564152 560731642 207489184 418430869 155048471 733494652 453528232 790488133 715721350 845610820 276452460 864899369 397349205 663099029 434379703 612210852 399018108 433021362 94474513 114862500 94949441 246324429 119358817 295613886 245522025 730263031 241413176 258819184 203623386 336704425 130267296 563301901 535707480 854520330 355417736 643714621 410191656 856957669 837013689 954685318 318028838 546337928 71000085 900101830 97506980 259645376 130144384 475972831 261931922 345362682 6564515 925471364 215371592 329648414 320820172 361032145 330613297 696626930 302317765 868123360 271054810 467064890 128761906 724913559 357931091 687716460 123275474 622732963 365310001 721106587 594157830 946382109 19618577 925256285 730031196 802613736 185907309 575686979 225725978 408036101 134633726 144291270 85630179 904075991 427203987 863746796 86819667 949875664 704223102 926521595 171708503 824232265 7681407 203374778 107691132 742271233 587969685 776538328 590433823 745463823 506653867 823227885 570661711 843470388 524869465 660904602 86104748 546583792 360522002 720985231 566880188 828321137 270082354 579289118 260002151 769384843 125149131 636334209 166702776 341810610 3000640 323347493 157157407 232383588 22726532 451623841 184010879 226076689 160950464 850866021 394752620 523642586 108564882 708530035 660459884 873584952 87177546 639310517 86509702 178090868 173283644 622584396 242185228 384348732 152242575 114683892 559432036 486256147 694167250 83771588 272684282 67445496 73656415 72039145 932842795 252894180 350139957 130930764 151358813 47751015 478986631 237762081 497008767 49381802 593786824 32748588 100644122 13203908 675308690 444366418 808866794 533071190 910830778 576988205 682543238 58995717 976724752 439215895 843992489 96639211 105602759 45741606 242700523 197902694 309226383 203113501 663582617 535480815 792747789 364316272 728103266 612678474 932979622 292560451 688434413 688317119 984175089 971582253 979459606 473115877 569634690 344936998 661974720 502892880 614225152 467199970 521008465 446331310 511953445 368413094 843346242 87267534 575266556 396191049 211188925 853617919 16710639 160925217 14957709 168496131 154647296 559200741 208423835 984217605 404070409 866794721 130403598 822407319 311268353 932101544 444014802 901007026 39931375 969228568 487674721 807251627 265493346 877753480 23244289 628795311 385466172 923736452 486978307 624743545 258384474 374247816 160617109 516121527 302086274 791487429 775226158 945345800 760076450 943744812 118638695 237390154 82425369 464353047 358399272 484573072 207404693 881506381 783702459 984535754 32745776 221108765 188825517 586920841 386213441 991342539 433116162 508290787 152552075 679739511 24099193 884947970 595609473 840048983 601260526 882761077 74620975 216486704 15618629 55031527 12413723 66706638 788753 323531498 280415902 442484601 268993582 594722478 471930707 757556813 454823308 694641672 176246884 459456817 456242968 822114621 308971604 886017362 712615714 994924866 490060182 878666542 81425465 957293390 180717660 397272549 365229975 432012313 29377340 964084611 845112805 961864878 384271438 500383463 239055768 934780362 410490285 169988595 889592781 346484660 792258082 742295103 747873416 177977906 617043032 426078874 554556820 340839934 726797299 403513952 498269975 174363764 626162318 175180223 922640290 915533128 927945866 310019632 316201070 152718697 162108498 49111201 283186418 195672067 213409365 171400449 809409164 712513804 820746397 624033963 118302217 645177826 7343882 80821204 923671404
