121039
605890453 501826004 715263410 784971791 461467704 222930400 435307039 597079191 279350969 659952862 271474328 944041636 859605329 872467598 542901197 601328903 465545503 650152506 315061918 522632285 326267154 254514743 410984915 362220359 240540690 103202634 27873756 806957967 653735570 118230870 517391904 586687227 853769433 107977162 266779616 885822123 94585959 976207811 128593058 228076792 933517882 555473500 487699091 376312161 594975682 278613165 794592217 94784063 590964262 341277695 263458646 972103660 733792199 996992855 453630655 179898629 101263021 186851452 817742099 244864022 354471944 554205081 534406952 315314850 279798392 843351845 730969086 863518759 733402361 32842849 713248890 146407908 143446081 704152335 874181585 218459285 628922695 70009240 231034728 186083986 553542053 401456901 645132626 621113509 339791805 43966449 834111028 633190154 911696183 242499439 589736807 802395789 380280220 550486296 359912571 654606762 827338401 343311168 657264740 62274576 422160757 782874013 703598660 800437515 281894157 509440378 926471202 711463481 302398158 886358406 709460361 274781698 693780609 485034922 271736218 629626148 688802422 210426710 624098152 80626660 601290450 216179462 562550137 727660722 731879447 691000832 620152077 163820749 302153414 506230614 823025651 76030072 606598414 504366357 729167335 91952946 907497573 665462518 390834836 728916838 66906759 807931085 832746272 451481841 920807437 907777844 15680600 60768243 35965073 190819963 869358614 444522005 580876642 895608334 622379311 542781996 382830051 747098213 585606717 926135568 995013431 722307219 814613394 219853643 760043448 826021878 959143922 382566430 823766475 311553641 914580086 579668409 498063404 156386341 943774804 935395201 814097090 150542770 74244345 680054238 726981792 587029208 262265641 800628337 736259692 123608399 989382317 229085710 898362033 244821862 412814551 737338328 980991894 131723852 573565572 134484612 549297285 348350293 987570327 994928708 144287233 848896188 205570999 485855104 355010114 194201584 711851662 170381817 850188512 93678343 906045362 802806785 621334337 832882751 192428742 614867673 502890717 918669853 681736647 786701814 561293171 49361459 501962944 28885565 839859345 56570912 72772796 109789579 173481528 814244759 237934206 414860536 967811260 280315313 639240163 410322275 283390327 500383670 803759346 883364045 732152224 326789225 520062808 159617736 125366762 636590185 460861667 733112366 896847817 129756916 890901328 848661101 703264603 571209955 586221855 271918608 995154014 290623695 941360046 808989253 464879399 73391633 185298378 848782811 471268609 757138524 702497234 588759410 917812583 235374492 169584415 971471241 776249173 22027535 153337341 813198554 600713502 724508397 231105218 342994192 494611480 446313697 883889243 892060185 278443752 302797089 474888362 831439255 110087621 553385907 645758240 414700102 330996571 462641186 62245052 374590477 315371072 373802554 896126618 397713788 75136308 899248922 253757809 643503911 129039085 747653825 736540003 507266883 244329218 273471103 999161747 256932931 239298378 542628822 491121924 908755052 64159177 196527388 86913497 376038920 208358957 39391578 493884081 69258858 44336308 895496987 335419115 330110504 925293638 369373895 343602325 152010581 239442355 715380123 169934049 607554219 618909314 360219300 693970864 283440336 982465736 240907176 753421968 151543593 416381093 834651543 724776376 987433303 405925140 393557500 375599759 323243002 528904889 506099296 9961681 55344406 151485325 717190898 861823551 525267096 911984111 352487826 978639261 73908023 959855231 219720718 818206722 581006577 34813265 55188263 168163810 424751714 119325028 441130455 216040461 990688195 26408731 607199520 571271772 60527980 226803522 530556224 195875645 549264674 485486672 980833979 921823423 1081686 13253792 394621928 4468392 239922752 402406542 69594486 2295674 380237485 586763998 949324802 165842352 580406747 63081386 595459987 552921402 194192632 473954795 3971480 456787316 322359360 497865145 757502713 242932812 322853406 173457908 313343645 617600131 172779060 866130894 683003327 766999548 179988467 642089305 451759763 320587649 326159064 970323664 929672203 17880919 953603417 228665320 263985229 167421815 374528760 777333091 860087997 824085854 422038058 763721027 335646046 171950796 508272608 907890424 497218422 128129253 203649000 974009401 887816890 298378473 349336616 168763314 797645009 560671724 446155447 616591062 36400057 385238803 590302661 54400368 231903661 25034193 871948981 861392756 646522399 439061330 817083224 912683387 834845740 137916377 696302373 66604088 31863933 486451349 762854944 333500844 617273931 939726526 761920097 303638659 755893878 327001406 576312408 851650567 183824154 196412059 6206774 123928988 778855730 943661518 526863760 261320570 889442643 987899320 249937349 941767322 762026305 368800929 899057933 630816142 63762971 542782731 134879865 669906767 385339793 658990309 950678688 26682306 870293321 275350054 320437532 417096168 373580175 620028828 700933743 158822657 414417108 949095654 247238176 837161609 146871970 70871236 316023785 703147227 727621714 11036474 311362930 234611688 400975263 277979585 444813454 527241067 431826927 200095810 181770018 646549136 524519516 348248059 826275771 443011458 509152783 619437771 789322031 147195030 413943429 699295446 384145148 376151226 585816343 165036752 246293641 57917178 7283384 504016301 191589257 340092349 839963583 646285462 239239003 967445531 105579341 843081286 359241999 402506620 422156573 56625050 929911032 260185244 397667594 500334003 9936079 363438024 61828043 248108501 408882185 977397026 110016372 464205963 411002075 34619754 962383171 274581236 460196022 761291380 594463402 662748914 623448990 853532049 465017971 713323809 655963116 113950471 794990467 240878859 432929037 865926412 883865087 272986541 96324826 281872020 490635230 367334761 451988508 610308313 634760590 273144915 824740061 546109500 320629322 333470626 697167952 288760221 604511459 590897511 864748591 510929275 99153713 501916740 56549251 421110896 189845203 511293524 84732219 699374868 637720437 644778223 440896151 935344968 662946916 532536249 577547992 917389519 410189392 806724039 576846334 351864741 433541594 997438632 105922362 103216160 68960536 21215138 355883816 619028879 690930645 634705724 248556185 21973587 361691255 182110059 963062838 146460622 59189411 802756604 380208302 343121476 962178484 44547000 803594329 637758769 968302823 21919508 372071391 136570297 648189954 825563121 249790360 129207182 916690993 669965901 471826343 132834710 101979143 724430036 853494207 502851000 412584447 705151944 892917020 497701279 534417953 245892852 135450362 620472906 343803201 961042408 788816609 936816702 22031137 931533603 792503643 605242895 377163054 290674122 643309885 875521360 911279884 954346977 195862081 591829581 250084762 110503543 367834472 10313659 586233464 679336808 463789805 896093068 464651668 82738260 169811889 656281424 712827354 543951768 930136243 581243252 180148258 688802615 429048998 826616979 572535710 364823301 22432984 40052468 892018943 205862706 782375934 921110085 418592653 192901738 183707592 711205135 99015551 133780052 552544295 488574211 769452709 298659624 569765225 450572783 251940121 579343237 338079754 785378930 533207419 701809394 619164885 364747288 137620778 957262740 878800116 583755150 531008710 33911715 936837430 79612207 471507357 694516900 388448070 158627974 143440888 757200469 885161288 624224647 769896257 149204626 642625410 834017181 346627696 471064746 320063968 420021876 498124628 762077451 987915960 86195464 359937861 171465735 507516097 448795053 51211246 870453722 633180897 386530247 332267862 335481150 230659626 60392424 936489073 784568321 974948393 989626958 120782598 31328643 672510447 235786731 579460789 710241505 702018875 767301282 933463851 341688244 350845133 766439360 7019566 408698 350081670 461170485 500136766 527390723 766076701 683378310 60859122 239263132 401869918 982500806 669791532 40458362 738419669 605061856 317533497 179957028 494180461 643291363 850622992 860973856 161652127 523484967 576260669 68563009 151230205 332267752 846289604 809730811 397603907 110713381 938436412 633889965 13225767 613913793 554996117 488289549 14748980 277788085 239671573 787226406 395508 768943012 265305816 875511625 554799917 788408674 845263101 682744272 318490430 108193052 834700257 310576294 730447097 143251531 155465039 927577051 313333420 346426344 480081907 900822660 850309222 879071069 411116687 809687330 124186054 807711122 140455374 224207636 506041875 181342421 802543490 111082588 917911184 576117275 407681159 994407744 43631976 72380166 635542045 711233505 215353358 247870789 449397597 977533292 412783269 241116911 90532139 690240752 516707077 516598396 571904530 881577119 777427291 423328451 967690374 303806358 167523450 392168730 390790401 562469466 966228957 517893739 698202292 24591605 926289771 178737132 814208548 19889756 39059 913948367 568848461 164190048 364205339 213176468 171968501 919899809 404616626 210908920 66090201 486768174 778614651 650016693 753105957 521337446 160322760 266022654 463883024 584460125 945166853 475685450 481969374 220117142 793177731 313569844 630908254 234741182 206720778 840371562 31755798 323055203 767703847 764885683 954970225 980330387 230986672 91391724 727915307 413191029 990692574 428445037 9306061 181713539 579751955 180884833 71419207 464369033 599800553 353548187 141810613 684686163 582343166 75584106 763538146 763697824 438471226 81345888 908920456 911137957 31567866 460189330 120975589 20114406 742584375 472413549 728838275 567382369 648155397 952392196 976025498 535398113 705457668 734187853 6151999 285914022 838740000 478022911 778327616 316555183 189228769 968566316 512771195 165664309 300012031 741420803 659297182 193426381 963332804 690759480 170378850 678798954 673003251 74618986 692341407 876066239 736263476 559336112 89107323 710720217 101038377 337715626 277051522 648807461 802694130 746292257 743617883 618282426 381917232 723245283 407216588 714796029 211645217 509237155 43290413 84677887 676433030 862498995 76535250 104306961 613578775 15006882 667053473 503155966 618871716 785364599 345787551 492884483 49454167 899656060 84619234 719612435 135030548 171345555 686854770 472806256 219968371 634293865 122909041 353890660 679703778 181121959 220350854 281616231 908690097 37784249 201923594 572849010 530756888 618651261 530262670 334158320 313320789 79199755 204223048 646508887 306642506 193169840 196611541 216942825 851565684 269495894 295399157 614706372 434814661 200776903 672089234 168808149 663732699 31819036 304467524 785290428 3900289 588178719 977685292 872492755 542690690 898735809 498964211 138414131 319050412 552968516 803799685 191913021 522287072 903148078 44841441 797574082 222612007 482344524 267457728 686733783 514019032 262771956 401603486 472252148 905793894 556649667 991476023 119988324 169512006 54961640 182343142 176281000 177033617 740724419 7506489 857538128 640038675 783936185 960563785 618906718 124114778 885790253 689209110 103244863 495928300 588649892 823928948 665550743 433719104 193431822 649879867 326401047 714146069 95431846 189088577 90110554 964903309 531559828 45226684 612105209 874870108 237325867 973929633 703268280 123001276 178687789 767405443 751502171 720696266 350585116 734365793 794587038 588002928 714301234 567945953 902547530 591144141 253444364 139584514 306006271 897340273 154572719 468534503 835235460 674880784 13899562 696580496 976180905 181032821 897972451 388896010 910046647 355445355 606238425 777321308 997294426 263558319 27141152 887172176 523838134 389162375 314603859 983456395 686712839 536817305 677718648 564414603 150487988 894816210 721584721 512909732 734967913 487575847 617369702 283302015 278565336 85399756 215712833 77213469 634418287 575817922 213798465 987021963 145507699 474263843 64818430 72027701 390396662 539370096 582517266 329623004 965351337 979717934 438877486 954755608 692659794 523825382 69047715 397047269 160655998 302482141 29616274 372507848 212253912 801442639 773325742 311963500 426321246 125508350 192399814 330296196 960937143 772585917 880758994 117633580 527887193 562578936 663717156 770758906 707101708 931104590 725079532 585231061 658029819 725124010 988645220 458984700 962246580 82181671 466404385 147472987 925922939 861176334 883523801 734186812 887631532 267295285 130903896 213443945 772742838 595133654 741782118 867316931 557592651 376037249 995847854 342308600 980374905 915886429 646474984 502009948 797731242 569494032 559813144 259535455 139229029 439422382 523104327 900650706 792507297 260357906 20529048 55990961 964016446 854988368 679254829 717202170 686075284 629570679 739031283 25318352 262718898 280115156 694438739 310640267 796770683 3221192 333953120 37594535 745554986 520669847 208544806 590681070 646880995 208007931 821502835 184409392 501114441 208291390 72712926 852733387 461719757 520228659 819762509 544051388 645829710 459936773 556513919 818446504 415747271 427616899 421175546 282757388 187660483 845037209 679386012 656322614 385230925 594660492 77791457 178895618 93255481 490171880 285001650 300366081 761142683 240542477 692528387 614968914 661119462 746414331 464751688 623743765 233648875 849716292 80042316 81632773 706855613 713280732 441338039 481791394 779505049 416133723 740580565 394807529 366105181 985002665 788478995 101865402 252241040 708137204 64818887 879599293 951902636 152350073 269509709 157871220 26211389 50774534 129037942 876420834 532308092 608102529 453843052 253012911 648230225 935528327 825716852 900623842 205924914 902740520 763314421 276217534 933343599 417646608 998171199 784465834 905007521 495688003 5397659 535268068 165670109 690097531 841842451 571324279 131368232 458873709 802137022 505583208 491024941 216359125 930595503 295765716 729655580 464994244 239938599 223703735 963533892 658527132 874529765 240451006 13322900 13672221 793612341 995413830 935624741 80800248 250823882 213002582 768885712 251520205 133796255 579090765 732487804 375097291 647833064 632719566 867922047 281819332 537503786 289454561 269412905 408853560 463720808 77483367 575931133 454565857 447008045 679765123 333511723 452074983 541187408 519608592 832848668 426044748 871974489 271743612 664330084 899719496 293717925 385508197 733291971 875777836 596323222 674480218 932401871 268714447 110133969 166922925 686353632 22216051 507630892 703117430 920882311 126838352 620194148 431730560 162973079 935949892 650010391 488143086 143849629 328441158 285588826 143465181 179454953 420899631 512206133 878422943 974685347 509213673 556624711 517861476 97892194 617489966 535653895 223674366 3715068 961311848 629424848 928176581 158132521 334309881 280767557 261093828 914565248 94354388 550757705 936804187 463221642 647011515 880502324 797421163 475274177 907618427 540837909 864331736 555520852 129986521 721370329 711166568 521489110 559205865 104963147 446743018 937694771 469660473 938888046 137807723 770929604 888510718 421750746 996741356 814531518 955219778 662235196 796897843 51595203 149030296 64293601 553773966 151628159 85221076 766349212 455986540 955196175 913241753 802681191 31230724 989686439 217747808 152164222 900717751 385517724 585212811 898177179 230113427 69116586 913735843 6880297 380825664 336203786 862810699 593317620 518133090 988385692 792974286 953000324 268793 254278097 431166527 92323516 421589923 815899022 663415947 931925993 565130611 283112763 715507752 954817433 824644120 77397187 306563540 128587039 474735339 186796651 57738686 949725296 190401297 985565519 302898431 304164583 109112585 900690021 838139472 469719287 322602009 1481244 225769307 676094203 149846470 29570842 418617256 649532453 225576634 65357149 556964256 101856967 465222042 243720043 752469049 152895985 583899172 896216185 301752474 334132112 119126620 447527381 163068160 816625512 109065525 52307342 774889109 714329008 420793982 812907752 587566049 345771152 921942624 942342572 144876656 848027120 748771554 981564902 178671054 49261396 235107412 655623206 212857294 992178687 915872754 73213287 596157835 225590207 831362813 395265803 704779338 858507590 219164044 312494852 646044892 737278951 683387246 83281686 314527022 117576253 815720586 266447263 680814967 223390026 284845040 841896819 798532442 915435182 425091297 109548477 775744956 338918080 893292671 518333093 447504161 349747499 211808086 369993766 525593684 405251269 288479943 868686640 303779789 646355812 743162019 140305970 187276322 492489720 378927040 400436479 66756110 531026765 143270253 925891293 415070937 790985067 87369594 683411574 613796095 132654260 637705383 771322360 722350453 735853946 511802911 660510839 316093150 443184092 916044980 333367435 787459161 460491542 387264390 245464288 712624427 128000422 649605656 685532009 408696483 239284245 501211043 520160102 285165748 418756096 991420063 413545070 10956392 469178977 790007046 640907630 348307512 30304036 507736316 346854359 934242140 518587501 747909272 553258343 793312643 892676410 747212315 406890738 688953222 8886794 589680379 31754616 950836771 90584354 498981074 659469051 268880149 568225172 773600643 56129208 141040883 538600643 403743489 220631141 198784193 457262525 634280972 233658525 27859223 421252160 375157632 48313332 678171311 965944584 888299938 384095182 680732072 518707236 816462870 608803326 328491198 538044273 442054423 997606541 334776288 797159047 451298084 313942994 992573313 855523056 51506216 612203687 375662267 588164167 211776878 707796559 551694038 232000381 768528699 611022976 246155021 324316477 865301537 131383806 880240742 729266501 2990536 158859071 539010847 521338994 573873180 488207013 65780491 996203798 793304826 612906228 42454115 161659902 410729872 210497319 876979858 423351663 603348752 214145025 36895522 989327710 181719523 574430321 280167399 35652247 245047356 703195692 653932174 174031876 132831491 957232719 306356069 556597356 185185510 273091019 656751934 44140766 423595581 702852883 512353031 480556629 325558580 144700308 445343632 974181498 796571006 514393687 626955187 423161183 559818873 435383532 134489576 666499279 147995028 151505302 142609912 421956640 683076650 387889258 658058193 775037260 173462787 817619740 867667214 326264529 958126504 178105743 602832693 728997796 605834750 603740281 242356258 462496143 243008309 692335293 59198258 251170853 926997320 888164109 985260259 529489193 479730249 123020055 376180804 984633546 351368839 611722424 389417941 692583698 498153854 713970208 610660246 211240157 179294834 900432499 121373004 937519873 895038835 622768588 562787191 451781246 910596144 83714440 788157067 713733707 645376519 260060708 180432012 271835949 194408482 422660815 579927025 239215988 75254689 420681216 284610700 813806612 768461366 293984103 154347231 936768606 247841015 525161741 934068225 313107510 381970602 961508499 245861412 298565489 447942230 471648578 153659400 849360111 292472623 51259149 880670476 322575455 296497836 15059553 318254139 291648140 671724020 157980299 212333390 891185826 712124148 302374785 685449575 374663322 262372736 419401072 130691292 704996100 673946915 920678847 129119690 518580844 730168703 456040151 198385839 427533514 679112012 758913401 673621095 724377497 59327104 490714914 27670028 650462927 313522548 472959517 180021177 766132524 934067743 891208844 571809785 794036109 65612752 378921041 592945428 103418628 541345459 203276260 904199150 586949409 331759831 493652065 517460287 725368110 178648229 697577633 826654066 187351129 199493939 896051709 82115563 522396057 696589079 557658922 113928667 447270794 122903646 7826234 492867861 988933268 428960323 808660577 372143526 559523198 300155862 832807431 256588720 226408776 758288425 210689412 69644866 480696072 434120702 397756884 359791849 318066484 621515338 755999248 51772922 498520959 637012194 767631304 14954925 27798469 212785104 673983336 393216703 295484802 761686928 370801443 6408639 887277882 311485730 892124628 709561986 199539708 628873184 412931458 403482281 218615065 675861802 424903116 882765435 225460446 761438529 696557587 500288795 517653353 891871703 819282894 702503185 771677431 875633503 62360524 672722959 743296965 533516122 821150597 654683797 468962123 850779566 888009017 717370931 103480254 361738370 621364374 615409070 563325470 47080735 151777206 926591124 570781431 478791007 895515382 406807967 462449367 24158113 509834183 952813600 845698026 611447313 222940980 785363320 523536481 836640661 34937444 920074961 302327546 565934849 853410294 56980401 554067779 529461449 108778857 239943612 430344051 326570910 270495059 382091417 624482913 473597837 524042562 592104890 638579806 495697896 601270914 796762181 539238946 793233380 193805690 87903402 984597339 614695414 552043756 729139393 176023700 59098145 75409614 973841780 432598260 13296678 80158235 260220778 283234589 781495539 807924607 289505826 550205653 250749789 162674916 728142592 462174533 630088499 363469995 341129639 793610450 952481997 135669457 780984296 19043967 863286074 599873650 334939214 548155371 777479786 79898767 898324426 552127090 943713702 726933813 312572029 90095538 397065045 871784640 276264480 272887837 280014663 910985189 128175301 431289460 343654868 481929126 102133064 913197626 842272225 680900847 106110060 459012335 526919587 132075556 630671584 792537345 253269437 209971789 490317539 224405819 174255315 11076325 808464326 542913307 683457320 726001999 130139680 738925855 153899659 477789117 301533712 85686614 357195595 408628554 75088388 859100271 440847566 632189165 377212254 758255511 968286523 637677434 203568180 952588644 454797449 471643336 435162137 180256048 883226408 18098066 979906565 688556952 438764932 800533013 270891799 99397078 653883472 612732462 769178386 92183269 33687219 742507959 782627342 988947337 68287645 538633473 481633872 483434950 974080181 811502800 439400825 51280907 600132078 65787235 143768961 889300363 700807723 171052684 942476853 461017016 183609559 452142623 210012495 949469645 912901170 168617846 545794359 212713768 540221260 814957467 78123917 183669869 303562685 761853289 668569 849223380 120623323 354164042 654424366 208838212 612921449 839504256 24526856 972734347 86522862 775427169 867262124 758091011 689978060 770237196 3100419 723100179 569361655 379755064 915793527 660545208 387375960 325027985 44671655 471503070 175637916 909745144 199610608 208828343 541302219 319587261 915449024 235582877 351086696 351456481 474679942 455901584 366876345 151051221 282497054 606953016 592834203 111709028 81932432 905296562 537835457 694160987 684653495 444777966 272885456 107937850 968365895 281404340 778315818 502818073 107574099 19778224 882710936 399600730 974137805 488116407 902375189 204023339 72751862 379392921 641579472 24884808 897462752 854090266 283295067 945201912 100115304 574310790 664180129 182764249 527985299 690220312 965268403 258170178 474212476 244922888 358147829 333656316 27035433 104014730 350829361 838966154 846229601 123645165 173221861 673321713 624487948 857951271 233484587 559159321 67514529 183901690 545883682 906225679 138229803 987978549 233974811 676176821 590565559 413942063 526138730 416242814 66369689 171578054 381051329 581368149 202177150 806193294 6572405 298250413 183169532 212245547 907562368 302722419 765737113 10518143 957775907 294949764 326633510 181175897 808775752 119540596 369737658 809988720 152044517 698700032 591014883 54504153 418495719 205045029 213543524 17420196 293391335 254206300 630382161 972339261 136390724 659179991 509391787 233690615 267621889 562406978 292708725 966731543 802639469 792948062 960861584 705456365 403401326 932167356 645272529 669196909 680152682 924445211 391865973 855983789 912443397 691270384 768231388 407921184 10454979 137636132 964521509 399212051 757837672 125933761 22663995 252071510 300794127 850927704 637837180 43353518 518564941 940572057 984857085 22660178 782291892 817676875 517003627 888084869 720320749 44160436 899669566 808336505 61346347 685546041 350134555 648172699 718529850 399529550 243619817 416597050 644984515 455737272 846008417 921737867 865283489 809482010 38675361 281195326 57674813 413166097 913840682 233372758 189964596 709381938 638267340 883701334 140318024 593024088 316928532 124445390 216919817 984797490 172609285 827361827 474099365 175854009 727996201 515272518 499738220 538043636 595383415 437457946 122186250 408750145 194017663 85190244 278414713 699087016 862839638 995397654 388063173 588325179 465319175 179792380 630638959 744474812 426412379 729003817 455384378 571323339 788707135 49505861 298610165 479494421 224703809 983919434 230232742 136318978 970834225 354996545 329895485 823194547 274577851 133177723 733191249 328011533 686000425 572382875 474748915 788978649 258765868 419001289 489582288 478260471 176395629 95748887 815045895 926832461 819648144 367831259 913460978 334513356 492331997 658336128 883399818 197259636 479201766 784739195 930429423 817204952 903000461 259565211 978684440 608979229 684008194 246178659 892973844 509025186 990533886 310416125 290265566 139292251 451855480 896674575 769365975 224504892 69904544 839317222 134214662 475646635 162215684 607122560 734061035 221821062 494613288 694845954 893285081 154735439 826300272 114188785 772183849 554297424 138461242 773740127 657525703 886839021 532974868 452576403 382199762 427923031 264271124 344354214 72915713 284286483 543241639 157705384 878672059 991935075 236048059 865734296 811970251 920854741 170464719 297888896 902464323 541142524 59256106 934751055 433998783 402880534 649654812 574187627 368675694 910654062 672546102 830112059 201278621 515772233 188607697 949430132 862090624 926252260 747370543 530634937 868421775 941725843 144519484 115479588 355938664 593777876 993649170 138855580 560223415 889509514 460725086 665168720 95948079 961170211 796099800 72639015 235698582 639564731 827260531 598236598 207951440 573585454 481756643 912739735 374243687 471070234 266811240 795953585 260354683 491422201 548280352 928631748 752684475 115758731 55631989 670839100 584390971 632315565 639511985 641031004 515263745 188877466 157887087 366176418 561125537 610768909 117193659 82497498 853717121 727328871 480239393 667782896 262880767 718971402 439963239 779119133 265977254 60060507 435894487 363440925 455016014 712660785 731437008 169549308 177836059 976136905 139603983 687485021 455786884 269587841 677710162 563455255 873882271 317410419 766895143 332623412 239552384 688879064 541245226 557667375 913002197 128789927 127001177 370545957 785795646 205656885 924108210 456903759 897256079 400985844 319980788 786307696 646182474 644758150 297054777 522870739 423436372 333935930 125634455 9258826 615836101 89086350 756322332 403276539 905371941 233467975 366085805 280396462 91592474 999868278 713832537 192770573 747072681 705054431 868862538 734670582 806046058 190118035 554415286 84033700 927775182 359797772 857712075 409119467 175184264 967797289 186037788 490080883 182212761 57411743 701850055 645352618 908241708 207509937 797936052 674246669 397452899 277073492 68291581 60178349 727964420 65004658 94765544 191767562 21291001 662597204 162487066 790989555 145949730 181031747 129823616 63060095 69951532 963878221 902530517 784968727 399673210 315134781 794324998 107606951 908720260 430783213 333085254 140303554 708513041 233498136 592618323 145203610 556535290 496740475 453151322 824659045 19157023 112775732 182043013 199515204 897587358 475946907 511151977 95767896 74279483 453591230 227592591 895481990 486319809 631869514 775425323 285291839 242962656 533448194 44126152 805241180 624141326 108840710 173126433 546227969 693681448 6864668 54087315 986774320 159705717 192360601 682175296 155036767 392490957 6626195 484466203 403954279 920537789 108068758 932627959 154411430 623191582 940686880 191765019 763476770 424757170 278762593 257650432 246156866 470983207 964537098 245347882 223827569 729264942 649432489 992372872 890304407 824784867 379949762 65877796 309203115 660424939 590710041 61812819 537914570 861084564 391412385 132238593 731388880 817216213 22970067 315553826 272892108 357737135 125346437 927126268 905040688 737248238 971738504 494205701 324640241 109723519 331342726 417517306 864228253 502648311 285781914 189365335 390640436 157867342 191342413 755455649 433477562 253159514 144031786 472982602 641592030 842862632 586460420 141672916 593248442 209284138 281366351 946317689 444966600 137336538 188490982 554090175 628488367 885828972 503000453 102177783 167944228 442122632 787624727 224785801 426870088 411925009 18715441 912167337 801912682 706602963 862662291 200218944 784277602 809347064 969604049 285711169 988952397 468226695 966044766 572278272 139399964 714363454 241915795 457737359 684873180 33342050 724649395 985427450 400345932 48432498 627497747 775622474 324070687 491907228 837438665 947681672 171843413 399187643 531585612 709242662 596351370 294085436 520328182 312152632 523988591 353632914 973138167 692114758 103148905 433106362 286504516 922275128 41075281 853173688 987793898 296737799 585273400 592322312 292849007 632645235 240814251 306485434 973438480 448973535 144060331 916723532 954607188 490460427 306032278 483806231 582271351 342847173 484432728 443600003 235675454 31436098 336802579 743447612 192547299 350912809 483670728 30587264 877019117 94678670 226928402 684499749 652947977 740304582 713400453 21536010 918883873 242364609 543169842 985361313 166140307 435773322 880193530 484563055 746388786 203547516 936125598 447842718 600745477 648966833 48179288 418407640 925712778 145956192 381456411 455780993 817982538 617064972 506601292 915081615 716840727 517646774 559549534 477583712 606310312 678416160 421004233 603267331 881292059 805571342 183238636 358264217 405202502 553110357 472999723 455627211 749354950 459290449 536391564 824438280 39923709 852216162 370797680 283042289 486006134 287067775 42831383 633927276 574015891 543882371 599305292 380117954 852826931 909839714 765476099 180129178 651496412 649940202 367107874 486308527 560751802 429867345 924202396 178217916 954658701 202946395 544039684 924680886 759955033 980487352 293674781 827547551 138933838 491337637 86857879 935145071 527414544 367732189 329042519 417920307 566057335 322872077 41990383 543405751 261012539 64828533 675040916 641694996 137718676 335306431 251388008 613008013 443106455 610052098 790754204 527544459 463299781 527750999 31028892 24193240 110870412 310200622 185512147 110444456 925700437 905643086 827776401 683231980 194161950 131234151 295890296 552745331 205271190 218197882 789008067 942876119 275010669 728612927 970644996 591950171 611308758 8125569 333665238 839387008 164769002 802051962 854767509 9129244 981286431 776299225 716352983 805632046 527488586 893662083 750018217 406056477 388167658 599072048 290763793 891922285 560060934 740968781 256515016 191166009 239764272 614233635 142545057 63699944 249737195 600826282 406327111 116655302 964181242 370534182 526203618 404768836 153556373 203605349 372208407 489354884 175525948 286660790 462890909 249038194 724436538 246358329 277839078 27158186 172111707 360028898 532566149 889531783 285502576 621840090 628065126 587787150 449679470 257836353 451046436 221831293 276059729 89643849 87347365 24382477 734305329 213867368 763310283 171522348 507602604 528300528 907816763 85525082 44747175 893295061 272871345 799441918 728745067 617647998 684622043 757048266 166243082 25971682 732639992 223210779 817390125 532129253 622860277 832970216 769765785 637355214 862561685 433316136 544434916 526252276 633652075 551373580 358631932 139468630 701844459 406538976 849873222 740347947 869830377 589138675 617548841 362460990 144332029 393563109 466544348 116124938 749143303 830543238 605439488 64589246 153673306 120970935 887641795 621654289 590894207 360592783 240100687 741634828 993416481 92758522 54710049 984376039 64833783 355038154 519570035 760238340 433203031 638699885 414003063 107088109 608097349 275127672 508801623 181487391 136110910 282311150 963440326 259812751 89599340 738457787 395513371 917525931 376730189 816329154 281436220 732796273 655147648 976865900 79989309 340844578 881740522 47800595 821821708 560959147 592162972 304165779 983771408 154385051 761737927 260880645 559193764 929693871 309623665 126423535 521572493 327430062 738638427 282614338 76427455 284035103 953529246 755254646 91609523 620125597 213018993 241234514 651584302 786735264 339920499 304128054 891077401 907547227 40707999 617377461 98536650 585745733 783698684 895824653 678013987 130134681 242882623 267212171 694364421 583930925 588650972 8701031 726157497 123062818 958664679 738130059 220014040 652725164 307883554 691132481 605260718 8621597 284815637 922888926 525661933 173717774 854383121 365852031 301568687 50462910 580674460 837170598 230863370 814096666 825622686 472561766 553742368 379759436 732834664 152130559 303619175 475259830 805532419 872826840 341039303 513733049 623645620 571999273 274060215 561843189 841388033 795536713 96375630 585107504 758028134 20796155 655075722 909244312 582703632 9304971 249242520 703244772 143018875 86281860 154675422 300978245 620957501 149953333 729300557 497325618 918808086 180564500 777870926 82834771 910764511 711959647 72339377 853859244 394159282 672896984 346867260 510052124 430108489 439720969 357405875 966723489 403036068 848344390 107284997 240391717 586610013 822264730 23880913 777449452 959689311 169790416 459385855 347768061 616285982 554326856 58952273 433998194 818374474 249965620 898799228 956629848 805959624 476054426 13918413 795755474 472257290 263318738 328422569 818435539 55446340 224165334 853262429 981231719 920336057 548444462 888958408 935472570 947478056 320894192 148034583 499566006 727211074 987225414 221072123 434220041 843489926 643515350 876369575 677202280 485475513 24532678 328108448 315817443 449994553 431740502 172001294 471632489 886926074 41475570 499531984 685142341 180426360 356857223 663645509 889695388 401574120 930571712 306708901 236509584 555286420 139634338 884321833 743317631 881200092 682917313 457814638 304029640 635039716 7220932 508772227 150662922 569182771 921171650 296828571 568389861 2127537 314809345 600657688 589476487 969199609 718926201 642813359 981478640 219678692 964649780 116439983 742586428 993904271 802652242 85112582 554276091 684526022 469930241 688060236 119370128 651461025 452617741 549865610 759897828 96186555 94716627 550780760 207544288 37582950 147545037 634451598 429969210 891448409 957460290 272410045 689970236 502032945 630857119 724011180 379689987 422774907 624258009 825304924 111643431 832605885 452986800 328989921 749579528 875239711 931684324 862661632 652381819 421426982 759166411 652442624 912819118 433306031 970804072 981109097 464705866 917915742 441566769 932878791 568528714 345394530 708645448 159932581 958052171 95079825 488372430 154867314 893088605 948194224 227885223 668225140 898798384 477507530 413348319 10353014 284665360 695073171 613042419 592937957 499155227 582706643 191621807 345765027 395460803 239781272 554533375 744373011 455853672 541521632 444028946 721965676 296819451 297009283 868824526 816131460 380928461 799292070 180584982 218095807 226149145 860009064 602866197 614287937 330297914 545137686 507426615 492077851 885249362 156672141 389338766 574023025 181591350 403332090 275086969 761982477 951554158 19890409 909535909 961386493 407273344 707263366 737007663 577292760 681704646 507614804 583521833 264085663 977166689 967989771 394168475 970909497 656787010 357341927 416511326 879181743 75184118 353639561 152533357 410085011 247069238 504987763 205196286 401532893 403292455 580746269 575000863 448298361 910140400 683458549 99717804 242326555 449649256 737809303 793823732 916238410 954827745 813996894 907110619 743266823 357356553 591190441 124876154 498413992 411907206 204399324 186939394 722024586 635548589 313680539 726027404 504201860 244048363 262882545 849769095 536990108 629582377 543906849 695985396 29509752 969104982 829080530 285298795 532381332 511093152 138091159 445797023 894036762 438804376 523294292 48539924 285963957 141193073 994638521 868055737 865764723 146605869 904017183 241163898 382993549 678513577 850021996 674966720 507534823 538944952 902687053 248731509 785319157 899161010 459726683 375552334 589908290 656294761 217058065 690692494 631548396 332192936 326656271 38689583 699189690 576396645 839784525 791876584 85779797 133217320 164315541 920135564 15699156 985812225 618228146 801275717 155062623 261150720 829275748 173116705 552453546 890210251 447254588 375250321 62599858 343359043 629069469 545929956 118104660 522901493 349649367 321402490 509482048 62908440 238529184 607707216 71293132 53289883 186960132 340084861 469902370 808630427 168392581 393109296 738068947 992043438 178200993 272091322 157573297 613015944 496718557 596360249 854523209 146685362 932776371 855935185 372474686 403954951 811870688 649937649 131226105 363094756 2323033 846150885 898459617 553392205 450889737 909056971 896360585 894016883 677612254 125463284 326627451 988632819 744429927 187513187 816521700 982679019 39920874 95360737 627979669 865641182 863707197 113790809 606205662 834903404 442476900 233774471 947592682 325657855 779774281 752654613 624607468 661344926 35621100 376918975 811440933 406951108 114879769 522572991 326721202 56320548 913281268 365282429 10239555 297455392 722575594 608521610 196429448 355270428 134523478 928905002 406634182 120374295 101829217 103321713 971138148 728321584 106536505 166889727 124598894 641493073 536150493 60135936 322765955 672921623 830080300 557359017 681435728 672632939 454410115 231555288 993035167 185217715 579296762 162725823 224654136 364734902 7518361 349116496 900868278 360689493 573283374 300607867 508290974 284479717 376240068 654364952 291646792 241661645 222285663 478424366 93125807 102597761 667007942 427659695 596165110 477187055 130504054 752124213 116441968 131961896 762084584 144620460 888540470 229099323 456145003 44345585 391138664 466518234 749787129 117731875 545842188 386406142 476799008 906317007 599193731 248965672 572024461 531989775 73361609 851288001 93332253 519533526 829671733 811065077 806207340 407363287 647512925 701453544 819211206 193133182 879481775 915728959 449140604 766787552 940813738 63639222 410650681 943114263 322758396 41455582 857502475 736279969 614264582 5904954 783285320 892599100 491285442 10870298 182589596 23394630 379001790 26972982 932415975 334835679 561353057 493495809 367581741 651605167 93203799 915452472 268376510 85677201 844332041 385746858 488574463 746362819 529070837 167093713 18266260 829879576 628011684 113770489 80695752 751401009 916988108 920090565 504753579 932439977 10871824 591219839 83679680 342766816 357552512 869098243 42549223 703498402 520403206 558743586 827154329 990840976 178626902 150991355 796080099 78131346 428431692 340381515 946141742 523378400 153261072 570254109 269143539 189596366 789912857 540403299 60910164 24055564 38962343 32597967 583567705 997345824 277908272 689685531 200609053 47345277 710774275 386116421 377137065 519090342 556767322 880373362 518368556 255465760 76232685 535673509 242871982 831864887 969322598 993709900 642379965 685544854 116619542 312599368 316966700 295393629 866251401 899670475 870535504 900862753 257292807 617623171 781002982 72753143 549601768 562657987 592908816 504207665 345347510 635051759 708599397 942614271 217876446 743175648 982910201 212501222 931219832 14104210 899857524 258883953 744344496 707365952 422377835 414695235 821382203 234594990 406145221 288158421 272910345 728379005 225345192 555265055 725001972 718534089 25101206 310207901 58909158 722932530 921937662 174567862 589596304 35602253 279476347 820154709 347612495 346727208 272538666 803575459 967118249 870508355 563909054 784250757 845852650 606063417 175089896 134602550 400972157 621207498 520930825 131777394 791381711 574649526 759663907 566341694 23444878 560162745 204686263 208635867 918478378 878907660 562815378 826175506 84172854 861837971 743979641 328726306 905283878 375389450 190517210 973076572 55165779 636526460 674269283 372331264 342070580 591631664 170540770 395106034 578626497 213267995 321573061 944826278 756095712 954736538 490701597 816745189 798307973 394274470 727870725 411735082 84019617 374137024 347219146 958986816 820168200 514439642 970811902 990151749 897785914 333627460 449682567 424084139 407663821 44479670 471065069 70385880 480886432 908348226 281608997 958790572 402632492 369139507 927795173 427919024 499568476 239189301 840268173 358452225 894600110 152849591 42577004 420604959 742658768 708240540 167074502 889498020 93598221 601473825 652982152 441446706 496392483 501493375 343866950 440266339 11300412 498934195 475597540 801748384 629211224 584411223 198054049 520218094 211277171 210927866 882130892 225707082 750983092 497664615 837497246 347950634 57797974 63407978 495104605 289108934 895210869 379543393 863002680 276915100 611592323 258146119 370252007 904815227 741808620 109407567 656339739 193316788 856737686 55719355 93215384 642031145 528262547 68772509 762686409 71999723 857412012 523569595 178580426 802638747 955100175 77301774 784114769 230160932 109335503 17509864 993757959 562199256 965873010 996677851 424968266 17907639 489165920 174573590 729406905 858354096 272648798 477622734 994446872 645610738 233806707 875772144 942129535 423093859 692899229 333423521 253419371 893606 736308539 353298339 348861424 504775201 481472896 669677664 151730179 731183619 324645063 439661122 838852633 385060865 962710696 176698079 121941647 88686124 426437516 553153958 853540381 333284899 962401504 827651185 433951113 595871985 119107686 380209104 901089048 648644497 659911215 485281363 569207828 677492799 273877548 772304741 642726076 79347957 206724869 551222130 343125794 59501846 712886035 425808517 371159662 501715860 95635367 388446324 593821918 724521121 455799103 735845388 609064815 486537678 785150856 882168894 790188312 334639270 7189731 907778817 835053702 414551306 61048874 977149149 272723540 469731349 512238165 634906560 52373183 464156338 565917769 381917768 705712651 867717180 182981909 595358326 255097491 533151977 465909981 466159659 326759416 943560546 254069451 653427082 170698039 205001463 448802349 770234815 626714398 584867831 995951552 614046376 256468573 594426914 558567991 163693800 971367240 76201344 842996155 653568689 356529520 404006358 775747533 209004841 961811200 545117644 650699341 549437544 176728057 825016261 520878497 212385566 821169412 300468150 937309741 960018871 949430669 168248230 316228583 108412578 442660568 489413541 768374630 652430837 813812001 46032902 226888947 822290824 780740054 753572743 696600281 77253804 127063853 708172257 174381664 996681923 930358081 436641056 407825141 452905940 754335323 827964843 185393204 620836574 79184981 581361768 631601242 858052108 424734295 332708330 602102801 825998511 664754836 660753641 481016165 738438851 922871681 142161621 168478758 291004399 659602492 733026361 202657047 685248771 262019587 30071673 13290195 79438467 746316053 246624804 215625413 774637960 730528726 501859154 894088521 410517366 479155118 333087182 327464441 936066338 509176747 303011709 369214456 951634065 147411074 560337543 852484201 21995676 741277916 946018185 917285272 700074709 514659423 814739373 172187232 565245698 306881770 557870972 735702624 302482070 756681369 209807879 54262894 15069449 200940906 594947866 113334232 636319309 923636906 956175028 760728270 288622061 242048465 889309852 970924065 593356884 227719435 161907204 507414390 276602382 897180327 37381963 340241161 40407484 419749939 821615431 14235383 943843558 112630065 547525718 468452879 324868964 253785125 893352647 643175787 488122080 61153681 555845884 155144021 587886220 536711398 121236178 482141461 948605917 423580226 836052087 421570483 878699426 458996493 893766297 153614276 466345209 572306570 274476530 459590691 964858463 246033425 402008176 206999366 63030109 437070932 915453460 406892152 954271586 485206368 683183855 385787779 364466424 335103433 434615827 163361563 105209634 864378342 378582543 494898518 128369896 6138703 188582947 199942870 412279334 386771413 656088058 350851880 428176557 514093311 550384158 348248511 42424954 243150614 749687753 309642648 137850891 735610134 189786388 654313836 556241162 813150059 478943875 348434817 763868737 432073805 902830643 499545324 330256762 753388449 860752388 38763766 973398048 551478949 950277748 560243653 380765088 517968607 750155537 38965552 527123785 240371926 490074289 466566424 537952815 760580686 243804090 558127152 289384484 645650797 536974961 827853670 10991499 653719186 369395365 650508238 620348392 657522428 446951248 751757780 230353538 751695995 726816167 621111874 741546820 839711882 246651953 665630257 844365416 164094507 499911165 180895637 550969092 490122129 99096693 875285763 35275499 118715424 587626201 120290912 380261354 918671148 433340943 457826954 692341035 61159242 453915143 574184272 966125102 658652704 88369980 469481621 219052353 232543445 481638721 79175381 944990441 424392258 112898436 970145177 992541784 355563710 237282446 456456608 985991933 113515978 79301695 125876620 872466482 211466976 975659367 613263020 644712351 30077002 450768959 850812545 827589921 657002651 300617627 18390787 38669013 68513293 81572028 992574192 547950381 824274785 795283291 645124027 3507199 791886815 172193492 443755797 40967791 229174796 443950913 271827433 410775306 370092119 232613239 14140951 128062197 363345227 687953486 405144922 717916653 587618934 305496198 246671284 748545118 659069863 261296260 416603321 461217060 352254288 436415646 661528508 477240750 770371961 398609360 18652637 277812813 273067692 991816796 553745248 4703256 55694840 409382515 865485169 492078338 307523637 914124993 511514788 201946844 990431357 33460586 605404746 346000573 432140017 459275305 238685686 857990263 554857754 231450714 84651649 854292276 439359124 213385514 489120804 879674799 66942208 8753870 309195372 113723637 635377009 676661506 691081769 493876444 256810985 721610976 432004402 642711067 969826679 550764319 353565856 643928074 924511261 426826490 155976477 552785095 649147918 15849338 19444961 326641637 833658198 281946156 310305056 919598461 19471842 299173271 493725966 748489200 510982378 913759427 61001236 93360316 204657512 134551252 718058468 71901635 206269421 654110226 207770822 804933781 232670599 607289230 553370017 200898441 32759564 58244304 679810275 865194256 585796946 687523568 419763005 62819199 920957683 23456750 385983137 630454064 964410950 412785739 772756760 837082734 20692159 680741659 674001886 263663765 748093158 300635220 276934462 747669249 982544724 276017892 403842851 480228263 815278820 619925099 730386448 149486946 807298741 907262334 219012727 857663712 810827400 964547543 248466118 96812836 402104997 240894485 128570664 822874892 484091903 56610451 507077023 883101760 925502947 942907117 53496430 632895196 145140429 338678797 426446739 362983236 107414448 424368471 854044938 521896524 565087109 729679146 728412610 465334970 358235857 24841180 284417468 450765143 735616919 154448078 574993565 365526226 622366884 401472231 12922192 780879586 892040517 996145907 119476379 792106138 607198768 107673674 838780222 810718504 898043654 250413539 429060802 118903220 218660387 803259337 16194285 224516529 828955714 279922781 371328821 307873693 271107249 698750931 788745557 432853062 94813591 90442578 714994414 369183962 93588937 739192394 290773224 923304753 6966584 878342271 742375389 519301116 313859000 99041796 417346669 630926609 828627770 462767051 442094129 742776641 487779485 65418730 880228180 43726166 989740316 295303355 67684074 670528496 99674882 949998834 151321597 733699585 912774241 913221110 95410361 247831304 37233265 683130289 977657897 802743993 544311686 602805455 744529276 711679172 555802748 16583048 141807100 759936544 225761663 965852303 487861647 194551506 804771074 753788912 136612898 416624866 37080829 403488466 340331346 259522464 654651811 866379681 177839376 411724304 760410706 407140988 817931349 896654862 166872922 219452333 107864481 770270049 565581136 891149371 137783757 254868068 166492634 234742214 453732220 668136508 36447680 302988699 731245165 600577023 284849828 153717128 247982724 733350740 457757743 53931321 785761524 50014141 943407773 997253714 977620503 626710123 52692838 360478057 164601745 84341174 940037980 358738210 921235897 136465661 156057474 310593901 839265686 494739063 625079294 529406440 874723830 869445085 536605066 964472075 144674717 279931801 189972504 392799381 680444640 439721007 907021792 409441140 839071796 697966937 206421056 241128592 930152741 338783516 812959863 282398314 874366568 680077061 287490921 451077327 780424899 826218449 88724302 979831467 399528470 279019699 809229582 862424703 779466727 729561079 828436176 21670107 399614394 480720594 980298491 804378172 225758005 502359957 249133801 314112701 335719966 70567224 667837537 230262885 157932266 490332401 936635482 738238177 196781007 179220354 855760420 480072602 258283974 319332348 886014298 197296347 156563834 78315488 535722534 805519597 266658309 886867237 789932947 79454707 322469143 947347870 27014711 376400753 530354744 82261870 327517065 765538452 580822664 195657884 271929434 33321779 571907124 916171828 597904031 540810644 692276896 186163043 114903701 122158828 831333495 700133389 69155042 870344006 491799927 326808713 749292740 329917163 453168454 772675038 772490811 214945287 61657148 397286549 576402170 495978995 29207050 565128575 305457934 191842690 96915914 493386173 950359378 884625516 42461934 188566230 366275711 967054990 369812034 109837907 536784445 551129392 284896294 380506541 246819157 262603983 253877197 586031109 691277953 146667381 472922868 501362757 969059474 622850173 794465758 289884897 901414907 795300346 937491807 296723300 130630809 299233017 791627887 510329194 378113714 340385050 326159289 545232882 817003873 544268572 556843872 906532037 460781771 956306595 963574197 151301717 800913909 343217266 279233569 176839503 523556115 190081213 170417129 40662718 230269357 127232645 454445935 369895380 695408838 946880030 174482200 111075917 230188862 223365307 411710701 801566146 338730166 41320571 491462861 561108408 517512405 107596946 245354582 958274155 566539613 599722845 440365237 113196198 276051325 407691382 818487115 710859388 411426248 49107765 425229960 980990222 780605683 940718419 589637861 884126244 503122956 99710152 835359060 584398841 507728793 380720258 206337326 788593851 528890872 996881041 30057858 692810635 514873973 469360523 149856495 881310065 697592498 306960567 807521083 4951588 282367319 402227326 210157680 403393294 644872329 338721337 24339578 593373637 960093188 462508951 946810538 831390319 259081518 987952863 839035638 425264564 685257658 574254750 713962139 549391049 821438748 911758246 143417290 301738446 774247576 135340820 778927590 203639225 675986378 213707291 409787839 893026995 452278466 61713171 182265489 497501093 56097605 425478362 54957507 546187878 932475080 350004423 85354824 15625068 289096670 816600589 902178789 313892266 431293782 112310254 482146972 229107995 806894962 161331280 3167849 222979245 980722295 316600509 167141051 118143533 360487148 532585043 766282492 20030547 971666497 609201033 956593969 822860638 696963049 459446405 270035081 40508025 8663048 827204616 569182031 641585205 585318041 62519245 905916956 686181088 799126234 831144885 715754382 503777235 62571592 611917963 786495786 277026049 63252181 4474732 754762754 25512052 359104617 531933675 537863541 761343000 228154412 772678900 858381002 639020518 753321110 636903650 41171653 98859065 949189565 273409588 388284743 514666343 797907331 936682998 641128986 388819855 572123351 290562421 640988002 382440192 105068401 591477630 222739092 218306275 183674807 430587848 745287290 426864866 276391534 732007345 306629300 312747970 129984837 564696605 490485457 983690952 341170228 746534393 721534353 200317105 980483476 16526396 530434735 411038101 922233365 194752374 2821704 432737168 885589982 448686252 976726019 64355709 227045125 687862295 958302882 53450233 453725969 584428825 824641438 293596127 842458724 841238609 558844329 185030264 808119737 326470055 213337998 637524045 957767628 698871020 392676169 634962700 516913888 462018061 594973843 382924685 94127579 250424765 703415750 551957538 725457331 480314372 922384762 752062896 248968728 148276043 503697912 916421902 325539702 928238753 624426502 695217576 196430817 269501010 660973920 482180592 695703288 95465803 347924607 531505734 858444445 596017247 888719070 406471133 167135305 544599344 106146637 151651924 313865312 805871831 910087784 928081400 265614465 379710724 580246555 256080661 702620174 915420693 800089185 592501587 278711807 681395447 254237042 848052884 286045919 697308134 663931911 620162090 624295461 247973899 395655547 739175533 646438890 183467264 254654606 664649181 623429860 681566873 636086517 503787643 152221146 85074347 187342319 637730512 980595208 295936184 577664863 935411221 820201752 200162805 662232950 121224877 18967279 305617307 831798659 858067365 317360440 29188752 251326591 217295681 334867541 156277032 393386300 722755542 290238953 562939270 290603159 594076840 38033718 381905193 241116661 723339379 312353613 402111132 268215891 560643337 424652499 697913831 102254019 795335446 873692879 899392065 892691904 414915842 973183867 316891230 151475961 733279996 565612537 411821252 332337968 138514996 749437338 395952075 951628057 233080564 983752590 843611416 142778402 553878729 779250373 383668411 681574 555025110 199333770 733439956 349696384 625116133 542653949 969015154 228813507 8497067 442560059 664727703 887976198 88743642 450421940 317116451 37047149 934137985 24091352 333410729 520782582 421432899 874995551 962800219 264474280 286353054 802647576 296522775 841148882 577923457 422596392 838095534 982647251 490819875 878492442 358419060 589944222 99510813 388986811 272023083 905138731 12163119 312572762 127843209 779790437 958493568 306341996 647943495 929859174 71648482 449735789 673377342 588485253 83516378 143458400 420710012 934236287 285791139 182754040 673045889 68518647 928613480 491325248 576529446 769755610 512782078 749915665 762448373 469200211 987341634 497288024 958916975 567656764 804333561 105274383 335339595 275019972 145803458 169420845 780463585 605452121 735195924 773642536 56567189 807402694 458372052 673597012 445966344 639867495 896403634 328082332 950498748 219256598 588665672 140449907 596869091 608402248 245104346 293024237 888638681 689151557 717179106 103984999 984778916 208632828 78105975 333984966 592738119 120917283 334879039 902309984 129118845 412355186 353904420 965424305 679605093 95946037 318391678 272833326 383572933 545410983 838862216 78405750 766849005 58649253 149869174 167773948 83166718 946279477 76406122 621588559 234893866 911950375 574540133 684921672 662566867 524570723 580184576 168905131 134557547 275030657 424222789 644166949 695585252 648837777 427489446 891452669 508866260 648151675 144716520 229041132 727641658 790866164 17141620 471819510 310885669 764071845 970620762 551430195 227904164 979482426 999019886 680211663 992035462 312847198 961126015 749657261 926313966 236601312 248143203 490793291 811684647 202399719 532964826 780954187 779591632 223492599 814826027 601769160 746474652 703709420 440213520 656456424 442376513 311383937 145241939 608509297 359735459 506712680 578195448 293029157 294785079 637003641 404218163 614367638 414199667 958871322 954719763 133474497 674209950 778145138 575026611 216667633 779440039 312598338 109185347 106066683 96098651 449102232 834250019 386031947 583165930 535859857 178357144 120842111 173908121 505909658 593413017 227571994 743854821 644292840 109221460 182241882 704629808 481500332 36717434 797192761 246500119 676126116 509155839 578684597 545462504 62645492 22457976 647618196 513490286 866078114 406283762 354758613 221018491 883753470 597296812 785575530 984566122 648503658 951725037 785604567 503618249 882170351 227322170 250527829 320600698 380548642 832902516 169630854 968601002 429220564 337534683 945563762 789335343 909902714 89427140 823114166 719177451 294809602 821345542 401128102 48074814 901701577 230664631 521687909 176720249 356497676 223554248 603675139 332597516 331514076 388168691 909305347 361203820 884592443 170691879 174777840 39337719 663938028 787973746 342509671 639867784 19317988 892008209 73935695 563579798 731622639 157079091 789014496 172582995 872479053 919248669 904799831 369840 572157853 986401725 41462725 429183099 569870871 987380863 951381384 393775775 802752770 401278034 131415583 687393267 686554464 935318355 897775426 126676967 419479936 164579492 463784514 943205465 623459333 971027647 455785318 550472992 592966843 856419417 93669835 632357848 188486711 505464480 755716629 653933878 64407116 694283309 809089391 692976644 835442282 584033468 215370361 72916899 925473997 351318215 309697957 958111430 55386213 116583728 573884852 265835157 702061696 42238183 438255557 342541975 780028116 552770198 641459870 426070603 382439978 505225494 140726273 618262000 638938443 654725474 463523284 229249507 297659750 638109715 831950179 713380723 964102841 949247529 547005245 831948354 331759728 521349733 202046798 524417672 507127083 943094224 445682867 329751229 20490134 545394017 495879514 349514072 298286927 70412078 702330305 191968677 192672914 188856052 664916084 43717638 303049827 626120969 747485898 130532251 562777242 448782061 142749815 855105949 266264124 8596679 584642382 594698808 19940463 952683512 146021156 454580045 365443232 964535949 944061650 848663109 126283438 709997934 564300813 384135930 871666440 388817580 886476638 772833586 412565441 424452239 314422113 881099942 164377063 230093238 854940354 52662543 15426276 342827576 749962045 983823668 419803665 759677191 538506629 583492090 857802913 390637375 64662133 327877863 290610179 681187786 82492214 825816015 426168883 597297288 73509628 322697552 827911468 838716652 442422697 487061774 278248705 295801616 314315891 23280013 481171945 932446915 698074775 94467004 175319104 750312188 578286205 584962984 545214187 67379243 959717999 552861971 616949206 308971916 589666307 505422641 66714266 649927687 416367449 920971839 932514019 625456868 866273718 175198491 605861059 182558878 351084307 895090214 175058915 182817608 249117162 794305934 460541148 864396671 369578040 655513679 180068049 177636719 872369431 611389169 488518097 941516713 205489444 958428108 400872715 283622502 906178030 730595181 526600433 429660961 107438738 877804277 499419381 398057510 599407064 494383193 625139485 603427918 143183243 745652537 335462547 883110916 202728633 319025945 663739581 825742796 603799748 172897328 444122902 164787204 718011066 328594785 345597778 548252554 346700819 249406000 552220030 273212744 625996280 964141369 899348689 350455293 394292675 86510425 456771606 45049644 29837590 885447155 267874156 18552065 857853128 927938298 124126246 765392103 805585519 849925259 991714378 8602964 707863120 421259504 795381428 587792144 623854881 32164627 944374371 825389406 804356371 838829130 664568107 581630963 600379642 965105375 983676736 315441377 668780070 802719926 274609601 143512510 923239869 561819193 413355330 1821704 332727608 963509526 78679144 942522868 299301934 970708688 492461177 77253022 787366427 276489737 223948140 239444446 461561979 395411148 857694111 423080723 989010745 414936762 592449154 893091532 761649248 714133071 824655902 642103733 150262706 620242015 438529580 230858096 578629227 814706217 937354187 361866936 959584164 189085776 51098030 699056161 503683000 172788841 235261336 300337330 565740234 660578360 255573239 916123118 813567242 477306746 952456597 829210893 35660438 854616728 880974374 946247854 486332750 639795313 533461059 781516664 918003005 841208061 152269994 288602042 597402252 975728020 310739005 100417304 24298639 799478071 994009592 232550509 794979879 129524697 97847079 497251753 855063635 230518431 439019370 636397257 674595027 954575402 896754710 30495728 393719314 664989295 30698966 497524828 819816060 88604484 376637465 677418610 869656014 531901500 457115066 73934641 45311074 662383120 575704704 440209350 530806800 792800363 75135280 164896984 163443687 551703886 679392120 406525772 241986458 397940119 394446509 763461643 16306458 904824463 292930108 668442405 431263124 520556545 546547568 109464938 980907920 693839168 305790323 443441466 171938 104983932 715029729 576575579 917687350 207358497 856725453 874197303 354849752 530783191 28502223 59906648 42242272 423765674 674907313 455742090 953328264 152464888 182756933 704212741 431307505 991216866 377114625 915062111 86780587 38528173 893856544 769982861 647051844 153112579 655499158 179883478 863094284 941466811 163029281 534525218 71854557 207398492 195485139 419189060 626610337 179752801 458730082 724721387 418658570 676550963 205239314 265039061 239891082 783191266 812451860 570386862 902714160 179246263 190540351 184270729 832868767 187712980 290073646 624671511 585074226 104993221 701076605 467691431 926597642 993237838 934877379 880349256 383592121 608479276 184373423 190314335 150600478 458211151 628837096 532713825 795606150 203655413 488942509 451506688 822790011 430189178 327500341 770729651 394541315 777956843 419486252 246621886 179464888 447745210 972762065 414089370 40649808 600980888 780797871 540646633 304137084 707754059 422138985 488214495 879224413 427319759 878758518 103503636 583744198 242489754 845341621 840568428 113254079 730427010 3128541 56148179 869102567 994299416 99844746 247718689 567871595 891037077 277890114 847848191 604576348 202459372 683936041 694825598 953037457 918230104 718882115 8446982 311427438 400946885 667327222 410261267 684579896 80038728 711126525 576912462 825949606 540458227 310891319 144143649 216892289 988219579 875099873 877685086 407638329 961242360 358448419 838185101 950697468 277210743 132180146 718051977 846533928 48114350 924541334 31590008 686886270 468097109 66311820 290609233 332089366 919736219 852257165 674621513 877724846 617597776 233617360 556493431 771514298 75651886 4082928 595330286 960296222 42357593 927871609 312991763 696211340 462920106 316495387 756081328 412433677 999155683 704023278 573509288 154266268 325081683 255621438 293995969 748635482 153128081 351836284 698317159 47332996 309281077 887996839 499544812 241916903 38130561 246393156 638041558 451292627 347849459 583791389 797113749 491701400 416568157 430963856 154177638 762750935 571601467 282093412 385241165 629411307 469484913 711756799 310914438 403478523 603992829 184274358 138026489 230938586 831328097 613633700 583441376 757394366 75206503 164882522 831287872 964130872 982285584 544939119 152422657 746055106 311916121 108745300 635491380 784695797 150685452 49828079 539510847 421786210 444131910 178933758 692719388 567045171 619612234 946004317 152669816 846982237 771069484 766246864 383993094 556864739 660720311 672630143 155880001 122536496 410435942 52326840 574133011 812524436 402183610 253449213 825571232 186677424 129481060 74203001 315451137 241009132 973780374 549590335 706509583 377410315 219025362 992030298 279078958 232585755 136149371 288927990 941439934 763019764 811635381 596938950 637070454 207691112 412702841 781583497 768531913 830640278 387220265 967269645 7909309 854915423 107456762 933176299 140664049 632189400 545675291 807469332 740220790 627180541 600995453 991800345 645642463 152805678 336279555 819860791 783337482 572674517 651284903 649884006 537173902 682288752 100639940 268829926 608158697 270501586 564422475 80935096 622727564 958660805 888679263 686929198 171842631 410818763 305313105 119274721 886919855 251909667 913156570 725382551 781812938 317691129 777618113 483339748 563313591 475233319 772178092 91651885 992995111 916334494 574421124 765387730 529602594 846667463 454259368 537134496 999133860 393201972 251164173 344684850 715794501 661652433 232927609 998245052 370457714 885709590 668598585 894436242 644792289 264275987 206514377 143423882 86075170 254069316 880706733 35938362 979860083 328123763 599031162 642484222 17014524 492393094 990377701 923277478 604408767 941929110 33365991 91724121 869800832 22185364 799459405 87178255 397973724 213417355 863277238 233844496 888089765 801191631 268004558 54130185 624332190 282337786 2762569 352296915 411502328 554192302 702372827 343354101 406134152 404530406 834131950 16558969 687290376 492659252 165654504 380232212 490374959 220840036 448134922 555193882 906783205 513291098 759139494 286439702 534825204 620486353 68316533 375488082 536049434 257730586 934299643 370205678 502258737 979101357 978236646 761209795 166132210 175676844 816941487 769167864 215875050 713287497 148233394 496768217 78958084 41537621 887416663 419830613 123463771 778397934 85634266 474737273 957227423 240983160 3185473 318647409 497968640 339225058 820440949 770184514 233107437 808707017 411546168 44943479 251040624 966589861 750612233 706225764 115193122 10853232 910969261 430105866 340809594 797540612 494655133 640236644 977847979 581376437 863379648 811338399 907325073 448525052 646337119 130889364 89002883 697416165 545694924 173030353 992294222 567180169 413937291 242094376 306850929 659694252 962091598 250603832 990182407 431767804 792850039 316124756 388645972 878794309 891656649 245140906 200333573 965604177 629104265 604586136 149738283 810645341 325503074 834647554 766990377 238248778 254840618 704041747 720663375 559894273 754704045 756274241 925512667 359065954 289519236 141705236 759029185 974991232 121355443 378174449 785410353 513015087 208640331 375806308 160345342 726804759 199378165 190890437 75906259 533067601 918748530 843497435 374742324 482510815 745093010 873047288 977866652 888335506 494116448 978290078 711746636 93988939 910806008 265933832 339897601 142930202 112875754 791724368 427258720 571850832 933199942 307943231 691058990 860547781 317639942 681010011 692504801 413754948 972201696 15724418 780734692 675557245 43178116 248261223 154795836 924196507 339491386 146446739 72755633 991051751 683913762 398457041 341611564 983912509 160212615 569880841 983053371 733101974 357298268 883900820 752803682 269356544 717856438 244963307 89831657 561966884 907622321 658292363 102800943 767267806 129408136 478724060 247216849 880945477 557990378 914723671 858244049 243567045 778650141 530356241 241458864 64022155 641884556 739532544 313231098 486438284 520424949 773921980 226207675 984489943 173968861 711038045 725930720 640272438 30647995 999755972 226025631 815137919 285740849 369516024 3825092 928105280 489235359 699483477 931342214 670597366 370573985 493406102 602847744 510876465 731780408 630647745 90513088 528251082 397486450 4284193 493588673 657828832 225931131 551714887 430402965 203244662 932865243 508987674 932055394 292719031 604975764 772364742 150595548 809570665 197117292 445201474 645861632 435755208 752653126 358492642 659103153 646372815 772676507 923792648 99091147 611682698 186523172 712644590 538382512 962850829 941591529 722044205 466793569 827596797 354151228 390132988 531044239 396060682 604307684 530832898 206005385 869785109 581831906 534892747 170614271 349320681 222084977 877862643 918832284 4472395 995594109 828424254 662053057 638813071 588298365 231783687 577259700 334379366 159160219 725278112 594615221 36586444 383948348 633552102 458086382 149006470 515435965 89841144 524627103 808331731 530302407 290751438 628870888 422826044 464977170 36354045 964681153 821397667 688609124 984261084 726525572 764993426 942523932 331889464 754317936 458284412 627937172 532858596 184953210 761065761 455789579 560184076 105112030 502945951 323016285 998765751 250179468 802451472 4555824 779438404 935313142 686469429 334151068 29335556 313479008 414392291 330740697 305370100 28904155 639351162 935643270 84283794 719429153 44991995 196101922 771137266 478468054 298109179 939207804 327075796 338407762 173340463 955049880 906459176 626310916 614625118 820153759 594859097 912115863 565550438 317896307 96065124 31847878 572495209 903109476 109421058 638206829 946575935 269805119 306276963 803301333 814862861 310188759 794630698 672884505 369358502 845292705 903046742 539628643 193984192 353660507 140046806 856072246 921966280 125603582 840055850 878362651 605666131 2186885 235993775 598212866 335306467 62338102 923504397 858108402 362440140 283223665 543321788 411299348 680202505 835516180 180769189 456815606 550078144 349896983 895573789 97868038 99201249 385287317 848694036 609081004 254639054 12078281 732247963 896591285 242945227 579118271 474748324 683331733 723962017 456001323 981244516 773781539 907397910 103759947 654473320 944892431 111511248 833016190 845387370 150344126 770163778 844718052 282609056 47794761 940016704 733104057 917992895 424054469 841426441 491501916 901256490 220057156 960094155 100924327 840832531 945587461 852088617 151601693 905097850 104290037 651129297 238895237 934246926 694505158 553929750 557120484 316353992 85363539 103014910 571915553 544607155 406140279 65175355 854395188 939711702 179200284 500298830 818803036 200914254 839288193 534796951 480602988 577355028 317121483 894930440 720889625 944323541 33477271 800376629 275766250 20240405 289775564 769240424 536898254 16625805 589148995 341063733 366304618 803091117 916923305 402653138 701328669 530883286 412216628 696408134 43185972 481050905 481997640 555234874 583528186 204042233 5763736 726193231 927688973 217606251 31161622 267969386 680999433 407529730 164201135 416008605 803343572 144148194 470678582 583792546 599967085 662979378 310335779 375535557 663388107 227551095 32060178 373835517 296467366 779342997 380114584 279961880 354097427 270058131 536780581 583413069 312877447 201132737 295008960 527835822 583445243 983273564 851784945 502109355 72218892 285204104 127182055 540323109 670773373 150759900 374088452 637765275 934466807 282025804 834147832 509701510 907345622 197917710 250017670 526637784 630994144 939651168 284625265 413129332 143060317 951761239 908177420 339400578 752508568 195287324 415071539 704626223 115485253 119911194 400464734 949057243 973040113 860642460 952135120 613070991 494948898 317297307 237157959 566351450 151517760 502550101 960314902 145680979 490266705 280184598 307905775 680337680 106830197 891689612 902197537 708646980 899738440 338489966 607396452 185265661 59956386 509217982 745396413 111825833 629303909 344438680 185132090 464072936 597084254 473008020 916077535 23485395 305574122 638055166 306886222 718709694 841478976 367920802 804450508 117929789 945878092 909731559 44144503 17242646 63546694 758306005 389742941 139769176 620487774 252066209 778041917 194539587 102933839 339267389 777662217 112483656 342279762 684923868 916853605 325986604 279815485 236601063 85193036 53105198 634404757 490374633 18614608 875444125 134804898 705185565 257466875 571078134 754970121 51310283 385248570 594908606 918175101 998210030 536555299 559276367 292893875 174698948 544905297 23207911 24655927 403093104 69624284 979482004 979150752 932299932 927624759 846149037 582304917 849717505 919225968 91093722 84741475 830526122 168525945 56478013 27939363 183699949 84709501 569868703 46452893 835943431 569475459 906526555 87888911 151539530 184434809 505902107 30125639 375244586 321236319 460280917 864062080 758402749 744384890 395251179 55325916 219471540 847022245 464869496 561173426 991294872 657749751 542059328 680886773 586886275 303370907 915939027 411405973 425798255 723672205 913254196 906342490 316612161 747358908 454759396 757372281 69010335 590654449 301155646 25406430 282018404 349269066 987724311 417954673 976377189 871621165 622167087 702883736 610154433 544632708 964186084 61766038 867976840 743567843 738786807 630386120 173742426 311522653 447795032 791586874 636143776 546955802 709166170 124802433 158135025 888298417 739673370 245155618 728117583 983628561 417106742 457894266 926148405 111142364 863576399 750076123 263191576 901297252 533434112 925086961 524002879 856306321 897555134 392413407 138728227 987328306 307950312 192949089 392897885 623789337 334305055 347468626 941831988 221596578 440477314 991443863 15514200 986860666 636536574 402531480 858911594 441246156 167548769 312083114 667799574 525607942 264744174 928509380 70420281 945132284 21117124 404939338 213013848 552148973 289140535 346636404 99349248 390150640 13445076 603466719 134029708 855125438 404999167 22257675 980205663 898276140 59989183 504923056 92758282 459309235 333646115 639036927 193549540 414539141 326064076 453284594 47963719 997855755 774210912 799592447 426646523 637022358 66896404 537757050 983152405 863508476 84054345 521379364 902661749 380395239 759858320 389764030 644330721 747329868 603960706 317853492 704735903 435717675 272442053 535783678 545591918 169476509 55162555 827168674 540054242 364904546 706455011 493152274 56543641 420680349 61221664 354992868 852203223 991626477 140808163 220137185 826911881 486734396 297758703 953513505 122478517 798953798 222757686 88526816 809846194 117591724 624841603 475579769 82149435 712604981 364842560 476760117 380386504 375372407 2238208 932839460 329148803 971608612 545145776 511630466 562967428 143451370 66935083 370646411 444323962 561594055 110463390 732776384 66072601 703538759 77110686 250576833 503343970 904751872 412641397 705862173 717693531 899789228 27395460 914587962 520798557 286565391 850637314 701331560 545394394 723339933 286627339 836117017 194150585 765929450 816282456 157364790 308470305 207820525 867961822 263886177 469149818 633623158 921372264 233032058 209917230 947878230 21256387 970580261 79225923 811842385 183124555 570840216 160251799 391397612 927519999 916237540 798784762 788572891 403208514 20781686 673080750 657086387 641652699 438640990 121834221 374883680 509218160 291455420 347060057 793037960 462372463 810255557 879583703 540973567 337068725 575536861 364782807 973096901 973594265 452094084 961577284 708786441 985200079 401676432 152176890 672262168 255330284 240320630 270700460 961901677 974858065 985407089 385881801 969716893 793919928 244770356 831288786 883144907 509459220 617801543 296814099 480975480 882443972 109199808 164787484 694506660 970272504 753768641 51971478 26476312 285037261 997847028 977838943 717225907 784642644 559819812 469443220 807237938 948103860 198368304 71651540 360773877 849691151 383272757 898403973 156227771 176206848 938436712 216971528 601480810 609232904 384930663 196987516 774663885 466259355 928337964 967076320 99912383 861521027 495175974 880677325 370174614 645929118 506189464 949579153 322282698 65456454 772053032 183722088 373869319 519833443 963523997 336365455 588982704 806657177 972433618 471260752 534702792 580808312 63275022 803830015 17563782 216447649 904606264 701194035 128328609 939650205 165752264 991786902 187982760 210438396 156928288 369696972 455886659 175822468 908556843 120169582 967406911 988436167 636586519 248581904 855851169 103449980 183991247 697329378 615014974 134922420 673649057 203903619 698318809 232231655 383342426 917846376 909498076 344213621 603736749 314468910 440126585 484387925 507607594 161887595 203008601 113964318 829960836 536874450 697975571 751556280 822067446 97362882 325475096 719781325 614763071 858485695 586959325 337755053 275912866 353235965 276187805 894188807 6142518 651215780 936742225 548078030 397784511 738736923 262550358 812131728 202180511 101904862 624562245 500840357 934978998 231085402 88943825 558731705 631998545 440564931 668015416 13747151 924340150 920078642 342813342 121944422 882036994 901989758 182396187 986661980 95593536 833125039 221292977 411153906 584640328 303486082 323919089 4226665 911822899 570934932 753921182 730951121 396240556 577632715 804089998 580797623 74861103 302925142 609781827 412054114 900790192 440512665 669081920 103005326 728827047 650346963 429461519 47437731 564950376 368773122 433060710 287363621 473387965 245241023 315059260 737132527 5927922 768299337 370762253 759558663 157203107 698324517 75995653 823562392 387534654 974310856 294263054 535492030 325446272 199050088 351514540 112643018 260668003 468020934 705927962 752195246 772599111 667326882 684876203 772242358 555342782 414396960 660352645 861389156 801022536 427018206 765409879 386499101 176421884 125714445 601219100 872770221 340816393 609042342 812325414 101340805 344372397 561636148 663951842 936115967 514947571 435388443 86642922 279205679 636023275 961930462 946523858 705098758 621015679 826332120 806896913 125987599 273213911 438203860 917334932 597821118 766066342 629563443 114669749 597636142 382656193 752441266 683268997 797091257 745451261 17419859 960530964 446771792 815635372 140674685 596433498 422785567 875379256 105885277 969398755 945438092 162365301 515403126 863863812 894917708 954523459 728855242 455477809 830358667 187143324 755029644 677728984 18804767 660228517 606811280 485302251 7511158 649815311 229020881 340651955 181692758 424479883 664636255 658568560 456235546 407378187 338428140 323758907 210263230 845450513 707385559 555010465 462857577 775481920 586701971 848339789 989147241 642307481 530437872 581961355 779424116 540374341 105192152 445409954 588529714 110370514 566864833 234173259 369251985 44631339 506670211 803218216 247482119 336880934 177527149 457277826 183120285 183490007 224265784 158724113 49546210 39653047 555878107 432588437 549408409 574037588 80733260 322782390 273479940 804911575 492280433 207053995 450783655 367756147 48455575 27968116 70853265 29035739 597345772 790712803 147544509 20465310 840370870 21237642 13354064 301363500 122047363 631906592 253961933 588434058 658623391 717823846 945953319 448708949 575795310 703701978 146710599 300887328 143240245 917066102 208381339 189656909 60022177 719812625 219746480 1919870 268941284 584451596 193268775 993175864 18279178 882553435 597157529 722656496 992090000 120416604 173244467 170203558 313329496 23376181 542311129 904459146 557200547 666869461 244749688 182338903 389824293 599430443 878082760 667396322 575140182 698283490 669471631 109261730 956623345 40507582 967705724 61180770 376781362 436004374 63815400 572617487 396291487 622916152 407130560 878112227 407313626 605373679 866628760 596166399 612960659 771151041 966314879 485026186 888767104 498569502 646764576 340130613 261427214 667188 966235371 907916513 658346945 519892180 847324701 420823422 767570040 660681271 18106422 981615123 743706414 993134230 191413659 636363777 140842644 295540878 538101827 876652628 634472210 830437304 429027271 883895702 336785810 47413338 701736693 274461628 882124519 300125880 266079215 55562100 666890728 272805440 649050474 869616234 52987446 366473230 539066223 263467355 482478079 578876121 938847345 90182741 923351506 490229409 417429720 365182402 382637745 185761622 94779305 142577852 885994183 719406422 48298414 612266224 20654922 491928668 171728455 324185017 598690131 129080908 596878010 81738640 648379275 320478001 668203910 12369801 360976301 559638094 94251440 153455965 446122344 136441798 22740305 472326154 252948493 704148183 686062349 649263576 252869962 553353007 445136688 789130050 981454056 839109028 370451479 48532356 553506098 763645852 682153884 917327408 999672592 609233001 975575121 350332338 292623558 733463385 653664438 373287741 844583706 769124774 843094588 651057859 705875889 560582562 846225131 977011781 697537429 330829259 535244187 19677241 378149726 263917739 981803195 689125093 459773188 621083299 680559802 749343666 423559721 157718115 875923302 30076874 973882842 384064575 736416935 773320790 268865638 683173148 998617031 199448935 885274029 397398094 256661233 958943742 301769979 380584738 296930191 12156014 398571286 326757033 898332087 435529279 946501847 941327889 194605334 543870648 755612329 154330905 566703287 23172120 357083685 971761079 143804546 254133077 876809672 543234196 828325259 904142738 184145330 700393236 409544557 16019741 453869829 559054226 247354321 568348832 301302791 65631589 506759647 695868277 365618971 827931809 319134550 19678135 403225293 745606168 716804636 921188407 430608331 389898567 623684665 178195996 446503928 873420763 753249021 284130466 875069443 888017501 152196345 646485223 681962817 509414815 297113722 514806753 413572176 609344310 4905638 243367362 323437178 655052567 433554332 952014900 242096140 320692034 441821343 517463266 726997572 642273087 375015379 581485493 964121953 35408336 913874705 626651402 382878959 569615380 602026276 145396958 491203063 904082773 375036202 489158970 210964905 43327852 914765940 11098259 217333659 65681229 849901993 429353040 702090914 455607244 827783024 488335280 971386559 64791619 361139082 886880436 784622457 952422982 211008994 887425511 941094376 205963119 70217362 427293376 971504222 917817818 501778333 690715751 116780552 732817277 523011969 660830617 976484738 271552431 808378150 685809739 974603306 940467347 777420378 568900068 40142398 295221058 800527981 575912380 415985628 726377033 261713591 7317552 218031811 996341549 302551655 783555694 234083329 488586376 404026993 433561956 430399984 279154981 615646084 728297816 815650527 387160502 945893500 403232300 191788624 7069538 527529942 386587984 211929753 756825546 56076185 917619969 945426748 563414755 21841926 542828871 839278994 318104959 466587449 195303491 844222830 743960310 927021559 545981023 346456984 53438359 407525439 262249666 200775935 546475143 554688429 873413522 899505158 684843466 970457936 105961650 340216985 751859085 542056275 16162301 697249387 583770705 397876512 438547934 872042076 606563373 799877785 384685170 987384940 504598231 433537320 866881480 886009137 736253109 94990419 159810981 490025309 206845748 192338924 117289740 330207008 508998185 353455252 212039215 261736056 326006032 11601136 590907874 857714108 454859258 542354343 121790243 503295749 461632989 1623427 643628784 587733838 618432316 911271561 693888161 213010525 311982726 566618521 272062980 987557409 18468207 252657546 184880189 840244167 617356124 269425039 879448972 232078399 561280365 258290510 990365525 894426944 879295141 157920853 224091374 374630911 222012730 698757164 101603636 991430641 146784662 718462938 652986883 371077088 241985615 928906356 706743526 527014522 786369377 781817856 339228156 681594775 764740359 100522213 383619199 539791215 293404135 7138607 859394630 896692237 326830386 345292902 506259092 104308780 382814222 230340198 387836824 351168012 792474623 300837600 175980016 935254894 862104041 369419600 536809198 961853476 95283190 36730353 227706842 559120920 783464790 493801083 911906644 955497522 789393797 354006063 661795101 436309039 7773282 844886461 173902994 692283773 958875914 59923127 364644064 156923469 539173038 871703907 162725404 386207054 53797576 36295510 875287246 919799545 639937986 112025767 472329558 337521215 983661650 364151397 236476072 66964814 866475162 956375109 863976355 969132339 389810056 329454897 325554145 507009270 995452680 30461636 599108439 462619166 89174197 273352000 795954626 703664541 381038329 911298801 911332883 399732403 282105856 454706467 893608197 767849653 138036901 857065938 136665717 770406395 248439684 581503966 451444829 81731190 247093671 399435366 726074689 250157409 897582913 132162582 648440295 921808324 179960186 530192228 763903253 169590160 83474164 539889306 228352958 121263556 988590960 37539282 68806353 887663512 407535304 549818002 655148575 291089148 99197601 504887546 821993274 760765878 890697213 596025099 192885820 423478255 977072226 141093243 974161077 736114613 759492031 906429619 500314987 422930015 809251203 804156569 453306092 258489823 576681824 61217221 85698023 816380167 180315831 78062336 927839771 892922830 949678374 782769225 445637437 755863484 477193905 920858654 18818346 560334336 215544850 505715381 401627346 454078164 373387785 943475998 847948753 139121628 772047503 851123278 899092392 561004015 837489744 360018534 645675217 999380039 286704639 939712991 240704840 42807697 474425145 68229767 661308988 684337202 686159454 536967694 259194081 190317789 597910372 626603623 762563321 376763890 780907486 351603217 198644102 8815308 951716780 59411964 618309906 823576040 859029596 496771316 277396849 742950491 245184026 110735028 508147317 787951743 584322447 336462418 541230090 882866555 475360902 529136092 229473851 792606796 897398381 464583514 243267098 545067296 618523129 877051633 277757021 934666966 53297065 447692404 882692789 763490811 731571389 769443024 241286810 413529456 44606896 435126930 701390808 372573221 667693006 81192249 388160955 958536812 952064795 933535357 141300897 161144812 622273859 369644312 363841341 71390092 800048683 256480753 19326568 380797253 817052769 648290856 484037686 76536065 543764329 402519337 808709258 210776139 988137207 959245573 843327318 459943526 264475732 522153485 258672451 227153413 702897740 796492778 644000721 375576109 607076280 981979129 252695886 785623722 634651808 653998881 410399998 338218319 762129730 541876676 931053211 906177390 943471901 755232781 949152034 251528401 795586857 118315051 450059217 272934339 233848648 751090123 550018114 304278736 729610716 449137823 908870041 895464702 69306935 558246175 816212033 787351885 896093620 759804334 573655719 299888034 167156253 653297457 710581989 145284950 770206091 893571706 757378649 671077032 234138663 125997209 702718561 665129002 533505963 744239501 488266520 335417365 565302646 664369320 282523861 515021072 823263733 796043027 701726846 210040330 931713237 801796677 415621953 569239491 605323496 388059656 101844981 136779111 255200526 444115763 62026367 761286895 780328861 306820228 761329913 549780197 565032816 75052668 401434779 445174496 577311119 973644677 936660932 759612414 55640239 304124074 727748926 892074559 191195164 12994427 767951747 276739984 60972749 816113107 388252479 90257861 731737624 803737171 34478372 521639501 561016804 871615215 768711363 13370570 394091524 936346070 374805885 85968402 483101299 241100305 722681689 534776635 624024790 647650935 247736637 56408282 95549045 437000479 624308133 939520930 264159616 180378808 978519683 972840315 468171538 827060180 308793873 457860786 293634387 694782237 749470986 350446373 979690178 845411059 251907915 509790386 531727088 54557721 589712902 891596471 28519091 257378319 576727365 632965669 809532384 257580825 110907604 382226521 20686314 85791844 765167374 510110473 161867048 976295609 720852928 715234416 368877752 181361770 799318932 780868771 463278815 264169814 915837590 416522085 776383451 965146724 357244464 112900206 730609559 503088089 324801384 688162610 533931804 677114020 324360377 907085922 425213690 20500947 575661646 189967918 806467579 694628009 952924038 515154264 609969959 588509473 793707216 539322248 897130728 525691025 7311990 971489304 160060220 546620873 50250633 84370337 272376776 977470759 600174286 955936397 987871561 622357823 845176580 300509736 41790200 316278694 397994084 478359908 657622934 643029903 764011175 297546755 802814280 35782643 467422827 215859971 482964151 243382151 190574068 123721886 558643447 602715391 904787842 984264268 894958833 440969139 962454638 201406258 513839533 909125588 121117596 601806392 306201033 877999329 422564185 332529481 169862068 301011094 934105364 383272843 27574512 907326713 709211927 497146590 14258182 201668465 799840969 548523348 902668314 81627476 818457644 711050865 177228896 181477582 870445054 73316629 332732035 751630906 575507135 61913430 975936321 625689892 226698828 278898161 531382269 205298138 498398336 394245084 352986510 604739657 566857737 232732091 696879997 605813027 204532325 99060358 233957068 482253885 423084519 693426474 849975259 946966367 364113264 647919269 868875198 855819633 594737318 257264797 628842198 56403761 178656739 223162947 676108621 503841890 363971204 590944017 592337380 678368330 145540454 281777947 987116225 985807807 280503306 931091364 760853870 818214315 818783887 161447278 865216829 508690009 79723418 111372872 74104306 957974550 113013059 913458263 988971225 984476078 344897991 836771159 210856070 704435699 297142026 206381855 108186009 91682988 150816363 950967167 630875530 39162962 287626349 648598400 263742403 406716462 228370982 479148736 160729414 729962811 830222010 666882858 471166057 224117002 973119964 862605959 115314598 20803293 990626122 700706323 302534086 314870344 796028325 868057313 77170233 392244098 835128650 880722889 450572191 299931134 35541440 750889572 336206881 152051088 637135273 73146170 671151581 504453137 427036943 812879808 958837890 779962520 811401882 245790202 449459791 383624533 392060446 122797263 515875528 126166286 114305580 832087879 51380883 224559315 334349483 623936079 691119781 565331133 440597727 695745819 719367993 715240201 210249714 463004627 541153474 137635195 662413905 37173977 457707936 195739517 377210127 751031057 9285848 418830534 973750116 283941176 863091893 616192776 368813667 100532113 977699425 669648237 132890521 779052213 899477590 165803738 603957181 361925161 835306101 298992138 959189032 70127528 469002920 324104386 933726872 747392514 692551999 255320635 519415069 629606282 812909972 408525254 606393748 93106021 160794228 116568294 369482301 821332375 806379741 697315937 179178731 445512892 906748359 768995385 27320709 325869489 521310311 702255141 13571115 890080920 189831499 1301727 531548564 987952959 774448935 528244628 78198299 927628147 286192341 961397659 401052904 264512549 68969545 583347736 681739743 145418607 921437018 362729845 561201777 369446805 993155494 401297529 655925811 371720341 740407298 521610158 71679159 11413989 383697932 495185677 282525710 609098862 210263986 432334731 851183671 74743398 277441082 385657231 308510187 296384776 717299124 50481748 528464286 846180365 436329188 637392282 996831861 467595700 865745990 115166026 572578345 577815180 840478178 592690521 430943166 692840500 810096833 254213377 662140558 765426290 126040123 340457870 920850218 924116709 415436292 582173770 431277597 870857203 200581084 983911977 575508200 20685909 448686073 410294468 62977672 449341173 96127433 72589181 727557625 578512267 192038925 39836637 617975640 122422896 136309483 709995293 952066995 583412677 699156757 169778738 671217241 766842359 778130442 915071890 853138298 190557942 383391045 46776523 235646634 992109880 282595947 305881685 510556608 264809975 939776404 510931006 515171192 24388440 260044133 494803106 803729753 496063735 437990008 229400678 240252175 11709427 21932331 867112571 53723936 905207040 803416641 355463161 419679574 424473127 719152719 999174060 104155113 305159691 797212512 885772400 317415698 207591982 524510094 318089409 160836411 48866670 363793056 730682179 5543134 357396334 641989806 83331139 725839231 83258230 760850176 300918568 936351836 48145685 183181221 768065440 158002796 562716735 281102812 635431269 618214017 576382343 66484409 652947311 697357029 112905299 864943987 622755172 772534030 347612308 953860575 202855254 659003303 976608561 194522747 827233435 219131375 787349619 356625501 937667126 645170980 945887613 900373075 195540143 107926613 336898528 591822156 57502043 378788047 954303643 575593580 354317603 681235643 590233099 388953279 47059063 601685798 795484470 937562554 158486717 344825424 732792923 190982742 381641644 632253253 768657966 965426416 660509825 804217640 241599837 915210031 218028022 50327583 390604696 507003412 411719268 888512951 898486910 332900924 12442691 375796116 97318774 134638765 255909755 722143807 455965405 406489840 783436834 69955041 610234 552711661 807838792 862304973 295069868 511448708 212969416 808685850 36566240 765913561 138637478 357161296 645368167 245048724 722481596 254286919 931914668 478532351 976184571 211774431 451163712 145955640 573285717 468518805 297258586 642415052 699287205 290713135 665653292 338167305 569804560 416455016 709599359 922896215 246004660 956293062 375524579 716703104 565128189 742773764 40331185 790268182 602064396 993508945 479208371 972444613 215429906 883676155 534938686 534642427 272723096 18116493 386320557 288365877 618679637 233838175 169981278 105132124 667064694 136409718 532435808 457484347 113878472 143230774 302029355 407338758 187662897 785622195 827529319 138126708 627892228 107734483 804306742 217418659 831125915 568637929 422267167 403610512 470783311 41954997 555052504 422986830 680967540 622838328 643933768 674260706 307315609 104934480 83962667 860721305 662759782 555273189 626061574 241607683 392940226 187992012 513192265 286643900 886473560 181691844 761292783 748092274 340141381 804423992 353962249 555642299 970931276 444348692 287073749 97515870 48442976 262745370 905838456 341602460 925780591 489014848 679790257 422865043 509783283 714851580 706216506 485355940 693526408 429342606 236100296 831359585 788401461 339288029 982213981 948320151 922743038 422072776 95678753 958645486 437720762 765576128 345291843 531866557 136276402 544126659 868127711 232328602 495853936 374345038 840388720 469991373 721745110 558745345 901707218 135123717 519758092 781610842 355437708 684554039 712337746 280442509 106096909 876321577 452455926 143651632 254865217 384550814 876226917 294474867 832880490 806168281 795323757 277918152 920129329 395011553 719169687 128507056 91261190 907892504 584790651 646348789 273823859 774251831 372615583 850629222 817018339 700333669 460773807 726894388 185812496 172365072 607376126 21334434 40189906 446484281 889506459 10695040 987546629 905289215 376013241 612675512 257437577 506219023 399716741 39625966 942560143 549909269 497438966 714327219 599999361 42917377 551836514 831187962 936556678 223926917 214349370 839203175 178640232 977914741 885768906 555196138 246810290 301256695 701319414 156143584 84973444 499570628 749948562 889741695 649381344 65232156 613039910 486732397 586572139 160713850 798832873 888501295 939066628 208786369 994016484 340378053 693202004 877379991 638340821 787271147 439141997 702751520 978029661 845215513 382555639 889162363 513349966 245227829 556316861 979326581 73382832 900530203 691367227 686070428 366039373 165942166 84699275 147490774 206506475 715968229 748657626 92202208 129564478 580652512 448497203 935788268 104421771 662585900 430537973 931828098 767837959 842583922 143434487 527547861 705814827 536801800 914977228 142531247 350921304 196001992 456582171 63070135 528166665 907915867 999294200 87822042 94863954 941481244 798478033 974223304 450545734 322564326 882306265 985470256 982957595 21044440 550714042 631285368 240226097 528937856 563413909 927261820 945741141 563128964 685788942 624715270 736966778 305064436 966169333 501811081 892621917 920692322 787672520 994604151 605660 319132163 979517452 477929581 296024897 461265419 362429368 353260724 629401602 849854134 999235912 150147141 24426532 397843211 432828274 759227960 550995937 257426170 993506081 914693138 475788018 193299187 498910664 602570716 326301351 695853696 206599143 843656971 765324634 615780279 812817044 842991072 946954174 154280423 253366117 63959100 466543531 502135625 715398090 79214518 437973512 675705893 35289154 308367089 431491424 507572409 523795730 326138623 625510949 640424232 462143031 697902559 227824050 213695908 569119935 679573403 891636426 214796165 409996619 547564587 124247421 664233012 615757095 296208187 592790116 430274092 980562240 366911727 153831069 266608171 209103504 871521613 134104637 791512409 543838801 103115506 251207953 616870969 122153092 657152655 149574060 140292223 478788577 613431631 188534119 235952826 804446533 565263067 764702308 80962892 20667916 620433507 774470473 747513291 865018324 21554981 597505760 48157698 390478633 621256167 309627523 702875922 766706236 591594878 258355772 71134174 296467657 81946901 135217333 375187237 479375284 114347226 416315212 576736383 470286554 327400511 160366682 332273484 682155447 70930664 250786450 231603927 876201194 709832908 582979963 43752444 571081788 542803380 743423672 303570280 856508457 123530151 183398935 254232715 643162385 491419377 526178204 490658015 416819175 715183320 655598642 568853113 611470533 534344723 197484152 910093810 909252708 597124758 894098584 400499392 841221444 919287032 677776375 733696855 784530743 393944127 794541294 845411751 963638182 268499643 679107234 531035143 517818410 845606263 113700304 318547076 340607489 344964745 472699660 645925840 889788623 358854224 749951968 316379685 71469992 284092290 670588371 739098831 54961382 470401705 822000116 332290954 451670577 631296099 24486363 348977566 482014359 686064897 451683684 576508914 51148531 990770173 214887670 201630078 411176747 674761604 304465564 436364357 462776221 470916000 892488962 452423032 407581396 94004876 51894554 562693747 687733200 711528290 888315425 56476657 396574512 934978254 278219193 783307123 750386915 974870842 966453314 962148620 387752251 506562831 703446242 752083782 194477630 67496067 508005826 392528809 546837294 259836173 345087247 258068943 231255054 612663247 346711030 847357045 779822372 127381312 353341831 71582147 154315429 291263221 457753860 682758717 700368848 694393053 166728400 867144065 690631745 612019110 272231457 544892470 685056647 502773629 25167524 139797789 709864270 266490118 227595760 529620953 166743250 257649639 788004534 325643820 35245465 616645006 75254089 661392421 505209056 945430643 40681665 549036150 134099481 14572990 173992805 77343469 279917429 336371906 749898570 362359897 559984713 467792297 44381372 780597961 24721841 781473608 635444008 659546990 616817322 606787786 879362377 274274537 450236866 131255826 37836278 973061941 832454635 12159847 734167469 423347998 105131442 546705796 746767755 48062240 649902041 593242327 212319848 878941568 20132535 638840579 958857996 507389904 37905886 488441317 509870844 762748862 526286372 576586124 187787219 466251355 781859130 719678567 575248962 114726745 305332277 526986010 412873367 225841995 206047743 492014698 72093618 718696368 555235179 166430054 682273701 660480266 293625205 620375100 810403848 113119603 923053134 301685689 743248304 586310192 126182820 192822487 658272233 165741543 64184675 870182171 801638923 328276162 733604915 656322235 402462198 608216066 50525569 341111500 964976542 518772377 901049267 635352512 725289763 973356097 935223590 369940472 571825901 84790730 751865258 619439024 50264083 189036886 146092551 172300480 45501414 237270787 508319336 589214423 709736341 203174546 377348025 724357731 338644850 524147892 345585039 209017286 153261226 584397866 267277481 657064875 909007019 733643457 397898286 691632432 253187277 943825567 65894367 454574463 496729511 23840812 123741437 372937855 963028655 31058906 732316685 324128297 761892287 952994822 923978302 927794516 398358220 89803611 312453923 26135923 272567641 739398153 97292528 72007813 592181794 843965650 231907314 24442068 739502024 508401268 331842202 613590872 766407561 641969567 141052970 507369453 599850389 845493626 205392061 107085849 109755794 542888261 103767828 948590067 427170800 210616653 960519803 261966358 903728726 332377753 843416143 7112033 746872197 722711729 656601712 736965728 956498071 62785450 460366756 750461966 358825680 56526611 692144396 413078171 374571921 682025211 602940040 348828986 230280659 738670665 859446659 72215394 531783594 513515614 853397869 24999042 872472804 835141239 877270490 170489621 846940703 733342983 490721016 527295413 730221304 636100801 346805684 289694192 835510770 420397588 156045397 257570774 373001649 304629906 537904568 455554165 423746205 854393133 880496436 349490584 32279650 644681364 616278927 797923077 831577373 676087818 443456288 195205970 838253666 882086714 243841971 692816067 265602130 322862382 122904015 217592836 814446627 894961373 661574271 83395319 775446569 252167084 494087696 736743661 64319502 382334066 109226860 953608597 246347112 485886530 20664043 371422711 627780236 177911504 442535101 872321614 199269000 402461848 24115468 481522917 938691593 342077522 494347319 543732146 864799012 926781682 89094991 694254980 251285354 68911874 384259811 690518861 496256317 778827999 211393243 707342960 762404770 839698626 108621180 428853556 938337524 311635792 422869309 564496955 966846454 102833213 138476693 269336479 933603035 7855194 734460294 819821851 27146848 692713456 788487211 896699762 705319701 751498832 494169205 482460521 965943059 546585629 616173199 990942434 490749127 998025459 684136945 654858769 218412873 299470541 722188302 434938393 883366106 144512046 537139807 821188870 935086359 905759238 83851107 492159737 782553502 853813441 22376728 210231869 591814006 399073658 462663797 144570675 61953274 710668161 259417538 169638527 335009514 450360326 111024819 214755596 912927022 584051189 221394233 748290422 42057718 766036540 127477197 87797050 397265698 483576960 547062150 318334858 147257331 63541588 81728655 526513776 897691934 969653033 180886629 963695401 288804437 593038610 487780343 24054180 404260967 513184760 471355755 274258045 79323923 562737440 748125432 598593716 284729244 337492893 320221716 309939622 301757373 841214616 798380260 805171799 18666785 824037616 611952032 687959436 297532112 978653389 290469225 940746121 265270198 355392324 929412768 194026259 255704846 634865038 408244826 859861655 831236025 872940603 430075820 344156298 746260985 106617244 421201354 363814225 271158206 383933873 174694237 123784829 814753524 922432592 120791701 650426682 220191897 164155530 210844392 771156416 866134526 944031494 215376968 77997113 163939700 935301070 67381343 448194601 420312296 794730592 831084170 84159070 339614403 806354732 14928874 559996011 569096110 152914260 190992571 607021033 720004028 560221081 114262746 613455928 265969147 391873047 109358734 499742801 16487742 756616731 286781455 71458397 198111910 34524320 31389335 127246029 867945511 409089783 320640528 858483333 468337202 544075101 608943679 261883349 153403805 792315095 309777231 39387884 796456771 205160821 508418226 832463021 710139948 518039117 677991236 960040603 366712902 688595483 342099226 991534149 736939294 230602512 308491454 928290800 122200798 150869115 132796761 731530128 953979415 85546791 302074771 755455896 835008464 644956326 94552181 807209737 691861882 535389260 322452935 283932263 402027868 1006816 216725455 597825085 824470855 451009021 968501042 484758719 315889171 86646303 525919825 763893327 334254916 192810476 449651892 937278549 685422185 885904855 786836557 324804639 167773596 102151526 30943037 685557440 517649157 708502038 773379886 363024784 88625632 820187065 655357733 362007743 530893216 877262235 640868967 854956030 942374653 263993926 988315640 466061864 872303827 158432938 510185922 886730472 33154633 468603085 983730389 904634882 959757924 698234594 120288122 697328136 968089947 812856930 971928350 442624473 854743409 567017013 46417969 862508971 38495895 676011384 740136325 83934526 681113170 944968654 793420078 620333302 543657948 294818448 14338763 195772477 614233728 729393499 344178120 228688415 337820555 830428003 888422436 33082897 822384766 815826571 223741824 771801221 977415570 785837076 714574681 47242817 579117041 750325262 990802463 170799848 718508467 940251859 327575213 200209133 615635555 940181819 339500237 155165556 48263526 913427310 682558738 38282326 570253768 184319768 550689803 404663574 263126291 575660032 334565158 51234931 977575887 670258977 626805002 855554315 908203000 244306719 917291960 325462396 850935684 293609920 471251301 219424842 340951563 253487575 723945350 937730083 902092711 367842864 177103061 277134068 4789030 355480800 641217743 485776514 826253352 54204582 959121060 940723898 583193829 715022727 71953315 805922552 418188939 498548948 383606233 864905240 767902711 775345256 288488337 136793588 168788128 231859203 316283075 472166860 224186677 104802973 317679396 632139030 360497616 50959352 109390297 438107752 254842199 659992477 126678198 840407185 463113797 592459324 419389534 785072654 459118060 405116722 284084772 778502832 365533567 176525613 917056094 541306114 762276423 869330686 199559884 615484664 472630483 562418833 212263937 317498316 818058427 131989389 5488161 462044909 174956193 638615996 625291637 818846143 456760804 779824784 699865242 69704071 80175776 748683328 933661581 256183004 511128457 864712727 632720725 315455734 746758161 891809541 435373042 268358743 618624203 710059306 74250738 683485832 438232826 594415564 861775985 88392400 187801327 419563655 741730043 353582238 744776928 286263585 481217404 704100236 445604364 557849730 336630328 153940119 139425043 452171208 808376664 29888908 507768390 424674525 794573286 748961132 937516377 503810459 109027450 478411761 433317382 525051499 30593382 645683928 979661062 949554608 221342462 399125745 490349397 142640128 706325663 547055482 32103439 384988281 563738119 760808813 185448227 777321375 244892362 616357048 819332426 434884672 216601464 827866530 800959163 522327562 610519749 891269656 846490723 944550720 980783894 538204711 938750902 493727898 742079045 695727194 474064253 800926197 728807296 333100972 644874972 585165556 91929705 596562583 859095887 507876087 29823040 169927694 917700720 403645476 660034791 104030439 150468655 284504731 564203609 640901076 691211840 20418536 706990537 361405954 977588313 44056502 787382239 169533998 98133095 756490062 492714868 218036409 962902322 130174 286396646 918088787 708763201 936721510 199329423 220604864 86445857 507368339 27890007 77332682 355028286 828675955 666298955 1416107 580528358 331781129 917808058 663366817 797185408 287925706 141015938 244050710 657945326 859162002 143105940 911682811 666951272 137848432 9684092 848044809 313890014 286989583 57122195 830973509 287633895 821868149 712674546 292391243 785928015 130124842 187823437 723414209 50269543 666500757 888775214 98051265 317842768 174149614 503285093 982572212 201802736 237814097 584117870 386221976 689677376 127645544 435141633 881105233 545771445 774176077 307754133 65541096 117277314 17224267 596444311 117442457 904911196 17749602 386780851 144085402 556185102 620267646 839748743 112507642 360179423 583918009 831299365 939288165 984149468 408788643 186433907 450403976 21685724 448505041 893027823 564939773 469777956 873386371 840554635 752152536 728399148 646498949 300151265 246548636 443825646 655553988 536109553 334209775 270847639 495410503 413709116 928875113 327294744 302126925 715969414 238624509 235995071 817005888 464720200 307419039 368238467 331448711 881375135 456801504 821297955 874404029 652100416 602353088 37163815 887180568 617246000 919824241 945992848 631007058 816568355 169399976 671603482 59162956 850359693 212056437 435403357 93590957 213681541 238479635 646628292 239429873 693475575 767990727 495534935 750993057 126861501 122716255 217650145 326662195 918382254 719842259 585144660 125898024 286039255 369874737 447319423 284264163 906054439 330105372 308308938 852746483 197588142 580659195 677028230 243671773 554192351 875794435 880259688 353032957 446862357 361247306 713405265 699657796 353782217 392601809 707081493 126349863 499135294 231636448 879507317 575034976 45608943 549375467 919398288 911452053 50658280 557671415 909844236 256774923 412694336 386465939 251524935 504907948 140092373 965366610 169795 456276879 787682162 464356971 48458271 773887111 548114981 892341681 558020703 774916818 890555736 270578677 599446534 302554169 605022879 340728969 477325347 244128866 759213938 294337970 338204784 670062386 223120461 101676806 436286186 36297288 22256986 510613458 694057823 572290344 577417194 654151742 819149718 840372888 383617116 814680453 325678538 719634682 273804095 60437197 475076378 616114776 331374613 830067312 114262632 442910076 262071106 983767121 730427630 377994549 407122797 461751436 132385234 660278100 923760766 20006981 319790290 330835170 136023685 546188723 975416223 538150219 164165488 410372775 603796860 336226001 736662025 38286393 847519876 180358166 837316908 631062686 824274612 968555289 279344300 67791030 573262639 8239584 184209987 915746802 13926777 496526340 457093034 51543361 353750201 406908788 320315889 105979024 888091929 300244711 919263392 728109560 559860513 671462274 935994662 379695607 919743434 15022116 930952988 83839625 951353345 177269332 958757738 311580787 568086214 323940276 653055632 784597350 953724305 746863250 166667065 435446161 355131068 566002337 925209648 682539282 629688330 209988762 337282270 831918381 389974207 456169418 581443017 836511345 667860752 130901040 500132553 510293477 444663721 307902868 927563208 945562181 702888637 294154622 529339262 379299908 854301139 252951748 191531805 99199790 423460731 176134699 289886579 23464532 280661664 249357825 222056667 396544660 482274257 465538214 762993793 896067078 973790371 440632337 844782864 930302249 23575761 156488849 316240309 769197080 360316783 559042766 285869791 164783438 805779854 116845493 440962331 183677436 953715472 623482455 425244787 385566355 144814257 344123008 67255070 918334593 405024978 700935518 616300507 188630015 979845723 770099900 950613729 577727718 693759625 795121182 112587374 532560392 711436402 367703243 811649597 939743892 139332155 334186368 479914469 882360875 527523925 518062940 420235348 535337277 836488093 397567565 783294 887349748 106821282 686141844 739208118 753328044 100110577 289634036 460439620 361492014 276943105 411904243 11326505 627168880 739097064 688504041 135502818 20695176 203639235 999182338 678568621 984378910 287045090 629149520 704631097 487071092 751765379 533571066 732493387 268009668 849519451 414785345 937091255 458741975 323107077 423293854 716504820 550209586 662375883 294123989 54927649 341514335 627738570 722765011 141120043 20119405 544105840 620402425 118662219 586734977 532593653 35487345 872781376 65883470 789914577 522770697 374940125 642702029 177105273 396283046 805308625 973894211 180422090 485549203 421413327 705349647 862128578 609714142 594907160 323838305 323523349 641705207 236756781 963625656 345810670 193099116 152851920 913231415 623282051 648367190 988445719 771939997 386783789 471379338 460917283 240295812 162011219 197764839 115662667 709312474 20599567 656062502 559900245 669091747 600978768 717120438 700025596 105911332 261094956 55481504 968151569 986693089 673681214 162058260 998119730 416264345 945164166 670782206 216216307 405692464 901052465 33543260 918547638 488391987 92291026 895305155 367802958 700261658 805301391 485311368 138058305 755533887 846084938 638047240 99982419 680711614 763516458 56663671 491256296 352282902 963566212 488437894 291756667 280967669 483162195 811775637 762170721 532563171 290273530 288898599 770577130 235179649 901557268 683327984 290390670 58146591 463495156 227585006 809698954 358529431 61763482 421270967 179619864 422592914 768496524 776937862 172569130 832719927 781542454 862772081 947506507 702045653 405831040 408998296 177253281 656002867 896371356 932939599 170300483 514249148 330275240 422645392 910480234 763996226 305911829 125442674 15764002 532553408 340197341 356238509 570718932 91254457 677137091 291610029 947379975 501343037 877534965 511064947 833404402 662292586 337408032 482380466 608218675 594324936 661616344 249600152 92227700 723837291 333346947 31131030 327394183 289242404 948460481 166471059 940386007 871115077 835156380 862734378 647023600 705154260 766567855 126289701 570072476 100311062 429636468 152248558 687460053 901692635 837574178 250266281 769898308 506315577 921946997 725427708 266838185 499458185 96735357 377781655 417906834 153669291 19390959 944252815 625413396 890209865 142090461 99564216 540960020 195836975 283481045 100931519 81115616 535815098 953645122 240326821 936581061 113878147 246798017 88757165 421704325 988282150 903607860 393939339 956396480 594840092 589744383 705643620 104372931 871481736 860041453 946963341 771671009 482440599 697252954 792880704 548430345 592595106 659929857 900996698 726633209 686990149 543252961 376950091 259426290 695807496 896711700 225173134 973225283 338750850 135206703 315102689 142868369 692497145 20279704 368136692 818005435 467691320 853333474 926983470 791242054 725387819 423640102 419081268 404509487 708103511 30826404 730652814 29600897 708906347 841823826 687479939 73153640 618902846 880344259 721742428 358545082 37265361 280238973 769797721 111657260 935336439 159577487 930680131 397258328 504428693 819623752 416046608 821182970 933623806 487270346 634888437 16407779 531325321 698128090 492094017 1578011 453092497 860986184 547868301 904224238 65195019 147550170 625632867 774541383 113154871 549910758 226566020 134013262 820394823 450208659 395379246 523174474 698032172 183547835 628716365 601614998 698417862 727950269 108223219 254136971 797542927 578613531 326906614 445594996 449805730 162857504 610377318 346120946 227355977 371683905 689977096 39827761 907492984 837734370 45852682 106621048 437864303 784097336 148019623 901019333 973040766 821658701 379168592 303380018 530325764 511619413 246288879 898901864 444216551 231305937 51423508 928457419 500886749 647560352 525310265 197687553 330493033 733289476 889662832 97030145 127906593 1525671 751569102 557911076 195709768 613834720 389361853 434921891 829903380 589088564 870579113 63982324 411390371 678011662 172300309 857602186 680497254 830609700 384184092 181956080 59275682 795462165 536005764 297395632 266993126 522090770 291632372 455163419 937601192 658862164 730366963 36553680 448376790 486097657 718335093 526666801 871375128 681554586 196681472 840321196 396582974 171975787 426339623 406355979 112611877 12597769 387145011 13904727 376153495 492321994 512738385 911810533 878061451 974791604 258358575 496216017 525632938 584117247 598295374 54789081 457081812 581533286 21432690 124546731 250717859 30457125 312521662 300943012 712046040 926766925 134254792 564063546 494187951 98101675 219103037 729476756 272045857 762888308 345665221 659639306 231329930 815536989 836293999 629511643 494876151 840101917 672945135 51379871 786381879 93986188 73056502 995555012 144193253 163334309 888442890 417405208 73472694 441486128 873299121 554298893 326373657 30698863 74120692 746211264 763231446 277290481 874717375 360709044 660316585 956922048 339473311 131621703 759297200 203948869 806429810 358572332 495446073 50937054 597793749 994306692 191331884 741294369 527504324 296515235 227059931 306483836 157198830 10080345 987141579 403576095 980246281 983743104 417413598 698155990 288895245 911009834 161036066 368150915 949780937 463965991 827922755 247966319 141216678 528833395 616182452 418690573 42721713 228731275 981469513 745120225 286375448 890450443 959270432 846394835 430714862 313001610 327379720 897277233 785074904 751361272 743736222 964678901 413642035 83935695 482699234 504350375 260671674 388264550 264577204 555653934 122693398 624330345 688919395 732633525 420791501 497996819 971184973 753022176 287187061 187593250 851560893 633177124 493257654 552607408 29563613 562766111 541143184 156975144 779975718 173535976 45266907 760926684 265685027 839900271 761927950 202205864 222149234 290476664 388742340 375979644 222654840 463450653 374935989 39041602 621609575 124493800 246984014 981878534 609410855 2743191 533279574 762119989 981954164 596022966 17792757 869383980 258737357 431418326 654538111 465067068 90448964 581746805 660396107 153775149 12319065 812226692 912652996 933838002 658398051 205222654 36528421 710513776 234156114 731449441 171342887 899889323 302371730 82087180 716161566 573207893 369924950 591388000 631270638 56763594 301287285 888519087 88430255 821792513 215083453 174797668 221436027 278894017 331977296 751801601 254367115 644665115 671237474 95089989 399271363 489528486 672857157 676488612 755232656 952297630 225937686 271622314 635248378 711759484 301248338 338802287 858942969 51258015 17237690 948726361 377148554 505302428 930889880 167095395 443168261 695123466 840906970 896490095 82577289 627855384 601529814 537616295 290532659 550793096 473516 981012985 14701256 636471806 281704431 824112516 294841566 896523563 986106183 345404863 686284239 201039112 881191916 703766508 61221679 868306131 624491705 283764119 761940052 996489731 336914865 358757028 764942306 106935502 563632762 122651036 878210055 627460493 670634300 611513715 300367949 993503345 450539813 838014395 202146918 486749694 570075607 225627625 564607723 497712157 714433967 112726937 129063387 302876336 195246485 553004327 520055096 275165527 726204512 312152327 408213804 51117085 294759189 655124431 501841222 684812200 293412901 903443142 747064418 755732115 293778072 58645951 357191024 120797112 606792403 475415685 685775990 664520207 594039441 952887045 686813399 826395432 925646944 614318782 754577510 309813434 853980677 208608841 169750758 993045220 801360493 898418794 769596311 596034275 447901672 489275749 244880244 804529603 818420562 859651999 481138131 286897847 267064986 914512652 212437479 421044645 278820905 234646630 843141887 161581799 496855117 753273766 18023115 47195459 420614832 321950461 358261167 511597651 863670604 173166342 778787278 887026244 820975936 255505133 119973482 787791659 961517568 604027801 310994821 262695197 468055127 732421376 944876017 856706039 593654278 714880677 178499878 493547326 661476173 139692749 142904446 180688342 217915033 820100829 286634793 547453788 669404112 699576410 424603263 93247923 768331030 441179366 591819888 280869056 225491966 705606136 69941305 769481337 360208956 982361377 121221389 637805617 368366866 184897854 819531277 37838857 619787271 823730028 817718480 191186920 803058356 871399212 473513665 920712456 59525476 345590775 987712962 242519345 215794861 305913222 72679955 675766056 159441493 327426554 3413751 61344904 392679961 413351216 604839938 643804908 496399850 556018931 10658993 553441818 544734640 256436134 258745074 984764827 94272665 816218415 343931603 706721020 103232200 722185335 594699884 107556615 123633373 81658449 85026497 769966848 234177204 392676293 938675360 811625950 163674877 769642419 715924321 104094562 658702028 921814505 669380159 712404610 842573292 41948778 982246375 934402656 103667684 20477926 952818069 695134132 664461573 425956665 617141276 327607355 27037336 170175193 89288896 514171846 712656288 691985803 602404305 397737086 887122962 301926955 312050890 777382567 780320128 306718991 87436223 515173571 322576071 506045593 280327207 42795199 31157246 441379795 860131720 819071282 37817908 363354759 104949278 129623861 282879712 437276315 997216725 450046895 567645911 527973493 877066062 328447091 960594604 36098506 938425802 806176958 37742301 316200746 928231567 317372053 534706088 92310940 612973972 412063440 627612644 159663466 217702264 950275298 963013266 601425630 452112003 960137305 756371440 997661103 2099087 701122292 399108770 169522176 445909819 687574742 590450993 437302665 983041812 683214039 374231842 413107127 799550459 265586710 741573518 867628845 88808907 688268060 734889895 568313096 736421599 128391841 92164710 750810918 291559701 843328431 597716793 870900413 999170411 391028993 447570181 447026808 717130141 538185745 225070948 158363363 90652773 9139160 721758434 48039228 997963027 978969220 649114860 966553079 9026291 694754303 83308327 229546475 69436436 54096782 162368626 314145296 972264739 215299864 863988774 400491548 858681817 70583131 242607935 336925503 717535105 5173606 672519003 238199108 257629790 180801841 999366560 261071911 628221009 780552119 719632161 68341985 503072586 892076540 909460540 378125009 26228056 957245602 991171893 711801636 517942577 667887209 750526289 954231669 788143949 333179885 474220098 969974157 887897244 946485186 606474651 702706351 837419619 931985240 879959071 865984585 644441352 834254583 640984603 389473660 863829581 59241617 544520881 135999335 197190794 950840567 85372035 757213620 767831055 842795928 229022472 155073623 696559614 650216036 542059234 413207889 488049462 662928416 100082945 764487305 732495507 430788098 133607884 493896631 643458796 209947397 194399910 338912595 678503246 507918432 301836718 626198672 830018470 90030670 635449803 687571819 487310711 679644206 975848800 182106095 835736946 623731223 162553026 759115271 659852968 235978319 623266673 931255466 564570538 669045706 284012421 578451841 15822819 334614820 258338037 747993732 454191098 336823993 359059375 689041284 867573065 934140412 145297831 22743497 653054278 409336205 122280986 995689581 381562347 761356845 324102567 239689054 639944446 852594709 73469792 985777878 820987186 435661395 96668917 962852127 537424359 522392397 51986139 705644032 946403176 89840681 606023528 822951710 341101591 701262520 676259643 339422886 592596286 756127098 614469676 146364795 42809085 235981991 817151500 462662953 492176212 514595455 865403782 495451040 752753790 313387510 765181148 207936912 776493396 678917500 744201849 89105511 618783791 841214702 882213955 187321635 299743586 229242162 150084052 614721150 43169740 767599329 537068110 623201696 699112150 931610205 987791969 119328432 708136096 494851290 286230127 882227711 177214555 559982931 148789193 202967259 310250778 282673732 375745348 543419559 374460287 652766093 822077005 700747252 832720310 885869626 231965753 695256299 350779642 71641987 864832860 357875166 789681326 549446636 201071528 699668164 836884358 276687211 843409179 492518951 68742027 86058653 183309802 677877424 808728621 761532826 795056231 535383488 389936820 100162467 365579378 989169760 548709862 371881232 552903345 708895679 99189394 584118690 38045639 719135630 151238564 646257654 158757227 613271221 479102327 510131064 668069016 889222605 21419740 446022845 222019521 778364421 243810328 801496720 97444133 212670016 816823626 526875603 733998085 350149031 259924039 851887156 497727935 3932714 808694829 581392731 369263293 333755424 896903006 91549053 27183555 460265470 181214721 433766333 116683123 988256516 274087602 336708666 329678450 176422708 158013323 559748331 404302879 800926885 605857221 22189319 928906396 159745546 990448825 835102705 954883988 322260544 85856077 912680440 926838919 905710077 588511453 629095835 144093099 953492585 951479059 839216118 604773538 530863542 346938957 649036158 645573898 344187260 101964011 544153380 597120174 682783970 799646640 618174744 209367100 721007023 481435603 868257115 934064318 419787838 334817689 323063633 80063290 830867008 838850995 180979145 119103299 891973146 76853298 793874721 879844022 219618906 314601321 691796733 84939657 200460790 308523500 646162431 642350505 964922973 804645277 122472297 231375620 39450217 331405646 198828927 453233153 568980604 639119854 456754681 54133151 516603176 966020423 713778094 72571236 632326736 65913212 602992187 590444540 245022166 481774297 915152658 845649611 795511291 953104597 590355654 618633781 165595662 84266339 324676111 477330299 145642769 616003076 310346822 25172940 379457739 100374792 489192099 204509940 37809648 272886379 931233916 851039589 765340775 256812555 459580975 578267122 844768347 918710677 900019649 387872495 675022156 164635522 746410233 58883673 101109145 2461259 690108587 91326541 591857290 30519338 5877888 572797581 613960250 249122921 177133854 449135694 200296437 200003466 410370670 706047559 315798377 360834321 632302322 224974096 210372331 215325200 242301860 792861881 103783128 11417833 824236083 118776383 72772318 57842008 126324720 527623279 887636654 599058700 608926687 445157355 132085726 302870416 101154302 401278601 963913263 51608749 951274420 918502743 915871533 230779357 704309024 266517175 5408651 894387201 61117135 166702881 153267213 446452114 443674816 601939995 400716827 297240031 251740479 673010283 570323104 679646093 714382339 762813619 709878237 104881906 434129263 790330516 610099399 562720827 360943492 525884846 480305538 459512331 237849822 111201230 227584090 674930039 832789059 589243803 756749893 153386905 681197448 540363752 192424170 584345502 747830097 150825758 305575888 127067879 469618584 789841316 480947992 716738409 695214515 212035562 845093825 431961663 241322802 714201510 266116274 661445646 373943890 361537800 205108723 90219127 98722803 335854615 370424605 801801190 41459646 182223859 873976018 292718890 798214164 722488971 699666038 481710039 185672593 356190674 909406943 886858808 846427864 729432144 50426433 860124869 642616569 679095410 350699235 443678005 127409206 222890437 164183903 19699731 702517375 410308477 75478160 44220902 296897599 747780834 976123904 92585165 995460688 426569477 679725575 680714759 995372870 935178509 895392052 889518108 515942952 347178964 621238172 556774865 73490019 923586773 659977156 285956938 107950494 258877812 212007941 434955546 453979081 909298680 459120969 925180375 860621703 797302604 353548183 104320926 424593330 483843938 415597869 262561756 961555889 254772337 277953336 206157055 7616939 429349405 33396145 220423093 861246018 485171765 555125978 848836894 461212157 326837628 552781147 488372324 902495587 876393707 349531075 7521459 646880656 552066615 940987227 449841309 122430553 341505781 971176183 105696387 724023868 322525137 87208133 248438073 615281059 783423009 432413757 455972532 626886969 677746885 869479412 145869149 918393748 491765513 379079651 695834233 930085394 479402226 406392252 565796964 8740490 872291930 78305060 613605242 26097389 680777831 481215028 281973976 807623695 132846459 58744543 696842792 619606238 100313501 378075377 865962631 990491582 403123177 177087484 188281636 542088670 818336974 66494933 53995173 580292609 214852752 601702365 684992004 395778306 313001223 856719024 833694078 991424574 655009652 79100135 175205372 157681880 313542634 558494046 824439410 505641005 772207347 748468284 628060624 477402266 125605612 63544832 493251930 500104421 418708665 595586215 600480739 874747138 290057766 865575872 84344249 533172404 131342868 566933648 854429772 674347684 955208192 735582827 869140475 478261723 314986421 334229611 978967922 680981147 560826949 799156002 47694930 325785172 233071134 99197422 939791997 987332968 754277153 384146026 590920207 368855139 28200903 706963991 494914721 726359191 601256842 264502071 287240174 918048094 358802729 149687920 845522307 932593600 72625826 690082878 135624027 551910705 711643330 2032150 135217774 817103151 75746360 735796653 238773288 858936506 711901934 617565011 534734330 946123420 468080410 600022706 782948945 1223238 529232951 347611019 484461390 914743252 252118247 412129312 10104724 331008521 203031595 210367408 690808651 56658585 86215602 585272247 84281761 646914521 500647821 158859628 748294289 146051224 690133581 792455307 613620534 605989209 590248622 962084915 611198533 245589444 639215444 931442106 321492510 375277781 273029413 751114228 939963649 523754823 275634361 722120962 593251926 795369598 517241563 132565931 2611812 762249300 923877386 100791036 983142538 563179353 659177776 64827481 875872115 112752355 46221867 283222541 430364917 231635759 115304579 671067313 603856198 564628790 102889077 436795329 258077590 22993102 784343216 284909935 525779387 10000532 374350882 800799012 817452932 111234347 724452602 909994210 152150757 541627832 298829873 838521647 20733945 467241745 370767209 984619749 481331181 978469339 46632771 680961854 927732532 284788071 376326692 382552571 386047610 69692971 537127551 193821731 220347429 975063649 633423636 105842673 2392154 846883309 332117436 126451359 612006391 481434604 226899470 461568505 873368537 974321950 586048225 507605501 300258063 82366117 257294249 16749549 79166384 490094285 563259677 925181583 572573817 276682368 682330688 682549301 116791356 167728225 378798567 10617659 4541500 461184812 28163819 467141231 870644687 276897817 63181633 738834145 824856438 509496258 712187270 703846086 57342175 97277635 823687595 386118333 855017962 106712371 987977862 654090883 294884513 358395051 358007066 6975708 698281806 553792796 65208238 487896987 983612124 204858528 240349400 515966968 770057269 853738952 282160793 123715236 608604599 765745309 893997006 652888440 518016685 74995635 738151301 236374821 728368517 779654734 314631125 81372093 295531941 35257212 108783394 692584181 974716529 186941226 584496646 708780487 599089234 21928216 747483862 68623889 9572390 292238270 623508992 490751094 121111984 389434795 869465230 636953273 347366775 569699186 737953884 132985888 697290054 163870025 136083287 582809394 215406175 343943816 428141647 670753653 879671961 924545330 664127319 512141551 96805389 407863422 819453985 449213593 131999030 608747469 365427336 552631794 103201815 746905740 553893083 767044887 102647692 102339925 311158015 36362938 423461074 717497713 850984532 398894806 631824597 951078280 626370997 279459434 855841586 542543374 286371351 119175410 804916434 169158558 850550152 410345925 13514215 164615935 284100085 905689255 138220648 865413914 387675683 753136608 653747283 551679448 992277435 422522995 365441171 119940452 139586197 506749404 314169394 319289928 448098856 117870155 832881028 453540862 804467495 768360933 884427924 944851142 523815941 1974265 909558126 678186000 295891829 625686569 803542418 463413051 242437719 318233734 527346238 594876756 205045809 550839524 781062009 115016485 392652903 762866157 105716160 107554528 81619004 520438824 443381344 624092406 518933643 276302442 972765259 445405217 913427806 545735040 161987584 913183193 753058704 908662168 823350251 942970113 159928154 45814980 698791737 913279401 625737892 668823761 559190807 762450164 717312996 180490597 221443056 161092368 673499474 751160866 232315314 896291189 841979899 493007963 663911172 407661933 687926565 130883124 355340253 26607292 201291648 701257065 483212530 937580987 444410731 57310968 770837953 33233275 905424220 742399010 610930388 319927611 749249996 588264123 257027848 464586327 49761061 747380504 940242187 539261411 52610039 579228548 121819198 876164061 651792735 619774250 326383434 214420263 963030659 280099783 825449085 509149963 358761513 157802999 148854720 652108557 158411912 692611558 857662173 970409619 145859524 937374153 597527502 495899669 269885263 481131535 943510527 419513036 12115853 583416981 244201064 722569508 382679739 232735680 222630140 340049999 121360707 786486356 583332426 976233078 663012145 15670119 428193146 219691827 100218275 932336380 136057348 573609664 755115838 853968078 47018838 559282577 335788867 637450462 244285119 967066377 835229641 148578330 618674813 502406001 246963851 460300004 438129021 865028919 563178459 224056564 112290067 615975812 96077639 759898101 320799178 626796707 752684061 354165192 153290511 721169192 584468964 949552058 2155676 161472253 964592277 869690777 331849295 467422419 468109314 213752100 448728615 920719597 837330460 412030894 248117457 188339353 484629532 293750718 918090274 779681414 690061173 230826424 467466978 828731884 843362741 278619036 87123664 839085111 389318941 645658763 732401305 619057211 560873246 747997259 789002992 256773202 239679464 676724121 145580812 171077409 355228201 503520321 91953249 564020171 637482587 483906015 580407933 336747362 75753309 386871280 317333809 809472553 669355091 68784682 616558718 568101487 140280383 683592288 335922574 36270238 396203973 924728686 736040573 491032497 796558498 277872534 277721315 362902868 209898118 461752942 555114343 340743898 191890010 76991600 11088224 252217642 708151270 310034964 75951108 931669547 789487155 445308233 947041433 665902297 955859368 809579295 141593972 73399052 384903625 816677371 399234701 655948902 156704207 26290689 78730205 853843155 509067193 736557051 938171 389469262 655226734 192866541 486702933 831674272 192607562 150678281 786771691 6647071 58009373 863106706 438875139 653581234 592733956 58074509 791479409 942611755 794167124 647867634 591653688 609012377 629154484 151705330 4255621 926958917 748528193 209403631 484160497 817535152 452592698 478522454 44667924 642794163 106035453 926417911 570334491 502783070 876772851 589542794 861752162 448914006 563331052 688592860 186406565 494931830 581384985 78872417 847403497 536046863 498884066 559239594 731298937 265143498 623418550 456062529 287972454 205051420 937918871 682124087 538677032 486442922 385551031 478249218 880998293 105849511 567323724 314623344 389117087 123586000 395741606 87171849 419672797 527960529 923758581 52056840 957446914 343289110 783386934 852242313 791889533 246402314 463857652 162070909 722831499 145784344 276724210 937643069 301239541 650497982 897809826 929878511 410099846 608834143 153087597 11792676 734978941 956940083 719580124 958121288 787163747 833149913 729637815 159017076 597427159 692850345 915894942 520375538 531803919 670343224 928744212 430369947 559804945 586800672 622381357 31639023 810110171 767383483 182156952 126827431 38091731 236099262 580954717 391172726 857599537 818288961 110981136 330606957 170577427 957793334 85875715 709113743 838315643 840257004 690523491 642033016 378986711 581378052 199556210 769409252 732271874 330317479 502037280 630486620 836409817 136868476 511981391 137672988 969868743 715558947 372452137 436927277 790294583 91444331 125048833 443113340 620105134 563304734 6888359 670308702 433038847 281385750 825850794 837206090 596268864 840897096 535012994 637041769 138683836 731578677 672617022 420830088 228384607 110669565 160383529 929368229 780201137 724614434 835144344 832724593 543327556 511758134 256095236 968285754 671736115 147964877 221395845 91532540 602724106 487876761 430755239 567491171 768473124 268469674 899703448 623827077 430287398 35283909 488848244 761485051 491837317 492167901 466790886 961604037 627839195 464514336 977224962 948651691 97674361 258952335 740389919 533479624 310094930 202118294 310843958 890227740 498488693 751579569 963306002 79492136 360553649 577487838 836044494 225180073 480878806 297216020 654248661 706077906 498800820 168176037 727641796 88060424 369175243 704535963 381673715 435481830 444676193 677667994 119520514 643733382 112677120 856648770 489183479 777979966 936662409 820496881 129015910 505706159 193635617 659505124 601773191 907355691 619131000 466525362 123789427 671901238 841258257 427944061 979054880 232455136 202863611 513061349 112699184 638902394 871003561 272083093 100592751 937250028 8284860 269099418 561 296249299 126124875 703758563 202476336 537722368 404129569 86474903 327924046 656848686 701249586 874566851 217929431 714051947 270668704 237360522 980558344 140978607 991134349 590507950 353149069 970100449 21922735 171961611 985303648 550483799 707939403 335783947 895722250 688214923 519424837 182557465 905829822 789998545 39852643 421805232 699703655 206764435 668563059 195771488 336696806 922129128 205696291 162897381 34941884 851461464 611477532 530032342 581965507 588138020 261387682 182395920 295326091 639156337 424648688 716917733 610481967 713081119 832521447 676842308 878856265 973094187 257845259 900497565 180805448 725682621 10511000 350469534 43520606 779194668 29595607 174945796 365766042 64700612 613427509 193297320 389764578 174430406 811146592 340847272 828445664 161180359 429924961 573294793 571585231 570256629 139160722 404114999 333675929 802492676 210873923 845743259 919083598 173186681 406269001 273938126 73045229 7731270 357682015 398352402 625642720 441747094 990288497 505608369 841719428 374935065 545007602 285630367 615146557 996306664 929485889 506299373 326610888 269929145 592791074 52144599 976887482 104224254 674685124 492536623 32358077 14792761 20268602 770728703 294769593 245348185 754083752 188257412 355856663 565511312 525588831 265958201 663460331 720789041 290620422 154001645 257305002 404683961 518980073 452841911 502104120 261848365 666095913 976432926 655737855 189607441 586824941 810182972 661925437 3699122 330091906 262195408 584740579 707847413 854545187 143468834 7534653 388312968 417492219 71014208 234915025 988528140 998861459 339338820 140915204 849360643 768482802 832100935 266947043 465132679 190821183 885760655 29756691 876408074 347753455 919299041 381180681 873972720 5356105 371061213 709071421 821872808 604704336 799365107 598889253 664283370 247456401 380330379 675485867 271348165 417093401 64694733 807444845 95190056 330824777 376079207 355056006 242321097 371330650 668697442 548217937 190393478 799326900 634453839 175090189 564634256 451747948 985623292 914257307 21795175 143236143 287285805 291948369 353155442 579026664 420268092 932021085 724460936 150028373 847106075 618626845 681112399 647290101 986276072 285750092 513574476 721405423 687637429 741753442 236380880 801760655 987188952 447911228 459746896 532466541 750409237 463375695 348802446 21498836 961325095 895294608 466865727 717138277 588122648 33937739 740936313 872068631 427177461 594979600 543557838 699211376 85085753 33885986 502996790 501387941 42709535 476095189 804874424 224528758 49061147 224380377 318830931 230206684 546474609 916126610 904261976 138028413 380887627 237581561 901136772 51800747 319333989 823903905 155689994 479870370 962889145 102752633 880283406 954230021 501007370 769187572 222729834 383902082 565587073 233192301 908361913 518052814 342055078 766011481 644004801 242550125 918088981 373034 479590286 281886585 862787757 71769843 779158816 612164572 225519307 139543993 718607609 139701898 799605070 249078620 499094502 194131117 43946913 288858934 636020385 419760058 557334110 296761945 419935345 615270525 844501964 731861347 588927538 313068880 729788022 135772548 669519609 245491374 980746401 920265166 597754352 696855669 184179492 212506942 922144687 35683930 505609331 456444983 187745504 632797544 533327840 186074423 724421347 170990149 899978894 136279332 799492129 490522530 881094713 607126043 755509506 719127997 228767306 408247182 24909911 249009355 106941772 795062892 213617795 19489917 227836586 555282718 465494216 608838335 518663116 531192934 595695595 762435234 940645501 350344804 371830265 346059868 175013307 814072020 500069967 326700259 736137470 968148994 26980085 142474640 797525605 790523602 576631425 180410577 838980837 105729582 172841419 76819972 994255904 433617131 584706772 987240766 279104321 493573288 977109761 124970114 54109851 855678986 882446689 937118788 216164183 182545055 560690502 331554328 654270986 818429647 24927147 231198751 77836875 824304503 855089984 848630987 645084662 63529799 555661546 445800316 967579533 198081106 20148010 650676227 8804936 183906268 208643998 853704759 442903468 758756371 783406763 216256851 314748564 53855423 964342067 778824340 301343732 351559181 938686744 57792989 371562351 310538298 207967093 479008189 407865427 775707368 910797240 450754913 992043589 602608445 742630545 420569871 302960672 354579703 376710462 156621277 408565601 501359734 176546440 281542172 367721188 365681417 662181825 273098904 231741468 588055860 773875808 213408847 642077468 472953024 84371599 909298129 675486779 339280014 125926013 658117855 46799902 264222937 909879458 537895587 724050087 426678787 400673195 955447264 148511432 483201765 366639254 337655547 681200929 42111802 861036785 719100411 409168444 469564438 476760551 452306669 121438728 516904851 510506437 638233382 730864253 659442300 876310485 689608507 283975628 536365073 119962559 147678325 622441582 127322706 603520422 288281591 932491479 189117471 865832262 686256313 333390923 763669870 115778032 816462647 752605961 411720367 415426478 752041663 173047223 269930850 752767865 364109579 205965054 277499711 440003971 7442198 429832865 450982684 888486999 344564903 467067921 413521622 211599479 790150847 432428181 537321091 616076781 106068392 498041662 599782252 645250566 521247563 576055557 62399458 331878574 919546321 399651604 288418053 651655512 679221569 873382992 901037452 779297734 172091659 119639736 862255940 646630653 950692956 757215048 271758961 556770552 807137103 580561572 963331799 11629426 348814736 591002876 185815609 315963596 14255199 753936457 71923171 360787388 393303621 813070467 853373821 736914154 190781888 344234545 745979773 157477771 464473363 352592454 359054702 544881337 502756034 643871102 844637999 300205559 702749743 852013586 326369490 953694603 65029486 915567675 315665321 335380031 894411545 910990940 656886430 463255534 510308802 758085290 464017266 627722414 222434465 340491946 461061020 10407208 604030541 710081729 175945814 892828394 317821159 857276877 925180617 687081265 557050172 678086969 955546584 900564602 31836906 873398976 223473962 443431049 328240646 847724688 574715326 361301387 815408350 521331230 963855063 337808845 726436096 117480344 958207038 168485349 509365358 707166336 455983459 858933689 577399228 632498859 539110619 559675260 471340438 807434612 402217795 648487517 725248343 245629315 906150819 216986907 69394351 716240803 800817305 579566124 197839894 345960238 327575860 782959046 57167368 423910601 739182849 809338614 313240888 958587901 1959131 654746631 64691876 359070398 320908178 764276055 237993119 902154501 624391882 871522967 38454397 517341219 378767963 5260934 905350222 356900382 902221654 839493230 841149044 518228958 406510425 988559689 521310392 951989362 60029246 193254458 90804054 199467475 107773389 202640194 460013654 254606010 93125848 14319271 315184401 594008812 921136871 809667030 268457405 625257331 775454887 871963812 921190861 79449799 288967072 500860315 950098949 854166321 153410872 37137535 945926673 230199200 625618717 726902594 794023774 729564107 942015218 346251428 610960286 532565360 799284863 905472898 403183700 964283760 504813083 725409129 514444515 748648365 207139993 390041737 222340121 973754719 103743045 153982090 471979067 301595980 182953644 241165565 473490588 579034974 821222333 362902349 871596818 389461505 30389762 105468135 73319146 427866545 241980593 800690716 89087650 274773813 238247465 413701548 187835147 842414610 900035455 164418703 884724596 875710205 796529633 299095993 422961465 918487090 984196133 584311323 730162096 496013109 580145173 367356843 780695332 719166679 913592031 492659355 553793170 927530213 722637070 825504824 867286863 667231594 712020251 346871932 907819700 481933931 814759836 525556780 522888515 505956284 362347343 910984996 850348392 50911651 566876612 389982427 466157737 271151667 655995972 843993252 736655808 243016126 218738473 555581420 327994937 24761438 559253541 512336989 933957995 329231104 704669019 788153091 419201333 892858435 48803914 717089114 119477183 827407794 639023346 634819068 375689786 821968753 948014681 511698137 4362273 149680317 462450328 707761368 46689759 344936889 253133834 19643805 639196218 454522337 611811472 101644806 326622755 861486463 666073900 992329026 55027696 671643027 836995809 544844216 620330372 582068596 181376072 376973410 718610258 494725036 107544219 654306742 208209954 861788636 259249037 433645713 626240080 185985864 636574324 609740420 392414505 36614925 674896146 180775342 166254659 957277733 250680986 512446395 570533040 961261406 969692504 569444982 757549118 88540366 715389226 765645718 784428315 140057998 20257756 244732408 80639980 28336527 61601747 185316740 494083627 196090166 203423372 590120354 442477803 179314537 378690129 229572945 351021726 203324193 795384380 6127599 641820788 44333535 830068933 118885998 704404262 574679718 379202650 975606066 888092225 518132681 369911379 534525753 142474592 613313591 83586788 702940247 589874228 205857221 317229161 986675591 890636439 505259779 445229677 322944725 604924569 579057644 75747799 866477731 328096264 400641928 104206656 350501780 478047818 131031291 436448804 201598064 173975303 936101031 684795500 154627150 388394586 704238355 225695622 666092463 158836016 229789279 822774990 890557429 713250845 722484528 810311711 425296262 375983033 830020672 281931180 989552042 274986824 215215320 196471175 635554709 25262776 850898909 912932497 222386666 98194102 556628434 294133140 619695406 223192128 927106937 99318652 238712648 49106328 630495722 984633442 797847195 708549385 227264575 133019050 387743261 617401239 333615807 211386082 342222377 98870389 470293745 922044076 889165677 504072947 402475492 210273407 361258270 944862563 718437224 165762457 253612517 254600362 411569963 780999431 443519059 90409294 242538647 998458520 329475945 649431195 73861664 374957683 118982313 590116604 294243633 767406402 97459858 217703620 943963643 359224038 407581099 734282452 91293911 135799210 376630483 351131837 192084975 959452945 42602689 103452772 702342286 261692753 180518374 641395632 136303829 908583232 307162070 487461942 80897419 207732992 994780074 892982816 95497317 353001548 48798066 952410706 11186382 887530319 759347422 461317409 513655579 926726472 369967412 943399939 713592688 812078235 635009009 201896169 36189356 69937079 729476920 241678732 382252624 792111874 150253653 47167809 431173737 471019315 688007409 47632386 541025450 448248233 455255510 329264322 644030771 90303425 40599833 963871143 113543228 545277914 393464861 764814057 940639732 894172499 503324245 730323353 119377146 284021849 342667418 854321768 592142699 633555447 279818403 18595590 882947540 860785835 273397005 200416957 301532961 686297047 152424311 564629547 701839208 412110248 889677727 969122924 700095212 907198270 26992895 92190417 471814475 891786733 401441489 431625166 862286268 403912278 180039067 696976402 501937541 834566065 634778706 666564377 801286338 463236035 123520670 570022859 115538752 600950995 910149007 633995969 364190198 300227683 516981394 971757222 99136168 785652044 601139050 455384818 654361903 570476658 820508438 768889122 227245137 263437076 311658035 232205062 337682310 693229549 294619596 155661828 518341905 284363114 899368232 895533049 987717644 127534797 269002416 107413436 451024968 641271471 444464665 659096991 43210446 487013457 306759958 272803903 177074671 290597854 261898879 428931799 45695415 46596429 66151306 511283315 365790289 474827041 572264901 874558846 508954510 365935919 626102715 46049115 583671180 210706014 79296132 513142335 969098135 420323219 967824895 824685824 977248260 818828854 752293778 862365719 984369723 293421239 73671035 831038276 731143415 152438103 156105056 210293543 610162865 165405202 763709578 114558341 26033839 585160318 273556295 628152493 67370420 994378587 437140327 445802910 660181660 519228434 724891456 376715349 156502979 180582919 307553304 302388448 127805786 417720211 110742154 557557978 124995114 613047998 478299006 606696208 788822476 846464280 120331944 160277331 183106051 503221168 165763732 745127362 457663948 513282346 818770685 705987354 318242948 259806964 408450375 361994846 576576123 918196336 881928064 218113543 705324924 417102029 862760739 705738714 618149313 863880473 152298887 219610438 392697498 477659737 489963184 870905816 946700185 885586671 863933687 915261461 159067378 946805105 48947495 200648299 818783617 820395620 358960264 308398224 886427497 715597856 380128472 348925944 651884535 552595409 766979397 753321482 9058478 504645384 888940220 9965316 661016048 657460084 172150458 5720874 263326677 229950532 492605407 253907246 989573967 840742643 491412379 541152031 257847672 1441131 268374757 52545058 378513825 852345424 249232427 411932554 57546072 441493466 280400248 195387844 310234240 337038027 121713584 720033655 415081024 428496156 249277519 743820763 743308352 124137986 162243016 15484019 792240599 558888394 521620868 692575925 975930090 336963990 649086037 949541731 852652356 224391063 296399558 662967010 334493720 352827276 214208500 644356599 79093196 145131887 600669288 655456565 179186415 250508766 847618105 110908044 232726696 792265039 367266327 530425586 196018122 262626795 872654509 724953003 454394603 338294392 227448174 507100035 708300797 540001432 81246952 97008437 339788754 5483473 728694230 322995613 308652658 707792238 162079758 892374507 965125936 105913325 530375886 33484378 711544419 132520048 674555387 259790154 863276001 705802272 693838730 317787839 886565195 804031781 359994698 471982845 682598289 201799032 738607914 911264229 676479046 431785219 132409833 983025716 800157012 481780645 762286097 86741882 373082789 66644947 771054259 911793355 459258642 10144239 558193641 829406315 297216851 595596478 522280031 652406631 289533958 928105003 53997122 601237658 86307927 681081513 777290590 476606615 245696087 886032211 521980109 422402846 629217662 443842799 607247179 663294015 314415591 968854015 703285029 156974615 273894621 946855062 560292001 810299916 896915043 608446574 558979108 722226833 306959856 597666407 47131211 348178345 709111880 113810381 710926383 641134986 875214861 191918330 357600878 720057415 192237113 128220217 658922335 277703211 923591476 413396909 390920432 732817579 122581848 740332168 224008751 151868888 500642228 683882085 568518206 769143198 637820191 474088701 309942952 604602959 654866315 891344172 246549157 188474335 768489624 998163042 355565560 472743033 674267373 106984887 806746496 290468609 811024512 187801095 274530249 279720597 939719007 517277124 763275245 855867562 983048140 808799720 696408721 886615189 654252344 133836131 315489845 448029391 920541769 952977184 984725468 616388777 104506526 900400081 432222898 651355272 360833344 292214675 321700240 578850904 256383117 984633978 1543030 190865646 411825817 295591943 10243052 210458877 128924283 381100538 685627234 325368152 613611863 349404364 26547879 702327062 745039673 765129195 939832091 606728620 138684384 199052095 936709816 338214430 931804654 871754575 646624476 743028669 115219439 870497664 781421799 647912857 836825140 484875305 682257983 948195201 495567218 11137970 601255407 209509092 180844971 421211336 86251634 755365469 843080065 39830443 19348455 566125224 659354391 306572664 95344451 786837894 148646256 653477898 97656407 267069859 460997316 300030778 980529787 527418865 543492544 300988650 993354395 759377198 3643080 379889223 328632912 496274941 938613265 381527789 86043056 279552177 641556065 894552281 295711730 859263285 429404865 59678590 365408309 992047349 260318418 643928163 637388175 347778026 504619520 159620995 957198074 737043541 868265860 867797938 744470026 693555907 124911876 335280274 182324704 789917765 867866815 405923114 869015600 16462504 964134533 185010022 595969099 403544143 283414720 857970322 403241005 805641894 68172846 112305476 841936472 842735731 573374279 277201481 789964905 123241718 837147048 399822903 243607865 636725952 848675102 101016673 41896831 925661085 493203995 454056677 349435988 142434967 484675807 724956407 281993530 228884990 785816204 598549735 412306085 173786373 871792250 807220464 418605448 358098608 618800979 564868750 363706806 915741029 883435612 634201798 608972482 131908430 800350580 803626340 23933272 27449943 711771043 238571447 120733887 975159903 961297007 466596546 993040726 411848186 201699008 753982188 113571332 455767421 679670062 480965166 955158606 553568714 677818402 319402302 94119936 949256615 684615979 187602388 553454065 700395875 121159545 938879513 179190129 206046364 504336174 8781029 751923404 51112629 203512773 998035582 859000397 80550790 26583961 760670752 422542555 575247008 628136911 714666846 895293040 531007193 853680707 123453565 377555152 911036363 380823452 21805738 109861152 232963602 136547905 304250550 993964207 282843836 511022677 750412101 72342952 654364378 356817232 22814562 162863849 48542689 106868018 715304539 768049720 880947582 974689971 968714439 469660465 587422010 604336045 135593965 727334258 590696276 366878295 353839452 576641002 380241531 854865237 202765029 999256164 366465373 494268833 516118241 594222809 922869158 563530989 320412652 558110733 246029513 136418813 294954694 597794609 938654848 91867984 201020442 992364018 666059995 628222521 275865442 227111301 611719766 110502285 307597735 372518309 954049379 96949651 902117032 888522127 208716703 51032312 9218775 618596269 509837237 231548297 335036435 37281339 202861358 957476898 541218394 910941937 516606226 195457344 180388292 128187682 782555987 803865099 261649554 816138268 84077537 921660606 489618846 348052519 620263236 479227689 765299369 965443676 667816912 214773639 778740352 30794695 553573195 385773861 553257143 789298464 264671274 106957205 705358343 498095073 530184578 143211991 694612125 40562061 330914275 791695967 510672772 135662392 653323417 841980230 424399640 41479443 27151627 742052347 793098896 729998597 779994975 972548901 470732451 47526112 336153920 981517883 61680921 712186211 535856325 967741651 92696808 317200208 482598939 184603586 835426604 7081278 310074903 35372973 258086643 55793559 43611014 571820280 789997811 968318529 830561542 619361457 381413810 755763848 41075076 309448015 83187601 387957368 53534005 165216190 107371352 803614975 414040283 902771543 437743573 779989285 234138454 745013341 949518081 14419213 373682903 426429659 261857523 205881918 490514692 12204583 836482506 873522378 232840227 42092895 765782780 607765489 409132094 198122926 700235291 51056850 889045333 932738355 16677694 957620277 328548233 14116890 562867958 682507128 709880071 516809349 724950947 395215668 719866562 915440850 945265533 657215403 776541286 826616901 124446173 842826388 704501779 388096398 199117154 835936383 914760466 356976468 202660030 461608682 813853835 327126375 184763808 736740031 458336983 65487148 907536177 562144491 978462581 633543309 325828397 325977662 242639900 232762299 90752169 434396362 365029502 999471037 502335723 194051275 669427981 440868876 556123783 287551233 140515048 912624475 172968527 915741976 826189747 679591161 106158751 982949669 826044357 755009992 10394851 709746289 908901250 404587396 427752912 705123888 142582815 556781181 684370688 51417338 884490291 79662801 813170520 578575391 729338791 71652492 334866253 104329462 965597078 776383172 264465875 275615494 144577380 466737630 188750573 399488753 844994693 188792184 269206083 98815480 647540245 704644247 449842503 630139182 257532824 351781717 475469521 56235002 476071536 224109845 966535625 87693141 465966235 593372238 994040060 616024056 556805903 36735871 837062395 838931348 158497661 240060020 948187087 978438689 191829449 418290558 551492201 629345164 515273035 901806276 438181940 467393293 204246055 585242832 444403963 483049568 940019556 651051417 943129287 999511592 237852568 603786674 783736924 733670785 315631549 543073372 338148560 484424782 242454941 840155021 926914211 648015562 232671937 736985227 227201821 825573475 53204374 516667228 549842660 230711113 380312308 333686348 656565548 57157669 700872748 315109656 742254158 554631425 865781279 359951388 60777974 803446303 85858894 700784166 184205497 402249596 532568022 20314601 461125073 161219644 550050953 657314912 437829746 589023339 281351871 150971584 288369699 975513404 458943095 202405223 294447619 168506938 918097763 464822615 75308963 343615787 774359768 102960815 504263924 964836884 227568067 866346619 703700006 934915013 619193016 38334182 227817281 42367489 307829946 831897795 575783947 815532140 733917844 642707057 789148771 570110077 191113845 42199959 352000326 245574430 469603826 469056041 328749193 178263891 886822483 165636310 310592721 171403393 518283545 387883748 686767507 553802689 766536737 338876108 271052070 826386506 765712565 217815594 663503288 843080521 824558178 257406547 820200923 425485707 320647543 796417052 417719822 442491269 322749130 449057086 379742220 474445627 857156772 469759455 274444458 160721108 874340612 178997717 879093394 314676974 781347937 948587883 953500943 918650438 686434897 427772785 278241433 502319813 595228307 117956082 837977852 323670376 689365856 208423503 483558125 70324796 865219043 690547981 291609768 851754470 232158883 645219055 292435635 817722089 945084024 892823108 757590097 642593865 175247456 851575137 277714247 204154019 740772728 564979952 865878311 33644710 407123589 737005151 922037741 141821333 444091024 695284297 175254275 893641222 240296189 686344354 312576646 856443840 179457328 104611630 227611356 393069862 612166997 785121374 275970144 717832300 798076245 498795529 11380158 799651508 51573680 156236877 950914563 311429740 930244709 319645897 628462428 301865000 650322882 37573889 18044309 183779062 615510379 605983991 41417985 156535937 453781933 564700771 535334618 538040907 864307545 688949530 406339822 489187177 546146894 775073576 294275157 796502465 567116941 886448654 973819946 32808045 368026827 227589505 61775896 646859688 351286894 127028164 580850839 716354306 243092577 675798557 70117306 743074014 557236742 629319169 357043741 527180213 955099591 604766455 572326399 18381311 392004683 375100524 593717872 320407009 823859046 90652380 810498711 885895259 554599017 368201051 279192348 576036412 865522449 340678728 899734651 848329603 742152021 638781248 724710030 841699551 998977395 45285033 682208830 976795186 182538471 432384537 322978327 195587492 193518212 286051778 57837756 436608799 572491741 300464012 910970065 226663494 516869289 252986047 409913383 985210685 640946506 573904382 708799516 261214702 331029604 348581140 830310066 748774512 303990838 444275170 743542203 978055969 578893822 371240646 285891118 569318787 972484108 711846979 228942806 323318058 350840482 849251169 972052846 361075070 862545416 573419049 998324753 150775778 302584923 106017323 178544489 574749584 838043121 593514174 71820034 960567951 74465696 661302085 340193912 418554819 894888449 938503708 824304318 139128588 471519987 685355236 608560865 842379664 664793654 51187990 7416991 494026925 178397262 596530038 581736393 25021773 53731342 740467335 655792125 115727866 708266915 793506822 902967393 836821923 5964379 618499924 892692944 530578560 373499129 214238330 697500431 339388115 215238232 883279130 92212582 983793256 30935818 881323490 968954429 374365054 136478354 491871112 493702462 211645557 576779941 563287004 311212863 769472968 278538051 304317717 750292779 539707197 263259112 263028382 920165118 254193130 920519537 984296162 654313754 854858069 215398155 65850033 579717298 575550133 225138326 47767434 905538732 388192842 507967765 986677327 207922145 574996953 534027880 263968398 93032445 341335764 304484161 729469331 843568260 202673405 363194571 484253913 590077890 325486919 295068 435597817 89734832 465772434 291279149 689451141 470406609 630230047 863746823 542786561 473215408 526224444 156495532 935826898 226411989 203070549 428975181 550759162 145148478 775076074 937825976 913405468 610049907 984730521 879733226 707320973 746877696 294022157 96339605 695694246 95305030 142052701 337759950 324363091 608172130 994462283 162027484 621514427 746570074 947544690 565467975 77306108 720163135 278703530 128910827 222058040 339140851 606063223 604352794 989404834 857414619 232401712 810446594 747475348 768704418 177772278 511031045 287220038 582074857 550064955 516700789 900293023 512965476 401585540 944073550 682441814 11735971 329862663 378030314 467624499 367067084 396580955 166510354 152521092 25527446 118135534 144656010 83976950 256057421 490022396 633882737 48557898 917181592 85301653 912170602 417770906 996306798 257374820 667367805 258781106 558017493 425354706 499136420 945117746 494239516 963599463 853062146 111698235 362710308 580687556 655327387 280061859 446759308 40897218 677331900 967894513 837379929 220326083 617439992 690439128 186154189 145161539 591704925 470005646 530870632 949419345 173390833 676443261 741359198 261743243 845074292 800884840 831549513 478483547 764023480 455917799 182110507 99918662 684914913 677599153 18706877 345314617 383949049 57057601 366483025 519174427 994230516 435408361 327314203 845913576 663408914 73184675 271179806 818789209 422364109 778455882 421176054 884033374 977213339 143415001 347771331 975114518 999438689 545281811 301047370 129222509 811191337 343134145 146337073 19191547 706175784 87510528 197033329 237653755 718006902 354556890 565316807 6879470 22180458 314978070 716240340 713581670 775362584 914047036 313028611 314738804 559956994 677870033 705504160 266947625 951878783 153227345 68857830 862880589 896474993 991988297 342432356 998827319 659246657 418641874 758302917 51962796 491514614 914373043 246593012 403174677 552010413 277736569 209079662 512877908 472274107 377012984 378642206 294604503 824880980 829139104 991312194 615460397 72159601 417735236 104956151 85470054 514195391 656407283 128012417 597753425 87583259 139163239 22473493 980700205 127412219 833047050 559356953 834282058 892278852 708144584 889737278 968748969 525510806 912601042 976359076 784256987 757253062 214506760 76885434 477459887 279934000 949010305 492296118 934176162 4693582 509016042 657903139 914746831 141245192 706922643 144195260 646737266 274380455 455628659 792531772 698647953 841346456 181245731 255352461 683585553 940153837 694512947 951108252 694280720 603295438 456113167 894268917 528581649 203144175 353501321 474369880 998890236 367649590 56793620 763486969 361784163 307985076 966972103 711976716 143377896 730261209 947556200 526554077 630655474 27671456 229516974 246549429 382573785 972989380 412093578 980127050 739035097 576028477 475066958 964614095 981800434 571367776 824802703 957445912 837682769 290467352 59558022 893615998 692935536 379429705 607663741 115646338 928065389 23131261 846417512 990323168 475871414 802562102 937251061 891789021 394402414 827435813 488270715 433505129 953065970 825692657 867952190 896005554 810198240 993487177 443127328 353220391 353705477 557547699 15867048 814677316 196474864 697627733 355327785 600061368 399489983 98396347 711255386 660034493 417377146 4393787 803584670 572355430 191919931 236438681 582965272 361440189 107194593 731723443 121131158 911938439 548023714 249103323 969309803 922624275 425005950 446465516 726806947 126732048 712504946 7037702 110802874 190883930 48844475 704425980 835851645 437996804 535713456 630214859 317061146 477095204 86007832 255324248 336104196 395725529 515006091 765333322 710411000 870168683 538673067 587324065 803141532 347985657 610374529 560798144 322896393 242625424 183632853 419771136 251071767 105617102 214669716 614306622 85440303 437853372 239277773 931610849 443683326 348245721 324783529 577231496 930041219 664699552 181795490 607953131 415370751 23272334 202583683 560832850 387025537 478395663 680774198 557184686 804845769 582415706 643224521 473104768 450630046 705392644 319221761 456155302 12191764 510506417 440429045 51705482 375749209 551916521 588699633 218710578 825854024 978918822 721438999 835586267 875462504 798931531 916951121 288185490 38392793 651771328 170682286 20235580 216325668 384769354 738723270 274210513 224307367 773026675 34578080 65242252 818012874 69618250 208141783 959506729 61063336 984331923 592881475 625144472 943641414 270009816 362238844 536268894 557795025 511904395 500204354 60308251 840766634 754486801 242421972 978513598 875462643 142656082 969741187 896237412 49382355 744708711 104687199 305897973 956107473 201399103 983260838 999144454 174730180 741543240 792440936 830007395 556054723 613499911 645701786 168446034 503181791 640599305 663484803 846125969 452328942 790263092 185914799 448898083 717345939 254315691 331220365 957480126 61552128 462306271 553244603 278240742 141118310 11730661 649743065 508139480 78441491 202821855 956007729 540552800 284860079 513914262 545607127 319690606 225838613 999752683 731808669 280999934 132429097 183350238 359241819 685764432 452344220 279154744 792248090 480720934 607701238 403836196 970327139 992476823 858584248 830248342 805925845 649872700 530168539 908855039 312791691 861305483 19647972 319825693 249419781 489128676 339802005 157479629 287100527 154141384 990319262 347627188 802899073 460457023 290101301 722735699 389365734 280177829 918763319 632788929 411089704 657912528 622007562 895281879 883592034 753764255 888320584 95505578 790811802 739192828 145153483 182754181 302425012 255218665 191205350 335201660 721712375 817338443 998372532 854890501 558295255 381356769 205181485 420752728 333308860 968073561 743182511 462019132 508770492 561503247 777336667 364962087 194512497 280837413 805338502 732973010 467374633 648429545 996437808 995656519 129071198 936904884 757346704 234908065 2162947 2201844 472658026 742494834 140227944 778447891 176020277 479683259 934853136 401032528 677958523 72241669 359315256 24952249 31540408 527889564 797181796 661010648 462043656 792133908 191401465 246218363 257441323 159424961 112098574 803842604 24231667 122827059 423360253 497871148 787627288 263426446 443201509 840478439 845287647 340245680 540053869 927460909 567549243 769559812 137209604 204030226 190535036 767504294 362536182 604155226 937659184 197723061 587458102 915324836 880152085 119632582 917306251 812777271 828393336 337640762 239605670 63348306 857133768 455715503 374119583 928096722 43313902 358670324 130905519 221297217 192673123 564077159 235961326 68294644 116717576 333756835 525603877 349588173 568547877 961241423 363700333 843087498 463063962 597818193 59017230 555326782 715695511 521438687 311786173 249587544 530769806 26451072 161117277 522436714 467847064 87755974 6765967 660608309 688639121 551251641 910762867 972808636 971742802 655573103 334168707 636176515 560814725 390505234 813448039 424679757 624147669 771997237 324422364 221969235 535500876 625680593 967792923 321194753 553280298 673383843 495249743 155746510 77932533 461805469 242723453 186596631 749914637 778672839 807726128 894439854 493121777 94210322 880906091 895322654 634644602 319253902 792751645 840942669 21095249 356561356 800940947 504339869 21331310 565684764 241883109 684868676 726531354 490326099 610658220 87286349 594860400 919972504 728673276 463514333 805312011 509210107 247612387 959776903 127345056 155763108 877535943 415826800 893368530 697041306 883530884 615429140 485707466 101613849 704073847 550817828 865510780 913136618 54243017 828652669 15021421 166151004 488170167 448838447 128880571 131414419 56086848 202306893 810207639 226597444 306348727 596237574 574294923 893392571 628745183 445103198 490276335 420562010 585273192 380597960 381942507 739640730 554224683 239263738 946007400 619449262 699759892 181659632 941958914 460617351 578833927 976227857 477891502 436501478 904664591 783088637 431727759 849798740 772348201 836348801 829710251 3810581 16695172 285310704 257695053 78312317 914583899 713248912 251725974 286532716 74996309 637148772 195114533 931520823 477347064 990072410 913155535 255110808 886392476 853078769 790013419 495171843 130955011 566857398 484386421 129389005 330662103 574302311 751845243 258862942 951897809 188250795 408962238 586426156 533244110 416824662 977325266 851179836 418726962 575726983 190866965 125921544 482224020 175376569 11225539 872842945 31246533 214874824 735451701 716363805 869088363 326480456 24899026 434420797 407205199 198409013 296976399 182847178 226440110 735725583 777149118 761520481 328131196 975789320 321128238 286792827 9177460 93128368 954533089 57624147 422438401 915619381 351078794 978975749 457167023 599363239 304379341 166413253 746065914 421898999 643919398 819913263 211716122 452318870 499463218 145944567 519725373 72722610 896047175 860174993 496682337 906390055 249355725 535466362 30239149 579762542 327392435 640526261 73190612 180185924 282989283 923747840 625513546 359415697 532307163 374686438 337247106 174684683 33337064 831239974 332515730 15633362 29710836 926595118 961899724 88616190 130306497 136879963 898753322 233864178 811029997 509517137 328911924 660776457 682662953 998273048 369158805 974607042 537163995 346357348 573857892 869992026 350452331 375887637 812077245 562169402 334269792 600701025 881484315 759370732 675646544 712544168 661863219 365532123 150002456 961681903 179807731 876851677 738109188 695293439 978605153 948686874 535537837 486643975 220733087 350494288 954912005 321258621 175447354 532630228 695006330 515542082 736741745 277470570 899953738 662308890 993664327 506544190 980995052 294468394 685632446 572860485 185000908 883584891 754223040 538257266 624826621 777386025 566888449 689430460 567807581 376543148 141888484 123962138 754421282 268609524 179419719 413067690 851131169 180867023 21401441 273692617 650842132 133422579 772206616 68325800 339114238 567812220 942037312 852156350 538170879 50041555 107621273 183828041 957566485 740953157 766374085 553534868 14211148 904349950 836387681 934697872 663229466 687361343 617326466 338056512 77286479 716717978 589779193 183367731 659031678 237086802 328670226 508746748 544446171 129528290 336587425 633651812 218476083 651734192 806603139 447927485 528273530 208663300 760991026 87645697 712292131 695737600 861981500 270282306 263729320 901021552 518163009 310400168 483848687 153177410 31598887 691328203 71113606 444798803 728903957 679779520 296361913 782618960 253950760 592726091 790912493 436068550 882388111 560664579 467357212 507990923 289697637 829473325 45373401 520637471 167867932 499934289 543899649 272060248 714601873 5016472 731381763 259583953 805811765 382818770 194068986 319170661 428382897 949813138 310541479 833313801 769387526 356833953 230511619 207646730 558489021 53537684 564635217 554862861 161359703 424265129 139377417 777313735 111449355 719262612 128862750 87320474 365385649 79051001 827134497 875405301 725827229 586395781 835163475 795126458 282697598 42718671 626903651 460082578 631075246 575487884 306255566 317910241 751110361 546599751 506770102 522250354 584677767 824585134 532385392 864407262 865379848 846510979 250394932 575122615 790349018 523198436 540166443 325392348 133731329 876152669 333585126 11473792 782263984 178629600 900337141 61218265 747942853 934016469 481195783 689896739 569175612 759163803 870290076 585611202 76740585 345044105 131492221 441736467 696123267 368933790 870729643 644569634 628852834 128117568 317978296 446690597 923922877 840592142 502805325 183853938 855958525 578407168 394603055 138705897 326913004 281131445 370212962 633284089 521633883 931840195 237127758 214358040 762339260 752364689 296029105 300073642 944834060 571557971 560709779 201034063 361275919 179643739 401659761 938752337 723991637 890901619 452748303 410609573 454289129 369234465 445381781 816807488 463947763 83175621 97117037 4505056 270496171 540111315 463975420 48165570 616308056 827847878 798800580 72897283 288894582 995252273 741334048 424594464 450896610 532644119 31072474 726465771 564161684 7380129 556263649 695154809 588405142 623102614 579236057 286317804 360407875 689861409 230927589 857026790 259714455 686649830 198824535 223900221 629390634 344323096 885093742 358691663 6017667 980387600 82273595 335952942 967577100 881643418 835481685 83910358 113523745 171230900 217654641 664152310 636027340 555548151 361385135 752846662 817637558 14626764 901064603 450586501 993683854 933098007 409766204 458212405 897579795 793961895 173804472 425664464 78710713 126628362 210169117 635555606 490172345 308277152 456684757 65000581 761104453 723495097 953978966 975396800 395124773 448746268 377615537 974972696 682600500 103922146 905271418 843944572 25380526 396053681 27271770 165019654 368044019 67256504 639240754 910184235 620627388 321043298 150811815 563231587 42836322 128090296 852401703 271703707 818355013 711527094 833417731 949559250 261296736 726982595 433660376 78456083 697799424 194437758 920027734 135218823 989046703 947277903 635635796 63014581 258339331 638202089 600498485 899815294 816971904 876442767 898378318 617546216 997276116 583343633 502923048 685666130 541663094 793160215 908634725 204780053 164989005 679605847 175062897 6453139 899708756 100868663 455015569 419650061 50212272 505648000 235905468 490471300 152231508 945290413 863907952 842746647 770050991 874109435 5164524 195935458 415394476 728327508 163688978 124285852 70545879 381001338 37437358 528236014 651541365 886945416 359767821 708072095 869402477 185763576 123883957 39124742 848128305 2633870 714971271 572296467 427849551 985111972 127999970 153405239 547900674 919922236 911062633 825796064 929667356 936253393 802262377 476358360 489151172 270098353 734306199 266856698 187701949 112047844 265452683 335985784 792247022 948812841 810684734 210122410 584713828 60048212 136814113 835200511 605650764 37612609 630898104 859244718 538662021 208246748 412074235 736804267 798355177 972978137 656545869 479885249 37939579 385954418 475080687 12273352 266583755 400678929 889443982 742813017 718607459 183324227 320110109 862625173 504090743 73989350 358457239 440151775 91823766 863429796 833834841 422495804 245627372 84418138 957909455 805676033 761333449 950959226 778443206 719299690 99298851 869263520 854309952 745515216 907219965 534332685 290464852 209293126 487284468 920774669 683257987 715068710 727503899 816262556 184249454 654727531 361666872 629588878 515897038 392838581 436639153 4114256 206262547 645727725 606575068 514078804 545362735 321885162 693352238 305830591 357100530 413257043 570031322 604188476 749345367 56100415 12024152 680672270 235863968 984718441 919339866 532383651 235345275 31317819 55598910 513847713 129421585 175094244 422840715 121206785 933558605 164306742 12297309 378174461 962274359 544913433 409814404 651375017 73074353 262201981 575843297 680223592 977909221 149719736 597388444 222481734 983036550 249143917 249217040 433599580 303578008 842340305 945751486 995939665 657219939 542789380 109217420 107750360 428073207 674737569 900022299 446208614 39115603 94367633 703291108 47981653 746826481 871807630 349558463 144178747 135854098 549198837 62162745 209680072 717865369 807579653 704466206 739308188 319989720 249802006 148874620 11101189 507696282 530326570 937925223 142400976 10022205 397485379 144152914 919298155 816257923 957000511 735344237 785723320 556708787 142621662 466498681 54445659 336462842 252484037 875370161 173424372 67725724 148383504 108738487 250516034 470616957 300960883 17699116 961354940 947108077 350161729 684025784 418923494 83663012 129087721 337545276 145386208 70282334 190945776 751307922 40047501 488406530 122956635 875219944 769975670 485978460 842046678 344268600 624653370 345392702 227609171 37402027 706361285 466827415 846184770 795431013 409231234 165415637 8025954 935474944 464407300 350365530 804358726 369938552 7136678 109967905 729287963 705641405 306806349 23728109 890843900 564080665 411836878 442530451 246452182 425259640 434944297 65707627 871483807 669148367 286825892 723317001 733715540 261746734 729451763 251720512 523167482 692725147 427517079 132227010 630589029 961564864 490346407 484170597 301811962 67624100 21491209 620120140 539301885 38798717 527884880 359657925 418971118 924679358 845673613 227354361 78814546 277896259 428576863 418099487 822612423 600156357 737979630 105556264 525179393 54103327 507691572 388410938 706930044 681581874 345450865 12740873 593441331 971152845 936696929 818581758 570309544 473536704 687695376 176456677 353443920 857333891 952434844 277255204 996341095 497202361 308703439 424133906 217622186 32594521 140992810 770524765 817559378 687336374 935649710 762703571 348429083 550620580 667280389 940038019 656220167 386435562 67790921 734918650 502837605 597150827 860990981 866672990 662982108 625954511 703050197 580684050 639109800 883888290 944087021 952036988 707534695 558323317 569019046 208637940 822088973 278712768 886129672 877626378 77830812 501638932 919797328 267844501 586589204 44707084 628812761 912546028 280693618 240530932 415817228 218724636 981100069 966081598 868564888 178167041 954747392 351028551 968978484 295574097 321391654 791841060 775441097 999241513 72636493 767605448 530851162 936518587 971708385 422483160 159573986 82917283 567761048 522341896 329601532 726091840 810504588 79266975 236821812 335792521 348528457 810262026 543043133 886311210 517734078 163811914 497619596 436661053 325254702 133644205 204794243 882460009 516974759 54494454 977566574 128805860 453870323 386037942 402357140 728878965 147629398 599667003 98521116 664401411 965757432 130687683 545267345 783935491 686382290 267763579 118296020 36394565 605480055 740191453 445413261 764289249 649086655 373349889 864788247 363826589 535119931 506035619 168245431 847475619 963192126 452380129 565501285 665325029 344887781 601360921 794704347 742286904 663913287 553044117 793287422 500770103 444477829 810506310 831157451 219813752 587733901 184736811 411078324 83696477 911884684 3871564 819968006 610560541 808871746 422421474 634479384 435699286 185906898 553036579 244633529 757664699 876092270 472173704 67120071 315797729 621612196 173867087 825556445 654561275 694459998 442223543 386348927 436868437 17741602 531851890 265271166 674121434 889085685 928432521 699149626 572866525 171871428 297888675 237193946 387960315 295670234 919692942 531633151 230632085 730611399 867241092 642052744 224056986 163841218 11039549 788937520 843256216 765208837 647583955 655734062 668234655 257459158 810198426 368263436 827201951 807292919 487080400 963706641 80631275 174719623 354991446 264747282 621700179 337185628 550206828 551034568 677192361 430320231 30763857 120125379 861107443 569709066 73556422 936001437 593779598 982823677 678014161 973269203 609490102 881743834 393711799 316618002 819002702 46473518 574406208 335434603 971999101 74861877 546726789 832147478 865613317 155124329 955447166 546386927 110342787 551676374 865711926 221899944 407822787 646452897 31790643 819289101 468415164 307589014 590216701 318439330 342546598 108581016 522745772 488647560 598776795 812685902 898703994 81096624 277673129 67295833 623472529 990581663 246195891 390735961 711457816 206860343 955155166 755509612 153185983 73769643 808412839 397693385 973938218 690439718 821133288 694301280 244491062 256928319 374943123 815043883 22035425 107827947 197102679 650273189 950466862 628827540 871432908 603510481 439500876 202520940 695534862 141506592 605076179 867672251 725239719 558452089 984785617 880126482 405987438 449799393 752530458 42344982 548148252 465787303 887172790 552447872 43178924 915511494 89601981 31434278 257239177 712777292 207116010 401270117 174445147 372659408 962830627 341712047 563537582 665017969 350761617 819309189 194538684 937490202 176888643 458375823 532588641 289702030 510026111 936358041 130758127 734151966 294492695 489742222 225569401 458002171 467928880 133249364 684025309 197566866 171570923 423571143 793719296 999656275 211871739 399426696 639217160 786881750 207907581 823760773 229339135 199000770 188777615 639736488 105938193 518927655 780762747 343086520 31124757 406135435 185821679 919041127 53594332 32104361 232630551 594720670 377738121 840906930 289614843 865473356 859825026 259890457 370989482 797794704 908967654 444385142 497967846 803056854 701262440 266884946 961005505 407634846 359139934 155968894 993634028 514509777 104958348 758145255 537582512 330655412 684161771 603831008 515303311 173568785 914808088 245160788 623124445 675004323 690280520 319706493 124171227 37533658 153138106 634417614 432877595 144211952 877435942 975729306 424584674 120214444 188050031 580803859 869547293 253758648 972414585 815016901 877300359 429469549 396054787 451714768 727087994 320732130 395922848 815394076 336755209 43730296 547872722 812552515 992612487 134580599 913254917 946728942 63094648 890623885 822532598 336038076 853389982 426317513 429149204 108692392 471439359 30043336 31383331 515505862 378895734 603866150 236755196 189650953 69482475 366390527 495298535 794085992 626918324 177912575 727678705 595749594 540799289 531401460 195717072 725428983 206836299 844149576 468676576 882381087 658373100 205845507 828572180 144555799 616872392 218034446 979038170 347149554 354425196 56341515 900193906 100493539 455293217 803950937 613668656 840397282 807139460 267197177 173944605 570181080 157310761 550696205 609384185 652857794 618168172 912879551 480254764 520149245 290567444 99176997 80035691 766677600 589628572 478649757 704935713 29420660 653334151 100227615 857925223 188936743 959175903 689743109 275773615 26340544 267782407 487122907 33059002 553964398 59914763 298739999 818600820 238508954 84064787 215583042 694082200 966917015 998257283 162873702 866150166 370420564 692539504 981375347 641723861 296077996 728260224 324729616 875606102 49922889 455575653 974495213 140253357 443490863 681034927 575753763 675677553 220640999 479968441 98915481 759803186 225840813 806188856 658712215 857979941 948492102 611667015 973265399 119088978 128823322 214825667 912589427 890695848 543186239 149611783 765934852 185885601 709669532 328015929 274545765 893630466 969698988 745725647 650329610 26056871 135053260 62525071 333047027 803522625 440510825 222877892 231770068 908414659 667149094 117715293 536700782 166434996 514594571 613851557 200747661 748265571 573360666 268301612 566932080 236328603 909762446 230980458 18365636 949041543 147814770 223322793 935938915 738445907 599920483 601216558 578262362 872822215 964350333 464975333 161675437 999874809 592332817 259541154 666382620 728811181 797983510 235880833 168865788 465721340 918243855 678495322 715169701 97965653 652473461 98590581 15218780 59174227 173415921 890511011 822375953 244888432 663746129 453609779 470092308 783609877 251925260 436075778 115506177 641802296 867705844 238908419 205179197 382473805 107004605 607591527 243288488 80696030 441355695 739374724 429176702 746034678 115709507 276629553 242690008 229935707 374942406 770860981 129657725 137195731 990438086 806501843 115629093 128078218 589565620 812102397 255028281 441176576 820774552 793568806 425402275 430204430 385471162 983465541 184520206 836614924 176105038 164174859 411552658 630884397 968890758 651804198 221535376 934469777 116733767 265801538 301367775 963979610 307478516 503240464 730465749 202662359 1332631 51757994 124958098 708866826 391705059 558329218 243174878 68974347 554278512 668383304 276958582 834577349 927518267 679051593 272401172 415792399 589002316 795794993 372403401 740516332 255266037 578568781 891353002 153117566 453280829 972019074 49676722 273225625 73471826 924008499 769618561 101456535 903413085 504592844 128497624 38826966 320344725 970970153 920567090 986550304 920242579 959603650 346055131 720706457 446554127 808715297 317384067 252656036 189434404 976049461 599556497 230227250 111515344 346347725 259284948 657395881 375576475 166051453 768835696 906226211 409189625 729034836 762831200 660141758 987367691 33878489 901786489 637440619 681174568 172167175 459344088 808260389 156030253 710847833 423545405 921399103 622138747 360336903 547307611 791273337 959241491 321502835 16578164 823659405 374422192 837177958 813061567 55231847 254665754 825074378 714083893 945172760 566878920 83194181 831061861 513546241 477015422 825213547 270462793 634452593 918309549 4676602 855670340 227433516 363968698 697491174 590245918 372209507 491407441 582335940 405876518 123744525 694955560 353911983 309365392 591225318 334895184 432795530 794875181 53245472 824039158 811493105 569006864 542038159 41014386 527470181 364560895 596855148 393928520 27047688 25782764 718073907 443351527 731113576 788650045 103278089 806418996 796415655 527941741 858422193 31203115 703165665 749815746 665412149 281693257 34319481 715105762 127368735 825751085 716197275 845522426 145652771 663875487 80978786 940632731 405231749 558376998 506362614 872730775 373885009 668330239 729670012 515478238 528678571 785947159 963937718 311377800 559126468 1512940 581399109 611021860 26626026 278177838 618467483 937820869 424403609 658763655 365552831 583386016 516827322 185649374 139248835 165814764 147462341 72675269 737909324 418569749 440571272 257946059 197715529 445890138 225740678 436264126 128299201 729441947 938525267 467202943 277885507 331850856 464611816 325533275 919850861 340288773 130077785 110321348 431009886 390087369 845893659 114475151 609942669 530887777 359804244 27359925 699131927 719636391 296648201 890181243 243543228 532517778 933695827 424749323 514192717 485276673 927522503 809435764 892668781 748981802 419798467 177689163 13799582 439080833 190998139 672411443 200212854 165217452 610085744 46861153 836890196 300007893 554231099 754937039 643910027 379767686 63580289 863307130 275905648 820288250 561550546 609138232 511571476 318548658 789764010 498204930 800751529 675151113 479912108 51100633 447812261 451929870 937636714 117607623 646481299 936278935 239557346 290215652 786970725 38748495 222479914 575543243 988066406 70225527 865081631 315817348 754734053 702682958 381564725 846090794 365562398 991913924 881868858 628890310 499167908 96960911 695102731 85943189 948715561 470909653 623397137 786699678 986227632 652873617 945153884 247707134 392794222 777477519 847980296 120683491 390488350 720184467 800429978 535474295 376058228 124683842 272598059 726323912 444550384 612903185 688628680 277135966 10039255 538055123 855837177 292565385 239235393 463173961 469289883 665762569 341009019 769193896 190444753 800140028 104633683 893873291 88413675 555544718 921978704 257849495 119419603 790210416 329006261 357248208 174225578 498480138 111065733 481098362 662328625 87840386 397471232 185961762 954053701 742477836 975678311 504742132 864635181 937286362 252275457 36725757 697202088 79018996 145466660 185025990 113204760 497348236 4713709 812370528 427379531 505347114 55062507 35815893 167176924 818187398 998020517 782288471 336174490 771838795 1365207 290374593 792820951 644477506 89880917 484193416 196538752 448562302 211276602 790320799 574582362 746886757 824542530 140177396 770035946 773485523 239106017 235047775 249419596 828907908 908389260 292684098 636028232 621095248 934461624 108427860 618646764 864757802 288315124 368202767 649697001 249703566 745308978 308439713 317082921 434886286 407057358 359292291 401753988 215260680 943689761 132047425 927663168 565181266 394838941 923867398 155434311 837509062 434771721 443109895 911202256 779363951 127530939 846645471 895614228 250080197 300542783 702471061 608659610 986822563 506490077 664687305 307849128 392332989 656662215 558508111 124625641 745316972 759335532 907803359 413495833 191264872 57372017 240861611 204592252 652248729 800833382 115143021 74684394 131377721 552132201 171600936 78734404 784489512 376285254 742792742 21366730 288551498 946296534 580729147 355082178 191920147 947060055 935043769 803721653 616126017 310563768 306714321 892447539 131924251 696668030 592167289 848215334 511479906 348183160 635657218 267057216 809107885 969154755 594214263 250827494 756903897 734380631 30367933 949554558 466870478 977978746 704607191 663943264 156165761 177695611 396078542 444365793 403214870 172386025 590729244 926848280 100663960 198091886 793245850 951172336 990996518 648229114 277645144 902911540 416068819 481195520 729052852 828002620 251426043 391874161 433714676 181805057 531051557 260278124 823278120 207121060 779273308 485013823 558851701 67978066 900287057 606082837 460457051 716386257 217263014 479408816 916810182 893667164 749021739 503554211 814116336 116507281 53406448 22429125 152167321 982798641 641638948 138382546 520640622 873599744 877457019 74826036 752221825 522041518 599171160 570520818 230063157 472774399 748437206 896573565 286213269 638059197 475803293 430822211 626878797 823780828 120761339 86884303 281248312 872133811 161236706 701417708 705896568 644821929 256046455 145960881 759939480 984881216 10921761 354761712 290785300 61543753 817702818 548140543 345511542 192320167 197472442 165178912 526582778 163914036 411949565 896621601 27644127 50556956 487202406 909240250 194167251 769993242 341909420 10685777 571269840 722484959 680202823 969826862 473740031 407619983 386819339 803553197 761012558 99593718 198279264 737855283 155011676 590039449 700068649 227947868 554306399 531073249 901300058 193338759 780429592 563981426 960157770 57740535 414329314 874684840 552692859 302387433 560973861 185583967 769704982 606223640 672289378 318337213 309556676 8549823 214872055 112961448 121165190 514597381 38280981 245240385 245078488 663419369 629769858 834487762 513616722 971406828 344627898 139912068 237212013 341333370 315518064 120218186 976436789 631936045 233902927 341522028 251742688 252291659 80453562 479073794 339385171 501477509 9608710 475259550 799040934 230312048 827224386 258919460 337515548 277456031 567240529 510144464 679504652 930648217 131578375 757647688 770515477 405133931 440831628 700107461 250352204 446202488 548832685 469972110 878523996 545739160 35022175 955774893 243328898 711024943 37811373 783545523 483472691 287166216 694002110 223632747 42057747 591715187 296258964 276739160 543916008 611842021 174899518 777190062 691600816 639247410 935537581 531085951 224168 489595279 462029462 818670636 830392364 304920553 835406155 648400764 2273829 524494842 85623098 630101354 831604734 597336507 677520775 550115001 53329344 502919027 746784212 41197940 127626186 693256161 546330161 529044378 759185059 751768219 375772696 545262436 822032307 507575288 921571004 323745873 440400113 963652599 216063945 104291784 5072252 568167380 821619971 212481141 634657454 323105260 566221774 564306828 996780947 16006874 874401713 809748684 751955457 307780124 347561994 820194799 492214383 115579127 635103334 14088409 347550643 595560356 207251874 313887874 448489400 228729735 945165842 925945840 366893247 239426528 596070871 12369459 881785196 539036980 940637926 420753734 929915333 242461338 274992091 813265931 976645678 123256260 567131105 258379210 941353764 834474385 943281763 990080833 285649970 27582559 208088300 611352889 312464686 409798843 685967865 633263991 377783943 430060998 925651687 675971351 346179159 685510547 166676033 798679507 547431936 605464488 272343393 596177250 277807327 648695956 809987925 78069240 348736758 117481638 182470707 877323473 341086595 268620794 771105185 73390210 853184199 840180695 146108763 20031428 933249229 838979345 792670945 788565690 959408274 612839468 104381475 718258618 650539309 154994691 86088951 737537624 12234341 434429706 767132669 831704709 664162858 512592922 554955178 710173664 225818019 133601231 695060366 636845767 886575675 841905984 184730999 915349507 543295405 157237709 830977283 410485730 64149283 472835266 598947859 978353631 112190617 99557500 57947282 471101964 687924994 977009399 877191921 292085202 212744547 881229761 342895258 592859473 978776347 138055331 693508886 302025552 75258486 234305592 653846282 85375155 721098460 489442080 765072793 967920375 617641349 560282537 841392638 604161331 152011498 240343947 203679193 485697602 564304106 888126592 504360375 990931738 474357946 479060435 107970463 891781818 874999016 273872519 392437949 131821826 946761764 954716506 65606436 1034926 44244919 278209044 673400961 32535953 29877757 708884877 125391226 514718007 248524546 311369854 469953713 542670326 519146016 10639683 932727625 82738771 469551702 293517455 861860735 81924363 63332025 634009717 619099472 532476101 991075808 18633968 672132218 791222110 30346492 982917391 147217168 621867731 651525334 759571870 395710911 462600620 245980747 682224337 925343230 619244848 736073723 253623196 476766394 546408336 39491325 705948056 927057086 9818681 212489113 669035832 808063948 582535150 163544927 776857661 892727966 258803185 300566887 469961428 747790968 829424429 280931290 680605576 267000640 561702500 812553030 201939183 623445602 767529996 695093501 42266715 909248381 434477053 664335845 411435409 621538274 756048701 851185267 603750679 997096327 862701671 73390888 654010308 941462854 41729141 543363074 158304551 938364137 151673400 383422827 190053626 826647108 973920216 282973691 244670547 917737210 450478752 990570388 353410663 54920684 53725165 639263070 949976143 465902715 809430302 363915193 774925308 393929270 522339441 198927708 774923587 76281705 445266362 364547116 941846666 753157140 94441037 337454825 119744262 476467450 580662109 434895840 382985045 32780077 852194458 679275803 614430381 583346335 512419668 331825091 562432516 47437738 996477639 82255823 496568497 75603974 146954600 252509856 953270311 8077576 460374530 544656799 967016029 192178120 995069015 24990959 809549358 734648299 138015360 434673430 927334413 83536987 717232606 752154510 611955465 669860321 261281946 315901664 491578255 297948387 529984815 317480734 14481191 89498731 182995915 252485494 701564606 69437033 411393158 717838396 841828841 806769608 299219683 494320429 362849512 16458974 479913397 923152253 619531866 351928725 347044272 783144872 351116192 895905789 205033738 92807309 711306375 774622430 966924790 253384969 451972493 746150549 678795047 314900692 90625326 357529107 244058314 835422065 527510058 238967705 581056470 811079802 775974973 940463025 940486058 900408011 723661844 883012726 650138058 719469466 396773441 827597305 817101473 34337854 552487231 295209200 87559451 68363164 700795834 955635279 372190302 164689442 117623652 214256085 134127319 661503408 405281048 724266830 817261268 249913433 434942699 372782758 691517122 198259702 319759700 568038845 986247185 80168566 262328104 580374609 870714977 971457362 119155519 824242009 199049880 730772249 2618448 492858990 418436181 329066733 228713539 61435811 792369698 180663861 764504501 215337039 361792656 17830032 619700537 405820394 394616612 441247088 938498938 494507601 659123441 98569773 965038723 967843170 165394066 317289164 345563415 271549082 83792754 279664595 536444128 139522858 292352402 941376258 246763521 520183087 341384643 996580998 783692662 440604162 241732751 321506758 318242053 712657890 876707893 773409738 744939442 751014255 884789722 421635930 725521883 908247089 475496567 545979318 218908370 357437033 121865471 55829636 687104484 935734746 136597385 787934754 190458321 56668660 355519071 950437360 411507054 491320233 275767251 296043158 530195642 712585711 777632296 439285055 794765030 395839034 434496043 448008155 303941650 734814117 622163064 655909582 925239495 527071724 240507934 413673788 774988287 232325133 178429243 806031027 739056289 227942633 123123109 833185747 634212830 179008891 95743823 375038246 446679394 377035544 275441160 273818384 972878469 666893748 452813809 699265787 177339937 539272831 724022143 898146334 685022149 624477087 276930426 599067539 909562141 200483084 695113338 271503236 2735304 839563926 790435696 233383625 298570146 122563330 314391071 884114559 490827781 357992071 789976841 554166396 354883010 948429373 156722725 866091601 102184645 457725492 206914099 85553618 492892017 659560831 123211178 573678491 64216947 693670125 153322004 609452324 240389299 434541965 353835678 575002619 893713444 20283476 466588122 173508825 429174189 402815196 4362576 445342021 851407457 208560122 733912399 713821116 460052706 722333372 620112104 718383050 873637282 230666559 750598974 637744173 141727941 127066880 595702032 523513973 537648301 540881302 868716716 424972104 685289511 18608229 881836360 805504526 591939960 540431027 777510206 774171359 596930128 252323347 318872674 416495559 306507503 71010632 458644243 600986449 847029383 723282527 158218192 348979576 799844563 913103274 804058069 900115555 819890461 290929132 733951180 201739506 208904165 372341192 730840529 599176863 18828329 841165509 628529776 336158466 289226539 502548862 515035992 401831971 330651000 85492211 123277850 892515930 643941546 584035642 550894195 947378755 804494339 906664584 387551542 661996210 353762951 312800930 940788278 880424014 538363037 796330864 813134617 567906517 637657496 301989139 286566628 680816507 823827314 961904023 269503946 885548053 979230326 352135629 943231600 428562304 9410112 384296614 454487770 741990596 960146646 11827065 2088792 83825164 35208464 152482452 912139945 872022628 420677823 555379174 371668436 232344341 399043842 209605883 999987866 524329837 238700729 692290333 419759174 640528078 437986752 155045186 847605353 490590722 318975445 295850895 672697739 503132434 696635882 307389575 3753130 162409853 279172407 261693252 754402578 969422877 442430509 273150057 573134213 112607534 281626999 806134564 413709271 566327833 275283957 847237087 868842883 661514263 528881377 7744810 203611710 199361296 372136964 867916665 350595317 636027354 530241025 401748774 221969331 852040756 916142975 222980212 320670915 641808036 123285530 44292392 104860206 791189374 902726642 296252676 721697788 981389673 16340549 833933621 890762028 223636720 832063479 26080818 699210270 157387302 962888867 453071454 87255847 553371569 708647407 383804175 83152080 745537362 546484447 662548902 578346419 788968006 527430255 823297409 274548075 625142929 709158029 785156836 554156140 174035396 537939999 225585145 625900825 569957227 774163229 621780731 175691521 640750744 964717988 911482733 541801559 102478565 861748477 976814142 554960466 593810871 461866965 645144225 699229401 928206564 668843389 753482378 196377947 961294387 494653498 944009319 640093696 908917995 897691514 467352650 835686056 163119283 693880908 402964556 325539508 599765910 193461177 268277455 549659236 635657831 123553410 37085198 36341939 935234877 304304764 991388715 823660301 109745687 47329038 90604550 873158024 958540349 412495445 352605474 342775765 723293176 804966428 535336454 470409332 437584231 690860883 422629262 467353849 280567544 272305137 207491231 76208986 728873928 728957024 722101237 747676523 496363140 636217297 314705096 144190980 403486570 948691387 828270961 322622644 450276173 953092247 762565510 897221803 999628825 639900824 544509656 390936943 536058705 633109696 363188387 694010283 39863674 58999278 928223755 245030314 499938045 95647377 466223678 764062482 892525103 418858103 832759872 416172460 632269310 297530925 292043491 751244319 105900327 50252698 465301419 347853611 238966956 765815577 569458033 909747017 593608535 745306213 93235965 963519589 796389211 795601616 786515241 984070834 796992433 42192348 734564874 411394947 63904303 832195998 355326468 881941345 25322528 919041223 637516627 145536056 340379553 305935568 216668036 689239434 579605460 732811607 836310591 144115489 236247638 720047917 20628610 787219571 558878789 314174305 439458974 457007780 902196405 582778842 885486063 763784356 254815234 123540576 845775373 902901702 598467311 884501583 793919235 992382555 794677856 821337491 147613684 333371270 710610237 118118981 624811821 562094253 479882796 826792486 730893150 357747771 887721280 628648723 662348913 212785765 413092570 234255197 75020617 188141271 608302969 682975704 165918398 659972314 216476412 613923916 712276407 295080167 529111961 944345188 416238686 647245829 71638221 769104510 810990536 827047736 466675562 576838685 719089993 332769513 538291546 160677146 226553060 891149657 973651378 533609177 764038055 796795727 629605135 203665157 706393112 327746841 59352879 738730371 443447132 912085281 125998654 142820548 769558604 880860905 364625035 4311087 228374226 334155478 733986990 839339908 510029319 553603871 346835473 474327856 289989658 568760934 405739083 877516741 818616900 345099645 326872791 203817689 958887811 941308871 108897674 983552441 577908709 402641567 408667873 186702092 412128652 156891840 824079168 179321617 111098137 154845098 318256472 572158821 155619551 675077384 175892493 10503613 406685293 968902158 412769824 357699691 930876749 475822153 244372154 273371735 928689181 683680751 81420211 322048474 285288620 219113572 635887673 601623622 861777928 25494471 180427223 630557949 940568394 133547860 850939011 204813056 556819139 988197409 656594095 104982767 712166751 361584906 796953833 421058324 819648031 297829723 567655659 15861280 910798329 623985353 5268425 914330604 817890113 684086972 682512760 423041477 874835147 456955608 314423921 699708907 524044408 215893262 78370988 256792219 74009696 575319724 284477777 674370875 86665571 830613350 912851515 169279471 218244502 113170235 523251360 429859787 368008235 392373213 358723402 303264441 275829259 249626732 52282350 857159172 264564442 521732951 346376533 457696444 313892713 43315435 296413051 727522275 643797517 116747031 760320708 373708832 912723766 496060874 613556799 864003637 940919223 180645668 634224045 736001219 778498097 753485617 123492865 376483992 547403085 735349909 252731031 472821974 124982313 302509343 448965772 295678384 222683818 477317478 951885461 12622158 538378358 244170057 827339509 264450392 400984212 538658969 325098348 816337270 699230633 266380504 381250559 564996677 656968405 153703194 472141681 863849636 392974589 645595135 754678329 762875452 225265850 492314853 898234905 424690958 731232802 521440401 206486591 69633771 475735428 424244451 320281409 490401386 457752570 354331473 367135745 480379426 251572535 543279885 726161170 433378640 855335872 804333650 477237580 589586580 532721137 929442956 395445796 599250252 329641188 164269353 231353452 314000510 943904751 238939121 117799942 932417936 373093172 749798689 491895154 774004081 607214105 988360644 976794264 710762603 476192092 969856199 843500929 527768928 181534006 780408565 463861364 457074118 385299101 892238897 612666523 677717358 723956356 739796116 69151254 644161151 333506540 375666382 52217034 234545512 907163227 249593140 671235037 939247118 566733997 965191160 663383645 838773645 268101468 62358647 522557784 470897373 717581830 70662169 806471842 422653155 991246284 359743497 345696699 37632442 166037155 566111323 541747061 157187630 910806829 329022128 727433258 352344221 382785479 442707663 592502144 897200181 451786338 536705532 168227868 44617467 571062124 273966667 494119296 664034783 297821469 577178152 136301572 413089994 478939182 128911932 502026231 654621837 772701367 558241699 529274005 567815807 473795050 916038334 235814035 473477072 538308387 870350824 158631212 507039831 778517837 423630660 263179131 41582984 387593683 210740482 889372149 285519704 18729860 980858216 85918635 18893086 450568929 773535858 283102558 133811939 722245306 731002924 65952618 431738051 77206719 145198564 942984375 502971792 121547397 932696384 977063225 369770521 715275306 669856149 921264798 901256699 932846231 749776085 610725623 103576650 252038926 635848139 46617334 350548919 630465361 16404213 487859925 443562384 752907198 533235360 582855302 326719845 325316512 937094435 705399553 17500974 441677008 302434303 841499280 256559998 672721123 337089706 489148400 658484645 615705637 335164360 838351305 166215652 684153448 884555797 609447754 669762134 38419724 553159313 948906408 811710997 172301376 430086011 267293297 729874264 896593013 538702762 566761615 133801927 420590583 36595349 563640115 543232544 752806409 335637194 746895436 779280482 803984754 912680152 339379917 760617703 131957528 813233503 432795171 613406338 614206097 766819140 738761469 304113614 697607458 46354077 546405208 389492454 622629289 256215045 233179089 447686219 409000502 884507654 919305377 498896097 870473750 938264794 841670029 485913430 949420411 960483140 890269888 351538404 473069460 695011923 401691183 502131469 754381089 808994251 826323464 106370078 762443660 775479217 913540265 257989507 486774145 737576686 733364061 919814060 779581841 115652261 662944777 196007769 861296506 169058051 182022396 180354306 164106118 43305991 807738658 372489642 934971730 182344431 615152809 243858077 963379578 212275102 444452810 193258532 390159604 478559303 409756111 947831511 415949830 388354893 710100585 954379753 438177659 719854662 888134982 343807761 284327711 499463491 355543480 199531538 468914953 822515372 470062357 532003958 512775736 309473590 745646765 967835074 461027573 92155607 825866789 48651662 644022003 483224354 201044481 521096682 184951345 718495670 168858671 922225537 883111360 430796981 79179169 79511199 513647912 818490305 930086694 720212227 31683285 211816067 47674073 638090993 750689595 572766545 273545905 372672873 786437942 411476470 665417663 509588118 2459480 980487871 458637650 575517129 943657124 571647665 71893071 887225371 38549352 415444789 27100410 648264955 217220259 880305574 827294515 780633462 608224545 650067699 547290088 828661037 283360992 246464847 539879516 893997053 36760130 67802188 107614714 779839813 258547164 281309379 433305145 192469919 726899615 811557359 370004936 12668457 426197836 709294589 721259546 387917780 150626948 541942875 712192968 634558765 435683754 231158732 266987018 98155737 741830557 804641154 222598400 766403280 690503276 320187867 949980903 869763967 190912729 167335573 199242626 510029244 630549457 410730135 708087075 647308630 898398683 717610834 217619428 425902702 741616513 699841768 581201548 13391078 340147565 230778358 670656723 13384868 463897000 521968831 217755020 586491040 880996037 983381587 131149421 25567224 452389960 263430078 307582395 144073950 473741990 210070721 380820906 946898761 444517698 208204078 858008112 385248107 121308975 808543327 439176099 504071261 287091278 126822482 394623458 898861919 771766354 295995154 823706309 355236012 645050397 271373368 328573285 108798585 219188353 427350408 808327671 914779078 165834309 179911472 243078053 670216012 18954729 716411697 259340647 340859882 885620415 418919249 900975826 251135137 38882913 969918314 905827554 216474910 239953273 208879239 195867382 362494788 945184768 839456885 523566782 458312235 365046791 559678496 534437022 633708754 481688860 554514417 91667688 434400605 562308866 435144889 535108253 913900920 59346671 90665349 486088937 780691887 817895674 331261821 111947171 318184771 806647850 715967877 136428760 161346166 849180386 196047007 366168850 184052355 20500280 184705803 47211973 131667625 292687809 111014336 760419425 296145169 332617913 387693758 27174518 274500974 190859538 490758460 36970950 622204551 795552582 577335732 459309419 101104996 555326176 384103882 920826484 973587584 621331341 851775389 62017372 675035856 925210591 815536287 419324598 634361072 543213443 916080790 443488779 648971635 115638911 407144926 774203514 101263706 575640587 392900751 319152621 512268629 279104808 841076981 163119934 254161063 134323251 918701203 773291622 549869999 501104637 681840764 793285299 84110192 188832502 536981521 877256706 796009746 383396353 397778946 277716922 737183477 335584302 236068582 969931773 814643479 782499835 861283216 467142685 781449761 746577686 819342679 233399388 700241462 328355413 366521374 430869469 908937736 656575830 344763318 706179093 471804693 743978439 260897995 589383502 809788115 883522529 853994916 286256996 651006331 790155584 27912440 926359471 604307455 986250730 582803873 840352984 523559160 924419409 624869510 856322201 526663499 82876071 175887218 537957935 54361301 544166880 530701909 877403640 902429451 988130264 817864533 810087259 859257763 885239925 128250312 44646425 878325305 89423016 689506379 83708931 722450554 408917807 891310413 638505385 642054132 857315603 860482705 420409497 147255435 657656688 519173382 472850972 483636667 97825391 695461795 968437021 836403308 857349199 528959122 635640772 168786141 598327171 596219635 880193374 295311459 29301794 539755516 282227007 689520645 531473364 513042592 862744402 981167023 53565805 21631710 54196932 628781740 561592598 209756083 14255341 696214356 295071102 665359154 315613202 645179050 984281551 46329700 905112666 119333096 158627968 885208318 119085750 630559563 670154008 326452686 248655777 637644750 902534706 616781962 64511508 239028231 280473578 652761462 166115781 871598995 318290753 238317677 330350043 507738754 327525859 90279687 593487412 89326294 243258890 427898479 168878431 233496769 905255720 248265218 491777332 607752565 201715022 573670559 234089985 127684522 670670722 772711394 498607449 836219126 203921204 645144607 793396011 839618394 27278507 347587757 282411936 799983207 533297561 391926506 947667191 578772265 780945197 15741018 507151481 60208515 616394430 209566942 932567530 376659694 83124436 463864458 260462857 590324462 962662453 764687804 291466770 874390182 666378802 533865629 880392329 61607648 240875346 496008445 813437734 336838580 557738290 546754791 743636829 335425979 182134673 69773426 128598539 543434053 898604241 833149815 970642889 313919514 283235306 675706906 487672933 130380503 394935625 420493187 33344669 358704762 336744253 580130806 485598293 305410106 157454684 835394880 252873797 465540697 917815122 111549268 805008849 703004742 178169270 286965914 989387031 872817077 83385138 112431128 488466112 191427470 648327629 240414629 115168765 639227436 224984874 837247412 48228398 441572320 685924621 780392844 509763464 968565504 317535007 655332829 685158305 649087761 438633166 72172445 278266904 991522142 838824620 882593467 896412990 342918831 393300672 674410552 772910497 940112277 312491663 538059396 436978933 652975816 183375099 294289684 954211203 887741333 614622691 150014799 509788281 631726489 661566461 492511436 993265559 758354494 922157073 918537660 809861986 68649275 457891480 662742441 698756091 796620036 196419061 567409268 398673952 928467569 23614564 311969296 824923446 525206947 127287839 638863 907031469 715945964 944093331 72852817 149944687 845817123 668521118 550866305 130766950 450280908 985880740 85411609 649978629 19250494 573785994 349544311 566636653 510884474 319765677 631839611 31858374 741035579 783912130 954300102 317639877 839363937 863749871 549511259 240533923 64320081 758687176 475547859 905613836 656412228 706522118 131600502 796436001 883018646 832193299 764416483 364706701 81671052 967507229 608325622 942258055 271005632 429179940 764041599 854132758 428402419 443944582 372358378 198875559 883329645 717740309 598757097 295556921 791249922 387320904 606618767 757825365 573236557 486763 47207862 540849587 750082988 840135072 196603835 975699617 680582684 569663154 740286436 437529750 428358468 280712648 834990813 537299495 801347900 184154479 154412418 818026907 176027210 56294862 360862271 539432706 816944825 433275774 594144588 699859471 328117807 878534038 93211312 822208193 88573206 384331025 47389628 291977272 509478820 439621826 361820196 65585141 821411898 707026121 622298055 220998074 392242276 144438192 379607449 782666727 327826154 792200794 309086086 527636027 843408809 917587920 943716715 339930357 716832115 538734076 962331119 559600798 3394568 509850059 277847651 819987817 29853944 684451117 121192509 20608614 125078884 916161787 368505036 281042327 416492813 157162836 271374437 873659660 650790767 617621901 208941490 374930227 228353594 340641515 527817700 208279690 660917521 50762076 66401947 478023179 316396161 346570761 365276101 803873101 368257857 954372173 866955322 644186262 398021303 947524218 45145731 623568182 921779184 154670612 121443446 502998648 882118794 295486447 580513350 306643765 849359208 496520559 968299528 977550819 944355178 782177467 416304639 779074085 221306798 283635895 625720256 78115696 529031281 647171351 622945287 44869254 274358880 159302937 136376701 213502502 128623689 51163508 901939018 854708474 582142450 184757436 728963782 616105758 87305566 764077291 848956316 940203086 798371748 855516242 762515232 722087508 357000595 555269887 846711559 634870971 596094632 62411390 450564478 108846236 412568747 103688459 181107762 99375863 93497254 166701403 519718315 1797629 484738436 507973382 316729105 682588088 200905530 374357142 24313654 741578552 114974989 645019659 129763830 762515414 622998807 8143573 353390973 697681367 87154670 815308582 34624939 164874987 93096108 688593067 125148403 875323948 549427895 226721612 997276135 729572330 406277438 918416182 302759127 924887076 950782350 477026668 537929428 841452982 217948164 235295816 909869996 693315189 250461011 417098783 146637296 410170110 131200696 850053703 444000924 562910544 490024825 568095967 837262435 698277073 35798282 284287683 102015958 461164775 491139499 917993522 622101506 689480344 302769953 901719368 455145610 701063223 218659185 355148039 524368293 96052918 32085415 738818568 552283403 889945942 796452337 216236716 988809065 86870624 47596185 222114763 134725158 862422082 364102507 574399427 867057037 309363203 117291616 754003070 922553157 543515186 593591480 105795017 62812631 709327443 250381464 931189486 897899634 126829644 212153362 859293739 668577659 39354242 977410923 828541989 387282964 943724459 999202494 912315967 489709695 127592348 277871421 152317180 515490488 309568371 49610721 58472617 342486505 669364232 501469390 266119070 470137516 100751891 154777765 646276956 907747951 365696389 88511780 816774639 514179353 478297464 364539604 293256132 901837008 183007491 288091124 215483672 324166898 658408808 616350307 684268132 634690415 365886723 20095264 972131450 144689869 976289167 948383357 26262706 440356825 841717888 970521418 469290003 110698902 416159644 43653668 143804806 494988679 647036643 98110224 464569674 839797499 199829365 740510902 871879183 225524589 396486473 876910101 68129022 126540897 781877929 423482405 842065840 585428004 34145320 979492759 403475642 666706207 305170689 136646736 320486377 926622364 178254124 40287631 967180420 810276086 112513961 526155481 21032699 859779602 560275522 350762401 417320570 544966637 482234190 430427434 244283794 413151563 458672282 306875120 146620620 373781636 586200585 601963248 14558942 30857126 775856915 110932499 459050591 778525119 433523060 242436153 649343793 165617792 356333363 981866172 991767233 675160734 560100710 315275927 748134688 204822891 761069099 783368759 819621456 336119712 80790840 798615118 967394670 52509303 452356376 585217322 507246436 736379492 16804936 218976982 743303228 208777661 184954859 43050972 553290802 12345261 251489445 726744663 38228217 647506849 671872236 869785552 964916310 472382100 180791748 999563558 33588479 192814870 120841296 698678533 279854179 127772609 773666717 845053565 625094567 811575236 937503808 385487328 257883702 413210920 54681765 188756278 948455367 498657663 385728470 855526757 275543825 112743739 555524333 954801869 856784919 629774171 566842247 248821043 899909150 769981965 244176106 894476214 524114549 97465725 231167146 284257442 936984414 619281474 494175262 58191307 24192282 997789954 357058434 316112597 927435834 74378737 279545451 672000178 847696160 358333314 666297898 257260563 668110899 711843280 851785604 141024377 752750339 107580399 587837151 231316663 760210366 170888070 631018810 377946317 421318998 710694069 445219705 648027335 17016080 715258301 612827066 63357318 230396681 411929029 477573755 88473159 144170024 88720992 711551697 438916953 137447266 987038705 614536603 595551484 220289469 439860778 84550362 500779126 619847503 224485553 370183173 894445465 573300390 86719240 134826092 241731110 491426578 427195320 763772349 727359325 460668458 514564802 439815983 74663087 589142066 49298313 668707711 228163658 417131183 595851281 376392847 398740948 559957545 926741750 329591976 317093201 912198017 316233344 14247004 854992243 102738502 198031004 597161908 457577324 526021667 711142796 650003050 254907316 372647010 531715612 556778468 150136516 207066193 339914548 582309133 927001044 462723798 777333818 242265718 420404507 6566882 71645507 131449153 153950489 504583765 809060625 606414608 851320270 909764068 301375871 831411449 610040506 356154189 936114307 529532391 934234339 736793725 151925814 17427098 535310369 982358658 426607090 924227660 501818856 579197788 262186398 846883701 833393697 819949135 397572368 783747855 303666039 277772669 520046191 985573840 18298702 698410360 211913815 731224998 937852676 116713023 451056772 391158768 194609979 207373501 207690030 115280212 316136725 367990692 346093215 720853380 377540500 451458318 955144205 665980419 813213429 903738031 344666591 176859088 940331665 902275929 829520707 589179310 663248302 426506539 603950921 712089474 518011560 111669985 642810286 304240071 993179309 950469 324880332 322453864 590076357 485431870 676520148 833407224 670389515 400922803 444949886 52542928 765192080 457782191 175553355 488288110 527104186 30781145 984097390 682313074 604433591 579763534 630658928 476846154 787858511 521709533 527966220 878911296 784171725 155411958 96159065 380075144 668613039 961803106 355602661 969420617 598841705 535608462 28219575 745876856 512179467 334963765 312317163 862067148 240847726 511112185 459139105 406471733 535737157 695495176 533538367 227487902 442198385 200127809 163747715 305209040 40589231 686114275 416476755 924794748 964110538 320509735 484444263 940363349 302535751 564895312 125047453 265137390 129166225 154885727 689128317 203218449 354754210 938084641 831113617 829724914 769599234 21321676 89282414 931600552 499659351 234296926 604120049 118835191 642295722 876358868 687421491 492865107 554530863 912516268 243472223 148539977 853010896 984081160 446836970 875434757 346112950 214608069 684457538 977990326 621250339 86842692 903506101 860269242 589048979 666983682 453896718 295853560 122883796 556878227 612448019 688509206 595544811 969740207 734092045 341401653 382808491 329248711 935493714 44981057 544713879 716097964 813976281 796949302 560666522 242639824 576017896 119165679 444085207 704876916 220278642 322117328 369750399 758624877 201103852 955781221 612788046 450486514 829229947 579993879 373505459 771915693 118126993 631867350 389136456 139071273 213708646 783722596 147409317 433183824 215473814 623426500 550138571 434524208 445006171 189440601 938358437 385647850 485713474 241051514 585227316 867963742 456902879 526693056 727473125 204810478 772097113 265991010 843982450 675377913 468116018 911109576 440131519 458883624 884294610 922234814 27368232 806736794 746729888 838234256 589080598 264410731 407863234 129609569 71061838 65739579 506285855 845102441 388432672 26392247 557085560 368694307 646699931 30551031 74986731 405615966 318731443 104159542 731605584 610095342 461123392 778244799 232647124 694237438 22735240 27212928 388677521 476531405 795160979 72768476 98747624 179871760 29224673 800376170 42177693 491279694 419278721 326073774 939324615 760941058 443699709 672020546 992312326 271365150 538754053 261504006 137532887 366023132 342911225 155250333 889900421 544439466 909542444 41139025 158562303 614409925 651261652 596309722 824837039 936807113 673260643 548390981 247189708 723439674 648728009 550298169 971848116 774850288 964591342 436437029 581561132 797266309 542242386 727684973 464571981 658620148 511439049 529861537 303611861 168950636 23187245 11199171 382018335 893720085 560167885 95133803 772986968 820590066 526891132 777753147 793736721 496170614 408424234 232460280 689342650 146453016 454560263 683349927 364274856 834612298 607432463 757454403 688757468 785639048 155894506 555070748 787002055 486078952 646505143 628561327 285742443 917749679 550888800 346308923 770553317 450398407 25259712 631877995 855131057 307941844 302737076 262858122 322700977 524565885 358557430 702420258 442248439 480901450 967008003 213213350 382527019 344626571 273159108 542221514 167472237 634733701 494760806 640898815 660699563 323900512 901247152 546893559 511051867 124400227 631132291 316608899 716324293 430231661 293419878 358484454 702033522 421725026 949502 357685536 638668259 367422244 690722263 167471182 274704298 761414203 585598922 317433428 45255202 585412165 279506296 533859416 382179738 94344128 151236218 997658718 507177489 105816800 446284080 875868025 837194514 917490832 242880418 471567806 132882325 929767803 307425921 28664255 984632291 866045719 877623387 847706315 116563134 842703381 160880211 426239706 127214943 688107620 54621182 809475808 723863191 269657675 954942654 627778310 733119848 738326030 955203233 707493679 805728811 466704977 257370662 897067577 381459627 315778314 128561098 668959276 432397587 892622498 571661091 248800818 437709120 705385641 993337698 73352850 807945013 169466891 382286332 158316037 155112251 549602773 158777065 575681297 492657887 687237061 986715794 3858451 99278876 678017204 228746116 125991396 304919276 649553369 787321679 862133688 18996698 962038369 797714932 277678373 981618117 173322278 599832331 981598061 676392792 471025277 290902879 398124782 851851914 316029452 88878977 188833508 727054309 387831724 971201309 28783105 552450899 314107589 692965347 328824199 53978489 134449175 211290839 340600359 557315669 959942805 796773270 725605948 248180104 330399929 750670622 545841269 82568571 53293129 206416258 141351212 2513811 53576808 875688779 819006690 919890922 26657971 326190140 462103060 426934225 69699686 609974606 504295213 164482406 44608204 415720844 502711313 615222951 191256319 273403552 867349450 428815405 479618449 995517049 818815156 404997227 402644052 569355010 887539142 430845566 456531656 523630353 301889255 591673344 288130782 490546303 12255347 57354811 707553689 275173694 781674002 458730607 577931620 385349663 268103036 202030917 746350433 272934254 285384068 148087127 711994881 997941620 41359102 616667228 54377760 43728735 697995827 644962007 893941560 881979982 116432735 397504170 818063012 122275966 576097597 791354092 749873028 743917857 777404555 775305485 578071106 137799025 797730242 946775157 551189118 231492544 832292797 860509356 208357968 965539579 285475990 126594069 208799811 468735719 558173371 583665046 157080703 50457304 146420674 15561351 589529599 161943956 703851809 664799858 966590504 51050715 479816969 723676275 735936786 946259943 1595661 131527871 615352799 24994957 279763748 624267896 400493934 405381122 184628526 676099863 796609427 875268168 55833341 61749435 177395280 57959082 977663971 557044391 319917478 797017211 300398478 588971752 96728044 236536891 231878439 28982352 795581528 240670159 281584713 339500615 463729696 984271848 122071312 773427302 137845205 320708624 371095120 980368759 753169176 311990321 233111159 449300580 769194471 729155370 833583952 854078095 301223088 354928534 112566782 856091384 593635090 378303878 25540086 568836106 974716807 624369486 277593111 125213895 23900957 242968684 415473199 497022077 607315314 878430238 789392763 237030973 389079035 186568487 590106674 667834158 4933023 651850192 210635329 762878776 463663190 158787499 835831887 931078623 96047110 398053830 854678316 163376402 504476730 163044403 363697803 781924589 754870365 707735439 806457280 70468609 247358691 36211501 770257724 216377090 436262555 397218085 285589646 18080522 24044674 97182833 261209413 503087849 72633450 370915995 302971439 246475023 435755307 288382174 695325797 767531333 706671025 640118942 714161809 423207514 732223572 552050591 728884860 708350447 713673072 41908259 890574633 763366031 102780460 743912434 207466776 286057625 787169698 893929585 585085454 974549691 596009839 325879987 48466466 656198874 293141912 164243742 170455867 757532900 744067520 675958791 199985183 788171619 10410368 186571632 575608890 787319638 551410802 788142362 197553439 171811441 279240862 110422502 741028819 178281220 30708372 603452646 258441116 65877154 971275600 886810478 70332716 365759088 666200552 166510414 946949784 406057621 940517089 416081022 496964323 1515362 589083176 316411689 202099648 729151447 725047966 501332746 159957376 428465300 576809997 805427794 776380933 840115486 668734904 717979208 38171661 957763402 792649821 888202766 417674309 466503977 916257052 862818830 464735091 645832147 292022791 771330612 992270282 39779183 920904485 636887796 142985883 205114062 431702362 539153354 52282554 35476902 840195391 452106049 532039075 128413384 947731812 588034158 362502633 529038629 869599248 357895044 93157428 975225010 962140234 705728406 660539059 672321635 611724297 311839077 619790311 476206888 570284613 369962659 154694622 345291420 862816042 307940718 843795492 591449664 273244052 240146541 786918274 600141288 916535009 76999568 64905507 835621361 560623220 431720322 852389520 644403672 701617520 683257404 114322877 661672669 161830611 67229383 507213277 204100119 324934219 172422126 489085354 168584743 238942112 85567983 439527130 617388073 205338834 899472682 8385942 797636938 883174129 189718071 675675343 379868385 928081416 11999707 789407408 584308579 842076584 746630296 9667046 382622166 890605111 191861889 364626343 296244233 623762737 267296923 763606435 115021838 484849054 832369172 682611288 429525546 739994106 705028083 96441623 836437988 743050438 675408244 61856996 318208510 244190829 501537246 310689847 739872082 85112402 343968057 693994125 697370823 982811856 135924353 395325950 615591487 619486620 108860249 514102644 289465301 720538317 973933869 36752916 558589758 987054232 142487065 479913042 773316074 370855712 184303620 142353169 303148238 774699462 882519232 409917166 558179831 227261030 440851375 36109246 776261411 522951031 475761175 150864847 879008753 872343124 784257991 305656158 837929579 205982683 150663668 731655682 871237260 368875860 792869162 822507902 615662821 84090108 815959219 368998573 700992614 295664556 951275316 899933813 793550477 423216308 682363411 756050235 62237103 154260012 847759783 398468060 317798257 282210131 249560532 747183119 913134966 1245615 315145636 511962837 608038031 61040986 847693404 478576975 573674886 737829540 23739230 615839507 752517201 866438241 472539437 360223901 643850238 690753935 400941963 895800144 401932221 571896298 566948307 640073471 70362899 995351352 201290640 986735869 481102440 196003329 796743437 257269394 178538110 547060385 20409044 464287235 534053250 214444783 636548144 573702552 250929764 184880146 486700182 877692777 807255659 537757555 140450950 933180845 348512827 406427466 404036362 711084688 822390465 805192398 409280645 230000578 554297628 495709566 465169579 358626154 923942970 700055968 46361184 737413201 868307101 838868298 329999591 694299151 335698610 971818407 611504933 546202382 903034783 556710836 195710773 315637150 234589272 350291146 987798942 106353213 119234470 42936414 151877159 680807402 818618803 354926882 914056576 612504563 418301109 349061684 993730667 470522723 933472829 753418872 128652287 8436613 294908025 251136706 512512006 422571168 109171199 642424632 368778754 213635068 541162380 671023002 927958694 974932533 523666906 226997459 435453115 444350654 18067206 85356878 7900393 542808457 180942429 522000259 458303623 929017131 264821054 801341522 75385404 696163841 535225684 71891896 289050915 626259335 413451774 766943372 869790015 334717574 883315140 873012147 594613704 644668523 921822538 94750314 173422032 19049325 310163178 257518458 583122661 571257831 534402572 567484733 170892629 409129279 178971609 905588035 697802143 404471912 772014751 347204284 791102178 992186160 41032868 978733907 122522358 991473464 355204215 500811256 163865796 95462639 291794799 617936918 943716080 991390768 17204591 16197234 937988698 70656086 685022673 7123871 175086611 61978250 994949741 294774976 310390429 639495725 276844758 808235058 691480828 889220668 174095227 859015518 721451993 245206300 503922343 643024654 446841012 848651113 992579751 384086448 169691165 3626078 215014691 398561389 993921734 164267383 605090753 487416973 873043569 904623775 582459284 441643567 988264039 506092833 838078781 125435479 931523821 87800050 505056099 165607111 52938429 695709615 632727053 357788603 900403039 768720228 567024932 394218630 725094033 55745986 224949061 651025824 720438008 532611859 614094643 873462494 753956254 85658593 697262420 178607807 355801554 721091696 254239659 979859703 694616463 835353343 327311082 647325643 62868986 111337688 967137330 573205306 97006698 369940458 773359381 584841040 235025474 877738485 732528617 606142048 468831243 61179492 659222483 458611504 132125774 475952975 79475058 515773205 772449137 78366704 562767094 942503378 286466215 210738337 236515425 421372890 331503014 34396175 307372520 773035491 969162876 292912121 283480664 801748404 638030786 145014385 217076453 811154968 350760683 104546197 472520341 493302557 585181309 572995671 392522928 63489434 217762356 381856042 129753272 708810305 894127976 670399704 339112644 291856802 562902722 853773775 167746770 441396812 787029197 14339712 606237457 713292508 42443587 855953960 60670149 382313621 771118450 843511487 333465393 166194491 565573469 655856308 968482605 124998787 84304392 702545202 516769417 79134751 530356927 625758013 384183884 497192164 35994497 248299155 615675290 866482674 178252943 371061042 964248383 630846943 138008638 301462889 586579633 575502883 922056432 804118649 963241897 838749953 91700001 337450928 162448507 979926056 216480395 305091328 821197812 753859728 749394016 435701500 780669255 854634984 623182357 225847634 284775012 529063794 353823816 536747353 287291865 722828822 813671958 857365937 68207533 111920674 371808620 804643053 630127314 861139461 674255936 254776880 486933258 974642303 937507087 37380701 9102354 806785260 216528463 722184508 104825547 702594762 572469608 459967710 725558794 9471880 632146382 60931395 801218242 772955636 746856320 587197460 121596971 995897027 537136594 388816004 41264386 183047306 398611590 878095106 375917216 685413903 5011776 918019151 114638796 709260007 251669173 792113739 854210266 846527853 627178459 612729140 31195219 118706958 183977680 822619358 871737521 318398964 665752169 337107484 218017909 352416526 50083500 599391711 361271707 733260719 375096917 284683103 115676862 899886684 231347292 946567279 795019807 680331639 568801906 388657824 627016588 359754588 802803571 667559052 585552090 773177941 881958155 874981082 754997951 671874729 528773512 564193735 381328745 521335785 831962963 441761751 738711378 48779791 804524593 681790620 141787282 692288816 783836731 927910008 596369657 866922195 819125663 263401409 414184973 328723624 210079658 524174246 993428943 852892332 600886221 100389433 580596746 38411019 803658764 157157043 899920852 599083661 317553909 567747904 598408221 178701512 904097721 666992695 119127249 7233157 29213769 709461915 12736354 185620846 396380294 137013657 224141787 483054271 691267878 502871247 394712740 228102379 85314603 604050573 478907783 328851162 201678771 618839361 805568858 527323612 683767735 194595896 696850742 927408340 926099886 325248439 422139482 51445273 575581238 912747885 225366436 474497269 576462422 647779720 67864818 842126466 254578810 947678299 63749744 305530033 961780584 369821236 3913965 596499813 557128340 206835936 801669471 757324020 240652986 459612046 656724597 806400261 996478660 67598836 410429007 779109514 309035855 348961994 990350752 433113863 665170267 524369128 863175198 264233845 614136501 437042533 460735060 93876520 375218876 796026068 936559092 406493867 639743710 366975961 450556584 574630058 83996899 599500621 801913326 200781443 747518728 8833757 98120334 735716430 807059026 742381399 48503888 551542693 617983815 486622241 983418789 93856454 584738277 834332291 129239431 610464620 182562445 634099811 136823105 299693740 714774141 869570966 905219396 242340638 55721532 66877511 928693696 931473676 555315247 645590997 737627706 782995333 215853537 549206715 159414331 16912873 852809308 8615303 576467485 20043027 744720786 366822736 838060078 369292022 329078341 40953172 203122131 520359703 381245318 219057083 84982152 573706919 321390046 786778334 496246881 160621571 146335481 279226484 135550866 392576713 487162038 822020544 353163229 384003737 572581626 328884689 391918411 498678321 799363923 594838062 539538844 611746739 944216277 651543631 333543371 67726371 878540221 903969117 174233955 318503983 494967701 687954883 190405690 458205766 666880951 377930701 535086313 361553766 367112394 1717204 99125430 434291330 125514277 134285866 891973003 409185601 349936414 798782641 866658016 345285226 911463000 685232332 850306987 81123672 664881841 840545859 840940900 312184483 362770985 831128271 487620631 621042936 302220907 721016841 386393808 162035059 882851507 667171934 800430175 229067425 208085751 529037682 811887839 200384476 916880360 150205334 56426212 371278695 957496754 122273453 846632080 242868570 155554542 208764316 750443853 624585166 746868959 965429577 434695754 449764959 136267803 630838277 521969458 599404227 132528916 308705886 890038644 863647185 850094380 740517888 253856868 776248985 489967767 895662843 229491798 470304352 888876921 640133578 188445866 122729795 523008705 568378787 946823373 298273335 45555143 840648186 936181675 769934017 616101440 858281594 285727077 876145219 74566674 139028838 623335087 119250520 263236417 879329719 765953630 9369137 128374256 320507106 117066137 30012571 811493139 216272478 292591601 1662811 7947358 766498143 292260215 280117678 891524642 454985652 227449043 510330997 159360857 327532613 535352830 77401470 642854097 976611753 725837590 660441757 871591520 802720281 956901804 140817720 722833271 221381621 341560222 333590447 367870493 548842045 709585088 807113880 228378488 899252713 821514022 809150984 103439851 386918456 546957703 200222295 730339418 670843937 102887956 179337209 299223075 491982230 949630570 36225975 703918383 796955104 944726516 110035091 439286913 74856442 201034075 935985192 209311051 190104280 564507761 637840264 274011146 300304627 858255546 214489727 624545979 529053372 562174150 646336736 216092139 129575204 344684503 961767196 229951258 890889956 668880674 939887901 30171428 149366617 691463615 39762384 390979142 896557694 114044386 714479023 372412979 797785253 644840629 529592020 863179070 414648433 227528127 138346559 48366271 946570820 793254402 526868580 527590000 911032591 736625107 465204311 288978949 920345350 64363278 768542354 23127919 394706587 863938265 403678644 803063934 500347739 788616192 2345559 257419776 505185312 234101204 990465890 972705540 171070685 698666966 111574629 278731089 795599582 604898893 688862598 76883827 326833899 19845069 7230966 596289626 560800609 534905589 827255247 728506319 789716443 785904034 213415758 394889049 878666363 600752502 911433188 776669804 296490115 115212032 996278148 163867733 941325082 212300937 313978910 630541730 925814031 539001376 565548390 742881692 940002199 616669423 750259344 432114328 166132667 15856027 741641664 328782669 409748649 809726012 306979260 612347088 529253801 283031092 786559752 296116775 181708303 541297091 809605601 652982209 746826593 161880329 183760479 17154036 355478460 457608516 224277787 146532009 220507251 91927710 76285397 848116458 153515071 426300494 250174889 946162092 13177192 838455859 77538264 629121487 492218780 749157793 584178595 537839409 688868198 704108020 320815745 433657441 409197521 662397605 800938499 172375268 362020710 457477837 59722116 356954793 959773203 207780258 523647139 448892675 583454488 136398175 597007980 123909006 667859271 482320885 671346635 126273437 621457201 876056767 408527702 98554270 471595801 244253410 199863993 887133499 601997741 557474040 617393098 52527563 335681899 190764477 951482963 689704207 930446358 716684754 845017004 801785793 312708774 338038663 832201816 982000308 269141848 193638998 178330491 252926029 350275131 501243924 500208492 502441720 44036317 60865871 164076775 241358448 799166506 200780767 909724467 518604558 618304964 51490854 422596077 419346674 478851327 407775921 214963940 580674046 249755220 578017636 403300809 952445597 368277414 33740767 675385791 595171822 75648289 4437505 222560454 270485345 801566125 424636002 147086067 871573707 79073399 434719664 325758960 111074321 948785256 589316232 831535002 201506858 118558311 140586880 447165188 333240773 34861859 995050031 31827380 69009122 910489915 523213429 765299590 985211871 983035865 944118363 796616934 484950168 217957948 439704243 503201169 350240004 915014271 517492743 772205386 191954308 907177394 504973799 392450997 345554290 966787824 635219639 162766156 725287465 357582093 907943381 272160408 234734035 807744111 122609349 785089951 751379067 146374977 240142219 195518726 269515108 693608566 444386366 914821211 370362474 535285945 415378419 17465565 936695908 846917089 892895508 94122079 507179653 69990554 207433011 17981557 340055335 139508857 204356388 592581123 105954679 808447179 617829374 115361407 528265677 490520112 241794047 496040150 588389256 549052092 266949465 599560596 51594268 885118189 876358228 686840373 225916865 500137716 461238328 914736338 64158400 535092605 387313024 535816409 835851382 788864452 815159135 697409896 428768351 193371309 206120765 93070367 25033114 887839882 371978287 620174640 720049844 980629934 836209346 598641510 296807872 294513857 804039506 715060975 703624006 201255094 409297513 909629984 437726864 451947358 825479180 479345265 54709971 430661313 915657548 968779310 114367653 88301649 365085221 286119613 187883703 483886834 685976157 110503630 214978034 474976860 609960963 803837096 985141935 234403298 962178323 805994813 695071623 477432230 563468139 936566655 63621612 433528068 333714205 762054768 117536143 58638115 29245302 907053721 944209440 405098707 31943745 353384675 9779134 593542019 368704485 578514237 938994807 696031281 449517419 774507017 956238459 16826524 613160964 872206566 29414531 711308674 684793501 456437872 299403439 843964717 506510306 596271628 714127375 680709521 466339598 196832429 50448038 57415890 291470073 546951410 297139720 638144813 249895961 434569746 940874730 843218759 18132121 774544538 731573759 212929358 583407339 542945061 636207855 676626344 532684599 655042273 964299730 464345182 612339690 663299867 438111523 81105760 266043815 506718864 154322174 778545433 889073808 303444824 783780401 584574275 253655440 49293559 92123984 397393658 446845412 734195653 577177202 207586502 879145368 968103803 400428650 210712564 299172899 107274704 271071705 30639187 464163479 672520821 209756482 169940741 648696652 848717908 447259395 141966181 545853881 409509078 704536685 516108969 397901986 576752566 555267849 981112954 208852662 618984516 636282072 221583433 295903240 174517902 928776945 930289935 284361482 782131328 97975680 583183311 249067529 949957163 69962502 236376874 391494124 732657227 966841146 697934061 524359112 639545925 774814766 998174209 333515977 624624602 239387921 1795901 430588826 257183494 743634697 882769195 159256540 797034489 414127661 794603325 109239264 65638055 858990386 210420676 451393444 47518308 509227525 160104132 399908045 228259301 788205961 385799814 684558254 346252917 617702954 304989444 235837207 462159343 13907328 678614399 340289276 330422603 394586937 518098021 68947866 715726556 843555405 538365032 994707297 858854481 245332872 7109081 940735042 814449008 634056008 274790027 938855955 180063695 339730775 763325248 100739173 841375694 29257370 713620198 494335786 80065888 986247928 122903674 966498365 384057775 971263775 219113118 937157543 323587741 526904771 882367527 596333256 651271014 326391054 307137064 831871867 752764753 122832157 681065872 223141068 798327307 215404409 56792554 794935604 834970601 838675336 134755092 22950691 99415258 79178992 963307014 324880312 647604349 600129299 827514280 258834764 388955591 722104652 818138396 652315112 932918346 519523827 511503376 41697286 916651022 986453327 188775161 630304962 9840139 567746143 995711115 610723707 313633226 122902875 393274446 425412384 679465771 994563458 939819238 184827578 290866636 571398321 472760017 421597527 652738307 877108071 354820139 768937263 288118433 652277476 250470995 661639934 849582172 851615620 748457155 149200386 575953718 112790770 163328295 630318155 119472212 455669317 613440716 135831568 117855936 549157739 505221102 486331740 342815203 716243619 847649242 465766038 795369434 448753743 601503641 621853321 882959129 257015012 177116413 453455153 412287370 770253588 660312318 193702078 148636735 654093208 377141886 632341842 964859398 498114604 324277164 104456003 152911900 158638675 685847079 210382308 376574207 592733463 961546147 221722846 311811364 925404744 677566659 57583464 964249815 877012817 407200825 967565743 337743293 70262199 244907715 667848532 73223372 321605848 340463331 680263623 360930776 688716275 38756227 190700235 187304780 971770517 116825886 538907164 759603483 286584929 895879454 715262794 900167516 425029456 915105253 896341085 651594970 284829220 835282665 475157703 815050039 765332198 119461844 965938936 603374066 587863863 970026408 846498849 912353740 753761267 398431091 716226497 602781506 146921680 220461946 995078870 540480336 325587869 864923737 532402329 542520710 494136323 29560894 878922911 162316359 784111886 784792105 694438094 385612717 374737721 508588672 7769942 834189512 810334423 643091645 799272222 860706977 798886099 278403906 887768681 820522537 343229280 709416338 348478018 352233668 748726119 804896936 391619726 972267727 545199254 894535804 195317438 27346576 908977197 70295377 397545048 226609419 540707301 45614095 630064095 183459881 165786817 110561602 22473759 261966024 175217375 161903534 785188786 535621455 414777021 121738599 491956214 725031386 84719010 338498587 665425216 211530819 570182954 357613583 492661923 124172049 281745750 584313582 286202182 135748062 77965990 660253625 935876225 420846257 735239564 912393173 873083598 148374995 397621043 688384142 568891571 494967062 503744068 698892253 142490640 955488120 73561728 605776807 612881541 797818584 76154875 809285495 610452036 130843590 583101475 808886096 895248285 640332865 307480314 221192457 43432634 255691393 541195939 949942961 959910403 153035466 285919001 851279711 685876667 338757600 557331913 64177871 192988958 875273245 71485620 803636245 909485569 27512408 862834600 327503077 945267899 887164519 885983088 730137897 780922073 329633878 299830904 575123901 486648593 722939657 72717007 794221722 547392667 606288674 307965660 53700246 715312289 760960730 20604787 300390808 964834102 543360320 788095845 813290408 946932491 117209242 450668242 82196718 37013284 892921319 155367192 709136247 310875240 457865168 337260341 118672812 138380045 843719243 593269045 918983284 745535739 868863250 637545402 553693731 126645717 632830255 779936578 503480964 62341161 701873999 315725463 657669474 683867894 124020670 467895859 122214389 262779734 619248601 204994902 106942062 645111545 749832543 67153717 195772185 935621207 306098670 850814337 778344576 681063198 490428735 237412813 618783066 715673021 366899946 723732078 33521959 369744988 111460616 689223582 776881365 153464736 243383309 309395586 347870282 84120045 450236826 969976323 283294548 780060441 663279499 876486880 666673790 699871305 232720284 286824842 421592329 611264739 769353987 917734539 667373 362020505 874396570 991552971 395454353 248935926 722346091 669682271 73267300 378710252 756972612 994244540 548363980 512031456 608573503 583771270 955173951 237605432 204030052 391365236 26547086 610733136 597354362 584411980 36816480 270723574 495034959 900222668 120563694 99708713 761378707 510027280 874738509 495739782 760321104 107393717 784996927 186429618 674640349 199924183 522345676 162825538 412113548 354587667 602007252 300890352 131736761 45528287 482018746 197238572 939529494 468862446 658284824 461250460 168184434 862829287 941210411 879250133 492899524 832752841 172048640 547047405 529230210 306775470 688977666 904201592 196479655 81986633 784081808 553219427 808570291 392215804 180224899 303170873 762827328 990513907 706792715 79805930 286553600 262241173 98250816 173208496 420139446 61356470 570090139 752201056 538786811 552304574 975053829 490708419 112383145 130036458 363451908 249469108 341849666 557037370 495194713 49062071 228728106 715684717 181523108 574152392 590068272 438190133 853031991 858249648 735116267 637094262 322859595 339233841 305648487 707983796 775711480 37218503 474038141 646190417 596611861 783864868 804728957 778950881 644481149 635378662 368852973 687810681 324122457 347833203 510850558 137051940 705452015 203099849 158153469 796874977 731588865 808154071 133530015 541277097 48770609 477778875 389364458 649353535 561857966 711135945 226832905 5403821 827548904 461785185 924054085 123380452 57811595 861589780 284955719 464116373 283831693 98676112 605197652 704985294 796842280 479227763 818153479 65629770 134249389 904383001 671632938 938099411 408458479 487913482 890998621 286677474 443424042 624003345 475712212 39788616 128931781 474736067 807700304 885231001 209126298 271379551 704083919 184202104 871693265 719031934 686334731 170534857 942841859 127178361 334489546 737949359 823472369 721326689 677246739 672502461 419701339 771234062 91337533 442380557 5704797 325955780 982875202 24477076 240704553 678853030 67070854 945426910 140952992 983100921 534419237 864887690 428373742 21652115 946141939 616116414 715526553 813479064 802914258 619867710 210232419 322461367 938822708 186894888 654433845 664695331 891260936 850199590 637826181 818010294 635698167 100870728 429715086 111268113 113677501 951709615 437727031 285127518 836993629 15586423 238791940 606991420 457388451 967143104 866059797 15487992 919122869 585981206 957577283 717235720 421843274 712499810 219075367 445031512 44212112 546969436 359982298 632845513 962749477 854417616 716855907 221846817 393875104 435653427 540582658 383642723 685607025 789335576 482386617 107402876 816258520 175994586 318514378 115378363 860339867 413238672 630728633 832517489 39093460 477688970 935115635 662320733 518670438 195488534 681501185 521867965 784983648 839354589 440026742 483196256 689214343 319175974 588790009 467450152 788906551 912867747 118183151 500142627 55198006 412515610 428184527 645017731 24966916 735563684 702790216 846965959 351145059 88523357 233372507 863886204 815704014 726398170 75602752 235979568 693696911 753045609 645457739 631211334 7178612 298129364 361731579 558290048 50692989 930278368 534954721 517797704 466264577 739702691 493098839 740707077 552794383 566989636 845136368 117719752 712593797 691063896 939952152 988778529 279838455 43132166 994084535 701607478 759193086 491527425 405485827 684333542 288221419 835521530 59526780 830949551 158311611 201344772 495933981 51995511 879976833 280536412 144399251 126049782 523450949 224133810 446481155 958861118 245722786 570982788 188911962 769591991 43474899 335313448 707517145 418854906 375628383 416956565 496256285 834737634 90235197 643410195 489824115 935254248 382734183 284645240 526604873 965097780 939225621 896021626 125358603 306716009 534769089 438565549 200360322 519084668 719776238 82571453 918623066 464249033 107251791 999077139 456261465 419316707 894210706 407851768 395022237 572755918 950155912 113538740 346546008 301045952 212167582 471508325 842726062 180557379 793988015 862236734 715062505 74370808 834250334 962467796 779483575 757034894 254147289 489359418 98721371 594022557 370927568 116475629 28465577 492401310 395535265 445260504 259598961 572404223 485510049 400226713 309314924 870876372 766210388 871321067 314764378 595587608 957203361 272352478 994254351 315760995 866613541 457338218 117201650 646852812 523398985 394751159 803654305 82072652 235629876 314896196 452276413 853543778 144802655 681683680 471861281 216460149 753825698 840555213 427315781 323776881 612146386 115156734 949231206 460757432 274345917 923620464 539620809 759595949 180975287 117268076 242368282 887973025 337913692 218684022 553907707 584645474 928753848 458042345 118944931 958526289 392824389 50497347 877987873 396475130 433375656 375569333 217990280 148177483 85421138 18100177 318072938 808078970 518833662 711272860 653894435 385750727 466944575 901959117 53881201 215205142 555821576 532334130 384089203 935153864 888735573 86452336 868866356 50481701 611053123 784014538 724987572 839367391 836078526 890319016 230220970 677273889 716872041 962622555 932723015 276047172 981054641 454667595 530969044 17361321 613302557 255518840 371332571 466362713 807412875 668686032 823852084 108797488 557429048 349618739 101276516 421236401 829592204 800060694 390789717 838407357 360243490 941379385 241578705 969481479 94019839 923653772 211156891 335632654 699116147 603023792 721751739 707459525 642056119 895601975 770414751 997745103 351504106 370230615 372323626 497712136 977611648 417391000 609065297 969147060 288142258 753279945 38953756 340300922 493283320 242900295 668556150 128573229 509220521 848206886 260838630 435255380 260145868 712543063 519520649 867536165 728154439 454779179 260081275 666544878 472278186 504424692 116014002 578727606 503766036 102112493 241883510 356764198 997738285 983345520 991895936 619691190 907910743 910551118 53602394 610250836 497055895 149626486 178961663 811189925 373014598 881381132 180201995 602111434 403183856 675271598 196241169 199222756 183092152 635938840 432664927 227844958 327235170 12045607 708655853 46528385 568586176 23174907 43740362 991727797 729850281 50986019 455400487 348021804 956283205 822411381 594335469 770363936 204457984 347474022 774876283 201594712 461782932 299129587 885251143 26525556 919255285 46780365 284690654 215708779 716442381 272631347 19570642 588012145 458534470 836181227 613667477 1878931 353991772 573098703 837720915 770552026 305730900 331668574 99886025 15440777 840349024 274289185 862668158 143979002 399421305 411442219 553933479 913208017 808266297 933007154 858368857 543300143 330692791 131192200 469714218 62220019 77828494 757249982 851278237 903528784 788105498 702320028 606085572 25884204 890961598 314262303 374499796 641092307 904438905 214890984 933898778 996023708 608112466 244136792 787460738 379173181 609678981 299855998 682795118 934961684 476514169 787191552 159366445 520661817 627459576 160833443 500379211 60675021 702165779 531528475 989360952 320523350 350362047 907552407 455079012 290912470 727182979 185394141 331049853 904952075 826037688 574226140 730342934 198602409 584888262 687642016 479157285 581279608 479951848 860360066 904650431 489177914 159941814 838425806 508402165 747860336 380199877 40837501 57488836 637925518 725286445 906765922 691060066 742903989 169172141 562499916 812196257 954504462 978895394 952274524 539624533 137295615 304423592 249220329 378336753 811797057 697071611 608435894 890790932 954906969 873500246 828748742 376266369 847137611 599332282 88966508 867178212 362459547 667676189 600253544 720045658 126130861 976317155 386680076 958335087 148894992 35921833 276825071 166705100 269149859 932973286 58304140 393951532 282144755 128844952 279669405 401279939 199176342 269516205 449570896 359036210 97655875 197597511 63892638 911953629 47213571 990556478 847461529 697562755 985027471 22201157 53325946 141970273 887253862 538783449 398701810 570367924 529032480 716771847 228831460 194317266 845987542 949539637 819815908 213502886 842922279 275355005 763749679 864770022 803936855 387467284 939985513 815751116 712142099 820307250 742279908 901623869 793849701 132867798 69673794 632318583 338677591 67881938 193999304 244565127 473418321 18869502 54474318 534108151 143335029 109347974 930396363 829098984 456696716 4371545 120038133 615484837 463378660 114501556 932774783 161429057 151608118 506499139 630190134 617028800 606693547 194641914 133940947 812719975 634624795 15797628 294149027 654041211 421027261 772418616 444243934 13129566 457850923 112515453 399440530 780811223 16321441 964625040 971557124 884550550 101522322 688012246 334036258 40278659 804048124 259402178 795774500 206014929 934232394 239090164 230472713 275649430 251890872 240703309 735883999 806625722 261711875 257548648 682899087 402952906 129229717 223627356 521801009 676041570 527694452 142276119 51970457 448883733 314043524 731403354 845214190 4227589 887736778 370714003 84221070 125956861 230454918 645483221 40917144 84346029 73887733 641311782 92402818 65431516 43378510 384223272 501355895 13250411 397954609 514234029 249643908 301584226 248510862 992151795 610504779 983060611 3225427 730318984 759994318 818711919 211878383 984021546 764706924 767693415 895512037 357991189 393055422 239405989 995779286 624277460 990087805 48726830 400736137 185990764 577180291 65227197 480334677 643850684 354014372 105899250 972720455 500158536 430651838 966664378 462864291 783313959 298542128 168794480 199549229 317697033 171546535 315964357 320467971 451052170 330115379 982225138 719027561 960976403 160575848 51232337 639182294 928176290 435349182 451383201 445835495 538596950 139272602 84873254 127180110 779298513 952559373 37099442 690798429 691267967 434819455 86098033 952195538 595760364 539018692 941684243 824963960 363943861 11075804 293499338 956403264 420460985 29815421 957779343 94184106 57175131 986171596 906193223 326686667 553252744 864836180 766153270 774772833 309664443 146095140 151215530 901570414 969055903 607493082 699079307 736085137 207496846 846321008 431500252 335215730 786871699 185489221 749063397 541076318 971408240 304413858 282862759 627006111 825822137 573488789 456667698 898221011 278326027 255385008 31576800 794109802 44629179 698114694 540033282 918245353 135630679 866609858 54275634 64792169 989727472 758489008 952176457 378778464 685173620 401564352 512526671 432815941 327159644 834335218 201021661 630407094 744960405 614640331 922467708 962936672 251132213 363182862 322234675 356826077 905699892 566662698 909272760 768322621 532922671 533283863 984225388 170467341 166391649 39808030 725194290 330051183 449454875 903633626 349705284 399380724 531054505 470806492 949229171 619607644 292956086 950638472 51026057 187603981 180991220 586996794 568041047 138990110 374571337 248388200 162223619 691590824 991882473 321463902 40237404 525661855 784529607 283801522 343718364 194128296 418267497 513100850 338671364 948166738 954689460 667757677 411404530 12474015 736848904 742125983 284545484 451545518 27436732 125267908 537848374 375437532 279487079 63574837 467952881 376086963 557686034 244337789 84943966 504965168 94069165 101086313 326133 123268058 856862891 584921839 77291356 740816046 553036614 560969371 724339180 327545563 733009087 926310751 194881058 196385307 861700264 19484775 570165400 547156703 347724086 166676001 197662317 620685185 786144606 999043169 293402752 909359255 304825188 360521884 66912538 663123000 323204283 597626219 621968045 401625145 967885359 706431545 632403154 888502403 884835950 690848407 91043782 452753690 96555619 861039458 605030008 470118587 447116664 897045451 132679488 293095364 487522549 772743899 256260252 627789140 736759673 710709179 184387396 810640771 105229205 910058265 681784170 234824717 125252892 538703158 404868035 784026994 563311282 674616691 876308610 150677621 493431850 222266142 972249248 847522635 845959386 576829267 180177218 335556435 245763813 901982915 8598033 299081067 891125350 312127387 177446615 280572493 280901864 919310952 449244267 56411268 484382897 196616843 33263852 750440390 362390701 500261521 660615937 556281407 419243750 552984587 767836685 857944419 800832079 598965041 823987408 524274277 489637733 966521730 872940356 25169976 567537886 240074685 526781188 66255063 361313266 796281985 230878862 301159332 765283461 362132461 461939113 254984976 230198317 440370502 61327860 223040882 72886897 345884001 649320068 652516071 237889257 69870426 71181906 185604095 276226272 927376870 131842234 758458151 758114367 642728003 513367390 928289250 724312784 460727813 837922810 848477497 892148522 353463213 671076482 668407992 723084754 477565133 65239478 445582432 315600557 575423142 877800769 379949115 528481740 48071728 512365605 523731369 277197702 742474222 503539956 155985267 267810570 807187617 156895303 701763339 93709882 324065955 794491084 528445477 338030664 130967657 410093104 323046758 263423269 136622358 538965396 263104415 82260621 868099831 247952776 237515967 377153406 924393233 858919894 884758066 189696680 387869073 923142247 937800440 283821083 695791178 508677538 763077934 283625442 428056427 254994621 912513114 620831502 81116953 301230460 79596709 780125834 701161104 281173557 318957368 490329272 807662850 223799718 483667290 814148029 467449503 203050438 564844155 208723160 21596467 134169672 599053050 879635003 257997611 841697182 380417238 997065883 725538411 310997546 635785224 542762490 844524465 467725964 613589206 601324436 477854194 762772442 704023788 273469069 23930522 177078879 321570596 272515380 93605915 655186318 150484940 799171197 329373473 940630702 990141514 677390176 7029838 195387047 761914966 77733617 702559404 724861859 865818242 852511236 748415300 597936378 656696079 51765996 447454781 630873692 607689135 377153212 894247576 952879484 245776331 490518543 309519217 474086930 824787021 782953680 182369072 488385247 339656 587441976 900715445 371842767 47056113 182647532 845231511 487516980 812979613 617786438 60439296 200834849 422272791 247794981 428758553 862401610 504053078 536912632 730934611 372173494 47135023 504781897 685238041 705404996 947456476 513815973 348887537 669152634 253984222 442305420 627202155 197009765 687621063 770829240 36517077 305591706 911095950 287919560 776459260 825344428 982808908 924175061 408505729 764605892 625861526 957464353 853851587 770025524 671154662 835204153 612920637 438831089 834028896 668312996 908433833 552999253 767843679 685912577 795820238 722618832 659496533 451666065 58892739 937748564 707150638 156318601 401152513 136000101 649304950 283669863 15429905 308984219 557485367 575621163 615598304 211213433 598187432 431556306 350130466 586119259 887947556 336860660 71644517 25135814 146654317 76772416 185588449 635962302 999430191 226734635 165493733 165109687 340791249 205174281 480570303 686465654 312925484 819990431 916338835 849347897 853358641 754208725 65515154 752247379 612482805 753580850 481222861 325081480 808355906 126220507 29280032 696312766 539880993 842155324 250864012 50823938 93520352 661607494 414245784 857962145 67705824 299458069 141843137 552428351 986932967 91699478 170345979 366681567 971254651 203468898 158664597 780804563 836932804 398589915 472993336 70937609 11346682 608378272 915545750 56554020 385866870 34605371 411707039 734053956 125325043 783684580 270056557 376495377 393907282 380237536 211620834 590589922 159860190 384277233 592832852 733067181 163581993 281220293 50662396 59634780 41963515 413946190 982152412 483729443 457775316 112743884 645618344 228344050 424017557 809073248 721720529 377012151 123326779 250767922 535595374 1895962 150678926 148116254 994809933 434842126 917436764 410842150 4591993 413121929 170185561 79151305 830982773 494511245 844514737 35655142 744737964 542796012 790420702 908109929 766885064 741699226 778243786 946350756 453413223 675060025 765666031 638137262 393070811 900541823 726153144 887681715 981514623 800068310 439655386 55414482 358928085 17097927 815250424 440769666 173777614 780100051 358809178 59079134 161088014 448367896 558191689 582437176 538674255 920434706 492190446 380317726 231137174 965973167 768034832 217660543 948915024 23504978 47225489 255932625 451167983 425616462 178243935 577939608 139983044 841793291 516434697 187227007 856888698 696266154 283423218 601397218 338507854 698944563 962733853 757304234 240119475 153395249 953499314 117502483 816634002 741917165 594272570 143319327 821664758 956093800 756432631 943393045 794543553 445093540 820123649 784439601 460548016 716922219 469890498 885915930 909635621 705987122 539972323 727585355 901172667 839225047 501374878 986535677 703667477 975959409 46677255 530048624 214718894 540585629 427799802 643034430 555411935 887673275 376913952 751022026 285466160 34065031 401877023 906354444 75563416 566988800 127017921 985974710 62230227 775754526 700376484 745384653 669005098 947360502 927386085 979128116 127379703 156186521 766499784 936312690 688058136 220867340 747057385 540871627 360149156 37382092 412448644 388283745 232199244 667445386 305878870 185617678 160058302 846999048 819563675 442556188 499606129 822926252 64001924 807589872 578821591 568514569 315406492 686171295 254147750 840383284 643243939 92810795 480411472 577672580 215924410 927040094 4333558 231428137 803567225 159767147 520678093 475274623 319597610 603119949 758512197 691963207 427054051 983354283 328224699 944944957 16966923 523415647 912310358 614331476 92881635 520723070 516924295 539356624 640193232 902092246 387874232 463544991 802041465 203565096 963229011 989703757 353520051 383673556 682310639 824024842 631321220 991931639 569388514 414747520 541938565 373368054 437627973 2846194 661604927 877653374 180592138 572448838 671421126 26631303 26604454 335089993 880855935 825853931 613127544 238837048 614771390 72441172 911347536 103663265 996183359 252234326 965943584 384459911 276305686 765381465 820439031 948552883 610165369 378538339 398268443 16081300 812498813 15594725 820356141 308379706 818645719 833269633 124950792 70623949 330022150 909852098 959818940 349518952 260126671 946096482 791595189 594746341 352465385 135147180 244766548 138245419 923050014 970663214 715557999 181406693 157085883 775636711 228662030 423269045 866122467 40816368 83878775 270883392 517322532 633113022 161661951 52755058 279277247 773694941 823441672 343938482 530440437 703266266 485449264 806619355 844432887 602198527 431226523 103266191 532625408 335065741 833552175 267663213 716361348 337565481 75741482 940928391 647782689 413491207 788043976 31733838 521435751 30597284 171137804 201550145 221311090 116680659 522803262 341687324 199570539 523629759 315284504 381923468 721212839 426732576 685276187 762331950 588895581 622070471 1634061 948165897 411600583 304729515 347885220 287854979 474820490 756883154 330536457 30074751 214675222 725071397 50644569 298643685 905952383 304528878 244956422 708570056 800703451 653485846 585824306 967274340 667634197 861201012 741678911 409300139 476307819 67360262 701106415 591789179 650239774 215958742 568206016 203352079 973900548 761281195 671682846 79080530 839224929 451189358 493945045 520926165 509697058 590490621 175448842 306374239 755632097 475765200 512502337 18638499 907758337 599368207 109961835 781220466 54940224 414816071 73308199 540406529 733162658 392935237 774721873 496899817 773308941 717324811 429247970 742181520 40505239 374504543 496471593 75398645 134376067 807575846 666981698 733676196 89078034 126975746 634611972 379082266 911079029 609538665 174771780 36323103 920560859 601010936 80898016 9817408 929275628 856620341 389933900 793055152 711238113 219066725 283955742 760019678 339702601 711136915 813868253 177551303 507094117 179441809 959445419 170393806 837599263 342837426 705703927 279034574 14589695 604103127 930289032 298999014 670329620 584640572 581808060 50309485 877886192 795214358 625624993 643351215 33764516 323516624 705309635 190109141 374215090 964975173 949146385 283111941 186973642 545112299 397760952 823781476 914298137 241628232 540722629 146232500 751987436 457626861 583101591 899496898 793720022 528769562 987368940 281612745 966945032 745719304 817152317 759834467 550722744 953428742 366959457 47602118 837865621 818780663 279239266 811098740 770215943 772372842 652241242 976623267 519020869 473369202 831437707 30957087 974437032 872285130 602243860 543035901 583391119 267564315 900814976 904769889 178186014 969996869 380484113 961696941 37518836 235886584 140092169 554186744 684820874 1865190 886871073 716989189 919266030 416075745 387906662 843936706 763751497 275434740 227932564 493410684 91884297 815979257 495603102 319360919 672753107 47242469 170307714 521237761 631107703 334644525 99072580 348858637 890831541 78926654 395599470 49169889 817914940 918785172 144657927 641852751 966705243 866151010 582702845 849884633 419098921 993203786 941717605 263872839 964172307 617498009 93426275 214732871 582061122 98863988 870738793 394384295 500430544 809637723 781461290 253714217 431820231 996828128 893704955 582224090 611250817 239554953 227746439 717031147 658211614 588311175 787917261 312668569 173246467 192634465 31806806 612011899 19984219 100257206 322140257 668771608 745847440 642167645 367354054 760024947 190349464 182388211 87463377 613121786 845381460 888263204 450414991 364771705 369065306 871673766 864351868 152696583 350497760 407973491 543943527 911350007 676348757 480279424 937192409 318521343 125250168 517702066 829432843 12308176 49669211 756800187 679842815 334561165 521698778 393361353 233007527 241461228 95098881 100513022 894172946 501848152 603320060 960728560 558972490 727341652 259804788 991458823 126740473 77791917 207684763 754632925 404485133 61544837 142649684 346803675 355220789 602551830 859708677 420319462 742793896 510226288 626425630 245678080 732457249 794126488 516399991 512189126 669365664 908911809 775767035 805393938 279900650 308221878 584604006 78536897 959452794 52176685 915949607 367113564 745859585 840844834 808068681 119001714 985245603 508028298 941380896 32831443 81108197 239391368 577291884 634464950 882527637 806063593 710273504 14244434 428009544 87901489 427748252 20360691 289525410 583410202 266813210 845324128 958793595 137198889 796038115 716914315 729524808 965475637 153816882 69463637 746824044 145431655 269477433 582537592 783232818 76745240 455794789 662162926 452282103 401284368 513067959 568930047 438498330 432524062 458666130 702495495 879840341 905681027 377103865 15115581 724477454 556133920 455847159 557192860 875612750 301204890 329068071 318592654 488671040 988859273 982595346 437748559 67732870 761134644 732479421 465793406 153949230 543410890 814344692 593486436 179544532 312321332 297421892 44533795 22312446 134738460 278378956 573508403 743498428 765368925 782278859 163488565 66139720 176577080 349700155 92666104 150110081 584874476 601545750 549380178 54417334 551648868 889472732 591108216 240848249 766316930 223184912 836574785 542550127 2632832 353480863 973363106 920785150 574771500 260088703 589352555 219863637 646305963 909168594 28958957 167820219 239625126 367593997 302228958 333433427 861935565 149825353 992598626 354359749 994346136 509138869 870483532 367922253 17047463 761377041 13690729 339355688 69002375 656014388 614231664 371753668 629654427 631809038 324402506 940490543 219134852 724250751 652558536 229817820 72778571 540160607 878080616 130806144 851882832 433160628 609538484 590944391 224143484 86800984 836604585 436673740 900663218 759831636 562162128 25102450 312497285 543532762 2239410 758718167 766818762 638386976 204998688 922879911 170439722 662898300 370100483 352990112 527074897 676869349 150362659 283468083 34469067 56637234 751645528 133889780 446316407 768531174 490722320 194161896 730515551 834593918 661146911 516157272 119392487 273261165 267581681 111090562 769619905 311846637 116873132 262605688 162762344 183980290 273998878 173971654 564274211 25539036 217158125 887437159 380706357 935354059 447903594 880522598 331741796 134103015 865350652 383810470 52360878 199679657 995368231 622679146 763708093 213922290 327046454 590614720 307924991 479358933 726061970 153895067 253555400 180685127 611432280 310535774 303341422 956146251 313649071 904721507 884339510 83540810 571372939 39207001 795955109 945432245 379557950 713607605 423742254 980768784 606622373 246434026 986962417 927920760 468596647 134111173 464181529 83199617 94603032 418315803 87409571 227750763 195437314 378759966 867168508 166907650 555516595 294367432 761130763 481080391 901299358 573815317 823166449 47062117 590135972 21461941 414277582 557569301 944644791 31779901 69321245 431801234 189446979 531633478 608172566 155884722 894256432 939076103 503118313 493741616 147807999 576523533 105124854 405466018 115347316 834439680 141352743 582736688 311918298 82115262 990151803 641760500 350743065 889941839 147078457 738273283 215704206 232482682 342507965 504724081 493893079 838778833 874453282 329663978 249617313 390548671 82208879 953809706 268760432 838609555 628357731 842762805 137634008 867024136 617496063 36153930 75335386 53226057 307188818 578161904 844469577 559595731 195245212 938327256 585094820 578008683 836120506 564861175 389177687 257600914 252566911 662189803 482179624 700620218 5733792 201220107 225201047 711438512 69042192 869487999 867548615 932259563 659846455 317161579 863635915 230166888 750097448 756442518 520668513 674185112 870705488 478824333 805529121 792160788 875186144 959451763 979689636 119852169 829636256 456685203 732302442 976893482 426560569 840523936 168885379 544193591 997710343 564690327 157413326 678506538 178331219 7953630 370594642 865858161 498351433 272452853 502835023 624091833 278331745 939466229 776441472 635975350 873268571 235476096 121245389 110753895 832513455 400450438 878623988 198574313 316987480 644392102 773389229 577124989 869170705 46970552 295662324 937352491 111279325 609759149 426289997 353279084 852316595 816053044 693855900 251661094 953006727 725624377 533077901 776644382 984415974 420766023 183937682 805059686 969315633 534617693 554066709 625452793 848488592 387102584 24525107 841174377 666798381 311196429 541568645 168399332 145400242 236784117 414008352 789014006 680863934 787919541 151243737 546163876 411765849 196648877 717946900 140201714 967554306 95983717 984032727 505254482 249540918 794913082 970477238 909204684 241018442 419872973 154811009 736492899 111854931 667436011 374821458 696739906 729686616 986800771 716568637 70612311 577127728 648458153 922955371 219039024 935250253 601053292 960852926 198912694 270330628 479199090 830124158 800082806 106113057 812024528 985994860 533474478 223822463 171936122 643197411 681849731 646893346 213486016 162662652 626334364 505288658 997165458 472905556 721431414 945227187 32880990 109830697 385767688 408426934 456824726 1289926 780856595 540086663 80015676 514532479 769142022 157339618 346427320 810580926 206123999 460349939 291127541 859766987 572682385 256878942 288359731 854540377 801511120 131346853 369851803 609229857 887138373 316482217 112705924 751332932 622502289 981729741 950377402 581969922 99290148 19671085 523616828 494023773 694936360 578446692 663097816 555180218 103267538 757205656 61768993 521092978 399913469 803915881 580554351 897986511 912737228 189691081 185328783 969560140 555518458 473148432 597408862 646674617 269673035 854114715 203189855 527143512 781871101 187876299 522202973 704813342 234349387 600612338 71923600 389737154 678887814 927968744 122683400 858141438 256016129 446575743 766706725 853171677 827181876 709160647 29004614 53345218 452364565 570689435 981503533 942103473 607704969 39653924 518730611 270411535 544266601 636012060 66216040 341320130 877709345 412971778 343053575 646410330 384404040 565574709 406649539 650464811 339421027 110481297 967191958 518999629 772754133 342847099 835470838 31864513 206571977 981801064 135071236 168933575 882066904 824949841 53085679 987584825 227467771 528678510 488895175 115708109 850330372 573880303 405277809 553703137 886075384 127220668 28235153 469081408 369877844 449098295 716477010 520781775 350357971 523965148 84269702 913587669 17488065 867297488 48034770 243003969 887074895 697794261 977610198 266342036 708899596 408799863 758342500 344246807 618047531 655502087 968652036 804877364 337739005 65330444 427395360 218038286 445359025 188597118 562809579 577388305 424099405 64302920 671917885 633876983 423760331 820654651 121282222 598950657 821714803 592615942 749731172 564275409 57058733 93811861 997981892 292358769 784426749 786102588 732000494 744889883 81994138 438775855 272379550 442431642 7259140 725442376 322390828 404501368 652133120 556729107 582786469 105122965 622335955 880909763 827125554 406960845 869286631 290561738 9018833 136873136 479152064 358948776 250324517 929727223 432924145 536015030 267053535 275027095 551556796 835760429 684415766 639129699 87115970 21706287 602290826 65575990 270026157 714121833 100692432 28427981 103991661 921595763 817249921 819962727 745764762 451794756 185067284 393420134 410643520 698621795 692430970 464398321 475089403 909144499 487058597 573386377 120682928 438882561 916390225 570134301 488162420 95828684 247001398 476257344 304659521 600273752 102376156 468236661 304869713 858389546 449894984 698398372 534295138 583229876 749634666 264355697 490527298 530562662 96461248 820630198 333015511 144498456 76406111 302830754 318398467 286373435 7695280 11637731 159647300 286042840 734510992 259294839 655098981 168995955 604781683 185055486 884795937 242802694 585203800 616580961 325661988 549690034 462389784 919357991 886900540 413165767 184302736 630850954 548456506 902420518 509841223 918807605 203158245 976449884 145809751 87654443 611514473 591601942 822392647 444588799 793322634 211423527 421057277 53722781 398822265 872267365 31854951 100276712 459295142 747796 579961472 428002966 843172001 578301928 525741513 386157205 529679897 6970545 400703067 806937261 640149299 426010581 8654560 926463104 237466621 941547084 926804457 102434936 843922387 414805691 255542396 184335644 981935846 807429855 933458418 242388018 969779288 204091157 518520436 296545276 476504007 819446977 8389574 718745027 109988141 446837823 257512149 694683248 322661619 905513951 873647794 389460051 577660717 647009084 604098543 688671929 317657272 430762064 551689040 184758611 770653727 147408173 285926738 203563601 738123969 88680643 242694307 545253068 879957149 124917074 903344436 608389383 320933900 874575471 914500791 372139402 64928380 540048524 894593924 631862740 652852095 992709597 81943219 457641719 554430933 227444230 808353506 235156237 209755865 299011459 622703340 211794764 909244668 682252381 392315606 820209528 495580370 775959714 637524210 635888200 808175507 432757672 774356931 564134836 363149794 838656196 881733830 43931333 853362893 195906849 988001654 976480843 218920814 208745861 710375810 436910847 225928342 450280569 99742179 343238383 348408937 468474835 508725933 962924407 52993339 124275517 821637190 639021054 297252724 382343610 906128427 743820940 201975854 108102716 744237109 396537851 635098190 146859805 775550771 310591215 652719490 338130283 475383938 30661117 403447776 554444418 199788930 932231207 938558616 330750568 75093733 426526197 96427669 965923587 72904815 940736441 939911843 184326973 32825604 187018876 934543558 620879221 762705479 826658675 629752154 493068190 523958563 403305998 622099383 614967254 48990268 83787460 312047673 648087700 262770404 352370519 737006987 175087281 703161278 378519726 426280918 264114673 966711432 784944147 764450623 318876034 286690216 281716646 417233262 174070776 738026852 905126036 858238696 365314412 178932921 638712917 567254932 280963314 881608991 178857229 812369325 27530271 656919085 693368121 768156099 655692933 262921418 793083473 673679638 798242389 667416924 197903644 48314348 952035775 254636195 125374933 130140851 223186586 401306585 21278849 625371954 176823049 188887688 818951076 255845670 100497703 710451513 145905890 671388314 419020555 802592098 212131919 896120338 680168039 476830031 88810176 632870327 999299719 979587556 23923521 722749877 578538396 761752049 935398806 996866332 629921093 863843355 990023445 431122208 659329603 937869694 157714811 632267107 104960305 619447532 976486357 659498913 334517471 348943397 271258445 930038129 752416133 780230750 878048772 930635622 507709316 920745178 114048505 219228875 975441204 914602111 975499891 936167032 60181593 669883022 705896756 904191707 751988764 923097213 198288172 696755020 529888573 116364217 347792629 175202132 127619338 531164938 997528457 997555019 880541419 497855 692895183 837998794 652630697 216285161 216192378 633828435 307101456 882473863 541537684 508437542 163388763 756592082 125118499 716773252 822925484 584879245 376927640 380462191 190958024 975734343 731625025 748632416 747729896 691347855 797509759 145824996 217594148 453179684 446539841 300808861 951932654 887059394 538887325 16411490 944758070 338227145 505857547 320150692 903162874 170887314 102893084 448706313 328566089 859788858 425799080 54110316 678510489 845799539 439968077 589645795 851724091 96934036 825463678 609576666 185082037 7474501 40381761 809865515 406236812 703277863 10450161 920036625 525563772 493803343 586830144 475286193 66914339 49770273 499068380 880917660 678268469 318258355 579133702 680010769 95460073 733355767 994244621 230995607 341403111 416961714 570243511 338723417 737976911 952174519 380699520 14314645 774049754 811934394 180815445 41615161 659019849 865910441 325863278 961882527 662713886 591986278 77636819 295748779 827111591 449954020 238799684 914661121 909812273 873615156 14426492 761222127 496595522 265200010 463702308 892965908 72119704 101572626 823239551 810767266 620198126 66453315 688075044 985434933 159179187 834827589 49730545 134659464 135388251 110025385 531632278 774434618 99728506 588185291 618964314 186792429 328666778 205649151 422358565 93116732 693028535 582024713 574287529 268725872 669871869 861856170 551852401 907593597 777437478 955631093 669796257 28996866 364335018 119472947 779706407 249626913 269548046 307991362 441451032 546982045 470771683 332701679 127077391 402954432 753434727 401269651 834531689 339976650 69382976 224375009 468873627 817763110 702036151 366879460 973654287 866888115 694296194 543865719 395864567 88563419 926267319 801801600 335515463 487205696 983341351 289394460 106080536 406450123 252426552 843543291 144777861 132236952 696180056 780362361 126614369 140157717 108068092 231332102 328218582 167300429 880153324 63248343 83370554 396675417 987191368 586641170 706087596 289916280 951098788 324029957 172566314 205702200 536143156 905426727 31441885 791550084 973705589 448145523 424870283 159881777 566984140 595584457 400688945 371120790 839864615 855287725 478477009 610990396 804588126 29771178 977530605 564222672 407095226 432605161 47961068 500756345 688396726 376957410 589768938 443818909 785734362 129957513 852450161 238934913 165963863 247507160 191767883 950085116 205537764 709406359 233715550 750592863 662512165 209987345 688697164 65662047 213048508 347010133 173262591 762553751 900777780 333589409 983508227 394227839 714002981 827530023 728116672 41545068 486014485 345162978 521584326 408260330 137177784 264046541 380508466 51385364 820912644 436745463 751777157 214259118 777459550 365171462 815514595 765244461 162287909 376013187 389347651 10067935 907480704 526217525 79118670 729596483 865188983 207440299 238776849 443179345 605038305 687860279 442274936 792298028 455969321 564025827 187070586 56998137 960922730 614845235 576035022 996985011 401924125 261506555 775791012 181801020 119378524 556672115 255128702 367711515 424152732 322351941 714457680 328394274 595091596 264928527 539537743 939852016 352158383 257999208 663495634 172901771 466665327 907239593 519261756 229617422 349273834 860021579 767150511 629147295 312494445 834325528 681812784 381807896 630003723 300830025 47548144 528679883 689036722 879095394 91784501 472084865 802847299 274218421 418991623 316938715 405285962 269011363 887360693 263496832 398201250 793044761 372019492 898726885 379641405 481522655 548688788 67569020 944779231 877104374 647027897 134851 630933711 696797 70158823 365917681 505669304 760519061 715101208 38368178 910936942 782759784 476210620 89963722 518926227 252702633 878631638 798781141 586433339 626977343 296753921 399421305 278047805 103403479 767725528 429170241 185763756 44174809 873379220 347448076 522425692 501824016 999464042 220406317 871652352 937015966 340846434 876278869 733854029 167451063 817272500 779112321 697284691 281848296 26371389 705379798 905305960 919061746 959825644 531928437 914623044 20479330 127264993 696097323 970642443 227895073 867337328 484665731 176641016 998770186 739938570 859312909 16465253 584359903 359667322 155555542 204760843 993545130 361386755 953152741 873724214 482937730 787313024 62811058 111728179 429030202 359233982 962220722 782919730 516316382 605784051 632436383 504619719 439395822 284954156 496203330 608582479 294918023 913028275 26019697 293172163 825605986 486337887 762626420 126867824 227106237 678683781 123537400 1730566 36329644 97176935 580587493 550181230 294548233 606299221 971804283 592487860 948291314 980326066 282555636 411438941 504701755 19444378 278699967 47318162 793170992 923961928 103043668 406352806 12932283 841258367 925549974 136401701 729527819 241142329 632448909 315560614 751377740 101558544 187410306 955191554 939313168 733655795 439124424 385010852 297653549 86457101 111476909 488711470 772576501 516522682 842886598 699447776 837928222 792334515 993849061 480085987 951253972 724890276 851727 936365950 748162503 654055963 837822024 771861781 646410982 843309429 906028699 617816661 978848437 76292661 692079405 804069489 151965648 209630179 980778784 209637466 426504855 609133899 114611366 825099034 586211436 410278070 920336895 59281177 505626410 911025851 585913757 35035915 234580933 682235521 540576410 295853887 365791493 840338259 683521264 612743663 381938604 791900691 646391216 76564277 653941257 882584100 864149943 153014895 794141270 118996192 24577943 348012827 979417321 258631049 765731799 604620646 498345198 724708627 33832586 66468153 223494036 311773022 629235272 64970973 405558392 85103324 775480201 145044041 522647123 792576062 60561527 368226432 292433536 195612726 158253024 881719748 917994208 356469546 344168773 475768507 304686337 722651982 617836463 511284989 930077926 520229499 232567391 962065962 266268545 614314292 457483675 642909528 915564277 763691685 184893607 322761485 303632201 103803418 647248673 957187840 580333672 992487487 302190991 522775068 131794666 331395533 912984477 605780052 215199231 659721096 971745922 814007287 319043894 25035292 566132673 59902504 701238819 705527093 915806049 248041240 500038283 215996906 322857598 869047794 942676790 194117065 992851982 421215875 610060492 143708869 781998688 115704342 213302000 694095484 78210549 771201713 809370081 349027339 399172207 3600343 585561387 231708217 764165525 157606321 204015317 840511407 303317028 567472562 269146169 480350578 561455616 514220744 884533357 330674206 165415357 695898633 429918597 460510002 650949040 329602617 211652442 351039225 688693171 791049242 565660185 825150538 553234436 679099145 423449273 79075357 244779443 622255158 102310804 798348658 300643402 581674823 664153638 344108120 66377368 156037195 370223912 446624971 235636055 636158355 447837989 672955668 915229393 565087139 820014586 853746138 395767003 443798672 969714867 927084254 833486198 392674152 362809245 726241238 600473983 746873887 552495780 200413792 561481978 825554253 20408080 514034451 146144568 985769468 227459061 211039065 255438583 810247386 60471720 15887927 723429503 711584932 420179489 475850598 232242893 232096722 340595982 323799069 998094019 36841881 692439209 348350178 759849424 850076466 382226586 743956431 514599453 804180046 581726707 984130341 884769837 578648959 182317596 13554468 154971148 965775497 468404244 16168346 526446459 847821306 696542544 659137312 890207141 643710652 472872786 916560810 890973716 534038243 163419324 32770379 151013237 298825542 199435661 757462446 206629548 558038609 811650863 676938294 832517512 578128045 582308076 729463936 896970616 193037489 590791583 663740486 160096851 510229033 84422453 673103827 91644765 187755111 933934531 762701314 545364406 985089663 986905726 175208388 856562312 57051217 460144701 842215257 946645543 199889919 916520225 603576320 225921728 172484032 337208660 842650312 823082295 561925569 589575419 750670993 899075105 880938339 712140186 383674351 533079490 995266047 874168596 942114663 361867394 959550489 613560331 341516531 115639726 618141327 833834371 925607668 419674419 435347396 860407185 94244947 119658347 186548086 557760759 184846803 701381335 501582138 219173693 540610336 603862201 509915537 664869346 489274553 811268884 933219074 320259251 374642957 893168870 240091129 245900239 945089876 3457859 691357839 216832334 891338685 500901597 421746899 8824185 565995924 163927342 494186099 660524496 187841456 307448781 461412850 594841542 739883601 862618987 565076677 917814602 293793195 344530893 643625507 387038922 250914578 486336426 702197351 738788509 658436820 840087951 771989734 122548683 115429663 756374204 292294994 398990659 470660272 605515545 120359666 541358683 567116562 689617146 882871817 323969790 673181180 211312 210652300 299248085 188638460 505369575 101922745 447066646 132558082 763173182 857226020 763354549 294353736 79286274 770469999 933493048 544902979 271450164 220797635 303061786 827749700 127293711 693112986 921296694 963816450 444221343 179913613 911943345 310735321 703873003 213183889 780317940 628653944 54113752 239824665 782621135 436104251 448819144 639265520 144941933 949929664 579040242 493655627 270441507 504322347 131927323 610933814 733391245 497052980 543079165 865109970 753673812 834921288 324128936 338618057 581443646 740892509 631671061 972652917 270104018 581427981 889780672 926840013 721148744 812917601 808648956 866536608 771606293 778609878 818122320 899247370 624114297 821391601 374570782 670564954 945324721 256761028 760388202 343922469 897576368 556188019 551226202 219010507 185535986 60656744 596045241 46853000 993801637 316991277 800122204 247270357 289052457 155079318 346519457 750163938 484853340 341139712 895773892 687380769 926624876 60102049 145164363 183601627 638769090 374112714 669751002 191307886 129389907 201882170 831187635 832993630 311086852 198645383 138204503 957444323 744547377 265123473 220471152 574432410 812153000 332309584 997669152 682667419 693447911 837227959 73029143 212045125 740204739 319285820 565823639 273361475 27966932 390649152 419129270 902614464 963779916 193453259 853229670 665624976 14878464 773570852 901242054 296965958 153138786 938127273 290147683 600935171 269872039 782261778 388664190 759326604 804459265 604270335 333587373 265394342 179003288 509541434 389469954 460935843 592138441 832971826 529969588 73542078 854865487 294105280 289317547 692835427 758063719 127428534 220590602 279855440 320337184 330470350 979811622 441538848 191782459 658780371 20099002 408558910 949258764 42626178 596420736 693946781 56566264 73621298 101241087 437341638 148294986 950096637 266634389 746289874 525894980 93496658 118807288 218699447 189987600 833525759 10966020 514228826 461623198 104283908 809367722 745090198 937144937 746559619 910045770 989533588 993346449 138615871 938870563 105602640 57181110 183762226 844858299 789076865 82456470 936424707 951757423 200328304 547862635 822527860 329916006 993898777 84441989 960050046 155724463 795431338 562330216 878659628 659548569 564587394 887078648 42550269 528227759 527841323 364171602 827980524 150925074 776948375 13725951 941790412 246772836 302511196 777043374 248775526 988207083 342214879 234683235 363227408 637355434 526916295 313757531 421231223 571676188 534469363 995138398 166049835 213800616 951893244 985478362 391521585 293777082 134483086 994057607 125676310 388069467 217945656 727652032 840836257 942351383 60109541 771002321 635626251 456086573 983916899 537843422 703731808 159839455 496833236 604669388 269057826 794248646 940723073 281473473 203723099 957199561 517382694 146327782 378599212 51172373 837892679 621145941 415141235 653879152 193248682 958597529 27285157 870289538 588520793 881096367 722616296 48216976 709669547 473343876 916135064 220118443 696400048 283102107 991222167 389731341 811656737 900117430 224265191 316004986 89480271 433705319 61232324 800131527 637583594 618635886 255714505 485751222 603516286 233942028 967490888 326112662 301431950 292017819 8863435 946186827 464332729 660417890 89219159 687726021 593717830 952004074 355091503 337024900 596516131 872745121 792871801 749438329 61011393 830408688 9876380 828891458 527828805 920336968 987309498 766822549 262170726 618588777 268379807 53276276 763230210 691583163 561055477 565884706 681802491 713746173 853140673 11377613 749874808 126211519 542593380 463445597 548204255 533470566 393985875 11491742 398623653 746852348 896721817 657081838 889133079 665447694 265427350 462970944 466279702 847120937 911463607 332210922 223710108 92087803 92111919 373281959 806839043 919350384 62718374 417745994 758096876 881775550 23578068 64861175 385299489 817196936 484799987 280736683 644181440 352060719 510742458 102557734 796454977 864745182 579694623 171600367 263119912 603239393 326795760 150483181 379063564 649464100 609869345 816138642 925583044 224744146 513264013 967307752 990647089 555955572 885791727 163491780 76367632 461910480 517696371 949839206 409350792 616459402 791343345 700982289 736628615 797683635 596721725 999072528 778412369 318510156 605948475 856198633 65677009 165837674 408638864 72174140 157588451 249886229 541876124 749105178 470254822 20871123 772597317 705346787 466475112 595308236 504909971 437337326 378279692 98997785 623933228 109734318 250000844 580631081 856829297 444649231 15875762 200785613 55927573 353642566 291856019 676491895 832560560 330082338 948989561 759077973 221729759 217906227 318273813 533147731 167668839 300529177 445748233 903405191 292822398 640355114 212305267 163379605 145146689 150024161 245120229 461374606 858917889 713307327 212433626 876854701 858017360 54909266 441092831 210221436 959991138 802443570 860076235 127481286 425955823 823650032 765225197 814570166 880346935 854669372 710500235 687596177 842829993 367265046 778979715 201657246 293538977 465084497 940383141 525741846 813331714 510412263 730729055 580670134 428234360 238884400 59119708 401503145 992197569 107486513 255045893 957571565 134229945 518469962 557573045 886874598 881707217 229333938 957266446 936239212 466277586 987359320 805302050 95109132 348356481 562432041 673316667 584829413 261487516 705107866 438295151 27994472 532374229 163404944 229163079 375045569 905204173 211596833 676701551 77107991 918517759 317053932 547484613 298330703 794453818 923939187 445774326 150299077 303854727 795433214 181270203 129955945 987017111 889921467 551214433 323359779 244679942 707350812 860329371 596144980 779205450 657328915 471800747 231539171 449864845 263403880 32890186 580360102 687518746 73971529 544432110 391508090 831522683 984986543 203550381 40000021 62599524 641258634 61499049 965361754 406024860 460954388 624471064 813679418 926734583 462783326 597247016 474957364 339382387 644600708 278231195 471074980 155067606 270058317 399062786 855770176 225840587 575985686 427515773 900087487 913612535 534050513 897908914 382432801 345138110 816587390 992933776 925632250 8493076 7975907 751422719 159021433 18456469 306609030 608592416 123452523 798309388 287115769 264439213 871645067 971729872 194562891 866343802 39428490 298871269 766205550 916255830 911240365 409137378 306539201 695626034 637078758 141706094 446145629 779204527 141742437 529455921 407262693 597064658 957247610 759323122 988121287 150777947 168196618 632261394 83455299 937223792 102749544 782754752 785548075 560842892 680562653 986264887 750561746 942984633 431487958 557888672 175300265 776741458 352554911 84161845 414437500 18296053 110813115 679226757 947620013 382889986 269743359 845755033 802498877 983120610 933953509 484964454 143355830 679057444 362259628 85659693 792030878 939230182 50752200 155256817 46911113 664933040 711633735 61386980 810657934 603391970 326038659 272856692 516895030 122688728 502502982 505115959 465303968 392696457 848139873 925723424 715927153 805913778 57525871 569584286 8028927 748374429 144925409 235391298 331446647 849369023 279854373 122151720 607857031 324091393 75753662 212074857 176009316 203879477 353739986 194582288 494146767 732115556 111300800 73884564 272519914 128729607 580706474 732209872 778337535 306667977 53583710 378346676 243311521 296972996 404488842 255068653 768460036 140552562 371374304 88743929 40069535 358326603 91844078 68047519 47347040 3785830 769719354 908621418 998368015 459402714 793629487 583559516 152337809 328124876 419704924 707832399 440727664 964060869 905441897 817941639 309137023 594620309 2892414 324644549 88214805 533823037 796595976 925869674 219403537 149969707 590887732 714184716 595001078 715798106 214877486 729530853 94833051 138256229 636910824 976612270 325155912 741938597 192270650 616033370 337985210 75036161 600520943 800472334 551259233 889705257 738422180 895310605 362908557 357645153 421284639 812869975 560532441 691278816 180729167 394290363 853466703 725035454 893299661 597355808 905583469 411912683 196954462 833651046 605620762 891864465 339166547 865461178 429797263 895491572 571323822 147124682 180906384 908363504 178862213 426513376 559128265 690171927 328583166 31590232 13796446 441462947 817105007 172814042 806462123 908692895 776525743 708308900 188244994 934374175 361180221 877794623 947348711 976636076 616075008 434696768 944881188 210218115 276217331 942188700 644674785 849139882 852929113 959466424 316948089 288725823 71539799 242628853 47971849 666858376 941732378 827300316 335503242 634488485 159702031 329594908 139244300 620730506 985550068 849056262 629021561 523288848 972627287 210545805 142720046 709678229 243460700 531939105 778243731 636603292 189946556 742101898 832897107 693884686 64067663 573227124 165202421 147787488 929043549 425685375 956089823 430906901 621847564 653263761 325677382 683755074 539105549 271336383 939136941 245971679 869245984 19163612 120438984 907222578 78732035 464176732 288910055 751080442 56076189 776691574 195919571 141341379 670996132 893971563 750900363 317749883 853255021 871398631 836935429 454984690 363560701 119000548 250327931 77075326 64274597 825617770 627549059 137087388 366811667 50215558 694580395 934270080 762727173 813620668 647947062 339785126 942437103 677655339 887973770 833826570 638130265 378984283 763198377 218335814 898663525 427447065 644064390 55309116 50621913 213659989 628277463 83224902 530589259 724933056 837283469 605719744 515488978 631804668 242470522 267519416 768033266 468943564 410540728 307847100 616162684 631262270 389136603 997436872 153574092 8702786 610583565 944198740 920801491 653346279 931002568 96046887 435814734 601642002 339214416 640161540 924629621 503605576 717887535 233893645 317573092 346666383 42523375 879290509 485118729 300814915 47763240 262929890 71167978 578947516 358029373 561253498 559212751 597160043 23494844 474695668 101564133 820421220 289325736 380860670 402960715 487684308 59108319 24883317 446451796 125771963 337774460 298304602 242035982 946730116 833305642 687775611 578095915 263332412 348497483 80040919 864347632 803939266 312328108 329607151 523169549 584454675 946111141 51559524 504854967 500104526 780139113 295303646 406454294 746169060 352890774 944493437 773619672 239033873 89710631 689002230 255085743 743709 114176819 357332337 225852094 519673503 681125728 833313685 446798062 434284434 227566360 833883704 73997306 319996125 279846055 663382293 478399832 37651641 639193895 271241329 579377072 744891382 614989525 239937693 173818850 130320958 25850045 365399576 844751903 175286233 313229130 186681753 620119673 451124928 898726528 670997752 4177781 484396530 206090855 966042489 52558173 527072016 378702432 647104741 165231442 541845822 966781870 760145793 980305663 201327474 123887554 73403127 367440770 822957620 654616750 827096204 160999014 529472532 886378482 830109555 913471395 895781692 365944362 996114002 235562365 595755746 559915263 401014954 737323398 489206504 304840058 374863451 689930800 686575797 360355351 980553197 184675193 406730449 260489740 811611594 14235733 458143909 654263622 796920895 653734949 113184784 551836589 499291757 974071955 574831182 618204571 586188425 258608314 226006735 985844682 453246510 156533554 575478247 149225932 450817468 961842788 738524586 808680313 21595558 900445679 280881839 54780216 653627254 268291460 177876384 444750123 608451872 161727358 596768852 675809825 950197782 416615392 283841332 160436595 366110151 854714897 666577169 19762915 20814116 944688344 926801014 978649702 91846506 246012367 464784263 151773008 55009816 699044516 46773490 394709529 912182207 534960882 504004133 971831625 15846616 348543480 801383855 542081439 753716293 37599894 375274562 372868188 273456305 394410480 298849251 98817193 987532184 793220901 619239122 560013689 679968239 661015158 193486119 350049418 389629157 495606898 49505284 986674224 708929274 147999568 495343994 120529725 328401478 314392360 281937361 65268147 839792555 351220247 412395261 848301094 496386065 867510378 922975194 360049029 665164285 742227692 477857506 193899271 395210492 134869894 832959902 903080738 311599979 655891346 468819704 613765148 266916287 658021318 250439834 965649015 56260893 715024662 758763077 57169246 501134371 585550343 304929391 440288125 82421623 603328934 697485209 979544085 903003590 418781802 622472368 899720402 428601630 250764997 628559718 850624503 690179233 783717309 598513661 397896425 214796367 936637977 504164326 441818385 978994951 948740204 260850559 415716375 82607445 496267268 511982070 139237026 605631735 746978677 23166638 123555684 818368737 83974061 890051143 332240746 484775865 762234013 947910143 960595008 928368799 714771962 315108243 815854880 535073536 974757443 75713939 151400710 3361975 561072863 765314536 51269944 750125852 367208691 478436834 360447676 956155099 951664271 517104712 474763212 434374857 93163852 37326137 776618042 190479648 218763890 400478604 695228680 795250545 528040153 674209207 671702290 747490519 85478318 970200022 648405087 862239680 873416037 514900325 466761959 145057788 158709300 849043165 815853129 219835566 953205010 297922871 921628627 887847306 433652977 412641322 831581829 853028711 935873910 954960633 774806568 383926394 522942098 385442292 242311016 786005348 598839984 794088103 505844444 679546631 74554488 341073556 644574810 764919650 515495173 426113040 325914248 925102121 393004078 655017382 840500723 346373128 921750159 232731226 158156816 292421753 712952119 551321392 116010547 998340283 685606599 975051611 459976024 413676789 175038091 881220503 200739871 432762482 180705624 64676400 588124724 441356243 643402224 191960661 713638261 739916779 543013826 211571235 893737395 670953454 798978480 837894731 205613901 142800798 225030068 69294019 255010599 531154659 77995214 453297425 760018352 553655236 642250953 662725696 194763960 260168951 634017894 833006715 707978255 779851437 613287371 836836609 692251769 529094040 59961975 595345369 191107113 436709571 136889088 676820050 720549817 813345311 765972140 224757558 732410469 725424206 173134804 665039085 382395986 29560919 892441320 818917362 502442844 187760391 370895885 133563950 563447029 903153614 586580418 453585124 78661710 691664251 6206388 653459890 227663427 397409225 990672415 424317208 594380450 140755566 283969488 96045094 337566327 124821398 315387424 253243039 19939830 468654043 642904140 881940026 504773125 666765887 487617430 280651663 549388584 627406697 710473314 300665991 206563105 353195041 273876701 914621970 568098778 941343972 324859691 597682184 296087125 340965279 686632320 895874231 153631308 155714689 610757598 883482533 690931373 142477574 162284910 303488340 998603146 980812282 735863457 690099326 154546382 871958384 183478887 675414450 418146766 871239800 635948482 409431151 146010665 347029440 201185208 285398496 83288198 842799772 532227623 45445060 975751075 518203359 494615325 911146964 964993739 103357488 407064405 350568886 26555688 2158083 658292186 575268042 335956453 570894179 75896515 725625702 481036834 494416250 167733092 720392514 69973957 790905103 225411091 341951201 743370187 793392017 305495979 460131247 873649163 700652051 245072703 802200289 560103444 682248359 589889995 396248256 593230449 924716584 392692216 261537551 575374094 265615 922298193 553168521 532766453 894827315 513754803 780408787 638696438 442080974 928238784 886226072 375798719 63509312 141282023 679947627 307124741 197647977 221869283 714799971 71131692 29379182 10311553 689677053 540479413 937378891 402133779 336838522 380316808 411739005 150379058 821039873 347505652 318182648 638704237 581045304 834165275 574014493 452969529 186387566 891878027 677596359 432485111 113085866 895077714 610684717 334555475 277102306 540891132 177831380 482729345 516826511 477353389 971662092 844668688 662016726 722914246 51049662 987782943 852589451 578813251 830048261 806036027 253514995 532206436 197666586 339307590 746572043 393691655 731488939 977552752 385968132 217275035 514934348 949640099 217846917 978236732 663638609 918215315 508077265 332291238 739090482 811755979 712952935 837085774 230552212 264743801 1625162 127381726 432763741 968028526 783746658 35921286 921416287 443545496 454701523 244660270 441087717 147365424 974582300 518263095 432905387 99565729 628712303 287524627 459223279 185052056 534384011 766749743 994777187 502424677 287683033 233652028 730006032 797457123 941983695 765495328 683919918 53476203 974447011 649120980 343179459 320200024 928858499 399070904 138675168 238880345 267882984 38912748 769423504 198707670 460957330 500707166 991447682 221874161 350166201 190158932 785178403 248416405 29716619 811995244 940086225 540750199 497878860 563160476 584194179 420598838 422876793 687050755 562191131 203332315 937146703 951469919 664925197 543538461 795756386 8816340 975717060 608751910 666680037 222961798 682785572 807594251 712542192 950663678 51022964 139970057 368547524 831404073 342542605 917325567 603021636 324804479 76329571 419617626 578298744 233553304 387463901 282847846 493952652 849058334 517403376 854095619 648404415 32241322 281769980 206028150 414255236 245164666 969395045 399242815 335079689 666733381 753335573 28095857 439360890 195882561 792875110 62557178 546179777 51328977 686253733 686408102 327640482 21418547 441847331 442951836 310863461 307412033 772877517 24244419 671216853 722227997 514120954 945846688 67197426 416531049 81244674 692460803 645438876 818381288 471079220 280496838 701785764 775263243 778995833 213639435 312129480 837630654 699595799 876561635 9231870 460900431 136833167 436663422 17163816 917846843 770037224 213886150 727402521 65141684 973584469 180903119 735591175 37291392 2931156 494844455 96605245 325523558 591398955 475261163 84066103 384991178 758207549 743698788 566624318 234203070 231239196 943865024 899744886 411091257 294001066 904810536 423888137 153884433 55473402 75996359 57496940 432390130 203699223 511651937 568782842 965932084 739847537 956141551 424387483 983057894 726442340 234536930 288247918 998229308 286554556 633921363 854880660 225427163 950136949 300685601 230798955 971560012 87549515 825080994 676692430 562463876 429092498 603124409 980737802 891625325 733651179 290720396 669532448 106582425 598924810 779180434 570269078 333585656 885866063 823082393 890918773 822049635 293454895 786992018 579484202 874741473 875294584 752261634 633518513 623179186 610498504 286850765 135431142 289621896 65595560 505145671 581610590 961610190 728880402 12054520 19688261 561993379 209944913 86112822 352511777 375363606 220000871 114551802 191960330 511811716 63793311 782691797 457701012 644900234 409798293 599719016 400910432 560314820 247364985 349405422 968973228 548219649 343214437 406684546 934048553 916549947 102594234 951746891 913374573 952775149 31062139 970130652 840175023 330073988 753603253 602650543 850534659 6900103 749514403 896511604 831810660 85444893 717934230 565602713 667302590 829623943 14809980 757861825 520104685 282373864 520962438 586283156 972214880 687388842 186365294 578596554 756725205 873195512 839852068 657592229 714980935 845376020 437011587 606735755 29085377 413116707 307071022 169606403 55640394 794385586 631574394 247185053 358985280 63702601 479796079 484538595 661489632 533314242 471928814 704918378 49103898 253911507 833936825 511668249 903856131 233891189 451036499 759733883 239512618 17454327 981128300 266491038 960907807 459444335 685578256 489104528 713342451 764456184 533864781 913297037 912022449 862183522 283943102 770885961 839917890 278776908 488584156 20939027 676878120 40796128 434294921 926776273 331323656 616790574 106969608 854228426 172471374 119607116 253969997 163766869 683848123 3650787 599137064 142745396 611775984 513974157 234750727 37788793 38211300 440173149 146613831 220534420 563329154 587975181 793632514 790946485 554978441 696753398 166958565 822401625 722855017 486322264 711531812 178767664 261028023 252753070 547381893 52940420 516301762 23900263 598820340 872335386 964193074 994378737 758939936 922543831 323097374 892195841 961559258 896005879 96637704 41087281 920172749 668452041 122782521 946641664 404666735 361341729 340733342 875814566 188987035 556927618 951266091 689036511 344886398 106018233 548146727 416384744 324362349 855942786 747317430 940231241 705952626 311504244 160204273 654659145 904200807 753211849 388932781 647231754 552465347 228174334 851670156 655399730 645106163 725904341 296434297 171990856 266077603 3464089 209347856 299295138 128144969 177890612 167989089 345818237 552144178 612176784 309197738 410166908 205772262 203815225 532804861 144394837 151237215 264197052 27539548 571188263 954239008 396601793 806244373 486762737 12115081 832276475 294926199 528461106 230093933 786297599 673455828 938075454 952235833 550453899 732847478 603270891 187306349 928155762 127268748 950607904 527979605 264499343 628416903 395854567 138059800 16132227 843015672 803992590 917497161 743066069 982286085 614082810 580006086 133136218 56526488 604913953 965582365 306538268 247642853 376037383 738631852 226848856 230565509 232792593 208007886 477965540 554459352 493597844 43094185 140019759 404596757 206567807 419298506 575101045 612907693 684957606 879695264 439180785 699892411 518344039 761785489 973649004 626086384 515874789 578608595 392532630 856600913 650996593 429796592 549732245 128258109 149869537 440161317 20307050 95554059 133991475 201746362 77902676 708570371 457331457 839626509 719241807 724820098 203511441 397670880 126086954 399852774 951674286 924399664 321743031 857955826 194131103 714155708 774117736 678775608 615793483 292326039 68650192 417197144 337302677 605135445 221361625 473380215 234787768 977588151 138035915 164681018 814962488 383264332 408631941 586563359 832296096 651402496 872648049 267446002 159491670 674079080 449003760 792688928 425987644 169172810 221570621 963775303 638826365 999671496 221620068 456287737 238301008 162968958 896739119 954693015 39408157 839324592 253393576 817993155 774278887 687247272 675034889 205312039 964615552 718985728 242985127 878978212 436740149 471162588 878543142 549147399 115368927 955686010 302768557 147636319 443308203 376981607 488237952 380913268 797465240 935262106 302885810 949514033 480684291 907383687 141188857 229857166 877304190 550572569 260843858 911541754 47427693 571415902 58555557 606189274 324141473 348382420 532865629 367561117 542258597 893937416 198090778 522467078 510861042 581802582 448314766 881528089 592702628 96835305 946992599 8715541 969082407 739745153 803442438 877965971 754847967 994662849 778403677 551787509 68162219 606759538 616854134 485278782 677125291 904282544 853348856 411584177 577888126 174215259 344177653 610115682 787629639 179929620 202690311 311218881 350607811 421248861 591583354 454422433 450727500 270227946 331550183 552900110 498857404 782467851 960682862 400268625 950052857 341004953 318281894 228123918 468199201 316569477 657078953 321905757 399309115 598421096 713984483 423560659 955637008 970073871 319005083 908386923 144385763 124893271 207339679 422647850 750039493 674351637 473791329 810325500 45130430 356278296 21334473 39485885 685642479 29066509 5313269 688506499 282034812 298802164 787680228 123562355 858079138 99233112 838909703 296629436 844239890 370167970 806017087 453826910 93874044 332585249 143969631 923216390 665187051 6951453 805028596 554885729 249845138 350965456 892354163 475287474 486935585 872024303 999979183 808697144 765091969 439734005 759849325 455535734 311517197 686355284 615398612 750882945 426659407 663737800 937448696 846246444 238387426 318831262 130327432 275835064 838344063 529234772 632080450 326932728 108126095 449068094 535638497 730903531 583520490 807174532 910096958 858788524 48666540 736241271 517188094 499521830 30545850 427935897 842491577 688828692 293765161 509465090 410876531 185355129 963906042 952446711 106242814 790789994 438937354 787694988 330307846 204493557 431814761 93257793 377205144 457149007 165835692 967055846 332174110 763018885 187862015 395893380 625957519 252421569 864685128 267268162 469634475 761877511 38925231 870874362 965129511 870264979 901471610 400339271 8092537 316500050 561951798 584270662 514543766 557615257 216432745 462468383 351729206 380742361 968668751 796097070 201774601 288077655 26132829 492828658 242961506 414268980 427715747 657164398 580864005 265085429 63054780 239819150 556636347 588577525 224629980 875124005 91829600 424150394 155643420 83295763 18939980 897841737 493911970 744520141 209007103 971784767 549331914 675715198 848390804 439597491 266017214 85864566 28278630 88946596 365448049 365287541 686008536 617432512 460254912 257305723 184476885 175229765 135604030 358806973 437815443 584891618 284524865 617755089 258463473 830831581 31335527 547502942 757908076 783050434 143159018 494831834 195810655 263761446 687866643 30235962 146544414 196582244 754774213 142005977 731291069 913418086 849875747 48465897 551530317 603731578 926483850 53503423 494623907 21717789 502917742 470577235 783317858 997453672 659917059 440272501 747251499 881500176 476228266 100842700 589175046 9341536 170326085 245030238 424339804 754421690 638016285 149274762 998624912 102837368 17614827 383445218 74037105 372055221 89379205 502718580 931470965 363350826 232467701 203144580 193642300 395509309 943899499 801136817 571600599 246813029 588022969 122334218 724714557 196153902 258970462 713858916 285553381 278920083 87094619 67743297 160159056 495873843 403939639 172279453 357002154 937223399 36819482 826178732 628353070 898089754 814182578 221475551 998556749 68606945 203557799 178432225 12436464 587294226 61561330 130205738 17930870 57114361 592037191 56831773 590903588 123896515 307397540 4412189 128524153 888623909 542481360 205675435 652858905 120904375 235409911 309164883 555642893 57030676 257828654 958825900 686682466 475552427 385371737 555295102 831306680 217222281 190510397 515561733 144507261 90934015 166461814 692049330 578143343 381740460 98935857 990014370 764416055 454871009 590489138 94529608 473733323 386057168 378334446 871671804 128901639 485309770 426808365 326735485 421488367 265247295 642121625 677977649 618811337 563333653 586273584 875319878 843136385 722073976 203937557 380297716 179188226 919289129 949519114 251240625 426595452 186650295 451485916 913467423 580421863 202238783 604161479 233549867 812897438 419737293 278932089 924243794 248052969 645484690 13503033 392281665 1753425 145432219 652236512 778958132 332357449 199704953 360345530 350071522 45291693 277768221 363385194 521615151 854420040 785849931 885304683 942425384 941653352 928793739 459055069 643619581 510926057 874617997 73674992 117513085 319150225 318429955 594378101 173781250 889307060 844726594 26453742 676529466 270509948 749362031 959036112 208263445 785199714 974013273 130248395 271157824 884755362 387787248 344047601 475620231 695635269 931374558 121241031 52865994 458056667 598918201 874416518 956397328 862776663 523072227 229617271 589284313 563182698 106965410 928692189 410004344 962594758 531145025 221312474 13955062 302722279 924255263 74179994 729304055 619193652 439676507 260938452 858023452 587446072 237668116 646868769 178157372 36450691 534148403 365895176 625367957 773998181 862294908 267837618 961808500 532490015 456701152 757203093 501595533 931881132 535015734 156455994 253577123 395327813 158369566 901602529 13486871 259788218 905300686 630622223 264839298 142663929 125375605 222045352 881137811 977304454 154431020 437132860 999265846 334707003 509550563 64195951 253829548 566745931 742196885 422663157 931911319 544784918 61608112 689224201 435735792 710073021 531282159 343184057 360644323 477127 652754121 142436992 524166909 274511307 659741587 760704505 996593717 859311693 657231841 333829486 738259944 613593815 223357589 585586935 592898624 146113835 244813450 182989454 349942915 263040877 328966420 791124314 584987778 450982627 881357981 151156169 856508018 496419937 543613191 680780671 804020555 494125715 828190 927918907 802218834 901713546 398560426 852367122 414090278 800768338 886787647 586237948 166736189 337954665 28675467 791567302 620820795 804991442 36597359 897513739 780473549 319689174 14253258 603108170 246548830 426502587 163189292 811919318 669727985 63278783 384850469 623088272 166066519 669657314 331436291 811074894 358648589 888123261 267148914 242850277 929912678 389849857 562393555 497305191 7505412 484916586 133059987 225531728 989418744 127155637 338453550 366906918 25867616 757817730 122652011 379125876 933527053 290721080 845918792 793244802 163446625 606419242 135590876 37626752 902948159 782405015 225585477 98659330 941509533 718066452 129268293 992779176 693676483 416098800 114965187 972927941 218478386 6305173 268655489 57994336 894901101 411753476 711034058 646257772 70162852 816248509 49392987 496253221 446873719 683910352 664914116 998316779 846141312 972034977 319539528 56245277 112386519 27911670 546260477 929154659 603673023 580954115 822768091 504390677 661194567 605512345 570306610 146195700 62512703 317169824 862884552 879652999 798053110 709952811 424876566 698557844 493610543 613787456 626198062 866994026 502154701 893157509 826665929 836411320 183793807 16912929 497312652 898020912 589301600 328951185 622887898 913046294 825296033 244303854 160536878 88520659 284003496 186538681 249734905 796523859 267198619 793531990 878613562 345420090 636988738 633942409 502487602 814721934 947456613 254274380 601043473 374928149 283223021 113078838 280422283 43450601 569251313 72971849 754466874 179429177 855890131 896514089 107680061 744911338 676465816 451627004 885667076 482150092 218838254 907318683 566506850 701022472 290737069 402668927 451303647 62321670 425792570 523880353 764901898 918532815 530443605 93067386 765052407 338768134 544645271 706218175 855903830 378186011 760884279 843520451 873302005 439334161 724678546 112445626 857899850 109953993 800830067 408264246 859946372 340004968 503055493 541226638 254398447 994676438 574231763 493858529 245246350 292882691 151284821 680901543 170010581 412432460 620208641 498492767 14807975 523560098 485780796 955277239 217423068 431273903 537986082 655964791 440591196 490121051 901037877 948836789 890698329 225671760 36544803 449515522 821948178 880608452 592122832 88849795 66858640 709650251 270467648 417425830 386442157 505558180 388600745 186936850 876681521 40261171 216518603 111503805 245833751 578397394 452764704 697052651 186706249 259190187 359856156 59202664 537992673 658311806 452432978 515628050 834733591 530105078 892576247 460437725 773580632 256312042 133026922 629061339 390676397 412384321 291566651 455056432 440359417 603584188 531517134 398374043 592075250 43385729 36856193 719883501 938960776 97793260 467055224 119488608 681842929 197395347 533638909 149849084 456109575 34261747 12030441 961111354 578771109 634090129 208940758 552158234 846650956 928359662 806942665 813837402 839518564 252109543 544748882 536428412 362466955 661382000 346536702 88234835 785690779 843839454 971784327 492498716 908093202 45062221 965424541 346065756 978543288 433849023 588197538 524463695 292210081 368028984 538389181 325638605 308838982 722598294 471051417 641828135 862596576 558331358 707407024 605918401 527495146 426999709 837301499 799399996 921400007 303131339 300259274 471479078 861432677 732296525 393657570 729700392 116526757 202729957 514412027 765494889 173849013 633606340 803663498 256160916 9644678 10034462 490373693 450562782 925166848 105901835 238135697 14620038 596748166 562069327 239805484 948679379 309434454 283516608 615724458 518582648 570240266 590674014 46770114 667991113 873259701 270681063 901397321 160297930 939754987 661833845 67690038 554554226 11257055 344483724 649876048 151070825 101857883 50338051 230523327 524081024 567179016 843472212 863623547 63030796 817031661 122202250 796291174 724620422 438469175 860328010 782336921 511001201 209036852 622487505 468792366 507045756 485208792 703711773 281947592 356850168 513516542 149418974 418183681 271649032 123441618 253655304 472084030 209948345 350214896 341798556 265602635 891685622 848272235 445238655 898973416 878544038 223554407 766058078 186150543 188174585 366930737 221806230 310490939 160987544 564103427 344981174 555429328 944162799 365723321 88851590 245151947 188316536 503848939 741554266 494207712 205437635 372722006 124706218 669472432 12862140 696441440 452134299 894752783 265834945 546354832 867456251 788674084 241995700 564249487 707868985 705034494 76412196 646407820 80398659 410234457 970941648 564997447 932400812 673805439 574636880 657146127 953464967 494198826 982232370 817685689 215663938 59178514 310642226 291316105 224378079 868608281 354839120 956120670 486547785 681252495 317156886 198267349 326874415 634461789 286359219 447756830 285475993 254801200 638969894 890762163 286863293 473302178 980142748 325460792 937793589 215695225 836786 651802438 170122842 737554416 746292049 328805526 975768711 936376969 470909654 477008932 927085048 812105632 90574640 293300853 410727460 365625359 864650763 226398220 384600427 700766210 176571175 208905228 96432968 678112791 547141047 442519420 501725514 108138338 235859162 122428658 827929792 425570691 24063160 350553842 804097542 931065934 198271175 120689630 359601806 427322072 422913512 785470259 582693029 708659267 250055275 249968815 613345189 935771882 831655264 746766935 934893670 138872216 769128328 486780908 318527856 747313841 709769391 127640122 566327183 487778888 376956596 106465286 851064420 18817676 296535198 405456138 923117023 760215247 67708325 38936273 565843300 631095376 124699680 279691360 151435148 276632024 601496557 681314273 835888490 237488278 931778623 346433245 398754327 416858882 584240038 501045543 342740011 929050479 560307591 384835343 279306711 60947582 854927376 656612856 810773306 416844195 181885880 862192195 770969558 655282911 150593444 471777058 815145182 999959011 37866443 240466917 788491812 4601568 329369132 693976966 386908625 984840471 371708920 588195761 400236181 645580110 660677509 837776912 676210011 958918745 760271198 40183546 591177092 358642122 840375970 727998424 743311628 215091621 204082491 32244665 532327797 573606429 421097655 187151931 849193999 462469212 532002572 150709216 529461320 365176016 646110110 528998448 341978777 689219502 528517063 887783066 555657642 771318067 926071365 456257622 750530482 798216166 235663535 853272673 664809332 650002051 575192639 449927479 667850329 855279916 866815035 526836917 541252773 169724403 931070971 736540554 960729116 279408327 49583882 20073153 711238593 395090957 629131005 411497158 278143757 720422624 704979659 75372483 704949540 298487472 488603913 438376902 560716987 317684996 363607070 142227273 370356738 360466556 822554237 148105261 411941815 758516738 608006422 74522964 719295130 359394661 944381098 624275911 3905562 791643949 897762786 788998121 689291038 501159590 617592884 411376406 907752817 345515410 729887403 663941964 688795528 456321235 820811692 194328825 57708389 799538528 26618265 701648984 585644157 966106995 401160263 201330794 425118023 775041990 209976720 977926379 329778595 630680534 704696377 24733504 627981683 407671540 404351702 41689365 914720653 891044800 833430828 517582294 679838638 265010820 916743311 481894230 164353114 519125147 127836837 810677996 163879482 943714400 987592606 29476225 101994934 115348723 707161393 625472655 40538958 430821560 334281609 828417714 282955504 27167732 428733314 372182267 488306479 756449897 275199313 569477847 168569217 98010181 851421664 123562177 875449719 702334605 161892792 825864608 703452587 248307208 238902394 281351228 203840035 564759743 769318556 624993957 212377133 328930840 68387161 873676194 473890147 460698652 315295047 169100268 846954247 702488298 478388820 964005309 808474786 612271125 192179374 786350115 564543505 247786567 712547170 302053091 93369203 877401304 563741562 335766672 210292217 107143146 753065458 797533768 254731750 292907314 434576927 449411379 751963178 528789629 146318512 763853754 962278897 761717688 362040275 299747245 941050796 753991415 395355679 403414471 958776978 131741161 472513109 584039257 606953742 296681721 29142561 445524015 391131064 9855364 924252837 126395833 598447942 405547751 465670582 764537868 360941487 339558253 654522667 385673886 777122781 11741083 994313133 712032161 748948272 699147327 819929974 142791422 688890372 868383520 827568271 571071573 165149542 622905204 162073203 629960481 115393601 937506346 341260059 839619291 82886879 278740236 981884650 360900713 450756890 1891548 478663097 710900499 987432443 594730796 539045693 670632241 56860336 982943317 340996637 664226693 260495098 270824700 720579651 972039303 59956258 643129444 80089376 292106097 503541404 586463194 741031426 399780012 922027301 447401606 130986703 271760719 413017253 464227530 848498833 471162526 296903311 960081767 974786854 8592674 243883784 209088019 454180008 876629150 194274648 831642522 854741085 803898945 41564063 137257492 115772183 96035409 165855816 471095063 6551360 373746804 213037016 941314638 482797129 276112223 957290152 127274927 710914193 487366775 69023034 409291264 108911891 949962944 684101328 283170191 505223235 166669604 133912522 863318458 308522189 899832772 839165563 163352617 39599582 618302794 751271528 309824363 627665559 778205509 361906750 734946301 98435262 176318906 575175363 62862871 154682055 98510015 858264502 988314017 13303923 974106023 654990751 382070365 332872525 687296241 260661144 358089089 121455661 611940458 55664574 650947279 512114940 980439853 66211878 222492622 967910106 602611349 20911280 833877393 103290064 897095844 656981915 791299267 563709692 156119517 618416722 215575237 97577500 583219420 332563482 134136844 926930381 543188486 319954214 979666342 557268458 248992106 579881529 675633 819198977 701521569 555642980 104936738 599976371 325065537 795528601 204599061 442686288 254994239 815921552 356446454 147317282 444806480 494768352 402515804 394729063 545963396 138381962 293575506 271265948 13273820 660269597 460445382 959428403 135574583 481250174 810894838 533214467 766104024 836806550 170734678 806732430 826864200 401104752 680262880 807337872 347595452 79854989 357968647 831705934 594291216 324539923 376194231 875934497 920721505 983007838 587372846 29056725 160373088 334519504 476665989 722203019 406852487 644356523 829350756 41453124 696068857 152572180 898859145 151925081 240231144 725993975 972496493 433721786 221339245 391348931 330650235 626334533 475173192 107911169 879202445 87396099 283895466 682338996 926204438 89478086 718907695 684744307 114775824 23868333 749195036 646375105 995025266 518717793 218941693 243878997 453715129 162749222 617330787 363630673 296418834 191973871 695920786 83987628 118786389 254524147 351333606 318095568 75585406 618006256 562451689 557260049 448910021 646663363 366739142 834913706 737152562 730507891 998915178 248213577 821775091 847195966 10131212 156451591 975804898 217920855 603041709 962368300 764070646 148307934 882570848 854840157 995675369 872688306 488204621 506715110 475349676 281012275 272788286 700792823 888802645 470921197 661633787 161502089 67052693 712586548 661079473 792421133 850629664 38436096 914600159 344247401 839010077 718684484 306816709 418359599 524533764 229891121 200834276 12684526 106142662 807756813 436806826 306222785 955108212 665416615 747054667 714358867 417925185 688113844 212022905 895617089 676435728 183986757 429529532 639417582 602903151 284529688 982956069 137820318 891633426 569402288 556683574 233061250 751657542 362735812 349040349 182977528 585682020 681906839 649068938 727452782 652510793 108020702 175667528 155294093 692952980 643502446 761079553 616440542 835381918 25424212 467675299 456390699 44494226 548281331 746351694 542632490 149403564 158438856 193529901 115419530 394117134 153596204 108737612 662820039 542833613 953117967 430347345 719117732 237792738 312951744 241681471 229013256 568079838 941040322 181457124 250461794 951515862 518348723 68397655 749675499 447528337 86793721 564469258 720584251 35778767 339725603 328746155 218995740 758845456 239878538 359953466 586173579 612244448 199750319 107824261 152888068 676538418 50641959 715737533 136254668 561380816 346054771 367985871 517732038 415849858 689998185 697931417 472848553 431350273 610552527 564090962 5233821 712091234 351460793 916206131 208183922 181914589 863858721 945456840 954359556 700057302 942724398 629847820 497067619 651339300 789955201 812871089 370495522 612212985 258637577 802926750 927005542 862206344 318203072 622492528 740483359 130504405 438355332 315509154 907589394 324692830 508133372 612682038 999644246 111720145 757816914 836769871 149498957 725474859 384302151 6633771 293187757 564964795 615391475 478470671 424541685 850474356 519146506 204625071 902132693 216147903 87214594 829809130 100157047 703338432 901095603 748108594 687329601 511085391 704095832 759039274 114346924 940018864 98673408 410934570 247464088 188883973 485797492 227161094 586715201 912793736 686054891 197359771 559005901 536753944 371568870 112599871 78465632 48679551 500582793 405197048 6818612 520183264 922518218 294051180 953197305 774912246 638279522 326031845 813301963 743957923 997666416 413981789 840429323 908223433 578682669 281049747 675630151 501588725 947568644 270548422 746160982 771170412 436444783 239281545 284691637 642554188 431861764 132809884 810721103 820136244 514539450 508239847 306776289 518050023 919252447 479517683 971200046 467219164 277911952 181763563 547852073 319071477 458693199 233434346 214661962 415998135 837581568 142526914 473592292 573440368 205866100 479547882 951331631 25116038 562731002 725272200 201985069 583326025 888552383 301426801 375911417 839970379 957385405 752468627 819081685 392115314 866434681 356547119 266211050 941133568 704130757 759742042 861134527 793628217 910124622 985521626 24156349 676278030 572403797 76856140 231661784 800859668 111761502 790171051 328260487 521811745 318655078 408732447 772522099 746684346 67659476 995425273 687195845 735250699 638191690 751971052 841349069 733020882 126536532 546165639 166774027 311025706 617545941 560914224 40644763 20256386 303851290 888254388 578620187 244374162 678064781 759921497 861178643 680889699 782903609 220384710 781751630 873602882 1268888 70618587 868174960 447658540 899318208 185863820 844577919 37843685 297371584 433460882 20639494 589523195 940610687 675465879 787662628 277730281 816031869 774344036 441590808 165472250 587937933 876424402 403645493 746788531 354051505 745937516 246631212 316976273 907034165 360351845 812887507 177599575 489508320 702004237 743375914 169913814 462024764 184090527 571063605 992067556 588542741 112081100 238982761 499741695 261265757 583719203 84510589 538610392 635299119 286991733 18820640 574985718 617903697 621681849 206956980 413312208 122474961 902413436 202823359 312875291 14327991 961658622 745056734 524301150 516173613 906876404 286771469 20030713 34588527 693939405 588855679 727887828 146395025 673245240 596094419 586440166 956599285 657976744 80055655 573611316 765994791 334092057 663001406 652931546 315499136 873257298 321229712 704679534 647630649 224699877 412863609 908975241 170206859 215359310 437514703 918344265 25822461 317542748 818032225 39105858 685956161 665865747 463580384 972178249 707863756 623589081 255068332 641283675 523198131 611602371 108633739 866830131 71675110 433163752 790755619 732517116 605722888 648942054 455979731 246397937 828453309 288759603 937505355 865077504 848446293 853436156 358192852 857249408 174001583 799634541 785209644 666075823 418822677 558438543 682210359 343268579 267954638 451185356 451422747 87059061 855046051 805391559 329457142 90672171 730349566 307064531 319536645 809524367 496670651 955473156 471737008 258790652 521262398 366242607 85591953 464887549 494457044 34927367 194864068 440685139 377446762 862631288 426294176 337578431 97037684 749044875 320548435 968788043 867043896 163422084 932081729 843826241 987896360 968653728 592280017 195977819 749789436 323726732 425082995 356160506 635826763 805324940 27216847 980323706 95925384 801653425 703101378 997488923 13749475 809197582 712918166 479690973 734663387 974225858 478997733 538910660 822198630 896565607 486811482 625346766 280364090 402650883 646921971 117825231 965705650 428567654 308464346 940599361 229775097 583910183 350404961 81529931 690445533 838261982 716009705 269875143 354051702 666304657 799390217 2163959 427667973 398989011 449348481 946416179 732904855 551328158 211485820 605278078 869124766 668724624 837779622 115713924 133733435 570134540 147362198 18674243 15601041 753239783 749948741 851483565 32212546 780465127 831653006 504226274 976617870 371848962 806081359 829486861 610095300 725798599 200411097 169842592 522155326 836286398 849320473 793320678 414277050 35046980 776517528 490576325 724547166 82369819 788763739 418497039 305231421 857145916 836019956 677936702 459556250 74668445 548583712 68849665 332881181 18078392 20507528 876971545 51790819 761243925 822650156 727727877 774093386 905535786 839241184 229906365 340421063 884294330 253380859 296888128 698255208 228114776 426446081 650610399 631764789 474831765 382364303 937166572 93697668 528089930 232511258 424638036 349586343 655062549 337513606 126951264 990341953 365569536 664942619 406809010 780112379 9201663 376310132 977721004 204014299 45469200 184716055 336305826 914854368 550695676 52369560 466845332 166238209 979913052 339721849 74525712 354200979 516641765 668478950 500262270 71186349 800793849 94597485 285196334 415842113 944393816 672111945 1301090 938050201 352969232 132451416 554332686 159612185 93143908 211165823 108767851 358924367 955984383 130497884 4009459 399560091 978673889 593254302 646925279 219445176 629609295 425321984 667300636 378663507 552089299 755736536 538484313 255383957 538213848 645670101 83387200 693720303 116366719 370700745 716457861 398361928 119283908 933157487 870026942 425106389 410084674 279821064 606249451 636058969 875261601 215887473 664038536 986750921 485739138 478035235 283336017 256349902 698273547 729755435 548397376 154028545 846056988 354634795 220875447 289400275 334240795 772039779 633321850 951045034 234141831 750120678 872618389 482322160 226039461 532448353 125375905 166142743 983146019 746482491 485585248 3318090 825961904 16851933 291219434 92587033 764661441 753744722 253292001 770457780 767153818 360865043 757628739 797339553 635999108 180274049 976452356 803873045 71162103 242872685 695164073 408316303 105535395 785044566 326478762 689128502 698161919 545721180 23024746 727011816 755952795 477046516 732703140 229591779 326519286 997489319 55327032 973963839 147070934 302577800 850893552 509862721 337938257 803516062 176752777 746068927 788667202 946640276 858834951 235494836 226784971 880364713 273283152 776686589 975206431 491066911 952659093 425180078 785195647 36376910 181575670 782947452 297003846 939850459 189287455 299773923 713981183 602949697 47377400 82242855 283569858 886044059 356427615 985898994 787874718 81395391 509157320 751043477 35912965 686994561 587764671 367905296 365114464 882944005 802436662 738467506 548747440 74108323 598590102 861744895 395855430 2050442 369567854 854356382 420394767 293993209 305294208 732169235 351501546 499679354 962249518 664461962 331324763 298595332 965918065 977092371 337077999 352768756 77558531 266094746 248108708 548064438 722524693 193069075 784673550 806366243 518579451 584766623 351463291 792776131 913000805 655088826 976258745 832183117 552430567 999158339 243245176 392965489 114318333 566118091 943745829 472291329 14108550 740464119 926556118 882118505 774271655 766471935 335803354 81940748 536194389 933106798 648476665 895554986 92965935 47054380 481156716 912192651 839589220 451874355 654951980 738258519 635054813 415271628 177398204 35368829 228018188 28362517 574162980 241766297 653642377 900472178 63868553 718434794 548578074 898602867 306022105 812652175 827241813 981007261 681097332 335788698 146230426 642596257 274631182 291088467 377730785 258463187 241797748 418312266 330788942 307100328 511196292 312307893 488698145 949011446 241152569 483797611 703384959 301488136 365755838 743095277 480725385 947199698 699106799 821593295 806969669 572074986 37657426 577424545 674921082 676237266 551481137 874164118 822438448 902957293 553810331 82639517 427440979 332699647 752479418 582543095 962782517 399185996 178235593 303947351 53953062 587199711 549874574 654406729 901685123 478697253 900507440 530558594 328014117 103230428 45249372 534767985 841365049 767459235 226265284 759532620 48224568 162412284 101291340 689530394 932524832 821919122 31367490 622084063 449911832 871579642 479736095 939896567 396051690 95095519 470027296 790615729 583437444 86617237 158084279 106881767 514846314 583014879 556321418 184598542 587253866 391295349 306790045 675137622 258967334 486109156 957746416 682584938 552895912 43420214 734639088 393282842 52872406 773347070 224894970 98628700 737253324 483468717 466633837 368727584 676331255 634752720 837803213 606251402 298490877 88255543 45963704 324932461 405196390 686968659 297901327 346405170 94194369 902881755 442021121 48473320 257123587 122835363 567320397 25304879 606684341 371687775 696541805 100721634 482635012 618694132 677129677 67423172 422649799 76210078 596399078 999176817 665420741 954872941 75450041 737727404 757858324 154567113 864472788 328962802 619840308 874966502 562384080 61534741 468148546 732609794 572414264 448518514 475726810 112760058 963245058 373104011 393432359 73607393 181343230 911464362 533350853 575378701 527607934 742272454 632637347 483778367 590834673 111724531 66532933 313592157 201606212 758709133 905344276 139393253 554966079 126918295 912159036 12090578 521752489 313123136 20666453 442678013 373399958 478811652 735329046 796776416 981084264 578652746 719117223 142858519 724477609 598521865 363062021 532009947 587639883 839326167 814818676 879336521 321380815 532610642 821339832 477589954 596755300 495934368 820328124 699400074 131818339 258524711 313614852 742194364 321266357 746076608 353967665 40507669 732801386 282385824 305013926 601859268 749894036 983015303 803130202 573181655 493804962 306374626 746764893 157944639 560743993 726561292 451823652 653724779 141224594 398433411 6591961 779658626 160914092 506096116 628161967 534974503 172615010 124165426 824166139 829772276 475651938 41790686 372886370 533488594 594381834 293959365 587456652 764669444 582459901 826827446 325797305 381611168 660230412 885393629 793555426 626175835 226810700 811336710 792166828 824111071 475858632 496600492 460610340 322962760 194188222 754929860 292019628 528458683 76105352 745857404 957544137 902394487 871452903 914805473 651917186 801899511 577466257 994072404 74388706 825795029 313405858 465141331 583284274 690393176 36161369 32197923 93206329 538210810 369218839 352486514 443215643 965329889 251287526 900386144 293004664 379761485 160809029 739738918 236636460 912322582 2233508 230199492 336263633 940431715 353459946 174576953 268227422 656221883 372006836 437894617 448439467 850502649 739784434 410952460 651942818 603503848 24377379 941137928 738109709 503512254 664684076 750966950 941636706 935283738 807813379 61499983 939546623 980309556 40089331 530127096 132113281 190763896 916208872 481682128 368017603 683049634 949107759 553352056 842154948 678193881 327574121 380123850 149063195 292396272 685697955 252852992 413421131 285169351 555380842 118714256 155964219 30154807 420904412 995442583 385000131 882081881 589732313 997786266 72556746 597082733 636231606 110057731 251931625 287192069 783887005 642921331 436181065 520874899 538731876 114061994 41234665 589721417 478366107 64422597 766173414 645807382 182215819 992590191 684743331 324535302 784105304 486843453 548283791 867555702 767616053 217556482 77734295 759867678 820162379 911318140 9888033 723589861 319149304 204526071 790667209 529861384 170171220 243667899 279619245 858786102 306726075 229689726 986266149 859729620 16530856 647904226 150468464 208713975 582074692 47858608 258624862 205656900 532613853 328460002 322654139 505253501 195480351 294851362 665719031 827234096 122206842 375667839 888373202 704128682 323946439 96785602 69729596 807054134 216618158 197566683 175747343 811263502 803488795 393666025 826710860 833852530 226071898 551217108 850254447 911696961 798521178 634842895 432662232 874261580 608727192 834203163 359122767 63746617 239166304 416190416 349882378 377880900 861926247 414187538 153489819 80301863 392767073 286250277 943569317 831837824 881927042 486749872 550034651 54992912 241896535 380779261 12123050 236598870 499806369 336346160 25323593 592252952 218332266 854900382 878945666 214034659 900769186 966266215 105976871 744801035 805414587 82649959 917823668 786027970 278903220 279257215 33710305 395508495 41137477 26754324 457174799 410176956 383612812 689460323 640023511 129657894 246199889 335659011 924958923 982887959 912517618 282303946 632281235 268340883 628555991 776607586 209987304 989567842 417836644 203856198 179998022 633725316 160513343 207312035 567652628 903635476 870860685 149291131 274715152 288396914 656786996 604192774 517997413 979071329 950952011 376788837 55534564 571063839 866646636 527693440 443079086 949518681 121632464 70757086 981806001 966945776 562075148 859365158 339965139 319088517 108495348 261052360 218844602 353539569 401075303 250188028 69848427 698947769 312849852 867007071 422201889 186043555 319183401 712973866 817348734 306029044 714166558 864638247 413673598 146806575 514798383 922279149 63599307 149650959 202605103 577139234 255009514 271304493 432541076 172033465 365468965 65835669 466780945 405953807 660609818 229640976 261851902 379165024 41041576 770826865 30091369 33197312 734018856 568362265 171334166 338760071 868997336 866482512 689811493 922907165 943213909 351567660 667319758 390621777 41197274 12343577 376469710 22800846 916119729 283815089 601345313 148975113 109980595 359168836 990499760 389096358 891633019 757562021 468627951 699596815 706604253 702074042 674352409 895616208 441755299 887471562 517037309 911588129 490584821 199601093 572323800 130902335 981075652 131090323 245422959 939323679 176009607 293023429 438386435 670121139 97579317 139008613 952866342 509509719 507082496 452182042 398744762 495950432 888906580 149372301 804427918 740916179 112880799 185772232 728579452 667670025 210381792 500817249 270163844 368560089 540040833 3111386 376188479 388130880 307073944 457474069 507550327 830387494 538719642 919196711 744959366 882500834 174235476 308738801 225535687 451236695 657850912 921886514 331634921 258220897 986305216 82160712 535670497 237521929 844127624 73532951 467223577 449945169 991790759 230416873 468838791 91253561 834023401 148953745 454289608 755009636 331210394 875540503 611836691 572338259 810857604 47348557 358783991 318450585 558682921 91790669 793251737 131062507 211800898 373449089 288047695 885169595 890002283 991506783 6303396 505745781 290917390 94770830 662659774 321394625 726711795 851674788 123554007 222997602 470403366 374877128 706294212 923832559 869609149 999856006 701882218 352896518 480337914 748843648 403021991 759597769 36317430 316964485 121257704 676151218 754262610 778223929 271306423 619629946 888384244 7010814 930083637 524560571 667656660 860742099 313159462 657389007 411722261 260476606 936807737 221892500 303084088 448437484 478760662 406203544 214398823 504661584 298491901 863639648 227684585 122995690 275471740 505604100 252108251 832446540 132811433 951277086 631845851 980824132 405086920 501003053 933809315 779630641 190438982 489373674 629623071 620091963 851041655 186754849 595853809 212603816 80204160 753628552 392657145 999035793 733850772 867013696 702594307 804760254 486728734 919286339 26330255 743510166 979128636 987922143 697676574 975908002 871509832 70942226 408291456 49963586 525220152 700988073 228669676 34647263 582644075 30112805 316855793 711347205 625809581 636997988 331923134 388623148 66182353 849031226 814919185 503867177 16479195 338160946 621514491 710552087 549112991 476131140 392903616 706002886 696892795 363721076 204915326 722296858 25312268 210051376 957796687 590334342 585113560 445889858 669565989 849351721 667010700 80301336 540138300 845124124 688902746 592684169 779429086 741128242 636264831 173891230 801145888 225669838 204717401 300474840 272824811 61424595 745446416 33073771 425031 54636031 317685200 409627856 885881810 42471399 210604395 515068206 912688514 12118340 984209210 548854970 123259885 840571518 334508628 148749751 55032053 129251992 638251985 751613717 261219044 894818409 778306759 166715212 711923971 394174802 308109417 823072477 931662897 297840956 61669761 181647558 978633077 653061706 82922475 429216803 978088471 959924286 194061790 422347994 797060921 608329068 804636464 38342275 576817840 723025607 861030111 197591604 612517930 401505605 343013866 668098010 979496305 395979868 419326850 847499956 363585661 429025721 809293462 215439786 559493288 294867265 57431771 387291574 178081780 861603834 784503625 38825890 636762745 41793138 50277680 950740328 441031310 757845549 320541424 85690271 960921257 932386537 105012663 125352922 455945128 473226525 247349470 265058003 4180154 399223764 91820600 125479880 424838398 653031871 877837373 303877218 730762358 229250461 103305537 386965011 725161709 867859587 108143533 786140581 245486094 53165118 156199474 724154083 864404826 856907432 988834863 571645669 924317302 86635973 374185542 929736835 366816133 378013986 861001252 194916392 166975867 145965964 650455544 840865881 501878367 688285323 359234970 276971081 175329007 105854547 965200080 84421331 456192770 962944406 496009069 568714766 668204271 624736538 679754204 321958219 557456778 102319104 505279990 557007503 316312175 355721479 917815601 141175833 646531299 132343388 963063045 913752796 733860647 921586122 342850866 19912063 89174057 320981421 595168042 900583280 979486534 58799204 643162879 94831782 473253467 372955257 578429107 44078694 679601788 891198201 75702712 554316608 513557576 671601916 371472335 190749986 728699945 620210500 630396851 926093043 765556368 29865646 682324099 352045404 771201071 527248862 444723996 707870574 568882428 911982888 609138307 627039188 253869045 788675366 720559965 355338248 181535355 529537676 439534451 570571500 540317561 129008815 994211725 234308756 283370203 262783895 814962216 987482640 134804247 853251925 245848627 569610218 202203935 369199854 265251323 613354561 966551544 171153182 387629169 501547078 813693913 902312930 89356519 788730711 362531677 64918822 290462370 953747287 596807857 771204674 701972196 735434391 140639470 449325870 869802778 982614826 434655852 831032931 482411605 706615685 953759369 822840746 189029022 382518514 432128727 429374005 927585681 704419103 753261933 213824584 541151741 640420945 670407033 142178414 964588402 504179551 439536063 507246710 665377190 997612398 649865147 342468459 693297518 740773999 200407795 415396017 688555951 412156503 869102118 822793158 700045253 113383205 506317834 82078194 8477145 675594683 999959365 752362389 708709464 84269954 811491947 492562061 162441992 613291716 430770355 64713899 46572578 991367444 383818118 492508827 646632139 441825266 671123646 430937474 265079444 777480413 861355925 966047771 857022986 183207786 898786900 204337101 104061385 748266267 669145782 3974718 154047623 18611487 339448238 632522418 74251757 591493926 421324319 452179708 975194618 734992116 963182517 756366342 145780743 695955575 787620113 620595228 486760127 490132182 789267277 355064452 157696993 808108199 563684071 439291627 494284777 109290755 308453217 383600005 595070053 620319880 770366626 255294312 695248768 578844222 244175409 721069083 830955191 493435464 190157254 559170085 431807995 869948877 983937858 498510836 423996159 878522090 286661298 4550264 615137807 552227812 840322896 897498599 167524339 521744254 824209646 749895272 968587590 456427205 652337701 482274929 237593028 611622847 244687600 706624397 245129869 689002031 805639036 796746357 256141721 286760754 352193074 235164991 189213493 847182052 102496238 133093478 128761273 23318744 608837460 401836898 292921981 982487701 342222676 136936183 578166730 387826934 592456729 105381598 883407646 239817839 7379129 90368944 697039453 113911746 777960468 90591721 965421221 390265834 873176795 456734645 270001908 231838852 630619427 943607604 543948249 700770174 516388477 890736201 478388400 956946560 559988456 585974433 649164336 730972127 249924096 498268895 505754798 752451424 534425166 620617765 918060970 194772176 514786670 733724295 53751428 249780506 811904024 188177236 432083879 339530444 516678893 47525127 523541540 801577616 208977889 31469439 920923949 444327625 456468456 495093700 2340003 379212225 892050842 847502638 435362759 924018006 356746243 23820978 995761099 853860928 102623894 379471544 397722964 930956821 168990113 632442240 997452523 97173804 375221033 281765480 836868456 919778803 53785321 429711477 409554594 191955978 860989267 649931385 424809855 807380846 315979772 668098475 784321881 45970175 417354973 454502488 596146950 318372875 290682660 299283000 450879993 411414217 494964562 564219932 780595128 137396529 86145581 661406143 581125252 619759462 422117237 743174374 420414710 719128777 958207611 18273378 512581757 683794160 467673869 988019383 778938509 948165019 618375698 370371731 140011470 564140961 172072348 70359972 491038607 104986026 173833961 848215390 57061025 504296656 597831802 312728774 495024156 495159490 796443839 484130736 847051493 660554347 903678943 893617326 445134390 262435248 854671263 170867694 506297287 963536177 716617845 446324871 652955696 293028078 986744109 494969530 758680959 59385002 340089110 423272771 74176820 708795802 506235744 314742718 677424200 913271537 274278364 473342359 374644318 773351194 784831221 659211732 273246068 334424475 372216010 615666872 17751439 955945756 95086331 104533962 688040160 899321011 824988184 292917613 585155310 116091842 796312780 256515647 67400804 574659285 194264074 684698723 203497611 871208028 628455844 271373623 380937543 833122178 285775987 222003505 983636957 970626560 49061361 717353730 238152631 377897604 803069444 824366768 98726796 201202772 237122641 769336236 124279633 471315635 73083475 385631507 832011599 28110590 201251815 34581621 37316384 960878409 484546576 578001402 175882506 157563443 607437373 975274770 8744270 190271483 166092672 685527435 57081891 845963279 645286230 478855192 186732809 565322823 442633503 851105666 779293994 17059937 692064753 320052508 936815269 307860242 48859287 818712543 616196511 114334816 141269650 181460290 897851382 124440964 890101536 865280211 654171121 841657387 879032637 75135069 78678447 36405298 356988017 39070651 691069477 229702040 92376962 965606481 149044358 434260818 422914239 665298341 623910966 494784090 158678521 552415906 82669175 529798634 337277749 333378294 119071994 485061679 943645545 209501697 949650515 407457079 266844533 98373910 886157453 100615239 497802728 915139450 720366530 537706339 438211425 1375785 917522516 441855319 708420109 681468668 428064894 222858661 842421945 638475858 66139481 465726392 266712053 373228633 636719399 364581276 353692270 194821272 254466454 90683301 896626939 84897596 943958675 535991528 124314126 354312811 857427378 869173729 494488191 369489595 435978060 395281855 338189245 951760181 127317156 129059634 235238820 764358535 269328282 603487606 655313734 830393645 277639239 178788388 537442558 352561696 918676495 207069905 797207520 706866813 817629246 261357149 548118089 184104347 291358032 875966744 183704721 693979258 277551214 372264251 108258731 407518175 724160795 479701700 711944983 817069558 921691091 248947383 358848237 666144524 109050534 524719188 806918309 125040748 531850933 965796605 666871147 184748431 906047974 657843767 883169137 277153975 93837412 320097573 813299091 427611169 924945977 189720479 74237166 695268913 76154226 393619285 54185632 464788933 190678262 877462185 807755932 555563579 323818689 345135158 174352510 868163218 244282330 609685392 761834284 224463155 447516131 547813571 463529291 128884056 84438377 233308095 499363017 901867082 910260191 198423981 99320820 725455963 349389433 480190751 73290827 553300558 902763865 418128224 855144282 811275675 488685974 428018083 493502201 288878930 522796206 205466183 485730389 269906809 238481254 766519508 730516951 608637898 593258006 26259766 174471080 586347175 258386323 152215180 263036885 537431180 228558954 556513562 496401868 125627499 194334388 121706058 158701033 284435495 664082661 350750670 804370179 64996338 910194253 979846874 213362793 164592562 597627895 543243909 166518447 715959106 621041825 5946864 967424796 836461934 832835013 971161711 809199676 241652382 539302791 643300823 125935030 426385826 359901515 154702915 750184256 936575266 1776181 58295488 344097525 371270592 963022430 186159058 22298959 399799253 600957914 671737912 723120997 782822950 102390665 75280624 636208625 949451442 531960336 726966527 243605611 602116349 83485258 447703191 230189867 978499895 545153103 525470321 510673792 990987822 194954492 547985045 936269476 124433655 33557252 593363494 281980016 198498089 878625684 682685294 337856780 492329122 977725602 251587825 410019241 440270563 142787817 213066570 94842179 987369227 341533745 544789563 527243966 633418410 75249109 75935342 775095540 630631767 707137394 868267080 528668980 912008268 762517323 619235375 302289740 696648674 43090423 312771357 946812281 959761416 410948122 299217620 1201840 724065666 731165746 105435690 958978837 194088696 72328765 571384193 181438417 962676095 826060963 445080083 319472426 39670795 862380963 415957193 41835407 563943398 703592150 524226209 463456846 379267984 889672840 119186575 130225980 214274206 698453641 625767842 907180019 101277710 957355052 772892491 66868885 605569880 595972944 700771419 310004143 541719936 267113694 479535951 855938036 783058108 787288440 17807101 616568610 928861890 331017239 113555889 623238261 457023040 465138379 810893762 630000391 403239391 291267140 149388792 155877543 340600739 912794636 721455240 726153349 30133200 785962249 958683683 207757663 226461835 437479694 703317779 211804578 343744538 896069262 682396895 440863978 2336557 457324746 966871995 852207773 570635929 119874383 702735591 826363657 926137299 865386847 884906659 423947756 319809845 975200062 247696129 115800964 193875915 570483879 497712896 370362866 383161946 408413972 507190697 114793911 138696984 467777311 717887617 939259655 743177892 444455484 485751539 359781880 599987729 421781186 399637102 872275893 506332263 140185538 866686942 917855070 544807363 950260103 121863894 801510100 433008960 529405205 374922002 23745651 504382662 110669289 302445149 794105710 468050140 402561121 789969554 62530495 195312436 117403611 693103989 660082964 188888883 888930260 98061762 795651951 8696710 831265186 549115917 242051058 575857028 148852017 681238431 408065573 847696165 827043034 538177726 88312127 725342083 884732109 609137201 333414944 646434137 251817608 334074394 689547632 51867803 720549884 51334835 9934788 121475682 421390565 611917803 230365444 814735970 843521188 401480610 982587111 718466654 706034842 625759917 153324881 902119887 980354706 139917731 931884933 82839178 224202110 54934317 482021219 265075249 647972122 186358073 250288013 546367516 943766845 678718611 173713922 290513938 5674386 223610359 669948342 839287526 713306339 492063453 532012428 957313799 125544636 417900094 357275687 875632820 73877919 91259260 23940814 891152972 818453771 861868870 287661168 996224798 81698499 451438698 566852399 323132763 59459372 29280492 683516027 225573829 229173777 203275251 996328296 155518388 167718371 584194451 201486809 672209085 300794676 809192929 370332253 85429996 949862122 230038645 560755789 874278823 677392597 206127925 485439337 712009258 15589801 592112061 393824081 270738824 280264314 128010206 175703571 500065960 700940511 63183584 154328571 565117909 262271357 71561092 550123136 521004950 426893985 914956679 650207516 172546667 88465673 507263731 91159446 883336847 663848335 895700925 34071514 752619737 276454008 501990598 315274217 643429003 243861900 209720758 824407807 975030500 149372310 34809781 431806437 907243107 293684557 334483234 361790280 113688007 597528751 757738964 158081051 649085759 183241436 190686224 902246310 665329545 463320831 231831676 569998222 424139026 313526454 323986272 585854704 925422192 895431802 356570989 452832750 702247199 528578443 385960578 950102447 375507500 629405280 376763636 607137329 55969220 712892203 409273649 81831735 267666432 120776376 705241199 837203303 162683104 559258033 536881181 503759279 877962919 835872169 935796268 850095849 735432123 815950086 263761185 658909179 796321477 878785004 655015478 88619359 451468380 104170471 937480813 510253442 952305976 389565068 290435857 393850659 900180537 466348423 719234756 466680469 948461194 41327678 623327957 961455741 528608214 970110929 399842275 503479552 983100288 76804251 573500132 983566961 826833108 74590809 947257145 43989932 624485392 596210418 209034874 51045000 49537052 275061928 125822211 179851987 987218362 406720358 520415651 712382052 36086022 331624946 515080341 24882582 189509070 36425181 551647774 604332869 756299990 24008653 585528154 590081413 378662891 595285003 372005998 410460990 499419429 650102203 138175675 902066578 440138055 68954263 152911517 235536310 105823434 929546472 304781259 531443053 897383288 453707590 73629473 390017545 908210990 877832669 24710144 782247799 910119870 203515048 727416565 799386471 718438469 957230972 616812444 458936533 877328316 387731185 802224130 704509499 345375562 93594472 676672597 807748187 391597637 455634261 558089347 412373189 876164567 386743971 207100604 712427179 718803663 271597665 131015929 998345503 950463590 911713832 833739753 93423558 89226059 678400973 345434479 335191628 735525390 785461767 12121528 970457217 373651643 286961975 854286096 417390623 745753629 738916694 758367786 501038282 535640341 461552169 836129208 717924843 662472231 866384618 515301382 462294104 549082606 144498720 757738396 352622637 899673230 291331880 127175482 830283782 711727182 144185362 43188153 267357612 234241356 607078019 753232578 935848426 670015810 666736709 560965184 764391648 388411083 392354450 890537718 449556045 295662367 123746009 411301957 551662860 501853569 165392926 851034344 141009852 96896955 906112594 339920775 626377148 513391071 102582861 116698574 422322652 57246319 797984002 26328008 305553791 934380102 617309722 79777896 956171596 778152688 778319244 776445605 869021897 140551133 541043329 312643425 410318871 941560798 559751044 379258070 347301809 641848956 10774686 341644097 916874584 809000901 55253555 221485970 624725349 566542638 742459659 203224133 991006171 129894979 727704673 18991861 912624379 785988937 42947804 856078137 436580983 111432804 591870208 981727903 542862686 142085818 175996034 872762257 275173784 514654459 966623591 372617414 187877472 53385294 761225670 903472852 598391725 622839459 444330023 690251589 954995779 951987881 855525143 765684990 635432388 178774801 61524680 450515316 201349980 247520628 360883451 761573619 163326404 227783689 580196906 619585700 132831078 8010845 768721965 599033534 441504133 986740458 344450557 269109192 347953155 770579416 164635386 122084999 464942643 36501099 78134438 427486641 118125012 458922242 256040757 722583106 222338405 911673320 692085015 890038535 202410080 355063225 877678644 96585367 992478201 579023510 572979804 102577612 502218502 655469750 739637075 947206034 485393112 96517974 380885054 258772810 501077325 952873156 33162244 736747055 716111126 35439456 427286447 367780059 506419188 557666646 858830102 962888 992595891 786498600 118452953 706586149 359619532 860409469 238120759 505231367 284479208 248402218 115680418 743771467 291379687 380571992 263857185 707973970 347677829 748456776 943243740 782031861 87790504 704237441 107718927 635461807 704017362 988467798 786399582 42979290 338982141 339939166 320535289 297815253 680227968 347931481 113467145 480949468 112384657 584116313 403477381 486919796 969444842 982637314 480343362 392277200 679418872 668032941 321902329 443327250 861825978 350308901 399373720 217432290 748966761 316503864 666643377 480306496 411157792 1576929 48112398 90945435 52321549 959388213 284301579 644969108 74775035 523208313 554036127 242157531 154923222 802616085 392645628 507316412 746825423 446568902 494811968 967948179 618874662 521803529 229081509 247355722 651972303 373827018 161640983 263812385 455488590 3206402 811091803 701690749 709006928 261098193 930730842 892489546 163906482 672575832 137164233 96754521 884158326 143335657 287756670 612644869 774990208 18476759 399218112 795179102 171231388 27549 873055022 258737631 56094378 947602687 809316971 618181878 305497074 739012992 317647700 252675149 196029450 193365182 392630393 381550945 582474616 545430529 923119404 165852105 694466436 179681837 146854365 8269713 786560460 295327903 641822587 815945594 950958249 351441296 918861805 457355145 391174960 637874850 952548403 591789974 819988468 948127949 705970721 850321820 205329353 304438470 189615974 682888364 724182120 215415242 785611269 439107047 258971804 557341081 308562191 975734263 27746407 745788821 109891730 997195951 655118116 800986306 691786094 146998080 230786640 323159715 700002128 378882997 112572751 90387625 846652319 488450973 442985491 492945405 626294363 111082394 852494876 247971523 520482251 603185538 873102378 686616555 16822428 935110941 926321751 607225645 760584791 23315420 590558586 961710624 177731546 316873753 52142461 533261456 923617310 65954420 327029824 598655654 210031429 995445202 21943232 529851670 910806697 894077446 925771125 663489102 412002191 312503884 776457325 736917965 975847418 946836884 539547498 677476027 323556360 799553515 682946781 861901145 340517079 914489373 156464061 480761391 16383511 975997648 630725896 574195328 745301599 673646779 506845499 490817508 510071895 862590883 19737742 179082287 643363 555207687 449109813 926089158 164784696 425904856 522203023 864433361 718590913 900948280 387362476 215986179 602771787 552906257 311358112 785658511 60198388 979111284 848711831 685559988 649240644 621758567 467628917 926192796 545409621 250423331 799898681 588061647 918040548 777840240 31902958 587143794 468888675 611828943 561169885 927848555 107786402 396791470 338149949 599899382 281549154 815066650 380530353 952914385 674513460 353899282 519712163 506689490 318105523 365129294 34556854 236502410 215317467 406852219 258476886 47391420 758719305 217459070 566167075 867116438 555159327 370639334 743137049 855468267 174656459 740367739 45597450 429101229 202311215 520659733 422216543 843331276 387758646 515312111 627303445 958655157 340783381 386960333 718250645 318143562 330013476 257814509 715736525 43094092 972420859 916979882 750208343 69546362 584070701 440218165 435653778 587079536 369739736 706815519 79447291 366325360 171062423 288931765 709247954 762875386 42116886 782788976 680509043 239655438 389613625 916030029 464440440 685699706 324146635 340839503 777139633 416956996 670291143 275807596 980393821 377583802 936222245 449413652 215959784 178704999 555220058 922409712 496022944 112307807 46955453 139699887 618141337 159627752 990894145 150320433 70060829 571259282 646660513 854709652 244992889 731431862 962690699 272145126 780920860 738886959 339936218 591471512 205902536 792359683 174756898 134332307 193901211 22797344 464022210 895708357 606630975 29077943 982371131 576847138 258078461 865723831 728779262 521855273 161500829 734750439 703941164 538706107 854069361 725634513 94249425 673378839 488256508 93361517 865885295 45237999 628693731 88951218 534495726 867179401 379932187 793600674 816741020 184340404 125881293 635659690 52515722 266470215 499854677 805736667 379303642 135114222 575953257 237719186 530418005 227224965 146352257 593943681 515469467 261837438 75283276 513006531 697810003 188811114 831921176 648608173 454383699 630688321 235669324 401844790 744141632 735024428 205059879 986278855 621516767 464842 630574070 638739874 262844861 925831688 308095768 403480845 817565303 304637074 479569773 920476286 334923330 370667429 637800833 28312854 728649624 479677260 352741000 406137127 203519566 554623286 297543752 421796439 726025382 896147611 536261930 337572570 605423409 245689415 902812614 201900866 4019868 959403057 300068657 789266502 43300667 69580209 932024289 394552056 14897614 848235278 800410653 642309228 305970426 392244761 798852929 379138106 344618698 215163996 382448427 486606349 967709215 777702514 575390301 389151182 973448543 478341313 262926408 887960881 532321568 809344876 391992316 239405209 91476650 635542385 46153998 395295100 653371387 148008614 581731363 914059285 391449578 743327467 446765332 525097865 224161439 540788066 352383970 600693881 702445131 111977450 472719776 345981329 69097342 823018664 438025624 92403679 581662664 374382571 152797677 323253286 54457786 533976931 733657402 427126490 86546925 853970062 147939779 142048735 896520152 887042391 747223674 513585882 550805212 308066531 160384240 930743698 842436051 102266089 422215460 376287108 78415311 176923144 43468872 668142154 403515581 463382924 841252222 774857881 601472381 449569160 215018749 641968667 641416419 312328215 33849857 795188871 732748617 273478268 417301417 669056773 602444877 33060531 345770606 707468325 677413727 754710349 371005020 894731332 437543253 210962812 166038421 481824721 996823907 938119027 866298790 190107383 459834980 481032360 255367678 586568202 573966314 849717105 841911850 21889985 563489187 834439849 37306938 123757710 796713315 634636465 707933851 516645003 660857326 394603776 953369246 112979563 615346301 101044296 770861217 28131681 801746468 14322664 447745782 789025790 671752163 137929648 651570874 47924790 76612834 257467748 616068548 411117399 197427807 204874190 249437884 358450381 232954287 622868287 621990482 629885782 914661547 639108353 950568099 726409282 189624698 828746036 241987361 780953334 156361084 214479807 365739046 507177526 555008032 299567444 635626158 369506402 982726842 890999778 560498714 329265728 60326004 601615208 753311014 261223249 776694783 435113053 759946101 996711647 824873483 912577660 296074565 24139116 262422733 465354913 14735890 895218981 57906742 721864303 161616262 933057490 348841350 488780043 477116606 872863474 167876762 327960998 118121262 466772563 662368311 827044183 844488893 413821731 555412383 418183816 57119388 962422370 392028403 149382481 719941725 821404589 26743950 354127594 696669442 131980805 306551774 339451224 334839269 791001572 418884911 524969870 220014250 914060534 601943028 428282089 393499653 129012032 885863918 258068356 350536261 645800918 724078764 12118996 205713599 184922024 457706556 367283645 839705467 8895069 279352542 612654709 836201904 369349180 814702588 797064051 199459808 642621635 701814057 362568564 464456125 688092741 237681085 286118863 129145505 455713767 635383477 989020115 326659801 840305974 758561349 807783174 627577450 52094967 654128248 860999836 387359687 240277132 173160131 654972257 526162275 315979886 12451581 320464968 234198457 563731544 659593349 15643220 392456505 81035711 259619551 819865344 681157358 956163109 938231673 463318859 275331807 323149768 72192053 376529950 690819029 91943387 118899162 681486927 389289842 144251827 42892192 270866954 698784799 598727683 348621435 886210618 196674381 607578431 725242871 330345741 833101938 936883874 257261048 321838128 369306119 834954510 756575695 893779354 928655649 130927522 308931407 192020939 757038064 869217971 309502046 264690113 93096423 471060243 394306865 65267174 264253341 70462408 728026316 249282514 963726653 268507259 536104483 497540053 861471125 967633124 609008655 320535702 162813285 907007286 375110535 899067828 698674113 701316889 735323387 293432261 556629414 275586913 568928955 895889195 147778478 299269246 55211729 850462204 547582652 620671960 751499764 74866457 949951645 764470362 936949456 853269252 947186521 541986382 252009755 306230947 812976018 2336563 37163659 640752340 873265953 785348697 14179861 795884001 592134620 635599029 536478165 518226512 210398034 871711328 443117879 894017509 454472264 892563566 843056081 887080094 271993911 651069438 503330601 192838479 392882168 776119682 353317191 214660870 303784158 324652312 492389298 95021072 391577524 894556809 669160942 445217873 208956535 265198988 799770318 367036468 834297608 462182783 344953702 571893270 814571258 227114830 585636947 638558608 182041003 258767974 990796558 83742231 781480187 282849915 517523386 620224772 337025530 499655311 585307092 696065384 527372174 650972228 565720186 300926464 118784921 413347583 597732511 988007881 622948237 863177475 638139118 807813735 152376056 786226326 299589393 335217960 987985584 661346673 857679766 323361170 115590079 239760189 826869236 177852971 149230516 549142027 769623259 613569930 638171393 418684871 533358979 462512060 131799367 269869318 390467579 55083941 729905876 251347350 792712354 316875881 90318993 170715097 885176091 985097144 352101928 359419063 4885949 522195960 21394570 575251756 208395822 543489927 147297212 339012604 272095286 697497555 772815050 968839652 866789514 228870062 714821630 26798569 302133864 210646131 37720850 740246462 603313833 229161825 361450151 652736673 643759878 726017263 169443969 640880393 189466116 390405802 679239566 164257941 157743539 572577995 824481980 133941056 19458090 482480587 711880475 406385786 634848688 87173647 946881204 883082259 315395255 885300714 345478171 918067944 916131955 797773559 181791747 870736259 407113042 186098924 707523979 430731668 592637788 200814250 22299583 349724945 772812398 514801673 326849151 307154277 643335321 863048097 638585641 431500977 192072201 635982021 643415890 590400628 449367343 382536942 367516989 688179160 831461698 649142879 617579669 484872144 392687966 122224014 40421099 27615239 470790961 875498590 881093759 723202642 65866719 407215660 56061269 189759538 129387623 278969337 822695084 448271020 399069869 877026715 144117086 148175999 937420262 303338191 462387200 316270531 484653657 747350644 478314209 720742810 356696062 89320488 186493633 792223955 415481696 473605291 309469866 460122475 728006695 159388350 899455910 221884155 133123732 413186809 893391743 121269907 584792639 970007414 504404323 221791150 690070229 818467580 526573697 280106236 502351412 161706362 922345993 376208762 841270686 753925614 391696861 235496281 493627115 30412679 487391601 680744657 107602591 645919945 283604437 693808646 978360167 263892995 361653770 270510182 354514309 598870157 166767400 249387102 437637711 112753099 696480217 745929902 488650970 636581094 324430071 319199008 237010949 372473782 341906920 559969582 248743402 50384521 877722650 346101596 735764152 666703958 455499128 131061625 882692245 786219004 506792618 271939616 540193 738275827 217258169 945797708 995980524 966811450 343894324 218473395 192795351 889384009 383546414 147905111 315771526 423197193 691835241 288346201 740754169 113705095 924192203 805715602 634334658 1339097 663782925 301739224 887529024 882182553 457835756 704857857 672707417 592050765 626815760 605003797 667360317 777758291 18305632 465492162 445151249 158102319 924937266 646917877 86275721 994507831 876734676 318925054 506849159 98370232 657231937 314805850 227773639 717210339 282642202 570483309 853739584 461331842 618583096 638578185 673709091 300405256 753824581 390778299 912704968 507283623 374708820 206965739 128181065 853075506 571865756 426256006 534633896 855153438 428070822 414292565 890494237 601528906 728631410 137782605 387866489 828871448 896265420 480039529 215960061 91562377 809935439 621537962 213167072 458337611 436074842 960808378 865635197 134135247 24947457 890975104 921364535 500840845 103211352 773566813 666516235 765364348 731371335 629160711 610510364 999713713 119350255 657835352 518739301 844579531 535526445 800366066 671747861 51028748 685296114 843744222 543487789 625292110 891521365 333981864 621896762 815496086 533043111 244768418 475246922 697524194 177664040 285672980 894256902 632701804 733702485 745846695 803409091 71626276 887580681 939571474 991212799 483612649 725092508 5258446 770292165 474196750 666238041 525489754 863121885 362950494 671095369 846185407 444662497 155132669 580093057 839413517 854001619 562836498 532270854 692309677 224861362 25372121 189780563 838575535 221215896 867911222 497777417 899401270 60534438 397756246 420625778 153386340 270708898 72682945 61973948 384158694 386312529 317880353 940779728 509580508 130962428 678507826 92102012 557832258 473481265 115526029 46132011 278043069 830213245 525780450 908289310 460616700 101837614 646694638 143874627 259317078 262345157 125772154 644876358 736659022 216283049 962925712 644818398 144026688 451831734 36979406 681721968 420436631 905071879 495546034 193224417 123380710 708812201 458895421 83037904 707815871 973567915 198246272 911817359 479770180 167453453 467930469 936093342 218313666 10512197 206204537 714015905 420058574 528268392 33302112 543433023 663387265 304111949 447474276 554560380 833879280 676400789 585389841 482826722 625789366 901137887 549332821 465640738 131289313 242992615 718202162 611487375 454698031 81730191 564665158 439444189 463493021 849583011 21054537 779057503 449974870 259740431 846400231 640241181 392660212 716953885 240584008 563422117 643985780 789107718 953918653 880437162 564481388 968882741 687009744 657758583 819920003 970101969 466564034 564371307 948206013 391658815 89219442 30173260 147946859 395152052 893511240 632525453 951760058 767345413 389376464 749203684 196527701 913732230 474874410 880851139 190624367 523684247 566191021 39295594 348837658 105208126 162487973 96195413 638769031 425782517 996309262 402273059 675673237 672215009 45006620 669064692 582511686 568890184 287174130 261038018 970210012 958242473 230065119 431052088 267996396 894036660 850729317 879651598 124281994 832271430 302712405 171951343 279955843 379309860 933648422 934348402 48185370 849202516 204261631 494818053 474941803 910293189 641281612 700525107 613306806 498783542 681008485 150987238 665703145 361939329 931425492 328412656 496511747 54791136 440057368 207768517 54549722 125192119 671177453 812172283 294074940 442259084 993690446 121980379 564191702 433916828 921464858 849608767 82824020 476344244 127861794 577225436 742393816 396479138 21051402 905653579 845161159 940650700 590240790 59446353 534196995 28288058 322402870 11393320 778875166 175521203 337971092 253809899 624204244 800604434 431088946 857377172 273608650 924095010 483473131 19396101 370202769 37405368 336989921 45823536 550966297 938059174 352116841 28470993 249880945 478379063 607327261 855204205 893770409 207702100 941911319 773266170 852582078 356862229 980878733 996695991 677917750 296986797 86319900 521548466 595841249 196359839 656894770 150350166 526437758 601768162 74214852 602525617 717502602 193559537 327439211 280477653 238915145 425941396 934233768 369177146 423442088 541090866 964200762 379701657 36742686 62042074 496004273 235219626 120726221 205022247 546438800 892706266 687342672 214532589 975241990 566091837 344520375 505316381 91064384 934843513 272977948 221659290 400649957 340637022 425681241 4060906 841505953 584881105 203882885 188555499 809360300 717536275 740369619 272965942 984617980 962694034 401084488 404817710 612347024 615052223 527539057 382062518 865905303 448090723 463482314 496531713 750060472 972865860 4194390 13672264 624623402 60741916 520508382 89272968 333954198 777370186 701344994 13274722 288339066 172652914 336765844 568564336 362353036 455555839 951267983 152576751 615606828 506094627 605981212 370383704 553941310 337583133 757402254 678809678 279034205 400318278 634388687 926045452 949980363 745508122 485424638 563769167 876023727 282707391 890080728 565378072 666400858 832693078 647772055 360956876 175705732 40012701 548941792 784742643 609429458 568241486 86830145 279945680 233233501 836494545 355412206 257011984 720911737 844086108 676942204 663434902 962397624 303979428 701598806 798648903 222889680 952321061 798260790 736038956 90530054 849010984 254098538 374399000 572215558 938421589 841252271 173188086 23921799 432475993 918700834 899824277 174617618 279335389 229791659 344703035 602148905 222862646 601093645 148952607 962433969 307464494 16973928 116996108 485610316 635873616 933475868 321616175 473068696 417897997 135428854 430071162 546941035 98427438 442589578 590184762 970099673 549983897 187540944 755644195 39033095 363571004 12566441 652127642 648982685 741723467 841342360 29848533 508116233 343997758 788471447 273472669 335695543 585121811 971428120 630925258 770993527 632391526 776337694 362375383 361411889 751030237 406198054 389437687 21894624 371106503 539962481 898529354 362278290 360335129 46470671 449738499 562292977 429474230 219525968 914116166 484094847 195068726 672702925 744815761 67949491 679866322 663041908 538837547 77027075 864983187 277382312 465451876 559040251 261413421 103583870 857987030 400478348 118971062 807036614 858297218 561340540 132569051 372656122 140710863 577776011 101196589 867854392 39676090 701843297 155476863 420218593 393262548 610607978 183607640 234091708 544706215 414426778 311478096 465338256 160088382 464004430 586528242 340557324 506501184 169451852 564099675 350654604 314258762 584509874 982371308 376983839 677698654 810482572 226302315 423211268 907888050 105598596 553651077 51756146 231188445 77970884 820651485 46611611 485311418 601082499 56941805 508253856 63687701 693849165 449989511 109611393 198008844 481890060 444726032 913309767 8356123 127003556 265875795 107431221 49998549 109532138 931653641 928242830 344429754 536505507 98188512 87567911 306713929 303245240 997046980 621228199 448718085 119083712 797373046 122451073 592777721 181613316 67991694 771190467 829370978 697738549 520480264 358271150 22022011 767411045 87972549 667996266 510235848 468633168 974983517 788680372 64746667 779916904 485691090 833504975 370358142 753019151 408199129 26831179 578025238 988902677 376291428 498433204 843017452 1645695 964042189 442584343 86571300 788769992 95007724 410501431 535007704 935000858 330655457 184948622 958482364 342149766 391119055 191421009 347317407 439488641 840418151 216447115 931703224 750303532 169262512 164529564 30048754 753248581 686315423 907678001 333183198 605136794 189487659 649815782 31658414 70867882 510682152 819045097 237215254 468762132 101955153 823363554 121508780 574066674 406293447 393688982 590067365 379843600 62059734 271585892 659651082 294300322 644637186 292527653 98919222 804430346 337697722 614697800 533666926 172081569 893172425 622137933 740621302 904718861 476076426 644053527 953177882 985301729 829680536 962106223 430358882 74070345 600970776 42444683 133345433 447138166 105637196 162461333 521575129 187231338 791669646 782083727 979314728 755952115 15596266 12143572 611644307 621006014 402262803 20618571 432506153 70270653 372870144 517912107 758630970 660038241 356763524 60823550 159806855 394428460 133181984 427118606 469088188 859547999 37269474 576401976 596726498 359742309 68655119 362337648 149306137 548449505 516540038 955959767 65560551 434569447 467890935 791778625 950982941 135770361 182265981 813768448 634131755 743175818 453753237 40039710 224557605 82362650 944765451 279655532 688014194 952189357 245813967 707902250 983146071 51162915 154522218 547250155 692122445 163020804 339644708 63431240 962055471 510783328 100928153 15367114 24594293 341382152 407587532 92839929 263624841 46227716 49559960 731852858 264879948 181746413 652387735 33775590 816025243 611314833 134330083 499213767 802185322 752388308 698292379 571240558 214040117 736761127 218947316 226808051 685962881 837814449 253177792 947448317 615039400 303323812 582078828 875914199 954915828 196478076 867945771 504648264 803526121 254698359 516711301 45133852 641459266 249376608 937326622 582392612 649883818 151119687 151833566 415093582 554560019 263266730 92206357 175790509 573659367 203521841 514083627 511720838 879813212 796370329 554219235 149873902 832275520 862290016 25150702 354801508 848910584 248373358 594743868 186653707 42155655 881477518 609522875 3053731 823636135 587983904 86859639 390178790 835428217 366215901 554848139 267454634 991824884 813857652 879989411 48384761 807811883 138240430 956655513 769821768 715512684 996517678 861438511 907047994 572957029 792813574 368278690 979305202 204538601 765133430 456572162 436880730 541802729 211004139 498849635 404238851 330773851 191373191 411372580 155401551 956280271 798612811 1530779 387389685 903377466 138813497 35417579 763195462 53048821 623841304 87411553 717327146 730604463 52006952 226215186 249393207 92114426 779098262 72735074 424156129 863392996 27919509 472798405 569750826 266434527 208145840 721466438 393051515 800800026 405383912 347945021 705169128 588693984 836619809 132086727 54499494 453752917 122717515 425447022 739476396 894668445 954566668 516517150 809294038 707410151 208598262 304714189 959592162 508346659 668453093 994281411 168007518 93783064 232473171 56036927 127823606 588382297 111611570 908910130 122416504 378274836 916913719 275472706 243086761 748347796 223779237 53878519 34024283 585421723 777150851 521724375 844614949 997493445 702592990 315710214 757289346 739405731 528609401 840209631 235753033 717893674 568431148 104973798 707243123 602447427 504223176 136317016 124170047 727707456 524764360 524426612 688175622 513669442 296852506 694672631 669931677 155144761 573345209 816138295 121269330 483183835 546700612 591595190 986801512 766945350 195019171 923635485 684941119 960333856 779818326 230846670 192050345 253016873 735569674 97748715 488509650 615161747 143522499 175200825 899671813 305353892 337145288 609898314 312961493 265837627 489412144 598188360 134238307 427527281 120571296 807809833 455267665 46241861 319129539 423560247 258462594 572089632 499889415 699940354 900189405 686460782 628484417 434660723 722864062 928535552 547456942 81968184 203441691 963108526 928163229 362112137 92905461 895304723 215276825 361906636 474671164 993294110 156667543 233583068 9035180 567728996 507284317 657853011 826338094 599917866 549469947 35264631 283351948 738384141 559427412 923799773 206598930 472278762 467377792 38087016 470785055 278619300 195040489 113737093 379149956 41182287 639574932 411548775 836480649 931375942 958639062 736454693 733519323 892003250 207626825 328567778 3898356 156100437 764132852 226105724 263305624 928574998 703651796 421981704 996304225 704327308 764071648 396587811 995565053 908182479 900239688 705369734 670542055 710186193 602197794 182221936 261153469 618508655 823530920 272595361 639032243 652862279 13623328 298811926 113030160 216048763 464550542 94292481 391078086 330368903 394607153 786944043 816910277 170097917 216715657 543227089 258582664 787291244 197685829 953731456 370225668 624628309 773437535 121081766 862947967 69274020 850220371 978784864 292035633 356711781 769278306 519740662 790059425 53681878 296379464 634863627 759621060 199371115 429096470 110776246 467872840 901798854 688757506 637524445 197134064 147139824 865327429 390594261 118078750 758006890 596854748 944795838 324048400 891279234 345876558 544636150 549806303 284026080 609647020 653646139 494415291 747793011 775979602 632911401 419572697 298907058 737077108 935279892 210342459 494124237 369725341 549496082 600636335 206020686 174266151 200141908 706523907 188055384 585146134 201751607 801165271 900815050 138748642 698057854 574290254 717511087 233268688 360254463 705144359 34058604 602374024 454208350 178133276 426828877 740509276 639537106 538867741 686192440 132226866 96817957 335729201 902571117 231121390 690787920 454860335 641303232 2556034 487007315 597811176 685666177 170361578 550669015 475595526 687622467 254708676 655227716 135213208 397319788 992079673 487455070 952426367 326911613 545081782 871499405 52712889 635173683 107933114 99319192 265764982 805359917 69879519 514567601 5424146 493310806 880560550 217667637 247860417 960553228 882288651 860963757 646772176 799654734 913198515 815671980 628100071 677194279 537302285 717176473 606944396 347251175 350238287 178410187 336700942 926707680 593900952 440908718 924176712 657593900 372784401 457440442 156019514 433193763 329379213 91195316 604406634 855680111 116540981 518602486 333030648 463279460 425626873 856406085 322707859 177608316 26036760 675946505 415058977 479961808 608085845 6283901 292806530 202813273 922236244 436293957 771965087 151599160 139158035 841163443 526434737 148096178 794972376 233527084 381313087 527475707 783836560 169015450 712166750 452020502 569437876 76842578 550420015 721201428 301745259 16549173 680844553 210166603 494134238 758223033 275016409 62424669 939730338 452400390 648881095 438308297 829484647 290289946 144910899 567012493 74221673 234023900 706654641 11782427 168130103 332489945 454554215 174390811 514536975 787404295 577019348 978576877 856249261 212450103 596218194 506319249 328391926 961694334 406327082 388753073 853677891 358344871 570909946 881377444 996827842 503882096 359052189 4114340 222184983 673638696 250601121 225332851 879559979 40688063 2710660 68541103 932131969 498098903 842713954 189863094 200072420 374846222 72550526 404574944 679026861 369484 599545734 598336209 108543457 928878282 229906384 500167676 664103258 702213985 561040707 555549826 446317946 362390586 330407084 534147900 302140976 962123367 103387040 41368597 322849360 90551867 539160699 494389311 772404805 497624872 354821998 50797840 730535385 899982978 970974428 896563297 838987941 128471487 283729370 150307276 132263567 376309856 149642954 946927485 732688247 462906085 745059969 515257319 367242396 388562515 291317056 501103903 553368233 703199638 887382226 498485482 611191596 124008044 544773367 359067759 187787921 39526658 254672818 396128378 459608086 435584944 450106650 169319003 698682080 960874904 359857249 272456583 241287134 733720559 593930349 796028573 479863942 982659784 786605370 515647255 775003937 524314577 988590367 754835825 385342 106667569 541795461 408743853 802565238 297005996 229356817 586539592 488325095 190034520 911988001 969192086 903521708 715279736 623823608 793208182 537371071 746519803 700848893 863128948 3544497 702706978 560385681 43352793 483599182 292758515 815560341 675824583 445192526 293492606 141829518 805730525 754842278 884895126 272661202 554951509 927759147 163574528 177567276 996679688 192578928 503041833 351395363 630711313 758020805 717590958 124829416 692727998 936433275 38116025 829193065 952357536 61781357 714808982 820111366 847802504 232660500 363077138 543855801 248953226 156463026 97444825 821866507 81579649 506112215 293187567 252818804 32433808 981903923 547901395 70233452 280388098 246888030 145887491 136146167 501920706 706675947 145333010 314360564 221728458 109263506 247073395 300516524 571685988 836135976 745792121 918342639 959695574 419624200 611904516 831919018 398058422 80452410 71681137 294987445 878385932 152756057 426195377 838307030 480904540 387120076 220311384 45474145 663124820 305195685 881862017 532340716 556374064 568599363 216963950 57816290 487197677 627494526 675075440 430958625 865198163 600035782 783833968 183053498 189829299 95237936 313146356 564440220 102389183 247306998 25626470 888726339 652214167 394855511 507363144 611720362 974345972 23029740 451247203 293197476 933550087 299549186 641364173 353099338 791103707 266894404 78189185 993853381 961583697 231965375 81928958 591526729 577473495 126369442 290919537 770349035 475817434 785685020 218232244 117276344 173875970 696988079 148516121 756224667 214149689 948420751 651661230 27813624 139379776 316321782 105222734 73498915 681017441 295262821 153375111 289569852 823238182 585196225 203393459 951694505 146627140 628501933 211648307 831726300 750413188 723711559 184484528 469531778 219419251 301867006 208729165 963665548 652867004 126412179 783307615 689244434 145389810 184570310 151431102 738623963 976874676 502180868 773746044 265367130 477211528 561178149 518385885 452606131 627950108 297459131 943040552 526995358 803932293 286152561 303272525 436879399 440408390 341172712 651211107 266094012 464818352 859044951 819849978 224396436 632797101 195990376 691399016 69878518 614420737 353241220 227314272 279636170 848892306 652783414 532313616 98653349 981647840 144222417 344353133 2940376 798734758 459678480 331399537 97779628 704029308 448541655 55736858 869267862 582494590 253121256 510818118 684048907 389917218 563090975 737344461 928445719 690594670 467410868 831082069 885612983 829670428 843477829 657852913 154780235 723075688 649903591 973389311 392461580 892704764 421532396 239665300 421912209 38026286 177910359 78658389 488871 443230118 976233369 709109350 447186467 506517476 568609935 367177965 437013451 793614319 71339468 626998817 855028240 29464683 508642663 19621062 827564600 594894787 620518537 762304079 559258885 673400569 550382202 31524963 400496676 166862478 339276522 683152158 796560633 607067028 734604022 795180752 756507036 717354523 247342669 569694654 52165986 402389955 963561262 41338024 306446656 369567370 355027696 586917057 405533638 544968124 376178989 484024068 95209625 876383532 638727145 85274487 196268261 376882208 731593080 492386193 823926476 105758418 901503675 231270696 296266169 153499335 533287907 841072895 947410031 196476198 416486635 392469838 606625118 81175757 878051105 500060681 180767577 191147012 56502515 977204401 150461138 751290212 726148907 131236428 416019306 884171325 489949018 687889539 138047077 404312657 684923466 573516652 339251695 934344467 679291376 181257009 185003565 564521907 986714898 142766225 199586034 628375004 541111252 945350190 663168222 426404002 38727946 766293348 320644625 338660180 601342457 132940227 18462166 615075126 242812646 962881815 232189681 100729002 563133443 463233684 550193722 446021706 917037935 484382549 150873835 979740582 3235544 882184872 363103655 893843233 467591901 355732298 627530366 228537560 686799544 47126193 507481253 583888401 16308677 503493809 575473631 101861212 713290507 925187703 998898474 526114656 639257132 801861932 552412798 11738314 760628610 939966178 363293693 502562586 771087181 352421625 39502019 510108532 688087780 924883393 320021740 51318392 911726234 16893159 410376317 14380397 683569341 805874517 316815309 774076142 686257292 567740455 550418190 787800145 792174575 458087645 390908769 360202437 668715372 569670600 67753186 498703625 297183949 423658997 996280222 619177565 561431583 761918083 987416621 285626342 371019603 179972829 497679884 733572166 276743085 791089831 433798106 377812301 489832660 75178566 104191697 174937162 132577312 605604253 286067329 508637250 402914921 789099945 929359111 105430453 856372529 321717953 603891327 160833061 228957792 522966184 27154005 56068874 739110028 597952630 714288051 317855967 906474111 346700953 181373683 623113982 314168303 367369987 341183052 582894872 236444428 775899601 662115407 900999597 896520938 380426378 567572653 532160843 790556195 637397236 391507699 892934124 672727638 622752917 848272365 579765587 491144443 428202230 756601207 190066695 733740445 730355285 429557022 698860739 938675101 44046789 597559626 420737462 693617585 446743019 473513648 166794765 936912072 826729342 274459019 822456161 789896175 26848066 768556252 557147557 848011944 436362230 904818828 895952686 408888726 336370704 714936095 389919292 8084297 464676615 83694983 711192029 75902711 698139953 71682666 272163493 108001164 849843921 354730991 819010987 607514374 176956039 227063527 49435346 895533113 783541386 469145587 637538509 404065076 959173668 690059696 11134318 917803602 752990883 172274314 460759357 460063838 252458230 867300476 261469812 680270982 956812173 937584434 811924243 78769011 13850885 733008760 578968232 593890763 458936634 177616509 567821279 15728311 117647070 246501666 263185161 319770893 187384792 132817192 361350660 333808996 560479269 582504208 482659238 825947049 655160091 847256705 848119637 326429973 871844160 964835457 546637023 14035992 696453401 443330119 288995213 933746971 40643666 911550223 838537114 774996998 417636656 676206010 892036776 495672840 347535486 897959910 932747621 498820762 601259615 914399241 47774620 384845826 317085847 539790894 143670843 121655806 82952507 918643489 226341616 845935970 606931023 737473028 646500942 706628840 186676678 213372152 744898347 397253711 702318989 389431530 156603178 997395621 654756787 948574785 338104538 19050223 948431208 218563952 75474851 189044075 242247092 231871098 969546728 413036862 780991659 325868397 268573530 967872026 156784067 929150451 763084682 991494025 714347929 906801439 844914157 233142835 668314839 496173532 544596721 310198246 869349250 254539820 616471717 698516311 28721054 24530054 677850249 689200944 489621128 19791902 342253535 303413028 17992629 803837919 80181724 148403761 626348087 584275579 699837042 654221750 319197968 450472928 917439394 824577907 635441910 131480141 254581023 174230123 937234515 124926572 206957640 275380575 868439635 507921022 643405368 186262561 484214652 806807548 753448906 859366222 449583384 328362029 186815898 24951368 863500844 917388571 936809054 173735481 270247887 107052445 570682976 790671656 414048472 325764854 892876430 251350968 807115406 980524321 37891577 696963621 283854043 796061009 310742295 946099093 733358160 851165900 109746683 471559115 489601905 707868930 572478437 278858390 752875101 513565272 550363989 715726494 493441146 49977739 43305894 962517204 665656087 818929389 296423451 648843740 651920328 741517963 638712693 468355709 621391783 226402688 73860332 563879728 819844913 108031616 347803392 695161237 936190619 724435192 49311781 552860844 455702142 841433784 727718504 495056159 970366976 198209488 635785784 348783938 145977128 911401708 332878900 793758041 90137915 681500749 735791125 603432498 208687876 46207835 997829502 19243866 299094471 305914253 45505063 209399261 440421942 202548406 673455554 593562852 322069632 906085489 890502389 320109366 955817395 945073807 600692347 991227981 305109474 46655451 143053123 920435760 315257186 848964433 167923141 319088277 672043552 96744926 814004057 30548504 941328688 46859032 880986602 89245512 300014513 935718418 994943339 361543043 433756373 508784481 20353434 824426129 432331711 191276161 299210907 693158245 272397613 123633102 316516925 564459117 949065259 437896128 647262593 841671988 991728891 593286791 185333046 326406445 982516463 376679115 537924905 763590092 246892652 339549661 959333893 462309535 137191868 474952172 463625377 153366879 539140240 943571584 185391779 189624666 684792576 875083776 198346278 361213409 839586419 661766727 534548330 968400084 403474984 79773803 977120387 844287741 473063718 799906525 391928989 748820634 387513381 761360391 336011769 756499711 27287457 573774326 357840886 273169288 764128091 506718462 271477471 425654710 147629989 504750181 601012531 294592126 468082868 25792447 177605149 436330102 583293871 351115257 664377600 49432077 617661480 108666815 588161736 577673726 501217831 922757477 978436436 533905080 710896599 504478439 188236106 929083527 260023020 720753934 39054728 518630216 829366599 283159849 608562471 133631205 580240015 354376691 396793259 713076007 862770536 62444580 163122584 497651788 394741642 511254742 322726420 509711198 612111316 893156022 582860256 775976174 269902572 844643764 787522457 886290811 892035146 463000309 519049023 919840097 755145547 930671382 989656154 12340583 739382061 226841627 219234879 626179129 920177242 842034296 244775102 711647874 469117744 343314599 475199300 686125973 382650130 336366083 498554943 734042975 470778000 948945231 109232722 780005928 132858255 213714120 33587460 599906748 535755869 871590210 319153 179593800 72578793 775368101 602405715 816568594 909795551 594545332 803294205 262324708 248332842 292891334 713548207 68744903 191412079 789994233 255148374 59857726 438061320 456789135 209232313 738421336 59398110 683440002 189166094 964177772 401625086 819980505 911017603 232212944 318702273 773532927 680144390 556136885 448200719 602493443 594983301 932752642 921737668 142164131 900681001 438738440 51293750 498844309 695234516 212918349 907852122 518733352 120420511 850817411 198689861 669248189 167550425 139348143 309688051 774767023 910429963 908733350 462130033 367658734 480169148 153581938 898580235 108193921 922022567 307639668 2815319 756978861 227473089 331360884 92499050 486062114 458063749 664247850 793529608 897727386 905341312 104264460 639149221 94729878 944971710 972302895 679194981 465423204 783455563 509934131 120396268 563602711 534184162 59814106 258277492 414425225 948920144 993360756 286061259 698743467 189059906 851846041 34940061 970957630 856102556 425137052 708180291 522420576 328304261 456912744 756167413 166662921 423595555 187699548 670662489 936497184 858224964 67543312 844479162 502068947 601286158 879709998 685114118 785554692 970761228 958225796 144948709 474108469 636141905 369719864 60115397 654330001 676039453 166047845 427685756 322877268 411329145 285240953 868520411 661849997 54898006 469270267 491621278 467479161 334316042 45130260 307698637 831027691 318346629 264455091 219378613 556361824 412889491 694630650 434895678 425109198 23559208 13078962 838244293 578799799 352570384 173022733 698700695 568737463 660429109 682902728 520575804 876647032 21390885 32758406 873080098 157727246 462962622 777369076 259685743 64255932 89193976 122891421 10478878 840064938 356419804 164001266 170159035 168808099 728627807 214729375 89174870 10754324 236157009 346949850 136009296 625620665 168254584 453731138 308753929 69573998 854396440 267713397 943779712 455640927 256838481 547649577 532155555 272213858 267649343 985144148 672599005 428890519 808808673 460236160 781888773 22898788 235460551 866838207 224734961 810683354 84421753 433957652 598597209 36000499 751981780 381982530 865639821 933255977 218119988 55491092 313264647 663783571 173381541 130457724 843675412 574190507 894473085 109401744 685315833 713143122 921839863 21929625 996261374 524347243 299334475 940383870 110731703 625297283 845080178 254552670 407506552 486182556 882568281 500063493 247064581 98586719 359431009 635726831 650897415 228193921 735786389 956584672 991955728 539510232 212605707 690532201 705004960 133906066 791267516 325316072 465919341 841917295 563316777 874681750 265831713 93730805 744680330 441634475 297446716 308968960 626570102 557589332 357982602 32911403 310985612 933386898 379032724 242700870 722410231 814215817 905509943 137668451 96699479 401996117 67600240 661179142 173170116 485584039 893960856 487220423 118835791 914804293 282398233 634372784 42386317 874251146 475309807 499379433 410807707 165887876 414990361 817904358 734481204 284270711 115305070 852778873 501119561 857239219 379595812 635491199 499666067 835866119 466970200 801534388 345319419 605101068 644633655 49113027 476350357 717550427 439720163 409536969 426756943 659903209 65807560 569324343 187906355 814429746 11584418 418583577 47511660 323717392 508548235 165994805 19182788 60937968 774125477 756919822 376976525 990765716 87349775 872164418 140199947 25899240 590804697 669872149 788380684 268368239 629405803 955628303 956290565 515298847 247671706 89448978 889651176 232974398 315902515 291291708 134130041 662200471 373227779 875297527 856672831 423840599 533137327 182219090 852141493 979463256 926768502 596794552 520481706 200006930 787378417 493221534 884250361 463217432 673682332 928781460 846045579 49501660 212349037 851307932 892960988 568058721 269300080 233541508 74331781 524354291 421255504 533173497 824898821 509734896 977304883 329117668 10408006 241653934 475079287 303026346 573695357 477736371 344534106 382300421 602552536 808702162 260520087 179993355 918278343 855952561 889354911 927031096 502213169 924241956 280817656 856013331 214696097 985048887 709807298 87984457 689682975 77521729 340000396 815106807 26934748 843365880 128333586 547853496 564282537 182850358 770663106 183727850 689700548 946101554 226508017 462866191 194361725 705134920 108923847 789063018 452611546 281338697 765831631 184388670 761577704 146483549 961948499 507159104 746975371 316976806 252708280 284293368 472418018 428171814 558761097 417752393 55173247 191661100 962782727 118689658 482815982 827982628 759663799 169136605 373549628 637125627 602924626 275174998 669198743 182147878 53922949 422191526 83231658 130514717 568223271 335352258 90520525 198524140 761019882 323418295 965193135 41134664 343093870 526513374 815366285 751504612 161363656 644294362 978973379 126442966 316835094 38095673 4475123 119666735 337879735 720920071 379860246 736603129 264917602 214505149 341938437 582384007 368030155 885176321 429921207 949919662 254472582 902472596 366043262 446391754 116423768 5141711 258212748 193117434 21086192 983885163 932252098 860972841 847648165 163206225 202601694 397465799 743835845 746916935 666748383 357492128 774346204 105782598 184020078 167589280 473391630 405741212 581942637 723891133 342067262 61729638 158151380 705923022 894239618 808231418 192054517 380048976 303895973 736459294 635065589 123126879 414051345 563123443 847861704 489557162 170882077 877882171 967939128 911906192 808566339 823528617 808114069 103339003 874617170 647708715 288267158 514507450 340414273 58782546 639563196 67909369 455798033 763913924 419898955 261179435 696261062 875186539 925049473 612847227 162375681 250385220 58229929 823723785 17050334 539846542 81546154 672769273 936787666 446391413 86377371 806248844 751146639 132317211 433679089 16587596 679513040 332812199 274544056 475346336 641878565 523911945 778046757 235874442 273178556 96838670 600743850 157980866 447882855 556179842 458444273 635304530 507470894 273773411 992370075 56206004 986003558 203577595 462153718 560453673 240124793 431638511 941810305 471966554 422005969 247754399 46835685 816350550 566155856 180731413 604316808 578498318 981466986 410273427 671677182 995923335 892932727 292866066 957618060 782062426 635379923 642832549 825170081 620042320 976085162 398655725 60152711 557884982 393741029 76449806 822537978 853423071 296128580 519055341 133469307 373398299 115023996 471392974 366698158 489514611 831835463 898332840 500564255 119406551 813751094 613167491 363452701 494192776 474344615 485434632 931333892 138706924 250477644 568180974 526302556 592127478 230834091 981106173 139997044 140311843 917011151 288890456 784895743 504036587 39223086 267456849 390800061 857525230 79900276 978615062 867429609 702182685 650761109 668976026 592045026 214405596 813505957 355834393 586575320 690008907 234739578 64481567 844918841 461434508 583156411 527533643 603296194 858109209 892198999 921272534 284725915 684402927 525410726 335759696 802568622 841932662 958654123 569790200 326279980 532335907 474659966 465070387 344317339 935982786 48621652 719912469 675501522 707076382 907126990 619256683 479868547 465169733 512589702 48119137 996917500 81468314 753707946 630483573 974437859 308012687 619775319 913663476 490363204 887509139 235009673 922859058 882305410 703503488 783175655 790585803 628030698 515730107 314467650 502054394 659481706 350824774 194711306 642766224 477326558 238523316 38968205 574575370 743769070 828759864 850640507 648716783 581143733 262494212 564121332 849101275 175836215 410563238 733797841 437150721 471736913 968575790 33625703 982148762 462342389 759038017 746440241 273740673 707532536 427816550 346090093 675318785 202208311 754848435 558975829 131376453 306977214 158055506 477837623 120089465 136155343 656296358 889598348 579712438 165174972 583041852 826224191 626233885 407142909 492949469 195361469 890256603 584670271 488723934 323392368 353673177 256228944 160690043 852279833 243647550 827319297 288135117 171012398 101988769 305834294 340580243 350831853 831062095 970223047 256268865 347407664 74249160 414881508 644741568 508677661 769628176 929478468 255956980 543249347 799421270 518603278 922285805 350840353 541478592 655340544 344558518 615167791 439571925 124041268 507313503 91808491 495248359 980531088 362392353 13920318 591740516 663093728 647182418 527992995 494689161 922666755 666455178 773666403 797806080 683511073 976232991 296952526 520375933 54276156 293261780 275248486 541802555 509577834 845399076 125027577 204471672 239929097 95695638 599219692 762872682 372821329 119665994 261921127 9334477 570075827 983710996 692014680 848793236 920887294 277420014 544602515 150817969 637028113 475341856 210089480 641797445 134363579 168055575 358373194 66773335 556063256 381910704 143851857 863295034 165620674 355107543 362293402 781091623 212665845 367984986 924907294 374828901 723416352 247865835 680972227 396003216 160671635 149191499 954485669 738894137 544015786 671585210 843992812 117981925 700855402 273526405 235781406 415925359 745422306 429449068 353135839 793825262 864306681 716024902 316290112 335080252 773703963 522269173 71390323 999881898 41418261 94805944 551379454 875205373 303978619 704184477 600847814 343962941 914916450 199317044 868975042 526243300 80614703 865274250 828316275 228100411 9905775 711014265 434186525 915329650 251046462 406840498 271567235 15309028 473848575 351427206 73504178 38862251 943254466 577303773 35913574 778918698 465095495 482592330 798315905 309467683 614371066 224520459 205511770 628919891 792680508 3896942 150955519 7430722 856322975 237135685 391866469 259869133 968174636 134253046 217668656 272057857 378711334 375521791 515352051 966192305 482111775 361446163 426114639 666620631 236985736 141870721 945068271 722233545 227682347 281593549 221340238 963862935 840065232 931417388 276056431 443355430 150853328 282561895 556304901 973885955 399176845 808702848 835635641 788637547 877579953 864597002 195842555 141912296 120790171 907232773 10548114 782609731 830555311 358642425 152299353 337146526 179053501 362526545 745585824 380352447 611959300 385523737 122329494 875003919 206689095 126693399 45199878 545939321 651884133 101985952 854632177 687805448 721100432 145013169 985919008 880368631 755253039 122265880 592971422 253045835 832119508 623419125 790484606 916800895 894440132 598023104 840418366 537278285 656281960 676463434 83785606 209135917 95367028 112817524 20782649 813620649 932445042 13774495 789039159 63177327 217741317 603732246 372117794 231182194 664174744 139340267 406855649 317319116 875982877 698201306 17670259 532998357 318875270 433267407 132120147 26343113 986110433 667392270 315603216 396035823 427552538 688665096 57517259 538167843 285325108 834392844 310569588 8910217 563410680 33140367 873338240 955785670 315985646 573978719 531010775 617408794 23473680 530219191 988800631 372673528 697829854 849915283 312192103 213876019 305753949 360657107 84431 398302651 574111767 106964351 184085632 244488695 719288113 24384079 293151264 633575038 421168358 456030970 917012282 608017890 564369873 204313597 446851887 321527813 554467903 291992424 271053557 860022691 889242293 515427578 698604870 423561543 493088737 213693802 71486925 853099965 669322725 545883955 825820105 370626488 492011088 580503264 679380830 694528086 420259285 978606902 452616773 94252969 545153423 793203944 868565002 868263675 500124399 662564957 917868284 372917978 260717977 451546158 95145252 768660926 670336452 670528106 111526363 425415213 593575524 35643195 756670897 713470904 654917630 437097573 463652756 703969671 465044894 471020267 150813845 234407214 914583185 251209993 73203789 338996520 657680838 559957778 646797112 491159894 298665751 314933958 41698226 472030185 569622292 350816687 19233455 914372721 653099528 56837975 322115391 135779232 571657383 897027114 815974206 81412484 975240834 868007864 599088021 712712589 224295381 740936533 43992102 46248752 392611202 869463703 15808688 55290038 542169697 443952165 152802787 502470704 262328348 718333542 354666411 824039533 862275671 185371192 100820109 595049693 422479970 143667224 772985091 467028967 123142668 98256051 656338527 331276658 231025685 925044796 629453120 250125644 110298011 945808130 840593689 749745572 492097315 911551498 675160979 647767405 874425467 753753501 719509849 887738403 145597402 817481284 589491330 991081710 953898104 334275368 977241764 252658606 596233307 551425971 510351613 765477532 489252345 316914612 729656001 406485821 803454670 140884858 126381822 580504755 655432362 754035202 444184514 345338100 1387995 613545285 789771769 545542349 614054465 924404207 931736477 172868744 901803988 45343400 51890725 549118288 78831537 908975951 78327749 764363611 528773260 448924325 471076160 846235462 783073773 111540107 477174973 932791282 397153240 400111806 950562663 224682091 535130533 901201794 669209343 173726760 212432252 482937066 929557033 866796212 657724365 57289811 330957104 875374869 83625714 564226201 587252746 978357492 815973916 484309293 317641430 281505049 167048287 846026569 851147356 504145210 985060200 683737189 614782766 783378178 728047573 551087743 653505884 723755457 679280166 64291792 51498418 454500431 232524263 610599427 961368460 213121512 840871398 931050838 35334349 547528811 875795295 890804954 787796626 441367305 880999774 425687129 10700149 165734697 656952804 727137619 653296261 587311622 190633059 351849057 970154588 712265972 177611884 769482597 314388031 764850670 427754765 903262532 478882914 893716799 204726505 498046479 458050163 799934285 52701516 852578105 33391054 173242939 908458449 830304115 530206907 32213156 725925548 842070485 31040495 2148124 360784256 228282121 599145391 703763804 30330305 711896692 850970409 687924465 133242057 65287327 544054587 18213802 201252347 297338745 203410768 661789536 586803687 992721792 901646110 206608244 105856826 922656017 801127841 240051650 196744377 788610774 286616938 8085609 6486017 169853992 281366411 787605103 246857103 981299829 219777201 790686088 817029211 277051258 379557805 656204665 314080243 247958309 654502913 6699940 609883115 7542965 575588458 407216519 899448103 597756278 870472277 280951715 962879123 348413236 414844732 123336357 913595480 235104155 14464455 368736474 230714926 709045088 327520874 250600655 575738174 362895135 355466399 540474113 45749643 411957631 545383222 819805295 429314086 430181219 902835879 729658769 717684840 499809800 985609026 75371588 500112710 336502962 3627547 362249002 225170139 778312828 734351174 990373448 10900711 664356197 275221598 744850253 391026205 221647695 15942302 242945237 701049384 337439076 941480788 855266730 295112838 488829414 384323615 64724717 553163650 412070914 142475565 668539664 889053423 272704535 240664785 934124260 203051282 553320314 943087253 894050076 987084475 919457018 153780229 146808957 396735214 3690047 606799632 830172536 503339619 197111602 198309740 154001135 590024764 754337732 154480327 555191802 67678436 696837056 362995129 551168766 149738981 997541336 519513486 685878859 130646236 135687276 196982004 798935734 458760963 129537600 787194259 730141268 680953932 374698521 673453596 831878320 569084664 569063940 374760628 351018329 564074284 984731769 870934971 848021142 158562471 736368899 291508756 753288212 252751258 400020707 27210700 101682613 911665651 288434499 894679434 658977235 464405893 104379288 7632900 812455243 98976014 98025841 32508061 447742133 240606418 580688169 305699023 385395241 21998639 678509677 125925275 829277357 732256844 513072812 545691062 713781510 673575214 798798185 863916798 538038432 762462639 340963590 996959273 131380386 648558438 686131027 635249936 597958859 434556384 363913412 355927020 635004523 817028682 62306963 861546421 590657246 992003419 433248059 412403382 56120351 719137064 327795696 331483327 156668454 284470884 335206607 648415503 623962877 990396126 858719724 756520796 687827843 394914077 901930748 63343047 123024122 559585227 161670406 989733520 439919995 612012798 591580465 183476895 294516372 472662193 182800171 555790441 411238915 709356636 87377673 205436921 261582028 226518325 191957648 91065093 840456148 210877459 637672385 61493414 560071449 278946377 191723746 763244195 826558865 5084597 735922173 666156233 861405561 447731833 742205632 574011388 118351923 398517556 705422583 744531142 54314041 390362712 101188509 228814308 761904786 350952859 358800871 807352225 601463677 631078341 422897711 205670359 754980963 559666792 31602027 988840952 143805064 300323408 820294648 434524407 996057102 828732514 97973846 105552944 195741363 127478968 243744445 351164013 22328348 438899856 524298917 873700348 262540708 388508297 808890755 882541297 97977399 99486677 674987074 892515191 50259879 176585795 333946193 76093196 808429017 756004126 925192548 171656729 888608853 795390043 862253549 333416148 437296246 615217848 316929820 785332249 930725521 78731237 560265101 430399632 552755019 836676996 179635528 834096940 85427925 755362313 692380371 489457097 116069603 202958100 584124488 731895630 10800610 667175249 931070951 45370183 421584831 794796867 499567181 347367454 927678811 568550789 128533181 326438848 676658265 900525335 389107288 216319906 752095594 529486616 36035864 819128019 624644630 780890987 384214676 40302814 699505818 318062326 759090693 990983911 118236190 310129172 918610015 570904021 360982556 523074396 445227946 947674556 430060579 589198048 785190256 515039106 357118749 865735625 597938544 706542499 670964036 397946360 315745502 958511955 365829958 35271296 71602154 642311532 195000842 422759527 223447007 293855961 333237129 253049504 486114456 350825805 453555926 100900056 877753309 293294412 248375099 537956525 486934673 577213924 432322415 432314190 467845481 738109571 447163518 379646275 345480966 106711030 511454585 999190127 656365693 342015841 321121790 304978461 710079858 742826171 360607206 221481918 413412344 380832055 980056407 721178129 922170964 97865285 585979891 469018283 149627980 262083383 515033143 735808154 105966726 378007021 915111655 643187315 592973536 622199704 640404722 563324743 231678073 311801414 938163137 296668000 773974472 586874638 844331007 361153961 637006527 922835390 295012120 671440580 725698318 564956967 799276699 50625544 384623208 37861759 785600615 828687304 569324091 634916534 636421764 889690178 570005865 940405918 504219036 950609077 442294256 824253912 689680551 898684342 312657031 97209655 226199540 21816523 41494096 587027690 183259728 517064288 934396968 404181074 607412992 85828393 871566788 88801240 964170418 232970915 797500869 178622919 617976127 56042631 545599142 994008476 409309242 374269859 826283355 862105963 228520473 303289308 670375838 733793621 381706909 839074624 348039346 622291131 559488846 233458417 957431582 943591137 304444865 584387652 718176697 55521515 504463915 675394723 82266890 653291742 135026117 733787063 279810115 507070725 840007208 610704397 354650625 835453942 928789862 362494795 306660652 993894120 199265388 128740653 850739172 270675190 50523095 594746277 20046686 44706986 177428401 815946057 392788003 725763548 920266660 168734137 635658892 387055127 333977116 811729386 510959283 361520987 539977860 307178745 542971540 684921690 266071483 681330185 467488932 92617193 494608363 895602820 199162169 709549925 101525537 916039746 731714907 22394229 663561281 734933772 705034310 452906479 485190920 895222034 398645564 659145795 218288779 745830767 433689027 253721205 474627741 475015234 700742380 588192545 704636487 741416610 615447539 461040296 630894676 689519613 129007862 944254317 60857898 738385741 963543054 721082796 664324896 267334961 140323185 851329267 138993761 44438886 94812971 364503717 716490813 904986044 92220926 146181131 472309671 865504092 702894194 71914214 443989065 991510191 436551752 270711710 164998031 13863103 622046189 869078685 29693415 633817201 956656474 757538270 888990907 890276675 810639724 529500487 331492161 414719248 443705977 759246721 472929678 525780089 833275114 840580209 857884719 460332606 737942667 988324071 621696054 264093715 355706957 987075543 836702183 344344450 721082169 692416344 630031906 455860245 949385379 880156030 844766786 850675951 166375062 449004838 649094793 849916592 345512076 122673787 351925468 577327325 272780380 964948478 24013327 695600811 657717766 776069031 529917936 981807512 258237650 503487363 843351610 537720102 6517228 716618643 533533250 504053344 873169788 887270162 445135159 56558611 965847494 404711834 77030736 293481571 256333147 800715238 455635232 827788916 407265316 622368677 870408030 525158517 34633549 865895642 960257565 73668096 813927594 369750263 408314280 500169980 636970696 314049521 829244484 548304819 343958736 340387246 759881913 49179622 503969771 864942857 531055169 64235465 145530681 580104314 699670792 246748891 722261862 621969244 332668829 580993372 647786863 977950704 431258767 857025400 595582111 897829532 436804491 363553651 655496542 910624781 61832784 780704274 876577909 623633674 166592760 67289780 980061953 88827584 204105303 747081642 265348391 934126632 257571293 596621369 887866467 570139308 772214263 650918237 345531506 112056833 100598006 789877263 128017203 843510312 33897947 700170609 702646397 986932098 938359002 452789986 460156323 496168471 258962196 925669963 473908659 943792799 819658058 715194942 288495236 629262505 831097118 616346011 35331885 64708835 24199303 121988172 249804200 107012797 681659012 732656271 481588982 564034198 724236901 691678873 474762493 472276268 775522984 54873273 279694560 173555005 571714557 986403615 448183411 604971871 273938411 155817507 68058806 3431844 14465970 327814557 556080204 459419404 12785420 585193914 175701298 198933701 636085067 456014701 317640867 781976314 808947700 487955080 745077223 380315695 29433645 436110022 155544739 76068462 254866095 178416785 724567959 882035565 618497232 436215273 49841016 690680344 587883898 556262558 656212463 531489895 982399635 393732484 516289614 185016142 245974338 361264534 57238995 554501320 510539460 381730605 627206708 736735176 967047645 610059333 160385232 238457669 645960329 457406319 971581386 128375535 910876073 948752723 67363420 325229040 248173005 777984536 243770883 445642435 155876351 502656363 740225749 946736715 874958591 336226139 766280730 262932600 474272499 217761030 474061549 651195659 416988658 106609814 688913659 61753654 902439777 564828559 13160865 639006117 842785661 852183404 395606915 204982269 920035532 583059819 137342762 82713340 731465646 955228037 555156024 578413047 477220949 884899185 128338857 595040510 852538087 609084941 166789320 147057814 865373099 195712196 170816885 930739564 405020837 393055792 452668715 182382247 893083585 519839856 462186472 316107378 304832958 608032188 521517675 902748480 812042801 216274944 739611876 140490186 688752162 289580925 431456250 569036849 983349192 494577899 640893159 967301706 201616300 881566685 847005909 309191206 97785093 406650281 297064166 24212852 194502469 602798088 448001592 913708432 759315274 880456447 76007956 954681205 816766252 796832245 936233348 470229699 816583634 926397217 805321901 796019210 165406297 465126874 798196756 838052853 496706898 955033642 385052115 262162671 687958684 440796236 716008132 552346674 830979859 477450689 749136292 242184508 175909821 363315474 675753498 518803805 299793612 553771630 559560620 903206908 891265465 371578599 773707087 298716442 596220954 881120463 599712932 163663397 958371716 556054834 119482277 207109388 889744714 666965201 281734380 349431271 964155350 614262518 918379191 993606750 467950384 103012284 521601758 715175465 279403528 653028913 456923559 589494117 524160347 754875770 382127799 623404390 825830889 191433814 461170298 375233566 627218324 943985004 927831254 90684801 355401940 332251681 388899034 920514850 990777780 786873642 851256288 769768721 131752028 963090210 444702547 904940731 491593685 430974518 619963637 807068144 854293511 600777716 394287340 406485582 264766552 335273246 187061576 809675042 353125640 156488970 988880264 86583172 885867886 861658683 909930215 65481075 746623103 415510986 8223020 195716357 829170891 664280211 635662372 441396936 433810670 379506725 297479648 136666440 416305217 168297163 660822695 794286850 276978154 979468352 512472285 122338819 449431324 456838978 248090010 49054112 829827338 489382141 206498972 404564413 314215866 665143968 91017945 47385096 40033552 85886570 443777647 676850606 184722824 117018758 616243271 695449538 85876000 310725207 134000362 684255014 99318795 629725881 282530430 239767175 799453471 390007173 541992337 768942454 511470720 68788540 853112280 561720223 377695679 602666083 13343945 101491649 699400883 644902579 280430731 482446615 50479307 951871239 474086796 451357600 425697169 126635840 315695406 264380720 80519989 334172099 327369389 357434003 175910014 193111223 543878944 816724504 993055565 801912902 959220532 472280540 943697953 939429283 965036886 767305280 273872732 909106824 395088900 393822293 28490971 186631762 298792808 839934244 960060637 943094703 637814172 552734171 895467018 947981664 563678770 490792752 601098490 70667161 989965099 943794422 823472122 425685556 219698094 78156384 512626338 422254974 215926487 845342087 404525417 821029610 257615078 423327764 650420071 515362966 245191364 339746806 837736217 746853649 467273661 35783194 619419045 131475236 752914358 443280448 111188194 794330910 595405161 93736639 98286856 123821296 889494233 677477573 946866713 673195847 770511185 763543955 734128793 697097021 946318474 848764968 287135453 703602148 601459456 525596791 508578024 184207254 879252215 314171876 399264188 371559407 755128074 194024957 869409931 723408792 125960692 583772161 189291611 509853638 899581870 764480103 315230343 716138060 997899651 392580792 96303149 748235509 191071990 875390052 945558304 879123290 105993827 170125223 145449365 611928078 103402618 478363437 388183417 283995725 54436573 298175050 851956621 618642456 94327129 406549205 845625490 971912099 682869762 565771162 444285188 86848619 202532131 852846331 947782317 384293659 645276692 915083456 835156053 795955175 737280701 397025954 504420949 981093747 73765103 808776346 223189635 675039453 406094021 313464629 270716918 816315329 959782713 238226687 873155234 489182525 765173559 97900325 315398323 732824622 568328402 275303132 198480524 34440904 573809484 328159197 105173455 663035196 128261731 163703902 186949934 387031968 819106066 645014514 627220583 135343079 685262817 823649708 29494289 172221963 423326041 519950442 689899239 486336366 49813985 402908107 239329375 117742445 199324169 856728913 775933936 893545361 703285507 794932430 881984943 644714867 994293110 922828944 820531210 387775951 916878868 998029026 168682245 341713433 376994818 592695762 399167928 972682853 102035729 137140219 162925734 944470630 11656650 428055957 54195202 921280980 761556401 69863686 826325708 602371390 794665573 110267983 152605022 976301866 976833329 496062440 442266579 730817246 681190586 534203626 636078186 554282169 480231037 402277118 184935291 994217258 96460603 930573407 992009879 131146814 139121327 62748919 351902611 767586778 931229332 679498133 112308340 488655554 956584502 166722852 610183881 652122406 601617121 336551382 838259150 868552831 179014521 807888543 520918300 510498943 482200469 112930884 651535350 798067701 466858182 862493495 975300819 654808137 286366087 347062094 823669925 526328884 139911277 301565786 752054446 936973983 833254075 291658897 415201542 129713198 82060358 31580465 891287438 558537400 562988415 229449752 848137408 502542748 448223752 587848321 105448565 533662485 48004464 6225456 11777404 596215498 144278579 748485916 17455292 510709040 534929027 819850193 485337827 138300968 382867765 308100459 237196463 332659587 988301975 937395447 64217425 193159896 236291590 65612123 242779210 741766470 19676201 700967830 410804506 92606663 723823382 748372965 541711119 647866499 775100453 280616468 509142239 421637059 853142832 943437497 366601303 33318817 885657630 635561975 983900295 570604783 321446451 617417371 802066584 592159049 523307712 644931533 270547199 479177479 495768291 657501042 993947155 713272537 87108447 313968929 289430078 873993172 117558921 561564224 346390542 950441985 858345459 520210 953860843 265511785 719776487 701493161 971486355 653970132 862987874 692842301 226136689 798243305 640185077 24284397 641778352 165548346 652798476 638853814 702841521 93526381 98358374 51883488 402096593 587686882 130444974 110027411 857978392 36844421 536093904 384770529 126716784 209010160 853489760 124985842 182581952 906594657 706565930 192780445 210856149 166663497 355410091 223882079 845533961 565189194 636720381 262606743 361519927 800912400 317442607 919044525 851560636 259515111 815727403 859876977 721250309 67483386 59699652 866863790 37156162 90310398 114736769 511893918 577429501 374464422 322190916 505525586 868980143 306495095 594851139 809724645 508102942 522462219 753049242 399748195 622472474 744017307 65020552 298878985 74760918 327572851 834215591 314130996 750162076 157492531 838408116 696864786 50870900 60562087 970612858 177604779 913070026 350544170 781572376 508984507 782872925 647490843 589724625 840203050 244158410 437697767 664987871 667262503 898872683 86467416 671677151 805220373 244943069 161650670 780178530 865597855 61501449 622135735 177566741 822130660 698863778 744386475 663766486 425316698 617458525 649016123 3837160 618334775 181109808 72562194 561445162 849347190 923376011 514009476 253276922 702243586 762932558 468970088 725073196 630932913 635949394 609571162 799467361 931326527 156406584 455871713 14615822 253199239 186057258 256920317 676124804 432377516 715285257 32519045 145059683 615775775 628106398 747035917 871397498 918745673 298243384 589366522 513995755 395029316 241769645 969272471 792329883 762655551 446862605 326672928 916864858 872876821 998607485 559825541 309286981 651728917 335948678 623961413 181155883 983544898 420294770 798878112 798686776 840135379 369654865 179503845 136063623 253357695 741483800 752489463 603961640 206762231 977575751 857220050 645971980 845703581 143963498 501128403 190501625 59114758 263655153 96639771 105540221 429201853 227458375 590110888 937796932 973527338 191372320 257073030 741094270 26682929 819166355 383164901 804000590 711848303 35501603 906805216 509312956 279442830 638781958 436311763 934010855 372538729 449696887 646683004 33920271 308970209 916712726 485825529 649638699 227641094 293639084 136502179 571282341 439047918 600730716 391297644 837409030 420014477 203393479 895070076 860126961 152315413 482770677 213264694 326023501 122658126 601318920 881996257 235609248 787966925 130620421 523431850 971250529 932992486 254838540 563227781 136359165 928151235 398512793 306364143 476438676 592558744 229939505 143104111 233356971 411138705 234837923 124213663 789135444 646479376 604033667 668945084 483864289 345920509 371541708 576586565 541299309 647266858 765397845 570695645 999162955 253972212 153695312 690119964 738979150 424323772 369913300 864331320 652913366 771156894 915360355 429069567 42303633 533442623 314721875 824465151 995470703 860056760 979670418 432389727 289316682 31703105 643543263 908417386 863203115 55662921 821387849 936071536 648559758 346418172 379360238 404205505 860790395 372534957 291957478 188254411 307339998 635657163 327598375 651286384 23375559 419378118 299987747 442273770 49033022 803393959 254994914 45727298 377564199 720053569 814595223 889222882 704778796 393014892 821174702 473855560 311810456 71823147 669763727 538349308 662402906 419372269 950815470 204503584 939834484 918290994 296205276 697350405 393673812 819282011 791572049 662656130 827961193 727693475 249781521 479788644 371463658 535240382 959680321 709337538 25103743 689617370 685239787 624325307 681164750 829480372 134235020 154331288 936067256 16661649 245725890 240490912 429086575 181342857 160222543 379861563 233444317 249572530 330408220 111680760 935944116 571119264 462789455 35314107 14152225 523693774 288649240 366859600 789524464 739833743 953266184 19591490 65787321 598912972 31497815 475327589 833282799 856933271 225310899 520453951 914964962 71465328 300239057 579367593 458930254 693433734 366688093 663729781 650167951 14585856 168169740 163741630 587031703 137002033 543913627 221028029 793956020 432688156 20706404 469164380 650972403 792443353 208408395 577635197 945650089 714371662 93197347 270096860 255142968 59312369 864651564 311706164 21268091 395011878 117066369 266562577 890857322 209926134 373665555 926691106 953402740 159701499 195167002 878433664 446228293 646293960 168118108 18194049 861583246 816111097 519605717 812557933 163381880 402690718 370228013 357494770 475810277 148957228 374515629 248636933 871323540 186089890 372768680 429068234 911744816 50661874 65597006 953050215 993093669 344891242 172499683 538428677 382452685 701520229 929329743 977858167 201835441 124698685 379573611 388633562 625192669 257658623 17322668 36893888 450535116 744725716 997216695 678001297 909820306 995655177 695395214 611402883 393219564 123887241 931151446 592360632 429092047 285061084 36046917 437245613 284335425 56034049 592817014 776812404 557578959 791081383 946254250 918274305 900271072 960061141 66053572 489445598 870814581 823610707 3262792 59629019 839460167 931249301 389637603 470021848 330754886 150197283 172833684 41452008 445835832 699587385 472735396 578954231 348342839 311447116 984534982 695006323 347367424 372346779 428815085 624346764 192758855 78381626 850492413 975340850 620175367 104842833 256593293 771001992 898515366 507106593 643347252 36543664 217179301 451159637 346454165 839008901 863846194 48423956 16222377 388565820 277371467 855571007 219508549 856889300 119546685 46056077 168863194 695410649 776011182 391116843 158890169 858091736 561468029 610140374 758691839 612582805 913558651 896292946 169755206 159694067 167324373 105028284 461581301 90015750 585122222 767329468 681339251 247242000 914380600 652375614 792401921 256006671 848606880 576589240 719234625 217597318 934596040 638051173 593178209 782603972 607610040 238545377 99625313 950306824 493811280 532635198 371840119 263346947 118923882 571099095 6604381 669073498 260948807 848578222 604112048 12698550 51482774 338354551 654866868 262738327 199489603 687754762 883329973 315459098 836461248 69189602 340146079 18707323 325135683 187101234 267678081 602748796 139162905 318026648 428331271 503568705 403222420 6509519 571663845 248051998 378727250 685370193 833097931 537719164 419621947 417271310 93458116 16860005 346989634 689082867 600427986 560595213 227221855 170956407 166441462 509023754 793406977 169678567 113924996 385157224 281656971 280117864 692787693 691003720 694839483 473813609 834158701 29628998 574696371 605616444 45239981 497918067 774872640 389849350 343817976 409468610 490093193 820206718 830758098 569805050 610261347 263857524 137085697 559677145 690169125 925136877 996165724 45471182 527670548 687447621 363953592 603521523 484979105 668760226 775147211 663709369 579659332 590197681 540758449 331953358 174600387 767919482 392172200 190653914 595319767 721900128 219636458 441981219 104132408 332395267 814929394 827764515 502144656 989356034 217556507 816068433 872885507 355704776 76882209 765521660 933149715 615125265 74069401 322123748 447878419 565401202 156606683 450822447 141982144 665916989 921823935 283463519 195979425 660498428 280274565 939861093 983126859 900577751 94880864 359438611 18605762 624891083 124078333 383574395 746960523 315693329 542339491 444416923 412010741 93779278 209532689 568102887 591632643 453161419 588052971 585258822 670151828 987609888 380336016 557518804 538833929 428198150 675999303 997601018 86909782 381235872 496830185 348672091 640047467 441217921 938754962 473854488 689119757 106028517 103492455 27118751 948997262 573209419 827244229 719943354 525808316 927867780 290474758 863281866 483210063 358310176 142575347 224406025 324589087 940406530 400886273 332023739 886379151 633680897 466905115 728160041 522872869 419968959 801503997 360473350 913510534 987681611 298294393 137186245 907327242 704624606 730152543 394665107 967393454 84768353 423267068 740577243 573271428 404081043 342851042 323630480 38314307 295539754 234130061 199699985 999646721 785808738 574777013 720291014 826426897 497509325 960238679 88123093 380188528 605791640 291751336 190746685 205143408 511538423 867995866 758632022 213957920 703664794 21858263 196232477 49152405 317454082 571973359 639837907 330515235 814205506 11299308 454854143 468962687 300887761 844661462 52325148 570218727 968173010 156858236 937080951 309535151 728945207 596819063 471668958 637388055 357691095 142438079 486330448 512556427 844885413 579591269 818542793 943118477 454907881 315285568 824786254 511418854 716175951 472253448 371403201 637023874 60102348 290973575 639821473 384306701 398126363 255461056 173523418 453329957 784447268 959282634 789493665 759551922 172541071 14578701 926960618 343368674 438121819 859750205 572887752 872471915 655708293 279490755 197423884 776279438 346528007 266005536 332496981 66643026 57869958 302468199 378666282 483485232 427597245 3767896 105935932 320688960 684685868 632351336 566303559 457797573 194260468 61335682 842947461 577035963 450683740 124782582 175994603 161141021 926504006 869192375 608644574 431998046 471625345 742835356 857219458 214312424 52244560 929928440 461884108 681288465 567882029 952332287 617053816 31187680 32701783 796587063 347511363 374243494 497277607 345035534 440971651 812915989 335342013 490585646 99021139 219080254 362772723 696554978 809643479 693726836 29008457 920783979 387665802 832308486 259087604 702821850 626880306 269517430 27668024 107179779 379977163 523136956 527575857 255447101 769952560 182421190 100681783 485480974 411726105 605775690 419811034 902319074 890714043 606627770 802778339 623131967 863653001 291710231 451278824 493726780 319177740 665275133 139935768 736493150 58834444 587366366 985095810 459907284 600363321 990448080 747921467 291093360 663531845 83558976 947598201 935049700 401666826 327314799 375965308 741285571 29615690 317518188 387146077 581148075 101268362 574843079 220424760 279778401 629489052 234423184 254726235 99245868 940768318 578856264 904642449 250946592 37576866 286219450 133430857 105608308 230878642 756625499 309758851 232557000 47333175 968498054 253668656 426163708 352916889 297350192 453335791 152956225 691057796 682984927 871108326 37328289 818692072 365149988 303209206 836888349 783152332 778415082 148752498 71785683 5358022 512428876 216689441 140243582 173267895 324248751 493780623 659554937 670131822 681027654 200036471 717195329 431080391 559940798 508799480 890252148 609375393 393964442 21270383 423054016 722901265 249864476 533975670 960721263 967763773 124466919 702291082 308969616 881913507 402801017 61520538 558093507 803527580 85737595 201615651 550131239 336847892 791172526 671572457 797741752 941531240 485535997 39786795 486302823 659506203 499877726 118566793 221233851 538672102 87106442 54422328 560355749 728589246 874153993 118975996 968104311 928614071 262638918 708695536 205407096 975011578 808796358 961740970 403597905 129760328 260174880 434604575 666767219 423400939 154247826 377598454 209086674 647164394 760233132 697498055 318087480 178275095 550760265 418246035 336881893 530010496 739731844 957322015 85705963 355129394 12117544 820479516 368977069 590822770 515890549 923979471 427705221 339502169 15193804 141350756 285655964 537049330 812159121 566324363 251774679 275192209 815252774 636880290 141367616 213620096 329202653 557703329 987384294 775964825 682963849 28759627 781755116 965191352 422518786 264781343 482929278 529839826 574802156 447888898 195323662 162698523 302022560 211891174 281855733 802565974 428148510 693695835 943239376 805410909 483171079 31033438 564021812 494406663 971660672 167109700 353969530 856048123 662173590 148400887 995998943 783355844 244642154 733484302 266353894 623995636 692655220 290155480 642267206 602380019 438998040 38462859 994414495 700264882 705909154 327993572 541108179 105777088 590536208 470496859 64450719 831943155 880358982 62950466 840389449 72929448 601433327 402665840 396375210 21085377 6528719 926909703 431618814 317698633 126202436 186982763 132933920 401282751 960244106 901206838 33215584 796410590 947128481 687247156 409616419 187215 608738800 21779158 657843209 658856257 33536678 460323460 319652399 192748256 591712270 760346638 884060542 86131305 864985301 240467110 217484507 562840607 299892653 575198503 951310080 338381791 602427810 44352385 926277297 755374975 969211147 340615028 899122003 164308860 593378657 774817941 144883049 970483909 504361726 235303730 203142359 613602055 742595788 274983134 65143057 746141977 523424582 809352626 412541534 259949906 517861562 709906698 801771784 718164206 604779610 33046556 674711876 905304650 453822509 423314819 293278787 574232886 887855833 990015195 268154356 222114953 617700390 798129430 727932243 226014835 449805262 644944096 287210893 717736088 349565808 73465100 237695505 962304922 809641992 733104739 449975399 449568768 214304418 974680951 267518880 968802917 135201391 944233278 508884382 731347078 454421601 180306710 990401403 917782755 677910492 170636328 969666169 788605086 423121958 391785451 910000450 518556294 15965813 198260694 188609495 208231945 778372432 916456102 292581755 420830082 489528636 108204052 153067087 446605946 332738957 572034868 697324493 89856433 441525470 745332846 94036181 350046710 521420261 234359212 846003154 96779791 244184317 495144492 526124440 218959747 725953643 803626592 640850288 659506395 988096065 86161550 996506282 252722366 364378165 548624364 641069559 674083631 320989427 783274288 807889318 636900932 505619477 674445447 856970244 981273807 504254978 237826681 392257277 868298328 733474892 416077342 250427489 703465547 50179081 907254107 663954633 885680456 767103078 625244304 956840854 10071572 85741663 604902147 113106965 483814143 137801885 305978004 313239384 885392560 307536663 833460944 608403468 104057851 234447727 954675718 535658909 637281805 263604316 826448608 484556671 29474027 382845983 769415738 876240182 143106841 43535106 755692269 373942766 737426368 325289432 912495456 817859392 721410984 341468609 211770117 304653600 864252283 106993926 957068705 443464882 122329088 431222256 955826314 545372909 484524732 423354224 212804391 611769368 563529231 462937229 543682937 826660287 23223204 947531252 693251557 84364350 697129211 154268620 721993881 51854347 208964154 445283526 608235179 689078908 619285886 723151536 67032001 546644186 802005871 62307541 209534687 588733217 446008467 760470296 149186007 278058541 583248796 608384844 471144645 106201953 209450607 208524464 436623317 354458616 206459179 722530730 679349703 349187858 980471791 689587415 469724478 733964262 266231971 512105707 281492764 852854737 85333222 757108975 659550486 578974793 116230741 546634172 143401865 595056665 219605371 833550013 251376147 55239343 459994901 685058597 828578896 120009459 624985368 301093749 821791710 881499133 763989261 819029238 87551956 465167134 136977002 800317673 560731400 318401271 245845852 819395667 222980404 803092238 168465402 149476783 176097163 854311331 606957593 157934737 785455777 192894308 153522459 749299418 180060536 787921816 940374333 711466964 221003463 805015605 761025805 835523705 545103225 406046789 409450736 849818217 838788214 600446448 103570884 704206095 989601180 627925655 319044526 399579459 849253955 836495969 327778234 296183426 944995653 677459262 543173791 980812537 616385569 214781796 676588504 572493300 735056572 49573016 50432142 331598564 939927688 862587724 959892160 370555060 757429037 898106319 506436804 529071476 833825058 956466109 585320729 962596595 866733694 271020308 29620340 896119286 535333312 257977836 11087613 188840413 714719569 942374427 448764410 633649265 706481579 362169268 102718323 635595716 973221254 330228580 132468462 27519218 846511659 951592501 885007378 664655783 571998543 96537717 701507184 955339 650521026 742947279 373387504 372469560 838185163 770876999 44545214 645362446 84384823 244275666 73330044 29698699 36166517 76840611 444503798 959619155 947636663 825097200 656187701 870575510 423873281 171979199 393364019 737014557 163368172 995234441 39028165 460011505 326156560 268409281 542641966 786755450 278773925 964121686 834668725 334961870 66770379 72752455 130560098 872864551 766845586 944349294 800435718 37322598 980791864 446136012 344231906 386018502 899667215 582953842 967470193 954330219 568535755 592716688 432460467 849539305 38426802 341573177 727559944 202165238 820643316 306413698 248645937 398099266 755708708 287537617 364583019 144105839 830505662 639989758 870817310 213222171 103745722 496404734 552751754 297101354 102705681 711364699 501234652 579396940 624238346 466635938 568744125 858324149 35754677 678151774 296503347 365162060 948943931 216193774 902554654 387120352 208816432 544120794 735987479 947206240 284312130 500077047 967540597 260755095 514541185 575322340 969162999 696018907 50363074 503247921 920715911 804682124 378057012 263334439 465098986 209755596 486108717 289390747 877530968 450442982 372278527 602230442 50194405 837151288 716864187 743477215 860789709 60050327 592028704 113420764 434952297 287226599 663765870 305500832 316371406 757828662 117603545 119693991 540609637 867735957 28535221 768984371 239124675 697732596 430588071 978033326 414389591 76076251 732625046 5231019 190695027 532718162 62679255 13401102 666632799 749721199 918609099 823102474 982335901 415880777 384545613 368344384 964607351 997475330 965445715 746779008 206058569 484728006 589666331 439922404 484234499 486836113 356180169 380768796 142645300 308164729 310485017 469486818 607821844 982100186 122294654 78514749 281895944 103637178 951394149 58498376 560031794 220115742 453849062 336292672 327829812 691823102 479027151 873613686 413348821 883734164 723765224 450628359 297634184 102936157 329809723 530310680 174918064 129310925 248945631 971410677 314009772 69467243 136010046 196298841 329474229 637992466 10783716 137385588 22587784 440886111 529811447 582794437 662422415 341118909 737150837 988589053 631377946 458125791 146688898 602996662 217180602 357309042 388740395 503204438 784593806 612469145 390923879 68344092 474578975 68566737 318399400 68940469 661002169 847158473 569052353 231796212 500826755 494752179 718905613 64421074 539675754 330844272 921994126 572420917 403983166 943640494 910082845 21887889 984522463 342654852 826090379 158485272 360416179 761980447 881852898 290566245 867739172 896051224 609929915 811060007 609375446 479107660 491698861 531439984 324441244 534300724 31829751 913356521 624198510 60858899 369553929 137352010 799537746 910507053 753964517 817517613 211763206 224852858 412709895 662023372 982269895 51294545 619937952 798261833 539148372 213546660 785824779 257298247 621186338 384511492 983029483 597219305 813783101 161743193 610966247 192999744 703428 30661385 275246698 14745740 504453087 777162213 155310645 297003010 949215766 282271273 876171320 310755779 691033195 811842925 845075404 246000993 667556425 598204139 224480761 629157257 611726224 624198744 263131926 470164369 238197790 728659611 154356944 19681790 258099641 898747808 110776655 299215125 543379893 77334736 475836769 279432206 186198815 248813613 470845197 327363785 331347272 165360248 451593414 330685615 326411178 938284198 81861682 208034383 81347107 64868685 508635110 644243442 202052593 83080717 809281198 53441003 414297756 928932306 764497713 617947437 145959734 287594903 333445329 629714932 594583391 295152879 523596597 277293018 898082286 560116718 776515692 732770358 562758880 677308012 876121114 295382499 904103943 300483692 948107623 600712455 313348195 656712598 423444475 922840225 672403521 641548665 247360819 474223044 602392824 616115516 184636129 664771451 72877994 916860401 707462923 481742238 944568350 545983299 955858151 659733265 115836643 354472685 778508861 889883582 164793757 850505504 678005679 320999378 154330666 238564456 35346059 455783551 952218619 113840216 223973977 651856610 127192040 426792041 374385286 280682393 600743668 410287834 412332153 641266951 633207247 570459599 36388931 936034578 556226834 581336316 924804939 812389747 891016077 177315156 699608795 311420000 497002804 65897377 828837140 897273054 611272384 504157956 973012393 608252748 516858118 575026086 252455912 468884568 529327335 857487180 897533412 382815427 605443149 614022403 472500003 884175732 170085775 909914762 398833458 11678666 686592516 589799597 683812929 774921378 949287867 789197702 740897639 837221176 496625901 92161440 175455216 465656908 42155139 250735557 693950916 293661855 474376407 452693355 525072049 589607219 46934418 842806905 996001445 203695397 543632357 962991468 215089088 940565381 334004879 470981921 668127920 335457416 104868521 432386854 551344956 42063108 962537039 710159715 471099239 737583106 341066220 68412425 429345988 115690490 628056425 713392209 352632536 162832396 910911603 439696220 104839341 188271449 634546038 340920884 262540047 421904746 959156577 289370448 804782057 9277382 42560395 659341344 996396858 254701715 112186978 200014935 924938754 593661793 275809869 382954368 892958944 501106468 875467638 389519569 765603744 272550173 78521841 774074587 368179149 327456628 156533646 17299800 679492520 276204781 159535642 307950517 303341254 568748184 848245417 875011681 483870895 487909740 904617104 924831580 386570563 688748285 278108064 80462309 127733679 290085086 882014580 560373087 426620621 234127579 551711357 924089637 122273918 168731813 159515818 846246522 705935838 905743270 11353534 91314526 531709924 369515801 12694739 69951118 690894093 280866256 434798751 17847923 134739628 544144989 760730258 1292194 642150817 115570461 135823422 626219994 441522456 214678548 799653148 704239602 875710332 652074542 937221292 179637847 863419222 140044506 303033555 787370973 328676540 370613534 146265933 313767508 924441349 321757825 599385065 998454771 304454414 82901462 521651886 13755000 891869033 548289747 129464454 287665484 411573626 828727878 892127337 807513389 498744831 327700826 793103671 333612394 591989725 691068959 717803893 219409536 157887780 30318967 717487028 113739728 340239899 606715456 227272988 664420133 311321796 130994299 80704049 909680174 807791141 186317928 229692122 511511731 679994609 396664123 199644664 832595370 339022299 70215712 629713021 241161991 879427150 723880392 163121005 509650157 24708549 464282066 306154475 229972595 985974944 851167353 377592982 366725980 964812088 730244146 493768010 606981338 518670624 887645816 434246745 222651740 185100025 685870834 511989164 47214655 457028412 90712583 49998010 967232618 416476694 935857998 235777333 989829366 767306544 554666989 685201602 887187180 348087638 976011433 136228640 949542694 503172993 606187750 781464564 277652335 357466160 963501225 292886755 979313939 329967929 14712259 409820295 234379707 292254189 970275833 251307568 750361591 637172588 365887301 169863647 765796248 98579330 598424356 951345472 606276293 737602901 132086630 460988436 560151550 44369246 139983159 633725592 700436622 709007643 602466031 343881194 34443800 265305440 429081283 544669540 426876665 50851543 390837266 133893403 276967692 997912349 406024771 45971541 379792198 766742363 133792088 943646455 860307551 72758706 53756462 451517752 220217215 935469135 480154794 663293830 573983900 794063220 87470306 704353507 992296756 30183579 558916227 166944645 195080146 221808910 836934967 25064420 73114613 521439281 189082885 269903131 618554702 113470157 628288488 100478890 233129131 182439625 285824265 602263177 23104664 496556181 690019360 858798152 99431358 550094140 417602787 889444596 388763053 877309001 811940258 14126972 82534260 67896774 152288162 275167020 134698952 791871770 261274461 419641895 853500892 537092149 270800471 295317585 874759292 224337905 575293443 316968163 455452272 736795210 679891171 470812074 605806102 31955862 248323120 378315480 953812030 459568734 456887778 478072671 921711254 721000773 157737830 684821158 421086292 40067171 319569161 825803306 658555646 170332475 176063066 89492392 440852920 322298077 421248832 428571631 713414589 655304644 842786023 703096509 131903960 830496189 712572347 936835748 344588031 309957236 999792460 509440357 205803467 787107850 721325078 953210521 399902634 606099141 604234316 172981336 457496298 319440647 968091684 714892462 391508621 870795758 586915161 951659073 957184167 796487508 533062766 137553698 737553078 619797857 185581812 292144657 214517959 283690523 328615758 548577447 284668985 226321674 756283235 236392913 680985133 150890799 666819947 710753322 650003293 632227754 19743856 322583207 875776990 697648752 517712366 981502301 508774215 855817576 128947844 179239715 617871374 395965579 232095705 98373466 719996746 873563547 868997817 228131100 431872649 851363840 304975133 665942499 751375075 705708754 632944742 680551719 488756225 124943974 648122936 377947574 433825428 867572163 67999283 304441865 123682779 142314392 422416267 647650796 573952897 564978186 651150947 408133549 516369923 679305027 698270470 187586269 559690050 852200180 86216807 541901191 315123249 111952991 46216847 181704311 436639360 132931499 793787611 605658612 710954760 641956599 232473767 885146882 497130952 221733595 574458264 106910957 745124490 858087980 413661027 433487842 735518420 35536224 611327053 787893082 388397516 266982924 560720117 662113357 628956217 484264302 713091403 16772848 316521093 437272886 794095745 904836497 336994888 314043804 904418859 793725921 221556121 378384325 510945496 697083668 436040734 721917659 239425725 729780409 544087272 864795089 200557710 742288577 576844071 393471092 17020617 168880644 664033751 867525407 15009314 329551023 881815177 365614358 622975485 401524846 694613298 630912593 500232321 8904081 319012505 452570700 533868202 910345166 343969644 688376967 310403176 149311901 890627562 421792897 843234612 612257609 513816133 485141647 342603072 149148680 475803174 94892837 833682325 662189219 152467995 108484717 361863024 360996041 269810047 90211056 91996037 722266935 924032836 163002458 549528954 297400718 882376643 568938511 102025389 587777458 880817669 69069280 567045858 426654806 603017367 349994844 488136597 733382736 623652324 864316621 415364935 994872587 645780460 373537009 775254704 550973457 579253453 165136423 324694101 984331625 893650712 706584140 778554110 617916171 615696199 195672777 446124078 252090423 993075550 18619255 159342901 944141473 464844583 291835106 899768429 567934904 586941254 155944320 118576962 466055311 518025326 963596385 169741558 187514695 445252323 784878829 849505654 862780092 126583780 336188393 277875298 341761958 340513166 227897453 932369326 282499999 433589677 643895656 902722718 451086672 2563131 104505934 23300177 821394205 738425995 40147797 608009444 18703348 735991298 968304560 318195990 491614841 33291903 931718434 696449943 838517117 682087745 225469596 567720839 872312850 55321039 556437599 597610608 841464252 574464845 186409842 529683153 190137922 725638002 712948192 330705440 737210408 285221319 862616451 630293668 414206173 220721395 512287618 794944065 203531066 253424452 51612086 293572829 848988653 384497313 380489145 973625202 735006647 297439879 615535874 161952300 601908708 901042982 728171052 531197668 930060366 730848272 386391255 983358676 642477220 823242919 849983942 191593801 898933649 568980334 592642689 96990405 670608686 296724481 316130212 720537509 894744419 471651443 557171751 59219713 285825001 194738527 51110260 959201353 57272010 945452773 747089920 123378564 484579586 110734248 407371313 598766221 14385547 373833322 664606180 265701329 503803789 111524410 401646302 344098719 464664705 419644036 15936108 535231815 818127247 798584649 968236207 754903584 59538337 598828097 290693483 595843598 142771430 646636285 924437901 110586199 346010921 39706713 768312064 130463958 563370235 820731149 215070860 755038823 741728866 547411972 511508881 953202807 487821524 565618165 822534499 654320967 692677261 813820364 250409317 59697557 1034076 538861945 557604567 136091967 649855939 349647916 406846878 753566251 106373801 544977287 70475422 502572458 444239904 821504335 490102316 85482936 184661974 832000101 852995847 422595220 713871497 82929175 177422139 606066336 763382685 159673436 946542978 926911234 10571207 838533184 142655365 297649301 159018267 292038586 585543086 137965622 426237751 518467337 28612628 843173827 481523039 301668287 717110508 417328239 563676691 509513778 707775382 955906900 952838905 421796049 765964987 837259143 623948764 525248776 795117810 645219257 83930531 347175744 265359697 52852290 850708276 704362605 964112180 72651559 96549921 382816324 920734403 840575708 226266596 249879487 251778132 209784769 523220949 941630231 585232577 780643581 431038814 268506389 21533353 719488489 374876116 730236203 985822054 835014131 325738396 290589326 57914316 535008345 781314617 699211222 962024541 102034075 719238293 77821456 385249526 284170988 999197923 759332546 941368920 174404351 578575636 105784777 135232279 899761791 565184516 138450579 692670359 61800723 120256759 875542977 721209092 596669829 846338208 811370042 497946127 396731835 785034273 207368563 567503688 527431090 675819317 704970039 861003295 883447655 381342923 829536472 19517472 208725079 983061485 909676593 7218185 86862208 27469157 87372704 604437720 330115275 822473283 789589024 251985431 90233246 73719797 696949039 340058999 939802365 71412153 940641294 407396814 933211282 270438217 823284719 103800729 571932785 981920034 338974907 517416731 878076365 951931021 735071364 359680098 484749936 148063033 607317852 669531074 678684616 311632879 202955910 86223388 420842336 708925828 330614407 851530926 788268697 22113914 263214617 857552283 608532177 556980684 807523178 437476213 26137634 702473161 869950494 62010430 395140521 995068009 657878739 312698375 5061073 854557712 110695356 703616308 422136708 493114008 985275117 921473786 180926381 234372909 645375020 380426045 513402892 567638283 9145107 909182817 993124496 671101639 698184963 647608741 481786801 207840432 917992178 448444071 613380147 744644886 954613537 740892988 187513331 462889959 822530385 654733099 221468842 719112193 3181239 297767918 801778681 378887825 235326507 72426609 592139884 550202746 195680845 372627114 15278860 702851942 335904250 964796502 833927690 884472501 991035887 640856131 233142471 766127568 883246379 25735016 44478863 652333971 793209960 149165964 307951658 482974160 312774811 77829341 393389235 200232551 458782383 801535104 683748623 849960678 480379219 48484779 817305460 736278137 760584057 855566322 516788009 486714744 389476514 158982397 20231608 248925957 868274897 442137295 491464210 790903863 558401694 663563319 456642444 558888977 680548241 997290649 310796713 317775835 510577053 627270941 397905327 134465520 833759740 783314057 19424403 204885294 455571383 438872983 897554146 793888385 100487246 73375962 678993589 130693700 286880232 748164983 383756179 281105924 186356555 879267698 357666733 515863467 644126157 331127192 915049340 831028306 643771866 872790141 797631806 458796865 197620797 583060468 249104416 307329140 413047468 830535702 964941292 727366595 487134381 638487269 951597374 396644383 167119801 39812146 74512321 82815760 451836278 173757381 694350679 131173730 688906186 502828923 638127010 720343802 323275167 568873333 428549527 845030435 341399003 943129311 984721596 919229388 400996032 527300180 101834017 567021423 566238601 729034512 917328334 399635977 721296281 164002091 176263626 726729946 231912365 405123220 209695394 252200382 84042736 241603585 689852351 836542991 76498445 400856524 222610712 815067873 673469639 152497605 595054612 181457007 734239830 570080442 842211244 662383801 465495689 423371431 946089649 450105641 552342239 870244073 956072982 304562074 224740582 569304028 128526436 33802441 215415628 209571345 515304510 382703676 671381314 365940830 960208314 744272884 560158006 222948009 779507597 373385135 963426187 151760427 574631011 20804234 678837494 947390410 281447510 101005685 490714907 194037855 506309912 450407171 926084716 973548534 715779943 525383998 60697862 115298449 46676701 377083280 777029119 834229417 363431517 182288245 71526095 771043671 985021401 571571179 478996830 234311425 215967921 613756571 92740144 623952973 282046016 815686684 174327219 222228066 225221143 638023319 209566692 236197434 760437948 388655738 268328413 179756339 223803067 347198399 107072643 814890975 47925206 155581100 949338595 241078529 691247269 572066128 989906526 281207201 418030648 57332492 481464597 275732127 911566127 719882002 251826128 737682063 50326994 298253994 814567914 737521159 266860509 146662621 930562881 152142559 664194397 151878851 220177295 413810374 390189130 525040571 45722842 990509891 292775693 332291876 235533995 179426391 247024126 200871639 10380425 507849007 171307627 725696259 31850083 622090633 485459972 225389214 406888796 755269205 887029584 882450236 19062687 481167129 967251076 448036594 136195202 71599569 885883388 589749409 998514007 247419412 491493620 40803525 22127886 200495746 813365657 520489698 174187726 608239512 807828946 481378530 704296682 953642445 280392139 824297515 218265688 279930247 141622655 502043957 454168001 377862487 479200477 439686314 904704899 923667402 383656547 983737539 625985060 555712762 961109629 718153734 219451568 735435232 644029757 427929055 167968355 941929586 382289485 941216089 410882308 665820490 555470419 94451530 971443757 379110640 927145444 221016323 574745927 640027449 897401551 503021590 919831183 823641301 294486051 484514788 11841642 110272161 60083036 995571851 88315217 179455088 608215684 532879632 838517023 616344573 928576455 982104050 350620090 290235768 790444493 790834423 724407962 681508993 253936393 930076805 585427949 34113196 468455746 602638178 576201147 291783480 311095796 781643931 510849324 42314105 142235156 228852450 198226581 512196754 386309292 494014582 25149633 104706071 968958973 464845398 391111920 860012936 365398571 434297632 317906126 224333422 42604975 360080081 625720314 463138848 892178904 559951236 781292439 453119871 670533960 441946090 533085316 521368050 390416824 235118516 676287522 523759961 154911481 18821923 977876617 766452510 633625570 456378647 194117327 828201139 838817962 520853777 647002775 827893902 134701207 520272521 967180794 638464845 988172749 226937715 344333919 314381191 247671756 444868539 560779159 339222765 925775099 665108112 272257260 980832571 998360310 728626306 62454134 859525631 599137656 905836871 545303994 333128900 502834033 102394593 8282885 531840431 563883849 65873823 12821854 813986718 882870751 459561358 738394708 558367233 22397873 359880407 601178244 972099476 385752400 627809541 186520286 271129477 189195102 223124743 449335955 333750681 198901332 317915210 58970712 58634972 647459430 997200434 653465546 965670358 535922370 943860986 876677614 83838712 257704832 108198121 725294209 173864159 647290601 98775348 670546403 436126506 16784674 65173894 788338964 643281385 573767405 612533242 347329937 951283406 283142579 313605023 936582026 646944293 150110605 666773329 853908400 393309777 307780337 241278133 327714923 450426645 66727302 128368509 577204152 965489795 698122142 473138747 287638126 400920251 423865266 399138351 950897031 347670199 5071398 412256027 305244517 703701595 45857702 317458863 64625479 392874228 385309467 911799506 351998441 330708333 612664006 599543580 321846371 273074742 834410794 523692836 448798924 846983471 472123329 593529728 251155981 234762794 654318804 701948474 398357509 580774901 182265939 441503112 989598778 985648072 912069152 452613794 867498664 189299478 960262163 977308787 426828766 537500136 735936993 259139389 758374581 547015607 674073702 961794970 203669167 3260 407234847 798562122 782356302 101134707 503352067 297378014 56715723 39855191 570520707 610077498 167753007 470902156 516308183 453976288 60922108 881683757 487117 997889856 871245128 181303748 398277592 633324505 482264627 187081420 646567128 457206268 97225394 799472457 777840141 884095637 69480963 759364510 514971496 141864781 18568487 841499377 325975945 851360015 420129384 362285805 352834168 55373935 46804098 674848681 395049407 707273183 745735073 858157372 651248991 472769484 702201056 990740748 413838296 701474686 728335039 366070178 181681574 590755518 840821487 392452519 726874642 52587083 365540361 255343995 537036261 572567431 821197797 293339916 700097676 558613008 189679074 161703349 452398652 589290447 91883482 116364769 581912022 576911590 709552559 718079860 93221788 910102611 912033922 76031248 329075951 308348042 846511209 137637256 859125109 801121540 693139725 432702212 59226534 478138024 189496823 944912949 782194397 316970405 255628989 791961361 559892480 824454262 355577100 228030480 807275341 607490591 162068973 654327714 681555492 113094636 147697383 946926009 702223456 202430494 499161555 423217948 370879799 717176519 431154351 913765889 480539831 953950827 551063884 708627864 113520480 470867418 395850872 692700247 605094764 765992960 380810089 988409825 5889948 822188488 228680744 448835543 102474506 963063509 848941987 175782347 413519346 217929468 961373188 581078974 434747452 660417437 281605777 836766348 728347389 237802286 249731106 273608980 232591580 119333484 242277263 936271311 698961640 920779923 19398622 520401434 31398844 460839397 772403440 278445684 702419214 946728503 710356679 833189934 479831529 415409506 734221582 110207145 333049645 415402530 839149532 315906797 917224928 180435506 116907463 968257786 443093792 172011299 304339002 169138316 736426394 893906298 57847403 400544797 222759044 187381405 974514081 659682532 97017408 240456059 530301568 669708571 756560884 12366858 688388188 789922372 85785622 180640655 418352857 993073936 774558299 292687210 674356648 930637622 950180590 485976669 451996107 596597769 158594454 998665124 717022094 677707868 58970096 871021110 298015863 719202876 773118376 653354916 729514919 246398387 866771688 322155207 310838206 845814399 479374446 790944913 711577037 583652772 604735696 479460359 287382580 946097859 62460368 225282409 119656292 199250029 332489129 134689192 92039273 701644524 530169 676893431 828464006 281157237 134745694 927459950 380516379 386895716 680025174 242663808 182166642 167150360 55345575 428081614 232085751 643693438 816239405 499746452 617654108 921358636 991443944 407812560 16994674 697880641 662345940 226866160 218449273 504753199 11376996 808517069 870384743 305856274 622847155 109319296 140782227 983267800 816236019 474024852 986863140 884778347 413627312 156142726 814698127 10956488 674041406 863259283 824219665 889056458 173285349 187206728 571405619 830279014 435110315 305016562 192185235 125528266 646280307 872577362 406111119 134267586 37832596 317126439 325690903 446254995 675136830 46611278 754741365 221275600 716989076 416472225 198560849 614543409 797660823 160421477 217491623 722239265 725834045 937388863 147986834 388844492 765387138 12251007 310840876 266459664 176549455 220772281 486202521 642625841 160640509 733811856 688810881 407975134 511535969 787937174 848408125 172664414 426383882 27780264 726942763 725414723 871200827 435275616 98501072 991235 305355083 65310381 492904790 289685637 739085080 549632355 421860419 514972123 824581181 123432463 421155484 262731792 711141753 300555691 341943534 343579365 298641536 908366570 332297788 275043111 279283583 370301523 795922844 356492800 495451115 899231227 359209384 799096726 656684415 333596350 242724954 573126645 420190547 937548697 784709820 197666957 647121561 404857525 839439095 610823371 145220315 657957843 423694386 827817123 968361299 2173569 995721755 266490086 531422363 961260075 722661289 547576107 515712860 331924471 840261150 852921832 795958899 859100065 199043036 932635542 632285366 745579989 753931971 9028560 982924313 812586632 842108752 708161550 139656170 477209865 27569500 965499860 397376969 542761198 74470254 936438472 553345627 89239595 351484795 166648873 865414050 601414374 250328285 582549271 523578196 908062019 723485380 40812804 565819506 991401005 10280908 64119679 22521666 469908319 783522873 425395138 833588000 65629850 629418665 145542014 411316564 145498394 193950704 290698763 859231542 994605218 308030923 308192620 532745483 828226594 398656713 224579278 477604850 562031716 234621169 337861726 292541321 590887369 615418952 435380194 755052347 90325925 770717787 406693657 860380863 425737871 992080621 851648608 195267534 776703124 914053347 500938882 907883457 454601548 929563375 513532354 839241569 405927048 593402553 939029216 292625199 853391497 387412766 744831783 540275741 893899667 657928072 907277457 233050498 220417559 743932536 485715490 848252164 104803704 263259937 894412070 180108797 343144220 376828786 168624494 744410764 891962866 953286267 430825663 893098993 872624011 902493748 361059424 901777828 211707238 575779773 23119366 784038528 752715762 415739426 576718110 139487609 949671513 515758322 128951732 616245392 385985420 790456663 973481678 823947500 4835534 984223587 686475331 543695661 889838930 797608626 563013773 534194555 186171489 179163926 998093208 130205211 478858323 641360148 162727599 272880994 444821622 568038378 486445571 705889731 484442991 503498621 746020880 168120839 597261831 753293808 147265455 241089424 997846995 904628602 137050091 547096774 737493441 194057926 502481375 651895057 18206138 216687601 845369922 459981751 158938030 715250005 504514156 717143431 907859984 992878286 999348204 601914497 239157705 501394348 70896673 84802647 227362912 87042313 809168846 5600650 623844228 352786059 717867658 842907755 536275418 608016792 973160972 878914890 235955040 205943342 707709012 489545311 135678661 796949449 901507782 134122695 894416328 478193610 315069806 74622543 886782520 467452198 603790748 482271608 664791240 523011522 92767863 71991713 199605177 922403823 750621413 360124934 57528120 923543313 956914949 771182870 274627349 369339907 124390344 550578726 616435912 678226855 134373132 583185298 856552804 178267902 880417458 482894342 237319172 514424023 918644777 652028458 793294652 614534662 780193718 802911164 762713728 116966514 115935167 109373052 344461498 359379358 38566057 492972186 89884136 283982727 903636187 931136640 360846494 617626680 216462817 454927280 756558120 83816369 97125734 588273238 230830497 358432192 816281706 310295305 697009791 1314703 306148651 741649930 821277465 281470498 432264434 465420839 867136024 973935639 352755473 455965630 56360137 769460340 940063141 348617309 824215787 902371520 514890918 720397503 171603517 928967714 107781216 678897270 885957149 92861358 707173967 592354123 630745145 480219734 347123306 353006313 509987559 440792471 286417833 194006650 932524315 931262139 831911397 573626875 586392381 574263117 688503728 320206756 813292470 524697398 780417969 527722965 501889540 314923340 248365563 148033952 596712420 70226801 1319585 638131815 509226425 228013019 90196452 150945273 180168636 936726964 984730979 655834974 445820482 198500010 575043619 749459327 916804804 800689338 430484266 611447609 846061365 382916230 833233174 65022681 259614463 157109357 366015734 879200966 164587624 338596167 981637084 912854342 195983889 111723837 173199929 454922 976253620 687878156 792323390 913058671 109922570 101492261 687250772 549437299 916862945 712845789 975685094 57042847 173416708 398977997 231743890 393975147 136190645 849153473 743584575 412446249 765430671 173282829 805161559 52017457 820202117 377217794 996588498 994652738 602487077 964040568 856579540 132615369 479786235 701457791 490888872 493265958 945942519 283695253 994787659 796746900 743401010 650412461 778707576 277192752 601576850 986986225 146419341 708356696 459872883 994067327 530532909 386314028 426957177 117273703 403417002 999631354 621706383 331971218 662167039 963400801 97729436 120307124 864706795 481966787 660569611 324451271 677168046 273234234 764279277 953364134 389316570 755350653 716530682 649196016 846973363 394942640 850140514 564506277 244883987 470337167 110854934 575933865 126030640 439353597 88232984 312147460 328149447 463840478 704973290 253610894 181568932 977415539 944188242 742357464 746400173 322192462 544362380 2216220 85078196 576014533 982033248 679260461 769498029 120514081 973908495 366092296 875166983 368782884 968551610 407675063 754668535 828265337 75788170 923660292 658640876 995761253 189141945 757866779 370244478 27087335 516096641 451237564 908057867 913598017 202975990 190577820 759936241 951107880 953710404 970349224 79093587 741090240 125433538 7069745 152428677 533790374 663279839 77616621 512334461 187904403 334131968 601469744 819198509 914093386 692491709 957844096 310562079 436013692 271690963 101489522 753946218 758677003 361162346 760017414 729841945 974537773 333984044 423552340 425475278 69902313 719333756 900645560 668663811 994305725 198354548 202038207 488255896 172033094 989834951 798981297 664434456 649194008 387480943 871123303 939534801 964058916 10167228 730761530 901734077 968318146 676292982 208849546 647976075 975031103 337599237 321483085 900138421 481493567 764795295 296490113 634487568 65968949 194426816 539882378 625300702 425952314 131924038 763685013 842708098 194846695 433612204 44500189 759344332 452704902 798191325 842543059 42841935 408758896 224690406 116758015 510235987 231545755 709890675 595573324 29701394 148749668 746238184 325824936 100570661 402554656 285757253 918663608 725528214 375916008 983342826 512467372 543232168 222333495 302033449 654933791 63703768 272517717 142527829 193363234 225492029 32097741 808257860 73473756 174022703 174295128 656349638 999003409 373760214 823046023 86858322 850220699 984826427 140375979 853378709 527910796 425363209 952615049 654867820 189902524 698879576 220114891 5681726 230873524 168269930 562354365 216150121 9249617 118049315 225863392 709044709 436170829 859667440 40662719 572003631 755761665 781605658 950125956 635072627 860441677 213041195 916666110 390617811 688448008 574840568 32248131 175577915 746665756 615529896 839296989 648245418 94869709 954089532 239933786 568672131 736265700 464227163 890488083 724982715 305279315 725779293 592750083 894304387 97327527 544519115 233085701 520477558 951480144 729805406 619395077 897529591 225565479 749221299 942130638 649787780 54935727 237878668 405395448 9070058 305428629 750869881 415001248 848240563 964308502 555475281 478518401 159815146 495506711 757084104 938869352 929183937 466739949 234022569 7579629 405721071 868874554 883014498 920002149 747172430 815017543 678326912 191714058 799050364 120457821 303451245 500480479 615144055 655731529 635582062 376009943 804949931 946216862 906336258 294808150 287136103 64981169 652779938 553725940 438700596 989468965 238938571 338310157 874246541 925631223 772961061 409128070 536819924 306849793 138904354 33091748 921515269 224414100 108534302 764109445 793481221 405815112 907207449 551825111 707882009 842523162 31695342 822412903 191737701 785583200 40510339 376118991 770216564 746054724 929654848 469842712 174441174 490458741 279702718 354762043 61476602 942525633 141703760 755163598 424934603 601861885 420505208 147028717 401833001 96363255 796146695 143445073 405928831 164706629 816771126 867462875 29029471 620313348 878096652 644366122 875137644 972422687 50184213 180766847 154935706 587940668 310539575 110980973 888391192 621972740 395512763 148734707 260600680 204236592 371413597 886413225 848417450 158262736 678139782 808432663 476581116 441933734 852842370 31448004 481563540 290820768 398623476 373377566 773219080 38255813 142853620 414355290 501315161 612492493 983453430 32388051 642635747 307603138 165279455 366949876 637243123 64949992 759442283 812001729 665668158 316150981 391929317 547770292 765696402 533684570 908458886 448581050 106926870 95878034 225573581 963118292 461767039 100143857 351756364 465022392 893617499 669179350 47155625 51727387 532123001 68828515 191251792 661659657 322644241 435568877 463265535 804747048 340123152 726099632 968025652 714271226 735749503 16968819 464105836 378546358 617951162 232238500 134351438 956645973 128646567 18250062 484262029 682144885 15844625 675961016 330222436 930374888 955698999 829455855 480730140 163251779 890398587 320664731 68955215 113121705 170568502 457755869 229828464 866988736 163750920 791240433 515321662 186649174 311135140 925743946 405232889 189454709 185963421 924602312 408570104 930466643 2535990 662099486 995166885 321821997 261952058 430195036 942994591 149555325 552872525 112785668 891654225 929788596 697771219 965643676 681584017 700701863 98602482 796628392 190917155 558468776 727149506 995403875 144644767 584774242 932423614 790112597 435548451 312286248 494878073 991476383 780182577 102943296 746158803 384659018 972578783 477469421 215291694 935418555 700773036 962678474 978909279 939664974 280431126 929150047 763911738 408349979 49920084 917311903 903712685 304102634 177660842 500751000 572032260 898842478 182334044 321994844 106670968 365226259 669663977 861952653 525018997 242930566 110588320 944296529 195131780 229649008 716462155 818583252 347144002 286459605 776182231 51522372 85023905 40111252 738884635 178950919 609357837 12969758 301280503 474086888 958687478 31424194 182223672 289197522 479356377 237044859 157492861 485775392 808663878 260925078 653552135 186227550 867498010 221271705 610477199 166696670 215130235 671169679 870587948 212864076 69070737 626026844 744181541 411284047 551986948 438043139 355567967 788181767 193229374 385285364 892568766 872661088 484196206 762019357 583870070 239958263 982265937 146241181 407599579 808051992 297530515 218325251 95728689 270939178 686753000 819494874 834273757 123139344 431781960 724474012 476903209 878493493 680839098 366836180 549380957 810239140 111472534 294027703 228587261 170228555 367821689 74777116 166941133 787136355 918964552 565544617 632618658 12930180 408692833 507565571 743943399 932119765 745793077 617692230 258231451 508523829 961931000 3941896 980427331 444636315 135844198 594217038 297007072 13032441 756038243 121571007 244282354 78978995 246233369 195722723 25223616 315406662 300377227 725198145 643557676 225306697 673035994 276227775 343393576 644734863 698098776 708079092 279768579 823336423 840466597 823296159 887431322 280960823 645631751 193276713 668260426 276906073 935172985 871219473 638399962 714508773 936244520 395913454 352301450 571305882 250826899 651190993 596475769 923426319 744861214 770793439 561125603 456376232 466294754 465271503 721615428 129108729 540369057 665665027 412608237 156381306 261769628 364929538 364526849 710854037 264109220 32467563 662834056 362986142 226529618 953145226 205988466 702908442 784827993 575448216 538024837 840275564 527898248 162560301 99201756 220059225 72629410 802973039 519342492 444719493 454833951 195298518 727847083 992347573 588456310 52777031 46125768 315064489 777960838 373793362 811937799 432408518 816019275 191092497 353986386 236599668 239505752 819378146 613470915 86707488 49432018 782553224 828342727 692265819 457882137 572886030 903313874 186641564 398774802 57489505 734734453 26802952 940164159 232004304 57348778 120392305 898366405 777636380 108286779 625662592 639706582 734801890 881529149 818941892 75553428 599715909 209116711 154753530 659271574 546087345 233427353 934440167 559168523 400134257 807742340 901179864 920513425 588184370 846507827 917149141 849105273 138764937 819394433 903739486 461323095 780093528 5648068 589173357 275568945 581066879 289708880 539531363 108260217 341769452 883142741 511327502 551478236 711136942 107348077 618456559 581803183 489943371 961503705 487780944 491349637 992427552 522974467 84356514 585978501 760398591 290287089 448985943 215098640 408750581 57637249 773854718 727638770 321049174 695335628 503686626 497630545 571035202 49567674 236264215 793589145 778764129 775172744 648091010 294773011 673067319 738486297 891446879 831695178 93411166 157201036 938471201 559839676 124713069 777893882 979751986 463375108 400663587 687716058 390656904 75516269 165457473 763267828 959126359 864662062 969781505 10071079 501388733 3180099 78624456 987752385 566027349 170863496 697127901 846009864 311854594 428519834 266571745 647122389 812859815 310505871 315913186 705361396 421420898 728527278 119207677 80232071 376763661 5264349 999329957 638497683 947395313 458796235 870851497 85095886 685476691 532060997 391208383 35450361 800622070 350321381 155909169 62166446 434342648 22343113 978235572 149310341 300506256 24379549 562073604 893825753 41417113 211236249 459950325 837776829 612975582 195287351 8275286 417987120 387510573 119286718 848365587 733294538 683810868 537838868 80576032 325155490 87132322 173825970 955408693 115910940 457980086 929238718 967633 149729393 35676867 960912986 41398477 985485306 566903816 802749169 402044336 923454492 148668141 855959964 115754491 841519894 930017534 494755291 43642713 518492575 564158077 554517199 435741730 143277606 866260587 981696186 114425484 948404089 912676006 697931381 19311799 165178337 490880504 564396017 480591980 486583155 870360074 286778938 582995531 508766798 994816203 305589293 781672337 788287675 393385681 484757201 529622549 620353409 83787289 945541405 705135851 605820143 661238600 141390664 566331480 919799226 273742442 663673777 842947632 879400132 352165252 777069843 838663990 623888318 32654669 891523995 122779586 487039390 177801181 547622368 819240783 424021552 974497313 121717070 838114609 743732857 992986260 44063048 505633061 119323405 802938536 953080957 198593817 708257128 746027820 197680377 383558781 891028132 830486130 573760139 859370994 517107622 575611294 467021844 535272225 824483846 192200719 343780644 80288991 616763445 350936759 571987510 494361895 452074514 512580066 403339514 299897777 6951047 875665897 835997421 862255831 329609505 998452825 358757492 316922437 99412180 231934447 620615004 812771560 439097660 582093650 152451195 617633399 989175213 480702191 297280955 910279602 64017945 664174379 268077421 285396808 505187787 45717097 363896482 228036613 851732433 928057923 275348787 10532819 473581861 838831032 626924640 700514092 915133901 729842726 547533779 297238379 848581391 943502761 299820392 187964769 143489845 987025239 517313536 64785472 68955822 13737924 723846419 49943398 51069879 367316350 107801607 185196599 841370880 71161796 590887608 521084318 278547897 768605618 344997331 114539166 992984320 545808288 557436709 421561995 959728971 805104878 926620054 688537932 39455624 643147900 52921772 154226104 782363001 790426223 498461996 928949961 470727986 81207142 523281928 521364690 274119024 469213175 32280807 823430206 890078578 945165677 232197728 857063477 153635260 5574396 734795941 969962308 46231685 541597869 317298005 228169452 167479706 991407583 805280945 251576484 117159566 243129910 926870012 70479804 862236898 42139318 643918370 951703266 470772283 496023682 742296922 948136685 113617774 128991449 182555669 161044540 777895474 975253244 509554221 777349664 835772184 10745006 155249997 36046391 455550629 394443482 318031259 954706053 860180116 241550496 816518254 726243980 53204515 213434347 554127715 21868040 458917583 665010194 995784509 126212742 111072894 69674185 490536052 671436654 30145783 319728688 760863671 114843892 399570235 647998373 713367358 923922271 493409503 225886780 166914084 129452575 857342175 127141409 438135822 634597481 967685913 135761197 159225746 89326322 331912607 895073101 107816492 498145479 3378644 389064682 248300543 890723573 671107501 156292235 804585393 246856213 978871910 113510966 254097447 896094480 795800118 89281046 744436119 383612573 62899161 691243703 109433323 58633160 681392153 884471709 886370491 973174515 258742793 617829188 579911962 851729286 378240703 149742965 8537719 99254635 123868185 866157719 891955786 765399444 888239324 727890660 847745621 954696882 262388245 34186972 492223868 295298693 714564061 644948097 786007760 697360604 461186766 69487277 801117943 810098877 216468748 377088406 504932907 46440141 241414530 97903224 953609691 440462143 95602029 716387147 462467867 874885651 465151002 449513872 292630633 278667411 817740210 438367147 68275980 630219755 322304637 357348262 724383028 157666278 804651002 683121556 22310147 912166947 611885800 48086283 293677033 134809131 251215959 373323214 888760734 422257298 738625038 182794804 507442873 886353227 293677038 907278317 898016806 819565037 804003325 927252142 749718998 2740802 258650427 26569497 77611542 896898426 690148090 37915367 927606801 912718309 737191418 347750156 343354619 749563618 371710256 812140768 248758245 474999817 587729257 549033658 171052868 351490976 746764139 838701371 621628681 113890247 897888795 625618604 55419047 519243497 946117087 75141192 566169969 47785793 328493690 229742293 409163974 722922598 649612385 217462598 79585483 85347585 526592876 971193266 544123417 732057585 484489159 759897741 217958713 457732613 731677942 186554717 866440350 44496951 455221908 746192401 65428270 958801206 99368611 451976461 579173738 804863626 285440272 330626044 859982058 240651430 308248853 991713670 489353780 302343619 429971776 270486612 104680109 42347670 953549492 520323267 255281375 35320573 902360498 49486089 524884231 431783582 452094870 573096545 482846036 106499343 911239245 734816264 934239271 624999050 321346923 717546349 627907062 643510156 998092043 823725208 185446245 742098548 585165712 337672414 939883020 376520237 916661142 741545646 149247764 643700413 936707488 158784894 146615604 545906505 921088468 626633227 312589687 304816334 466910889 646373952 900685159 594680071 298091262 233080429 69779218 269621846 138292191 700858273 679541659 588802373 737233468 489226298 820628143 906098051 212416694 117841260 119929739 622812980 471346763 896926565 754535062 275431723 742417491 188574496 896519541 783929230 118507495 872595735 46405463 601984230 684658817 19967619 601471254 689711207 258154915 857831166 339712269 197955945 947371092 116648149 692527348 228962922 804615609 669320339 444971832 335048845 65539665 806702509 723677909 500426520 711052833 389463780 907402756 728231342 200472018 85186001 905770149 15187634 645847057 218855053 502912081 83203826 69859755 379207957 726785780 391326802 352341288 634782694 35206237 207444122 362876357 698996665 358937031 199840245 67851828 379572058 401279554 38516585 612862373 746275830 370984712 316007825 577078911 301809590 20739090 777117260 567168063 322343534 642656807 176098894 696654379 507268263 181457444 315798731 548820263 186069747 113752779 244560379 822724358 218412282 811848226 91755607 233984202 623218976 572212373 915382122 510630478 86466285 43309014 792833593 449556072 21743656 953614593 762093806 977554552 553767039 11679669 688299079 132522359 594301789 248030271 971978439 216715561 931666134 921070798 41914012 864178924 441534142 288166018 844259597 941285239 203989431 912790629 202875945 569151780 572893708 984965900 54399471 182776493 186902292 654150713 935455044 266334713 598836923 107313912 697043225 619887547 772365290 919737663 789438256 204490622 481893583 962288528 716189299 887773157 819235292 994737977 537919232 186757123 144775886 763417848 425981181 273083542 98667532 197833548 759817652 258624737 954737771 743278520 965099100 736842469 335160018 179462094 175167741 222185110 722618890 90073271 991380492 880102864 7197331 226911986 150133798 142155029 332234398 39861134 124587668 44476338 758623905 970789813 81231445 67134484 742896675 342989510 677879379 410556607 859032216 284047965 239652761 782432751 52337014 912552938 152053795 718761699 22483316 806861236 725441665 741680781 404417460 503685377 179258421 359019136 239091721 758719796 309113472 501929877 449521695 299903873 429603228 610322191 904360809 697983284 755754785 379476008 946976804 318847838 805032727 236639074 595203121 742361911 441813213 492848028 729558114 919304974 259932786 86168716 775042571 657598719 491120212 272629192 613796408 305412061 782136173 547901398 198258216 633524855 887270890 528995404 886826303 780371712 895612623 749913979 669064561 877380181 306297069 233366927 708164411 485433152 445446685 307953277 77989049 759288263 543888382 52046431 777506602 199148971 989390745 483702611 193369576 451534625 333791884 738941337 988722089 693282880 930269659 405003284 269489461 922818127 155853536 765857637 605499739 966559229 372153122 874276463 958522339 859787525 960608214 346344904 25014794 411068330 349054811 14508642 242825301 327404472 259257390 644269662 5672764 871460970 116259113 149990909 282053870 189390212 744616019 78748949 852537121 173645494 600139869 308717671 112284794 643140472 688640442 72368649 616492647 541558781 185795466 206326824 321572899 133805864 549073613 237427609 133351148 74039566 130137680 947550800 324319373 438777039 983187428 365025480 87643881 954780142 412607342 825097173 371364573 580255531 655739301 433678005 92694671 523696095 68137594 375273212 16108735 459803278 941555956 233705409 810680305 316863049 918995270 321110371 369721668 728582468 538601579 673958298 580328484 279655578 13871291 707020774 432129788 421720957 708491182 125993383 307336526 210642642 623359389 543486620 562378348 767600449 314618477 719484005 715933120 250438343 253584980 184010273 241856121 736630009 91207688 258873986 736940653 918510428 980077161 486036408 583337915 188509513 465142704 524688157 684652186 418652078 11442667 576618080 389350092 518379823 584215819 996332012 255744648 658705085 760033600 185167121 184787362 253711366 472180807 915131409 631478445 964603565 77223425 641893964 382877509 410416587 998690706 112164646 459625175 632122972 584967043 670052213 519012743 628415338 203634183 681011773 241400373 707271679 592614125 265430974 979033749 432392095 382511403 492001468 98124165 204166994 667368977 390975404 597556496 177217684 47732594 789623777 581736397 146923548 611617930 151059394 137881700 605829821 543984164 395790396 215009807 887841147 581637430 150800230 660252245 958593635 62527264 328641272 545562966 53276785 124426866 629167922 883539724 833784180 91564552 184157724 918944918 418354165 233052856 286599860 197621845 793832516 229434521 952078349 363895805 540005928 733333161 6333000 434557831 478399489 110579401 774380333 776360118 223463208 659584093 107462133 325976366 34873464 609929290 957506166 438235420 363488482 514613429 400855925 399867698 932951590 501085593 783714817 116797723 92273979 476724462 23298184 839640251 129062556 398017992 936136354 191643971 761539100 820158116 283938517 342519564 962754131 972754317 188308872 489803689 756383471 373662980 306380147 355348270 943284014 847816984 910908377 815343284 526637999 886307528 315244144 891540126 701406972 606655793 32630457 725170775 248073430 130356440 980552634 175338896 622435839 134892139 892023646 664318199 824505103 985775080 860154702 68676847 824740014 601264544 710457692 255311503 917160203 241037368 41219208 102110118 839606845 599215392 210312517 55309262 327763502 235110509 956481792 910326713 287640350 813245271 63633218 699944541 180498716 850979138 404521918 139279306 805380604 660773329 340801094 817508870 534551769 589222311 869046055 316980335 344166481 461620967 670821167 955093747 891330339 316508216 454973875 874600525 390237181 530901580 582613340 779555051 462046395 21319701 63657624 790329440 9843846 24646808 256512034 123766003 513131051 702616075 253582794 763254472 874045139 563858114 132275644 837770333 357437983 455296573 682049405 47672451 916850681 994531098 233145276 718954431 139112792 970930998 588249234 66848411 468399335 149613948 855623145 84752671 892748968 686058879 720510823 654820287 82727268 504995013 619039077 655575114 702776324 74387472 4170474 117506857 145014136 278169143 937032577 800165840 11320821 741699945 818539311 83952780 777734674 164699477 272907297 277921698 866288124 992407096 130285464 371375290 116042041 652576348 353354967 247549882 865739032 67505870 747982212 972572263 417523091 271138535 281819418 21062668 263617923 667442750 219414582 347085522 424560125 235194005 36683959 572710413 299745796 8117626 174766952 178636378 892312934 398657772 749888789 806188936 667687389 339243429 997230835 450057088 962434666 170477237 271281274 57406909 47155633 43717406 540095078 388660379 965520043 426324327 328118880 415772819 986616941 946107462 487491916 479518391 503544778 156506353 698131161 951667312 913823442 777715380 805431739 371170770 527962905 822337430 941881774 175425300 283978265 536481126 330585293 95049170 832307464 262879088 230918587 776593053 41660313 57715496 593771344 862858889 930800817 690862610 206032334 434219164 481725715 32951303 404317844 64223436 710469038 339750175 727094831 446021526 82384863 902523168 379886484 5792266 463937862 703818149 351156493 479897406 809068489 33587259 801597053 494605740 329983496 261271925 476157864 162743148 448664542 519569883 655171148 949410211 167184845 760891055 419902075 213931598 781209032 486950758 126488867 34165246 915416567 587623592 327198865 315032440 165871337 428166267 358545718 657936899 168619699 363748324 127922586 535091341 86432013 502041331 965111554 972137059 448744766 524123642 35489445 320562230 138305060 722392342 979451912 37835774 816795629 628515892 274175074 155985140 414084082 949936024 641169106 603020287 777852968 284712408 669485910 240666272 518380547 496894923 522380267 58491392 285822043 809950561 877539426 955577091 903539771 707799630 310792665 727482587 866894528 877945463 545523777 558220863 68713054 679410862 789704904 125750641 202588343 214962054 888362673 389900353 669420812 317841656 829353782 988137531 223073502 879367328 247422485 944557424 426364994 213391945 935360515 891635951 868198956 973970846 313564836 640457015 868992739 161690351 508074835 256013106 519027722 799199036 513714104 268733384 132287839 37035543 531598628 23455071 974685809 960127203 461201763 24714906 766544326 811694957 633514391 292676774 143416106 174048127 476889260 549044984 15156229 706968903 717883885 89722784 114824718 104123345 807173948 676818532 717107891 58001137 637200105 583195029 734996191 934359086 133328987 56468000 57660310 622659291 138272092 462516014 486195555 376299989 986296613 142173822 715998520 251320081 227333392 238889395 911807786 269438771 79881873 244846531 466394873 620880256 324500279 768238535 785000765 862390496 390732683 382236744 961254548 8697425 768727593 627745540 27022007 470562686 209764529 191911165 207073534 929489042 152688579 387714504 363233165 850297334 934617996 798339929 426266601 161094786 44727712 614943504 111649096 973006451 842670743 852649005 969241082 694377825 416640392 568323276 244271064 362289801 449337875 994772279 242490689 132148783 348067803 746033481 944339192 520033734 203995366 872416738 687993662 320217414 200279253 58584887 30686264 331172339 270634461 775973348 420051891 420229400 351918342 817987503 79986635 988997511 417042659 166850952 29835364 533069215 574358296 831794177 532847318 881571419 788805434 240841135 531364788 141297529 570272054 751782743 949203799 105011402 472661560 843601886 885323923 632963933 954843472 939170145 178726810 444600599 764683626 469075003 816796114 443921310 980489245 753994787 629486743 559131261 506048348 844572850 513648581 100922274 461467441 213822391 761220253 447206438 751298764 400040536 124421315 608194948 223436888 178152319 856049741 897859570 91106649 893132456 783149520 173617225 926936103 716235946 254050605 794330331 803678035 738288357 515455478 324959878 278675860 420034685 264415277 724002313 289147010 422901951 4422015 570885657 81170446 645136788 85973703 198657862 416835072 884610154 61296834 230080459 935255065 221196317 519966275 3138760 601062923 71791145 237630338 718380252 259078133 378686058 99465145 470100848 684443381 792320294 737253314 735584030 168759775 38414398 575848392 483866057 296767327 683955795 510532995 475470614 683972978 543466121 672041300 411757520 589074855 807035019 597973927 382190315 375742737 606301708 547344227 112695374 976859291 95561834 738861125 840522163 2803388 922920245 707869249 256603589 690999574 53960070 502451496 278864569 994042154 490216373 482766451 227041840 411276209 376891844 60128829 463776872 730068698 836324613 96571487 932559259 679105108 823273100 351589393 226431601 835555037 772911888 773270690 476749494 397509180 814875032 355950830 890427224 496527678 546357804 262724793 446373415 129540780 871938592 916183095 251929762 562604304 974552961 842581524 599889335 152418203 588874963 883657686 36665635 579147206 889591355 321664068 624248292 897291186 863316387 68049918 13022460 548049089 820615116 509913652 829991736 63454718 601634613 579071719 952030941 677460297 294162855 528722326 173536992 527435958 673658630 533935278 781597728 430432758 590416436 251477782 178220761 404547368 950553194 368315004 642238631 317069031 770636376 579659411 322439340 728911592 185774799 209365835 348098089 298658455 429799245 975355028 586246916 850251104 824044365 651638706 130022777 560389083 901108782 511024804 968003839 272915546 222800924 555154698 740442336 122543631 239524020 956014053 269210321 928986926 217871077 509510277 574712044 395665043 277868575 786371433 270103080 661093310 62660688 860246373 601481464 274949312 283400112 836561365 570281731 871313631 111196343 788735870 640967335 44025694 129610401 851442582 899754392 851574150 875307984 93395916 508071562 335778078 440346401 66981066 252486669 926224687 339401723 751713578 559759575 298246061 83318122 698475032 576188361 982428092 320018022 606988956 431144904 28722519 718552711 489765789 193065056 954027480 328284353 778260561 937053643 441822692 737636740 43027954 952056081 535950849 347917524 236007999 570322283 4102080 305109962 348191853 948485027 232413051 941603914 138858668 410183998 216926917 475907165 209094809 243205655 259670618 407319323 240010274 84020199 529871044 218889766 558097112 74299623 787739205 937688392 262449308 512625520 431202967 302553388 691826527 743489186 190410830 147876337 1343373 763792462 870780681 367054941 930868572 30518902 915283931 308311022 197196852 673895408 54649619 664274950 574471468 748235560 594085233 201965559 996881786 175887648 47132087 6567050 133950578 717138936 67475302 61294833 649577218 161482030 69108448 725169857 902093712 11973381 436432911 985313716 658807240 579709163 74977028 584982934 108435852 91343347 632315280 953464417 949051679 133864319 433768417 638499189 478357394 553340544 907446219 572125259 344899870 127009538 460661821 185557236 287952806 941272824 964415535 644300855 548831274 154005673 518089765 36072191 389905417 453027027 67166438 58548346 972663374 850315064 757150635 37317035 967343954 918233788 550762857 223908369 914174276 33467713 751993826 235122440 664490279 727309156 752578355 290120659 949968295 39947234 760502382 981453650 372507536 754995843 414354547 831550525 559045743 789159587 278945035 678804343 278923115 873376969 761017049 484693937 2906962 890239290 28525264 12427112 858460305 943773388 274066704 786458521 223667062 615941656 772137441 305185419 469234698 59977609 256413091 978932120 33624530 915350691 727225654 897293578 652178242 527134833 436618258 29640361 31560550 628729030 686994501 416009598 169342600 784831012 781676193 405260464 297320252 126196114 141345309 4785501 474385074 699042781 898079577 975662126 468149856 691718283 54510228 690165096 279227628 176135894 460302665 498591834 218310374 208810349 194393005 415678694 323296231 31958617 15590133 168556723 517913413 766512258 849156537 800588772 345323958 327047300 207692321 503288897 733024408 187825808 486888903 112808071 640027431 217539739 569091039 645171696 661053277 486146406 768573313 340124485 98745447 35450146 250081642 348995848 853443446 471294345 967277291 883037032 286434236 276814641 858913409 481556349 881245100 505448827 107753335 442264897 365847474 45965794 601834759 438167720 848068756 882353468 620864703 729162167 19655041 130290024 435404082 50171674 848554534 294874044 276447204 305246119 694335654 709938256 612514586 64820769 605472135 684806457 120320753 382692969 252020229 91340400 49648468 14503974 464699264 498853700 306736683 903955152 347126381 406798533 864505743 602994922 674082860 657079787 473680428 422523150 515241312 89816440 556316555 65676353 770362927 156878456 838572577 317783906 274931328 589630802 522905293 973422418 245436075 986406540 528030047 69751080 701380432 270709835 786851123 225393589 68957991 973798938 947337965 927673649 324959873 433405902 194082104 959299889 747085008 951504361 163486370 737201403 617276934 692256571 296420517 198002682 205668527 170025420 84885068 908233000 289133217 461392002 818045722 452378684 272387188 757697139 49814836 190128415 338496560 937702848 791375683 368155335 282735609 708062811 121522767 358011573 250453671 75310461 219080086 47324166 598250646 575426552 301058750 744357518 279322360 381836957 721814084 481170712 184215885 608122598 583904357 769093685 119402453 822904710 59685439 407313608 133469827 781641535 843359343 268569508 206600551 570028942 60485054 705415687 607627084 627259949 63370596 861901758 661173141 204013697 122534429 564237274 721444002 500532915 180345189 651996630 866019657 462040205 864843463 942724415 179878257 575680041 380937092 564336213 184079659 808678533 839014468 327958159 881118512 214761163 847212014 661079255 567511100 550888545 706535832 350712597 321770982 862863378 997971280 688394803 67748162 813901828 14734059 349612863 1767546 210364855 259906413 473905582 442796045 477389984 295195031 682964050 20178255 97717863 950448020 453304769 479719163 349338536 17917989 97047507 472826297 638359566 774772575 101265506 804799663 504303222 91354839 1020010 611452124 116665180 830028747 842027630 387649079 645303250 257680180 102408705 951078351 82437411 432242375 547709338 584646340 318019864 627133380 739415250 228967721 632366196 452699592 714182457 402574644 117606257 305304835 199180599 6945938 353382871 259918068 170462193 555974377 69872142 968328487 106669313 607975287 140046672 130221029 29772127 6554646 193819177 320504988 611359279 950504675 239295704 75617630 340502247 911480322 926765480 677214538 145453035 868867866 662667178 908487407 953337496 221368781 962430092 397343316 184208578 257278344 343455130 25017926 226703807 342048148 237247972 215074348 360770136 644074317 225307110 493586440 486407089 398968113 30749609 511297989 809853935 888778015 921798572 426257530 922859667 777617506 326790334 764515246 274481264 690054632 152600963 879789126 862234239 754604478 374019731 783349814 524306038 881064211 229919328 396049186 577531237 509696461 310828789 92094950 537264958 710116922 799083078 849735035 834983074 637101936 531201069 410461308 556616007 543715255 43959573 791450009 566345527 693393673 406717294 995633001 988069108 71133266 786544670 514503774 821392383 693040882 329829414 621563943 149033069 838127128 985150160 529574279 607344664 67469734 337267251 81062049 352063644 592642550 409724835 172668194 888010368 850361787 555133673 617118815 249026216 392035604 314241565 861096517 130979880 75290812 103320039 713288270 769351770 573832183 27961057 746354102 432431485 917379594 854807525 374302566 703775545 508099718 256824981 325701158 55065344 624264058 469982234 95907886 564233624 956724559 706851151 876112633 661901819 942591322 384866639 324241921 984938644 298647891 716608344 351998603 929797884 260947632 261503546 708194575 434550007 459563206 365882979 375120910 451293213 159942930 558232262 311725298 226020434 704179118 884448363 383275782 43119344 951999602 471657426 592392690 136890046 73021238 653874370 856618530 707139426 86323268 401260661 173368149 660505271 591898592 858766471 428002613 885819933 949809120 242129816 664404757 361745397 222533582 150087747 630303431 686932472 37104140 290965852 611076894 207417981 612683213 516014100 613425125 828500281 374597179 3488549 986202622 20735633 191694517 924659726 338877722 570643097 801154150 74836918 977201682 959868880 549594856 59658487 386016481 386600832 502680274 753189395 899765032 168475524 314131540 375011445 332407393 39005811 406243090 656299139 113425831 550239756 98238169 277940071 601539648 346917163 435319635 316750987 338514382 108335722 589550595 490922915 100903566 320003435 412777021 343987552 936940704 737920987 315094116 310999576 884679717 383042579 279203665 593605708 971295525 84982343 561618091 476474197 40540310 227481929 940551844 190716917 938127780 47267514 28980296 557719051 840110527 70381369 343947934 655620698 648951993 813324697 701311817 392596859 544309884 207608435 83302228 977550204 587486749 824212060 834807524 889841705 299142261 351879645 121790714 524260702 252969920 479065612 77366323 572050634 265058613 130003976 32407889 857690062 637840438 164815434 274535751 854052081 239518404 435191473 316662656 776346410 854075943 228073591 275659897 513498908 413311589 132582253 18951095 49142664 968914962 302771992 31359137 725825580 948212885 83723170 991364325 417200724 730262810 630181833 922094342 116936546 711573135 216476963 496966433 934603694 308661407 693084734 697570645 603206761 752253271 888117157 13154271 410975481 662699209 153784387 65928798 568617994 102037914 894182696 28045142 873074529 450308215 427960837 499582977 986015000 474712575 222223031 653926727 434945138 629316590 77436617 128768570 962200604 400923526 811954715 403850873 522208242 470335642 632741606 748996275 537491151 74211873 98975336 519871387 147373149 718104811 63890957 682940570 208499043 898966564 37028638 530590313 895883638 720839304 905882190 651812347 716249297 455435415 256600599 223384359 126082075 306811448 229021424 490055155 348072991 726611133 504213744 570367071 798681714 282611675 555347718 509002700 713289974 974217065 821066079 5214791 502162672 256432988 470141559 532111067 905233361 934865247 446323158 949985467 255471071 613832544 96713188 604947601 649839264 161175389 516002775 135147999 209844056 699100529 929661541 203039836 135254283 500646647 823266014 26056688 689085570 685027520 544927378 30690416 799126895 350382181 493728667 227615796 925423544 166759161 661895588 246116244 417606917 617204241 75434276 809406975 104407525 602496938 664758314 441284779 178834431 737761578 500285339 407915749 519962919 79237415 22756602 30631746 854640633 374861047 784149189 938255153 184131608 807365522 19878781 280465250 66767489 502239075 778189151 133165565 272751211 679902014 202248115 801665454 102030914 188390813 219063126 985126468 138122632 636218502 731850415 557830073 911170589 590079680 906801354 669900105 523936236 483127882 789609949 464325989 611328382 958459254 756701427 605893941 227606549 749067275 274900672 225048952 53037567 996520859 644464160 558339730 462560744 837284030 420237190 391535126 805343496 681763129 617448472 700922608 799154598 703039284 357696775 883055259 846502336 368756191 28495383 143863385 675771848 710348557 854976603 662089203 51582883 874968437 688639135 986920979 269378873 911940164 274438716 712377512 343109710 134130858 908756883 808986140 563140274 236868531 111284584 960725579 364956042 186425204 331469550 529590279 393041855 232214081 327371014 960982027 69512260 758833840 903356525 639068776 454180054 295871506 7711329 804776432 476389535 817331657 762288999 615180617 363762599 814400182 556900837 17535217 589942251 722873747 942179559 784576812 844341663 970603094 728518203 598083123 67869768 392497863 887204865 387888688 117534529 506727648 395503543 393112770 853465754 186136982 805385270 120130368 652557312 605917519 552264813 582469999 831152244 358871812 309651317 722313499 725419109 258489811 246635008 866352923 814107403 700139386 710668339 253251638 881482112 661995662 927567028 278952435 35086932 952381558 432953608 774330010 329165722 999096516 753180704 864251266 822520556 8180003 244356300 300790069 49478171 620894865 874582141 727435942 623004393 950905951 831756273 565244529 414306616 849462927 984585259 250554219 678378710 770789532 147544143 216986834 76253075 660335837 50742758 848108637 431278398 118008586 625704274 31166814 30837593 301022020 525422837 503773921 23656672 712164558 122404436 951235323 20895667 565731816 691768295 621796310 613709964 796378169 695749137 100192214 275295373 59317821 93954976 539004728 80014274 357235973 447568898 253784590 105670558 163352331 432472666 115533240 459269073 14756426 451729587 375947702 161621758 377467756 275960050 551972592 930462787 617912038 527240711 280907441 965691713 131805342 167329760 502874441 805098413 316325433 233488932 951369762 992898612 373365132 552985720 814840764 680012341 15616895 277120249 868292703 194986227 548345914 155410355 459416449 686986341 829555372 338731428 349966894 517565471 791194908 624013715 348350868 235920513 454592916 494720553 60388633 256173605 4436362 201409157 8283083 469323431 950146741 927012150 271930969 346522708 214275055 280379616 698088338 136883360 897122626 472582863 97775167 871194545 644827165 551107895 283116781 173222006 921584320 580877719 138117177 113555882 408705360 62652930 75760717 737331214 533649744 284430322 658016023 14747692 301341310 520400347 77800364 14785904 443338506 968810459 540303449 49380284 843234523 593267598 126914463 806521798 662881977 931582814 429867086 189091974 156403700 606896271 968075305 531605784 431838621 104108534 424790210 919488811 666138340 185597735 749197039 66968316 682433265 670078742 101550690 551421200 769138376 166204517 22528724 845191217 669750533 883781878 900444579 807753404 514177047 257879147 747394609 862632068 179368575 152171227 603467284 720841527 315518503 194565363 122512194 480194293 834494083 61684185 944674808 882119945 867027213 825688938 618322769 50647755 261246252 246164870 950906923 510607635 882412445 32433647 978693277 914646458 747518291 312476029 759055589 517954872 486981068 515357636 903828333 273709699 587937293 964596587 777935174 707077025 124615914 485800569 966725208 469390752 42806455 229773889 905929364 879444746 82765275 255871487 826381143 885167169 787626365 594528016 394760518 453209310 378200596 121571537 840818604 556305863 97795269 753439133 451995290 781544616 345219741 246919976 994220554 131500410 111160364 181490168 969098927 457068513 184531282 80868643 927331614 847507368 621737005 968868734 80822437 921385445 223097556 862155472 370040970 774651083 428531705 807336955 788360920 772912308 519327468 325363285 688494265 994511612 371301921 798185787 526973396 190731671 161784156 280347647 130892650 731713697 174212197 73761867 900721203 31930455 158083381 229911508 311015179 548131812 124880305 114803008 244455688 574821311 286202215 962173801 787274019 48764333 700423622 577722640 37632939 39548676 948115656 598540406 169938666 200261247 982480663 953793775 174013995 154363966 178356496 103448723 81441576 515332 861562249 687625846 820842283 239084737 824403819 756076697 471163858 616200909 606108957 27520614 866607159 850943748 982476613 140832489 704691996 140843333 75107596 440661790 474944915 537544072 862747230 453175230 55928167 421404748 175115856 614364741 514748508 911038095 753479863 996176901 538482610 222665510 13085866 324586523 550427841 876949397 124582234 173715984 509204360 911619905 188895142 280868641 196437076 952449676 794559541 743599184 887297084 136157537 948581463 585988095 267914810 952587600 539632344 238747446 119839940 11069945 282634356 804338368 133191760 489546522 401846545 832004868 288341960 742560441 551058064 357561225 876400970 738529132 902500243 374406687 724394791 284983949 369388281 923574650 286974913 415411379 969430642 918815985 175680659 318485093 118841057 562682739 414092680 928078719 199584557 993777690 613178266 520005156 850729598 11891159 222158393 978060498 5948594 195096043 416206278 43873188 513797226 574188044 254437087 644732878 222124923 853107049 411543454 331820195 888335115 969081008 312555892 128354835 443500203 264773244 767678778 763904046 90244414 795285696 180567003 639354201 923043118 693731593 764968555 936373334 635168702 242391471 231167966 596938108 146787877 627606437 389049352 943499181 843627915 13111730 850418094 957771838 735570561 533431786 292710358 502319746 593750340 965869961 613574388 790915030 835078807 55207733 293223331 346483832 522775602 565376463 323259278 588198040 932532559 709629720 591877502 619248641 633070329 850126788 618495788 188677461 694920559 223166742 897009083 869899349 616682735 177328302 117551778 932424215 777035 761869970 100555703 307192098 775962300 223566311 916858311 694140780 156946930 153139341 374716308 419356457 845574975 781929659 135342941 967957676 530418755 912081620 454848373 84756213 402145396 870891186 45679652 196501313 699354555 582963171 475896087 542537275 97098654 356582767 215515336 989667865 409176422 138815845 878445174 981379465 505123149 946441316 731657775 606745261 42307137 93862184 808256957 130442910 409944364 321788569 629542845 375074487 467523477 117117 204292491 760803518 863446841 992931786 671646361 644822287 19018287 871600945 886215260 815118978 312459464 166379034 715426161 327521542 372557168 21638638 669646821 562061835 339066302 250107259 36055323 279397041 654364282 183886791 455040751 132513191 195774123 815657830 941461162 154654439 396213040 336767424 187347850 299054570 385404150 646677256 146052080 338177704 922589519 650895683 920745660 203334509 468549479 663450105 225075606 266455055 1931622 220033835 480809965 355468648 738690385 921683131 65752988 168684770 699500019 549668783 897806675 718236011 438728427 566242752 487444334 810910600 266193802 453600734 91496345 955718203 721237187 920245321 513514722 356569574 186822728 155479859 196281339 391747489 270691295 947632571 32947889 402460401 861747523 260342276 631514695 872359455 224540076 785651063 559859362 941803221 748839959 840252692 392330197 319533132 984957394 205765562 85872364 299987712 999779748 558779838 335931481 793684939 405688966 686654625 14068399 270561171 706656970 561821114 340846413 849945527 134349193 708322279 14448914 74774204 614758707 307915498 577766144 761932970 877713147 996284087 360347559 410465189 973653248 750096864 575406328 930786644 489402075 852030623 829086120 733242634 850237055 679818196 729216392 71284710 57805687 346495129 132956490 267824997 847407387 990946584 295673423 263082127 505337445 120464122 747793395 387366488 851687168 63614337 818827415 354692338 961546604 656241571 405239340 444564078 257530574 91616516 510267661 372400528 428301147 977740077 545501068 785496087 675715279 910621643 480232872 369407943 368186269 234020248 371990761 94196852 81661002 358876213 959578163 557220345 598779970 712987354 899007296 885519821 611896885 51264293 226153823 350443425 703460332 363397502 988005819 652648205 39348547 737950647 696239538 48617508 675988787 699844288 686448010 957419266 854400616 232433483 498137074 803473964 955642207 941596197 166284279 906287893 384337509 279396647 166296882 658126871 730829681 513910146 220809080 974675086 91894257 189682512 370776376 703093788 859255984 792707340 688541214 914278853 325918076 729556307 757194078 885952133 381034058 493769296 737255755 383134260 509612790 82555738 861548761 590532248 162464184 548245057 956718162 572580648 307689110 521270448 501669427 331737715 846457198 522713843 228856828 955019372 345272028 774959005 261488015 34555446 20545559 975340106 97944325 643321462 33293890 695882660 907021363 314913603 141723241 990553584 507529426 538350743 52954794 614662117 202481295 463374097 741367495 611452355 101625664 922671847 399332189 956883655 704384096 828694592 315742752 953819151 385212746 562431770 512045079 14694313 215346978 11446700 744507765 230834433 835913449 105827647 493183412 401828945 591630725 89568277 534871463 521051364 790212235 821245749 285415400 366344913 378135869 312751032 327429663 586603233 523444902 222163673 736138621 255603334 167368887 800146675 636307160 736066550 594023328 552943840 498223088 247457593 700430572 143936672 272048641 150708643 397526346 2382792 756278293 94683092 304234060 4231689 274804255 477073002 68900193 343374914 350597155 634498671 534303054 371612061 400538053 977454323 357589609 289624141 901127325 527323277 631368906 779883528 213740455 88244630 176362317 367987265 629463406 634335459 300028140 167367003 42190019 780661772 451557001 436107303 822140776 318523200 874550103 79017758 104591273 549822312 190311306 50324806 245053642 934310563 201753000 295291478 221425832 757502109 974341972 33150983 699085141 322577333 177586572 713668324 444256935 608331655 612439554 268330780 384528228 468058842 604424015 453584620 163460367 915578493 454964653 747752189 608389698 173170738 669565683 974010156 16500425 604156008 808374963 10427657 67569705 843810789 977638609 700629695 907363966 831132864 33628770 481594360 56124605 214126509 129792484 476828341 539877777 685854167 794695152 495343360 559338477 521148767 310441636 593532035 220051053 868910543 152503372 30185988 796876326 436085662 221321191 498747995 291673692 958000261 848968301 885953923 904599086 927400914 273256185 361084150 942729364 801932942 137303151 272845195 287047287 23043259 613009169 271432338 182609494 909593906 900779568 602850986 136079462 50725038 681443357 553618300 919663704 611720496 325906321 124978639 235805893 250387473 307442607 964992516 170679123 310092550 355429637 371759866 15439543 21901864 906418582 487298416 690429865 942657245 276642891 389672548 601503710 493565758 693701009 854520103 247702067 825513221 887520336 69548420 656873043 597005005 990570798 894759734 601072383 585434900 49545196 736888105 992480610 119273360 74361378 726189814 965945146 792627280 961941724 539408062 931132517 716282296 804015387 852609972 788904755 69674652 946818477 708994584 52190987 270054152 868722476 271741051 313765553 11536626 732780920 958016310 996721422 193127575 569607389 539304139 725196154 489518745 176694272 301135327 627659377 818347261 709309078 208165370 21801317 768638051 874428279 901208893 682728109 257137110 370546946 638072104 269304556 916343626 445425094 874681169 703796143 290262628 107974405 991757359 321821876 518889475 979479594 224137476 55349000 177775358 661841370 27522122 700785374 882517168 310262605 431961765 551752871 369494955 911226534 483104543 757396922 369769645 716005423 900435734 227363626 546844078 322957980 947599564 681777691 71450174 51919719 995211032 741824948 58304581 791620668 855554446 332076782 599181759 95380557 67613883 817929365 556438525 562244703 290926419 913735050 732165250 598883458 320883955 495165849 59596474 723412952 355466761 730321561 471845888 307858445 626964286 908536485 88784108 430720949 300143730 549262910 435569820 517756477 784293442 314757993 837083011 599575205 467360860 300726530 223399021 75785737 856199161 480650989 835189728 403885370 292241788 798702279 405120145 138522553 639217726 107162479 734244429 991011845 133060499 745084887 75712389 471915103 188583873 771366648 209457268 415565624 98625344 751637803 676605356 639362938 324400833 302805442 751351229 893078938 570964277 461218513 828003505 226505731 254386888 42650521 856900286 562068623 331294140 372249937 613662311 768246256 639953140 328088099 929424925 986389086 83293603 407661567 887351441 941883086 876882356 377551277 261476383 223064871 175231556 119107161 733195234 595889429 157076195 670876919 263625536 342552706 135691362 841192426 362605613 582746727 262626543 139053386 639194729 88044573 444726349 950468394 886293710 984427794 432896043 22629259 638615478 567069314 247392508 667466475 567957368 738699077 594507153 518599509 564797622 369984520 249665677 217379894 242499204 840235394 859040460 798017860 51047770 482385514 222970524 699770220 923623035 820826630 664420541 207477126 307044058 586568937 518638395 645572429 14084908 153547450 779598177 604313265 29590493 418160788 516904762 243460092 641668361 979216588 628275452 919135338 740671358 501375506 432237795 780160611 818522243 471829930 172765542 399893433 379924047 943539868 201277759 555213012 685170608 902238305 179850458 443222375 280121772 526581262 47285342 839650000 269286293 588392528 982124765 918932201 129984228 948418245 403607451 90185710 754425050 405841904 435172146 286436552 161253936 646204745 433919474 253160778 978279230 813400115 947708313 491234037 712892412 482240499 216489242 912426387 792157283 744694688 150944241 13592129 792433904 299891653 47830992 825628381 787597356 153113663 804432400 81519377 635953122 647485570 591009763 741454310 560366410 784776910 295370717 105626829 44279832 960646621 947440951 21956853 974153341 316674434 537798395 791760624 416198870 823519483 357877109 980664086 281338344 330794548 837723448 414575813 199605773 603498493 14288001 103243080 264974214 925295617 1305052 994022316 167689019 41448391 177759978 975668083 456560761 473091353 656858539 335462499 241595282 708870601 841971116 421460026 476180022 690468991 23397531 926845820 289092005 788309000 13695874 757134333 484873501 388388668 742984679 779117800 13592079 138554938 481695268 830778933 549249846 111030714 405010420 541906696 472205811 398781061 659464154 228872736 607978021 655227074 358163037 849160523 638238638 661981792 68740060 948968580 494366705 526935676 966512738 761266697 449231818 251804353 802387856 673387207 953362343 987939501 884244411 885094640 822912858 586019742 249204336 72801927 199184499 951995186 825468266 267722521 577950865 523963180 998141176 202134363 73411036 733624822 746802056 682391110 736517780 25472445 267022795 46548396 620322928 997317371 181436850 52235517 946566080 272905287 530070897 932108954 536383603 915153311 64598463 955753724 871980809 749773738 25640051 413437354 714083021 862300562 425688566 735146431 756078325 447970027 177564859 472142912 157292466 32854971 837312873 635232650 981939003 341189517 549748760 193343546 625057952 554659562 179994594 528012820 368269003 221037901 741853915 40191481 610272641 396035486 125804672 187522978 66295287 393996324 427685348 443943309 565959590 749345092 689603334 639748002 159711258 243492557 787992445 122578967 912655629 299673217 61631147 11878382 680819242 842453659 238009962 234746637 917111317 250069874 994684208 340810120 484278831 41718001 423317047 237466004 867316343 530499204 478436085 59029353 929604638 443026284 521197238 949534976 971988621 682813360 676952829 100337959 28929552 82661740 320351293 882293549 653906528 6392517 99992946 437563748 918312148 56752143 120523787 238255700 624801788 251648644 966290718 237747358 942070951 973103135 978537963 339903191 844864201 56920068 495919773 933021303 59970940 735651794 812763336 809246388 456855037 45063679 712020815 148877905 319794484 891048595 290100726 395870138 458448053 811969073 530453322 32482391 689059233 456304010 531578872 90020391 264631881 704727292 473938076 572702404 661201862 487893283 885802390 151946082 106632037 500201548 256208869 925144851 637947522 548288402 983351573 719363150 707591985 479024585 414187335 980708717 976300842 629756126 886827173 388394844 621158250 895152130 305922347 458662367 754020579 509194481 111272974 808210315 305187909 967263418 739739975 860227736 644821171 979430982 164187013 552729522 401183497 506224332 162524719 146952154 903008853 207765783 727305725 639211134 212939206 438688651 814279245 839124964 671247095 415754399 598916396 246182066 882114003 318736382 786694072 640250581 520339349 674146053 156632882 675135298 624608242 28991456 505210986 797353312 330452496 105468379 42245192 645446785 100813229 989929127 322663211 899885335 180582206 237187220 967255979 349408637 7888718 442501097 319444030 958710231 973898154 164994419 22388842 361191916 422339606 599892262 76937994 337099675 150802146 45321513 25285337 391089014 581751173 295665527 588480698 383957151 69990904 951982908 150088630 622083173 663153826 357782025 728754297 435060355 133732428 537691614 377597785 674963448 904596404 258988889 654453101 69861470 802941134 575087145 830045038 283576587 629177885 532615756 306076306 915722049 71626781 755774693 404351143 435525882 299183634 634543113 628874232 185148441 180516183 575725279 70260865 436786327 676274633 215766037 614137477 61631987 905221321 742655633 913725796 580562707 957153447 950280491 148592377 25577378 942121194 966368720 779688417 906191825 569442619 913122959 881795804 699361685 129171366 645108994 466086601 606981689 105994224 684565574 387476950 932793778 621401983 451563378 732162268 265687084 418754509 199573763 12858452 687574186 306705404 856952746 154616367 903052671 390901881 323578286 450884863 556931408 964650021 486248440 823839035 294660897 546837986 879828667 171242270 694120849 108608041 756390290 195795033 336435955 794534429 348901052 166498095 498747203 298832531 958279286 500281174 747919258 333285856 703769274 752686480 393926686 219883058 406600316 80202071 890397244 840187414 266237460 766883827 667851862 260976079 589635988 668390129 287117611 695259553 148304818 928557473 554255171 517793594 581099446 266137369 692642284 680191589 371661787 70460609 195769050 638057508 966937878 290488477 751491569 761228353 721707648 542906191 124525824 78790197 131396079 421394942 665886392 855529845 304163224 771726354 12655182 661268640 961516381 327235966 651913787 904704472 296821917 707393383 888111141 703258702 309044566 676616615 848811167 330935835 484653381 457687757 293764818 340264327 86602956 600429472 259296028 842231776 623410655 848243504 973818436 642883143 402085659 50535664 913070464 41729264 241273902 336373645 669409266 287426864 407027488 174945602 321575297 343462175 322254766 853354824 915168360 621896846 135301538 635420034 762003266 560053672 508747866 175553203 730891387 570156457 375969659 922988747 259224947 264730984 66690466 637351267 796145414 629210103 749204123 289226709 936626344 770624435 240828167 444092611 485643601 586465131 471366253 397456245 543561130 661585452 336110641 800039667 3378055 481078346 141928165 508337058 344991695 248847093 784167560 349732617 783383923 288576348 562444948 52873647 620570590 366113810 888024133 731598994 647022402 661198289 100593420 203561343 203319903 636791863 611309459 701370172 30266328 105811970 234512895 664041046 520857313 959860847 489203221 439681410 421768106 295206568 584244404 585455770 553162719 269848676 538541235 217610622 448413795 811698861 829458056 74590633 895356371 901992806 908952530 372457869 715484848 369240528 631768017 383226229 199848312 886919954 42358336 900089363 651334371 217920200 375325465 681803810 352999092 516127184 778075948 833498590 544135881 451022777 313178148 251325352 943848855 782722736 926026721 297582106 943335204 709263882 875006984 968521628 972497453 524960906 266273330 246565548 870843899 295901263 638940312 997170309 428431522 302289564 449690851 841310690 20164680 396227068 567610799 701375660 345598916 623281566 119773055 990561383 459570558 233600332 747414187 518588449 981406887 817303437 652924842 738357858 82647640 104827281 502988823 572898038 45670561 381492656 840433099 88768349 169455833 614029019 638900750 331437038 34033814 907591393 783635523 353605474 816661215 208779310 478609373 805459950 947190314 750829668 840834587 202652973 340351549 358809403 118358894 235479123 652162789 771522783 977002350 708796559 721593554 609388796 274211975 630342832 776811619 532133452 392994669 966525006 215361189 350504802 910575315 735899746 548533881 126372582 731590868 292784460 971383613 940954431 250310212 711114678 59847255 492454668 457792056 121503669 63593275 60045701 160739519 198322957 670389234 82407943 197420306 205818949 912973746 479893969 710087244 369853556 874941497 349361673 353457176 200953782 570338959 907980530 345759963 123076349 565097828 528620602 411199287 481469296 837625209 602581185 220980055 418507250 496090335 924322283 894003258 144835698 99031263 760590597 343465187 944792328 767457499 318547167 510006398 733504325 854780027 71712531 455431487 97753803 570514700 555377990 575574252 103385541 934467167 485335834 592309562 971045963 528150994 562331142 617381387 344417318 867776972 532048059 122025111 758088209 398563298 542426109 539848367 344685044 729118746 339367412 311701346 756771440 629776607 847542889 818775082 658279512 865750806 649784563 874706728 502942146 264520625 796678509 817905704 411993436 912154105 221423008 105047764 326774871 823674541 20864803 964861938 767512888 589695701 581095332 842907621 913702714 560205268 569336448 610600164 991055594 768538407 62142536 592734082 94211040 755228828 63518204 557657490 659156974 439673517 565490655 243723532 866398226 684774487 449206825 461836414 37382794 575198519 794041215 405853266 611895756 554831095 552874665 780347781 908190756 473845029 56976794 423850893 780425334 849304327 697847843 109389976 351425382 904000585 856618983 612338974 595728766 19072434 466074761 203648346 939799973 4464363 396509836 361825239 803936817 378310917 779472727 936388100 907793459 227408726 608699883 312703994 845883520 948862708 717085002 177104126 5220230 540867147 606793919 480619991 192402836 783453644 53012941 533174026 153474687 441412193 33220573 470291771 895544879 605253202 359924741 407789885 332839231 305330007 794105156 648552493 920950307 791595209 889271420 483435939 477644217 108532746 847069620 52844177 347318158 861627961 240384466 773741221 277617928 962838250 214871773 366800346 757004534 248872855 512020089 538158034 830955010 967369008 621831947 140888887 328850481 49017417 468334551 403157321 928388404 994279467 648430977 620414879 896300350 300586268 494406791 566266755 629591480 402976665 42777952 394781463 553763834 183757677 990690642 19337252 371168062 751272207 362731001 233323115 207250827 136077864 855852909 901908286 484116279 582238184 662974155 961420447 676101161 351566825 402444585 416348860 150729298 586101812 788087141 541356468 950177665 649337965 844316984 901649901 741228356 521653596 75497054 327205428 706712489 526128077 813904379 377715564 601404068 677657485 423772078 170397708 799506493 412050048 613072469 263614735 361413368 54307980 977063625 588230759 950393381 432016743 176536357 532523961 256411797 660295663 850764134 979120758 152367669 162711346 745895701 498576049 855073480 775768861 186952384 492788561 225718185 480335087 289989343 842720501 688295607 609047919 428670198 182398814 259717352 830100783 391055980 585942980 211813500 576047264 314483473 209444075 812619754 352437839 717274681 932596535 74663241 787553198 499215109 113812417 885432087 426465037 175049033 184281122 618439147 221280379 507801871 198535781 192376384 556810539 585327874 588881289 109623016 522154480 684049518 197471003 577516532 273414089 557513069 704199764 424074841 209917559 978452033 589061614 106454830 789968037 37153602 525636525 542781834 625445562 277947739 244328356 907458521 624089189 138592460 78235349 996681934 2299510 674298267 669079709 286567835 424703503 699814889 705214202 578614556 604802145 697845511 205407481 120107155 66189397 290241981 799003823 471501814 233572436 478029304 294285508 179554966 760693475 747736823 569916182 283415133 485251921 971334123 385777530 465009539 231950772 315954995 276245695 470519184 495290885 266400784 232666115 782449907 145295235 447368658 352212314 449142423 976362174 834330834 424598544 90446476 419384579 278826505 295408930 241992166 10903329 665497691 130692467 822849804 371808585 986952560 983605331 597926541 33072377 525774618 20539824 136164431 373160864 307260028 336655051 577138636 56199181 115784813 32345253 11901220 718497385 491051155 827824722 248563040 82751921 440261311 426672429 81707757 332396893 397116730 385952932 935562616 884738454 303381630 671417645 958206951 62301484 361735922 884231528 359159423 44038033 442794319 876693168 740750740 67542488 777242118 722624027 707254617 438241458 261159150 689197312 321100971 168461223 488154907 23922077 506356032 402144772 830853385 197177791 695939120 584460198 726747578 227140346 685615477 365626277 836838627 788942055 340570166 431468920 826026260 738716200 648368618 784259426 937794358 801427108 52130368 233985339 460837814 322012508 577102793 927906977 25747275 837955816 371044697 321679442 28728896 735249521 494888344 923542117 157557243 705232716 98352766 814996620 437618975 772728871 837354345 670560309 840692537 253636440 479465521 134786275 567380533 655696768 440111860 933357807 181347528 112917513 925266271 739445302 692039137 213489321 966229821 192646446 863662134 646748752 299737842 535267330 650691089 708431892 861020427 442495971 680819857 885283051 65824111 504497982 649916484 653794467 395078569 891480458 87283249 56436591 508156396 257687937 731454296 300016211 719874840 370447509 280233340 592666414 704986567 658204322 604643376 107189042 172727804 896872680 833904377 786142188 143307852 399993335 301069453 711158753 169608995 689643495 706619819 665355696 11028416 776004338 691314675 536481449 433150422 37066776 745281693 858427395 489644855 434497899 45036134 550476880 325300130 821718874 216659065 690235174 705034987 749548480 247287318 237937043 749731538 41431057 874781891 128972326 130468424 174260739 312698076 959648671 134804518 1655121 714262249 397666630 104333448 891556243 456812637 438484394 26041037 984997204 58896766 985254201 466916027 194586857 357584790 276042079 727354244 692887665 154208442 905353897 806658818 624150408 710457652 455432583 720501654 623872690 331284088 713468710 801184505 251868153 416715207 681731129 516315259 256979335 569903963 770119056 769970343 538041186 461249268 602375060 689990130 913553986 904209209 808168649 356511358 910331304 62485620 631601080 255829710 460991136 833546854 454939675 354345162 182480595 998356929 247966483 303393511 944080219 720600658 141233929 319367359 860377345 682671610 75964078 325555752 162892734 78653684 490586741 930885990 440609228 110610876 566153069 579646428 19021318 794565852 100608730 280188248 319698497 998074267 637920289 348283992 293325594 236529195 990790191 25532794 741496853 51961878 913531060 545126191 19715090 350194295 508907820 442581146 982301802 178260201 971001005 232305470 492521382 745887211 892286798 269056199 177095895 412464923 388579307 194275221 762353309 268243009 212067681 47703789 29703116 779154749 493217150 657119457 52624009 727797983 213771297 190335639 791607822 56325929 406156296 687490793 581791551 468925678 392118036 463444654 406304693 63201915 645806605 186630968 975082820 986564096 393790088 152986283 248854098 687462387 556444882 132937787 853036842 14128995 433466891 383540243 699796443 566223471 813054959 782677941 50166172 97246877 586724562 311132368 589599446 158965823 226683821 130572446 654293968 692701494 946219701 808382816 168890381 427789684 757431282 963682951 496233527 626014661 363264124 427387911 125884251 994537642 190136189 994459261 964519359 489985787 634509426 324497132 541526231 909301503 842246303 981448020 537069544 517760906 322873311 406418633 572169519 830726180 519681940 713055604 993158879 430081819 724190430 280889518 583394180 991633232 972948038 112025957 599578070 51082850 997752251 745252037 856025220 686423937 323147270 756810744 923407408 69969685 963563923 910924646 855333854 702871238 589066092 74018965 319022611 131078113 832981933 43395894 607000514 40582863 785558882 731962840 894402175 704692661 339558195 947315997 684032260 415433091 812828675 160850713 683934949 519759363 16290334 857633901 926904948 649652762 357079344 272137248 174424737 762192428 343508659 53573884 282244293 465879729 611184109 613109417 193988160 403912874 831239595 551400701 739781336 398841806 985977257 180794922 270763637 734484496 343435108 235227295 701965323 337376022 927425359 644823520 353689378 161318943 600794898 402992329 188972377 868622118 81021484 531709943 245931906 540610001 444584521 103579392 287160318 167248949 453066277 6697598 632903896 406139274 913143948 912957638 508699965 330504595 452796966 603744915 242838430 9491329 979504780 321977228 75551111 910822293 451035350 120820932 302458665 741149176 258233620 618115222 538588886 844684143 5793438 904412820 261163078 989774579 46434856 56378433 610049612 48171208 465529741 66594944 656744069 452318198 538328777 906893728 367799875 343669153 318853614 132242049 230520290 414839154 550928975 187885080 679950313 704067918 428741677 144375334 405283208 243427576 299083094 59656022 344493608 800163660 248665661 42485890 509542971 985823599 276157215 886304669 724188076 263562905 618813429 930864206 952810750 36993056 756220581 767099526 397918910 857814853 171224576 625372385 753984329 986786514 624146783 689906560 716003598 939239409 487908757 990641690 843230375 501287381 911605471 36839270 256741037 950316996 723204877 753385915 114330423 244559395 167055257 329389809 362934469 566732775 861230865 884276239 427238653 192148957 390540154 344614133 604918763 189402062 181357552 270419939 718097847 679756903 399918187 636666634 493772827 509135017 382927383 124406940 798952500 50014309 771818715 993240574 513598718 184341527 23925669 223053128 944834027 702450152 185844634 355671625 613845868 239265609 440455629 403526282 240258787 621503721 736641763 800338878 504056185 729374027 208926698 603832689 425176354 732250698 651938932 843309066 65715742 375828521 5324118 273881471 687888613 606224689 109502660 972154795 90209428 923322564 603268388 805711529 363441772 278943116 126789478 636218013 390550806 97934692 464615700 821684018 530746046 829938140 362030832 695758522 570768560 776650305 557563408 221300460 997153085 675833499 142124014 143161651 567008543 713149124 303457966 63620715 727521491 346654813 340848405 873336806 28025043 37470939 97090531 52449323 517734861 130948449 629827785 619693414 795990283 252252422 251991415 633101249 14966870 385036154 378957430 432404916 357909757 212586357 356971726 661935831 784117489 874958740 151725679 918011116 273877464 699513205 877826208 756299011 247718359 952224098 329670026 224591418 722274045 235684964 684672424 775426069 962556513 287390826 72513047 511114851 699750017 34412 456732361 113445683 696192487 560821535 831798840 797222907 318970790 633817267 940473951 395254509 620926528 25748446 348655145 988765273 541049212 695770813 385245014 622591921 295809746 899011599 743681711 918557949 767422233 258109120 564937712 729045634 827188337 571660812 411090226 99517876 572548379 60306123 709233870 882929095 406518398 723526260 784358047 647232041 89256880 590773877 834648466 408735491 634221283 288522441 304866653 221753964 556379001 276135698 457505191 597049060 12715236 545551002 873641637 910882583 986188352 994379571 842763884 705755179 691981723 458747125 949792419 715365775 924144718 801517254 158806502 339675539 670962763 240020165 591541916 724449111 122745661 302151623 421338294 203119073 857037560 42904519 537823385 762424905 909477724 338741234 929902810 851279111 61203278 30262038 991725786 100024264 10404719 664538898 396027073 79249925 826717174 420426827 714791890 765417964 606706223 632751793 154254928 636497923 324125159 167160409 621746371 382975908 495975475 274497672 821613921 272675927 397508662 874825501 497852109 849235701 926391773 965372924 518375103 754888729 296279101 88672724 221143448 170979026 118592232 827425359 213742231 722325367 568520577 487856224 494241200 190255445 42810524 835285365 43327645 593177190 949426464 450595120 327544863 208458060 459248498 627643892 545926816 610455522 694406873 662151988 818676899 712477319 372672271 965885515 374766138 109403085 129647751 544188284 609905626 249841218 605582359 314904856 458368449 97655027 824465327 449291939 612723216 36200869 649990728 521117293 965076857 863711342 179114299 582397609 54638066 421645077 479757903 338783701 805000730 495077036 548060220 999343749 502152805 157781444 391739718 873971148 602859988 229118425 877776400 915018664 910219489 882944863 952665590 743506061 767869904 803753289 177396421 284539011 94752778 749589722 195216341 780289762 723238643 502197872 357604472 289788733 289701371 502822724 664827309 933272845 626811239 647112385 232416481 319556498 623526348 535730537 488701104 919154696 645369968 634162246 560470140 531866608 951625919 264401584 453220698 359816148 652475078 431516378 678155396 982464667 136694027 331841122 195844565 714924799 895643042 781389943 249114914 946876398 220855467 214583740 625810778 94772563 864268368 547269743 617348562 600844983 616208447 925026483 75582028 698093868 786250103 802416595 401675581 162934555 792401062 570514067 623779499 622859364 366843328 807870290 625785096 992551273 603430000 356714517 895651952 386342981 720255138 891374820 651963301 980879148 240500617 754217569 203856569 886538589 197923714 19800762 400401930 231880202 491425266 428149879 179109204 708583716 555880562 124320612 641963797 338539578 190355780 978250074 473922800 274392548 581823894 689823754 757048538 546429964 796535077 223535797 847367785 242244803 938161296 637077391 517797148 234496954 502237706 640106423 356171151 7796459 727512667 992563774 42396307 614004080 861708789 560061852 255145889 564837252 858230553 947795843 75933852 832343264 646398993 522520387 166480506 622543843 402750916 34307549 68490722 362437148 497652757 25399687 467960154 341130613 983338560 68658285 216282712 97970041 934074461 363924293 690213382 273996471 192278132 20680841 131414207 495974669 157566308 348299663 888401552 345708814 600985145 356487878 638942107 166122375 825484337 385070988 909145162 388230124 677070533 862047092 785605015 122805921 781072700 164548069 83289064 306933688 860334705 26228606 588070639 279775457 680054039 508102704 652784849 472033589 93642689 395553505 149381204 526539612 247850469 667672632 892529436 533881302 274048092 478720192 85758408 469689441 15405137 975861852 1080269 922305914 472516418 134627226 379908969 287953489 229743573 737705141 844060740 240934081 315734289 475668290 806830253 258437430 786017834 518170986 756128641 988578201 283264227 521268123 278278046 708232383 237665718 473174769 158769839 660422600 943721100 842008409 479849228 362010663 820026661 915875528 251929059 594994285 270092084 701640328 542498617 660707601 711044054 488730389 556915731 229175324 74408454 232357914 132014150 519599858 159293925 175447362 524220615 666836427 79417365 878174870 154372298 808848022 41187955 598514431 127432765 759113110 107072840 493399211 625690949 705205970 549458854 767498011 172276795 322679049 971513320 885891427 427415357 930019058 70774703 279708903 267658829 491141329 909877501 907938361 608457897 284350240 155366046 181761913 528212069 458373143 787383673 41059001 710446114 283655130 433215393 732308759 216634463 54007430 890433509 225071339 244624137 134992752 616385920 706099597 693864158 307437344 380072821 814744487 303505261 246082785 473324220 965520302 197780836 576299933 979320227 66756457 127234326 897351688 633494489 52580053 71795692 315887909 689950160 155583910 735427634 176336815 932588470 513360558 55413 623125397 631496637 903267757 583778240 463495619 33736599 420910617 702891072 423686855 147934917 901775415 745091483 781742253 348879251 232569069 479782270 636089350 237440094 700578737 19671053 485332672 758983214 945916432 402097656 44389440 468416112 403543431 74297929 475021793 406354015 330211736 509860791 39906261 67897636 683757355 9530647 686130704 401114500 479924289 769710508 140358204 678818693 314262613 434157254 604417787 312821398 410008794 17279684 949475244 495984213 359979288 48837699 141053497 425849020 460966674 295185527 490299383 640651445 897047495 860084866 322858619 644520362 786450112 839899729 811648847 353155387 337239007 859289401 47719370 826081603 76846357 899253852 825831470 281339558 486321137 713077951 251207730 38120387 380426332 816453457 350016814 423929694 891498727 481297468 103223510 526620347 758444654 684559886 31965431 433020258 357134313 575109001 368837863 574028734 564776693 250924394 304176741 79015549 208475710 999423228 86875861 356173327 685715611 230128953 96125027 46490625 426492080 978000118 920394779 457154053 735196839 834406434 484394528 275432780 868865545 574096565 592014384 170518573 782198554 973780172 639906425 482483256 421136427 11183850 574902021 152361489 659370251 480147170 628092518 23122756 12563258 240381178 258317526 313965953 275741438 377991587 287120145 953319544 22985472 198876457 957342484 78168803 464761225 728460200 563148616 273415221 576973274 523717943 459568887 798178668 934607242 501361909 912298179 389075390 712114361 66482339 687687535 249401357 179544950 332929896 895802356 15261107 978928414 398294442 647615957 540753414 837870732 418887736 45732554 741228177 766892219 901687287 543314152 997047313 451778425 479296343 41578460 449842384 340780916 693968914 406647619 370526979 67002676 17718931 353202844 683956257 506655771 935740700 682679005 716686005 121039531 968461698 644262715 497186258 556347019 568749145 466892261 604137599 875844531 699521687 347385496 213229175 227419070 401238744 843749758 273592811 510225862 205474389 6214447 479801141 724504177 972807691 406284548 378703367 621367096 825253516 287200742 702950158 687947134 474225981 461777938 476018859 573537863 186905247 574310844 159265954 910352522 6826544 583519672 761431054 108175105 5513408 141342939 764964509 715602307 379283897 448354414 891587905 977785167 441809586 844399328 906875892 111674441 355856957 579962986 426593258 714062139 577598635 631126232 99383146 777133544 985902334 100555168 353035622 218517772 828454947 681650336 673629475 127184997 115626693 323186218 858393195 493846995 927685265 48107744 252592226 858839907 267300044 524986651 409862517 969644167 356932755 779186974 834923762 551065760 692887187 393007062 994657024 960935588 740461961 322600738 129656890 682418668 126324770 73301696 351170005 752760751 729254035 510336190 115052649 230807195 352367855 738997937 478496764 826725808 78267407 197524986 292046226 258910145 701417955 684902044 584901409 509805604 300366044 576447869 637436404 65757937 143322486 305876249 263391215 346094521 909711211 383214287 443049021 386069431 557617037 386713766 230359693 875874203 93932608 382831444 790578459 458117016 542283544 671396234 315929278 212090329 674169709 878481044 734569010 490972851 78805375 309515382 535707139 497987142 799694906 759426485 253776235 195635602 281295741 953758050 551831848 722105643 962836331 242343113 609720514 423308310 64296539 493473921 224993151 808899552 607867159 899902016 362658971 431999529 467747351 115337040 175789294 305278663 35549584 254174589 539811964 315151402 840250978 139937363 698266390 963486402 652608433 605417162 675526221 813054152 548392666 543796913 997504469 720619702 167504388 114050498 833421955 307474516 568005863 877627370 981444028 869737733 501189206 781329140 117860400 387192097 309944454 794497188 923257188 429402848 210711680 552665075 611753728 375378016 292539123 13009976 329070230 45239193 24030729 977108590 698896410 805639032 12356685 959683459 675814001 416709706 14533454 6534150 782038040 804448165 468817560 746739055 521318466 482469507 479039119 555142479 458752353 109652109 66278949 481128604 85064552 287327737 215115354 722164329 587107281 575488028 759478952 34070958 173940217 995397920 223309651 995673046 538022342 83991949 494506105 914262593 908919143 913907466 897841604 378883477 45745078 577495626 910175169 493538146 570406516 681375752 164381782 845660027 163982707 374006813 99363615 289598308 55443742 208595491 75787569 299443891 974065526 30386887 473248460 134329453 26409025 793062425 813719766 74667845 453806310 637977923 20107376 326784202 275449060 715254298 683784386 879935746 501799240 199088088 948172612 917176418 447602428 845175167 789076236 978908209 895840324 948774937 405146927 701089103 661719475 475579581 971739624 83244300 313625344 548505448 555995273 143629638 849964399 549129990 850870620 15828277 930505957 633320963 926001734 579018302 61295946 891769483 595272290 729967223 150450721 280833792 940908047 579728386 160955190 914310703 801593098 65088424 687992047 863398312 755436687 962898405 108636076 451973764 381695908 89873974 294494386 814557760 585957332 734615452 469745417 404881913 723886399 535385558 898523714 799348932 271598623 782441385 850637848 994427839 259861099 101809130 335850768 581667331 365401536 840181929 509081323 988114432 259409755 305938975 510360862 382682189 616008148 907463854 856397755 273852604 258990032 921582256 415460242 70648314 976709322 312877226 431881309 923390379 457267126 580983240 572628868 536543400 511938371 992594231 911428878 21811515 27925803 805878335 79785947 746947628 942911820 396881480 372152215 840730731 703833807 989195919 343844203 485440618 779418722 251093097 738130855 876443589 102956478 705594225 323190659 648231521 948623385 379011601 194694011 745302564 785792953 115468663 917438732 265375314 687469433 395686244 275445953 894736555 953579355 690131266 668967938 655554324 947597787 285278742 158969381 410256986 941807743 870618030 47247253 30596479 810297814 887648609 179216025 9937231 217122333 811174690 983261432 509180769 56621202 334420583 432698152 112556731 810198176 707181647 932357735 959298887 849036276 85606050 460782779 322450822 117857608 446081581 407204251 777884465 331047772 911815264 867350713 357433342 154554330 296581428 376637851 884254122 562035717 667992657 711872070 558449941 480868669 562990882 129481320 537018202 34483599 850621742 352147069 738562442 283670028 780887560 585066291 691447406 334911813 423975763 765037517 312464856 577833579 677806854 105809217 661584667 667514825 688616936 277338767 696862753 618194254 449623407 599441702 934652517 936026076 901752786 381943266 989863553 561186057 911583534 260175990 240972658 483374171 381688548 755549155 301155291 87250033 521086049 511404156 878356765 775347955 239617120 248236174 531935661 708725145 855315661 26954271 306328510 921791685 967170994 197319831 202842276 223320700 856282798 336977674 43947882 572525883 801251713 655447560 360228806 213933392 112757493 202586420 585236488 234689679 558977777 913453903 928252706 180410748 538939920 568807298 844203572 276323006 333349401 714367273 566636152 522173532 991136371 708466906 767712770 589509356 503057492 38414352 385229484 695218194 221843786 745709564 45133484 306173333 464631357 865368656 952790492 292591872 284293683 16345040 476438610 34240023 877191861 574061216 677570529 1490982 378920145 613596598 668454037 217773154 97176178 697413983 802250256 631104122 453857140 875634146 848136922 76918548 936711640 530574523 153319973 970331126 6463225 231073460 458931833 673197306 123550232 914240982 325999476 659958153 891488676 127909438 423097915 931271324 673453179 183123104 388735792 995065087 38680119 130242335 105308535 849765007 927583813 85412735 650759386 416328334 356019468 721507377 968950351 833384971 844294965 382571493 971213304 982695101 407181036 981680045 56460140 812931381 198300953 92513252 204355455 236509920 980817064 34661724 619510046 799942594 735136357 254829075 26602759 687642489 139215217 124911457 475540613 359163408 17126188 975606690 909094336 165878991 766726789 730251237 443456512 553159523 463800711 225642132 542021935 887312035 398012439 582006607 90754554 7725951 526263500 864965431 90290321 353848777 465210441 259534554 106193555 117044950 525483735 25751312 485230522 481171270 375548066 764026751 784218767 535164314 561928385 632209310 843635082 490045322 3267761 271619883 981595435 659982003 138761029 116513095 286838594 632941297 182180115 740565959 759468353 655024793 188505644 186458567 674440005 400060109 368133053 569535247 376887564 580873777 587558828 948605161 780764812 127656862 646299359 636181905 392368663 488853615 858746957 912272532 990650607 549254810 202260325 294490007 338439263 410076782 441011771 739359509 260742787 650393421 22225941 299234043 740731767 113873556 492358088 847806887 514991403 997685351 923316489 986259104 259082185 818104626 845091326 408795755 24227401 88053044 914204060 330863474 155775070 120536031 40555286 328245912 741973552 623793891 982810720 691726123 469360040 239106947 166958711 680296338 58377811 934246239 502185658 93118986 163436227 811555352 241392134 588977769 696128024 27767916 727768648 644092552 515881461 22878867 649165225 781083951 956433350 319380466 827721394 970839671 609168457 949029936 295801283 865613820 356003449 77753970 673772078 545261526 980849532 417530386 267130300 967511355 215761945 397401894 218948943 93847446 529763172 310517890 602789272 244430519 583121644 603379647 133473949 655090729 375338097 857754094 53349986 425599224 55943748 441278093 344013673 315448178 846288645 438765386 921013554 644192242 103938557 133328329 587905426 754056962 513374455 337559774 121096308 310160176 953990220 388927686 285832371 502778933 850048410 284955254 39212550 11336661 54753770 704611814 32773266 308249064 700137187 449960553 776458401 495971658 481122929 404494559 91093877 428726585 182429281 220129418 383251976 176426978 206270244 111808712 513975777 32762387 329621908 910204418 233114663 700925061 176270034 6430866 957740158 284736247 675351558 978111042 243168270 988700775 82626021 236720026 932258067 976179340 254864109 630783870 640354047 145947190 152510633 184564472 714431869 387341396 71979335 63482679 898495081 213065526 585338585 750671787 643352266 370035497 444683472 264899983 831186090 173246972 296728444 936401795 197535500 536482384 569691159 788227046 464915152 622613200 805648620 222600000 144745547 174704724 114933246 628153170 939384862 795728903 297643567 409894710 605864 702255162 213050469 390419294 392953684 108250116 648299994 47068819 497855266 953080351 479160827 941900079 912321081 312583761 242491497 902613231 908784699 4134902 149636128 129512187 666464645 727478670 664046725 998302152 547962010 78109612 182586749 310076705 787210709 703148519 723059603 560615798 487993918 231096523 493736581 682698204 514852094 709640942 356840347 497130816 762775180 440595222 309819793 302441286 941171310 369848107 745385541 214313138 532614136 52652877 914645021 935976637 37541778 700089503 557949685 470441391 558949659 144336526 44548508 136308843 255723420 884897682 101547362 52721294 339584652 102392876 934005560 161619452 377899112 104252903 114386977 514827409 2226618 685058591 172948671 854213421 657570322 523172396 409820388 199893459 580808689 441817954 145906559 240854830 125155297 446574841 458110764 531576080 374666815 470974615 381021736 398819239 471225367 287710273 365528471 819350784 451983840 358429416 259507384 919564700 837357606 96656171 175968192 279211052 347255165 729832315 154705041 75722110 741918047 484938592 959295059 138624530 396365899 438209074 970137085 618739599 529080382 359183384 486590956 349007985 509387971 998286038 600470422 219036352 377977744 223049093 895371913 968064719 898668996 617165359 349407251 282684103 482480839 552964665 871117582 175238951 194235473 257086536 126273549 674451874 117309322 981604259 128473046 678782002 882617071 684294522 487389101 164414877 731726895 565292931 374509178 650566702 361892862 138143655 218121219 497574148 741226438 538418963 226347063 986603047 212696027 760038949 326809466 548143586 903904280 311953596 883783014 896267061 737927215 567755394 512498355 770238503 241366300 48683194 299655405 734366507 601065494 619968459 792225835 746788723 934055273 884014684 234493407 638394682 567791453 727711703 498956412 896785319 252950542 487443443 345708310 313659008 515671085 972553149 435974355 228246830 85801335 699015337 230212771 707473144 855316482 294860019 453078257 971732316 638167582 789417983 892367037 440148685 877754754 924579686 396049864 301172633 841841699 702465707 518636014 742354379 591815972 19691200 62763496 781018284 942488000 151252283 857082736 224578541 442628579 327104650 111943598 380054494 976615297 68658852 945166436 32280106 326349623 532971176 372450941 934776848 43627709 956196676 676619233 929520821 143258635 53861065 47387238 365894168 715283811 345442501 859068673 143906890 766251979 547076458 217179119 546004834 659509409 657720904 93188354 913373603 214570009 939522482 619006034 982763659 514786 468192871 201510557 102693071 323818747 613989537 295766621 711301156 348534917 75494344 519155952 802731692 376009561 165878886 543061552 819521882 18559954 786904213 412384555 253935347 737262040 603362776 494513292 788444661 682420150 295407083 545761204 175131058 577496242 707162935 553684728 381878235 121646691 356444327 289941578 579556493 922733974 406813422 914990473 803832601 478118204 122044404 391672581 971936432 120943697 747210770 28473129 387692726 460512673 130893316 200849362 380507071 804868316 870421535 315052894 262997844 560907477 305867003 63319221 917013807 379838514 731753784 722703028 416123345 653357025 775034585 475609421 801567943 429998341 30904756 695378740 281953538 580969018 720267335 200910522 363789488 121159160 100138655 328619799 522100442 884740790 927745451 880206505 758741765 270561878 470509847 482980629 9885989 334169065 65779307 913879655 497858420 479008638 105722845 598356684 905877384 812235104 750890598 884984947 300559535 665082800 168117980 62430135 752842837 627791599 104905813 129675423 691325488 70099046 496693604 419682014 83892809 41255610 653099156 496880335 164828652 151388112 212007820 218195976 261343554 530058230 149852946 341981541 179388832 709600628 133233697 986895877 917575205 228996842 731147365 955505637 260038454 743626814 882412435 246987851 983475892 673978997 506595975 965711340 436726769 858316262 338501550 165093066 612192745 636805585 542433646 461812898 915117664 10867274 141682598 86637860 440086362 432590709 334723386 419874282 708539344 889326520 872435739 907632992 443460750 814028570 437708710 887700568 407949409 194727614 982120679 754239316 717222299 882428831 962467283 629270973 657531751 265548830 603935607 663308675 289417828 692042173 371661402 570265907 577644009 231522796 336084225 271002254 176636450 335061181 734175094 47240017 208044214 126459187 216964409 797241944 436220045 699547854 202389331 535225187 229241268 863097967 360357382 65465489 97535853 398194702 387021657 170087023 88790510 711932058 131653865 407118786 799759195 732221259 237923215 752626754 79836365 93039121 193783297 466120650 664802401 375611986 308673883 920383526 924361561 325350634 930478175 504978100 813144421 868227606 326110333 84506739 183183489 751195931 970313457 970043037 607906974 949684357 492794957 392543742 831413775 767077683 918312455 624283906 884569597 414088710 860267533 943144677 966587290 813297834 94116291 445528862 733292747 114974952 210954676 773982760 35729537 245677462 929291506 134079487 605266837 753114013 670463575 694513863 589802464 222670777 357507315 870139203 271329651 301098510 446436997 242494451 697346849 636978271 466011937 237523891 532258542 220429626 522874586 459971750 565008734 43978978 271236248 709896466 561202857 214738380 208140120 454009194 993959364 246681315 376356264 928419966 8832390 792290454 206004222 549284522 189444666 69922275 639796596 128708450 757176115 399220129 926163209 677571493 173574385 998860604 618902678 892171064 359819418 860934611 905351560 683703080 401137131 579533827 263655360 996726401 973004736 42901193 282187774 114910312 605015038 567679392 768369740 302297131 671745470 585073349 780567098 123578034 878046912 204933140 607448035 477445506 696694989 282946395 898535558 399255260 670804557 618852254 187957698 751237633 802552562 391010578 982270289 911511224 43701417 917201667 543756747 338222654 138451459 621415463 796758897 662912842 705416422 624319417 848389186 539482694 982329070 687545728 216024316 876187827 661058079 602605959 494496704 505776346 914900780 819338918 564279776 598342605 344665222 563129348 896594220 564786832 813647376 18127963 361494065 579269560 24572836 907386547 381331855 575797368 718728159 330201479 353974212 186316491 244820166 854635064 376268448 975031419 239412198 748147926 72022642 579634868 797250699 959311685 934982334 759127963 633470620 423203161 529302 770627402 102735402 631934820 845031917 491859059 285426517 318212483 261314066 239092841 385562357 558636652 952523468 197274878 895646358 137805621 42179005 390184473 987454770 47053056 671094197 293521944 241839182 683768261 878860960 571898928 679991532 543965061 814131193 107191992 907798859 684276759 438585168 887146131 783393863 398072494 660285913 984916832 595451331 574532598 6342129 23973141 440082500 289821537 856595880 883114910 311383914 603816383 856783843 152744825 792927643 656288897 317173737 339156204 461566626 446871614 328535235 844359320 76793628 903177553 277206433 205498180 31101665 623927029 346413862 808490554 603424214 565412806 919074139 370883342 556474609 59447033 411689261 460616682 331141760 263636945 788545781 186853678 982383077 62850629 798513672 496349908 299082043 839366409 422192003 603872273 376588504 499402761 33738741 655200876 631900242 631763950 464983473 561873157 613830298 249765388 486628212 294373424 528355597 763093373 786773251 333940427 990311666 383290110 681164522 942655702 114482273 616700912 126088287 415605790 897298105 222729702 922256059 668161165 448146882 463061938 690647716 972938624 914836200 184765028 984555575 803031103 452044553 585154348 238049543 824953787 878935857 562956006 189949145 641816253 750161648 707353354 102716231 861472282 393126036 100258305 506357692 755480507 295653564 243455666 536838355 81498443 553083597 680297858 576334840 454847845 741513172 554248622 785344410 423001078 1441168 358864586 533270520 761664353 339183124 841963707 351710629 481174172 187341072 80055067 530281584 40881768 682021043 430597970 187547946 399425285 83459474 30509128 220867682 910353247 244430984 604212551 654454918 145546595 647485858 881774246 479244590 713751300 266033755 497369507 870681948 601659686 162415245 312941542 87958571 40381850 570158547 13590531 32640778 771414441 45334907 475908058 981871531 169131138 293869277 94464206 499834658 965244649 556188165 777128224 596802249 713256817 469579476 63742585 204407297 848397348 262720198 241208996 955886534 627145156 582631904 708835924 424104725 115530811 407540940 238901062 934588978 202861220 699059720 96033240 794360561 157821840 379461446 485950670 212010960 589414211 888101846 129327566 828937941 675511948 672429590 55080704 158423998 196184431 26424800 970926310 821072831 897977313 647718947 61347448 170438491 320809531 908703257 667483433 295512724 755560580 926736649 939782203 139412324 319376956 1875390 431742687 287586721 285532251 467827173 795143129 232595783 186859547 671196856 751102637 104962171 61664011 332599775 813599532 435814552 576355125 302465238 779708060 394838477 784586805 448434470 967182031 125807616 824716876 242910269 988703786 796104365 186258919 802630365 13671140 670912100 806496430 235977759 762831757 466655478 139371158 329422772 797814177 269645033 526750116 934820858 744966293 954338801 974170605 739532425 194788012 252281670 306319579 736759391 949866638 995450614 99336359 606712839 442558251 667971131 195167918 486589779 695092958 302482494 475096423 892111817 402388226 268436472 607314171 556313542 394833326 495210014 148722379 76881726 847424909 295061847 759228392 926161272 892389562 979603102 378874309 981860879 485551530 250547253 658953297 822986125 592674986 683323756 827335739 593946236 310530731 678909052 136106412 29442722 988341115 840500490 189098050 34305125 59200741 536713026 468206957 781260778 35482605 690162850 725081714 703371491 59988629 881821892 567612753 811388105 270646081 569114200 609988531 777835603 812164404 590718734 510631051 662918263 273243656 105054522 196122579 484020554 699731026 563938182 280179364 32645611 449825801 262379544 965107175 867623145 979056443 80267555 242767969 121789571 56647999 495208191 178189777 662422923 98596834 63400237 121599300 823798761 389024587 249508808 790249465 781654984 467371045 712316777 352551295 835635392 119416006 138614416 601153018 460592126 42242766 571397232 175238133 616111152 530215083 234557630 839935712 245094401 702526897 146946594 389509081 625921169 907242073 510455893 353857794 567434172 82823826 709504886 320881560 903582069 606435799 677389467 966485862 785287683 117153362 724856992 856669910 947566689 959256262 332928996 38773169 946117248 273390124 575172729 142541852 682469578 113707128 740821365 707780119 888221087 726560811 567823438 404883441 997274411 943849030 992756477 537197544 342233622 15214899 317322102 514295604 40750117 195430272 594379050 2020324 390409947 12487870 202959059 451791067 716262925 183029245 359744828 826687274 110719692 531128193 344380289 589368538 593439733 897484965 870491276 940652986 962054806 596204194 786211485 636956680 200490737 304478885 505410335 845380115 711599229 641577496 143888530 192538411 594550418 114207526 974039994 700318331 428619403 258006427 27985825 542767949 743364158 180885085 877518880 673678491 760935690 307819517 293725936 475900319 3735414 925868896 421878191 811719688 614174787 326495530 538324838 875083659 731554219 139719178 828001585 384993217 392589853 287830496 112400586 921286797 464259651 733166356 301782620 878201225 364325829 677261527 124295166 141114625 239974254 727521337 41139950 139105259 375869315 861828092 51777045 181563275 476210639 994596644 450717774 318658694 326645099 886301214 988858096 557504709 774007873 679945513 199315011 743767149 895403766 494360784 830360340 786766631 708544158 36467067 457227770 222991183 507376991 508897067 786264022 908300345 274558762 439311004 572908946 948199138 411992187 308589878 651640198 839091305 543970764 73990877 247105247 716137205 720364452 58084782 223252244 606818066 331339089 88984832 459060118 629875920 899790428 701610375 50109369 645261198 717604496 107417070 908648950 642931365 78281668 62499936 243512003 165720677 375274240 934275868 238032829 505267116 540073727 496148154 195790119 56913416 44936859 803852343 610434500 736514679 41809836 327332325 333230125 533547859 651232698 902984819 185521904 68260801 734402136 540057094 279033748 918929996 18539532 710923033 760716030 979306217 761143816 414595592 480305168 28118294 262655346 337763885 114904704 489752646 192150616 795478653 429612445 91226034 832310206 676115532 520685574 726632764 998946120 604209721 83307573 610054164 244605211 371427281 410766227 300824450 693586711 875793827 135882965 502854736 11483134 615694362 306472352 813975879 217324392 836436922 957801167 59890120 379779338 382554012 469067463 556644526 69278572 409804825 833010667 154853968 844008123 558266587 886444499 54659684 467724603 481769461 232295483 823649142 97107489 342726279 991782187 51120228 907654154 151282382 657901207 448824869 598619212 417231849 385765149 275026691 292219690 478338262 637614436 972147860 807361176 712267037 434821701 877828813 229927137 140076088 50475916 939286606 911301899 18058209 298200435 663978818 877476697 625107321 596241968 490481004 987263900 751653885 707651540 895559689 370368011 698327814 515382126 720532255 43599209 756643402 339728791 203944560 483685429 20676533 76569215 898965232 459969934 183080307 226028482 951729484 15206139 547035272 582150720 390686884 158753086 776339568 18928125 59395011 512693934 38493505 511898582 921305566 746578847 722495007 709037982 744786025 497701843 605066331 787553562 685217078 839615476 328371264 541141107 113256676 708057665 869134597 563753878 362568480 728477429 887990127 788021151 449952880 404403754 105509064 762956700 932265147 376356968 188690321 817816502 609782520 796433499 5931620 246132303 946216446 923407290 254364455 658183994 723965968 768988298 279111110 859271427 203450557 264514106 367426901 796425492 545029640 339256222 958459734 207250959 366892775 357378262 505816234 391953739 377848009 240994310 625758968 359292735 866846180 190413134 847573361 120351036 824705132 450657470 80090681 402078644 636565942 530130635 200040462 634687445 481272642 91990490 319076558 680478126 824845121 603414500 672301027 762248898 649627882 107797650 436739631 306085447 564145581 208766088 25299021 982686737 398098667 667211132 764361853 798837269 304368562 204919758 481197223 583616146 850576515 507330232 594174006 798342700 573993220 953951473 881925796 754606661 103148579 151729890 776748466 307006293 397725257 133551172 377852875 862717042 637163094 487126418 733430095 273425164 803772539 212828263 808397349 958378979 81546060 564396201 373244378 974345505 950541147 568730904 867847438 279927516 728376919 61662680 363051533 85169828 984188777 969229921 182493412 90521596 107058212 364808290 492998525 170317334 664567880 12349124 390588368 75692273 567296236 980923942 889634120 575428786 446372277 275819404 477083174 664347759 292395836 492642402 425989969 591888267 430949021 520303765 194564190 554622081 341871886 522056307 608636601 633506336 932512147 534612300 541176986 378716548 9975727 128126662 258974499 593921214 128299462 897249348 798827645 719420070 833453150 820374062 603346676 942104700 180898662 430392410 688273416 905483548 663111528 745097865 916048740 497515897 59244453 8686554 527466736 63997657 319174193 721721986 286354030 540998412 893330818 972470341 867165826 475291709 274527149 367836560 426682413 139000353 833072408 158023980 228895756 64941474 536095483 620429524 394813556 592425837 427024944 841412827 434153521 211489985 473292735 268668180 3323310 764181242 51155904 873128562 571204806 837312259 598480281 514948093 396989944 800798565 262735476 956797565 599785909 270582423 416365812 973466148 853866304 10792656 961619022 477855008 458741685 449478102 379418253 755340515 956200855 941709181 746111720 510999341 652060942 572055717 432990206 51719465 969166830 648481541 338777229 740945717 856192578 63167259 980632194 646880874 904442633 786800602 782143362 457180191 166204926 565070152 986819792 966242418 762904631 791798788 774773492 72429762 16827565 748919166 646552589 321591392 447138854 387362664 218802495 996273097 363899960 644418647 556842541 544634697 481591868 476214593 378983423 697825783 695774398 172244980 413657001 364268357 783256261 850715969 290174965 947185029 864859525 832462486 225526031 282026266 860457226 412699757 912370806 862866057 686393963 828453380 298612693 792050479 734563736 746980132 722718352 27980129 562172330 963922324 617832163 93871497 102343974 666209463 408700445 625241939 189051276 6878838 276349705 424617465 348702692 512922524 123665298 576652906 803579566 90528633 772281328 267044785 884104826 426088668 495880136 92717335 813925880 258510688 214868950 754474392 478878920 313463423 92585146 513851503 571567499 629130320 277318682 96581263 124371213 579033838 280368323 238583279 196348885 210832277 525951788 77716452 557125960 376609674 104757118 332213210 581771740 40377008 665219314 367235212 470091818 769298571 311862186 965914265 386875299 460099251 562270694 466007828 526421792 45190513 987794561 72498112 660529866 958497392 241323467 191200668 576475168 484183642 283574843 323606356 60544042 649630619 389762150 434559478 116390056 985061185 471673146 167505349 402606939 259078551 618436816 247059055 490956651 116270507 3802223 998045431 668477477 565761311 363915133 947382873 88035279 924099925 732170589 375636357 675487637 256824969 714478099 247626327 125144846 971353981 924221066 980999567 200383925 106918614 540166873 933501708 91141380 427267445 970112078 318998402 94165060 460824132 358555957 663551018 362973227 706308375 729653661 357664384 415400418 811071279 103023676 727998377 687496980 750113221 682104183 876636941 711640361 219693493 521843678 749055757 85746951 468456462 443855529 53557013 232002950 171065848 714196254 933044164 574374270 886482513 65505048 168785215 623233357 954736058 354407569 591251884 615398481 325353156 827621766 129573733 939746238 506084973 612361020 225063689 909797094 918098020 86822062 153266890 919893153 127875364 107019070 528041124 149257116 630241194 279908157 374442113 508044779 343895655 258436246 711203288 335468062 934945976 447503899 586919927 979014362 960118977 855216678 668632992 563292895 67622878 113089756 214358916 784505845 937374687 754201959 522683139 756081102 406080891 929724698 71531470 24327206 703788910 824984681 47639205 246791825 569343772 689435695 56561626 236126333 836978132 756668992 840218772 5483754 415463281 432431664 59303155 897658759 257650793 73436907 491527172 366187068 764440314 102771091 663287177 427023022 126978186 731782261 628016745 843316286 547476153 875439058 82511607 145785493 442137737 911006204 306164300 687524574 986624948 407158622 972400469 79900063 789411913 788866750 380543100 629457409 672383502 923465576 388670630 89721829 672599956 88997669 705314690 32318990 25351444 766753685 562226480 203371248 142803299 74668427 20815852 336583550 581303232 707758206 891301617 908687419 103952215 337391163 19332176 601308781 594997362 70661117 295438341 532061334 852562644 617512116 217470015 925291379 274349109 502192889 803860752 168897994 770732155 700671786 447508764 492821938 693183147 731933282 771531115 14321986 268959414 48025457 796294568 470225120 511958021 363319875 582028443 352665306 433349880 398932453 319201524 94447824 235500455 671499023 147126636 708172301 224268077 681629446 596684453 39827704 556620285 255594598 580218995 225099335 811467780 522253500 713429910 385144995 942129053 643030953 871372645 718318644 264772585 959612944 809388209 949278222 392459544 548149682 392808753 116691342 858354429 531315444 807459221 407443449 337360901 302846113 75054142 883707317 937943197 997878799 689748249 690426210 967876452 279677492 15362387 235088854 75452169 261948244 987003541 772631661 449071901 460358363 43595010 815345004 206855077 935718427 568635243 732735002 488185758 663952418 288828452 715986488 891861825 722160688 418803359 357050527 292917182 136197647 284369070 733287096 875043295 12958217 317308290 59166383 213597533 329258999 118602938 826850216 401737916 333463899 620936084 723577676 397327082 804331766 37974583 652286884 379792966 574525336 386963453 377441346 12943259 619378091 407830542 703336818 497078729 543551907 621163446 820729262 861738278 719427261 486880678 794118314 769304877 803483312 105581418 285840237 461713502 796865829 691234852 870294096 712290729 290231618 398308982 185192189 333854122 351947204 451789611 473437907 846123105 371827708 216209060 390583035 159739205 678790877 700993681 504634354 138381547 144042755 841970662 804431935 807812958 342605617 539303005 195231041 889232048 949411354 400257714 915857021 217527892 875018162 344079688 220782407 629039488 544567275 899000585 918536450 990814726 854173793 909651618 327693215 912984134 676082091 903933405 816736935 735627242 44845645 515156486 500326759 91575865 852630339 818136335 737029106 409755107 646403910 100625342 851142278 449866028 93639212 462933872 669787539 898046789 217568010 949208370 315600224 368593803 267787389 512555180 40178143 636535461 262888686 264356963 504894863 620717021 323026181 281433908 494081589 23211627 927704948 586608403 639282575 441259471 480171412 966329542 867747662 534852479 196642292 355632635 342702786 111593186 681938198 963283429 245831675 730899084 605430890 780683295 11807833 472442382 850068723 288884980 97827510 166035023 531058410 260629466 576162378 597830069 169876431 49813487 937924247 950249044 652581076 74657421 520173728 900915994 116721102 943058250 978522447 116348560 912792791 605890270 754003743 269477183 367847319 235367088 537376033 40062230 88837911 192726112 491101400 349194335 770994795 709791128 13299784 938228911 217975975 390962393 914231603 661839835 823366343 852071198 877520202 354808638 20566490 226196629 741181716 850031975 7072240 996287868 41278944 245304496 534525355 293439704 278075400 227098084 65622468 533154233 464647247 238794666 467884392 462045317 85727523 582110722 318297583 797051832 976884484 660443585 816440750 129027909 960180375 977685341 220794952 18132165 152123951 740801616 255761056 237304208 560535986 456759834 828030421 409001720 157422535 743871638 413227282 107352899 365253302 326175475 250045177 380985798 645843228 646576915 774606148 66729265 378857983 770463313 66199337 311777104 718426302 225123402 516038794 505129016 5621046 448385445 5856073 196314340 749798501 399972652 874605445 794014970 19118237 363721574 40277931 599281565 948125111 595196482 196825344 635112190 508102272 560401137 31194661 997971920 573739565 8771374 849051314 631145871 137866905 472826391 627204738 57170989 600971525 551250759 630509182 320858564 81314739 157187153 977292214 772040721 219907103 637472572 508912771 921341193 518696410 420798839 934104545 813220082 948790805 457759411 570653257 958195538 31324535 302807551 91520182 316362990 192192577 659437191 202362274 422115247 482407312 632794484 222366212 589957901 962865483 151341893 964976907 829439138 708677304 963994343 778148262 114627608 361795340 589624252 363089193 750920568 156976619 922876237 290514601 940435345 591476965 483295119 698118423 669619968 556512007 203379376 420207700 147012290 840388825 97781803 56502431 350524705 805032467 682808816 60389255 882293636 632340853 995621906 19009469 542840640 918308912 291549303 829660901 47827538 790457495 865313816 874763005 506872880 820111058 969204975 360640248 403939304 345100777 946127910 9775141 121835572 531440346 617376375 564925836 889445693 251028933 276350559 529482820 384203382 178104117 631382866 144155761 298514425 104961335 772560642 462408853 907177820 275236389 223926845 109077617 601907831 655172424 623000728 781417593 434499954 250237927 636092708 814774000 823999649 228058533 299582386 102261955 975048813 224231933 653811424 651004454 111552141 404235817 406707336 40817688 850516417 816832878 429133503 625111074 106174535 753085824 761119575 386021958 501964106 123572611 638687583 205402706 757139924 471748454 314885361 553589073 952711355 386879766 328059511 521442813 941248669 82846904 378114409 237250694 310158648 799934053 274530806 944821265 261733228 56451076 341044712 448458473 732800529 103771690 102045095 17346739 275100600 316770520 81338346 475334009 521733809 223228887 937878955 74186598 828120497 411243775 754928322 468402052 705992812 307423754 346291375 56932295 677863351 568226325 724842546 107192368 183283278 384625431 126060609 196171669 562517839 79488252 966903313 209707561 256459045 457846797 61003984 413694709 441698273 134371907 723067120 661475202 793810501 619614711 834890610 627639847 66892171 176748929 531720457 812849040 319633323 382844093 924133643 222252457 830436235 93940088 682819022 223713756 549160850 330815358 912162053 435854401 834085653 809603392 914481067 860796040 275901231 417898987 701981848 475233131 336902193 236996142 115148510 674084371 945833007 518682850 802131566 998593284 604315907 430890307 247803772 619843040 130338005 869981933 657292157 413019880 655826812 342758841 760242465 360738055 874910684 855372082 831578833 856659977 931304406 491745819 329126231 38966418 510140462 104359778 170459515 970978712 7446795 517631864 424876096 946200129 715790243 521402035 810688785 508224027 517993723 821801162 565967613 453612418 783599661 356523105 802888144 750768313 228306782 869995304 595901499 549787040 211048197 695405233 882265878 544748504 241298703 194982386 732900415 116660378 950393023 915403539 162533739 188409893 811059512 704003434 949075223 615556406 912149521 316472710 814943111 384901821 387786937 517972833 214254173 577537025 599269088 462380184 134795949 496737574 8750459 386363610 446795172 810693066 300364599 733341748 185252777 194175409 811275510 707402507 430991835 525839068 592372397 366989208 235621750 945208964 64510813 20914122 451446048 789506843 92673020 486738395 297369114 496080615 366072594 154580585 324702079 350943847 120309981 254746389 699073670 445605124 210343676 44928738 407114561 794967546 404114803 886462751 152220108 194628318 36650309 326733098 955261227 127167297 520765641 243324890 450851823 37613725 749155645 574189836 429126895 690407767 653459229 759426412 147579063 845048423 704506246 528792972 976678776 615739914 84429698 575705436 825193532 711691553 795374489 49859951 383371802 986521882 698714468 773179552 61272035 793754935 822387242 849851398 541086503 63078650 412377204 832397270 923180279 786104616 329538723 975451054 411316125 165025187 205960976 725183007 484516259 661163555 889576718 741232012 579640186 264447823 458093208 963570385 213663935 831742867 899045395 497893098 250609170 236699591 397416857 56917836 136494902 554925161 687508572 894784107 151852139 247310428 743629853 928369232 327449087 540797139 634842492 247591089 927319159 212341412 951168484 309990246 206308136 882973289 234533538 658458429 514591624 389519569 819690542 308461385 448753426 794334713 568665841 52752793 57726880 491848460 327083346 114835025 878104782 484561911 383335899 766968640 996287745 425715444 22594736 715084012 603317292 847263202 347352557 466258891 304351552 533144538 638151795 807286933 246797431 565550087 167977706 234015394 110196564 618158701 142537353 379999013 536841921 601487821 654133209 620270914 556239641 47104461 418111701 35933329 304231236 577976700 610552387 887845190 82207463 632574271 484159254 126342121 990905205 900250690 166563953 766626199 736279374 244015809 307809743 355901926 275568282 926797890 796931642 339808018 89564202 438804666 633077475 343716105 678095043 365612369 704408213 242879232 326136119 16568831 880471400 189134021 810687758 613293245 381370708 478402282 938087466 168629706 578312938 128404103 267497520 610553253 47034053 236661959 231674730 742514760 816767072 820660687 464379704 920061728 624125830 662870874 764038894 608186379 314729804 89350992 253974325 971789869 640280692 251700002 840303509 809734968 41757053 754388418 884324151 455771867 231242875 119434220 791705270 100648468 883079181 713653499 725674845 853546347 913364278 251009576 582218411 44330313 280401854 818425301 741877414 323287085 335402008 256717480 78774729 655365140 360374955 408268706 641695249 522910572 730995740 63241022 861257182 854612211 394512341 529498507 644292533 523165514 770404925 605416510 998332761 593104506 347061380 879440015 698828855 81458304 764467144 773568063 985367152 653578398 956102620 133892994 24535168 585701948 835849044 419805974 575974100 663152605 323933242 644792589 722620123 832818424 481180410 380190588 280919103 556709704 755243102 662934384 378211062 654297054 559759100 75373535 697412727 292966860 293536245 412707896 754720067 256121475 414273221 560850491 680992488 74270837 605391810 49380359 200924288 43870578 31045667 478910305 995942337 813660420 570726540 543110762 643490738 844534744 250645197 443258288 195061171 919423414 561731858 236509457 265168555 559115716 296279833 104636073 713809474 16648163 461390812 112976282 245092893 355911197 523269483 863887663 449959318 474773801 43861769 183041174 580094681 710299191 540345286 476710561 833136846 372573758 946485775 201630146 251777495 509720131 5948925 254835833 968358598 824651812 319582464 332220389 933076091 40466505 963531659 805950363 595067319 761973735 84098245 756706657 645662266 293393240 361496407 376398480 963202694 855838869 400491543 108767542 886757962 246854971 607302315 95638740 584420430 77871860 16651940 724204330 172391651 555782874 707241837 367395196 572560811 744849690 237056015 475154872 907603411 401795808 654206717 546438774 683545097 273701972 229470324 68259953 627897726 446724996 998488319 173431060 302992477 195232107 322116689 156664079 938185264 181389575 46281964 182367557 337754289 219258641 181349727 946341175 287794346 770815441 521343921 149834120 290764861 907589560 360139313 529787016 479211056 954075053 261193759 325526835 585870962 285503938 906627282 156152132 328186686 489098538 770489757 56003345 443017506 27285766 982201120 587163775 196252176 502198573 27184434 726883119 46134934 821921519 680040406 167770652 603552894 444736449 440291580 339380453 681174894 848158891 921901443 20576621 382775164 114357124 664369014 515222429 49818656 16603118 646173939 315223105 73405100 54787644 188993416 205690533 555395144 327005785 289813679 919954292 590585333 138625770 484012967 540064014 390796542 924737497 958263842 624618237 4804351 948280556 588867743 808286875 359730334 832488683 951834277 772668588 647111397 934652314 605983299 919444894 970710726 899947049 19538520 89919727 804451857 940115651 112612528 104872672 412102577 987151200 458718283 326427647 605067149 432755914 257140239 60337768 561044688 733768808 350232512 569493674 473160022 142278652 117475548 158464686 823954411 840172452 675596869 553799026 287586571 95049158 626057198 317643818 152292060 863309382 14424559 237027059 82861867 508980870 59866418 271425187 471919589 701423666 39075633 927985079 234470259 703361045 529337366 681359724 773160506 303984861 855180856 508752493 54626594 999027244 220421352 151796897 250258683 672438433 20552153 920630557 265234051 123880712 383058816 798420682 226552400 220914478 151354026 777612964 165730610 377032540 474998340 363922004 446056403 830214309 761010844 628070630 223487571 995028021 464672519 831174058 569136658 367529089 643653489 464586367 377294914 207878808 216189364 511644470 921648871 944756994 430562453 971503491 425361729 448465655 930217966 376443463 151191101 31884183 907012221 699106504 404491785 555958335 357658264 1807650 723331557 259972799 340499371 298921839 426822085 382451347 621081833 50814267 231648139 128440609 632891659 959111004 832396331 490064390 830316083 690577850 271268978 532713158 225910399 271885961 885391298 149667576 742784986 529405531 171275546 901257819 426295003 421023309 294474695 799267682 487417536 81415073 683638840 325876076 814741790 310836264 918542335 536677304 963104697 406719979 723029516 537694812 924771683 987867577 300238022 822246952 560153287 209897661 611764902 129346653 302401351 365246144 542375419 916255636 124482079 270744269 466327169 202262625 807576881 378762554 107039391 480497820 341960021 144093733 299378995 360349004 421555106 283095299 923922256 970321676 357662916 1188461 126865082 470387716 47181822 792922921 145586970 425684527 309330153 862413380 865255747 370454559 105020781 7747376 918022472 544530095 60016187 868127001 755558203 410795718 632946999 47663370 250973877 721512838 48794134 16001624 708274322 367977026 264463976 193969006 375121298 849742715 824832528 443539303 726239961 467877146 53194870 95659629 346362507 238402831 683219449 724955885 683449857 856185295 59831001 175462238 79675376 88831485 745893680 479047106 86795838 69703331 186796029 274749727 371426414 359229176 527472345 920017171 537869685 935756259 299645613 564088580 727357552 789880779 877153347 963192026 108751196 917221662 108694470 64162992 910021056 163231872 635292431 606637273 743783021 255765277 364055538 519645452 415449419 555086955 599289159 227884510 699928839 535453440 323145979 172950 769326843 171846652 506316346 738434865 18457499 547834413 610731603 456023552 601176392 578549875 209879938 381030657 155077079 215256010 632789118 425122746 352202644 56948881 866780109 354372522 613534222 250815364 645444509 714620279 698632487 36059039 498880249 382550653 960220912 733477287 913009115 591725926 799539233 871782312 179331364 283151288 583622963 495716873 183741821 924489041 51484797 978433184 689959962 541672342 246789914 252808424 598748010 995498020 564074420 149187073 910540394 655864755 896994129 399316039 602280560 837024354 200148093 335198892 557932633 344292806 550840830 55579730 42190853 298567018 550611573 54468808 441740863 13956634 671713743 798346063 368131074 817652276 743871904 505277289 581836878 938179101 886687570 968899262 741859496 471540002 421345026 894875185 140508266 400524933 593824335 367657919 269609027 375760723 387561844 952565027 618705989 197273622 462018698 440293487 345110845 503769080 986369173 128166177 466748772 267035210 32336191 745305575 389024639 713277568 388818091 786666021 343227532 804932710 270897606 668091737 185285293 366306194 58982971 211112392 143584527 795818245 866975132 592079249 471228233 566434440 859239606 897529149 672309543 148451109 931833788 839080608 608502214 656214711 341345515 731655957 725389635 648499391 189493700 461164442 917535031 327991848 807549824 464566403 519394549 937077459 338246737 397400728 406544587 355510511 580880298 63903997 356002720 111390522 553756305 36192853 416143479 642766685 137077351 746298738 858960339 95273064 855610849 565211205 654873521 287278029 331454818 505128138 43286271 593399006 649180540 312086852 140093317 50870232 258844871 887663371 904770494 75132768 416939982 133966497 300039592 323279639 221907287 487634461 210085549 892696361 298198484 240977648 941483969 534387108 699872762 195473391 964066791 703136603 347826090 365612971 61745890 137379291 310209369 342777697 653157007 725915113 113098244 570491700 51655981 200572072 772362539 977286140 957823171 669222602 450818406 300070162 796399656 141455992 989117605 539337692 921423944 405922337 257184697 318827947 616506076 483546431 291367895 409949509 544979268 338991661 341890339 336370364 639878216 403520479 327994672 758805518 638786393 403826525 222572637 979268358 188392578 594361755 40677550 351001261 53114071 52160853 458603274 701196558 68429939 363013128 356867343 326648071 431084991 362866758 29529546 502446705 671158416 537763571 810603259 434355731 815313281 590701332 542510621 123629823 861916777 246302308 717827984 581927454 399558596 18186628 88711249 713954813 577118424 173579303 122224675 345928497 523603813 452329166 33148750 239568583 965814636 246713553 635238315 231563117 670849894 145812870 997675888 545037418 642974355 15723959 735033184 100483713 473467756 795042283 115420063 88433849 846209103 73753716 189359949 253838359 933831582 405605100 651690074 974420019 366332358 446369795 540199354 514306631 156463075 93483502 954401065 860810604 625115141 528125284 433662071 657949426 521435499 215290692 362676281 635537801 943572092 666086743 423465460 982033113 818102731 78364764 914024846 688764301 102359746 265360856 56887802 332189771 247143012 679404871 572218268 507724566 763315765 163628317 249768278 361144179 155920849 524433019 93349497 863849196 366501965 339415517 261037994 776130169 194244592 619636745 266311399 877273178 562815529 151002488 465468437 428800694 132192982 929029785 165608773 398653226 555414055 523214469 59567562 501454099 342481436 154137126 30644592 424348404 828339695 338496631 762411442 837213530 35118123 944173588 366350629 35231671 422960654 989893721 566488534 94364197 514050045 292089526 510064087 335650426 937283140 550851060 835122725 685914849 483138791 347323726 113817003 83367217 819163241 83423958 385017835 979339719 132986578 951989712 57737656 103429311 477362844 575721536 754292458 569290265 137034254 77694258 110302443 807050075 186443500 278960343 978294872 408255895 267646067 282982619 616843375 569092023 971137091 509886297 841981691 734442007 737110873 260175712 246126209 502405319 417483197 994872972 923685149 980919829 675417404 263531237 125651153 976237926 313442564 194717858 801447860 508239155 45618438 390546976 830981423 990890132 791123673 339416444 327458443 593035766 338660023 890615773 177853532 276453975 416647390 581666821 41019699 624466688 442304526 236305389 622355725 739084556 986378821 699530206 530101205 931617538 622445583 336290857 871649391 181347249 669726206 753424812 374176638 583954488 344631323 560035420 402961818 740518568 615418939 89903345 589787706 201369311 457463858 225701842 950324619 220158405 881270733 951609727 757173598 8126344 337195961 681656212 101692556 186858432 461911463 887979608 184827358 647202851 664785573 126312968 249074397 533668465 541789497 446840516 153511618 402080473 722128015 855334944 864774596 364889766 815944477 51409783 790428420 351674123 537906918 637797150 352509885 562242249 612063825 908797959 228695743 249954736 319684213 279974477 272574481 244079893 386603406 419184868 974968986 97302271 899964398 373429543 760457569 486224743 35493100 535167835 1489500 106753223 153341667 97809828 827248485 365944756 932498565 720903045 541511621 941915010 260282270 124627513 326636206 889941765 398004965 480178566 646058221 456866933 514397726 68907945 928861509 852981002 304646324 266299573 751734518 333479704 781364477 88178545 630916838 292315641 774043656 697468655 663221337 964440224 633946330 934880308 640871960 477680003 350044562 758059517 782232557 800092474 807149192 541798862 730134859 410626227 806506086 352757986 893064568 167087259 253172556 125413333 675180813 405605356 510043997 519471000 356505077 91809510 495293697 93320733 434402863 839199505 35277386 88824386 574120325 205020507 635708446 504136288 841268997 567547624 168479015 496598656 440796208 671521868 784825386 606020253 729488719 37500313 28407285 573014291 307508064 298333954 801041533 614726937 928643 978923616 512553754 285306234 170637242 497057681 815146867 127686967 981899630 761118627 449638988 985722759 482449880 38709110 848856544 939088850 147733568 279924772 737539390 701786989 559156554 634864951 95957836 720255037 58152069 482416667 12215139 598083116 391321123 345613450 922009627 16335834 130121634 358142094 7990924 574502479 198851725 540380634 541042902 468348298 478762370 228241095 178103070 27247349 803069554 910732033 365441101 237180265 452332956 523678804 710099977 943838400 364665870 458445451 958605044 720676497 973577878 850025123 728684610 425754724 447150730 772887079 537591260 896478081 621720931 726514452 554329825 772848911 706423117 393661829 548735707 454956039 523283429 879721144 94306639 817647920 498876260 241820030 221038402 137922963 490230162 855540746 783750296 674267179 391463154 449191000 75003125 924118377 695957373 819117553 489594926 215088685 10858492 152361992 563783108 556554463 878390430 314997492 965904631 431952001 659999862 738478860 113866794 430126804 254894504 338807483 829015853 404069854 446421729 694729061 288224725 784369732 145127522 260346126 989393169 866747237 254516457 731668851 91295094 744413643 182500140 730317726 317500068 698656004 381695036 413803490 164909583 567368966 228431392 774870957 411612587 67765002 557048791 710561821 930292046 413072504 78032442 694688321 79892236 320171738 719468437 215840490 446514998 978383632 494602009 695975763 274589982 825079367 742976962 239518323 637305803 809980915 814117817 308732665 509331024 655389202 194730036 828881615 71183395 500882608 55225121 348172313 597397750 194015172 373587699 468350448 806108605 364852126 244029834 484348077 808551643 364769598 984263793 106039867 963705736 646081490 465099577 727008525 128108504 758170613 643808250 576156898 475455287 924676660 133914789 664658315 716998355 788668855 981076337 478830425 509818938 299622849 140586125 175980291 490077188 874148870 95518883 910252924 407193149 688722464 754639494 896592068 64317315 914596898 9880742 43284331 892924862 694856858 529391831 559662109 98669738 296688285 105884910 404887994 17010541 943645250 934576826 962626817 496326749 636147563 431313395 656987912 112860215 301168885 94509399 741507612 356458629 899637511 123593711 784744407 383284094 518599852 809384412 884209188 934266779 313970598 734277869 339203836 545671635 947161310 867750823 529791604 357227083 300052141 428287771 327491099 611171292 508630244 976116455 915207542 588472394 954826272 655734650 771718850 865837615 495113819 283873476 429161342 267123315 336572849 497506185 881327864 371689744 772534277 135438897 632229522 584704913 715979401 151235936 49287976 846086576 864673192 249581395 386282734 27145710 461447871 364502034 25965704 934395342 879190554 169930818 304198221 435552099 29074702 462059321 890255722 831268443 395572624 202959921 881640617 14120956 915921864 880345664 903739646 12500729 630042543 829584833 610304296 649969783 61272854 707603917 772025696 855255124 512069696 232634744 334125145 955831488 598526282 411010481 50902397 895459736 770710778 555921340 371366787 510185878 400408666 442457427 492885136 251204317 812221578 130997861 223181858 37514040 675024376 865700231 896482739 103146082 156345316 411579576 60414069 53741780 464789811 322866443 191644078 904227522 470057438 206262856 665232445 710419548 213890167 621488215 35344097 2633037 290951486 628904563 8627763 766286719 120937355 606340303 760236392 858993332 755331088 497348850 135472089 293408477 245477249 114983309 65739854 975344090 777767290 33254676 1085276 382982296 193627471 951582977 386751666 452896573 693937159 461801061 773772786 532944390 40001092 87908884 256293201 171289986 265445038 26458831 788716114 275618073 895952618 872437034 924074529 814339759 34671162 53035553 5924437 476722990 727820826 158348134 69467895 969637087 370810015 888596104 548108789 674491818 98451575 456016948 583687922 623360241 372641800 315689867 94182080 66287244 669312838 833817803 910017359 253819228 954375835 326006966 821710881 997344293 415043014 189488585 222024809 953596172 371211721 286148460 419572970 974113547 81928109 442412388 74403319 318332206 604246310 848937673 260976296 747552124 452961405 998670163 168821783 804093900 131753643 165098999 277757829 530424554 428941401 188275092 641797378 482562198 875714802 294511682 986630947 216803950 483624611 928048889 846903550 813795322 424487751 104388484 857170564 29302993 89467503 439431819 852890342 269980266 178852306 189373700 149073940 49937912 797717306 548572533 329034031 684536573 242751347 464405349 998114804 826274605 682639852 650712533 806911004 203662 326291785 700557746 566530682 222622057 155310732 875622081 217471306 893486843 564578540 645020834 438172560 530202103 53521455 581629504 738046147 917490602 874279177 610703494 330732441 726454372 987503879 20871025 465348773 289785062 750009292 272744154 393991765 692353947 313566423 500404398 651358288 808004925 98772566 20164856 141219848 273562895 729257001 819440504 553364605 482331885 623101222 339705472 169648418 469232985 155714128 348643133 12836445 416394308 295311097 259113520 361741868 816926485 87138982 510504955 376478035 617219601 130017939 403647674 131898960 120366892 549680729 49345247 764676761 27119506 843245860 502393357 772393814 238072260 39080629 438524948 642556392 267399434 860015089 55304455 994190163 790091871 345136197 976606880 642670481 175970236 799575003 575990104 385987473 136996177 242055840 922309493 751804057 708632600 133396653 152836418 398613743 292217855 216836366 148646374 877557472 310439986 365917244 304650234 531095924 780379901 703182372 574158998 391549410 455025189 337414432 322106269 486754510 29733194 957494311 371121567 24961888 325217685 712212173 750475805 996752626 894893033 113746082 141585302 812649039 723977382 832824545 963862347 994156264 64594023 641222779 115817563 443058874 323596226 299626838 529513893 2106755 435812035 834205807 67598217 378210559 508413205 471601271 355764971 202805307 350060844 795881305 777348201 149849433 189166381 895212006 630535866 553595818 482567592 530806472 470097303 877738725 33132898 51753658 786813296 870551020 494258295 670372529 665153244 347040182 230247532 782265299 645318402 619208857 591966107 829053016 937891749 606204271 2537434 765242487 640960115 190788899 226840555 448756165 312169593 744571633 527776992 261285679 811556842 80641194 844539392 828423922 640737990 922898580 431804368 627858059 493368887 742099565 820619790 352524855 298504247 927091911 666941502 6804142 371364668 94175399 935958249 848140769 800915139 80071026 31790323 502068674 948330899 989627461 227877218 495508137 674367221 829245128 778243409 386812738 173436010 9229226 784832855 870055742 846764829 834469750 702924172 460572677 123622093 896522543 875711246 813145936 734372713 123223671 633089747 59133112 120111268 514785530 860548328 548518544 128434442 145738864 908298309 694730391 421022427 58228362 928255042 167165758 728971605 301981343 929174736 701669782 200327942 847489042 351508596 422117431 641623240 467527718 431485676 655876708 41563792 156095455 672026159 787876392 598073835 364775363 744096688 609209388 588789218 438524552 506577760 349073175 514262352 425104917 128003705 711668553 612710805 278615715 260259354 41692044 210101537 960572014 503750315 711188217 229919740 334807571 914285672 886746407 762720912 923065639 358523925 218496165 43161491 670314653 630474766 383457439 52171169 761239920 959954472 537172434 356256920 597427550 809151421 120883490 88676731 777623353 937619828 974478648 561134720 995392066 396988764 683290243 654525636 778283081 491479572 962211993 943848599 665257876 419599499 365356949 961084783 241092915 155367493 204826928 895281275 41264316 70902989 774331686 504630941 309575287 163229151 102045401 805514052 266502333 188392312 517880314 584933139 618991539 953438982 529815419 745222014 563167706 472861700 80793418 281397697 376598498 28080569 521928159 317698700 903160772 453252652 385768500 114822741 687149456 460733464 480619667 203366043 607283719 141071121 732103346 597099051 210215501 756522676 529598536 948133091 857329885 915464176 295827828 868476264 374169643 590598431 508475742 707005121 751450048 242993238 983924949 234247209 854897068 256334004 654515700 640421702 982560618 294265075 224289284 766548922 46917540 112762018 837577756 214862044 577534583 656203430 193361919 1943522 273287995 614345958 400454823 240125016 786236831 845336121 246605633 702262178 637614663 276595820 155521132 843743148 710279441 758941032 308342250 453326339 905066011 807595026 109718907 984484409 557950706 805034202 716949930 711931618 37984397 861646324 924402376 708783722 777895848 476165398 57663451 126619849 454070024 567461015 945533924 863319946 400156890 517021254 13957057 107972925 710193796 61986388 382627336 756106851 354541537 370414870 52372320 1220537 655068121 289113838 33719307 570490641 360283707 358365583 977770777 650328433 337186156 171283310 418778879 45618318 354695116 891564031 590721161 471614956 55005692 617964478 166339025 47410656 902690137 181783637 370384303 787801964 500274256 122627071 585319581 17652982 591841997 428366766 52937997 652278222 168210207 763453503 472703313 999048491 539160951 102380560 175907048 136181461 318540883 37410149 236838595 505778896 839035188 336159867 938272499 874755289 536243291 45716246 770481908 786014848 715786227 239998952 536287292 903011006 442837218 338797010 92636615 978387117 335981115 902012469 115596655 122964771 548339373 674733025 534544554 985995898 969824909 121184563 960748389 565990063 457528096 418699064 998525230 295871753 355675701 245117900 624538184 527763194 394069565 11253457 868683696 220813595 642990749 575526688 626562770 209348828 695299541 614298706 997020228 14442483 129769721 385279023 224092038 137013780 521255515 196245993 558750925 731366025 730208853 469726052 256851744 373492323 153223631 989210880 833840186 978125127 539416849 57738343 872078181 300650450 895352979 768750804 20130297 557882431 779209052 422415736 510572395 858771555 423707195 626038319 428282216 72838313 50559740 114104242 449453788 527071125 448891464 961756542 175663375 355759641 487399943 238208461 446862946 318616326 595105163 440805197 63444006 207207462 753518616 417729410 172778669 776175429 165056012 64097440 145035162 85010903 877691595 347158259 913759962 379838630 848480293 608122128 886999200 432459999 381873980 130585886 192407201 589628398 853857828 160915850 230808159 504996095 403226967 941845564 536819573 312195980 847428695 202248648 798377000 275321568 498380433 585162580 497359902 541170731 865617106 593316303 308291110 177936597 621708461 615997945 590609452 280357967 647053820 288848491 156369767 355966054 867513692 185528674 599357345 580476398 867167380 136829535 869424179 718677006 797087179 135069917 639961895 389753857 826069175 657046970 77212271 661603077 849189721 821184350 626304596 45419457 747991548 769382866 495257631 328104538 280826692 358713455 228948602 197023064 579532911 10105290 436467143 337204954 381441758 669832165 282280124 78769657 615208630 919145475 653003836 665982696 74430712 595825826 837810393 552524847 835330323 817361809 821991634 393672463 170976890 125487989 181679418 659790808 68223748 645422278 550499922 470610763 199450403 232920996 801557770 95725837 554533711 328493082 526715001 503985482 786160088 783957035 155465794 566519965 268532081 979834251 224363531 641240495 624544013 482680489 437404806 606511349 390422540 134213717 762556001 111885575 543354647 162499005 719976600 309179474 982207980 146872694 47454485 163510301 88599030 365495623 798314711 353313858 803838741 641317945 206399671 327519207 6662968 745953124 735442019 276508035 983395277 157527507 742896599 512056073 494702100 951530374 638079062 646589730 745353660 195758792 960407544 570133750 312985694 961028206 536999982 243565583 788882113 162863449 255932767 974503040 376023426 436727828 292053718 193903546 994202760 227578931 307768934 66156223 287094404 260666959 458350017 527493512 288292904 839571264 416392609 58929856 991104662 701494051 837133573 794439086 955349399 422201383 354954047 18270611 575093800 238819827 675592131 402736399 733648060 477807939 796753767 487346735 242080163 282001157 495240340 335638944 374432449 198081472 664197820 816479585 994670296 505112613 727517241 303450802 718420374 782257671 721555443 644508656 528947778 370167463 676181004 648716279 263975972 743366467 541833353 171053349 861062322 410171545 603835740 170618705 266447151 592510755 369349676 881685347 627009588 474034764 913836034 334854123 570150994 796982476 331976454 456352430 750974239 487780253 162964402 654404045 541668242 708259745 569002755 608718710 747099742 525139181 192930883 642271661 717915755 833703848 61645115 376303026 244684424 86031680 214212987 290751659 418855518 631391068 350819485 260693090 557671451 919967021 14690098 218407065 52338821 59431389 417576121 550102771 156263792 895461423 27343840 329853499 383373865 837721652 595779076 461117327 441820302 353115626 876493461 252632168 797655849 429928537 844341108 794890694 967069754 618134921 894949378 582066746 300661343 199135004 774797852 965524891 172304764 991097414 368885849 72584015 684742868 663070340 470423511 694201121 957690898 564820896 60541982 930304665 640490879 540525810 337150163 29449972 869876640 852543604 67848678 179074137 675328592 961656190 422497769 859412082 283272745 947957001 641950877 38221919 597874718 611314070 670964895 904483651 96253207 527694552 22804783 605524736 754613507 921903690 499044286 757245002 170512988 284151954 136545776 986026544 3707191 113101073 816501212 680494956 15615895 382204786 944151846 704899295 709453896 635919900 733204603 10296554 538589471 814937149 407930471 639491381 638889161 619844104 726981042 591204476 638537873 891449623 372083406 506095592 202069692 416727605 112822919 159685807 684792207 977442481 477017109 874727655 799481672 93547348 351019132 250622898 553604550 129958100 980784990 480625864 599833187 106233632 665771265 222397894 105695297 575718127 977123310 757316055 887226044 457861876 496538634 465622381 548710927 361111974 348590393 493163696 818055439 990112351 214949270 663258014 555115154 139430046 874471810 186091535 583338466 335207818 512071008 481931934 249752962 853817581 516662880 877201337 541432132 146149291 975889020 295810032 951314274 655711291 708353062 423967468 759607115 396133013 907257422 312107344 286148038 272355688 479901245 551546557 853222922 279175496 106531785 120010579 915978539 771387015 364434310 795192644 952860189 197530964 141733499 670087504 474233760 772208032 202329811 24753266 506372843 238614004 786785167 602865902 855572985 650281839 677435465 161389466 264867448 877815405 573702743 683236748 286425936 897003090 672967103 765836415 315867793 164657468 423117819 646926314 557464365 853133263 766329924 411591355 124456650 410824440 705388401 252208753 429845052 253475826 227437554 416646489 985136719 330441166 418424708 856859838 703059803 730140422 567406508 379029920 501919614 137038280 619203276 832037208 885767626 69336538 844314331 944022936 285645962 525484575 839860606 678021194 452997458 945093099 7933140 151236591 262926936 126706049 66445558 527946036 251450311 321797915 408258527 286202459 711451166 202691135 511338416 879610426 61839934 859758726 744739116 252018746 364073864 48402698 245433281 595759373 614080760 490374343 201791773 644668512 876691578 354245550 274528963 447630477 464586215 67788156 200080300 141368088 363493349 295369167 456669048 769547535 195040675 116641029 172213270 154232012 831735835 564684777 920719398 976782993 46341667 13526784 580767879 70346517 668806844 966735545 422783617 924338500 752742793 439460108 553305627 915759986 537682308 652568610 946269219 877942570 485801036 353770617 649341046 510514594 724895261 265740461 679068579 404805741 629796762 540121544 669079023 829459751 689926240 546350999 122359354 751459514 772159513 8598120 553511244 359321324 293937157 527181746 460090642 498797572 143902065 247180238 176659398 493332535 304625653 63567692 500246351 184377986 703915553 859474435 392790241 188655102 69810496 256256929 79084062 602587873 475820140 968564455 304313238 582318868 796928346 22294053 752015468 739161258 118087428 208173176 521698328 932251713 585844144 597797393 749729212 439886117 184357340 703320330 246539561 989990150 462840128 10758657 399729872 800241275 422426964 529664728 650108 385640949 283712063 189057307 983394167 451461307 742894967 497218675 41815954 240133462 176551481 543087707 511744710 621043281 146581432 822550940 390953296 599947585 353931028 54507964 965254545 91628061 125138768 632262689 410489739 248117662 530587335 296534519 394605808 826333809 919707712 580030649 703735987 569127203 389426164 231992253 74965721 423748007 389668012 424898734 955617039 898818538 500549313 904404085 817275157 122616362 440053313 568752809 186594137 187116548 674968552 183236030 155386899 361777077 827684094 520704408 617928118 675696774 111730259 974813280 292713142 262734720 804321670 638646968 873052140 448678788 709539821 78005647 740180462 719925049 342993749 767723847 399991927 835330580 931512979 495073235 483322624 572553347 246429934 602127163 239711186 986223750 98955472 172606670 584425873 524548606 563594618 937989682 704995449 815016952 503392083 865102382 948933789 977593178 317886451 775996609 349032298 897307923 885108349 377319781 465540532 179475097 329878230 56052623 663404330 919322599 654698997 114164553 323515606 293625163 652420644 424808921 980416383 370882011 35482290 355261734 465331144 130761406 660515361 224809658 643863202 977585699 643936480 105688723 753385539 80311636 475905894 806090578 777408823 306135969 628193200 782644892 945861290 229300797 934609159 685907957 85410047 739902270 33435309 789103188 803355144 613875155 341737501 795771724 234286334 390092748 681572851 446233561 819725338 47110749 93552142 246097063 711009187 572221400 214375854 147975383 821902576 893890317 867057171 92457288 784844155 422013275 446493402 345004569 109762947 230924787 211491829 476174402 4307359 971756757 449294544 510119749 634669185 357854736 980926285 400728859 272332932 552079835 177232423 851030826 20380182 853412175 797474601 284943039 698370613 799781542 520437368 852069600 423325140 398926740 474892644 487709421 44049737 481404903 648868893 868286151 839790944 896051010 291796166 908262196 867365654 409928410 68667213 255269137 9539908 761582754 703523765 179125030 600561505 641710548 149369294 437588546 990937871 998837117 24482779 688395097 730649082 557202947 377393947 662065623 381420748 616775004 905292138 46211302 613620616 827594027 171357371 295362161 110626950 585643741 611543654 27159084 983183665 286610523 723243161 64150526 48308947 905960649 670514692 660109210 878350671 288668899 642467755 531104307 833117737 209035509 15373288 931272102 754256187 44229670 673083622 777420934 950927554 671899272 188342259 331760569 570199090 978606041 447213895 123688878 581088958 604513696 180932541 750528574 392312262 158480084 233144902 990976227 599036178 185214442 451116974 91466552 752847350 663534887 541590456 194766059 740641829 903022343 350113120 574940463 42326553 59587647 776379143 972232880 465948122 109659723 301559569 884353615 769213049 533712835 894694824 270055927 207661034 456257855 538195712 958069123 720907536 819664375 124302764 432337685 656872205 636480676 300575679 716397675 407076153 729523044 907104109 446668846 634684340 144514959 958844454 519832716 107884555 146850696 455854577 850020331 214529431 101782418 402268555 427142698 704004402 527172578 291373773 75180841 935873023 119794178 458829838 720696354 798374596 166825164 691950535 568541678 765727632 357323212 79751719 142585559 591482299 472247135 759274700 453745354 295362853 823210904 581078280 554418531 787908461 329128974 648879736 490532901 28545176 103752503 219449918 735671045 225088475 771915552 962770698 186392070 745988439 346492757 735970442 701290958 666527208 171204301 24199584 651639909 974060546 380962388 182385761 6545839 853404375 214826203 34584541 100886457 394041317 164694615 269045013 969449407 991938659 288266496 56638995 671619931 261345631 283153591 105446252 907320042 181441436 634643198 952856846 863156119 344326661 769256283 445812543 974247967 920443398 125256999 687022229 506219456 237441003 442389804 323549003 124086517 431655871 96514305 486494113 560875378 819984491 798484659 688878407 327074801 185180497 526811668 902469709 473573989 703926187 416174314 356944133 488424058 449706273 538970578 380960267 966213083 52187875 961004541 809683008 592985858 358519843 600649473 14760402 866969042 521930087 791043005 833171290 743605836 290013536 589457154 78194743 607178349 313865936 789076413 826476470 206365991 851062690 230990621 125431792 301197671 576669337 878784834 197372664 348881352 924539418 678947539 371526579 458376524 851793385 440237313 713452741 783772273 310664522 537886295 870947843 130426602 449183561 45099843 440967490 146644387 827749138 80539217 816346940 659059217 186414357 14859055 731592010 174905510 336547931 857872371 701793602 361540799 731578525 551502375 444018399 262690688 319041077 964023924 4565666 583719044 43800383 35405596 716706474 270415928 581217092 740628713 28779364 143359568 910744900 215389959 754765088 780089458 654187858 359261227 847570315 212112461 999001176 590733643 328171201 197675699 954350512 692408775 572421872 997461956 63727949 942727359 220725702 871875300 5219635 659003574 957542509 407949294 170538345 171184009 468286231 397429173 547090045 145833944 801802472 756584391 3000824 847549369 682412688 435651345 75164669 704471172 128746664 455356257 662186081 106349892 329239854 969932731 70224094 115558516 977782979 655627525 68512629 552444299 494551216 52676536 420383983 301771868 752682258 307465789 419212292 191813510 798511682 344252063 531168721 883103559 975161418 78428769 978434372 988222842 174914331 808300987 665322364 98199813 401908526 376651166 893036324 845009317 27664037 700819864 650690648 639100751 986966596 631123059 477780490 354306470 912223240 822777860 485270784 861462606 631318281 382471384 59444571 551907094 344729673 815185645 44041669 202979876 750402130 649983726 195226445 198814588 148216030 667743159 539805171 773302683 983272271 875177488 936631887 942450019 734211596 668106666 120896543 422506022 655749470 295287695 992448504 145958307 908289998 453396455 373719219 640007499 685434349 212215830 852965701 908580329 636803117 961000391 858857491 43389786 107523434 119872655 361164385 262871799 448411607 499296963 820252867 79417003 554954066 226861842 72780539 530096510 638256710 160267917 464499268 82001633 119981669 358528961 622314919 6532689 619872064 656258946 224559631 700580385 706243553 21843792 628440352 117738758 977966810 883428454 656383847 856773522 18833277 133451165 594604517 812328864 333617001 4538970 916424890 676068808 660312114 401791175 35857395 13818510 547500353 418134231 752757510 320436960 716494301 611676444 913395254 429275392 333417199 924137462 348561775 775027450 506029015 297881379 877614520 939125064 205925420 381226662 399974280 246705596 213829977 305442922 61759896 367681347 712979143 800524383 805066586 667715638 463252792 188699283 727488333 329227901 899958108 886597640 711011187 19266765 296059344 969867428 37121082 156123556 636509460 324689313 311959990 927693352 678609123 543078396 57401577 872401232 238561522 568353663 256692431 499218046 68094335 44277754 915642010 957552398 117003159 522527887 869719197 76455269 259231530 540922585 892041002 760834508 768916234 787633843 282702676 452908050 628507441 234974869 64324027 650278846 402802167 153698702 386034457 96347514 296485160 500626030 877831315 539771009 869718906 520367159 917007329 345094543 322913700 485853675 770078932 825428782 552813788 719161906 386697710 220524390 969263304 61022081 673757871 756899800 878767073 557242578 759969033 731590253 679360301 616600470 305582991 229185630 203715649 854211423 149500931 604161035 952455449 512191864 950135827 943450293 901780598 788354383 792159889 881378134 532616217 316314064 930923170 601276873 907763604 646526415 585267215 653238358 370653289 448866911 74963691 302876794 502774532 458676430 173348767 796148203 857707115 994394215 702885602 988330556 360264761 652426003 687802626 195607544 657031350 379397811 371024230 931701391 971863496 561882829 947364614 134682971 363374855 84964338 90845354 69976766 463374044 871189312 102121201 118446510 849904785 991714733 957009752 349965939 298500849 515864406 528439396 616887490 832036770 651502238 555608056 510424284 794567050 717807080 951699301 379491198 101745109 654808608 525605369 670575600 648269218 312094314 391601572 679472003 854053995 124468780 449712028 339774043 890601515 141894310 445001267 318339992 73670005 25953485 968116876 384269399 439698871 395728251 647555733 478300766 118883022 364927834 193508667 361372388 507343846 777165062 187673490 859306415 936041255 465903503 760997116 212350103 359059814 909963566 101799079 596816544 260816597 902533926 172564766 460537782 609012164 80618587 36818253 407332246 651131865 455417916 542562571 626371872 102170008 293185906 916423459 435863348 56473500 615525079 7769158 833742329 572990657 951047407 195683774 860189065 158749808 642108812 602490973 321887319 490259466 182850254 660475491 349221551 665652345 570529404 242453025 205846885 257675933 76802200 829763136 730906356 904052990 20662335 996179862 450579049 167496840 651823774 770565385 486648346 469042642 731522560 890573870 731869413 883094758 269101728 216311921 164678146 601963440 794015360 881953890 209639532 941716768 62096233 688972358 927456738 360079310 281043206 684229903 184691970 618948674 822314356 770871855 832294313 847046016 443972470 811912893 951107625 913935178 853763471 1010719 724481261 27483479 970604809 723328904 470370582 821910029 223863078 117539231 630648541 463520581 652898815 65196144 198625870 94310557 323351128 141699643 389236530 211789602 470023998 5194011 118799570 651894570 546197499 150401205 72686271 621378318 877618643 437423062 278400397 572418546 386590899 418231790 503394074 992496406 710673263 226293667 125366436 380610924 467163099 431895554 594641899 8896102 365453189 923115648 729451238 440085556 89299207 507935042 291752875 120276729 827252498 107275766 628232102 952470311 469803162 709239658 133155148 456985542 560960082 330824841 234607468 204423269 556956764 132976349 437019866 525195740 175529539 639191740 707814332 41038353 552254642 107663966 615413485 724676894 797537167 633236551 694507959 490386903 674083175 348700633 283151171 39537124 790033335 881031757 538649562 39202657 722447981 611957231 164877141 433607591 756017447 340577396 45341972 872488728 426264730 508968373 672362371 306628433 50483575 857663495 246571505 340444352 372916817 256332227 607664136 296538228 59750570 751540157 49195794 942241399 568835587 316708582 339193076 594548653 877018977 944585313 663122749 792319003 94079934 767919411 363473298 167667443 279055131 713980502 561893962 695181466 31688876 702528648 420102620 761851542 15527312 377825191 328736425 652999192 296318969 112780894 18601296 999421721 911187086 927008750 761424699 239201773 88022906 372549489 504551899 889172936 387411382 393580271 127688549 331564311 97824975 694463915 843110388 798566811 559149253 301803623 119667308 545424902 390689392 330752575 160778985 439780121 965956600 973018977 178092642 361095087 67130343 674819963 135408542 44098534 172032096 18384472 468639657 593486510 636242827 373892475 95780686 924167979 24821210 586126691 206368404 249448492 902146079 761195705 431540405 584936435 695395113 274690620 165026481 239382107 774413350 675113007 154815682 504457041 497440615 967191501 526959058 197448104 480231502 201493308 605976917 527378134 801722670 441533280 4249950 90416777 591057628 484310162 10564958 366964140 950991498 52208823 510077494 784748983 888129243 589465949 424733331 179798195 713708736 543066529 513225584 238379842 911774894 362716160 440945361 584403649 228236519 34216392 496883786 358676036 789495157 56654034 763037355 690438271 614817131 852511836 506902670 566529085 545506426 415057987 700634815 472941662 674501658 242912600 458591161 758167079 232187738 861573915 716454712 365560070 213214640 42788810 163914877 158663797 953587508 597973291 858293301 794823488 731714964 573023567 122208873 922125215 122006018 95395423 934993866 293790591 40165260 553152244 318652885 149950369 639925342 653061905 310883434 544101201 254186019 322000760 65126135 533940523 801310696 569035410 311935334 379333153 518466932 6764519 616453568 297125921 771187411 464738845 340594672 346756339 866325022 52869933 270634023 179734448 41685204 718045092 80514622 482728644 810375749 90533668 656528202 424800758 279673902 535434437 946097087 718202952 133039154 317126784 34122679 739848398 720771438 235489762 263522404 664578764 797153564 129278868 121792099 874607396 678669976 882406391 71631819 607373210 948818829 620663229 280450427 851305253 200298871 384107742 390072160 532971409 696320036 34749024 39589211 853410126 567179124 456356053 21336732 323407143 382753046 219734256 264277228 242313697 916546211 52483847 131809117 412130073 168944603 314605005 178231019 239573813 474099069 500037602 178563649 823849842 19133371 267669246 409785794 760108722 324233324 769245581 910650688 635749884 388318677 419759442 326796518 272811882 493787770 464525552 725659985 186272913 779897145 996058980 977222368 988177905 738425996 253915130 594089131 804140936 960737290 815482385 661850877 800052184 687897851 602905577 301879276 148754279 551950887 540220090 689978962 350911347 72509969 272297864 984680715 424522661 93602803 463103705 767890076 45936924 99599779 153362117 751211153 48814070 82618549 386641181 481398195 836770132 632270437 629748422 649919208 59676726 172110423 850667486 5411550 726725175 854999989 832468627 508282875 227183743 856526389 9400245 380334579 267037975 202228542 560562882 369792296 746351329 984389662 306858725 769192862 551713108 54821543 538938362 515481448 438638388 843655183 452407385 362534007 504358925 447262821 31286090 912092980 437205106 672946057 769676247 895426663 45931756 344696213 613305212 527379759 155777848 85859220 234723258 963910322 629263553 389355422 409341078 676360490 285829865 501505878 880001170 835487756 605677001 812586890 131815955 274186113 492471678 944511897 806031072 434260695 446002817 327765834 408774653 992186242 918235135 532747531 763530532 553501120 881063541 524367221 207770310 873394475 459633137 189571783 413944172 49614298 104310876 593624967 114654213 743017090 59728459 608180925 169811700 654919585 447194509 891995296 855791124 698487817 187901333 336564242 940104973 260243364 454199498 688439419 682015112 472385226 15159552 473402766 79956638 465445638 402448216 480287019 380968356 203251817 486500472 898593414 556794603 190340274 738094504 991838604 941320028 147168883 505246598 409085149 434472566 561558879 842839564 547474498 579430902 940385555 900220865 11109166 160301161 597985489 857746 381197618 659680277 863401091 781867627 939440727 82441268 911024323 525851 274315542 800999805 193495646 564300084 374392178 96991637 407768898 18029447 198993330 933237725 690390778 483068572 402223692 605528041 580524376 429939010 689657777 700746707 535393023 131776907 372538402 839140841 389042271 249326463 68127315 763190790 491424920 103142794 392111329 192644853 512361628 215650116 192140284 86940569 155736933 551602112 486170932 351152636 346942736 53305057 842325051 490458648 86753388 278053521 53463496 58561739 778037165 813255752 395405295 506548832 918328058 973523900 311740846 948009000 120106993 918262019 665994731 860906175 774912664 830533907 635282317 820586252 663550522 975156499 311517648 595900022 170371791 830780460 258261433 735967649 293863383 294636606 970185907 499180439 336861216 613101558 149569658 696238110 346490209 32355373 277939520 48662963 402732895 561218767 981023760 747257841 534766586 373421430 168503990 869541949 469901158 695695434 726987075 139074625 815851214 415314821 174219795 196284643 912803861 711812964 603792239 903775401 283101211 579573492 169736480 98769786 491615526 624035955 881952940 242899741 848943287 883798852 163793475 430973711 781721259 752214293 784595291 953535501 398286539 806397159 354820336 31639449 151780769 940926449 145297512 388494013 117307256 951768550 420652157 354727770 577187196 670352018 954250226 947404583 952331400 142766560 128414082 817990756 487742965 279062245 187455001 928339672 342184972 533091132 276579717 516434027 765057792 301946235 468572661 28183302 509121045 577172007 220389248 509538807 784233888 264652496 377204841 296944745 212695252 361808602 791594800 142646339 874191078 447364629 4350869 874305556 727524759 568453370 670436183 33923635 860505566 95476796 180158282 672772953 192727323 736772198 89735237 663682362 615138560 935083363 609744295 76949464 90973656 708430700 372625134 620901049 554084611 867535078 326503875 605297931 459633080 814981251 653823896 166451097 581678661 570129330 914874281 54935414 601872232 81362180 689077750 336905970 633318213 25839955 566399999 781002442 382361150 848689293 835216367 600606412 559949189 125901737 911790125 657849020 746402317 198843182 880325904 523299244 852264669 159566729 709668010 818443380 487752888 704316634 431594723 982998528 980628125 878254977 378484248 167743505 990349419 122698418 77945203 631149238 795781549 714632624 632435822 174627533 220865704 110019004 503492653 189787115 480505687 886831084 60117810 951642444 423610424 919131728 570822096 718809182 851105351 785263332 24112277 874257916 251746801 997776152 680233707 275135187 987303369 163609724 830800337 578299866 569910671 498042243 272943658 525671726 432210506 191041293 913117738 889529413 978078732 961872594 597419168 737313636 250408816 986759544 391251314 467179028 157377070 147594979 353456967 364750614 424112401 716403189 827125673 964105186 716619413 474702507 66932103 689663570 107492760 719903310 633287167 993297096 404089974 289831155 46899914 318808931 755135270 508739038 967314143 476298522 581734633 243737973 5668957 232130222 591905354 22522849 261380138 297399330 714944772 833788007 502356731 830485726 90260577 358815047 455563014 974789242 729584638 699401616 184752383 300281657 222939527 974361237 975187208 862803265 18784023 112778602 88520429 264590617 811814774 343805002 905183288 745635079 687516598 120002540 260519086 253021403 591328809 599475603 158233436 988548677 265805125 269461470 409235640 356497632 404827905 920150774 584065547 766528287 914223501 346320452 164641442 594065557 530718063 987899691 250548050 971820292 350261984 247021237 936941813 964923245 37072425 5121236 320293940 714353945 916719510 812727630 877046416 928995710 740436214 968191102 392746109 968276612 295599140 488766368 198546840 597255899 439082403 49296615 654881683 860424732 98287876 695079699 547915218 619525623 909734234 442572347 887672938 375689247 907424498 257304041 869327492 951772152 189696630 225474675 960530928 402952981 181633140 102170680 347724370 237545004 398161703 144921779 389822853 616483809 224851820 913783625 904110549 709569616 197925579 50617303 353116785 487762836 380286890 153452666 580778373 740769369 912835067 208638469 43692595 989477906 364205125 395453051 9630007 862283860 968019929 240680349 104881387 142178581 870180571 967555193 146941329 652116068 37651923 910094069 422552548 74871280 622818462 562503065 560298048 784877880 124803090 879852568 996333437 293440607 457632396 148965520 258721348 376762478 263161880 301533697 85883575 170541905 637836446 436860429 142830585 869340016 459200764 144489824 203984481 98924194 163206099 15828139 744256784 184894680 483950764 890155820 629172231 158272609 318844697 144338622 79729431 681836967 212512840 882036909 567126565 463349133 585511696 260238756 884194934 559359685 860703677 458759056 338631441 836166133 940980030 302272545 451838197 462626202 659430439 932960599 824049158 424383722 959943196 266680175 774606377 320019959 165229893 835633228 437631419 278672171 756383160 530322106 900912796 951157646 992853933 627125337 621185785 723491212 193381767 623271224 187950452 972723838 601817442 865684488 131225979 156752141 120523134 272523832 34231820 136244205 522351326 29817416 607718547 700044099 776565856 433223537 646351213 248693359 649054243 623944459 301343809 369481084 840781360 237716462 911837219 704312511 401114684 869124609 846444090 995822627 740480131 295623290 177925331 757703109 709999117 281904496 966599957 26069411 825687780 826221326 23807619 149227272 284661543 174989527 73285671 182475489 793718937 148590964 555894235 772969193 968554226 102354865 757462849 351897382 534392594 474978588 418739065 990417926 391369897 597040117 855942215 544721036 817464486 917667071 114648491 955982401 757515431 512288859 783536289 228592584 7957046 50468848 148674324 79452190 194634407 83215286 196194575 665249052 639003746 629320388 698099459 514044716 366746215 819437109 566190026 618376766 240039827 987272855 22987951 860811354 354969988 169767068 537492114 482878752 115946036 342022346 319243463 918751117 670482938 814051328 3418306 65967835 441109740 680682146 121062971 232711039 430191453 65941889 136620881 158110381 447735266 858669750 31662007 554713362 155268057 366346614 12005611 284780866 992570897 61603619 699045835 388389592 427820935 820068367 435693418 385691225 971502057 913869337 851561066 297735367 940498818 196551605 580284609 101431646 838739761 799116269 771917334 983983909 334148980 419356962 693382348 760287858 293467896 180329633 425502859 911753138 679691065 191679805 97741987 402533980 822328874 697143618 836200746 357340292 804406926 155702431 50797280 702124611 505550462 331093493 868077841 427915899 198637483 227741773 430431309 60308487 455787073 243336708 566861480 857917638 838811426 699394493 852764665 957671589 618364564 380266622 844533284 659782976 820989059 262965533 591319926 325541857 771195003 952887700 363638574 546371930 548325092 293700931 510226735 525665195 480230437 108001092 406027222 179192631 474242155 333589003 870643971 930738388 924190606 970382454 679142886 843907265 1384102 37118937 341984014 569310373 208932309 265184268 556419083 553709855 87257325 239971405 562347542 671644540 644392969 875634567 675317029 103560315 720534339 601263169 700170653 688786915 326741414 647853209 945173684 83555883 282503333 499617378 429283061 890924872 881609700 379364764 235114983 880450981 979032309 557889113 556662716 1997043 312474648 915592100 678570643 623087823 773830625 81034684 80425249 381854193 155829343 262417381 500841382 625963294 936576429 957313138 620743183 117548144 448547541 649086457 457077453 759606314 489586626 530932285 613474229 757826205 830173923 831640562 929048284 387956668 95940538 330396711 573279412 785009192 463547939 663040488 997022989 723411705 253552287 593762531 397902600 792848824 302934844 188608752 331119143 71260779 876638357 887753528 376278133 709577273 284271241 702231679 574261656 440701623 336794765 130488786 647545478 395319005 600270916 510399675 832841249 378712971 636723330 5927347 654708699 488406348 776074711 797338622 41367245 244106037 418958233 144763878 195080602 817341844 929055736 615698582 703977407 260075000 655741118 173800462 951949703 409551001 791274612 540239129 323083050 228152059 22079247 99115443 989316984 448404728 731241679 449770332 300423718 567437421 586063009 716731234 838735251 141785531 520817568 204046951 53184005 890225657 154768011 698031408 82455146 502428712 54717441 642491913 62085378 333495090 229589841 65302718 799894766 428285746 204804339 349113449 841196329 429245952 215137008 248184932 803155680 770950947 667510154 533979312 992178125 207123896 885201675 965905644 657678905 313353311 959205590 503977407 874098374 365420828 367585424 577331364 507079257 750559945 906665558 883439213 611119658 499699617 154090289 37257053 703500169 921219318 351648483 970013390 649298024 414143667 716628796 421134128 850576002 107188576 18801944 379539448 350742460 52707225 19540568 243203910 228277311 729034522 948365941 962473951 326587755 302408251 532945202 932085305 650251815 697874961 345646348 447028719 278210394 725766354 718708248 243853211 666865600 246596080 422453222 264127303 974039550 462834911 827810663 15015922 370260728 204215767 366910762 57280417 691704249 518239651 486643312 968045783 798746324 128781364 529496048 430026652 641857619 860543497 41391591 602041293 267066231 78334252 314010769 233485902 490053653 54455445 191621772 897722847 380992919 20072148 999222564 84838090 790974976 652872329 162089603 544705740 817953484 559743893 293678684 964808305 998101257 53615794 190797021 145963082 138596303 403303330 762417102 583301196 116136713 104625261 738847599 455108050 842493269 246584389 364407902 132171056 135948769 984624727 857258705 452808938 552557880 706528402 905867718 12186409 682883539 880321901 691630637 815253690 974735511 881508560 79924162 960054111 376509239 599354674 654759631 305785558 214545492 163535391 591068307 212786802 119263275 155567018 605938018 292259277 192993896 374365197 119498287 653987157 381569277 781958270 603734136 55012986 692196976 985407397 56565245 361395186 886379317 734363565 683172619 945096205 292097908 391237884 395175007 749176201 857969847 281119274 420125499 620132306 533971792 141654595 427913028 266989586 626470493 226918246 109078336 25133024 62913743 443949514 155754538 21914121 369789625 580195138 940315285 915702419 695228784 750989317 62659947 35139343 297920472 993786894 750964150 627994825 882589404 535489467 141871887 876138522 46266238 179035879 224118356 595864568 309373426 934558515 851464635 507727358 490075455 145671015 637696508 423417390 211409122 228766895 512841409 165614134 904813191 852016441 818186292 280823723 292216113 106355708 760524954 267185515 433276689 150551469 131267543 692407453 122079246 125174658 814552622 332372849 17409306 348287632 266695914 514066285 462806838 78055732 733730799 974148048 507601657 899855553 167468809 838719194 135432385 507984794 535255689 446028262 376283019 856938648 241003613 651349822 965020729 932234656 794718368 172481297 669706385 423551128 223545155 466285644 733432099 718623459 351667079 75973450 685100469 65077197 40619889 258151692 824498281 32559241 662475745 888534947 597015173 268411978 65944671 26369551 323625862 897719972 691487197 585197168 54856603 579101553 886656090 747791968 491945270 656992793 549890894 458184557 338626434 456885736 574448216 308500943 771599880 446820404 23608825 539924697 896680307 798639758 656216433 280696515 665105083 235374606 978022260 73628951 658774554 715633650 36623219 382160895 528419431 284688236 154051366 192013651 861489101 518096020 438864080 412530738 523364354 683086731 330784299 921330301 989014727 736456890 131550670 817544195 441418722 786321500 13380484 38552892 921287806 349876602 212165052 204945773 447022996 287266877 164265075 501556011 351017507 415889737 309377824 577163132 7350844 554257470 750240451 867686 391938574 744368998 180205455 537284437 934015398 377642809 467086134 452415874 924611542 443640893 15630804 379950507 209360106 12614657 911059623 792273673 44845387 417396098 283451059 577122779 36911096 165955150 936425797 279990927 234726670 758303255 844757116 770184342 586195048 900380231 743376442 132145267 760758158 226492537 248461200 402956546 996229206 578445614 112208571 999601874 942879386 174178473 434657442 499264792 200425772 931912935 500966274 49629398 992236465 841843214 370109917 59384821 803809770 650584683 545591013 599326236 535904333 145296409 61251424 906914362 608208671 703428493 561424625 373176751 100583826 928807686 991195233 155060673 124066876 806648935 401639871 132912640 109153220 173795644 632221534 859568036 82466612 25561287 39514310 532246279 14271908 401500989 821742588 926054488 914214089 29163915 573003212 641860075 686007913 909868593 631204955 312941323 418286457 271955130 283424772 500460129 882802705 755066726 835295276 366993377 165931409 732213146 33321987 892599529 469410375 664848569 273037537 214134161 901678296 398063703 711533686 371918619 807141652 676999006 801878139 762758788 790549351 214328922 740406400 43961327 795465237 873554890 71088781 686417242 36619746 50019903 246078676 964240699 375732911 123918609 427072435 24774318 739760165 623579311 232839098 805796417 339844878 505067876 79655294 741292698 553703970 242913898 785466383 776245068 665476305 562948201 355018257 456885985 735048376 295644472 561014170 525190551 758906844 792957492 525612141 513979118 366158932 166312004 468080288 884247979 281205401 185270203 200258827 885025034 831521297 839634586 871022373 478943191 74279697 625156021 323138387 661841040 782132141 319302072 230779259 466062237 31243611 484716994 681395096 995494308 305070329 741778813 804681534 860261 802097172 642851874 789740887 223868843 37114516 915632827 91079538 973577539 928304432 735740918 737315506 98425314 999474550 790287622 242572110 957468130 53640340 578433336 857972220 614207645 244993237 109246935 78436790 259183394 519175358 959088502 108012311 478356397 140314627 813563591 674401372 524695890 543733092 215141977 499011695 823536271 25585693 330314866 351256827 6631736 431350710 321846550 663001264 841827136 993400769 262935073 207524165 876166547 673506109 276705848 137427626 976188964 974169621 424164415 600845268 849467656 655991482 876810817 165967307 621724627 215677018 167872463 305392096 254359991 456297433 280127810 914657792 135400440 148538316 264135524 273677646 875718964 468505153 836334845 480775606 605945546 729679265 353540377 467780881 151796290 597083532 973515188 315334246 728331290 197901775 360411569 115647386 235908035 144873654 843787419 214986095 725721257 421231940 323292040 189362480 192159367 554553991 960491149 765867456 763838722 510308528 336398704 287472623 344184831 618752145 993112496 267688477 474988400 636464040 237936445 669027328 83301835 699433131 563653217 626213326 774748746 835365513 64445539 970781375 735921319 963376995 981698861 802298776 660162002 278723382 333744629 460350775 790543940 345071141 788403323 617527951 50490293 990961714 294336709 93639336 293835695 401226886 961770413 889379760 768341282 36141552 175935523 986934053 708592668 600576069 922439071 85945795 656341693 674894453 439797545 812860684 988622836 689147513 410769223 253196102 755702685 29041261 236497487 417494856 694732709 298449348 381542907 908986903 269977779 173763954 43934697 991705766 269915378 749708380 849596389 792215749 363309391 512137734 912428730 24348377 637181270 286125462 620072275 558212062 283081006 510151707 68656137 133929449 609712918 940181862 116336461 590813333 258473814 6624708 142795297 509592356 660842707 982712410 522534626 344861082 277788670 356873510 795035907 965793270 558555929 776019972 203551522 64144310 895475837 814737392 168463622 783989974 960083442 63875912 356468007 409807874 51699361 32076674 130039547 52783092 818151158 574241188 966800521 809349297 282198123 760059626 330400172 758983764 897512860 882912262 797407367 117878082 938083985 430973354 313780240 729264734 677427439 571147176 559887786 626239386 430768706 294509492 137068149 41776840 665199967 665196593 851982960 457133868 72339993 611886781 392685034 541692359 11161955 107714075 573207212 107546099 952090325 184436596 53734089 465225908 408476770 780126977 61879244 751195601 978776868 298126918 408137161 56751986 916370135 598415064 544258352 25931381 283655355 473083899 439383238 907153256 890287280 162266782 588451642 804912540 451853901 819997659 407439956 145058876 251935735 13429437 317696428 617841031 458370241 975039869 458954713 645877647 464088119 727055555 764343699 889053940 801835105 130246742 421626947 1640401 934937581 1319776 647285953 578895420 864790727 470096402 628057498 421185914 190909925 58256213 617561413 683381787 601105632 151823981 27744202 703495189 644700001 331698139 628084498 665990209 30687191 941630105 496706170 950005622 795390283 653188090 950663199 102738623 210135710 63943508 464354607 657256783 416121630 48160756 137954530 393719500 825674189 181946128 141044667 93898984 735726505 667090343 649432913 842718891 278590921 30425306 997300982 763239141 855054546 527814238 963651776 332264575 473878894 739984480 375907546 45165963 72836198 149824574 570642696 463955360 924103546 880162029 328006719 25056061 124342011 49655270 755163920 373054549 520180675 665451797 511562665 755326447 669656057 887339524 716849074 427395661 270409586 594085801 52268872 384354278 387536907 410870438 608675178 288412614 838887769 131162915 728239068 459605936 780762698 650810418 518256445 126936112 236524485 452064291 510735867 795777759 349041920 546623459 77315281 366853910 898346954 310441835 393264980 914285991 351105006 512016541 633428672 668203785 843510428 445517755 595235483 95283068 529418218 40815411 792553356 160515114 834770022 290959691 980033076 833385478 723779631 822817879 208500388 341166643 691828492 419234528 595165278 702243030 761000700 118280168 58430591 660590242 834700618 631811511 70428302 481197214 432775959 539755582 613013711 835961842 426607635 306271206 253790433 297530635 948774446 788400776 285546709 32616428 36947664 312753300 180723321 235747833 44413572 748480582 264211688 608376898 924719293 181848632 3874470 718431364 12311754 499693832 852427664 536346095 630419413 756618142 487880697 536220768 746863218 904683157 685997587 427385001 366494920 189179037 735741324 80650005 158693187 963264592 345538640 128276924 768854438 97069731 468210249 190121257 711027559 900686134 370623774 587746413 896864801 24007791 11534885 53340201 793391823 587101875 866051671 751774758 343822795 347274026 854035627 937575713 299432544 323651226 680766591 966351422 621440939 498059792 694114732 944374672 623827668 418794301 567054636 168583966 422112230 25302490 923236110 679897590 778587183 828113789 614356152 593349572 709553966 720427056 761435030 178450332 388032802 986192269 887552943 787742481 303463254 206043817 838743453 164273280 251160215 279385904 518215616 508876324 56592349 366494711 120918750 525314520 219011557 882646928 411256115 523854579 43862771 8580958 265467506 264469576 182956525 197170713 829446365 371023912 537322769 517454079 693653977 594492901 453607632 29021234 116870632 411189981 412436838 593286014 16170048 114697563 521358973 598182594 234061534 523123409 142380166 542861316 899651665 118829545 719591480 722326060 748054756 352829375 484159163 253584694 37511847 815126460 261370534 989564185 598729028 997871621 144810608 956574322 83170992 791104788 624077285 145378044 715594434 310928151 540739548 815731138 789666225 760951186 93938436 606478727 526957922 450353381 467409425 65557204 201611636 77995811 340244912 604513385 650784514 937205376 102128591 198645247 871996288 473162669 600209130 636846339 153816485 430139828 752584486 836107758 521473450 288642142 317898756 118838788 304882053 674594356 274810259 727669680 746205356 817705308 615088258 45922693 11011365 354922316 175706740 154487509 332123370 558750737 755719616 543198085 72407480 460823843 968095537 775306075 381066002 665697910 970133342 192764567 310305419 431967700 464501999 889038483 160099143 267121939 521873808 90293771 225732176 66912921 939325526 220137818 601015173 3064792 81482674 505073991 967585249 104652373 352543974 505107790 21777931 435021454 435835957 799866309 591786002 870722084 160885348 546348649 976161959 709374059 699562350 3443462 882834896 292683307 953380778 701810114 542846330 250522207 103963154 827218591 500855895 870785328 120504045 282557128 97221377 147576611 372448205 986225463 454204073 716494809 571799317 297087364 208867740 103366122 411139059 141089552 316505806 220922599 847295923 474766828 553226161 241259799 157109363 865452142 130066670 715572011 692707694 799530676 499573341 117873586 694217919 443094520 791740390 923108175 132794642 768891684 307875705 890156063 119540428 303188190 130543889 100888380 362897509 367606474 893468752 573715531 448674519 705537215 607308461 489284992 231620550 736337395 47561806 822120189 32341833 900332196 137405816 426611432 925225538 824088408 174765042 563448586 825514164 661769859 888457761 413052301 87897431 164345274 765863490 394195242 923993028 96176580 871901711 147938361 907673360 138800497 524208460 685049093 200606563 611876622 956708828 226574912 804692736 787917224 814427413 686491806 305749611 499592606 440832024 639162648 138518379 717809609 626159936 366507312 960577830 964547930 815489624 99675920 213338478 712454707 199167525 167501999 1043080 734494258 384160584 12437314 40580315 467437448 903307488 848241663 126327060 348508759 775053638 327747422 784498313 963676312 35165005 963373058 543094570 55541898 508558002 243868663 711189028 736083460 417888347 31707669 594932396 993383377 440042303 162873024 23619566 269150383 578771884 117605191 697803823 799579077 32797510 797348384 797754406 69643467 827767918 974341838 698161716 96244447 947011144 797593082 167704594 211667606 676337834 103187734 620938550 79140571 179049312 93327864 89361682 907828336 920188132 918105616 700776014 88046639 836580179 167699117 166116586 931234366 773729310 754460334 895140796 739370401 207230120 581379181 685833947 256169546 480864348 196591228 178727307 338998016 897095635 370191699 264889704 243724820 132213922 204544310 710096558 539924548 981229315 201973672 874073925 900341167 54989984 184533094 513428273 224893360 182413246 868437214 150447591 727151202 882947155 843653523 465934612 710504081 921916827 397832298 657935953 288484464 701323252 194876070 226346337 432061619 591767472 590247474 785560016 910605894 658412455 398711964 125658680 124310138 419453005 967092614 960912188 43673988 659804110 681093768 63802636 194752140 129677030 537833818 892109577 219436928 765769242 271180687 790495013 45963811 716921925 205170002 110201281 179746156 911123067 160289844 572962136 897105206 984387478 115852705 25206659 997352992 847317491 512024233 352003239 225287113 64087950 5616108 842990075 913280591 309989237 245355459 479534706 481732866 987103785 124929496 495844953 644091202 590627560 856947277 962283881 326553516 568640902 971036506 502880794 336317787 899594708 600807809 273556452 11760618 954673838 87186575 495043089 336940076 822355875 559296750 646492855 811822265 682013460 888926778 169339042 884195915 275057737 840801016 159077960 556908401 249088459 58703340 535313407 129410728 9155423 112855870 449759047 419588200 198895924 896990118 87877581 577525922 170967267 127391574 485819606 814143488 479764384 995747338 755789317 481330165 975257822 403366295 701351454 817653419 469219015 142936788 590566159 959813358 247212463 974333226 940416932 782559914 368622714 749678387 993207549 870439602 275800947 302834457 738726241 57068228 522691690 291282895 282633473 905660460 405737656 541259009 551305386 505476415 169600122 987570472 542575474 417995004 838704407 385627746 931677440 719589192 897465190 113918956 500908843 725471162 662760094 913203412 466198150 953485678 999310104 223073015 286584770 82933383 818026373 273762322 499154142 566078818 385284100 647280565 245881624 19419571 763069985 748230413 394063226 101570606 882643988 115187193 762189250 816040022 834771757 935561518 15048261 414757269 326381770 343764157 541424394 453913170 252824283 703014672 15671237 194952296 797916421 837366822 497235161 855833088 858023228 838185553 600812756 554184653 611902905 941791321 167886022 124525616 734939158 49316372 728254170 397512839 442741183 532075739 950802255 680537920 580073435 383829279 342889789 648657265 409053289 769413375 647028488 490381289 434795561 788387902 183708140 323489320 184249971 430886779 787631718 171957099 741026040 406559350 448449010 725701284 830713393 584851334 458813420 176314140 555174996 469381920 887534404 77502816 240236618 559033998 724948499 788021751 546844469 363957987 922788130 328730743 87633035 282890125 282720636 889878491 300323851 315607183 548521225 180299648 823437072 666296110 635487545 505426012 89230442 457170682 587948710 447110238 187809294 697811765 77431641 501214892 245120291 141328840 163864260 126198593 884330130 686179419 619116062 714066749 246292388 334529924 376384602 393023234 843273438 782533692 194780195 831304338 888356359 610569204 367082088 186816445 778495650 550246230 458364299 394203149 686608950 240413612 511611736 672487842 969458340 92711367 235151686 178927054 350870397 483655907 841274040 459749744 222539251 117761020 661414122 533602931 948734768 91400965 923282849 652304906 460879155 736554277 622336798 9353489 269217756 957104326 650286061 18836409 845644372 468994576 622024113 457114294 625924922 588540135 794223426 532676840 626809560 935506081 647947541 601008816 123254119 519417094 593967939 33032913 303189367 154040979 217861561 754371727 495633302 749728570 789761042 808828497 828155324 7785914 910610903 439189711 552773216 292314734 981450282 302470291 338341443 249601099 350847503 387805838 875665785 796196961 162673868 360489898 509749227 440342477 152834277 968086866 396216114 25369071 54306703 852144277 955961381 520500106 119902388 662998673 315951144 344487620 492585725 613992781 141186570 993392592 931210215 479158538 169632431 748113604 266795343 395321662 793041805 672815630 78649059 73510834 500960186 769545397 604178306 296717579 737884535 568843615 247612877 821209471 443713263 243897985 383132446 519882646 483800890 737677497 31938939 793324261 42999105 260485073 294242362 242193229 330094187 854330580 947496662 885771648 818526244 164889960 632344851 289625952 995566461 300818677 636928088 337020836 69396305 156128840 433593223 455960414 101765423 200864516 89036242 165482478 869732901 617786692 41290147 142158704 327281905 160403884 686412185 381808767 184077634 83020795 609605080 136176280 687166422 917926565 110646124 903056487 918387750 54429072 743675177 581987730 924365792 281293230 830651603 209421828 113342333 996210323 489468598 875944481 972594220 992375710 525421685 180616767 752130793 405644528 953453227 438379263 981297463 710638680 937182438 203971480 515349634 465324297 204145121 809996522 137008960 537849721 670296999 856046181 417481811 23323760 242705307 340695239 775338612 897308292 64765051 281644925 633054247 850192607 57004431 292238549 822486280 31197124 379021224 280835109 324338284 259734403 625991347 183162768 370098007 774306149 736604438 758396463 39799222 206664569 78722338 555903871 128463872 196714021 964779784 419558145 318345381 559120882 32728749 45839966 333066486 111711439 238711887 320673999 180123979 16555529 780142236 83744552 451458259 461061638 777793346 78042467 573564520 951651366 763985728 319561612 258582778 996747482 810360141 94615376 775778930 740736339 900701326 333279147 973294845 462748566 395362174 800163172 150478989 812616084 476576593 447429541 392124136 31854539 583606586 197785538 521604102 462733185 759104555 723253357 431274064 9044664 906261255 131126232 252172789 707014592 287085046 531790344 301175055 620455986 617665829 577489428 564480258 629799353 493545857 111314855 918657124 285426116 793567542 717757061 736430970 134611039 202149212 90108048 93664831 309555862 208042593 425244668 893602962 183287335 838480738 386283181 617884445 230666089 414095644 467021920 78875107 366124113 219490235 759313279 500746462 888950269 909269898 382300793 946309555 587350090 66909350 633581462 162803939 46710528 970123949 372951573 829618805 175287549 67102095 272273985 61684006 540534669 888945664 173133887 758079631 87037072 831545232 754288888 481544765 358671678 894921569 135179773 198765064 66298605 58157799 583894181 508739214 817577507 675606102 132239249 510475357 680484755 765951428 322041386 502821324 844358138 436657009 509921505 503609525 21972861 724746155 835481080 68288786 583249561 263389580 445464662 915356847 628319917 7170492 702040647 761158611 688998834 477771886 455819706 201468156 145571580 159556138 515946300 939891428 496332804 436145314 99623020 505425067 899045549 705927789 836198308 686165917 433032254 383567311 800512002 915689178 955767191 132274762 613040168 727884832 151202336 451164662 269356154 163974143 937446007 879087896 294966601 592365692 204088502 563537746 53608040 540444070 645986226 653990767 798856361 885188766 916852700 820330463 989326609 780299472 819128247 652110325 507433104 52502864 594104138 377223613 225042950 190763038 182027782 55900212 415978176 997266978 419241488 317484816 597310309 4207743 372833523 562693127 266068794 204100968 571223307 677989055 883332645 991809163 642452414 523010413 609228308 257035571 683416551 878877345 219012503 993437258 115391136 923159843 257288926 361917756 675234365 24696029 618847091 324942543 961197757 420386701 47596915 938090417 326026817 842430502 623990559 272985449 739244992 953799878 187903076 399738709 312161365 532073411 309286101 628481654 246553058 284650740 130118655 592041124 9456960 551728025 437062014 606703693 831914910 711751679 122590467 926062394 974709619 844973569 367198783 987371700 962221207 632312919 700004108 979280727 925764044 350157260 163851303 846016081 319556767 763118189 955417318 389339515 770738071 31099452 984728328 170175002 669845960 702042754 951005670 655137726 327695159 868725590 239546904 486085482 95514060 280049700 65421035 670406007 610370871 520330612 181526815 368872642 100866176 314971129 789150462 833237533 545589958 6329023 424189691 253069271 326416280 111113769 242812917 60410724 365580663 994488620 438353378 582732124 293277093 387682711 878950060 527758981 327263929 278957850 368617699 453738206 936941276 637657560 524143463 404669912 434440624 625940478 100734411 814374474 165181952 607440554 909069085 68172360 643179126 884363139 229756607 638982832 776111942 284264952 409416476 330243631 921835530 232008760 354718377 436603550 474547597 69543502 831243222 721405539 641539596 651140502 638385301 379791449 546654596 17703621 903260697 634227277 806330982 27313829 136885445 448935428 126070422 825805302 315018363 904196806 989709945 285346755 952633372 657741088 487218255 738363590 566947305 648656724 517666730 496325702 317882768 270314162 638427848 661708036 865258716 181404570 586638764 194739538 762392828 665936516 17046715 128607272 465420419 731417311 565448878 146827450 144470017 933441592 272875765 162427897 380607812 850922069 960118024 365768803 854283004 957889842 274408425 237362648 367730547 216429981 337272737 342565804 505910587 234705182 930562232 939428865 700942814 792081192 784243607 112520041 483346983 307293045 131125615 186977151 769529715 445388264 681309865 45331871 630191451 645005021 46710955 166014261 498694295 484638202 45687361 188217399 737533865 181966351 862803068 349661161 952489688 721417250 120800084 360878685 732197423 876023362 365534192 168338117 404951542 229318925 9795216 994578555 959128075 988358162 82976784 307892534 818351436 768086927 326349273 938211815 431577242 25006525 857268753 419156306 612125112 678104108 147716629 321512106 284400148 595945353 905354401 920660777 918977180 477648623 617888963 94084583 615747844 512552830 747691950 280449464 162182219 769843513 582766784 105311642 929898230 384459791 79988556 974792404 744215873 898537545 170711495 719110513 572265174 41454367 949538199 54925976 706839224 664737611 699630019 266828577 199775666 751100119 708789766 82735008 182756295 792621045 278628561 293457523 31714531 562604498 340200936 560515313 138895814 842506753 654210940 589274030 332888121 696859635 324737765 291402903 211103559 882952045 543094239 25552717 596706213 727683991 360640172 99983011 311463629 576612808 552459969 539835674 658602397 669173778 793822057 981662674 434225441 876874084 652559444 656251287 105250646 829889849 17547587 735406187 801113531 119086964 373208522 662395765 159649497 678583011 340234060 66940610 513261697 288992512 61461442 870646338 18200909 73131611 473725431 540230069 75558683 302521678 854508064 67030214 264091152 249898804 335933821 543998332 147965945 795091591 184496017 936378989 758539097 480106552 909605919 629491685 864674353 677953572 429916465 625156327 445763453 881505625 921518296 622140033 947160381 630040521 65832914 605709368 528373658 230368516 682190340 206839250 355189460 79192737 891746349 206881064 741191005 276705350 35184659 538167267 704188132 809839250 521359559 520984077 163242813 200660484 74721533 499080508 413851889 957408020 336585464 847721297 406973850 343344793 292062060 218281179 615137386 416292079 688612055 52586968 479323006 647017158 975026105 922245342 347827369 481835672 55038021 875590132 889881015 446742881 837253656 167930854 13885734 706588371 801394658 577807563 348717302 432309018 651230573 223091649 3304292 459332472 463743066 265404264 440370867 878205440 509079573 553394036 747426488 426918039 952998755 947419300 323578122 151957391 745652999 944365806 917770650 778137884 299018531 890226012 475859190 99279018 2320722 353336346 567659608 902529447 778826736 186295828 461005939 716827375 596801031 180245661 107278634 953660888 680748841 974801160 692051719 118743382 925682095 363930183 755458744 475896062 404014868 501054988 221040854 544824574 723195861 505997708 882061098 682301275 776364161 49287549 550242894 314628621 488269481 551827842 597448491 475983335 166291484 530750929 762132740 660256939 572525567 710429756 830159301 726152363 63873177 672126295 535090203 755761989 549255324 259431271 702494709 911237803 4756378 170305657 555279140 418128106 976940122 162755807 681555715 605988788 613456339 594572336 489225297 922393647 177155632 55029439 437361774 224116598 409257807 861333506 284295564 728072208 598575947 255252377 81185968 425020988 481373362 445262113 652537618 816969493 857454637 990512117 457392637 727872528 981805115 369117630 695383318 907199909 31687654 494260333 927746513 113028848 578602207 162160537 118695469 634721415 919220723 551742784 463697243 681091831 82519003 742733041 401112593 822660217 304501815 648148198 765898911 472320112 31282402 478685163 912063891 714635544 532896419 188705780 909476391 826473319 482692140 476639118 729552326 856191906 790001545 715976345 480256011 262316374 729182529 929138299 709657438 67639471 15861310 124777196 631873756 301305514 3318944 749839949 858226207 345124709 91116051 170300569 898615855 771117758 387643217 869511880 283484488 155391063 181813758 877288614 191654119 463981927 46654421 708880618 214036104 8443145 902075285 938158476 139270844 216172727 916924524 436198179 965346853 931270406 396795122 626290760 640208889 510415746 518408636 661065714 423705046 321162146 765724900 347307922 139854145 793265364 666448558 291546956 853897971 649195884 620158360 759040250 370100585 422734027 303764380 16106423 885116563 962652696 93068206 134545380 317294071 470355271 20148979 360297222 878429768 621198166 653957186 523818027 939366179 861874727 595190945 773367924 676708077 84394737 899705510 850842772 741660853 45536654 253343079 877729276 170445045 273741316 438712819 571069745 25452874 683703684 271118755 477807765 290642849 965143884 319090412 137860221 75483127 768928123 62068952 203998134 607723774 126688907 594599116 969833824 42483690 423451690 685093641 855665088 897286833 155404977 613815376 39194420 391939226 864463355 342659720 346784317 554835500 601631111 161987045 412291546 538764679 823360551 41895128 825892072 893156313 550685827 264208943 990136422 367748026 528202279 664089482 500162364 465883531 302099920 470629528 433552201 240891598 341718893 262989311 415044244 107441609 682758695 429294563 228353329 756292262 90289150 939833973 957315762 820395262 748655736 145388227 982869578 886545097 210180986 22914151 393580374 573291287 556159587 938966500 177270048 674707526 400019897 692297550 718708590 12282820 15186986 53489895 942753606 139026384 193321191 586601304 874599612 56394968 315504793 989629903 148172139 27743822 419741560 345081898 821797615 139999262 118992903 761392379 598234952 92543944 668058249 85900522 446490387 223250872 579152240 395377829 789302556 73747054 244095076 522563130 491057921 250725576 868688335 437547227 706871038 396599537 174595768 258858948 476653072 818877144 388566910 475014115 659778993 324909775 28409952 45541758 890135603 176041905 863556888 761444195 277507874 684003159 180411804 609007286 777849085 390335032 820696563 209087974 922704462 944511103 226514502 666368482 498836043 746957923 623546815 738457831 141933611 523100813 312119406 231301005 175869748 839457074 839457770 185973846 432553229 352265512 400042704 668913133 964879350 849054976 193834951 435747519 167680572 399440915 989931422 152705896 593571944 642029162 381251630 635600004 812404995 151176066 71531029 594042948 229711140 791380240 598984747 947356288 659830398 471982480 156734869 5890943 275542783 495920710 530492767 115200331 956413369 737887104 147864293 993099675 216690264 39540848 589103145 485645801 472175717 149377357 338156554 987033335 41988085 600883384 697858354 802556555 556807317 258853117 32206883 28253318 260059699 469949998 523782933 139213739 794110396 978071184 497142296 604574725 729523755 57831166 134991321 458545420 380283728 338639071 655637622 243310158 34910581 81430072 905830416 815974475 112739397 614029320 927758170 199353208 420573190 505096107 956482948 943907805 546683094 540405715 524289776 6725876 156232702 87978614 380250504 193313801 500003184 555305840 618060190 850164896 774734639 130003399 477467614 477802443 883278148 647417933 376047113 218485737 380766953 87934126 975846656 537890533 358436061 545020075 500167676 451025082 38714479 42625771 900162444 914940120 135117837 91355560 940579017 167595833 923362790 923883311 101490569 483667477 367369703 51687417 974228773 587170915 430390856 976375349 719561086 165791751 794083542 629706982 675732800 607460956 454789265 301247360 675293378 798114377 60614341 92625624 147222822 177620609 201790590 267312233 798638090 112034603 60781599 457302018 578771759 588494595 680703498 169634901 145423759 74317515 293326702 518906358 399400159 109678817 344694860 996913754 931474616 349753481 309476787 211931429 767208632 972877075 742246481 237503157 866484981 471519756 541799143 316187313 580636732 593284575 115847136 201407275 613236165 709426357 985272719 190991558 993953452 31553602 347442253 816892873 153897138 975134563 9740701 750052060 462325595 183574667 15622405 95344305 500267642 687970218 353553679 451243986 735903004 503047707 307624601 632623797 849204081 939980529 852810079 202003327 977405867 35084762 323386329 39099810 11152478 783236529 938363585 420144524 594614088 846065833 349039485 276935372 308056321 616491361 185553609 712380278 552742617 488952914 835604334 289440234 238329252 445903026 588304047 913202557 638877647 316157967 851990329 505023114 924084889 177188997 994581698 542916970 324780442 363860313 172336152 802013319 49574307 227003461 487938773 787953759 212974116 193280705 883502228 74161590 174874762 199621836 162520009 408431617 190538868 219467172 764003569 385836382 751279678 928985718 149053788 379599181 678088264 167533822 475182430 963101565 468102411 984748108 179991205 184612914 624629073 642694014 94072755 177983004 473524470 501065627 311422959 717882497 623188280 836815708 121195246 227258993 410133752 459369174 379456594 866174801 979021688 574621555 808719398 628996831 328479632 602099201 762368213 662023362 3211854 628936807 492329371 587575675 115348279 964118774 830900180 407050314 360365830 953705057 832211629 611046061 544302078 989323775 416907968 739047968 955909729 740921699 535733892 66656248 724635687 485795370 503894425 95126275 487414983 430300414 949197237 445769163 880701267 332202270 155958102 554733671 699445242 227196099 939191224 513114663 62352249 453531525 759520513 42732126 435143099 435694474 181474160 878791290 66155840 128273404 134829578 211172896 140611591 425928740 336428269 774766379 920790714 666956450 380245500 34216920 63164443 50641872 151454934 960121757 236619479 79704212 227674289 794051848 533522091 661402098 102786110 130676170 556703917 865646564 416435044 911382515 359881502 732963670 295376804 534718194 5007168 934016832 592783229 482830223 663871362 72967424 143136578 179003125 282477241 896896155 936495239 286100433 763337472 646735698 148268492 66758619 951350623 382951156 580144774 766848429 75472883 171022351 191630339 231825872 1008113 375381702 775869142 424244460 977722165 516426380 426886648 505109558 387006658 956061281 607898279 420459401 123650822 311159451 986944443 608065509 263942011 496129611 50471578 930468245 66171730 410358954 518424918 221273436 920576302 167086567 216578922 37218538 503381561 507564239 858667510 429552920 714895008 101976352 800179967 147343851 448357708 917621011 375324419 29854636 293679738 426146196 251292081 404354173 425656148 829848889 238331641 524964000 145141644 567114874 671298937 831389839 820855337 951152029 403695764 469655528 634106588 690304019 782942256 639865253 472894959 596655277 439909406 792675445 645298371 572078503 816658106 934257786 22696460 236103180 737396412 262537829 183847655 912137296 715371490 170592156 698386415 326286062 170200737 29019122 7956773 41860398 504824516 7592067 885922334 21563466 422962748 228551052 873446818 971086789 889686860 576650290 432045647 668979101 339377871 985437367 770577666 712882020 22588821 414154899 236745112 7605277 763785767 339044414 209580610 576572479 506348331 702826968 542254807 490963920 462685870 939734514 892133254 898423810 612475902 546978367 167062925 317450326 500487814 792944628 515391056 870013856 613327828 571353264 370333947 979171122 262858301 608543002 375166057 675109729 443307814 847997012 640357992 778794027 634644602 656055612 671793857 813794577 260927272 686400192 871672903 762412831 418710494 145015256 500744403 32850336 429198256 861045057 245304264 16047750 115297225 490659060 371060083 667772774 576142144 295745604 934529166 168256448 135337251 265813906 448816227 620232017 192125033 955043974 814174889 184046233 397026530 322226620 109961365 502854810 681961293 264062361 796472624 906255960 990415943 915171413 796308071 257779337 455659096 439949248 22146105 87917647 805058109 191687031 830090550 532097069 517251305 729895357 224621393 210133141 5618146 510096557 214560862 1241564 897322116 744004735 285132515 974592472 226289339 991800211 133255831 334116633 474188934 985080823 901507618 55300507 685067272 476900435 886565424 338020438 262055909 424699203 408694725 441397843 560504597 519988096 826038253 892793628 222920139 478154117 489710596 54084363 666862994 422974655 147641739 436002796 907766113 648513875 73250995 821900973 698224847 628224131 607900512 239285557 323100670 174959006 43386401 18992461 663997503 949737659 997510343 769164363 883242032 673740692 670046695 386322015 210461674 856214999 188195927 179675900 776646455 161878048 396314853 161276569 466976203 992220749 423286799 89840689 112420155 290703422 776218302 739339702 77478112 530513789 255910355 656648269 750931942 147018788 236043739 117025612 76172456 522585989 627494965 835668439 86548694 858960463 649869139 431288699 103240721 812799275 148090817 825576031 422339291 301253495 918161126 637125128 947065695 901080282 936434148 785126289 703749931 164574798 503769499 600956897 834275458 575365317 152985069 618660829 851616722 815421271 123080894 957586345 498847589 686999644 139886812 577190291 141469129 311639985 940977971 6635790 961448389 994187710 96463568 759919061 358702112 83128473 328923903 956084533 915412525 954100822 987703958 722398180 106467360 208085563 39045137 552440394 405763731 347956219 148038153 89061426 915713018 16148230 965335589 300781476 841127945 724419340 395768742 421309733 832580568 461838485 36453587 190181794 752309453 788383388 924003272 490538335 381073671 476727043 61217508 391056278 193249187 888740816 433151237 38974213 333817155 242872762 305931590 343696401 297104859 793569165 717247057 464523618 916424915 402938388 174390739 470640995 652032141 636185361 487793482 818066775 962852403 534628020 858070163 122903116 765365166 19059378 522015361 294441119 477093205 549916512 556902449 580681861 205813709 892553859 404297807 57011379 350570021 123532584 284409115 202870200 304068099 97572341 372063646 800073029 122757690 483614649 320984505 884027525 391426368 696764709 934431517 93857087 108656799 280795282 863573858 315002756 382825526 350125042 149363153 839004533 771172772 153119741 37455236 456437368 47800714 285815185 486860356 912929038 602326698 452244146 944608553 981595549 442607992 544950530 433932455 664131894 262497029 152347296 502016699 794230475 652074676 121324723 539143457 737728798 908509237 277461726 432978752 810939780 60693538 542685121 439820643 697068057 491283173 293889619 24589346 64995840 918385425 876155007 934116695 391342943 796294843 33114563 974600617 875227356 406783656 118173840 627871330 221321835 897544206 333035507 856723263 754626261 92436463 528279114 650349498 724819828 211861818 950584165 559297377 787217230 847117543 403281236 109236494 183307611 53183851 972429971 636747005 261044454 673868688 721468279 555271364 840528733 419780577 610042938 376770615 992763355 89595849 135096968 774487297 912267224 539306675 152702117 839688487 857828059 565708412 551292512 92083587 880136044 478307740 4653060 13516941 229849948 988227603 962965071 182987139 547663403 42685225 560244219 442169298 793789861 959852644 234161846 101391205 311185982 985906985 24215474 251265029 509913195 361034726 879807852 776064939 359589227 345613326 637459436 208651278 787849758 335161785 856009763 608799669 565000446 839675561 680414610 106190273 742122556 130087395 140631218 353765810 313349208 65446869 34435768 482251562 290025082 599066808 989530918 876637817 827646938 465484452 850834367 206540490 994861178 778082653 486194208 114397320 980386167 806234986 468630892 487958818 121094422 91568524 746091097 978497008 197852847 555414286 449365520 192799412 214692684 791980366 153061367 280694902 911862195 423554523 259291174 209290181 638770944 250621982 435048339 802688031 6010275 793787966 506006002 698505503 787066759 722055430 301097543 31481253 321826868 343886506 167976016 227752570 346883195 554265822 886996277 114899098 761187229 277750122 560662781 292301080 945222708 641057356 411267325 976960380 761633740 363129928 534627983 636232380 366378745 912751503 323201328 334979767 139918328 333743685 367309349 899129287 174314916 141669912 631270318 777932852 663645716 862532091 559905703 984354397 278222310 828772837 674219840 170250464 266914368 783909557 397910612 919926748 195116302 399598521 978763037 895294903 779736818 682612198 104771904 149210822 220167601 855571855 509985257 57659854 435084366 392064763 704686022 661912971 779026744 902123721 837690826 886647503 505591457 802262493 505090296 332322599 254970312 87997547 238257770 535389144 444855687 78975359 544525367 735391843 922069552 566824877 266304308 528631979 184895756 899716127 122972553 547750031 351781370 772459298 228130632 44857232 86597753 24132368 486183927 623193120 873604404 40887132 755134233 768225661 778212994 691064766 878962041 798541644 218985440 324145306 912176351 470212539 686630112 181316889 790481602 736440918 249343350 376341186 429497662 91220848 78984811 58783956 14038473 508994053 683532535 521533200 362656257 395656546 956570933 824887932 876362196 678794324 168513450 94925089 141652886 492688998 539094169 654307754 133660402 32062422 414468400 471299060 287072098 826546767 971943329 355729233 712197806 459254963 271432612 958674888 760822890 228272490 65458044 993930805 590301973 501781096 653087472 442442036 885391690 273106205 581703020 176024299 919169217 698676887 524579268 123047560 829762671 181377340 496601341 767798992 609109080 385598813 216100495 289590387 183172100 15087485 667996389 659543119 718570873 535478228 673575485 845106717 374744357 212900601 418080683 683888528 586693727 475162229 764199444 606094883 312038439 413817950 190412887 341209128 418076320 739554662 984006551 641948687 927199968 376718368 387101437 742580384 461432383 525739700 968483025 904101678 572030009 421040518 303431279 953218048 680170083 735238093 958911129 15751879 619286000 980380918 506519143 968259474 681514134 246819672 987837949 879165613 481088765 935472782 853556333 965464316 442836529 393892836 341680457 546108589 73904199 799032325 735156489 90510944 836698783 783651663 783049702 609817562 942465270 711013974 811723218 91771391 573845345 885342671 738399650 354095301 184357680 745832770 984074784 721500332 6285842 742682602 860879564 922758193 450498469 979468435 400609209 834856519 568396689 816110874 608934336 272583080 879455677 646696031 895369813 219461842 822636762 408237908 189679124 97409919 41995346 483882527 692783729 742105250 958352365 229998413 551456249 826601305 48224047 835508783 14092622 50902179 48797004 526426149 87454168 499120661 858821105 28288793 105554956 48022223 147545327 415084346 32382771 42169998 116829346 507304064 278539686 331090976 25636761 989344016 95681588 84328548 397478739 3355243 719052276 586489142 517068882 532433177 836193273 672187292 586317926 239536313 733401659 574737358 191268861 762657463 17044136 906308036 93884272 33867506 62250178 108401779 333937474 331418578 660010958 326656187 650166262 405912141 296769844 428323881 975594710 191032906 327282015 422670691 167610045 997805740 675888466 548799556 524334084 126756880 110173072 878996948 971800468 302118825 626144353 109831059 240063745 154097113 74624957 172075342 541071939 435277807 33273960 877988809 120690097 208743017 414247791 757176243 527346393 943248411 570715772 372955376 746055603 451621251 965700399 106586659 904104422 228448659 732542760 504779792 73429046 665883825 686505809 80783129 942109270 418359268 224324798 323421179 845433098 359362284 629911785 292588058 333255342 79113072 519078934 176009478 651047186 780528206 768023849 349948855 612864658 225176993 231978877 314181874 617326443 345602300 624984356 811566404 360516119 847833949 587860887 292528457 205856204 537198030 245853757 457201497 990197587 536549074 845014829 914750528 927550092 973814133 891486147 638836691 131934426 322089181 70275693 690948640 252662020 626671770 449264459 221854591 721320913 410148579 494393073 897906065 381287110 928739376 814024827 5070357 902535801 71291672 895006399 817640688 658703215 474852125 112499534 488931295 829054517 927620154 257965760 24938291 350987152 30017186 45570117 331116153 464285304 419592919 544366608 300121364 754986307 385495771 517639771 492862456 230887469 520871861 68619224 798261151 265130347 947902255 188550786 328495122 322904353 984046831 743486526 389357927 538487868 83624576 218917282 883876122 448662519 53925795 541343644 503971793 512498161 698270307 876293860 804618443 757447200 667295176 685065186 32512149 214535850 637990085 476461843 204326168 786400819 629343632 887575095 587272029 271792293 378701331 336265011 677636907 37753655 226822210 905826658 634462473 461753305 289417188 287178643 572702396 943101117 418443202 289931427 421725774 110341722 972722552 448781230 117666713 981736377 146302765 754669011 933056708 928601683 772603944 812452026 798757015 309705007 656654297 153420772 157071109 652574947 386421940 934477547 796128811 61565969 763240032 486357073 945242930 452649460 957853677 156965289 45460636 724973975 519805519 2272095 283972444 922193584 411219406 446238618 787182404 840896957 557960521 750809046 270705164 63785103 464557971 701215499 752985408 907598962 110168152 918517635 586099899 753129939 203557419 3645391 295547599 981610830 844331738 703665216 178239734 975421227 557898794 593444052 494574329 715060489 24765236 958534546 897713910 343497065 358442642 200780559 66103290 818149972 465341223 845169214 493664926 251211174 248630470 724548180 321291326 181456112 863258631 69102006 273427244 304341831 863403752 792023284 676630371 395605347 101207589 695999471 684379938 810421007 821875080 959499791 97204679 131194560 711440321 884693329 296426592 31909812 545611175 779250987 665009795 482887341 252142473 881239174 202514332 368975849 122146109 485097076 369350700 708169101 525653035 145448246 64047150 165416416 304864845 633906923 14296747 193953956 761646418 607481650 866794214 977576703 335157604 681557471 337295241 329724794 900000115 638756466 553397263 290114197 379564616 472381446 206844984 402047373 58769816 713724187 480232859 31440172 607360018 138188686 88880083 440420091 761962729 617092261 237726619 38212345 356164860 706677592 266586659 113337132 311729645 161439677 346236187 157875744 339289472 419446329 530547776 996818568 653677631 134153854 821728669 523689322 383849351 593177439 409638800 852421692 268241079 920025708 296978283 372855389 537740223 68010465 985163238 310406777 397608409 37718671 154851798 434617940 26317081 748749514 705985692 948923085 636172574 904946608 250471033 6450668 483937836 172704272 153884628 118132578 54328 342681247 693722193 522766507 248358561 724777073 646476716 126895675 11072538 259618183 37910823 187655006 450064765 308646789 942825585 677787463 51685563 120335762 93583659 412387939 435675502 801351980 661023776 688192629 234745597 992251039 347780280 66989896 910475394 62202937 464880998 306949414 808862187 443890286 20516604 452714360 882593092 966298527 330554564 243005712 846524277 395684863 271034607 753389998 721143886 917224673 622705543 527374126 683547595 956899597 711086160 922414907 610576188 474446000 960949590 76680945 741020507 556990099 280560067 855242342 88151279 904834440 319180079 786376111 499065855 333975281 56375541 164643388 19942713 883023496 419890412 195007095 471771133 970003283 124492930 724200148 753213438 524244986 122082192 404813121 256768146 74229178 108162098 559507739 366696366 787986600 444182053 398097797 664492157 439783910 876419541 912310230 745523411 571070738 462268733 683292104 15488128 668898256 783432728 284508740 894514918 984789927 412858297 974537275 628668521 2517808 512330090 426639520 645716880 753150525 369331958 509567400 912288058 391014378 834272714 731874652 728215730 259820841 860152844 26543169 630008403 353778490 482756265 529733734 949413109 236730172 419106349 177086024 780018685 511697316 115373867 249811124 392012839 816513491 913867498 783983403 577335102 897080558 839057754 527115738 207201144 124318829 589520613 186042181 899605225 175079318 755620767 484923254 257405855 681744811 241433832 513783577 424220209 563174230 243507789 137743041 14535811 316597644 575734269 503991508 943367707 478414773 826000740 452569482 11518444 814636845 666499621 652274605 190470075 317456836 31964890 420939219 224998965 376922502 645857973 311112720 57054715 84347714 55383506 9025138 250096988 845135815 909451515 909022477 163369381 91474249 431432033 109355546 533065222 89546850 95747024 177220999 365530829 55675756 146750360 408593883 362505964 971155880 190144578 978539236 462165553 66722639 614340813 163458890 347633429 189334616 940094733 768721883 740794760 95172691 956385935 813969962 734943244 402643244 86328410 691177125 32638921 724151738 930446270 407150397 387246014 199698007 548295891 91180768 443163206 692430178 798752979 315926352 253158732 812196418 666887127 994824231 898638823 14855105 794726326 559960059 318963038 684791873 116348897 884091686 10023065 752486540 685263713 873550369 489725526 224522743 604510045 997207215 717867330 329094828 532071206 757747994 822597860 291454295 711379374 205387686 287983800 69584652 132972996 448093153 189748236 683845061 108996356 340400753 955028551 201647316 120989037 188496399 979857367 317171821 195313103 178202804 891248218 763241203 814293531 112104662 646269224 497298227 968164638 584005386 988315517 857031808 151362698 900441343 453706337 977879134 96357904 987379689 785615708 857057288 103571062 489148865 326857863 277080184 95486978 481639693 673032086 276299685 58282548 630374049 114565670 796173530 753973299 953152419 538972522 254567631 23611470 231051923 55600033 986300637 241816949 116187644 743630870 316160386 148909565 919394847 565505502 645366134 591122851 369115300 77006675 585573017 298562506 326366832 374337501 164101754 654129829 613670913 387683768 314678708 781581119 113776997 258629189 788224755 541202936 679916787 375757891 446079219 518570909 185808883 37512816 846636896 963149051 256555266 661079531 739319573 565206552 361748765 589800750 324894472 865791389 603180853 453312997 336562291 63238083 735245791 509915963 289659678 450068493 857773019 258732417 962404538 345673997 132268652 88399434 364955022 811454228 1317094 107650594 257997670 630981840 498980006 604439077 147764883 412409477 658886873 447064226 576280036 456989373 170112466 381237580 595598547 535790619 987458370 145302573 707097670 547468139 694634918 237489971 754058149 544506960 219404317 171804010 47453407 824187419 491808726 557546938 544933920 30190359 452752410 318744044 489065291 26820765 436533105 38063558 953402211 941712552 818865821 564026800 385553893 954530134 588058216 135728263 55960211 229802353 589093935 88759189 537204121 14696450 126131235 544936116 339222917 236636746 701203287 277364307 684499652 769317717 878103519 714322562 205187253 900046865 495615197 931072033 897117490 788386355 941838963 110630107 542725713 347528632 421014174 818572526 747526372 945412698 48494189 737908160 509340616 348939277 71491318 475828701 297874523 897228644 969259946 203253801 45301654 34543581 63385972 586454281 687636164 731935814 483256484 187302326 295779650 17649932 989014862 973728346 447550482 833849564 913913074 57252942 601481070 946511845 719607841 532406711 841648233 86708364 966030660 899140812 229879527 582670353 523628836 856836544 671038595 745275219 879937181 126280946 162295595 233126624 792641836 992274304 858816254 670999273 32818591 21071634 894168579 993906040 979951963 217815950 449816013 144066107 625209606 865524456 871357392 931285547 232336828 512494466 620415188 557271073 907441388 361153531 176873963 459778448 297794374 934105371 806649323 892888502 516895323 627604084 839651244 811435185 671803502 174947815 921395608 747468490 897448209 661327650 566858883 233866447 118310969 957640615 225348332 552352604 89200220 804487734 317691576 831930859 350476426 244463708 540631296 812418549 301130639 915313802 630727171 393936849 257832806 761275642 326574721 837911502 884225934 895308154 244369903 667975984 307502224 34411504 600732266 57083385 245184241 223290359 749887329 156567035 66323366 824747214 142521963 431539259 269826420 378181727 378876500 612137868 46530485 898238115 827759060 151430502 554361174 608361878 429618850 304320209 621089282 196549261 52936076 470213098 671722663 909454493 585642710 749576641 247691754 622218319 432311070 637568162 523561750 267694342 345203059 265845357 415267433 122177857 169186273 455164412 257345876 485456140 997606694 697889604 724338005 669763157 856312098 144880982 531929506 392528438 746687013 960305431 888664435 728198135 286889888 855400165 560435672 557187026 36739911 900896972 322979999 765254937 478144670 34492597 584867479 980606339 175292302 82552557 885208512 426874745 491198075 968617095 565659556 977979768 693555782 198670164 540992466 523843025 251999019 787966743 157757545 434333519 723780874 297661506 976289037 464881119 353231178 455889926 86211595 398758486 419727017 274228817 938515379 460317725 4889206 355328130 955843760 530936714 558579109 351197397 890876456 652259883 729761658 785373736 781070858 222443955 86560687 66937006 63403424 36584346 682491324 378628670 533391039 971248964 177163429 227807253 599735543 66900705 134130453 565143838 632364943 818890691 864942328 407819687 382417788 402251645 955434276 988676188 522967752 778837687 748603595 21336568 692899803 981333426 360226738 923958824 26657392 842374164 712186121 446231219 232878012 399805942 5307048 51836376 579698491 983233520 711676614 127582321 332618185 586158179 811733399 229253294 359924387 643539148 870190229 495766740 130718797 415776764 339874805 106379490 895768519 891392199 420880320 704569555 904116663 835792646 83788557 414857898 506185943 412186235 673334993 277966832 429450131 325365103 638801334 578539075 985382484 550575847 62868778 545644814 383960049 623196420 171726676 243410874 489414171 605374464 942781198 746086602 373640216 842558638 11898755 329177245 240667012 955179890 751780539 407624401 498099187 652739176 905731309 500636285 312705418 671263789 422119817 553161238 504227377 708010473 546868993 44259526 586020552 183280769 541223756 413603492 876050395 685313286 663110488 290657282 378775290 794563383 960762757 572075092 127252875 823494660 676447052 462784994 93945801 3088799 314174827 675359400 130843431 556898849 674957112 250933020 632068797 791197123 345467946 111199211 97314735 301775137 108732102 183483955 254644627 445503991 764912771 804620739 63190785 370776633 532235277 857429503 125066491 45617246 506892432 138285340 587224219 647198517 462565460 995141539 506061453 371840964 846808267 374576648 648134414 715898954 506380964 917903920 702110058 936257345 550379400 568873422 614322455 145666929 878115874 978680344 860401835 99629156 637546911 894982127 75995437 441173486 628817975 789009316 4515596 418529155 277909340 915441819 424918128 131769770 262872245 457994068 897236096 516436427 119314065 531394761 72729473 983585630 927233834 520445860 257349261 364019201 206424032 467225424 206856986 443180953 170626586 6709064 777554935 858099703 515048020 701525525 409468110 843070469 387754854 393798955 896370767 195508525 158663046 649045544 76715663 609707542 725074756 483756499 956160556 810956090 190066880 265334655 685322079 983249715 244495945 357613092 415156738 609761259 810818061 879693070 400645863 516596247 781714450 562907919 457484094 926090766 499646826 741122058 733098610 321967017 399386484 372969843 75017461 958637409 546550118 172975953 575265200 665353892 12536631 292038643 24468543 543161998 123306248 395459206 141560481 98231640 973378628 416948644 751731714 538910813 157854758 240414638 59519047 957655960 140723744 188617825 96233927 373080896 99893514 64923465 131739720 941976192 293201827 135783409 416187012 681241615 158716606 201460025 402819328 407825382 87876564 118185130 963623133 947167996 640691438 850375055 160011511 87152785 360544232 207517099 959619193 453621530 544822542 783242145 578798592 656405482 605997438 358485280 827587230 305292446 212256161 325828467 628353270 61140128 576638113 138370614 785704296 81891235 56817468 573017869 818975811 226319058 53359615 212085985 522047086 989965566 223072614 807872056 842207767 198685340 673571566 135481030 556315043 737657396 835995324 24150489 805017290 173972193 737033477 324432393 359487982 579356853 779300111 724502253 743762686 733684402 65589335 21687911 233959746 137976543 224217881 742012993 714413442 476719399 438505396 406635803 394699901 970520972 230903990 313760077 967213153 680153405 372493414 887987329 474683773 803968178 489588374 692084449 913094759 659898106 428320689 253132787 280630958 295928096 761616184 278812279 917576497 689492941 648372619 690667340 589950682 866441411 329997002 980762907 187840089 388404537 570777273 388494522 941018831 823290484 811857793 485549314 345685363 506657579 995030786 544607987 666396383 314901693 433604179 101792985 391042463 21906598 989218356 191709595 625264283 268390077 346111807 262180771 881449208 140480825 452111920 237693897 468242816 385174471 889529069 95023455 552075531 618674186 877651498 749808104 840804432 663004099 692186856 156166541 308158980 605233346 554038769 151709122 297138647 95706549 896780429 678179085 283023182 727633287 542649180 973742507 767072992 230991367 701631962 630932659 458473113 375679341 34966930 944887740 124160219 990376607 717127165 951279267 317344771 587187731 651375308 150068731 439903564 564357207 814427292 201439463 283307575 958572630 505091186 246747480 808030730 592183711 616186032 262793343 681393268 824342527 854935787 95407058 961346980 267549404 47808447 913143041 966798383 563777359 361332168 696685414 112651857 642807833 324123187 325924985 512684394 546992382 369974984 274252506 473521317 490162756 800488924 302967546 450306317 120995468 431091982 749392202 273206278 443143188 412397810 990326753 835806111 773926629 542312513 258133731 489373097 119044942 849711471 216378306 241664776 654976710 486917192 118083217 182457306 139434652 107327828 42117266 995342868 944804425 919292597 857464578 377865597 371117489 210431342 263419727 160659986 651252992 289663307 552430221 440406504 820825350 387376153 774858061 982888654 628920606 833094512 746199430 751223350 660039300 511407077 434029133 147963961 223185902 235280025 715790596 936411265 304616110 468306758 821589278 180841392 484321586 62301518 88679110 367585824 7680968 452074587 99145611 6355088 646033155 938697032 14685171 674651570 995267110 813704249 487766639 305859323 638335317 689717790 925945437 874636803 458931598 971105748 190114448 183291033 94660247 960597930 556924961 471644567 639218991 10787516 386515623 558427952 712092156 611757576 838877614 356945590 769761041 480394904 246946836 824913901 370820636 402309365 30110836 775238122 522576063 720642051 814439428 913318160 244892971 5197917 901519364 606971853 170612605 956475795 291493672 28164129 726363245 773711252 898013389 234852698 614397113 24656021 991352263 831169968 650675604 689140762 599641259 6560807 525948558 159614655 304874711 758324685 478695161 474761387 350550878 53948632 154706251 561635211 237451108 702738703 863320969 730312179 794574279 747822334 908852807 788834109 490211987 255509447 423325456 77705256 120788088 815151470 963514817 633078686 879954455 632911116 689994724 72966589 916894141 575013804 660448272 658150213 309628296 116579238 244984501 719954766 738318275 821523943 603542443 378538363 90623823 955410018 684525084 860231679 335177429 42341281 970921034 412260021 640006048 994751347 464786527 123309980 994730098 577652643 954621708 572935940 613011355 599312363 801711836 814937214 773331287 169720470 922550872 947789999 130329477 317649565 157195265 546225367 311623929 993571826 144558478 547569555 318149216 12851354 128463376 12108509 32235440 161366060 349676615 296429685 122701370 681398448 85296103 580508304 75369151 637389411 706102043 938645406 297750337 30730514 385657727 42071695 223502539 116897951 240088076 889611672 489519194 347839708 232111455 692708013 712342091 614228631 367122450 464302235 526048553 985621812 905817745 352612004 193754599 526105744 936982476 64433421 827817179 955838079 611093608 581600675 721310189 281266794 123016100 577957020 448969367 837636186 539716647 87190047 596977258 984829354 292923080 519766056 686551051 763681179 542625865 121445978 459493870 671682730 28332318 725233207 650848208 582420108 207766 4515408 813099873 198130972 552358169 675414596 805823831 555277093 159392145 93017852 95007060 517742907 444186066 615594250 974371085 276500873 989205258 785426232 597708479 377739832 660934433 344653874 290080415 255250851 959841121 162701429 859695460 531560667 301149277 699759755 656458082 58704700 614050009 124219899 789745799 577599868 18915354 742000111 598291192 656843208 868840308 173334834 604854945 384043590 819689926 661940367 592931450 822560705 179745218 509009793 573617032 566599318 960880677 60803825 517631074 770777404 487037255 560607046 877338638 482766837 32668251 390686475 516503414 401514414 139451398 311438392 785408261 925709539 618343332 607942046 81965157 716228195 447778552 103007903 92744303 197727499 53579949 749616675 629257303 12764829 290884353 128167930 784803192 549946318 247642824 14953932 372058912 462760850 710215689 340749810 11364088 383504735 484874162 986494292 411845298 317453249 302330918 905160753 468470796 369987645 850274407 779842279 218766941 555925313 551775625 820845888 443127437 995706539 551083281 60241845 21899136 155752099 407954221 278518678 570836970 824512571 157482007 798833816 136294565 439121246 607931248 276035796 758043893 614878600 830906183 276523660 413853579 35481299 672201522 480443712 855011017 820622423 942353204 658921220 925316535 731331332 488140540 616232703 851113823 860096447 270833853 659388392 557150631 399509030 806503145 63428682 968597151 513487459 161737925 639805258 190860999 377656879 669053038 991535836 163907501 433358129 202785891 734495918 892302396 391634801 596384136 38158316 148964349 808745818 454311 836733323 814385792 576293344 807425456 657065981 806790897 122680724 379194337 958167632 259431382 756943654 226453567 87100815 255836680 83624817 865945676 851177429 518685027 613901357 213611428 81603787 944613349 428729627 509584964 733336227 914270687 641305651 286313026 567368264 786396936 582076146 833607118 64075938 805985752 721704342 889187424 296639475 934384081 221414952 99648075 180877124 979915623 390920256 870390104 135543839 996689067 127486910 235690119 230436034 986304203 510052156 737697379 849565142 535573565 732813289 400726011 692566655 815586082 40956031 667911899 179624945 934189040 183680149 186664246 487736228 879058790 465777744 761132849 698408616 60027113 132137041 677144433 272664019 252580404 936373645 371384386 13408144 491459309 75764033 827341361 52861485 67954876 26141276 321919901 799108034 680140826 639582517 385203398 240432632 153801490 384117503 69494699 682907228 922174895 475354102 725313639 934886898 490903452 307414909 471215399 812459262 550560130 309239527 823368789 662181549 88257265 261942401 581054710 219373704 106085940 578134523 397539017 78444729 991369117 955363095 901875586 533929039 810983900 357569646 185166782 857521705 215942067 705589936 569072094 946767256 403113217 313709905 672639698 507873073 484398671 165434320 273889092 173873576 632804439 164106051 420457076 483831827 253899452 645178489 986368699 65656127 635983042 541118599 207103969 434094526 207097797 323700981 415082385 861949343 25559040 178925288 284398205 983522403 769982053 937254973 38022276 653568660 843482097 697038942 997959601 558147057 75570969 769948893 749774461 372017645 455558370 646267193 983553190 997205327 806504681 243802643 821298163 869757449 767390672 276090654 382862651 816026656 422579259 813809746 100727158 566415735 549722727 938725268 581078134 181270859 467431089 768893752 361677915 685917031 775670187 519093329 656743550 884290106 653554246 383540636 41224966 499777187 330157524 416182817 141780244 676703617 285670875 864117104 464165473 75004014 750386808 117729011 177972214 806803657 108268698 431170251 554698372 19060697 420351667 483772328 192740873 526419016 61763485 664646040 23899073 648422982 863636012 785517354 379263736 83079207 743720888 382803992 141605282 475872759 219082004 279164777 591249962 840179108 829938999 359854158 956436909 49631047 890648742 862066049 277214262 184386773 363317796 133059579 574443692 774197082 671461035 951800961 858863825 750885731 530893577 8250184 157521604 157450631 984938589 294373177 935000527 315078203 859191220 945663947 827689307 354148179 19206276 331117223 323865797 1294273 49427513 772887699 619808268 454671715 564981160 620182128 516459360 830212612 798237576 892401261 12966562 110298040 427035677 744283429 580041777 501347499 15210064 745859236 788573557 397228328 818127071 176925773 537619711 912701571 513703174 441488762 861998362 32828826 815526740 983141953 942056189 596001173 107165535 544719110 556112542 580491940 782223195 925306400 283724406 785853456 39248967 162654538 219044721 102858572 984070627 520128774 853949240 295499672 909056765 708422691 6901088 105279946 47497928 166974092 557195419 535096292 31454793 488155662 966180753 11058217 325642455 115128926 388177648 475774700 813021550 394346318 125410857 246069877 251898245 79999923 69991724 900147529 20919490 413298257 758378009 110443529 557776897 252163493 109784094 961230104 687751673 830509424 693965348 227774425 444031290 834086023 121575571 597303695 199010660 735186670 486095296 119306198 344901817 345772494 84196252 602247805 349858901 325308907 299286824 943052244 324329016 347083779 889598615 239971315 223544602 917097365 101438623 982960214 138956732 846642685 164129322 447863700 499798005 782992906 749913412 966565565 142984477 876267918 583117471 769803063 607103170 30970268 573681548 451969311 924939991 359928502 569238765 720007713 825280432 812561589 983149801 921763925 792140091 566106365 993017813 979158073 893167350 558232281 589284308 66202660 310636682 767686977 710818413 686494206 774533460 525417683 901505936 490031330 530935565 772880793 674121917 880955049 891760104 248083403 679163073 856510901 396644326 503928583 802638766 898098070 569032760 154166602 389096135 385684268 196482132 490898138 21686614 46883573 429726797 265371737 255435925 949633220 990139621 485470676 589901378 627803540 966441472 718114222 439878285 764967763 790868505 333558072 802718549 440398966 253815910 125629469 391160917 759183990 512425662 227189214 959578271 327958696 265100010 343942587 540120068 282004676 962865479 82252544 40277329 317217506 518577337 330501769 566674542 124694903 510882750 828821322 20439517 351962410 694631311 202337744 840077723 603812388 576000881 498564011 492151329 315733198 820086550 709064486 707344983 844403222 607586591 34489888 284392597 198467867 192532320 572587171 22917562 300723926 450815879 879799168 575184971 701098409 341766558 988420482 969737727 124321035 22219568 636523791 67904956 749068835 176463303 48462740 942147760 904288506 33942438 497740186 470712513 909309253 120681876 646136522 560284341 339047601 236399378 342684706 562975946 482037644 512046247 546919848 169834424 54345095 15173932 996988320 875600607 344417050 461591640 494305480 311836976 131304729 753327320 427328380 332685182 203654012 14891644 672732003 465507043 503257961 785491988 427627093 496243370 989269017 270924465 953114028 148389854 469588468 242555110 760379214 455618816 272086495 136920458 431878548 506989493 762261394 83283911 368963790 738350663 626376485 812120492 373395289 430505029 812364629 921086896 26425339 665310857 294165460 793475806 885265315 20364169 664592061 876351370 998382690 202290794 879755644 257782944 870828567 314353191 75542236 857320209 965748266 994190220 147067112 506030700 831795578 10637310 903789398 973222200 678681849 906148046 313750725 8751278 823939355 863781717 252266545 343910795 519459356 609041681 377767795 837731030 944818395 29694098 595880333 835510016 132468293 253206113 536570243 58391369 369229817 425485521 400277983 38781494 349085953 998800419 797533696 288333748 515783987 471612736 141086231 269852798 467933670 670599751 995641991 788060298 358627130 582065492 704904741 950731919 56437673 764129664 647931178 141361376 873314354 897576735 798326421 683672645 861130082 156791582 320410262 895385382 879260335 233154404 493012299 891446507 941649380 315388653 879801148 153370864 428372534 771564193 27947055 181546201 945804287 656161050 108889017 597137200 264667564 475103618 924915003 873119521 129488952 562982445 529303848 310007498 228193551 473021161 919981799 772658119 30609559 200874248 588904109 881110433 375680519 197710100 307800423 998555022 200949856 881675660 722500963 499883746 961423796 438425999 274014139 953197466 406948132 772843766 277237558 647411359 595311524 771955285 136365283 318652341 355103002 886199271 531327448 21181689 196312808 532219777 304377378 669956819 905066244 849897696 2607678 686699284 76127253 953597040 281719916 176679546 852660683 860462692 891720066 201147478 993420946 33868620 630172829 41792603 364701689 512869882 337232258 60933454 263681900 511742789 842472784 968439556 24376000 773596685 85708520 784025477 969951037 468911477 731801570 838548780 825865648 148698774 330111270 71318123 310539015 123165196 925095340 32947201 9108437 225496415 694121502 557803298 591267296 11383183 746725960 669461248 385650040 925297549 855200771 834673939 476036542 208838389 647527028 625634683 306256892 882253339 595884885 72273503 868920350 618523018 47828299 825336913 488433464 987271746 553640176 459745497 558430471 976328640 994077552 166098231 233083401 935399235 175848278 645876607 661940251 762850798 926312025 383951238 920789559 273781962 744667071 158829423 557359373 314741404 260243746 990726259 495664230 210116894 103454064 893803655 192195860 290263228 999558602 368481087 243215725 266301973 31339758 232509202 145413106 878659421 672403248 951272463 725806955 648178082 595661198 182194428 190514940 821191278 158176170 210837271 61122300 535956496 920302802 572152586 780180799 817073389 697525270 428578084 201762612 199931709 570467289 78665097 420092531 791879192 132682821 420407632 372758080 272364189 964180175 245169993 578541813 949121469 294055048 45174074 179518339 685909759 24624876 480419079 626136199 239573997 365076275 32227568 177251778 288338686 937250797 410935404 501388780 604075215 948888766 663556170 150075290 907778423 599608703 320709545 301712602 111135602 999270616 786140704 255185671 695776439 535991847 691457482 698280373 551742879 330852123 940853162 724188946 950817391 222308101 131607654 751240888 716370419 475816013 799924364 239998645 476962150 773408068 72620021 53273071 519029639 517613162 782769420 496042657 997383081 171596129 611835868 49478369 848199583 545896956 270301659 188198069 59747164 45934966 996914212 660308548 534884321 417466188 182143387 462179611 165944895 842877307 381768973 929258925 614984482 299296476 595822919 260230066 259946178 971737919 906609711 227763214 346468499 4472023 849864605 223123266 596391664 269094163 842944945 747317762 247176055 966337991 567201286 752649040 501671953 134495664 277722434 831493328 856408292 866346843 77324235 41005910 873714603 95569382 99825316 174511525 898063357 513434874 298061633 465585251 344982110 810544482 275022277 606503131 751785504 370994374 120244088 572238279 416732383 479731273 404978865 53617001 540144309 465324766 978245122 977959379 769089893 407843804 771915473 211615634 720746521 848211767 8591456 830407890 756292633 682352581 416857804 516945298 706274505 560416986 898594978 474886937 240757117 994534560 764201865 893477854 855327326 111759559 312713375 916799806 841970461 435357878 298202320 641745241 781367492 772718117 907028682 112496202 947226410 299432017 170841001 117751039 283100599 543893161 61864300 407653232 527250130 518034284 494451351 770260359 211166703 913381482 552622201 405095823 811415757 491631851 178184494 865095558 586911138 535307029 939341935 171492417 3247769 828346102 7457381 876374542 367613079 839037965 333396025 378636792 177302239 134541646 181090656 429079173 366012966 152689629 72228584 469981049 128626359 916992254 552950392 217320426 693706765 767960301 732446505 486937019 997087878 854399403 601467924 978761743 442859204 93021657 692096544 628115871 372784259 644376798 553515411 780448383 395010858 530325707 578134239 559925605 377422980 589519893 701353767 713212001 493977892 929663365 13800983 814272077 427588662 842233722 26884723 610920493 265050840 475860625 887246246 173672412 947054592 112212120 607904948 324976013 551690616 92042894 374502888 175797428 503365726 542724498 872817463 11096290 741388086 418132086 286977720 685862756 999155209 809362147 304408029 161924597 557528662 691554334 110566125 95406315 889238754 346056269 800344536 483302779 250288514 270478720 569940886 20484825 304660252 437923755 588190193 263586004 545158318 831765686 629529340 856787404 459958236 172673310 536610989 231902354 934181960 139564040 194804480 329428416 877218878 28169871 18565812 347568037 211460074 373077222 54951471 30093350 342028808 459820200 978450410 642664243 711675190 23895047 166224621 937248168 851408012 954005944 358922964 562416286 649942697 48267970 333402704 92678264 310003138 343030970 251405312 357051900 868922415 601934684 124530409 967935208 973923031 184212814 425896461 888447933 450834982 942279071 27476937 436877866 158999226 556046927 943117505 762392703 794808027 157637688 606353732 612727972 273795388 531527555 671669521 922760778 131445026 797894223 109646486 18291928 798143711 31171572 107702170 317566101 306471798 102674683 547448892 16039805 607460741 314181957 196941136 203528507 877788019 986051196 78633554 705390269 605025171 930496263 951974942 698371111 67733955 162722069 726918939 950141425 501175897 432332783 539019366 553128313 770716288 968821389 19041451 787107966 387132152 916466280 188103926 614794246 271790705 501566110 783524050 347300970 911382961 242000703 566753711 886518614 973381450 998835194 775601308 733758807 82746884 46086110 9354182 186352186 261438924 292498234 908462622 733204571 207975205 281180031 678496235 406014692 131907459 534606381 496448335 169734451 786554094 855711443 321236857 18983296 122526270 731195061 96977934 582239621 504023000 794381851 283023192 77374317 446804747 30569883 872483573 669994028 735023430 661260213 177985483 394348021 955294035 115662627 273842606 87383345 567366452 258758729 905684046 943802689 40966764 894981423 667537678 30518984 869297714 212446134 847212650 954485983 987889776 635349482 33920171 703111278 110929051 472442636 706309128 798421089 764367504 35324529 584387435 257909148 764111264 411367707 831253934 196791602 508068333 299511916 298647040 93389934 740634818 916803963 873374864 357401040 732011122 339929937 123756838 337198722 507442759 606490776 937737543 445371356 87206386 516928467 52744753 964317140 9229619 9159340 324074845 846998565 305390744 24148156 552748212 849470603 40281204 426161693 978919270 629780967 319617523 815811522 22102168 448360769 189966934 942729564 256452350 89585194 49829605 4522241 54575595 749742441 872516782 753599953 588448349 8421949 929308533 294373893 27562453 64946497 519541888 117540502 956864181 126314397 794824942 497066177 841695208 481172450 234757350 74261018 784079673 857593614 320772620 75302788 842035783 398388129 128110824 781064163 494386074 586222190 675948265 351754326 475015001 875498477 276915567 157023792 316901359 895065027 672151371 185334635 606249800 575422618 688994237 624701270 571357478 2365148 854329819 620855535 199500797 604759464 357024023 725453224 584406388 625148437 408366143 783549458 322141699 487030526 856845265 538345469 542294963 451365557 90428641 59376695 761795094 251005022 591187294 692021851 420475341 266966316 165997096 917782837 198181282 256527779 772710318 818050003 825566988 655881528 280969030 53420379 583922364 609910553 363087622 206873613 227551570 28794709 249092570 70778703 696952575 567756724 382366873 798262308 312943601 704227749 940641069 312728710 65061904 761090654 577264543 692466838 532256710 370844812 889758682 78152580 34598028 999604997 182005221 78213960 101823929 379741315 8798034 979321012 730008596 3366135 833220763 224503118 268731969 890417965 142493803 477647760 572934459 764287713 624540439 724477044 683107490 630111311 264505754 619089785 732125442 766739120 570935976 917294544 83705223 785434166 447444701 805368083 156501514 259463464 96850260 854638244 428330698 335307701 585403352 171042966 656105636 921391274 125277420 891775561 83676259 242624337 873503809 394333032 309347804 983079616 128577640 355830610 764338597 807370566 405359017 699356433 307016638 259524233 494713787 519884459 943311987 824528988 306137494 371096342 549783093 721437275 34411462 681691533 857084810 312864004 261510428 433178155 529918405 984200310 168709250 357923382 873626157 422861944 245429441 948870204 717172045 149851265 10246663 275636363 115791034 84828326 449508096 736664232 843104607 932269713 387924288 868688496 579217727 36183554 823972935 915758628 306836213 211575449 691345877 550995128 986783204 901672062 385537722 388822746 848166028 110050070 456654799 735182627 503681634 357905879 393496409 919865710 319891509 584107024 625351390 511468678 625428218 889463076 225894809 126431552 961411438 319809190 965581420 809157817 544901359 170413674 158141065 492561002 145257214 321096524 300608641 553719993 463924801 395882165 142874041 946928696 519103769 483168963 195826661 166965933 655988248 694505904 257346507 81921537 227531637 815542905 448166817 934242642 141044770 399320971 44354202 764761301 969168170 292232788 763012114 2692409 668818667 214168208 19524625 755871727 401908837 528813799 289630303 334048433 159686737 981019370 932778211 428702560 175016673 265755051 851607485 426780860 358770464 378604379 997038255 510561749 652235480 678714517 153010216 315859863 672811111 911319418 820347217 427189278 420387850 62875893 259055970 334833717 752235480 124932834 953843243 360959653 483227660 562569542 398015094 657737110 886749549 664417945 243527965 822414195 360630707 608548342 808266070 330915801 458217416 600927824 486681423 240452119 277341794 800288308 533151111 192293262 130558867 52532997 567375590 782537267 461774089 103277378 108961013 267823595 857754321 174085658 918549018 66507954 25763221 328359366 825857547 487705420 273494322 659160605 991090238 909841994 801385139 477222194 15075364 712404446 666766919 797280857 760875994 916136046 502557867 360451077 832461864 657703290 216018248 573083338 769682530 778209044 897350889 668649969 65456438 676997924 2469526 732544863 953302111 191618473 592121976 190066322 275998375 501328243 93055034 933780005 597555619 195680074 549332194 996449562 668517793 482942231 777853079 398803817 338125288 954413802 349573758 496230457 59418994 492369184 506352940 987515028 874098285 869919840 330253374 858142031 84943261 369220190 331842773 125587826 845769076 45075437 246552093 255196191 505396393 894390321 566630364 61560478 578030254 174734015 994313882 66057440 117808602 734323654 774800108 681993682 456305872 816086125 294382242 413682399 695624316 339272113 966579066 20462771 610420080 910062084 853584127 585787344 500957034 490615089 107482554 767550402 321868602 162639428 447572155 953052615 46915551 235210865 650041571 663219699 539211051 865931355 825836014 908431762 271766787 645160298 505410929 711893760 858462572 97671301 243204236 380886124 467471516 250846384 276363975 883001229 565421200 670393167 47590461 998726646 677283625 352628671 97076414 840894079 762627295 480781238 236137149 306107246 949154860 371708946 425539473 688536324 209088788 354338042 16472041 815686541 569195741 348736197 595294652 540983431 623468617 416942584 168615719 442587134 31379372 143594903 864950462 142406661 791606194 469880279 299714563 226987219 37609287 481317071 958927853 544930571 254295734 207827503 316009339 56956875 895199440 723528645 808298997 20770807 287992485 223049956 919909569 688970712 318853632 501127019 60504048 896176298 664759982 255181684 365703119 894437225 328895149 508590900 714725549 600670781 18423591 201881153 311190837 381771245 365592647 230510185 734525126 820976779 358831054 727744472 942555422 890402486 682258723 336016014 305224392 277112364 327858163 200451081 544853760 647594069 675033951 92592457 986107238 315270421 7858394 473651752 992017370 761234792 904486489 249376196 838762068 324737549 37808868 855941562 988575794 133367522 768284348 3705671 68915173 214474314 97324303 574979715 372006862 140360895 333572951 885430556 811517518 389611991 659948028 856086848 393684813 141234505 426548362 263973723 87648218 472694452 894648168 296452992 912316511 578389374 987650683 401341180 1527280 473602326 536373926 306778812 963825257 603954411 775416173 916781129 260958956 9332190 74168808 286295718 981440265 22233210 732563275 861740071 588859186 914071184 54787653 140481046 280509771 235397476 118554425 101517026 897849606 987644455 797141741 751990708 736963025 680794176 667472774 469575473 523738829 218247510 84593394 642549454 40609891 55234328 98267737 381233285 107057804 724246209 820325850 552336062 617283873 854456190 62617830 927733968 114678376 712865191 720456889 961632188 691519141 827638852 329218941 481812838 23531844 369547178 202167122 559388550 315115157 946251606 693390026 102856749 297652206 764760434 888839940 810584936 727257996 132738789 612911216 239071460 950104407 526686740 890286239 733419449 640598331 74858752 13686801 630237020 771483314 597798339 41220306 748139817 443024907 235995843 748809488 993558132 762343456 342775522 333770413 360224219 256650051 268479063 472922737 301761235 71218806 930137816 776441378 581200866 876404773 843417007 218268297 497584104 52577869 336729243 943953022 655825446 8696877 389880325 72871672 237673968 252171455 20695493 699724851 637474683 16051255 742465753 324887296 248584620 504248641 971022849 498051245 159155628 204717516 611411281 415947355 353143770 822532461 1051163 697575305 858961419 282120459 889150257 649454668 265322368 607579086 802829481 570543104 531454528 463012545 780813490 912006890 229615382 142804601 977100226 962256308 213789389 592388152 451051052 826958230 554210613 41463610 280453606 973587007 508101741 1604208 188919153 986387133 220000321 701170788 643767571 701287418 107477984 13962263 25932296 782435005 467426794 540083711 638938512 805172333 74574702 858853251 52380186 777111563 889339447 118159632 267272370 939684198 96353169 268184352 400519620 283059705 268485660 280461982 23823130 544486175 752340431 862904279 591775778 875607651 816881286 91192258 535377511 843151374 851670492 449362771 778368244 778844646 466118194 644021099 485510790 722766375 403635834 367209286 210989151 31639656 324674129 321686485 452215187 869050626 543611397 453618043 525207801 676625376 376780940 744687789 880673334 801344965 801206966 611457555 608077756 464633519 137437230 73788013 331712793 652505592 120468745 242403037 848821081 804999890 956638602 395330017 568225354 789832073 427210018 229539381 799531795 127894801 829201356 712697762 283379389 785714476 239199105 864737900 496740683 725648013 553615317 69618594 362978988 669813697 239256280 453599680 542168852 571056466 682748583 559006222 844497820 669122348 42041979 635138620 805121020 956408568 833717386 408127445 682594148 228255561 27695241 484955991 147551299 13293084 275037995 279023149 318333264 584493830 820559747 618760840 952500485 567239971 740332790 580525312 649350196 879690705 473418703 734808897 812942812 85290672 259364915 376985711 962373337 732288653 436955638 460846798 197857536 711038186 815476664 330400064 233903894 298055437 452089233 392477073 246125069 127399411 785355255 965176266 858895581 349837282 702751699 803109291 628327639 795240303 725565083 617029320 514451303 439882800 174106894 163759466 406374768 502483125 932355898 866440754 578030212 758067700 822583986 138295506 786065768 27330994 312725703 240182553 376200999 739693296 316243360 667132192 304076568 318737820 770750392 576351596 765973359 278900163 932121115 852517751 528717927 553472868 222948145 335725707 290693309 673447893 400336927 583478203 904659435 599329238 602636214 299034405 290043034 403621934 442863303 608850564 984272053 913578455 415713358 162120295 331816639 190832856 997072069 55736704 552675533 242905574 529485503 956353539 512630172 81943335 8014638 425178688 652285210 786371905 519097497 496170525 232693805 23893605 996674969 658022888 592817069 543044740 467500518 331905446 930972635 760456472 519154856 294493176 105679089 420993021 524781027 438356532 909516304 597745785 64296938 596314044 457168846 368894129 681414762 27708380 232883859 354105691 199456373 752942634 647502754 703785527 34966164 581809416 314705704 334150627 559514069 994622781 203579700 554640885 578071619 560947624 777904071 834835544 65221834 46722518 743314382 494756299 462962136 148917218 283023714 165781108 851385554 251450737 756187130 636559339 164652128 471687575 986947773 893065051 183517795 186835679 176674798 814693567 757315676 309619158 232428859 670112685 349589382 362396632 615023866 275393914 440648140 661875630 288033627 494940003 509956657 927662064 945374091 120932887 688915348 636053901 782625990 9606349 442257004 553879873 144068457 585293318 525117416 604810451 341637436 908990418 10714244 304301167 1096970 543004393 492429024 947427423 842314351 709268537 213259218 334987288 663451409 717181177 873502677 692531642 744529574 396390900 758987823 299665682 201984226 405709589 854685668 763415001 224793303 885502732 923595416 37576724 332060281 907755195 829277235 92392294 206783335 987754191 132776340 832346200 62717937 521430802 114095613 67365494 249161659 14031240 331187771 895944000 997434060 524463645 392483435 733905533 266193308 98009111 540186217 725824927 551442118 767008717 186079517 426978047 421499726 66684038 889266610 847387179 364469029 63934222 594703054 467266233 812877458 568449513 896226601 453230850 292327160 285887797 336545856 576492706 244255008 287567471 909560084 543965927 423185343 95223921 435289047 926612044 361090568 982276328 388598657 294569407 970914191 229970562 884414566 64014182 661296056 731547189 691773206 527243274 992739013 522577452 913743860 343453529 569173076 377151982 345272967 671157466 818159425 708113464 931021649 603245141 996042292 842175997 991941870 506998255 617271165 577306215 941423742 954289725 551167709 18196076 295928846 50800007 437472106 261246987 941439851 74107369 179931010 59796751 286812662 454278216 946338325 966984713 224343164 944843539 826022888 630254287 627334676 139154855 541634960 494840023 199469222 597772998 909927928 366132632 200702578 123674608 33665663 81426602 133146328 585259000 389300106 679441510 770269989 692052120 552723944 86542006 792648281 674153906 269490985 877675758 490025964 797154125 103586092 566699107 473985197 560486299 213282520 93173631 244142149 964229630 52048316 279401777 577343963 589728990 543897703 223135711 809542096 869809108 685506274 209086623 581688143 358409894 724982887 34891626 957296805 973733489 288835354 573553363 752723382 938521933 74917045 219229395 813522360 408559149 33324533 386368513 500781149 587239737 816090167 802888935 327990022 534891027 864198572 123207557 536743785 772356217 362873785 112517019 500632734 298724914 126428624 270118887 96626845 191636905 430235603 695771968 545978214 925193937 68704046 499952021 142532911 622335749 78448522 617912803 743699551 715389541 57381611 299101802 905575413 748621837 317964117 795825604 243057716 786556676 728379125 991192579 634895333 590362406 476349964 713536827 757581970 747345404 974518500 931793490 310177064 668746952 720055918 727301946 916123469 911039711 917331352 346277602 746513020 658254197 163193791 101074214 737491554 540292116 980958545 723231412 631392854 827761371 123796428 321558383 152063340 996715880 817884666 791697752 995749048 944269905 942409714 496774949 247816878 699780765 829026611 146687913 700801871 988117614 129620439 302944054 127690565 709178847 992319512 770973852 136052786 671766857 816040138 222590421 549177420 300057632 277929515 191097247 844885406 741555034 663468831 582023785 335020335 356852169 242991458 975132167 792044811 14769982 613163271 262232116 76452392 743076107 858758409 683686487 937295356 679350843 465244212 494230739 797306024 756201708 118232517 598524592 274537749 905227592 280209809 405273440 269732340 386808795 26435156 14993454 353886162 211486818 922512935 681092470 187550170 237228318 472319014 930671985 16848705 613365106 513391146 560403134 521181107 436599490 336444796 525619907 390683615 461931137 808857073 479058994 598189648 107208036 426399287 259842154 521546700 621710356 555777709 128411095 916991384 675794880 703605629 624742789 794954925 150954598 641792849 771359964 862142728 728214293 513169743 384426173 598703081 853438983 245175905 849613871 719824151 385614426 437091708 353840149 221802183 704173442 957796558 872230046 17393425 241249969 868396325 627354116 556261835 555703179 86985295 185227886 622669068 437089130 173296988 418387631 107381473 637916751 125775896 461371052 351723687 682686010 138525067 977687948 816876725 543278856 995750591 403784506 546438189 332602065 897844933 521833670 351194666 97082435 587927439 50241366 302601188 704228384 529110099 201073011 57678898 795921890 716940804 712746962 272478547 132779289 608260578 583485037 391141305 398611622 290987872 363916454 288384277 65054200 817387163 616298970 670051901 107618256 102505821 510892218 938972508 193660871 294349557 135768809 92687452 802966151 922132928 826960799 220842701 709213190 524118315 723982942 976753705 399959542 73157109 965139245 831136240 513513795 968494233 834710312 912475160 663853015 989211444 818284424 155124052 601615656 939185521 630506161 55843229 312473081 702786158 556559885 992397518 28603592 975172794 582472051 119430252 771285095 987664907 127968817 391288143 614440634 329409831 313781270 713842384 163558720 871594100 43361979 369192062 399125104 105044341 901738966 690229034 453290206 156532434 970559912 432518541 319935928 546087521 719076613 892061099 786769361 966606101 579939041 969874185 199740474 195189904 236985725 537370450 772998451 428106718 579435917 743454874 469338336 953440930 715826430 295547762 81436060 664874917 47115786 5553618 793257993 773111922 82292523 363749978 115022378 522675625 208691889 420712738 430890083 279060329 879384350 223712595 63536958 189848152 545503273 172531477 522532546 824783363 428911545 884649346 358266247 523036284 826977904 149582506 45837339 751529704 941245427 667857594 619671171 725220987 413711632 868212407 83633825 254887285 791897562 914365420 17862514 251023842 775623684 493546907 690991479 505836164 601237762 842525046 441100706 839608220 835113678 841107928 169251796 944718839 556626422 128210167 331526032 448119721 273841777 463777902 622460553 381699807 483367196 951004183 238734766 224153066 93899975 67313747 761983716 726962726 476398391 51404363 508274150 356191976 372465705 305970786 20133917 611867817 299061212 384874523 697565057 302408857 885444316 422958450 893774817 376153026 183940074 433463275 61011428 744721663 123280048 31805877 886038633 285292111 237644613 129403266 774799288 990412201 684794416 786489477 45663750 314556730 874109392 89403926 25313570 503725585 715148520 899052745 131464606 366881434 608510119 35830697 198251771 212474390 369058654 214419851 827458778 140869073 724477281 895879916 425162779 501044214 57341184 602217136 394258129 719777849 567154544 271001910 949598013 266105463 542431504 567360467 413254637 759593834 780377240 240368511 851221864 405040257 701855853 760005088 349550762 521011215 15112614 298511735 253453473 714757606 207649402 726423133 479336993 612921529 345747463 126026499 387785581 540478862 673658623 858286227 458188377 777217396 460313233 920206275 657260934 928993343 385615809 391830982 169028252 67552580 134682571 200671 698390674 698270685 722098323 100342667 109316696 200813309 103054118 114187948 237408789 792318778 554847874 329005626 39717851 477049145 13263640 670965502 312329986 335302771 486807953 344453930 578683335 243839351 371549329 404980653 442458816 73528042 149451123 519617174 286999448 340827648 197711437 288616274 884562700 394684535 550197535 273534617 148132741 870639980 441196878 330402183 597800422 726109896 811780078 173601845 473342292 665897655 486951771 977520747 139450531 523670623 597731259 751581810 458433337 651462299 144325365 524531247 113725693 596401982 650856969 980591074 811730498 9260498 994488339 975248861 204151802 980919360 973109024 8325609 826626430 60913520 166964487 429648113 279362142 653640582 68648870 781446596 98995992 507685254 88835013 349698124 802778138 157996921 249863494 322502799 82781439 349695043 570157534 286603177 510716387 800696799 961847849 381668642 345527120 297111796 544416448 264591838 321807928 483550000 427106821 297159539 661484580 207813421 38582014 470533172 11004732 892868651 423497280 644816522 315455854 243204990 200953229 367095999 866780702 326706073 362451057 403829431 558740774 990637102 653674722 24124874 387248987 23530958 205168975 259643980 36892132 271179623 700408680 971998626 64941060 483153951 231619565 633711797 950031211 250732314 256106973 904626570 133040419 418259961 322904282 40189643 347595672 865674206 664537431 137822145 816640391 639279372 632707916 125600161 656744127 735980367 426848380 118804027 306271929 534712286 48218634 925395873 304632475 792976955 96095821 963997466 537804726 920881759 187034790 117794663 346217561 661795859 472449005 939513898 268676663 994395644 242714566 551423087 123732573 393786373 200282783 959344768 861123825 874280327 706463170 303938176 565970220 731353446 879205281 533261314 370748766 212289358 103927371 530629554 46526635 228903241 646944673 138905509 871906011 65812220 225779614 769064011 265470136 855639722 162496955 582206740 893091923 22518365 820415174 962480273 905033067 956512389 958271750 464596732 571025781 92289559 593181348 601844273 311797460 240231043 519003236 452902809 956810876 438466564 604061827 648641114 589722009 749465678 517125036 289802133 479790698 558312177 547405727 11348980 282530675 781587272 154683500 510287463 490527886 272282197 985506903 149876163 402123264 660410665 226362701 258421416 559570476 677309009 291230023 304124604 733440037 616949207 338864287 90567990 415833510 490203500 597062498 199951577 33002056 418451668 499823122 786254108 359590050 752866217 237981683 707660545 67225128 317613302 45305914 796005636 617370666 314183282 32403372 60101334 385256859 186674962 679052971 356374576 178092852 436976101 682406695 945800663 772653368 1426520 788556336 673918481 914950888 651732287 15907861 47534662 380123280 163113644 641057087 899757022 890526914 507014921 904064638 381026660 675490192 833440403 547628145 373107944 151310656 492349305 472790863 144740824 466938427 904213569 304053487 914352752 457300952 625310281 457733521 616195914 44050332 126433950 957369741 726923741 608521053 886090568 105623274 258585443 189547290 956509559 477097986 33536712 138773389 559184597 174153337 395207897 564866011 281093567 540242590 320227424 603720157 510274729 801083703 954310122 992774588 458305316 212343701 409109497 211996908 993757441 889642163 797013251 400384640 823899392 43760718 860213674 145655957 327042842 893068220 70421221 327885956 905971515 95488204 41538379 950771242 355809103 525589677 963803173 596558806 372744343 818113110 405103638 386543446 822945342 811136648 350704509 606822812 810108818 415285456 131188859 837110944 289481053 110783658 205544884 474591742 973952305 204516323 656683706 138748467 355856363 587757940 299885912 670526863 921764697 199401824 184318903 554243997 740692527 937603034 810520817 817941086 364797893 240485507 276717758 298212224 126679098 176206237 125800952 95357545 775380611 786734171 303600565 157526743 810096862 350106010 478937097 891712394 163081261 465754202 987512540 124773449 386583895 188794665 682399074 605117963 307794378 267334873 311483269 874445097 662390325 487736664 750058988 394347193 859209138 209918980 366780983 897013226 920032635 833159944 466688619 237957977 749858703 967696028 76513609 22522844 372865216 519235972 442152659 748627138 456158985 843727878 85289304 890481203 173141067 193468544 511995434 266191476 619790227 570598404 831773351 832202981 954919724 436322600 530980081 252753090 896572457 567345609 687630254 79382260 790573631 17551799 788697650 89666562 767041641 508140853 556917648 540020085 924024218 357847359 631382256 12529048 85515486 360881156 903056362 769639235 328508368 937345924 460153626 788074385 173199396 614127554 46508907 403177210 971882653 400317508 570197634 340072548 674428548 465681218 503233542 195970838 537931591 294534140 231256504 758560993 461516068 695960084 948948673 294510031 530139041 672187283 28960981 258017935 677417893 628767998 224171029 735311588 721960084 819360330 396169977 915137234 241685381 447964418 442837297 965295745 441706134 445612671 709744152 786727327 462098555 439277779 940028794 728102034 841370416 802646612 37221725 105235029 590267048 193512916 80595720 317519658 51007757 704426024 90961042 901211953 765719176 648863950 597637340 71114929 537813743 542580542 90900348 942296015 41957251 31958790 608928506 125741379 317150864 147544533 407530776 809825264 942177489 235039745 145977059 477426880 587499552 199009186 295002702 67027855 298284433 164672247 594626321 601718707 249581456 649301160 187548389 68300077 976764839 451178017 557400585 391267321 936088077 311938677 348384162 835725930 210352944 658333403 323957060 64965069 378233882 431240821 741397978 749625126 903476269 11753254 368206780 73788780 829713107 828867031 568482764 363507363 4901895 355314162 647393371 221168706 967394114 997945091 891886113 447018249 9003337 876837401 63035768 18228280 551214590 936353304 660120115 803025377 261411865 10326885 774433072 543047692 563463312 88908370 591393643 702881104 21663346 943673543 606388690 614201334 173991464 269320390 59517724 453763725 482265673 585772385 280626100 968899429 53341471 647436403 976978406 411040299 783892928 933066733 479552302 352842517 758281042 676314155 589092835 307683429 255976160 922142656 571390214 304682356 714435339 431974102 161058040 415494039 140028422 185898449 689846154 534835488 826623957 157450898 234701850 753213371 402141386 268284246 992108215 233572049 46693853 265062625 999788644 36579052 917336686 194884082 907012920 350189085 304991784 576119289 828751888 350513521 90824295 95991880 830473310 26527281 723434524 218462839 224508196 79925258 276087792 475303583 551460768 804816438 85202160 556138202 773576266 175514407 517309018 747636262 796798477 22420591 582300174 320831494 516411715 221408071 26844699 610825869 775070442 965417267 74729279 470427229 796759813 251641086 161965932 748624828 609513581 984649889 129837108 11768249 742847780 759804781 257356116 631641811 544085406 407280049 757144704 509383051 37172891 649396170 900258075 592521981 57147203 716423953 148347310 693432416 783465570 786702407 278532996 836855159 462040133 918251668 561955841 950658285 380701242 499151543 276283378 461092571 302397164 349933845 845541340 16147269 384631147 137455866 59592802 70329801 267453965 303152023 396989835 433658990 644325310 88451735 663719120 506943419 351167709 732932294 53068178 251938597 877046443 246651669 896564431 908143804 90181818 969333583 780259866 431536267 466786153 862096996 675258356 572995418 628239909 576154642 533992983 755464410 271097251 684934371 936158246 143408356 742060110 351226389 31019449 51776311 51930686 939724944 346115150 640855204 754824238 509707929 212449388 163484568 105140541 421506860 752937683 54791163 988342650 945872927 379880533 799791096 755242018 695975494 723799721 985104151 904083383 710530362 47068585 259983507 238571415 321442175 784266614 147823555 354311113 675505313 14033540 45804113 119750933 464994779 224287347 994952227 234000306 564936369 369988535 31810375 51845779 844848900 51264813 238324587 561237812 260224892 343008884 995779162 320592643 415941161 899148179 366234703 779824699 29872090 842106890 208391512 851063850 882007086 356972921 345864899 695188146 205479810 173884345 818358406 47534247 126608420 691169885 140691018 699383430 769450685 843167895 259332179 94888295 450405060 586485363 229469579 531509618 940212566 414453903 629951971 471128406 294746717 693289557 648989422 447175863 709886006 669028026 309494894 760594378 904358985 739952691 533598647 396571432 253948507 243463916 348809610 762125269 80469693 828798339 752340609 764905080 272127644 199283924 240864551 228401293 187646514 668290469 353272126 715668127 386745006 538535542 569164947 202546521 370122207 373463618 501316204 995685691 411667569 404574985 713620796 907739798 667115819 972513625 805275762 554601723 755579280 911624857 213234754 541035341 10043920 96052412 838299845 405401231 189347894 699700625 447284983 715913166 85538363 864751366 737577093 741639302 21903979 748339937 624143210 131206830 724098852 904219383 634113244 372893104 291576023 952862447 504408024 822924190 935602868 451057262 517005557 523333405 861646348 262024428 498055774 35605844 923557552 364121291 187169746 291570887 181309805 151639991 303518661 740263265 45630652 16364135 354711206 988256516 582296288 164046708 826914480 805365408 681332557 970235331 775156911 686242320 159227635 502430615 857429082 357773549 712239772 959888234 433361217 528350878 356215925 746886414 755848299 382192733 522154378 803525975 954417448 241950447 354132380 318922133 968232440 221373775 685409648 994336665 17965195 324088028 724533212 538035599 182358418 261304358 87617084 725836086 849639409 101600213 980592355 919555826 633389130 782400946 941619065 683740267 390090359 706140421 996197942 730137297 794038240 765970528 375080353 378821198 358417148 256865498 784123242 491039523 76101501 496269997 167379557 640329940 54323055 107482678 808104077 507812979 930262655 287795622 305875707 122416345 298026998 294274891 598588863 988706385 446919675 597572302 232831684 466991868 842791997 934583829 904440961 662969995 552147129 499539889 494547236 450581868 467122651 782580857 255849408 975773870 115837484 172335661 984326441 547729401 801786250 962415076 761735501 799195051 891592450 103995111 106087151 516966564 867782258 56601899 992617642 898831954 381114342 461984510 894604382 488718074 87735222 431860846 195943394 802212052 579993997 337901200 40484778 866287320 59560223 794103461 198308486 490947775 290850248 306889683 313354035 167744852 412918241 605006917 972623890 495889126 52063056 134637673 648091870 875047347 4702235 779528790 830799341 786825715 235639782 764252958 72417086 750611059 151888572 446682167 602709795 976303312 505254443 838379299 111395104 377875008 104615833 160542411 537722177 479881715 625377182 477265689 467743051 927715462 11543223 476800327 203917131 54558660 373376194 38637508 876630888 124316189 432443798 594323956 116766050 117529144 515455725 871124101 92404758 984938259 544375013 221829078 611595420 706145429 764344076 979445579 505319707 313321387 865703544 628951752 770531256 182080982 2246710 94701437 889497447 646113275 558268953 208765317 37565030 773827312 578998005 910600593 758180905 356971997 751944553 183130267 57236270 580877421 312546445 696205753 225249102 294800287 537542515 287412002 301145727 613081781 153234749 874484057 899490229 793728928 463683267 550750714 908232866 865740387 170760899 484683044 289157009 218699900 188493594 529513407 975347875 145841036 223399385 326437542 702816630 247611306 337631761 567621880 884036488 97579777 947475453 594468068 882134359 807273590 270347186 117545207 724702834 837669089 444261612 805896491 491890334 890563659 923726342 421695798 819945716 560590976 681208885 636029 488810662 869252655 419506620 526344418 347511175 737321915 173964859 772326927 309260549 49887152 48342840 909300315 79025874 258096721 659382382 752681666 362739712 918248097 501924770 368011197 545136219 14157772 785303983 312917598 598276839 629962365 831234638 612475320 408694583 458004965 651400170 830732298 302686479 14709536 338695819 311620758 766355165 526303949 705167216 821424154 773413743 357307865 588789707 570731659 567218705 838059484 704725968 303064230 985756695 817530324 880698652 939666012 529551366 167691745 971937683 769286202 180019904 269179407 724764053 875765455 573746384 493077790 310503322 636691328 284169752 848090640 543686987 431101831 705620094 397378729 947521490 900603534 326847882 378725182 363410391 412092053 584417829 977155783 987303718 645702130 768492297 321422981 870180736 100517071 268071325 260223316 902880585 564715625 720472050 803015839 727453797 47863988 217820063 900178434 813776684 231524582 238229462 323650776 221976948 378942402 233680231 816958580 671141049 21856863 874065562 526161706 68434384 182066194 208749764 720430608 894176756 555175426 799282157 165887036 528994375 824134095 796611753 44627444 773736309 895619619 754174580 635159078 808762167 520155606 202385052 752570782 642590614 5806711 592889910 980570232 403897869 902972496 583840940 572159218 199503459 951535769 905815809 257015350 515635603 212093558 685339892 504235400 337393069 585172967 558747390 110669390 769689293 104520758 261845659 693834495 40212175 858283465 702620506 641340355 449141271 322056304 89783573 744480313 853624264 76311907 714646375 88498607 365075114 220504136 285612468 896516642 896702670 184398055 514268719 254932272 755765557 615333226 512360877 794489583 101739085 115782589 349040614 858676557 127378117 27859959 260822064 464778716 830672175 43519747 897558111 136329980 286970977 296356379 67275746 289191659 582172414 466445921 876513836 867272415 164131112 990685051 452051573 489319532 278300752 568575162 623492329 490701153 191180867 650626622 401261980 556974452 378636364 634947303 820646049 733979519 479378307 735346146 501155137 438480086 431132333 404469889 229161636 482736368 754576795 475447333 19923951 181432094 77702323 342841252 528369179 615913879 708756368 824296100 275571726 44963881 336438133 305732279 85609043 407115003 546230171 793357038 838400758 66127228 336806286 609662058 855596292 540251194 325551433 627771464 156327686 364793786 591180080 210782940 204248827 915395545 625295761 174017277 932047251 334864935 912983907 43611607 154129379 653106548 341621833 315462578 541603012 139896766 782094411 810466719 157897146 634330611 698394751 782705799 776472898 457282417 248087606 539433607 240451522 640594951 166665420 281341684 529920952 772847658 842258611 592338567 159688232 76559441 397039316 83917538 631560174 896696622 454195789 876564454 961220187 119635068 352483104 891664176 743949606 828592388 652680753 335056255 595276093 425569108 698225921 116357611 834456561 624441825 376608425 447525228 806002694 470868235 233502828 167456781 519612389 68431786 226410783 779967592 302581482 82993484 861755907 201595301 800385778 484471712 826764463 848988390 492418142 860408216 802999754 767553972 148939631 956483935 684849562 659846861 309368382 791317198 991997193 435882600 669277477 805599694 196196998 33777697 266290130 195333370 212660476 780346856 270444790 88964879 876595863 110746952 365015719 317180157 613867122 646143435 804613162 664159454 277359307 567120708 90855210 860689529 625134627 745378037 300857638 709917936 863637976 81561839 698474473 279414109 40504440 34087251 730648262 120215200 556955004 185266003 548132015 811316768 709370111 328629870 52268788 846974016 75765474 469005150 726722621 206004524 158111119 88440102 631459749 286252289 692794136 636050765 197995449 677086141 901529515 794348775 834286756 244481896 445831896 496325110 664237582 76233059 448834431 110755274 716233853 593872030 283441247 467103521 814721088 207804089 352562727 978266877 870407675 355934691 629697552 341568331 366043757 182349025 557462828 109199568 958812394 199402398 518507838 627748644 98789505 377295622 208432474 796268902 498746695 349631909 256399396 159327874 794091881 972075090 788335835 285090820 257998696 891662284 843060882 644086047 587906463 468306827 662972851 901974628 651525538 187004964 813392207 407246263 914977083 979052622 141901034 736736506 665580479 47373100 547023848 998294296 41241859 335609093 301848930 990585854 175617097 694256717 524772492 751462043 242502548 181315521 276411927 40073786 708830044 940257328 432239463 86796927 663336454 908655478 909731895 113929587 994307963 794265977 904020228 627211481 485929853 857224356 786995426 16068997 90657301 66562738 427171097 905408821 913637379 804499056 700536787 575476421 605667879 233609130 993098808 762857710 499386695 878886716 610268892 386965319 705779870 793268431 225916511 687647206 167893155 476913535 515610489 618926397 636942852 121005011 454582714 1278893 729895158 608130008 274429391 265206478 404831918 114860190 95716468 248131060 254359805 291551232 604001046 940562050 623240659 988448766 998623440 748863296 487410048 758215705 839035573 997640094 669365094 916951211 860344417 440987763 576813510 804475713 548587264 642842821 956308732 619565696 584750173 945441608 886333283 347315702 232124454 400000131 17317046 45463186 690303942 538329395 472083467 384917350 625141121 675709231 532448750 168853881 191601969 610604703 311441360 57588279 383470507 819619781 267961966 247224875 473067233 844039871 343051572 464097948 244217767 307964856 678511547 198878204 218099371 307512664 63228137 60058146 546370131 584187994 734231647 967468641 737512969 310329954 200706189 75293042 216442547 839480162 891372870 12232298 952705021 859725906 350584174 697650016 699547439 994796176 146596749 867432480 358892988 915419985 240954742 459223583 56270965 123119778 745575169 445152667 351253124 761322078 495202254 726935973 596706370 685358265 107478792 660280200 995286295 908278277 432127435 332140029 687207022 377213570 250832911 882335946 624911032 867673302 604713569 144628660 235683043 457363468 459236685 401644460 666971054 38635771 568032237 922022936 85922949 551196811 969245083 801639737 118755900 305532009 569507620 113064368 220082950 599146279 702965538 505279386 56905755 93039798 871871858 755651604 880579550 963800694 6743108 869261282 8093899 531233313 150049169 596028638 578035510 550054625 286124000 896129006 797595112 340330885 471117363 861105311 611014764 136295837 526800215 560731179 88436400 220928427 392857119 529005760 989094228 596452720 232361590 858330651 305635100 370581879 511781644 140086520 443844973 617735732 491159454 453434295 509642750 494094112 711420419 2263775 659834675 559435057 680984317 315135146 322328943 953031677 645277474 370234163 164042544 643152468 504793960 233049565 311288371 197904490 297520031 680931506 800704614 96739008 743397727 388223662 626318721 431919570 797160536 968727479 743221355 799747853 385126699 56242388 9605790 237921115 800008618 165892357 605049826 141159110 555302626 538157719 587262543 884823330 553475322 192647812 984565268 368396845 182577431 77636590 344965893 438230228 457900943 179557954 688533274 998707549 470492923 988283367 103573149 961853672 950323594 667867667 431396664 502719999 521193271 876745449 454209949 796689394 847905687 890251622 574012603 872387180 630676977 489824719 373544620 161044150 846685324 330217703 109444023 422243866 536623502 899563967 293453545 275712811 803831877 638122992 113922066 393111878 754702249 675198089 539017507 309534126 551094203 684675213 708627036 402930232 589187744 786283915 269310566 696623928 418179538 331612974 341372156 720271131 352819559 394817081 235268878 69179650 654177810 874322519 888876675 218658889 564034429 675498283 946756350 74849366 857865941 376302107 806100437 237592454 392772371 349293120 256413811 823805616 976466382 167515132 814416623 409407618 750921125 297418324 483916405 894783979 965919371 336978186 441409172 76636466 414970296 618068913 873208954 74900485 962408411 771476608 569482788 712604147 532626837 984407751 229852785 112152007 272636134 572960659 2602194 759183975 235239047 200340326 477828952 807570391 471476778 420775799 227111331 625819575 397168171 64200760 11907015 272479176 729877954 503680997 48480072 938846646 600710107 642206388 884599984 556286589 41367408 760753956 686696375 876703428 946571760 38897817 468737033 181501746 887037367 96956953 255920756 494692015 175092774 855946250 394195311 980865527 2017323 966178266 250728370 407712557 803442972 834526052 264971242 871584647 826151451 335006256 800299572 45140281 168499201 954838464 312913048 753010091 275483451 148313790 27345869 416765777 839843580 187824711 930255260 443066257 663696394 696410845 4559685 538761327 895168402 869332350 890219612 459262896 412216529 960287956 837183235 509015171 532754473 525266936 276466719 101530808 292071038 475329676 70081442 476439213 362073969 98397069 463130587 759680895 298123744 632504935 814812357 522322700 52660949 264051110 812237242 584606785 681730994 358978879 497101244 865900902 945148572 506422368 443029670 887423336 718893669 781657934 5482814 348932738 664033577 704786879 258157259 362723543 447692444 169353343 205859517 111388657 121754080 161668347 367804120 304994203 156643637 71272940 596702537 201089490 69543238 57736049 468768624 387752272 387112309 815334272 488611579 65675229 565999064 793734101 504919291 554515872 911020477 693203686 655105488 46856461 956996426 876057486 582623589 120634912 928791001 268144394 386943555 743589912 900852585 158690873 377335992 972088729 598212395 101815977 178569101 890639537 45949271 984058154 922612260 371220319 989699648 733585715 972512805 996384376 551199396 584502590 200458859 219639823 266743526 739336703 225611620 677440607 178957003 817608283 532520008 722793867 751614175 805158125 387153369 284233267 101421903 42122598 350872929 635765910 543040043 680216516 764512259 40323748 592320741 877288961 4296048 249797300 825616475 691598792 52097619 913569371 826616529 395436760 849421122 606469032 459808968 563097379 85911782 205059778 950707311 508325793 200855412 946441914 294937093 42480469 273269392 890554457 464365585 234326357 192484550 703649801 123290683 967603196 103178234 558512065 672411315 24316683 731572767 273918983 433293054 408074493 951246102 831032348 682810554 627694280 281928470 469176337 727470005 368803720 305808824 38243054 148174328 799862095 905850992 673218437 160736430 206857565 87668938 592270110 997981674 770944082 95293133 900887748 967251086 483132661 482382651 3523242 303049028 352097249 254421052 364033135 691742620 377289497 392361365 486052850 391891340 472301883 128236138 346364652 1546828 741367009 511484256 176980068 535507257 966331373 537510499 497671000 12034582 276986418 875819117 716721248 264266643 635845318 491844752 479403407 866505287 285121147 732842532 313539211 995188978 861263856 108308541 327463905 461187930 516865166 9940130 533844854 841042457 178482563 759759183 820135023 620555667 137784031 849453399 464737087 472858792 611866622 798863378 720175074 590158874 632836907 429375680 251725013 769013778 812257618 859264917 862766459 110460793 525326414 769558668 357628022 351339671 472416450 461964865 28607017 875609096 189917593 732658996 307621668 500046503 376637174 656448421 445284570 289289163 544881992 883707964 246811426 635878018 271706498 428800872 163198234 942099066 149124620 166707539 88228376 931372711 736350879 423242243 745505407 612514213 532930585 142110968 434092249 68345784 107784741 323277065 785936704 999911540 628326545 299626278 483689538 794522173 555175704 992078275 37026384 868804033 981060810 438342319 355493170 468965106 844878824 925972853 817331469 295094375 52240963 680088514 506515750 116333757 181614647 388817816 487693901 138359385 6014319 866299946 25506654 151507232 880912972 288903695 641512883 696994591 662199935 307369563 265325395 39897618 967589969 640965 888735676 884201787 680818992 633413816 689404379 839137683 293832219 37600167 316450812 624485546 792324065 792704948 956521085 510103389 530698659 999670026 89211722 331390390 466313247 757013987 999687199 854593142 32980512 72179237 48972356 207080446 318388964 516849211 88781051 240103978 848933904 159733688 321673384 1946772 788243285 626065632 999394541 797041222 32363773 607295472 652617665 772800286 265342424 567052046 691977770 938381475 726329291 575654543 915332578 929454818 318133927 396118436 526980512 283784136 90190936 817682843 698726848 649364800 905230252 148405041 527824360 807741020 872140723 439569636 592146785 689582732 11658838 563151729 33654620 506810472 126964394 856190336 335446907 601959771 605925911 499872880 758185761 220847961 777993969 31308708 656853039 685287579 982135434 744994538 867488694 511584661 333888866 413092515 341576975 804428715 309295433 935779728 854084572 416064707 798308729 587762239 751452756 847264990 220292347 542311094 855370540 655999836 701737721 655338870 667141999 577322924 809598762 134803838 387149653 190981841 453536940 25319781 26977764 191121360 997618834 634057438 983759942 344784413 196903920 341926687 683570903 57251615 349369112 810985662 951517659 948323425 666683220 775582272 165232524 25443366 39687181 282734218 991835160 959763086 40925936 976613494 939005508 477275609 465573875 362580357 840326756 792275591 312958559 792696113 409845058 980409193 527561290 254390639 236990928 110049487 189087259 724107945 17634757 637675793 894257002 567103104 771698118 485526399 489337376 846302319 921800475 607417402 498308301 378648285 614456133 247483006 901281109 399599788 889483129 981118602 94619969 810501482 700998937 818830706 646642555 678549296 230850373 916493977 513150276 349718778 688137712 959033341 803564195 455417099 879747744 692916052 579973995 680707698 864913737 851339370 218587961 507314136 702668613 706538285 6307352 588326278 780596045 484051716 835980958 877300755 986734466 105633308 673906108 896322439 910042165 180278985 540731315 95494243 887605491 282222487 243352777 459454822 411677024 580491659 102292079 321233566 216499047 65578991 2008903 230831917 113396755 340776221 58539774 266329421 630163377 834057750 687016338 741528719 820739300 656062430 762897087 735739089 592221874 561532766 747237960 398792412 730178771 836350326 316876104 698675724 144756524 771062781 229977405 96783776 276192802 967871445 350619095 990900021 135290465 705342402 202053607 278117890 110999352 912180897 372629156 331084226 20424127 785550771 179362373 127636509 66010553 985001130 520449848 435663189 291137665 715616978 680581559 160037338 902426288 135607031 171099110 259223755 109398677 687635163 904226172 440678924 677851500 649864073 428787961 706301341 963039920 914451203 133483414 234009233 927849247 951345866 47198367 268150808 553715776 276484897 985736335 924967083 856237135 691069134 777979232 176865430 238235995 616980321 584719473 566598460 605314633 981494254 411343081 699677736 52998366 197797589 28876539 10317182 12051784 371590357 253455057 983095916 39441182 582046104 281955631 99855038 636699400 415023417 311650588 919463105 68207575 432920664 194373588 49116548 210453257 57271876 112159505 818595749 657030342 569643947 451272817 474577038 455980482 710826868 236960952 876365457 995256702 39300748 132027893 461292887 414895691 742161078 95358003 269335948 403030151 183327530 973754206 55628491 826494356 975961761 672525088 402577334 493193604 49842095 136368207 579666227 273718129 255875892 705808440 349381898 995322611 753455553 134341466 74445586 225550207 376361595 933546517 123984896 670717172 909357251 489637069 342185611 937683248 99807448 566309708 84166155 766272874 455079657 950088821 956454989 907084228 525799732 613618536 398679860 1113376 745322337 622790657 743448144 606536900 851712277 295309463 483662739 682918755 51452395 520894229 880600383 643537159 12058251 926282098 412018820 118628062 501173259 785663113 90055933 162782844 39426070 64416849 77764875 74449151 979938769 891627235 296981136 256794055 373937554 993708164 951516948 102912714 683037264 402797749 807703128 855167816 472184947 592103139 609753378 254649938 861144516 223500186 409144118 980196113 865661367 332421131 814892166 455010907 647120835 348574030 695693601 8836935 485591360 164517007 191861643 917512909 99064146 461817459 751490441 761855313 513579344 483187744 535401259 498679015 905412621 421897368 415899469 817225384 14477524 13326222 98547308 768322890 380041802 659394262 914975974 236937951 728315354 124283813 24494214 783933715 350254000 730587833 546530286 452095551 199683491 209081405 49060603 701895722 225730945 948818753 735314831 492403021 59669798 85832732 378166760 837152823 176692794 489962479 101496296 36449025 521597774 486989879 516213046 898660206 573621071 314501925 917953788 676992304 769181325 401908427 737033984 487035361 629273023 818332358 940882364 459255972 332919292 258772823 716117253 495509372 664326109 676890696 441865984 875655348 305209428 392821713 148961645 433297123 240467781 117750581 423930456 937032842 291690035 488000210 112977930 416530556 390549268 102396513 411555131 917321460 426337698 845329800 875116176 54816691 514589101 353960605 437079905 217844044 416488739 296554565 689317962 345510037 998008736 215756241 936907699 71902832 499696047 728134947 726316001 42468608 973813211 787857318 973399349 273813385 778089525 950977358 428004584 181334746 35291045 301280658 318947847 452842063 531970217 237768668 633478718 613609864 552146430 388139745 668949481 491032821 721527953 842088075 568858632 328130268 126682632 624074025 890529394 768762886 801383253 709931783 839246682 865971834 719948262 247470135 443063199 402099692 748653296 85551256 207365251 638264402 865784875 154630731 513721667 839732617 360511948 699243236 667930226 582294615 642223539 349504706 513283940 258469095 839983562 373561125 278598386 484057544 300897061 864064598 93152538 707993724 992825167 12373353 370050655 198776275 979980277 434507320 250588267 539171589 504772977 967198799 841543783 109627772 449626988 24990906 934359696 153614539 597121178 981890919 845445788 379233312 80186844 285088075 147952236 757863216 783285738 608098991 859988977 591505596 879143463 201928647 973026245 112147722 163000959 640950865 473977502 409992212 563454382 749198765 72714180 99591097 918405649 645799122 997090712 2247963 77104270 608069380 109139874 108912083 967864405 376601514 975890066 12212831 276146086 569947353 127888776 384661016 281807274 315642327 862844074 798431045 511896125 113299237 210595393 201460682 57301307 229799642 275692621 188914586 468299836 747011330 915312956 427507624 633090773 800763680 991549954 396511075 857030967 213784441 613229351 712457576 445604785 759377492 125016096 685570550 134652001 631779861 1848974 312406807 544167426 488698727 352324983 765023582 171541028 805386644 422781886 96793877 637718059 348630586 106338236 196543339 116597594 120927854 142254834 840955508 763868931 123088727 153733550 768697761 73106160 229547760 657809509 268917614 599391305 294250298 465751138 275856191 89479759 99131384 258486978 87758949 626334925 60840258 391339228 401641359 834938817 764352563 812517636 747614898 870269824 125374174 937927918 363979032 672270017 160147141 859249924 789949965 876838794 703848190 823609621 392151777 745288711 323427119 350151677 292478523 133202813 856854056 73425685 673650935 372605962 517354536 903388052 484322490 772851715 162354713 637893927 630817047 908023530 931947099 490349202 658119292 821118856 125999927 662765388 288232917 271043357 48119934 822245987 310030021 507430507 638922652 117439451 817629961 656260475 167515710 226715649 568297496 775082700 628714328 838378955 270863090 803669628 377424117 555462931 215001179 126653001 304894476 422891 384223068 526367332 774246353 235667460 205010748 117196633 950208531 369218889 482052219 819034188 309360053 29002386 516990104 661376675 31973329 624804585 221625667 595033798 694968992 54618703 566131233 622684362 251229258 120369586 18566725 465081618 189217028 190013378 483653067 297690498 502161117 858969161 984003234 13736334 97206074 223555019 967714935 610361399 130225244 296612025 311045595 100780783 152172340 155592199 731571156 762921398 793996602 841702132 413431555 284954890 25903049 885613392 207436069 470666450 704353823 201583901 687228110 912737846 978675408 62786649 941037158 91775147 340062071 146653207 332120980 250108712 350174202 494914639 697036342 587198988 358889398 657687739 255608778 99389666 624004096 976403139 736611610 30454949 312303645 220662119 78363897 156023872 134529179 704455091 56692997 384962156 961290883 916397670 927659976 893428933 413218894 735426200 966869047 403825974 308237781 431253279 739787989 861055230 421242014 38104103 8303100 818736487 27131021 60738730 788589463 952467267 376484460 585813802 768407961 362302068 44806379 656771467 460478322 746133209 856771983 127057826 583820682 259409884 754513666 424212365 903549066 293114495 738107479 48744829 761343675 327948881 794586653 337009150 966561396 989752149 614106588 110394068 631872759 106945459 511501152 477054584 2141172 542828138 142723810 491105185 496188508 116288773 619509667 148031085 485502353 258202694 579391267 897995189 248751925 736775077 529532223 159865067 892753555 805324798 959729760 939977060 322779181 554713383 26942796 428395471 49981831 147220715 573530396 938076612 682801401 957882990 159804954 791055942 521899020 377236926 46061414 952813117 831256858 324563762 516712068 164010755 358698360 806038722 477869888 35969968 88695096 381639616 448841587 128569527 516138497 498350493 653995762 103626576 430617776 373073984 819676094 118177245 984468754 870076553 980449476 746924003 926212277 218798121 788825272 262909084 474814090 451496615 85150591 531366094 145549891 343029000 222532759 727880867 43838019 833917488 606911684 430213332 507533636 383652425 721031064 601147140 270856929 848539098 907680441 94571584 470391546 143338689 796757740 3594729 658279284 729086392 409511306 21177335 456925410 196093163 930029328 676884758 149805839 79114713 841213254 445021646 127065220 826789813 275836847 3913126 457593686 57956062 64347807 354671751 451184443 470881457 425531576 760041608 454071904 241190988 524168974 851960631 941626490 264003812 428934941 966605252 260402751 864916404 575516673 511130951 497056478 962849980 723813095 777152539 440960088 13544188 155928723 358987648 448618891 206639575 927384321 500706562 880067172 23861752 254450876 522882479 684042744 130114145 714371701 134430489 310723986 210698366 43416037 955223358 526617289 343229618 643933787 368564744 753365871 380449767 149801980 309363315 452760997 175567340 675171127 993960599 458708800 599610776 887162495 885217805 796569157 695705576 489638526 171137773 245102427 430044553 288992116 999698443 226538753 922230111 594399990 873854127 744826705 239801253 636391349 418080322 220238977 775702558 834243547 351819595 238796050 886618943 73568534 164830550 422034190 582837444 705415033 857431837 792189551 546209185 552322809 85330956 817444203 753604382 773778562 864529249 720959233 514409167 719675772 614122545 450008329 242529145 925176770 293157599 460603491 103204852 181792456 643963513 766101485 978625316 141076453 803601254 669464467 541920624 966473802 115274779 316585572 234677832 162538026 248016074 14893446 857786320 946266945 835168925 873315920 242468192 333011450 727510158 891685548 132971606 694661901 332206508 836227807 346260215 78247453 667060669 178609808 652375576 181986930 790560650 979633016 55413926 624770141 53584885 359733439 393240627 27919691 191989818 898484388 158101532 158316504 862718905 135982366 515606851 319671617 292120848 958299724 305261680 872286391 84117663 965955605 38679946 147429918 274484190 570523761 647522633 148492055 45890900 137948774 774470784 990272083 185629640 612120361 72005183 773911453 759093927 410740172 193050219 349850914 848113826 192666877 187775656 490381630 234673511 505251265 933897270 874424235 651217401 792239805 516171299 104852304 735695851 505760010 822689024 21114392 214772097 333440755 365459040 639400309 639569867 996851018 258405754 950009780 932192844 889707280 161687182 757640356 278711289 784381732 769071380 314400728 543935626 550528103 740503800 256030573 408373075 603115267 53122804 431790693 378865053 998451491 734388991 771886504 224640005 67160109 142572433 395398316 533764820 834976103 200178522 365437282 499335774 379171330 454988847 89295779 216832374 304107877 755270633 650023248 849982571 334325057 873753435 403019631 270546456 224437642 323585365 123766625 210088833 722157191 525143526 114504253 345965238 514103177 598132269 394004109 444296416 170125869 880373984 890371056 107048335 460275687 289949927 963141096 640849055 154065875 647999389 275419149 365977563 634157350 611716667 544180746 498629883 815811740 311056600 392389841 815755676 936421894 388093751 951352852 845073854 701615281 974070546 929486120 818347040 554913025 17504156 704826577 879463366 646031400 433714080 79168916 595592899 785014478 161603458 600344856 502794958 106185195 285345624 775232874 381322893 433652669 785112831 45950882 448347291 684192339 530932361 880202912 36704672 18732915 314156475 822032410 124452000 952400962 978760170 325340401 28230114 500831174 612494187 586241528 606522759 840655697 37362266 851479440 699199692 84916894 511432992 562797393 293355533 634161481 681817087 843412551 373928253 119192037 245488076 314020847 335199512 318257512 693435474 596035722 983279697 715488736 173190951 975418434 970946041 95606917 438816845 432478042 190235571 95196618 685529921 175587358 146669225 563917687 221256166 283151203 460528729 576611688 417471924 557546459 573818815 540635090 379996663 818103755 992453066 257071868 505296962 401520260 794038965 967552035 277303166 534167945 596223852 302266444 142100682 182816942 476942205 227384805 610151052 243301623 957416807 978638731 461818754 530980149 651144844 502306867 429689081 82147615 113701538 651498786 937323772 276555030 515430607 504944189 510987214 155208896 658383982 187304948 15288513 396044471 45564646 529474382 177219313 748155444 32612102 710284055 787118975 409377819 556717685 245426607 46454170 329552521 272870786 941026402 20589365 739880758 990318760 855537988 549578756 128382276 551569930 426264391 303323796 558439022 971481296 109649524 815150814 346343114 78740613 146835676 586832938 983115197 273503854 297065789 121523584 956323117 169777471 158619510 96021886 308730758 194838248 488550512 634142117 960112622 575133694 458065355 89376251 992953884 993580335 715097825 883458370 678448978 14571525 176214341 1674341 509712010 526720066 703776345 143210096 211653574 473483195 777747663 178133961 827348313 476539979 482444035 354243264 306352891 599513331 318173226 483296743 481595282 891306258 180562545 87153773 357626419 283882924 414510776 617499692 858436646 786150851 625199842 766179746 751525896 104583225 564299275 360334908 986729062 424406443 109149383 979143733 505989691 517274660 937236234 611331186 371556149 500674117 43486155 483730005 947344328 273312523 763960527 603250250 385868788 159762231 277652603 475862162 566815462 641156525 252490157 110744821 215806196 572764974 558449312 276524516 280487412 254522292 883709142 316902850 646644887 914837102 387134879 613201807 365643683 633768945 378403430 533867691 685443018 598431852 278268866 584845561 710904123 126667744 346362161 415221386 64510464 987869276 122471088 851226641 215557597 112383014 483009383 739548196 952873600 647464244 97577160 691047341 171415595 125823847 221118439 122493441 535965590 228133654 169021937 664021698 695285725 82163830 997341553 53926813 261737783 404033517 954161275 748084656 875777512 207391176 551803975 196580055 782692981 537346982 614666558 611294753 701572874 722037544 866490033 802852221 560376459 457802870 61264418 424326131 905380248 559880054 13240056 990493405 554723368 970024216 269411086 588050979 763888577 393912713 638125774 763030236 732545730 793608996 636213746 643443752 950975992 263541062 244570783 608945301 885987473 890464130 357599442 554327001 106243533 34304211 821564351 89408102 276383969 873666741 418614084 283319067 995846094 479549697 901701123 171216897 994218688 384961571 740625946 196467971 511255899 485693355 585018935 985753676 946787163 809130399 749101659 676963359 469855634 551445635 977002686 935346600 894286425 566028221 357358006 445692907 746758433 253239506 144020933 249269667 135086640 745784462 706775290 588299223 456056922 323299500 489262153 779170957 724379080 168038829 507299438 147485622 210285547 415782084 303990763 149251968 884450507 143400809 924810579 632546498 244380316 721000622 757083191 998192439 82973122 741076058 52617127 455762396 742781876 472394387 246025241 407149114 707108092 789128316 663288930 698200443 984527244 37106686 183498193 293044139 811864590 660922323 518123433 153472959 597045349 941427998 742637077 786998861 252553050 419295304 268950916 712872624 905314864 102838985 719056442 971667321 283396525 423956924 665971121 318974439 92050879 307587140 726366972 942704697 215104131 520903015 164572340 525084570 274416453 380914456 544957508 593148596 213207866 323528923 102143261 599126511 587653322 572959610 82973456 102392118 800846999 23454379 644065527 521569081 255054692 218033137 699680522 188959251 373577200 971284782 297798633 288423823 866382152 804952133 724745161 531711854 944793143 634013384 796685110 831380224 632138259 406398203 555134590 740027106 491470902 609743578 246179461 419436197 386778405 147742872 380146826 241780696 209596570 538162810 885970587 894045509 448162019 90159381 811084343 280104753 103486040 496908273 369752518 601107333 360503787 514885402 872800540 36649695 728681231 586529877 663916168 844216048 873130566 723727407 864898736 671774068 148159855 200383641 836935808 895131699 709800863 802055370 182965910 948825629 168154968 410550506 76164905 80647760 168944543 717123346 765832700 782078450 996523441 718854117 66443514 180576835 889516066 932992626 135662640 273826908 333052852 805239615 429832760 768869704 60769446 142854749 358725390 547235634 596146393 417271640 798133118 16559777 547223358 620376106 363294274 188074149 697889101 733598180 51016802 911566101 625679656 624464150 136678188 661810326 598567595 26908499 903455006 774091909 933020179 344973916 377455679 650945184 689628009 500292108 339275978 282292134 389147264 213360222 366380426 90519427 153360163 994462828 73895136 667811647 574092160 811559016 830756069 604320337 999743361 780876042 479309607 811691991 969433588 943512951 34838099 393211267 222276418 915772207 93005357 221680182 353217373 740577378 785430841 588376692 488176645 543990594 449686053 69706234 141484875 531446454 67799460 254070967 963364022 753548580 49368495 145284718 944444681 518654230 675317727 705335836 246006406 457743189 730257654 754790729 687418425 35061394 774172616 347088289 922470183 516117672 853539148 273041717 776435168 96533617 732300941 339672385 847051148 883971088 462426028 974096309 211132695 465061757 429161573 9810866 779419211 156464052 424092036 392422099 250247285 560000491 516203805 598539875 149268589 745098647 882874716 917579310 873368809 812214518 38903876 241111743 540490085 29900371 701223766 653261345 435198900 535365640 190433520 225704128 695635796 937454980 755158340 240027930 277946363 66019503 620462892 292679837 91331635 863287728 266716426 984940364 624339836 811580813 60436739 331872740 409837145 749065866 427798447 49558354 989821459 974704335 321010116 393362815 798498813 272111173 924759041 934284019 322290662 16732818 22466320 305840289 293658429 657997812 745363489 606332442 901444471 231690582 814174034 734346127 150978358 556698638 307428348 79302091 822451072 342428272 177971594 437521766 245783422 266407040 163189356 94728434 691309798 309042002 93601273 359284000 83390866 925985174 755895838 855665178 789845376 757938983 184014704 133918135 182143530 976951256 490831214 544782724 653080643 116393651 947381269 495703204 752045005 382037269 851111731 338343676 64521257 884666033 541792184 268129479 877719633 683784175 198486970 224661553 536228554 835506711 303996747 752402888 43723033 989500368 880779310 480133299 373222610 463143910 623480139 836908108 108010014 366447086 366405612 492307178 503741130 461811737 841691382 383892585 739266369 378098934 975377301 436150909 124896524 32238194 714387855 808456642 78425480 770749353 683845114 536217387 629784527 448886523 773930819 895226576 172523107 875492051 701781514 572216834 122626674 786066532 120115882 777514402 804355575 372399210 612146888 957269894 623045978 933492905 525788438 784091192 259895300 377183059 579392839 277861171 630290752 915625087 84793401 384100779 102762830 905284150 378063428 618524742 464115882 262279643 453205 585858363 75727794 28411439 463673133 88294596 736204863 614497828 373566697 709464049 780562725 55536902 559813120 540164373 467539130 676305660 936115410 111303754 203504505 44946699 757425900 263013450 668470361 55458308 327192364 73160517 92802814 241026665 32841021 652539435 713491905 283529193 949743997 741928808 180780144 957833191 866136574 253176266 309448525 184933883 128521050 675093747 724366604 647385043 942864462 630690288 815881344 52673449 32114322 150060501 730730598 623864656 781436757 797974852 719440239 62406136 100071228 701601783 280186800 197401884 439367390 570384006 194362397 235274710 770606982 801947773 735328584 914357226 877810640 326591832 912602562 41500691 886187607 9671340 512024785 665936107 667604479 79128838 301211822 281088744 12802483 482161353 880457391 162550228 144051767 213363415 513831793 96288887 524527762 337822517 366848577 813171330 461848742 113172437 653372205 827610204 672191295 599868903 912982905 657576454 540264056 509665077 340455588 301530700 338819945 603277178 39216130 369709085 560506372 530390181 163223216 764290624 880572148 724007917 351694217 760602774 605691456 429673671 248912394 780359650 954667950 914644954 371076169 366646365 224485978 381545428 862790490 289937197 230425181 634476520 15485565 839611293 260229551 372028130 652812068 408289166 183937707 991850882 795323476 97782323 92905171 821098304 839890258 206208036 358015686 843017101 520477354 859933915 713945825 128030050 823042045 515049407 321310007 315357778 216958608 427385055 712353927 581301823 873391037 652616375 606182502 728956546 210990972 426985132 722067511 594786666 286504676 673777347 511019145 188091618 757906235 768596916 540518834 600939480 135976593 758299554 562268555 739292317 273912155 447877100 891481995 950850379 990565361 285888095 513808481 299129329 496612152 145096154 98642147 593974454 493531309 930517600 571487970 232294018 204708726 23786647 856336340 788425013 394438689 734120436 730561200 33215338 11379022 640682059 404978999 390921909 654276187 623702481 463006554 796301127 55240464 872719974 276646755 217853166 903035923 351791033 421054769 194343641 966148836 856346906 22756823 354004041 481643906 374465391 195801252 931711392 277772255 26101161 829451921 805854041 52492288 371070086 381145158 497780975 948218986 636956136 477175763 307994492 319951091 786370311 124538878 998440177 173272398 918493178 3069696 697670819 950545539 765107017 142589906 247260701 559563710 986984273 439036964 342123746 87741870 245675212 582502204 858802490 87397656 265861278 37997434 920913720 140616072 328339833 69677367 967015153 657050943 940382957 561015920 73784588 772452879 646975877 386459442 955130783 915838954 398230063 78481167 331314530 421207947 777536977 47494380 960685986 33686288 244536263 959892332 129074702 713021064 567979297 325383243 257944346 278124927 648645444 597655910 371384279 524775043 620488072 911585263 725576451 131713181 678188504 5736649 548148149 281529150 124279882 15851381 972220014 570285721 378727892 552281079 913852239 914324388 35981080 183676554 286621579 382685521 469935953 373150279 970738785 512042726 400472658 745758261 161852405 352015381 585633143 873233506 438683004 235954060 13014624 33855132 786488709 348968966 44307171 213777926 719498436 978772144 177032715 161601546 451710315 703285297 388190990 885146336 88162708 957787384 856175617 632323529 681867186 294609505 795226121 535892480 938847338 694468973 80029930 404934325 827699889 710679171 83560395 112571733 66769133 579332328 184019802 714414164 888648024 732390093 930435144 713529489 489004418 356537323 561736818 241184300 25545191 253132267 202383566 148438552 221049245 103205661 323964850 845155228 530598445 264528605 976503643 59005488 201287242 594881349 456829800 986213243 955139549 316210860 682562431 962336470 285595888 820474999 442845875 779797230 91966594 386584332 603647195 413064068 384724115 564770 776401542 314416624 12543092 435597525 496544900 330502961 755902214 159721039 463045014 980705059 293059447 876804760 284263315 462818386 413451558 940608939 343945575 306895404 992121077 285302584 297300275 113927071 961589153 88952184 498777078 639262167 744420019 801944858 178510353 910922855 83750804 533029187 953211262 439682958 780204633 571438080 711334497 542000613 191871121 839503480 921066038 890660579 17100424 570029590 287755856 898963341 339928265 237685656 735566489 470411170 544821190 264103035 409444940 848107063 780874406 345529136 349756673 914996242 503355358 157507634 665131840 504595425 298991000 899433151 592353618 670062729 916038265 982011238 913651546 64682070 275315274 998992849 721025236 579841026 792099170 826226352 259969202 653875295 802769928 813209467 199514039 9031717 292447638 902677853 542755657 410136376 777896485 35257775 576434158 124653769 17342932 531667532 603949595 521968761 500260949 413553039 238467854 230666961 196955788 773961016 235783543 326347968 627116186 17547890 692621736 546395982 774319273 475429623 262963311 667871700 965844881 690197977 409161309 449177401 182944755 767851958 256686697 321605933 627082443 960519489 333376532 393549930 164588637 305095772 778502200 569736175 411595818 566879165 289182512 264935339 599433094 100986686 370978185 566115762 103370826 181215971 960623548 140057665 66518763 645330728 39450034 325944318 425283344 598096002 469736349 741889053 915954257 13288845 811669007 604106634 923624333 434234397 835088825 436835498 985887662 443058262 609170809 43235854 143617021 368206617 61954468 364111198 581132854 222705626 771341134 904508748 663563690 219889435 155759736 201751486 840966950 327347576 744967313 437392000 167197282 615981734 141383394 409387689 107345579 195984624 960703607 625957621 898780563 737005321 635967563 111235631 375704858 185390639 142597908 431644647 635456286 816315840 277258830 243286367 691416066 278543470 330433046 320386609 25482232 755931192 550443147 131574386 966951022 408740054 794336746 969571984 84568863 98684536 931192942 786227544 726856816 521974239 183407028 710426947 739614966 925494846 238360455 704975192 132892683 372642202 287295119 519417370 411806565 194928886 178207568 639634228 843952064 286565636 772400175 470197208 199512475 697311580 334093988 401346799 112015476 46475396 657932430 478951862 625949292 256729426 134173795 132940522 762831399 557597992 978942191 318230626 94148412 387176826 154338283 784437468 980529864 313358046 246624812 701154807 483323587 524378029 76069381 270225599 624504523 100190367 985017463 411224557 970688700 335052960 916930647 486158264 923988907 615980301 112899678 327345672 280863151 63148209 552293813 611281636 586120255 640468672 965698844 742475604 459867631 797302332 26157267 803408558 469545268 546939368 426799110 855913375 59846381 450816735 877100807 325438836 124442243 609680181 629625875 165169229 525962646 875147974 52837945 123278950 987862876 455945311 187008250 771126059 108788386 298604233 244211800 335471458 446625875 854804058 878779552 205834451 360922191 258725065 380950364 396393775 165813434 386647877 641924579 876601821 595407899 597202127 782979492 787081673 892661244 237784075 306458848 672280809 454912720 638681776 426553067 399601273 512414480 262627800 472411041 966095123 677244537 674548624 437443580 210077490 204894694 613153613 133923847 413343183 280824753 333140586 857331308 988611171 883253024 552319384 745102709 255418909 297638093 810986009 770656022 622039481 446754378 462238523 793821174 589855421 515796029 848706984 189581630 718417924 981058743 848146925 847021019 69255878 315820497 406776886 27097528 143706883 561839955 759098206 572368938 179658789 859585416 980758730 887970063 425510434 84398066 882670878 75645749 3522498 865179720 792598250 389296249 780655044 53728352 43347924 707418822 92060199 5078402 743350037 361812365 381486354 787199974 703888053 167922069 140864475 424646312 597610525 462985369 186557122 243388429 890876939 900414696 410753860 148797953 780363425 462978287 395119661 251229522 221322660 229153495 787458968 39520945 490477957 125085577 581959312 114764184 836530879 172511265 890340771 948321227 973037904 999787476 753933816 392394018 387157701 494526703 678637452 894471789 646088053 191487799 195620769 155566610 799747671 142478342 641909983 244152102 122751492 8845791 918069139 309318374 346997909 922555178 933430297 368986089 497628849 82361016 976851206 752372434 694171680 152490002 568667588 568857609 519457572 620436998 441075883 559812937 582277144 14076855 121139998 755549696 969222266 857664508 397924217 295968785 303805692 996817841 49872929 504154200 600939965 452094768 599447587 516301654 933634187 603523076 299639176 370485602 617751235 457888248 551055808 524691943 671446033 99966123 466734935 273310101 48047668 634531506 398315212 527110724 374347209 259435191 516714336 352573471 515597730 365737827 133626378 967699947 573775604 592881273 577907270 44510171 977441120 472148242 255902722 925698323 712679848 337293846 45751895 237513686 560859714 108223700 932352907 320771802 350353527 406497928 311865758 326467345 671958990 965463511 689424028 382532763 206005446 160422545 538739246 906443951 690281872 890991511 804827028 710875541 789940429 828179516 396146620 7798095 121168920 484045280 133975721 417009958 178518619 164984715 80554273 502150565 993906145 188053772 757213517 966698792 178146958 957480183 121571405 566346945 486014577 92806243 936585027 397230819 972476978 348267260 982025060 841662177 970833117 24554552 503398846 62795844 964427242 935821049 87177722 616448591 58882825 530860967 666538996 501186088 145449621 607027357 911390100 802025533 971690099 441812710 309952216 475939631 317286687 404805297 392959043 606400416 279628367 962712049 189915545 323636250 802325032 161780315 173856130 610616822 194649315 387580852 864451388 865837931 7930341 305390897 13366980 320636665 742093536 993685499 458893137 579215549 620647340 840941154 978913972 448167683 292101496 778797940 33470904 404289846 876337827 441364745 295327730 178572441 184449664 86082503 231773764 694446412 573336920 555264439 207985115 212927468 795866568 354725074 411733897 265712766 6907674 329977879 387302919 166149586 494094383 136526096 618484666 226410296 437062398 814646522 870939985 413836270 73548542 231144662 638390415 403043213 265904027 110998385 349030660 255291534 703217501 366018196 493763988 5625860 519501290 237324828 35430853 274480756 510982642 257725507 330944526 972815584 353376551 961666314 657106846 429714793 683948006 545964246 915292460 153505716 328883957 733906235 783971519 753052653 958001471 161096254 232435771 548780418 527374501 140743695 579811450 395918270 650961233 27775327 728368106 419744576 33882610 22225271 678110263 832637500 254241284 185200168 105035335 401075516 453346069 303732617 826246248 811541613 446655872 910196683 374836921 538082447 529593657 487889214 457436984 970008984 924509878 587540343 518566257 233489500 533009389 295481576 674568731 252067241 349054742 294845532 486346735 137331652 993445202 27075966 947111585 139135026 985982018 489559389 925930564 783346357 938065002 920380451 162328823 388125872 310640088 871268096 675697825 187479530 812149449 141295222 701693955 961519759 908947982 616518677 782994416 735112019 12371950 631335138 292133109 677623107 942685536 107316088 8346231 661457568 128971188 582027364 114684492 620360708 122991781 223213034 500507492 817634011 711075373 712747248 809250499 559506565 471343671 146334381 650761550 16463584 739980925 952272379 742669423 284988313 336211883 15286715 301570877 325679894 90959200 189415396 948401616 764734714 173531374 169596353 207132267 978858196 135089518 55866356 953089278 267737332 592697448 802088238 863369228 554086989 322944250 799754371 809801825 847671987 199472676 556866392 76305850 705785981 373899275 762073209 524674179 880738115 877004837 847086843 164499349 241769672 403180585 21912333 652128289 669554518 593764098 867481562 415768783 197791193 332120011 651309782 924379100 113071340 870974136 938877969 755309643 112766906 354013016 80605391 557891161 127432800 911975117 35307034 94743100 12142221 250286864 704758461 394224771 899881358 596972956 499343939 500664723 147458098 335379279 316291080 797716555 370374915 508708104 757256049 964973984 160115687 251972231 52112682 506125525 658527161 687568422 264797530 439858853 64701274 601734700 631566881 186279525 80457223 682193053 344837845 455473197 176494883 853909194 244234780 768637084 806882595 900304398 559585784 908541023 674190310 768372983 629206780 599863160 912328400 359312319 532415378 993197771 892235153 385563499 217522897 213092497 427998102 556267380 487799669 471375155 288173230 87290998 479381533 108322714 550102432 137042491 584342996 492005704 682128579 997217097 592624757 850769076 696444608 673318625 542726080 186435486 950279882 608088408 736495348 855165373 229690344 846185164 901928430 179103000 821275386 164872112 361399476 75974557 596606718 624568815 428871606 911659006 790900107 15291396 252448724 514651643 218989736 685801006 704646582 905508164 220554021 473470658 642922047 904985384 143083452 705827047 314905983 311170167 935934689 117698131 551668816 246811322 76837208 760302833 25322443 687139 115530858 262839778 680713973 844011532 307486382 431059306 18723669 244056417 711001973 133613939 694895233 284079947 185643728 369618480 918343559 965225559 999247630 939086529 750692506 310597071 691843959 772589526 776090450 791165296 291467636 177415389 924084076 742077512 992999257 198952877 957019217 121684961 968373646 853048977 739093952 686214119 365216266 482614315 623785220 434805000 917554200 648231466 483885788 287772767 142808619 311602601 162218041 294390945 288400815 63786117 527937295 859710260 687102759 158018674 565284354 883404447 699225523 97404817 839463869 687866740 919210874 772934312 824932346 817532896 57830440 738937720 502441930 381264670 889567651 433003108 752900806 900886898 777374491 118871424 596046982 932503353 584245698 352042079 154051960 880690503 140039030 554533726 262716011 328496522 555618218 326281722 1867800 983523949 270547681 350201670 592352478 151090121 542276556 907881957 211639116 469202348 733756767 324401164 642946339 216638352 970718718 143844975 683156129 805628690 613927500 132601085 450630854 491565234 486800972 613539402 446796496 930312778 212574914 296233071 936590238 385910965 153115050 683943312 792658929 438227915 801508340 88288442 620157383 25172304 812684363 15119243 561003963 928590103 13154715 683176924 195829252 36821438 9158037 868465014 780099355 510122455 916829082 12782226 570493027 885064136 60095035 931505650 269927430 732388692 369002753 714147715 615019972 22208604 300994631 808849498 275096312 578338626 799857315 911064597 879049848 145688338 363750803 515005460 187226866 790807202 369232602 362498276 605633186 465327969 563473157 104398414 115451581 539384098 25885485 318772023 200890519 787275653 266622680 117032884 728909101 940348919 660385280 67536838 945538225 885029090 673472762 101159674 833936569 269674127 227711038 861762811 221790011 222952364 680421921 514765645 953973617 615683931 800950383 95211198 973305528 98839049 398605608 90596257 351211815 429291026 133173234 401295229 336030329 141842542 187529313 962862252 856321931 122782065 757063025 48180576 835448367 948744671 429513614 111247021 498038978 493683478 955959164 668842970 948900741 481781537 624501687 654378855 930277132 208340974 297872456 962098946 520172697 666334595 99931660 944026541 208415291 548695436 991705972 477101740 948793956 590618899 876966077 474942374 111750259 840895555 919401895 814107251 895304510 816338908 913977473 876548833 473193138 856078294 113083220 532016295 912899713 48588594 476419132 806375320 407776596 706986792 160636379 126153078 754044592 287153900 876905379 941672176 653061929 577621881 360210087 777146429 553393970 136415348 658249907 999141233 939091612 438998309 529831967 419110707 844124156 734214092 105157906 757116714 368877962 221716470 383725141 93912459 444400724 801556791 773515598 39908340 453654153 163498109 585351638 103361483 141584173 744893697 663748044 932266824 505227634 943356266 350438656 862660180 407372989 977043493 939943348 746847665 681698523 799865953 154261024 438613193 213146488 636424632 230452915 824409944 391539659 246381678 141084892 852050384 587965526 804332245 177291199 269777006 786762891 82043092 947954552 35810558 217649362 217318321 2626417 450812914 754074381 740711247 127984615 90809155 278650130 459468286 142457445 518675744 794370110 420230585 586469949 978119938 993567948 869873719 3804031 856523285 340839573 216067702 602880965 795337719 497719368 295845349 96896825 52178045 39585119 20021985 552415519 560820366 386300526 725533701 857185765 727546043 431345047 242328784 652431412 666606972 208482595 460682421 547614399 631735617 864087316 148947705 276852308 402812550 491741558 824043375 724941582 954792135 426431344 833493168 510809410 788656559 971697345 956963123 890835634 942137506 863559348 347188771 292347218 743712686 489842446 110317936 562367023 625500299 895539512 646758094 194847804 317888574 327196900 494304755 958324999 269884799 346987110 81866360 396374331 914445692 394244476 199659682 718323606 153727571 96135622 943280603 907289152 52137027 633121264 787192890 910085434 212994427 86012012 547408596 301301603 412982406 627597193 765721229 631704634 6380481 993864983 387179689 469881708 897021600 965566677 459190095 903889812 204987280 579000104 723782977 958819831 257765072 641047195 403751858 246955954 978841860 293829805 831013307 955945270 894762243 201257305 303552885 332895569 525564029 497791997 410873116 257017315 453375610 341235494 506060084 481406534 201612735 422302812 142463399 949175605 496901911 590918654 955498439 810549821 847496270 271761255 54278160 461847782 162978440 715319002 51670960 522524671 195433727 512451117 94071626 296956059 573416664 360674280 512498520 825257 881976349 986284154 317035919 238148977 569228106 402208197 482991943 320558243 861316373 964910631 477455158 280436397 637012859 322199147 114446023 435112219 117144887 920924424 455018902 633398830 978923052 943282879 650484490 281289789 867108959 517462800 28552572 311628648 208404781 50921318 832071199 612372371 144779333 882787811 380819479 812017087 609569416 843374293 126956357 923294104 294875874 308933970 732075514 136756863 761887480 60296812 805940346 567483545 447382229 245721627 169940257 23281689 648893703 34581125 5303866 960259035 964537727 601176127 128807074 713763681 395546230 283319436 390831754 843298353 11089602 529597199 181488212 968116981 821512610 285988573 716837283 335200501 577443184 206563423 738612335 982712205 757259782 42536054 439964421 768093929 743129819 943674473 735648455 632163146 389297332 214738865 967667844 775532704 93871924 413155260 774470144 1975358 202597262 375763663 393105436 230094974 401382127 280018041 480468107 830910091 148878125 902962922 545286215 959287374 806354839 286369519 361077609 497008378 79400312 585354125 623972965 247880827 829967817 844813200 996307039 336753443 145048148 265495441 658409796 373234122 961401111 582907988 442321737 389327674 628162310 280865542 450800775 72201385 205546040 407844964 283422717 353269617 575513305 529849733 80670964 880631050 97729226 588277858 822693489 806712839 358043388 485453722 160143702 28198380 122777032 896343413 605414056 307316725 62867911 98759216 83113701 816650633 101927867 553331497 143844973 724893160 475170917 738132090 651770977 257654467 211661946 761516105 997061231 195508956 104385460 180426603 552321495 922550307 169609085 318033789 796254031 95678191 325111370 111994638 324993525 61934295 950267593 944498927 876128713 595998066 865895776 800851825 427596752 883697173 577857298 462954116 81549071 396733147 296428167 882697469 412503636 790062381 504685786 850334269 493167501 193356451 796261801 580687361 901033834 695299411 159478601 116561170 151457611 615810746 980848485 828254107 840659541 222661896 546195324 63194469 799198494 276381789 913349384 492240645 586018824 494342627 490929361 819809081 511778390 522884770 23351386 798754431 325507819 126295796 679674146 872439705 387362904 728590339 647686307 125008048 154608823 661867772 989620851 863314977 435211270 223372853 708920041 94986854 818394594 184616395 928875887 219486222 810977602 209335364 135394431 509587873 9061002 441678785 180412743 63274215 157943687 516158784 880043723 778573155 672605976 471711903 820720842 89912320 877874361 56522965 265308644 893277302 744142152 32916952 290629885 602179496 425530691 828842827 716811028 815884397 492244204 490965516 705220408 916651649 592176853 796844219 834458723 649474123 469823882 260034076 253683331 402222787 7792140 138219693 800703199 120870375 767910336 396573547 446843253 133008656 633694638 382001445 295633486 751593198 924199663 78031001 125616322 265639172 138688265 568511452 483760686 842982428 949290542 64862380 166190811 362915014 312759111 789078704 323510894 140203485 281139702 281943784 401458952 664191587 861356159 932394928 572079787 280945443 973242465 252457692 654359161 541330495 828323675 84868909 518230289 180171309 216144007 444928911 993516668 386476651 885135690 927504585 626127194 184550536 907194772 792064641 877369091 700336463 967161961 499204675 476846390 679710408 782267199 293313514 65923374 217765432 274651842 91570538 353555283 396597932 415528444 213903230 334357362 180616570 147333499 119559511 376732490 43314170 682861289 285911709 483695065 16425913 286105228 292955326 935945131 458544105 765768827 912000274 247862318 338505437 188986527 273465910 654226023 528237017 154368081 178081119 433510443 856542571 86246633 725339161 314415222 994787597 281521812 665211168 831597866 257750608 423161283 192482555 221476136 136294734 20256963 363837481 927822536 581626624 332134843 85776730 915253010 952679611 850225826 650241982 206049640 334400486 54026129 554381830 663854424 595984325 510068814 267494995 91131253 75621808 937684039 576414720 917740787 751512293 227053180 800793162 752552630 117988882 482423830 525292661 856464970 873971660 552299660 732527919 103724689 291681633 556581044 652865726 22605559 130176449 630114651 12902613 780904322 413086878 619018618 377025765 973075921 65315299 698202498 77190680 283546158 72407078 934230609 733694504 819750727 790591808 494290009 57677195 328444302 573264480 706824497 416006192 440322983 145727534 475414891 42208734 5425491 83183726 227598666 782625567 446096896 560269798 295926746 126740337 741732654 971901753 459591833 885837519 312099834 142797439 898973393 51658082 76560225 840126545 310352932 516252277 986143221 528295411 258516108 937267998 916240317 929639419 54705627 763518769 655457010 605517019 645880203 529172897 22403459 693242833 502787480 26243294 606714538 553595747 272737672 215340438 102347561 206233550 38957408 630159483 521078265 904966379 876237959 713190487 214729716 599801951 810655248 436412904 544600216 420521608 853294413 571815405 310547750 796081756 815125091 388865138 930639552 397642686 592883009 797851276 332505942 609912867 197252827 804546601 116243299 831785820 537504129 990855459 971600753 546255757 61469161 621292098 716100761 232746769 757494620 797052926 660408617 564258823 395088382 709127133 103340615 482797518 815284373 466155578 68186193 619375124 295437414 535300679 12704119 96099552 506613303 779698979 50375401 765034603 22157780 369020645 161199776 838622907 283625783 818941933 255483778 297029317 399118244 115839867 830878523 706757863 103998170 45209276 237657942 75680757 660792010 62579390 897999798 772520255 466686589 418092664 684420163 313862375 575844008 632969728 450091411 374921930 866171101 719079784 845490592 86836955 733870240 10435016 387637779 905396559 155338685 276258442 14950219 60861085 394058918 144463924 676454664 437549060 710575785 438269523 797637866 125957595 49684195 939563848 816365385 483060646 372824009 504493109 904189085 16521866 597349237 593951005 698781034 625846322 889262733 415362931 991081052 768250257 409410351 854126365 713512537 143977535 467310592 698519553 585510349 180507463 62261646 161603486 411841831 892957153 198522999 645861777 370687773 33576202 848622339 865802154 608310507 748757686 747149066 401485912 781067438 857271475 803920923 529064595 244055393 129127194 511191145 346834326 561011199 967862642 664678005 726319081 385305711 702522037 757839261 26394181 935001589 944020902 975378784 607618441 519569003 662106244 806361581 198622579 794138399 329267679 153562148 824324924 837624289 930104483 845997372 454871097 721513300 953601308 646343084 90699783 409128036 912401880 719577047 616406838 348811333 353984192 53067629 884009923 172396435 462179351 998154243 337178226 337769019 602213198 309846335 622672487 402116855 626160611 973255862 86210631 332026348 222772000 411971003 880307777 220578247 652926615 99491581 898794085 581165465 927852933 369074945 34949102 227937891 255336829 178407478 701768236 256288512 995155079 276990405 571533873 178304873 899855704 986643896 876181697 178877409 44373154 538350105 682860783 243706073 426195301 284423091 424831776 67634600 116949015 842837342 977730816 489537068 18786328 403908301 849026534 130435656 839612714 551927055 618555120 251424854 230852881 375489741 200073899 30638435 364600326 338368883 645174934 348637175 733581513 305013569 683715627 228536712 57363428 231188859 490324102 338818655 32716926 255010531 814300116 525617383 528529745 158139263 586557124 913174841 76103109 41974687 177136426 978830795 776488855 899873820 823164019 74713012 864427939 522950811 468143556 11191622 80930752 874784265 559280352 793857843 429577981 233402782 465334879 568580363 597756642 995277409 866512233 965755983 623220823 829132034 86936876 190490669 187973198 386593465 287580209 670689263 282002215 114046256 876650230 961315295 502367936 351253622 666933999 79363199 210684788 134029235 601039538 570517380 208205371 548656192 850414588 73228279 428730433 946639884 47746028 675609314 331862568 85166280 974073776 143312400 886043836 558619388 160628662 667541690 85378234 709234877 140190953 827755940 715888694 808803597 672650787 332964188 481280912 553807001 360941009 797881758 339710497 142307853 550232222 242315424 633071918 301782458 465697146 167247986 717118015 709752610 919283217 174608995 511620499 750222624 451132213 887951285 473689773 419816909 209336274 684111076 353476510 999268877 692083802 197895735 339252105 578351704 293219836 428719640 915264639 415256114 133837744 729224873 88057061 859531298 896900657 300752499 672053513 413653010 891153337 789511598 980217197 231393537 102399266 49474884 543552504 485535692 610498029 500548569 623222173 471541917 967118307 984863762 111884252 629511307 140071268 513690061 319101327 373211918 431195828 139150294 160564861 243361007 189267078 405352421 401405470 620655049 458090507 399956766 103153346 536126988 492617473 863650872 762870675 146809425 396834497 740975063 198308542 615685125 228743590 855121375 332483596 530977941 937368280 434521951 962289888 695537242 870004045 138582525 394568773 335378407 39175979 160724086 285255868 788874200 265624591 118789465 460524296 857116579 978147692 568822795 352656387 399406846 659858268 382342442 366554910 576357932 804165883 839897900 920233777 609795857 553505576 985734698 552865437 405314048 807249846 45879824 206421492 339871421 958801972 134765734 688497753 338787518 771529294 632627214 843937374 94101609 426115457 250517224 715983933 207237096 557272802 77601931 330260124 866361008 226803980 480090855 116006765 440695131 621716510 931331145 883076715 524777972 876697818 405842652 755376449 256340468 367907833 760675903 584615100 644598668 848464219 739108655 426415147 179701010 322651592 384103933 954561596 989381424 434542703 63169279 577811986 777700811 973090464 718993256 338250829 263368771 705311844 943780174 996962352 71220805 293016866 352382649 885652292 630676636 37735880 763185963 87526711 195120791 211957969 470511524 786639007 345151676 455714172 223399987 760384361 792918995 975366243 586488831 910574056 222195788 437286559 357572501 496950630 991767103 33226978 747226469 143800533 946537998 378476008 269629639 389835503 324364734 949201405 833804392 580150240 790470591 338707414 796168354 912179295 636386024 145999785 571868805 86958970 662066093 207909768 295010152 859685490 549641662 984156506 954093896 767435178 79377356 399299874 462392730 98876174 651774566 920279023 394925070 795898909 648661755 419683577 657219765 663427686 529980172 217130658 63568455 948552962 484320926 234086954 50957162 33687086 616576952 294006470 805886631 614554274 569680336 732660437 405386011 204150596 564591309 354322 757382068 543502401 623458730 122777296 701094236 394937441 789812754 675105959 662350709 423846987 184558308 415937558 939576338 337728936 132934763 662560779 742811968 428590784 794120262 495382190 660141315 318094611 566690156 182498049 202453137 725410454 374667139 15075582 226553050 169014819 496501658 52098019 475167158 506422381 829086463 459114062 627130615 747033523 156262160 82505256 828909705 911607847 47952661 908499142 607087844 112753535 216432054 695577642 963956494 186142222 787563453 928514720 508244792 486524469 870975326 431440180 458685376 168856393 762977081 463496106 495281070 379361841 117630275 999267944 334941266 111864197 155493862 417812631 222467629 333647915 825745319 961922708 361752460 541166736 677572409 916343987 196904448 650190232 748354752 135964663 611477699 915815185 282324009 971771696 602504073 151033723 978622804 469451342 256478531 505561448 486680493 236679481 272221779 873073228 451286919 393058545 830341347 692608388 722904742 419774008 680029372 183183952 567720574 499789901 464595670 748698141 254840119 76429133 472564352 182421886 919713146 349957662 473004829 483229300 170341569 660083641 26722547 926256625 737263918 227712065 613753578 215321266 601509898 998603965 728672375 227277935 66764432 416429531 357848776 472436928 972346188 110997657 603842110 138862016 43508731 956354890 301862976 777785715 7034498 323057324 719505362 298630042 589728314 291838724 943188055 843260491 82065337 485929058 344557817 723801907 976867758 819824349 165812415 908078013 596155632 950379983 305592104 550107310 186850054 265132251 51247815 77905991 271908014 70784835 804831316 854980772 781694888 776109104 183484634 917812981 663399876 883891497 242365026 415994886 455638303 888487962 581544955 274201085 660243501 769764631 812613897 511119651 448518196 794108995 504239868 560684369 930644792 550476394 98219176 260141412 602728297 628248631 117626570 152996815 316880592 617713944 523571730 303806796 599095080 677097794 831845601 410441406 34832260 983080340 118745710 300635778 201083040 706432539 733913133 965734230 475241080 511082021 968127961 763388518 381535406 775749622 412832378 50376719 79826848 335844791 622564921 36783713 360537399 824666418 363744953 18636217 240514805 341459353 412768057 843897333 417462370 281255193 515987793 941608439 631245570 845673655 966192956 76175965 572148421 762234097 291970334 807771065 166110161 193164613 484723545 653715836 511657188 953119998 407934441 11149600 521267136 847298331 452929400 887180174 634448561 513679195 443713669 946214952 701652196 869978940 30266716 368926690 347418214 299745805 271252528 131995586 129128611 807065775 827244557 431224518 886396392 154447961 287047362 563711660 918699940 120253270 593783094 180386216 985382309 569871978 85556886 816036490 905327726 103301804 154446727 524654550 976241512 835339547 908754375 576276029 663838573 934535720 225065999 741739297 901989563 259242079 464312297 285133950 244321078 167073793 479269900 202662554 271862485 672611316 360072639 699776030 20649909 332741577 960082511 648672759 88703348 790448777 884002591 509632971 298912154 729116706 210082186 331907831 984554385 933973731 324212680 987205946 536714102 287801931 402747100 313777587 379260420 707536675 850758593 445683412 716309219 674467375 517875354 455153672 917165126 682833406 321879108 694683877 507394727 488739145 256336068 141466018 913800589 332673183 140455581 552024867 954334421 812527754 541586732 617958506 555931212 888704106 624485081 608506146 331939877 865343151 838986563 497836544 572676912 532779478 538135110 345951171 505043698 877270110 140478082 786501991 513968761 908310583 18412538 722864386 778575558 407987880 46234551 86717898 545130447 574631333 802672912 159587601 472191224 23274391 216343593 109961602 68616174 577521181 895960827 931940167 606132357 892700515 654701189 693886455 906463495 629447293 875769689 606980349 847708208 448322523 602423933 683153546 749117646 876022042 847444583 511804152 689444540 158162147 905894613 785609861 672850954 49119269 985539628 498182755 752374990 299283017 821268444 384004760 48748291 287193158 673855697 910580616 928606682 104366136 365766797 342624234 398839951 310877556 159106221 276180069 616000133 687257059 854402210 419689226 171380363 506037943 152643403 984344055 855567382 294384071 347532732 53621971 185945942 926371274 603299692 385296468 929680854 718467112 777825325 973283518 296570313 121460208 740471773 346425524 79365196 430234513 627170968 40248756 80643157 787957683 632851717 432269335 513732871 537538632 920124957 205552894 829655782 449994454 291330979 340391953 424059390 495145928 880972976 508495349 534812406 596265040 59700108 844984528 848201994 763660976 483904563 256580314 706940109 509492336 361337270 440885593 285014726 931930424 722447336 713132424 529955528 241426760 586876026 652631705 541473304 494313122 726038815 746273737 421617597 256377095 585792420 186964646 215844031 229360053 902420624 274823964 219456086 178862897 15871181 143944463 456926868 191091298 417943509 794642675 389170282 677722478 888943409 584423661 48172377 814943026 715458255 814870534 23580281 94070767 179649462 951153602 744135711 423869903 536676796 420462664 762095304 867317612 38505632 754609916 271503786 710445566 237416417 965985926 953502834 157853201 542443684 615342728 645749364 987352435 387616759 899923180 716106084 663442561 680922315 209449164 602991474 559245389 309153775 278637764 425713353 282945868 632437758 791263155 872050150 858500998 355568882 854075418 692382529 560470923 346418122 774540522 188950531 930251186 646243099 73641212 340293191 490432265 536883240 591159388 181466668 415018058 382681714 889874435 152887977 639201054 248181724 246307324 664614637 452289081 407449343 610511415 15482586 294621770 970913727 626771365 547147722 708774523 88200344 749091302 757967023 155541162 473603763 495784080 271643263 183806587 251708740 552480767 339266200 123568094 16906774 212787988 964953683 304538220 867680594 915030111 806769239 387773922 429727015 93727708 889229303 62388404 532475073 894535659 149159355 414719998 260014499 985776038 522253285 211006911 786428171 955244734 47177113 960238904 439563886 452676197 291462025 343228692 84798068 44328503 950720532 816861484 945637106 50252045 466583928 37032954 865622407 445669482 800949525 557522072 129485435 983539676 853538411 801420240 384685581 37917468 258748594 179867878 487691113 306042225 115965169 555108445 741749380 169682125 943867159 882900338 922450633 561741744 892350408 472500250 872067743 84476336 696963404 120812497 789242215 781661952 216349322 655973448 73733421 401067569 695226887 572310875 296458444 679028658 634532691 727408498 688570967 112782811 472136331 950382887 460480352 706549153 360834011 126287942 357438778 464142571 568488026 525061682 794566253 491089124 525836314 660868141 192498511 533966834 745566372 628400021 709673182 669790304 778078786 197268782 712193889 601846724 929699190 229767860 442980430 654948507 673977792 412249391 677575843 600796250 170797717 79144642 216588574 482116283 134940671 845961253 483534912 106044163 353347297 741049161 950880407 71462946 841838243 105584481 181720092 766242384 860576070 727371802 780585074 948038547 809694387 266151372 466836834 679768680 411493382 367289869 59036051 231517404 430875297 37256742 980434297 746497324 627390348 230439867 218843005 39573108 201862469 622774258 992010491 97375828 58114286 978255020 470529257 516909302 35846708 743800511 333722879 289971945 371118862 648075521 647077528 756419849 911534065 553882682 782768681 12939752 825211007 227839620 691841226 278378750 739861514 758719767 536475355 218627172 921130007 357071124 91894274 481635233 570379846 14600061 631017466 401849102 506360789 328970310 41046070 654690253 546404461 136669367 499640309 14004871 889043375 339996690 343281915 817244145 901788183 50737931 481498522 592747583 537762032 688956513 123128573 906702332 73141588 781152657 911203743 631572253 944937844 267865445 362655765 573919279 10500418 412341475 216368910 920426157 428893483 577985752 906184516 45374069 146933651 805475226 579940365 994921762 136802009 95957552 251348949 56152072 841065684 341460207 473517275 336478243 105575578 505797625 592485127 419592608 439793543 582943273 144464410 457664967 446288968 479107215 32882052 914676840 471266424 997216577 444583653 531077491 775622362 248478557 161572265 49649352 144153275 599094337 189551088 399295965 19656352 14501323 350063296 254437190 82102967 195023849 248637736 424534934 702824419 652504316 297697376 845469310 675268881 820343754 778548645 3322911 444121759 141231749 202032916 365044540 876887360 574061563 261029031 923821510 354206480 107393205 952392213 825453612 511020969 708781996 113584685 829871634 767132116 698400103 203345899 996986143 329254076 755053475 24536096 102711712 434728050 838573717 547359471 938964534 626646924 7746102 629214700 151377816 265814181 922539102 9008403 690092637 968296593 753507604 579461465 267983 30459545 255205216 574092167 249716731 332311734 910150922 794997860 679958510 551324425 994369788 276732926 980842595 127649777 475509736 626789560 682369994 835424649 886351894 44598465 368203925 360874643 221883112 602044774 167635273 573862632 112535015 942092213 805663089 653491347 833973530 193941204 833897818 440039681 258026117 89170545 912800578 118025224 95554714 806297724 236425350 651742313 363114470 941395678 875382131 505067613 987283282 866764766 979959122 422272276 379009662 268148950 156490145 39548955 380099108 233161624 624124092 590421330 497195940 164035122 430123351 804525027 607571464 477800562 857080278 176361919 585747041 169937666 23289315 34537448 710077257 440788993 825098319 537237410 462210801 583861993 163183228 199933348 483138489 516613089 378319369 582235320 812239437 349482153 756859213 783883360 336802282 177453773 158399481 127100892 174605679 478941969 698436165 690697309 89210539 920248318 663134687 351387256 660700238 612787048 62704940 185776481 218420593 622685234 679155846 646432097 84471685 464213081 109889633 761773808 498579175 786492592 13227432 402092785 656919469 359251256 789198747 299972960 482684893 424993449 329557543 250803803 82582828 541793069 687971240 58070851 498939724 450333052 194247535 482217105 913922578 858851352 713864905 77788811 224240927 932774745 306502284 174294666 844848561 111867926 859630754 67400187 746686203 393912517 238025776 585269558 675787328 829388021 317779561 411681276 290426012 317832818 117378343 221863477 270578039 299621730 757687650 15912847 24935222 848612449 624710336 222553667 777406571 530246284 975639306 848711948 671207425 140715966 863355937 104545920 694509586 348441669 251988365 736102852 113397445 948109143 613383365 177130308 162511510 681010576 392292269 656629715 759036655 665288368 65067555 33380569 802567516 577573433 671761598 451386034 825703389 797815719 761748123 330461531 542709427 881685050 380831356 67427584 459583604 252590988 25353444 793337777 213929769 943194618 888282482 320193578 194886282 877278090 916157196 647135316 814599378 310936006 968089326 628277388 244079470 350181491 320876458 941138895 741657574 774025490 940987986 728099954 231909606 716023572 891430957 229373768 349741410 887584966 59481646 254366699 202195186 138644765 97077238 803632817 278834000 511527323 376532682 62305900 485207458 172185335 698540680 513966570 600069213 321715521 439224872 255116639 32415270 960494299 63070914 80886700 206716647 689689742 559375407 151309431 114646171 112869588 84240892 189524069 178779366 327698119 221332660 320967172 45510764 575997520 409366067 137589657 500249024 221578601 809565295 60894805 948061541 286350820 885238617 324079179 430451249 431339693 388413731 88961451 744865436 656920413 158294740 657306274 591999175 77161211 42804891 569915097 534804969 845614764 841148338 132296648 224669695 239541626 500683874 125547148 34851611 214228846 307942227 235810025 258274890 519226848 902661710 318783195 105311246 561281462 434765124 363676611 384209219 378355699 847308357 94577700 974452619 979813451 693458351 289806837 613939172 374335478 505935752 656959083 598056248 494101385 151734612 677576669 706752518 930063895 447860758 247995150 439962779 379587890 551099952 121418762 375837471 469300059 363140927 363674409 496307273 288118650 412052454 686456722 219361423 762996880 532159343 392189114 525287107 43477801 488055736 39217633 563406622 608777002 517096028 777035057 527135336 476087044 489355946 870958666 165493346 964751491 489151907 323820263 595595261 797550608 110859853 881075736 295789333 219238235 295872725 759685618 710109990 913387860 356147106 623577102 567673392 309271510 730832021 386279243 938167840 198691108 871398791 715805406 180211322 256211011 516964588 931289683 266757671 544331821 981867186 460732820 493277081 989826503 934410976 544503353 646929999 676088264 570153667 203987626 855500400 79056375 86303391 190527231 296389951 265752435 808695300 380336491 482721956 303082745 562900303 149717605 331982859 40240310 333026556 381715810 752928504 939635035 740916500 83044163 784716078 375388105 741713740 509118746 699515400 72827258 1102669 410679372 477294493 500033814 10336261 475285109 577675451 149545968 514830222 120530898 117179180 350162572 248485084 299955094 949919242 885291132 739186024 169071854 952561139 649194119 889176247 490680777 555714892 869194783 491047089 79059074 474799566 536760950 886260874 537834900 274850257 15977666 747455361 266437210 182761361 708251653 314256698 147664468 928564209 473160254 81360455 184801785 859854837 220410384 154521421 15711916 782648666 581777412 278707950 964796955 283900089 440026515 403163719 302868982 403851478 435358040 762691224 141032857 973262144 952599251 863426873 795246910 831500028 398916900 637719478 711386513 309733795 984214481 633396685 567104028 107910854 967726297 426897161 211196326 571922707 482589641 863708311 826364269 373796806 914787158 906669353 699407519 916451186 931121723 817522997 529588592 346805361 23542058 721803803 215401333 358836956 888374593 215263466 699194541 599372366 800875456 216297119 864089558 529746011 819459669 893763456 363481850 170794666 573154903 101975114 907429089 36137366 265556665 337306779 21307085 916128518 38256037 759124186 682127868 266786893 649023622 397101701 264095526 783400069 497685038 456362021 208495149 967526744 172271230 985546454 158744533 569267531 852483705 569769008 603890313 418416245 315016557 676715486 778182411 981160430 901764823 679904482 179539519 648943682 177812939 849239683 723122976 409444160 649998105 716356636 366452791 202973740 721834896 899277729 264155963 744958813 94905976 865388819 24494241 680819308 555378975 178908376 224549602 59610468 309636640 151750755 888031785 845283943 38073027 426140175 991606622 344517865 859627738 602866744 963924306 679603916 747256210 191990939 33751209 52670363 98600214 338772779 740707343 237774462 718056073 921679420 443174740 427611286 582849958 750025810 212534103 408618595 295376067 953630119 574544530 949969761 543137347 692003095 835211530 994732094 946077317 713958536 203414148 979348165 613556220 833269542 449764374 622995760 343462562 712698107 139055454 192916559 270651744 786819647 357752406 482262898 646978718 717970111 852404977 981111365 99837738 424468193 687508248 495683422 982183258 558116404 731498193 586814300 180522 213335062 783927554 619819479 430296383 359516921 92240500 57664925 283565667 310447078 352531736 424937877 687479637 11166392 329071290 990896547 423052477 719633031 119831449 480413676 427347416 383561501 405383258 487107287 483007122 824313482 399268812 311790140 934104986 438043243 134339251 275336243 17214992 960348470 502483579 460212116 278533074 925248994 637060382 678377492 299247020 857090694 275230061 321006360 60345381 946020362 990651428 311510639 579600695 420762182 428738519 618005261 367465820 589645229 419170877 474466217 790313840 672022080 521972864 422887619 639746908 737846423 643329614 908441821 349663616 247567044 406142473 363711673 617920022 629929230 495182002 238102013 982138556 891919906 70662212 688397068 194047836 751701225 117225934 88459079 508762918 563598656 19736277 184962432 971321312 621575175 723409146 395384585 411895795 426863575 55235709 909398685 957982705 465422970 808736131 219361209 79013833 361377441 207227938 433695658 422840141 255521041 973635793 104257946 499865666 554721361 444818762 438024038 155768105 149671004 990801490 594953516 343125042 577615893 193268437 601270617 956151448 30535396 224382777 535533212 340508346 849436497 116245587 699306914 558399505 75090987 302801548 501792952 947415228 355389778 11514204 905187179 783294600 527832557 607292266 990090098 864736541 849345539 15799214 323992486 92353260 184935861 591294079 424154071 802676238 336922235 961423108 395283981 869404134 923002851 428415870 99732078 50260535 230892054 144685899 596635827 82463342 660761512 408506990 654537921 306225364 447224120 531247023 228010219 916359952 798263836 140965159 707030336 761087666 992419678 20003693 656862733 444166459 41536442 639770415 412080800 817385199 163132451 501373012 812206632 919957237 808567046 296238318 320875332 668324690 479197049 227225700 954473593 932389634 100510811 711820449 621680760 169886368 320353433 506845288 29469991 132209265 886967302 48730556 247045108 78804145 383883809 523967238 638436676 137379175 603724314 703826425 283129 666141502 415199365 46629913 367360723 585259394 804456363 311187657 469197448 653628348 986545218 134166978 473764189 827559565 135636144 869838582 528721641 652072769 861677018 122655898 392918220 980622695 7853086 656916895 696798813 650111615 73576787 11887790 54612603 676822847 706327289 299618794 125298476 969763031 119651211 115833650 514272415 300227874 232141563 416482971 984971021 24156978 21256924 155976396 12816620 21541223 191023877 77739031 6985639 454477208 537316354 406288542 756917189 256151444 773618308 121578817 27589021 442254837 296579281 46512304 378375004 191147907 809990399 874124520 142640709 978995252 498758349 208814982 279292614 947225643 726368697 414533123 172390130 810047518 160764434 766310920 583948258 619326820 165567397 564077861 668697740 781540284 774480873 103415682 232993072 423969053 865707355 937558323 780541320 94551411 383103457 395911227 403636258 63086574 356506408 347369819 100714476 712375136 323609231 699209737 468605368 377730532 866280581 445693897 11226557 87874405 843772095 82969778 873811030 842407758 341703417 745333035 829986906 79371247 211720172 233184489 326888751 892324845 298752046 640370573 483315559 136704977 547555308 80802105 98370296 399626636 427992322 513477292 141080733 337410237 475786208 82424335 669193415 444736163 421201016 819661286 103645230 141863565 240080930 92291406 415473420 401203351 737897019 892867494 19080804 61924359 747512563 701777501 444063311 782500219 646937424 837327673 623901092 997795457 627799419 732898149 943871168 507778854 593299436 913087003 672084382 928210769 861128667 14377018 308479366 319800391 298197329 22338502 572956350 66325561 953146839 567295882 216104415 569784351 528581533 523411027 169179959 254149447 736538311 288834335 557358478 231246527 92308258 423741771 836863816 871599013 560601659 109937710 133179846 113737278 667514155 886063179 675797857 503593471 238536584 34342838 663515767 201321366 14127063 102373547 101363087 825687082 3440690 210648218 778866826 78913105 286014663 921692225 975583201 247332150 20854678 142272500 749200801 803156465 766023637 632351399 386207017 656962387 148224417 409463078 700944247 723913929 549349162 422329783 753955879 882624153 763681213 820749391 923892375 433150234 788748013 305111688 930201061 673283490 53246680 357073789 264852543 248050661 27796167 439864743 912419392 732495568 717864660 512198913 904199247 732497044 85923566 998450835 703418960 779593828 303887002 852955147 628207734 347739220 448805243 41973446 887322387 701272435 305327382 592864542 966220840 117535861 941213707 981543882 111272136 540297060 282273084 576102827 932040323 309646554 270044250 786640903 635499191 905832125 70336058 42394120 720585435 443516752 38688301 816394416 404000479 588260085 725763320 343834148 163695946 99880755 791917743 439380504 990761387 50331950 104652165 203372968 243331733 46692790 489327222 304002200 818130719 867926857 83958422 943763551 896335867 818077147 226977185 296573454 398469799 820079649 796866118 116108725 521325341 348911890 148220413 681341682 260179134 37584690 674255286 165524434 254244699 789533131 86098651 37522415 462381177 17890643 204262018 226264060 598990048 468380206 30995086 182798495 426424598 876214792 467197052 252811991 680382967 866191538 408155291 138556634 85962704 18730273 137806295 978129539 776006428 522471484 775357533 114247186 516170104 685154492 13456748 118632942 165501685 120558848 347468707 831502706 885640274 913317022 857119160 23137294 744991096 124596870 191979798 698774403 753392912 160809207 177960105 288307414 506079661 515334219 908321726 551145585 966048496 68451330 309925237 868054519 89105762 207396343 58048037 504072777 85424483 351354725 817110316 445692955 921695253 311150116 434328316 327715512 937199514 207235238 800484685 351405255 252211581 994469201 596008012 943729512 841772223 93281844 572229553 476614131 492561302 705459 660639742 886935264 36170969 506188385 446696948 801894625 305467553 795936734 482983832 569443750 595315949 518936922 24442622 464029541 770426660 478166711 543530971 611996128 148304985 881293167 205643211 170403983 314078045 103025019 769127057 95987097 157988364 864524222 619647747 740325317 490592001 343856171 854278083 227368144 231089840 652733881 907811267 771993237 133607123 336624937 935033768 406807107 92025800 402020542 558735592 261369637 410850419 432900653 197660161 398272400 913278885 918821819 381122521 708200695 663321489 861303876 932034365 827290169 696924262 317968741 839573639 957417436 541682458 247044944 335875483 880582765 63368326 39292556 613964952 210144736 115748046 618252510 972289517 253416417 238307101 2899985 91486574 798225522 787656792 65974730 705689216 633288505 306710792 443725153 639638479 759874225 269001914 336148855 602598091 242752643 176307047 893792511 729741192 588844975 945198416 860692538 692094663 430128841 58361372 575448309 311240317 171965588 455253365 64683017 530542190 437177421 468933675 815128930 431784794 991186680 993099459 997654567 268899623 79650124 534825698 628916790 394854818 63987326 104242489 8822468 560221557 953743319 45394779 102643365 829960300 877653095 347037938 523249395 626837486 193812567 342746949 63918622 6836872 829673465 701706632 223124093 917175807 633580947 223135308 481979464 591603338 911611956 559970036 323700397 244075542 352904599 161265274 907630958 509055136 81086810 324231642 269259144 924638377 16473962 283773729 364282451 97366618 20853637 355056861 411343455 837462844 873934283 300202911 590064770 784927393 919953457 519280625 300030991 712769712 945734734 122533572 437007173 134327940 625712181 267492033 382464866 503838684 675268654 203703275 620876226 822094704 384031435 447020374 334995128 323408444 470364079 527396793 571649598 385994099 411133123 608805332 693410977 206420522 786339888 925026338 385408713 182424703 636573300 71496977 889386916 700340629 277530607 640771845 66176178 423880754 183769451 613208604 207484622 856792916 832089536 649695166 133442819 905974647 342224570 735887152 311545011 73166519 213376314 468483113 540394170 898739876 434001010 550147460 507470647 47279206 582967179 925804487 290761093 26623473 729391793 121748058 418564800 685203678 25535618 915937161 860069275 768589485 295411198 753350602 661755907 630273299 219744738 290987362 809154183 190763271 342421547 83018716 622696924 996609722 73116267 606678274 149085950 417898275 483363943 755155861 708521560 854295256 375620882 335581380 810203555 66591926 195171592 149972040 252484411 279650393 955522578 617066357 103687974 808269769 481260957 113786844 220692736 893976868 396015860 260935676 839671389 723663381 366707298 333566818 737852934 905583452 77425747 207615915 145700879 249576111 95217124 496384245 209986088 605905751 78288459 613833032 928911223 735892600 824108806 38958891 262299345 347252630 490894919 782265594 559887850 928570165 900718445 751031892 272689740 176590836 500975092 130872184 848202046 724387801 487232415 934983664 201439029 636656736 586514819 871623409 215487030 889502821 391444702 636531420 320511935 271880674 746651924 43766557 916680593 579384122 502054040 218181016 615199223 740094861 397015439 175389083 529058459 539360710 671075402 524214773 381391246 223460831 430844363 574254071 792415382 469994947 510231443 909024640 499919255 10002172 526276245 140307768 835493843 290903401 54553640 125200219 431032896 25275529 701320020 856517233 774320616 245319552 882522447 581509350 140305895 816688179 369692865 343809049 632243818 289394704 511855350 256547283 603543286 946152561 548522122 11062640 888006768 990191699 646077187 143893595 392324061 675951556 701510188 414618000 701401095 248070444 556929010 165714828 83454508 393928009 458718192 57910359 353034469 553128692 501457526 252914528 879972687 481116661 742901491 634161923 8855139 710636867 222336011 478564230 635810805 719501834 92410495 718408080 667002214 383173543 770834173 134177788 754158852 781807755 935252659 790443319 842630633 233709134 53308120 63476406 342482868 541124833 522955467 175012141 682335498 957218316 765639745 68824453 984533327 438311701 752986939 371279616 697107272 793641366 180534459 162385586 418888528 798639032 53473266 982871062 836157875 547649624 725978319 497331782 470177796 490930405 368513147 912354087 76180128 965935415 973161100 90110262 575180851 11669241 132852801 30228829 537611885 730206674 834128034 222259678 662342234 240118359 534629721 233215967 612927258 522845339 43534870 117967205 385525522 640923460 717766229 576703620 857604469 131350542 540089657 261720391 195768516 931113322 459032652 454393320 264958880 926144804 660755818 856436927 557990610 394158701 454525278 242863971 626534993 197413194 665087331 828489771 271926574 112749084 64951569 912672334 526475259 271852404 80459440 564336583 195414786 574215568 802232799 561959089 805858568 312553503 839801081 821021885 362407688 817935415 979622475 179580846 371641505 839286046 237944462 238375925 413901858 968572444 356229485 664016802 494271587 80831852 378111397 358274221 265866673 127506179 964906146 243019060 823360370 49443190 800641940 817670729 127674713 58264273 385115571 378828422 970020523 428174427 988219837 855711285 258375348 877418946 273095001 440415047 62632933 419912602 852619521 401542424 49072765 306696016 746962668 525041349 118300979 168768902 611567942 623141438 186733918 954780689 121671114 312591104 355500353 800806304 739242002 900417016 216720975 282446258 261739688 365558242 697190627 51048055 709059701 296367829 584401680 263794901 650068788 415781505 127902314 589631566 165914681 778456412 851060850 468963277 681091596 427504562 955507841 183469064 474306579 98681836 393864255 891001824 101326854 798681378 717865980 655603316 260117288 346801443 537939087 25454993 9683125 640366437 128838817 585708086 680352366 246496337 426913910 165367886 345640934 245705562 694485084 863586088 514469935 837441745 618989104 937613516 385986180 81192008 129309046 329485734 633474823 68079492 928076573 616597201 543575609 377808884 682812925 911827647 984738384 673565283 118932135 442805110 785483570 995022508 543732247 238309403 759756637 546008533 472049617 482669578 493073820 301905797 731282672 773610271 745487777 685707999 981862126 389460765 395718336 340011835 419940295 708650434 285215469 64450638 468115649 854388860 784761181 708915010 705201821 776404074 389115716 561971553 778432564 538430018 39969213 169682972 725873925 414333796 181640113 458474791 472130948 514442331 700483030 290104473 840496763 694897040 824905476 34062018 209489775 304250563 729531664 690852409 508734958 415227376 499510712 187418863 502741636 380577023 697128521 858950746 521767212 139417526 245029250 916230842 158806744 180202400 346212003 828093481 434467222 464076180 23639733 816935379 780027520 756067003 846015639 64227730 542171255 916096793 736772517 564426374 31842156 604920289 297258279 987471952 523091741 526306931 617174398 644892928 237043482 309088180 729444002 120109651 9009305 640027436 727834759 130083603 484540389 217808614 537458340 330674419 11620231 164172663 93101389 89080179 146960867 457773097 311028718 181536284 968194962 172155646 411450649 562532416 865146951 413725862 814809130 325355669 429859111 653085057 536211329 640655179 5411347 264384476 729032038 909324162 518801196 884502505 158281737 405079854 551182158 338960407 517125922 158793493 375524084 375472467 878650385 283281856 187191758 986029610 553435775 554458942 988787299 780277974 744208284 619382213 183354995 795351287 254276156 313887668 3248425 493226627 985510202 735134598 730262944 348691466 308726961 201001820 79055466 849344671 274191947 53149718 43829584 290628719 370650914 350339476 374592102 136554735 654995515 361419211 472320228 781681338 403817107 137078132 377738627 854686368 699450414 406121133 968565847 999208531 288011877 613552276 515893704 322588528 514466968 927685832 182895896 721525001 185338394 162155116 929583532 949873761 411844633 662273407 694893520 829354825 64836794 788625422 48297351 144986011 370801956 852116572 547547634 891263891 858631708 361905040 751072313 308970722 192901927 927615827 810587093 383295700 320999264 572840109 981616815 957248270 377225961 818909615 584279504 915244266 472864518 48462544 859356521 910782963 213458984 76790200 617722980 559043950 493052653 127922006 998399275 746976007 849995542 270504178 499120764 738142303 392755580 560412857 800740063 985747779 107418689 601358225 378233794 148530207 781783926 864505547 908702353 522901501 939972482 151430562 242040388 217215893 434209367 582208952 809526609 575828074 392268332 765504268 137606047 921002997 817181251 230217241 376985993 467072260 251196599 296070144 257777655 705738338 967196941 813716763 639189924 946988024 216654700 48860290 310085527 824692889 89856155 877898842 48373238 363099703 693534381 515110436 176312418 361923185 505056492 22169460 437372894 616988245 334176833 184821066 192583675 360286485 95655164 309714765 303311329 232925001 280924586 789639991 683217948 520821679 220918146 915225198 44930598 708145094 650787945 684630516 55020025 660849145 979833477 724561959 391065879 830227610 894760015 67766727 54215625 105927825 904307510 887243101 810221775 960278976 872381769 661238274 333883888 336159024 566503984 623353094 810851036 412418184 808760696 256579203 801663848 320954251 600328884 292453650 300259294 871840389 714611940 697733629 346185056 496272944 531208902 4662161 287359867 697834929 848589340 129352489 223460335 789854282 524885550 877782106 549981618 200357865 115661128 86488932 666811169 76647731 397703090 909456006 391329793 878314235 585383811 563550130 703536022 546326503 795855524 861440658 638593500 373849522 361318590 569440803 969011740 674125872 407674175 264838518 180383665 397487494 670624493 922941040 639248287 700397734 628879488 679951956 100817981 337779982 62368335 840653546 654085443 5368061 918162018 406816011 953474513 371523475 327266047 110221286 85424850 74057967 491770720 47656931 284447514 738986248 111320298 152431317 68080918 115453836 605362698 378870218 915620651 258139243 172527266 896038851 876167523 131820524 994889776 84985194 29585791 324161000 768215820 12799769 929548267 923559610 173051408 161891447 572328281 70637753 767432912 690232671 678401199 550207808 397558713 637252477 352444965 427596299 477538427 702855311 512657598 282451126 762599801 507046430 537759908 96662414 846501794 914828205 139887243 349936341 801028476 894121377 339890169 190650972 33739349 491445649 541372858 469565598 21960769 872472598 64117061 254034128 616835460 892841914 753246178 288945985 720603675 588725572 212549889 698033340 529973229 799712302 166010935 799015587 936224624 248596456 185868878 674262854 77084087 82849932 997905830 877343150 193767540 166172318 665020013 699432606 732704145 433402233 764612640 418130683 616920900 220809552 362345914 988131179 500979617 962898534 981116555 826606554 197472399 769984170 453888765 445308737 832353544 634063762 488228091 585847011 61709801 878739763 879487167 646127774 546142358 297239524 65312691 265057507 856260794 319017637 964011335 169679661 689681337 281949490 38842970 911668969 729568128 559056352 357802261 426190827 157252839 162908516 77112713 839019711 964790796 54986239 599664843 456880829 659065656 456440932 227032110 452449819 792394499 755666264 353580417 384354311 701739411 259484754 87383898 987038074 632051931 413199267 6421208 182034422 918486632 733855191 368524679 485624036 531748218 135182163 379993495 666400533 303418687 223801144 639269560 62524790 337843555 390511537 226227269 601113202 158191399 788413476 701785362 977572074 48472260 64416636 11600607 312108164 6014665 785194733 720498799 939984063 37702531 788682016 130466931 269486643 402371277 19317576 638506296 768521158 953273389 302501981 934762636 171054934 996721971 501148802 593688591 180623556 730289999 102806010 632239581 660395284 188278873 230422763 742949555 976321872 539517056 294496002 99480458 513749215 713196171 758583528 260148177 589116993 366034076 308047876 807607802 613322105 761974328 173426731 571820589 892993390 970115675 401486232 712662112 278107245 884129492 926296627 307883222 182186750 849838586 311435516 768568662 839915486 292011600 735056047 971398939 245538112 158800173 117198268 791578031 238150306 410359223 280572492 478767581 702334409 493509589 32918730 619629665 290623925 580897537 607921894 927692669 522731754 373087795 921212284 103433897 406350580 551169567 507944692 428350822 621757357 818958566 641423576 408309002 942885803 313771235 373833639 202829361 565869702 86927886 452910722 99577896 578212944 267571261 46093392 234951303 101360522 498959593 768634178 752722908 816582550 482631244 341443145 873049781 361863303 27899855 132238221 53853925 280246357 462470663 509668505 743279444 213266253 226659079 569266339 576854369 984858133 393894083 171059497 921059749 91859297 557284129 656325646 408498260 813065181 287784142 529217019 727059359 686223386 700473363 689591191 345953634 385732428 428852381 688885964 299417233 469922434 750852294 970895658 561347182 659971143 15338498 692038769 26908100 412209959 287289971 783215191 67058617 680128643 721128507 480133499 447409215 695125852 374065070 95596800 960961124 104306475 204697065 406250731 659902264 891177747 232508510 88501469 131592970 633616945 134684120 303473357 880134865 849385027 495640459 739245302 787591585 23905226 727286913 495085577 894268333 76792924 127822309 937071245 949428013 557940792 335616213 219866859 259483258 655932012 917589782 409528168 386695258 4328416 523934716 868166758 26762754 388263775 491160432 277753037 683486332 408521317 593716562 844888086 824570272 233592224 960618407 939630034 115261606 523277863 686716660 756025582 111867824 816692461 906555649 434961389 269020223 773447333 425668808 269894887 633573808 241588815 511575957 293044878 774909543 388666021 843125586 414938514 247698288 922750872 743758274 626161553 362379919 474593541 101885779 878924076 673195952 184509097 224635865 374389041 392045899 375476380 2809740 469829595 735488898 148289400 540600181 178940864 870684837 651072041 136417992 356696828 686119128 631452733 645387085 392696723 729527725 511228937 538088237 623822749 210428644 498662230 2325631 423713964 37834230 970724830 685198700 127150096 78820856 470849505 953159091 312222262 551165434 107446158 695192551 774699988 227759778 161076861 15214857 561110386 838856059 689164575 594011605 559244073 42890404 577265737 264061008 285664400 494330713 13999000 351572587 188564738 57376598 989730307 996610705 22568992 322423764 12137950 711222899 400223979 619616703 134944193 203711549 188416805 41826646 396186410 604320459 498934519 642592176 135044753 412383395 947159768 746356577 558728770 444353893 913865917 975829765 423462142 666273306 825501304 471700943 380056808 883177794 82059122 432871166 619448499 112379348 653402731 855987570 886747581 942757717 347726088 653376992 641992345 70566089 839865031 561981809 658742434 716029785 747735158 754853586 290422599 107864163 601053676 752487994 248379453 193739016 775128750 537895886 285459346 121411682 658555643 437626887 159515260 781761471 246179254 641535691 182072998 987827626 507754241 974660257 74554350 876421864 527504071 658444651 170799041 978656807 843864943 34393770 793856102 55062506 425749369 997340605 106001634 468029297 577678338 386076293 302100358 184430411 105364218 169845835 230542569 709714961 869683402 44906153 903455508 296951226 621817996 373751797 934133765 340447296 155072582 515033865 697773571 623553993 374805524 988033068 33692182 924873328 771180280 951769255 946505272 360788899 877475471 523438872 421241613 622544768 344744519 432018775 597960264 503287159 3827055 124381050 319887277 122110221 256040160 968778340 745831953 953086496 594917547 553408821 107700559 808060906 776785819 326045038 557632965 636539903 583422485 110469762 720292056 906491609 213709340 201321042 126543866 881395064 91736315 370839255 416826310 688304896 173193041 90102062 900379660 257608033 214922173 406023077 354407383 194513941 492763921 681952211 451587220 472863714 977710612 450674995 544579122 662144390 953827252 821794511 508134837 212611375 111704359 241566179 409154576 145658462 776933294 62515048 520133597 74348903 188361180 391022836 534267685 954449572 601875090 712763955 570977198 649352273 303668118 981799145 12649837 636789150 373444187 192950642 685868894 961839470 51745243 252251537 768501445 921009423 215003401 932386254 345443864 464302241 40890363 742412074 196156536 960683401 938816101 92879002 922462313 804586162 675830615 62905622 390758020 825960407 494402733 652167736 427046005 629565469 353240282 342586507 327740748 939607163 448782008 987916078 967979270 520586493 656362438 380747726 315644107 6079718 903989909 302909226 229401247 195496773 997849285 178492810 668222022 469063804 356296505 369284691 476562862 698372921 715487767 677288648 392893740 927144742 170659340 656070400 740162748 414626498 746702081 480752799 183058564 839342245 624159622 720759475 401586793 337668701 805613421 504569702 60424975 122489252 63858447 820722622 946112169 653468532 774969317 588211747 271724750 722693918 578992871 630641840 919325884 73744653 337597557 759428596 477486435 821596066 773609725 729700466 391955962 530668614 751150244 248061554 971012829 660649608 198699 455875700 813547337 77362644 203835962 859297409 357304813 44988374 898200208 935391279 309908037 341103597 185933956 82538657 796246008 107711021 88488665 523055566 140364268 419471854 771220120 269573387 205528499 173102048 641759796 952039731 933355655 784638869 730671638 766487577 531110604 300155646 626763489 907830245 724877617 537229347 495737819 685131110 512528160 706689634 394972663 802953453 904623014 388881429 854058991 780210854 818545258 166375650 643907243 119141820 286998556 258024793 798594656 373069767 853670674 566270372 366095777 490307970 769292029 973454843 616767522 400548832 36678937 291511780 524532621 146862736 919051946 62875674 320384447 9621765 987222765 638680759 704597797 50888451 526345500 487399883 420732724 564312627 831654301 451375837 480216994 536669607 178061371 463224540 429420514 570349504 88587838 251573968 595599967 770472611 102526350 848889424 334196716 215152838 339360973 58750405 375788631 461758633 774900188 571338187 667611085 160335996 302631403 20489320 881593525 978959461 319101320 906237920 659135570 282097122 932245056 493031421 686909572 975828501 421228130 871097672 503411760 76292308 881584866 711480162 33302685 9397754 729631579 727577392 237388678 323819467 288229520 727238784 505343932 259915850 282817976 934048709 655171352 680563853 149766654 15056748 400753833 532672184 877823065 187650457 184819013 39673516 51412815 150414170 58569399 422714327 596770847 217453925 889842950 800694424 928824916 385690269 463323624 897147845 723633367 828339623 622180689 489643703 311705084 732730760 282652955 183412508 815070690 165625642 58341544 963007687 890272436 949791768 532311899 282638816 981079223 835217320 913953000 804029414 91498913 548633806 564012041 817951158 819170130 491290064 570006207 176195652 412872500 113892496 379873579 726138837 8732515 175689573 712749646 328785122 942993361 294336534 879857402 796852321 600411512 360481996 767157434 705613732 85310856 519618884 141534779 491724915 84369073 915659909 23076609 570284711 11453394 85391014 558835481 346809535 958622136 920457826 968854425 703834868 793176459 499377586 112816244 80495404 455122713 296304715 478144456 232748823 394101639 928117288 402227972 668157423 507808229 361405793 866442735 355866845 734644739 931665631 877808261 82667972 730482978 150367754 741749115 348910815 71565979 289731259 729433879 582281826 943150802 51617501 780477463 408919379 385008598 483924043 96301187 776638238 657669350 412288342 345077380 704723645 260809261 808951220 645557751 569589762 832434952 31437855 505324240 98375705 969634142 483226438 125495656 282627376 525330670 882710728 491848411 609316251 855510819 306540970 967060541 413231522 566217220 855214539 466689112 706656110 919011366 136489921 128350756 728792780 441699312 53668586 370919510 471428380 337204783 20909181 426869074 367495944 794449640 983239764 633075395 717813708 847436932 437839242 636166806 53221616 705836457 579490747 76323270 499375136 565701230 188773737 987880439 825604572 352147496 620930628 463582949 749182216 830747868 533805143 520699936 902345734 354515271 766733821 995442544 503061729 195047435 160033 912631747 931374880 448863753 575150828 335725310 126840714 912339709 328084094 844949390 360815380 997636412 573816075 452990417 787055762 410753799 94828651 708130716 861618959 978526115 487601489 357822025 918066722 86897819 697237724 804079782 375757656 47949893 488082735 596697621 172081805 750982404 985805708 766022559 297516809 460048420 120208967 633143670 643374744 82177447 18123834 936358020 227967652 95352457 339489437 153769742 900361619 495799297 962934847 132285387 963599365 500561114 797471222 236144070 417707550 990740046 316963708 909253736 677196003 40446232 651441765 247757965 388054399 340876954 292865080 508994322 575547857 833652133 421744618 326042033 323606867 771605125 891882169 232983924 378157122 568527642 996095381 649282197 535139303 698411878 234436551 769263832 358338521 523900455 831589188 396420245 697858916 667546058 794549126 653194843 424681364 561454772 405430039 702479255 147088103 1826895 937148971 207024679 935032705 888017087 116344555 854907455 18678709 700378449 713274556 571328996 969034260 245097817 27478808 545467336 151074664 954932779 61347319 468493500 729121553 667253110 280519710 678400298 517331536 175520242 768020161 894257439 864491353 193069159 171125258 413861300 155396353 293804292 31409415 410866070 466531885 936814290 952673671 680290837 13019377 887568463 100649835 712030038 913887083 53593273 590818989 485879748 587071541 717985088 663241649 631274109 547858184 937123057 110366864 947333446 166659228 618394859 279186320 876325864 72049957 44628272 888416307 676539669 722722045 942413076 3831323 437368832 594891717 239471158 756032845 643731080 731967957 993787024 529905218 216977873 672646087 85733933 797514971 603758300 751370894 334115927 925658651 498400180 42863719 264147893 220414320 189810721 631692059 721170238 202653100 438257951 385120999 286348103 554002602 935430855 377220614 362111732 884509120 986588764 474375428 565279669 165680703 914423721 771400310 669106743 129947101 604366764 507111005 863391366 771351408 195886159 434789548 726025785 435685839 663440466 699812772 272572161 5386523 595337450 57803819 15690075 389398760 137512944 473396342 6797710 928805526 472696619 178451342 473251770 923326076 540863906 299136928 891657869 486136766 811402466 253929006 828237722 893745604 289202212 988398614 111492534 840742520 823749948 571757217 553464896 343504096 837380232 331917863 963693558 521685520 700279433 322195978 240302707 967725127 336748251 444109046 69258611 283773095 184106811 33726970 468685320 495544194 559463258 13460053 567668557 6555425 679502775 917801560 641572663 543637723 881824188 221339165 166698980 224693537 135107082 238709462 80945924 673551805 700700347 820746242 924033976 149210543 501663292 557032650 727896982 122149176 498756140 31422085 915065426 890065923 587024348 314032537 474045204 641558785 869670006 360047190 740048456 914903842 860878342 23192758 796590123 251198488 22224938 849371398 685597940 793051793 592678957 80698478 595918770 600112098 863774533 552292185 569493727 114224706 615433570 719480974 75200274 119696618 994049987 772317640 59043835 206574061 564634929 629384069 984959792 486661550 805786821 852093150 448182757 59597915 559810124 280400590 271497299 997535337 748937921 943721537 944486754 938348486 220991337 168138729 646202363 998172614 7970516 25728986 408364723 907575476 93544119 692887928 96641120 4719125 442607565 305877093 134330092 256791054 848809474 305735538 176317040 623634423 940357377 59891730 193036560 863434853 883421676 807997094 307288165 251168096 153199686 988386593 891118876 409034724 815506566 122987535 197296263 189739207 218716311 430287919 163507240 627374218 520497948 664430590 625836320 512937349 833715691 550168161 313187694 959574993 661611579 557209865 269824724 124637006 220154840 825527911 80509923 360822879 421407605 972306770 480566570 610030388 14362926 581552245 581588796 279865504 596725323 752842129 314331717 801797087 853131737 636722282 817591804 874834978 599434788 758890165 124616556 610986436 852308216 551821697 475383723 581578685 785113127 96459041 711971951 430042342 57405383 916264870 55663812 125721638 222044835 691060707 435142820 885349448 697797952 90358580 563921653 486518743 475876819 504317378 221996490 530479144 549811729 242286076 168678378 245915065 222195085 342939834 285707148 760952705 384918943 931627538 89596511 212274862 912373802 949883181 57338308 11260781 51275368 222391732 243832353 490165404 25580833 420258683 294744398 478560111 905369679 533934566 322184349 841090923 882271132 629012947 743052919 168302725 702600301 698898200 10018712 729178926 871224051 581639247 161072549 388986424 339990612 90971257 46723110 669589204 699058685 191229378 378732025 500947650 132564814 430282673 701084632 891416490 418676257 787658364 9586279 319092544 520176327 686876755 148894607 942863864 922281615 752666094 291235711 656526023 162157332 480781589 439003575 414228265 986761835 954265531 1048472 247551265 591627594 728765966 329771778 390639640 781517746 885325204 586388223 302214141 998484921 816553667 275233379 84609135 751513281 414213825 22829155 301520374 178362208 610162124 218756631 667485126 733388672 546920147 111845550 494810216 592770278 801466783 363739815 139998709 464529930 33171775 686508485 614954276 548090369 728897890 25884424 676876919 873059180 884568445 946277734 259448266 633195971 680824744 419398040 719979489 651892251 830561379 927573335 985192461 483675215 356253323 878161534 463158926 269198732 845010991 989959669 194515111 457920426 492540906 136816146 602230857 220136151 982142562 776414756 347598999 755132840 56720659 453517262 743171589 829561426 705213055 346419860 214727967 24769051 653124386 223744895 258487621 948439093 786696547 60756894 417036607 592562477 316021992 359103678 376452084 835931307 369599767 605957594 704604905 522337410 450814951 913927039 59401000 187841558 618130028 148125551 848212391 397605432 923560489 186906382 377747304 397326319 551551823 161315579 794141845 646816 558696355 440912778 502415812 135994734 167397451 994652180 906818623 818354254 776100443 428093254 923370621 773292619 210355348 318666596 660912710 34782526 286274194 474378209 857403140 711269938 999560129 282569226 765990700 625278079 429920267 841937617 757444316 902001999 2876231 5034733 994961272 886249214 240413520 128042527 996250704 673184282 180889994 522529038 200460752 920933505 416261786 941234073 685797140 463366424 788823177 481477823 401174143 743402576 731170884 188397894 448836865 518952383 108238859 986812935 194481877 700081018 212754668 719226734 276446213 45989410 209980908 733587648 239934322 798535701 54876218 659440793 290995615 413415492 517484177 261378963 320069288 525472644 456199616 713721785 739846302 351075545 401235247 934053504 281674568 442264011 227136115 155671919 698409036 171925392 978675995 687648808 679125971 882372633 714137419 494302039 478287142 258257416 378546126 481636145 298163241 963035230 501699179 495758512 437146313 493745918 842483332 618895271 971125628 863248073 315995380 881361209 385695902 382370485 921133375 722640067 868755389 994305301 514769975 818746732 70552738 360350451 290670284 992639505 286824073 128589668 37179632 307234836 983713227 989501102 651590067 843198723 795348651 665561511 267895755 31391842 755536555 13541454 459753027 17028993 324616177 25522352 292672770 543928401 615026043 616833212 310447003 661414039 521262812 714034278 871897128 977255819 135524223 246328281 45841732 91449355 379448430 316115059 824789694 102040947 29113129 356035402 311405008 265868609 267504692 984737554 444032181 577943186 409704665 807768853 183254042 889038238 800411022 795539048 928837638 905599235 874351555 925767266 288127897 73206701 759473299 381321612 944001562 651509198 204308320 293725424 966159109 279421918 709986492 462730852 617718852 819380747 237299013 859661484 167350217 80836912 839336143 145829706 369288830 474195720 505867812 51025818 708629041 813982985 1263667 116371397 477436583 940285396 305476571 346014154 718426829 725495401 255854837 141538756 242060291 23294819 802773592 607126417 290946667 292137359 88326687 195391919 759737533 508015196 989995458 662268084 518619623 786134103 747142656 933694451 987725767 353896683 195454739 359109184 76878724 781588346 873999533 116396822 360173470 424758621 645287671 662481647 50232115 980365516 759313509 783940142 921787168 392591257 501040283 78027050 356229139 207249175 117800132 464754322 785117470 121708523 486266467 644236123 671080544 15850460 382634130 638502217 762120645 631803937 254426767 659984650 350526180 643013280 355939509 134985640 697194005 830093060 882188568 589943637 829217982 432818410 11983804 520643238 574921030 336530314 381313844 753071188 577313606 576983325 389415629 770371080 512898825 873809613 517408700 333586489 513318077 658894431 963388383 394013901 79215967 557037524 84657052 891304174 808854414 744885165 111567769 761798753 467836617 682018282 767681721 125729889 957676573 454554900 970201065 230413318 617842474 301183909 662499812 841502642 424985712 850619552 537309317 647700266 502108728 563284292 49488599 206678814 762355039 728850434 182085028 52196041 374974407 733145447 813540302 715097014 224527988 598709269 908911428 142850302 764246441 116833906 263745864 937859148 949567009 791698289 397206470 247476586 149161072 574221391 408841762 563037383 876288394 642854804 668305140 577707649 426769827 631865631 618544487 263945242 392092356 51617600 654875622 181981156 658958609 952554727 926634544 884119972 603296769 16148418 55169866 733892561 563969440 920760816 133767770 384584595 734774611 861515899 365797757 792479704 536152647 701170121 710291350 287466800 210814113 823771585 227202570 990570165 8111545 365570284 732870289 905202124 382717383 13308254 83161098 105503786 301491626 747796299 859744138 207421139 955921393 454839096 388953004 962828509 466390648 629625777 480267757 890196375 991275596 790594904 122506410 187484222 337649988 161266393 247991822 6993638 994055120 745581754 771238049 704666192 98957851 302110965 1959954 329255354 943307293 262311623 28530314 685122281 414930708 600147384 266050427 712439435 40008104 495204040 63439978 165538456 393768337 450982603 537656357 733349238 358763119 768842667 544486954 857258369 568158337 905222785 715258684 203056852 330209612 245651053 455664918 181455057 71594512 390087914 847505486 29891497 394463649 941115388 499433098 996911626 89313502 399805075 809834013 170933773 603995497 553435458 315362559 549618117 360520669 225808739 912037344 769203003 615988664 593101409 457440253 369446711 821593983 205173201 233488038 488381742 836728137 648507130 22073996 926448935 271922613 785963215 907182314 343613190 592593982 956448864 32410025 825039116 466271525 854384105 271577296 426517472 313034502 650230753 424304497 910420374 46194552 299380601 110462708 106711729 459235559 972454259 995861157 372425844 276677525 217130844 361709371 277395401 597690609 870611756 589885493 360028643 6560421 341544703 593507154 24790711 325083222 691476534 293101656 608895026 711046865 764943415 227225229 44820623 619734660 380448747 7573207 731704434 703666028 800771866 456453079 964573291 404466232 756185905 414796570 15568723 693852839 157500357 385151700 219734718 966164351 107258809 68323566 362483394 250575875 710244073 358669035 500639441 488269191 822880523 101766790 891130033 704543301 339127494 421554185 305261733 762394656 80737017 309263032 249273694 991598765 284725819 318315975 365822261 535853031 945503956 523631621 891015313 90003917 445945314 149998113 292233031 748119843 456306085 486394763 917775854 476097604 294633351 611423101 377948205 275086640 619690647 825195409 897842267 312253849 975107428 1148803 321009661 754436381 716416829 841624505 220796493 885683218 823477015 804302694 122076471 198821143 689044441 142536327 38334624 190597606 194020757 812823987 59172639 860331710 379412718 982329253 305032493 223680433 257155502 499775430 758381196 942836727 794445071 127363057 548506200 487127093 869321830 301786811 238381148 113563645 232459622 585173576 955822631 259039667 857821782 979883338 596519972 673460959 242997032 960272181 930598918 131870093 7823459 152602480 423186869 333781468 959729219 813365790 834923903 740971261 238280033 152811376 73343800 319187733 448557637 90079645 325219526 631011640 172393701 182634586 966385811 306289862 599918773 731136833 10092209 379344649 982923093 357494327 368807080 157466682 929043102 79694627 741343308 818191008 989140052 338960159 636935534 635689840 874148433 590237818 978677554 877858947 220633055 543327425 121982432 154442080 432821800 800117642 756407293 46922840 865369525 463159495 164867572 333112797 709030228 10762881 738221979 650675788 506124198 809112942 928791369 729744679 183634409 576394575 788378401 101863216 351608386 566429125 776218019 447885055 732705090 75663655 180631226 248386471 781723144 106197123 991667581 571633141 476075817 738161244 979116498 504017116 223386671 738963321 635823724 820830940 696448031 314232367 289983696 828823346 626012298 461471749 658462467 846200307 847331092 204881128 124127634 937010026 361202662 782466228 384025950 96312818 538086490 863764353 606699025 981182877 529663038 102439739 247115733 696405058 42711896 857535121 322037680 84409480 801757645 210251384 291307948 557181273 125207810 108479562 288398614 16356937 753882091 848627926 138264794 928942974 223763982 805465102 358463361 18946530 737770037 811650044 64015048 959096747 928545201 437760242 564795050 590575970 413962019 617219248 899616830 325295023 321236338 679784087 473682765 461721666 626435202 775097402 85408244 762326208 985952489 496714795 140984276 648728242 742989558 642103700 57663444 650114768 19631811 639918896 710790804 296188742 175526080 742948690 990336245 169666105 999516081 67088354 289368992 355643774 112006252 84422752 411513564 833174968 386163361 93800228 958622552 599176402 263165862 459154121 690548243 33748287 789344729 424416862 824388662 987100348 582232900 318246039 424327749 955055066 554955395 89055622 471140792 202198372 644314183 864596119 82678125 1575800 125240409 800588875 873295552 738189923 903157605 396143099 645356190 532854154 117783293 189163739 522094124 487777011 368046761 849756333 263464749 8595309 873717720 908779249 70920256 382809581 51071777 181461695 428626875 797912824 227436246 960837040 134044722 300762029 538107282 138336423 726943908 659346465 957388478 588544080 223722181 763158347 379960208 473341473 739279657 246297843 299120093 448926526 890958965 691147530 516836749 821840751 888318502 278560063 140942537 553021975 775383205 63000709 486825440 199312866 342933162 265453435 697162899 191983358 777550581 44426207 901986909 140735870 513687580 670604156 683951562 919990091 615078590 872109010 606977710 581512431 214212846 668784317 643833178 214585237 385132803 234572543 317556192 677589750 137967107 631495514 91748989 789674581 174785049 181453643 769236243 994277521 355958836 319831394 290232126 934354089 112103915 775312083 879939334 48428822 60937919 687405320 22582111 830700175 503233826 515637285 307536750 850686647 972785028 450204812 577220931 632202592 315873289 549789006 408251809 783770367 108905447 953622486 391034804 325382645 488073035 644414047 192025516 240033490 231158295 417227998 155036602 194026549 524943649 29799665 319267110 960794693 159279487 489127926 288585522 127056879 634850943 21503004 256859036 249325054 533465953 757029734 385375540 772490746 754560695 870950517 195154076 700083863 515434063 423281173 68102012 330148837 115991366 852107508 686654760 154420750 572173053 265377878 378498153 212754292 317016752 991575010 668981254 815042367 60829262 407172833 981108689 998654374 370560873 587982926 333385332 714192850 832363874 301030480 404321420 279938197 196442633 955868952 386636816 518431099 431504103 632461859 218763233 684352209 471370369 425555415 445675507 84651297 772169695 990086153 331855208 471966043 455204273 788161466 463602288 411283125 277508740 307093382 982866624 999005963 68098546 830349568 11544119 829876510 38613089 8164828 558234933 339952833 578469030 527542657 801961993 968146749 530854203 591284467 795587157 749111633 525755924 255676669 158890963 540317633 100298886 776268621 360735093 979217263 78208611 57361422 186750816 177188745 564729316 928652477 190798001 733919032 958468081 328818214 348190795 507493203 564242489 107037802 708991541 335349195 672325660 950776625 301932264 64985794 198210470 704057660 740075861 768902028 629895548 221984897 184528695 419271775 667710788 404907249 674257927 497160033 938960391 803686298 927868922 825068922 448257661 952613121 5908990 729205090 991586118 950318261 588350009 863608094 183499045 31925295 893484591 808948529 35341905 983901720 968410121 362774322 512707716 546884605 447947035 580078804 300327684 649168893 895670115 506059685 473834896 554065535 315598928 876683085 272403536 139021613 586406902 945056920 610382857 864231688 382141009 420112598 681717071 913899144 686328380 465698185 574340305 98713356 828060194 42542769 474001720 608588085 87249179 670796377 438124536 377290960 578190122 178845635 582144963 95881512 919308160 80363412 30107709 854569198 160671928 423247231 673148545 631828385 105916466 586796787 657771521 927867832 840270631 66160268 348178886 706033379 938305276 588726980 324389360 541945622 55728862 137810358 416904797 953565892 291348623 484964792 2220539 363515888 56080719 418313198 362744269 450786932 453956865 291103186 330239006 671154621 972672454 682843122 211315608 43449136 122450279 866149979 916009099 804922704 214287156 689359886 319006698 390946065 9576248 727153921 348057314 390618419 473855592 71443168 282649289 516406368 191960250 867435576 56305065 810906880 32270011 339883703 176239241 815470503 9694365 639983762 56423696 755264676 986703630 516625403 703368477 132802529 119644924 66372368 747573039 516003392 180547399 338038696 139813150 891543220 341011771 903440130 997835970 368538637 82511382 218396261 150307114 455550805 218386897 409835215 633177871 63258381 723527455 761044298 851611363 620402908 102271684 149359621 929660205 939064039 815330383 414092024 652623857 718307997 588281274 713449907 623769580 517946073 670228795 955062689 82203244 549244469 316584963 315202036 642802063 661526413 279137568 196827860 511281449 629932150 51215563 11128408 302650833 365589078 214191326 351516782 398976399 927347566 490163532 694079746 921779407 488120842 944779478 918596840 587508863 252953242 567723405 219429110 323880276 788221773 421821747 751130229 788562037 328436789 290518108 281270146 189857809 359889940 144439336 836077520 240616246 820638119 757577006 906238853 524699969 504439514 246472708 847453233 725832236 841358919 71333872 869958203 735340296 9552473 680242305 108820119 184732776 749016136 647432859 70573496 396674146 69486347 997069735 670541813 351194094 634657244 264353137 995858993 775142478 958240642 198360090 218247090 424617594 479164695 278914099 329060165 158035434 349988797 186406543 94860046 649527887 57434143 918895969 293473110 44727352 688896108 586433891 884085533 887545768 74686816 670157182 955254145 413257154 814260400 951511112 172974929 858408481 258523081 718521792 179738518 225077446 408795038 399253421 701186396 798110679 402132549 113363397 140829186 314019140 492999215 387628895 805432200 232797601 934737431 809429240 175800082 558060490 961991289 268477037 484425972 950363639 134110097 321639080 625754543 125191293 232059010 52919471 218770137 615088913 647282403 340033238 75787006 694238926 552793723 137921007 184461531 34468624 166968968 693570088 16789729 279030490 172339334 916655849 925994020 486123961 158776467 509079382 804180671 210356245 666010607 6566688 51870012 237864118 548082819 168396789 224248021 632228541 263991404 481983643 79193755 953447284 808751647 520618546 56774855 484628583 840913617 855369600 788996753 566046484 864328597 624964381 287354313 114778298 932260430 689548068 668727325 56740802 797942667 65192421 865189271 317006421 563091381 883857701 80718208 330431390 240135319 528424296 504963646 56818855 761716300 598306384 120669185 791846013 357348179 915461533 251575752 933520494 520617039 818044715 426331424 948537655 41762177 699378613 782758411 252914008 369808758 57550335 634118034 793314554 259567041 34383726 615713631 422811863 432048586 54783761 198758527 354698202 119621699 821670496 738338730 529459370 459852338 951042385 58135381 331762758 253062850 909177837 996592431 263334478 935350567 536118888 437444452 911793557 403447878 194623913 815034851 138315467 432306091 841404119 607327237 119553250 805620528 481222912 462487329 359242574 905117154 407679800 276878675 671014115 423563696 675138990 381666353 139400153 829386524 511289027 956180133 893825461 922051604 630026123 12831118 297156837 701635289 502034581 106806247 180470522 857962720 721302032 521944239 318102607 436021819 903690683 114635056 167776547 919689079 368071399 916431675 114620440 733185842 489209746 464656024 475974136 668327970 435893205 208929705 66692253 569624367 714951649 759971379 387419061 814533219 884781766 389132309 503162068 634040462 994383032 56964400 26949637 267969309 146572293 783811781 430971405 990645600 936688028 936576281 721862277 253818971 46581817 898174087 527133065 750779082 889585427 995322401 540725657 296121660 105572478 758662117 993739011 885722145 284037328 212506016 660901968 257415549 663367309 213413280 278775223 524037480 453174644 111875583 190341044 614287621 93464799 424537922 70871888 544503111 154679129 314471305 832233353 94722752 484071610 527903064 163633536 247514551 608902831 818736027 731621470 728904691 702956293 575081474 864541068 189562407 948985649 33396302 388778770 596345923 330087972 407793200 889180269 447246617 54896311 903825327 948346119 11230470 951455514 636998728 897156039 570758727 8244875 821365810 526707861 151535089 661462628 223161447 881109741 820495522 239270643 185299973 391845518 236869383 722833236 912037902 89459564 758851894 740086389 798556330 411259555 364480894 884721783 300187146 380452344 422026998 107465044 454784725 803091870 831268273 602643446 150190648 804215480 925253174 626585495 140723597 206874894 439418307 471379629 541115415 97186054 422845809 323302717 762467080 276706720 481658858 562138582 341758263 387362634 610386690 575208475 549353010 28635357 189698923 844421155 844157377 138350752 810920606 560854332 554515957 587938329 48588839 519446921 123525349 523592527 957187151 470611165 376577542 368032709 217619306 50928373 825615212 95517020 71807386 697513618 586034792 485768833 347376345 873290638 985679816 686420966 251881604 253041347 582855875 776792427 770228150 434261231 782820503 27432764 481748713 255584525 98765817 829325652 607293283 862221775 711971324 313179721 322343769 78566893 802801645 892976865 140049167 444196015 867741856 135224007 105436731 395786373 198249604 808914744 19901694 691328365 491017424 919900305 357397741 899042427 452767280 159851452 528114379 935154294 132696551 926558125 816881153 703611789 592848666 713963234 705947640 862641845 508077387 328208386 847676332 740738841 652152610 495845106 292125064 89014721 758102168 474763558 461216472 974645881 377203841 452549828 439006629 370692501 156483511 521310046 917389077 718253433 777837687 181394443 551506741 134911878 418824909 841259267 795032589 312028969 80269067 554393265 761041979 189855200 143000045 207595007 72599404 388431985 721282395 144536013 978827088 920077227 577593384 221150648 347135875 359892925 983789711 688069919 439000300 892543388 342493643 31275444 589522053 233360579 165570473 530888766 587819051 209309311 416928796 154092838 399582740 251457172 482928530 498547313 338009119 817858720 911152363 414786968 629345528 750943510 240695294 901530815 226720187 258367451 131786012 863724960 815155692 360520400 9025771 564433661 63185548 831037030 183150461 744934955 777694024 754512470 413775489 727450246 644460451 995973549 748299511 57699923 570777823 855442345 206563708 286844525 194963846 473198458 169039216 138719799 274004234 962804173 468001303 202126262 115900349 677832285 876415339 191511 995496996 574451085 936253936 955503095 55482247 230400909 125974361 513453612 563158746 589693182 815243587 992159283 505058525 240022687 199455047 317701740 706347687 911969609 607100846 257605300 945975069 926958150 472622771 651795699 799455846 295737851 260798823 745918558 763714186 939930614 549104272 260378476 748285638 793972908 323792563 988779263 100250255 981298352 940823834 185375612 282492208 785704952 881009039 339494343 160989324 862467407 892730761 274149592 398939211 983764276 429898940 311950960 89162437 806158770 757009718 21319431 987844232 311805364 832284280 299652018 215813501 635077214 718288860 958092278 81166291 250453677 884109907 62246729 576204971 941222048 871886854 881844564 642942215 420603973 403016268 661335556 918635739 989243227 376035265 386685390 592859526 626458131 203726127 799584565 900743933 326829463 69417282 483466048 741185839 92620856 394503985 669590670 203010433 894492701 286085928 512285539 115401250 198500238 711070633 950134157 199435319 562565710 288620923 942834707 112156158 792726385 741944692 154495953 778961582 92156695 536876783 157476636 712704806 902610173 557133678 542671407 502047154 89552288 740352120 274256767 100324786 306944135 828357349 815807792 468485529 320454865 23741907 691255083 91995031 927681495 921849432 117739253 624379821 788524579 258328576 677695959 466845562 175973416 181626505 748396870 995482514 292577216 354955143 660129690 522388016 792560377 399646702 182669687 560636733 274304929 729965693 740868685 227001276 589458190 158656813 147618492 574564859 638524480 774486961 940445545 11123127 593723745 313483105 332342243 890070585 7279363 791241947 290473849 450004002 847392119 427648683 409628573 129886200 984076783 393886023 865543166 449284340 767844114 773854225 924535575 664995334 874782294 307547999 63845834 92119889 917842153 345843335 971712585 556755558 43065369 172466271 841007836 884412292 538661813 711568329 185861411 339732939 39572067 243311865 554842882 283757271 258886926 253917412 121653179 858651146 846049493 502617757 263317893 229304243 962880147 210230119 263007990 346012341 508926602 289033941 541861866 877907691 492175920 258154769 959970731 691252336 309985254 993323782 656101302 806178812 868276372 391233490 731275354 31189095 806336989 201925418 430261598 136829585 916053603 504241211 963304352 800038959 370492590 601706595 506864811 649382983 811315609 741382166 476025153 750043032 63870594 658975697 597358724 883549760 643030097 497704789 898621493 117644995 543555215 963227782 466658009 547065529 756713577 805276060 373072146 750723978 680262955 947550276 156156567 324398433 705707324 440745269 828769044 589872908 387162298 188300486 682815171 996906029 125072289 305686785 60309153 685139626 153421231 88060073 518169509 601870594 696065338 419887224 46153873 656442541 991753848 765211578 750923946 578626421 432455780 443927434 566770388 991898532 58875750 469246335 29359439 854546011 888510125 491143058 406621241 164540377 811699849 847431368 569026567 109856846 662996402 13059560 641401233 896041291 951492947 575919387 472449260 583906932 328019587 160244582 305636562 780877718 326240382 635181219 499736959 449159193 538570811 712904345 214807716 639659708 886298069 865437953 540749829 535495198 188537840 897350708 528138198 937184324 615358467 519844889 174191959 583772433 276489748 615061269 63626524 690195779 503284370 956935845 117344009 489356071 644903956 868369712 231867405 312681392 317472377 693505840 562514702 357613809 725807022 914174868 89528522 906703280 738076598 117457719 350999378 420055025 818966668 246765996 665701961 439056448 703928428 144301954 721031458 18399595 283490365 221153002 194976123 511786405 858444834 621022876 186170407 368819642 938275983 755511487 45640473 603424267 255018159 534027684 391297123 968622635 614520327 159316644 359457648 196165977 529158452 860623278 801273904 281456374 730756699 795813292 494560618 255563854 170161555 856587034 144415158 977449731 294566738 499217490 371714220 120646155 110379406 164325224 709011043 521851292 512290564 740473841 938016161 443163481 538214095 985488472 770109716 577533176 321693615 954591717 49653759 417907362 486895822 327291698 192367684 963872821 409400851 935784432 211513149 674259884 496310447 587415885 706057398 268798363 781631217 986215650 497713534 431026988 158809581 683096864 809215511 559771052 96606120 503171474 590577471 919054840 224120261 919017531 892406795 649326186 262161111 787849921 375212446 871835337 19950414 49765754 958043029 768242945 5360243 21169538 315672182 965087072 587848480 185961132 389709467 450180011 627698598 636659655 368154634 335017267 931082163 516022717 700966427 771907211 567841365 856579036 969491032 856271936 899574359 964687154 543665045 562939177 272515741 342369799 206300051 848138393 421881785 165324895 609129820 662490845 616972055 95994632 399473686 338684399 707931289 605406707 500445332 705757259 736918439 350465382 235076208 933391658 295841216 271532997 829691393 123754255 683254093 943050141 640293509 337752586 653323671 801689208 476923291 130041981 75897615 871350783 525450389 830914555 52221937 477205651 508931281 381628746 315919449 745520482 540970499 498094156 353685564 985670694 182927813 159403903 510342028 457145544 616729017 45180076 739437833 496940557 717674111 775397310 664493791 615296839 276067180 351366711 289443208 952227493 110721114 792585085 458246281 612952073 220431991 601000762 424379037 9788909 783729289 927605910 138513238 4567010 185824556 493737427 500763692 603226253 85977656 8412424 970477833 701807169 161755008 424177603 100123510 115957813 263474513 102912505 851808916 45694013 933742633 392179775 21672998 326505678 90147826 109742728 632900714 751427658 860123105 27926543 190981679 804117652 845688258 255221030 349148721 724247447 226554443 667084186 840708691 678272998 210494262 109211934 951005191 499434923 337896368 553674675 145108030 10020460 206705672 455681108 578548652 210622569 444154492 929547678 512236204 643780102 690406133 705416048 138417759 182016063 368009284 38321681 634326617 653224998 582983974 812107119 690369605 655419501 34235219 103295708 754271084 160601529 229381253 602934915 75253925 902789694 605581808 75116442 294579288 214142781 603280251 945643459 4158867 309764451 813161382 490943847 450156401 777195825 959160663 611298140 232768181 652234423 389053103 120039200 161285553 663107315 27951804 432665208 811740950 22963983 286415008 351408545 54241989 975250688 746947884 381320818 226789456 199970114 572133398 495251547 534669902 757423811 86724174 693340079 813073652 913021803 239576901 669973233 565787214 501204475 926637485 548337629 209917284 754999973 948489778 550635921 404499551 726339242 15197116 177570833 124183029 983252159 820880828 65993001 344689734 87950959 954629040 646375316 14071198 638946777 722316342 290652551 409994475 610119176 448561995 78341543 43354922 946299640 389436477 516392167 842279077 729437040 888364640 871914741 743770547 79478975 538633486 332271603 557157823 489259112 7895637 95245718 493618551 339823570 303939100 473145061 674614979 611209322 190332218 953969884 186820586 660754811 986897077 429367968 534782402 40300509 641833667 356399123 397787630 221061345 485448264 766321820 310852809 811175454 129145792 859067067 835236015 866435837 568030298 406776451 826700613 531566845 800003609 973462511 950049561 820237947 740119133 21230022 3916551 15315561 970118400 7686069 809665264 159816563 879882919 264482964 446766000 800006276 779795535 931825539 496823140 170322212 530884449 340628348 400294693 460372106 878251325 805684969 172099146 62052828 928202979 402424444 10861022 553506231 880659074 849040356 72380792 306929665 65872608 400134563 25570774 868359626 270923540 841426708 820980019 606493053 963696294 698753324 152391863 802339981 88325821 690537205 207033978 692074651 954516193 977681838 823644461 707369721 255152728 105480135 533143316 733100388 910642009 290259670 577899243 492296605 241058069 268342945 472636780 17807246 584830105 964577238 284873474 880144920 941768645 618335289 41943703 306390040 180959148 879926910 830429093 380094123 912693856 774476407 648122198 368646516 367836057 168263595 764016418 564678720 475417251 761759019 992056704 782566103 147287833 715116406 255637210 197348138 719306563 976916204 572869255 501171863 440600306 281408871 568338950 609213319 440331182 188731702 289470084 758868585 388236135 333294521 937244145 954510606 989960856 919541313 82271740 327996842 460136706 106464474 23957039 120065077 703358261 376168927 69580063 695540096 877365791 368598926 912443033 667205936 376021941 387737262 461866875 604295360 191881363 376965697 981414947 607227170 850680528 321775459 885130052 956693773 949484621 549372357 625188796 329482007 240888376 169263221 853955563 244482039 887397649 717155486 693118636 1927133 398239635 479807604 672521039 15310712 877119516 407555146 475583400 428109138 733915962 925922131 705774340 802270794 593757470 34380090 538231598 90750545 771656037 267933461 36049004 191366588 403467933 743874176 679656309 68112638 830171376 455385722 432389750 670027070 355225290 585774016 94268011 431117113 512441928 41957681 839816576 216617812 954320250 987824144 982381266 583230539 677076892 4601240 780126684 522277900 38792134 285191662 169129913 137440428 860177877 332011815 661141100 303945533 919761088 265159749 869718747 792020433 167359229 900495099 677628444 465341364 165833641 59012209 929964967 433273775 564412672 494704796 49549632 315979976 764312859 583423980 949789392 305327347 864802537 185834285 63358136 767173837 322648161 610665883 977496959 284469688 499815040 687320312 190938273 402687056 428093382 798152549 914263047 844797334 470500913 572821778 687922666 494894724 271422510 870477256 206394570 475362698 718820102 412083809 371442614 741815731 539212499 682612888 732060420 699597813 220556465 669226481 488139026 139520060 89204977 865665355 893511464 379129225 639632987 173341671 271884730 992406978 814275896 340219941 476484369 678397264 313119896 977029568 148759801 895658275 441462090 960007884 840749253 48327944 383213025 220632994 818763067 846505398 868351560 634142029 166805652 646413342 611446174 174684331 733884881 579954363 53452154 421772522 92365134 411570105 661001297 185911281 98938310 773607164 660467010 824739354 243502199 400236514 837726030 159602450 338807300 798664439 903868964 4922499 408534581 818723742 678036703 947493617 940195417 956389722 28432359 736896888 528046597 226885816 495028303 106887412 214953987 960025541 168419997 275682980 786238444 474403746 24253071 598731115 657340305 613019470 17894029 82032117 520045263 708994536 110935606 60577829 269518728 55176257 941946109 714278162 316222648 979784629 810039599 762643771 837492057 339469545 563054440 643674135 847118194 516082785 196414642 323180216 406286143 95407860 635150160 767671328 602462830 100829611 391489188 448626357 788680965 449806824 384754656 281979031 931773082 372912260 125233833 820307272 642737719 437447708 984232282 588795139 792166795 725582996 753906740 603352713 997905711 355255480 811736397 555763453 877558642 590494341 188452082 331155871 590951948 513011045 849229922 136584664 525257173 693244430 114987903 281623076 644116414 892592318 975701460 383762240 583939880 126180886 592159689 625505439 590818472 953486111 551451139 994056479 54323231 281924758 126967559 161914865 210308198 681194847 817654468 903073140 712930126 424082320 595351671 154684390 55397018 597378349 411342906 919768169 431050555 832594901 283870415 128826895 277182229 48062573 410491732 642668091 793337689 163178788 83203928 878255171 327457052 165681086 300922386 370870927 819585771 454883716 942661798 597310794 311305781 199266276 890347301 812779408 584788875 626666054 409055929 877393919 942760820 240110485 858990511 652963690 522643022 400400221 406198421 990784442 895783328 930463193 224648864 788942371 694669200 978526165 575877366 903414422 682372593 754911059 719172217 900656013 614247343 738174033 35938622 127397709 636896048 666463578 952104927 449675945 116492920 179030979 734273760 833813786 983251332 258857032 1502944 320200115 545969100 377713432 669963903 390505291 320746712 468247819 275750928 428886490 680524157 284924250 125696973 732861792 831265772 713690640 344533753 35979754 309400216 797892039 18004204 376566156 461100636 425439010 748369765 608459150 810376725 962966448 388992363 731376408 381982509 788671610 778086806 260866760 196125131 765008536 190958075 440584077 444081828 238756519 153960886 243939331 915821603 47643032 12722826 78097368 589943124 464270660 513422013 375427369 795264206 842692396 71007188 82729146 977091621 946727269 354382161 684916598 888529627 851941312 84054966 420323392 325455823 115005168 525536790 75165234 434391272 37864592 311287117 561925741 464935828 49509598 654330663 971699672 926514535 473690070 227704750 408576976 904152447 740793084 499761171 764965812 500197238 627474507 524986820 788088494 50839557 840453420 856916043 54204212 618685081 402406894 61616530 114190355 471051959 965511991 238183306 64865481 169286814 918707444 728936874 314421373 425026764 497689153 545640738 982226168 53107144 621206902 230191060 31149927 121058137 279709361 788193031 76729634 74092998 985207963 706787290 92020126 925201564 920810766 58830176 993562791 745728859 47937058 629370782 391801915 763442167 680991284 813936352 120298511 959442436 79440074 189832822 499716536 695725424 752754247 412451274 643559130 969730537 619917261 530147622 736701851 257462421 439966445 24525007 604809563 975438957 86276888 246522003 694145768 770988701 931780094 365053575 449924947 200344590 54736040 619552070 399728570 672936507 658866241 140315924 619707342 839145653 558511228 875996133 276096924 447495870 759769004 69259101 777936015 14683241 936057104 157869660 39177187 464548244 103825511 141629039 556317761 950537391 812278082 720732396 406830683 617415041 392980749 714703282 95597934 944544355 368575921 644368634 56425044 222877690 702766814 663320159 745213204 12891648 151723550 843535883 426383620 355200507 375219099 348669819 222898095 379381750 128773317 736425379 437614707 980610469 789444819 781325845 722149172 367900488 388008043 339447250 266121873 632968466 27568627 582784801 885316937 307577703 179906481 514812732 143643868 900578399 103112674 972368334 828697458 259965702 95157419 546333533 24097290 442005602 52946971 375659109 769735723 205715656 454331205 157939161 302566624 415625308 147035881 988772477 88248171 102360210 319466863 990956163 353721093 683640961 360389971 64076353 986600191 286112933 418281946 414194581 645806397 124267582 137022045 201680915 671185047 825972229 211057795 587789638 149456862 925702174 704710223 919409398 585832679 469556866 843266167 107750167 808506684 904047031 34433927 628141449 472240665 73133632 959989375 348127517 768345076 594371995 280791436 983002852 571828282 416732648 326337013 341098594 635513990 548922097 166145877 680861134 55550142 474949962 499123264 182998519 808551165 237654278 941422483 990350346 991670994 786824491 283179907 960592119 161599418 304778820 801027179 193484128 580358645 460142417 118108508 750955623 947799256 260388617 779309016 111495323 198940391 223518233 594748584 349197162 895113579 952827148 457417338 208631469 863966482 22629342 264028686 931362202 538329907 293572635 479167877 783171101 539725534 788752473 408779617 645873936 2473502 318298977 180595077 671703773 748376596 659043793 871196448 468954470 713973362 974035595 139638278 725388361 372397598 554281637 657745157 871145725 655487670 697178903 490021826 930071080 41521036 57604653 965157174 996005444 910633920 958756627 694640750 943642109 49328892 563703003 692816145 176242898 583536000 169425039 587201242 133045334 303316730 546262061 112878826 469099462 148487117 585181843 870122383 934341889 208191894 329197216 93717296 925281154 520694809 557287609 236140467 104528048 97690733 524070623 265046394 114116778 153920788 24606436 193047421 543342094 425079882 478907873 223211885 692506911 67798371 69465677 430384350 340356693 43907965 935940524 30013685 883899316 639869733 99697046 129900876 929415349 59254837 617380432 919328486 571956318 946098587 477658652 151592859 76575373 610194775 834417306 904349675 345493394 539449607 75314648 702657084 619361976 110799295 173657490 652180315 871957666 272187602 119755461 474488600 41649592 164542815 659407240 758624188 735249287 545646173 659910842 718433179 871980602 190440640 901464031 247096381 912201506 683034055 452749550 792885527 897328015 197706721 440451207 24147291 715425326 99597904 607001875 650525413 756101069 771484816 253948266 639234378 94028657 602679590 732023465 873429211 18719911 636622270 319673148 219284421 922548442 365713960 949128376 351663967 741998314 404415026 646028097 66521547 945208178 302126684 65681182 467754730 549075092 415380370 992612872 875791933 211599752 858652967 44929892 365691068 738549548 552613982 50343981 756883689 619193390 850952677 202642808 29667406 673801156 12941179 539111310 680774475 833165257 599956934 932108747 402747037 80163256 60468506 614024565 87039546 344887333 867927076 771950452 914223717 164667421 494360343 62014814 743746964 943967897 944269558 996079175 975811013 251859780 283484210 25330225 91059908 151772813 564858454 699257429 985830373 291009846 130191480 653464145 522118010 123521607 316748078 941465717 253140473 363477292 140754034 861540731 958656210 610085106 41704591 254811050 908328844 426419847 378584785 111018410 697907814 30190060 471523756 96395855 458093222 309707063 82737149 877024006 336034182 806824163 848893635 791770653 201756419 7727116 545980863 74336651 599333949 952968771 360304659 416196398 559572024 534343147 279040385 278163562 711036847 275230149 361567698 923999478 529773310 784283325 144448207 920571880 842259515 856613689 75430584 602631552 741788382 675316213 954748858 698721174 564036346 488752661 899867615 734587196 568897232 716383449 357764708 774185705 864882161 698019259 158296063 664423274 267854573 360007288 556953042 734425483 792167745 278727088 524480419 597173006 150249692 500661032 710729543 291568268 183940968 398390292 787371577 906293269 562826085 555755832 108202228 807199295 490934606 553809434 838088133 166511236 29835026 914397357 303162291 755726076 362026429 449498120 728023905 461499947 363782814 574242341 945728586 733268280 657055748 754956195 223633874 352062016 971091704 20418751 432599554 810152225 965765546 430991889 237131362 349526171 840345985 166300883 355046561 819206858 80034545 8437439 868234611 347563427 331483743 369572223 448035974 585401345 472272275 268766409 99461920 622219687 414481072 15985230 738116569 256466784 941570921 498849195 234880922 735257610 807195643 241700565 44871052 753091934 727530705 226486853 108049791 626203382 288958970 971050769 866330246 799372201 619351541 805502010 883568793 103367126 722802202 384262913 328758420 20063520 937849454 5947797 198638449 84487075 111866049 479079463 819408334 602955058 443631771 226677411 790645438 138939315 15470472 760678561 606042808 762415191 693622892 892412727 491607334 809333392 855973468 568171490 685401760 938979474 903344335 930679190 566408132 404184275 149457260 143615478 115704435 386198943 503351233 972448402 772262325 748886102 49751317 262178867 364062624 52455879 140474211 981116770 582362359 834575558 918596181 199270973 35316946 400440875 589684649 528096867 373478149 277979066 339101903 356114496 526426469 752160645 173320326 175989388 446436098 231697641 869472744 497313921 268093086 765847816 472989240 121432765 550876954 964504481 531928745 312455380 973199707 675589791 959853963 557886336 355775060 232714315 489445350 910802104 106231323 218498825 280991964 796273691 212200298 460793017 855217909 757136231 863155702 77668078 199988373 175852343 114164132 630671172 995282361 989704571 382266699 119009655 674463753 621214191 393081306 421536001 256624819 799716867 276592238 13063494 110488473 249539554 315474222 977001486 435946564 278315729 424999355 954037361 945814765 425876307 239889900 71607328 868879446 51694563 902983278 176898002 493688749 226484964 82928014 858890424 614164034 437227337 986489517 32170839 365767389 210164841 330930634 12525965 603142810 966959850 565954336 935847610 674922459 497350187 314290054 894081338 414780455 339415573 15751892 238842147 371624891 566126009 667739165 423665642 360037945 94207354 123854173 410486522 32967954 747423029 221965709 273381887 264316411 884233434 483254025 108855821 47237045 401142986 993672117 690015947 338071979 910521229 354876017 676786728 309814380 164684483 540919884 598833292 356949265 500311443 943731823 115967154 269665197 596407478 465118845 26435659 807732483 931891833 480270348 93628514 835158895 87373415 910716112 619749606 950292051 477828074 837947204 995096631 238772648 150223195 703198907 939965069 215956041 132706873 56347461 537039069 146914187 540247600 504129894 357577420 584760818 946355577 687367462 616037671 737926265 301838576 544910128 136746653 207824067 89856234 632098954 333155346 15943512 560080028 696550092 178197499 989211573 350936479 414959772 880823209 641259228 938696134 36536976 76058852 703911820 334459480 814602012 779964710 489973116 246552495 854336128 82439333 783082953 701725993 955770997 200399397 431305111 115003769 274348050 271999698 304366239 498534176 829361759 801822845 346628350 251678360 796226491 900874228 249005963 154394108 650007830 51050027 447573918 456461907 268414929 916966303 308924193 989866356 690826947 631569389 25928375 165462079 6502526 337273672 549505415 559424047 49757509 822589257 974845657 894549231 245342308 656767659 65634170 419144235 678488025 907279982 238011909 632680442 382366184 809174354 140204609 535877763 925740137 621066491 583199920 638016736 43496724 513816496 651478754 493675488 81498750 741772692 486928566 597521227 407767084 728184807 69273743 205402446 56464760 74524081 222216334 76351047 601858979 748008187 362884878 504337559 756628131 961122858 425431246 334014645 673409064 988114817 450453295 383407621 702030059 559032879 168189704 537738494 860386541 480039889 628128401 563002500 815490573 566249543 345064033 876631666 227787401 398564092 171605517 30998189 429723326 971353894 274099979 9820485 611329737 97643141 245755729 477679779 317709305 468669096 374937003 151582887 460334073 746587462 686077025 996931758 548698369 222711789 584063953 979668089 431509831 236420544 285254019 444346303 481562614 648229040 488248358 224326047 196161929 633913840 226502226 444843895 548397898 589446869 208343303 759383122 441965515 368016469 231244180 390798203 182168600 270536388 149758735 277280497 613111636 548010030 85783607 169059709 293690127 608806795 78741326 865524476 629517940 502345099 517855145 177467350 524190341 983919814 398878783 549507155 392864159 200310775 435449754 976059615 621048054 443737920 567574842 938429023 219404486 26334790 925369694 711491163 985244115 817455209 222502814 255591659 927414791 302146970 731434366 863370763 261311450 456254513 842362729 750785010 610056620 824514931 152268475 701793401 300842590 195066071 431524175 548051919 206439645 508879141 680374748 261038790 158460841 610872901 48038769 671942529 435115977 388011462 198836229 723972820 802200851 447059619 348763733 240985042 601681691 93115490 505523320 568491878 966100055 87171347 605167969 342552690 85832355 94059274 150324362 774978616 365310781 500697450 392717105 203829857 663097459 349574097 284324909 306431850 360237820 760907240 882332438 186817586 110808106 975509823 190695069 912188702 620925168 152578051 399494969 794539694 264303049 741930314 763652010 938269834 990804078 199814581 811953935 851636427 334584043 954009371 701440960 202984126 452743020 984869582 205262151 879556782 143907085 447739327 429186754 849806745 711700672 931209962 218846838 77843080 440736594 712695810 411402385 882585724 159013210 367108280 437160103 300995488 231610648 801480779 12677411 778524329 721699947 22771484 204983842 388596190 342910553 708707084 731464983 326889044 968889291 687325334 522088825 563187542 262792709 795939266 237607293 988782063 148124497 91232008 720858042 453357893 866691041 301893963 932643203 862834159 751996627 714389635 60671056 96211317 960523282 297068949 723594395 201456558 54689271 677219668 283188533 901962767 970968143 256969708 978972769 4833192 909011906 227055295 552966303 58953303 464642433 831307641 569449694 610469251 231872283 575357955 647921886 434435428 434551331 262245643 18059000 867467877 503817834 816997667 203087920 64222186 326265937 745870699 676227938 199729597 532411006 84254454 26128879 341016234 938018959 184788638 625498888 334761307 707555097 294476752 621128151 930358585 791716612 830197306 33250946 19924327 796668838 949682600 549851182 742688349 156505028 186858110 791220371 918530102 224358463 853617339 871739030 251864843 842344073 98773438 414748262 938124021 291651067 228414398 920324110 552787984 612039298 470701583 291041482 432726198 79292956 454758821 170452756 281133447 35938121 591984457 336195849 781233890 310532404 7095298 363243837 793473144 510243018 450254005 98322363 70210863 745079975 579575824 77263621 969606565 50750272 475690457 206319546 678903624 443813644 895894265 383990339 29990574 274235629 877299249 583539331 347738836 510422434 716130882 746793648 861486649 812490876 38652153 663813908 609475426 88757555 841924114 72195160 326894950 171972979 307922829 860408991 712625769 114874973 24907124 35550988 263035351 720730546 471278617 981475970 948738794 106087713 521333950 866825746 392552595 693901502 209600234 517806558 346398245 146062257 60969996 827650066 736596122 877586541 999778303 718606422 947212213 890189038 207565617 415502586 613867646 147010482 235567634 200577647 781911573 175308900 461621038 359502634 160596825 937966871 51653533 293759501 540065483 924916105 169822885 86347548 242941751 296673430 559637644 406771889 629840471 214275424 742357206 780081549 626255585 283665986 477954384 482792744 740767318 902443805 908130546 855618709 873165148 348017815 739574460 453062947 350446363 137358331 768307949 316502016 215796844 311062168 163290702 221895596 847117422 591827130 658785907 277390487 199662975 731957148 644026605 210990572 555443638 744938634 337461464 822929305 315393860 531391342 352821598 462168510 531487743 617650367 872076079 786998307 96687326 323402530 321844603 359655968 860420332 550231499 366976460 141854725 623392844 375145740 364127086 953445048 930743290 971436538 655525907 798822506 166228748 10645792 629684552 584142763 941043003 193176245 860381156 882854413 775253913 396399346 299388547 835854544 184741776 601189890 538058642 701496719 700920631 134711108 513428272 772231401 623335095 603659958 14985325 134245931 901905499 387563304 72314075 220810897 637411760 128507316 485784677 520707822 715794806 133199462 73966260 659917795 6596229 855501188 630967491 957684407 35309260 575433751 598008151 695687223 983889791 152068123 135228342 609248412 234334038 752292014 275942353 198541694 492755582 507779257 315779208 515758255 66498353 564272438 748519823 751377520 458713841 290266903 874801390 400825434 783718201 870220681 226274462 208289779 711753894 695436244 665723311 319185743 760705930 27445168 749315782 232718054 902059164 692983914 114543594 321525231 988644929 301255803 731116788 709857382 516882859 116821583 86636149 746369736 461754130 375623031 241164297 960677504 588038370 446721235 592904892 812669254 709834717 879174100 905894269 746686929 803913493 144905193 700027385 646585352 706189083 435234424 944586986 746428950 132734978 861145592 156468187 1366975 928664055 768784345 644967060 160794868 937169119 970843817 218654713 324545326 851976126 83835207 79535075 590292617 283359910 852458559 541529089 232809985 250841798 974445277 343809911 414472209 712901623 930546844 168816014 264247717 734347817 254941442 535723325 361526616 377210515 281352930 992001316 338522210 273344893 612622482 426989772 13554988 775357384 172123722 737468546 485893982 925631876 476386645 349974849 726029916 793477965 990804655 879088617 386436822 125435586 88109201 694114222 701706340 304854635 643111330 5878806 921502667 82426257 204077285 639535348 393914378 378697489 154829431 916054728 384975925 300178346 728281619 15642497 555973762 544963744 109021358 957480627 483477479 834862481 531521144 436411574 887388191 955725422 844010847 353775103 438764482 607774519 920281548 898235179 982160155 577643956 668839524 638615812 27156419 336036921 283206788 99540183 545348131 109026539 803567007 345448639 319223950 584117772 596050648 550746750 682237437 294456203 555982917 60358693 488588319 694196432 880738490 564601844 980514665 886247235 469808507 416718535 685042596 126640783 882688352 411276229 459343292 138481978 501921244 450878037 900278274 544709440 976088553 583045156 684691964 852879929 372466083 775773083 981937630 895333726 739451257 488925469 64501813 347745859 799433549 284714883 642544243 201154723 922047233 67530773 285924668 945190222 1470625 938069757 256587147 667986088 444772962 868577118 848482448 574580644 553881637 672435390 581491672 518739428 504601050 849606373 168288901 328430360 464267489 923048872 452764715 177408711 129250519 894997831 666507663 903456838 376150714 142495450 820894233 557295229 776636249 360667650 749423839 301315410 962275766 395640398 470260576 294010500 619659961 258838976 417329220 702893778 175061399 384671889 765379661 280578368 624187 98440153 629740516 24152880 750767634 863187885 532129534 120662970 742133142 703603040 836946207 895364428 737789510 776867163 608388203 493000634 368130605 864629008 160366906 602095727 508047528 451028512 33805444 621668987 433387832 43826123 115180748 385487778 186373580 960413151 417448299 472697216 110417391 549347396 397581543 227308158 290918107 91964852 754988035 980745047 699802056 73148289 387336051 202583297 904582816 760471210 748972531 456697371 909391497 879207808 908939516 624354191 69696842 528446056 959075287 409386025 123353697 432836866 940087063 16486428 188219604 461545807 115406583 233102901 628109561 897464843 74294016 427968569 929002295 674580416 58969965 48325589 73434614 269961134 306154763 371225613 770576685 961143493 369580318 562678709 121502008 569274614 898653973 189246467 485217008 39363768 827706886 921138541 100045794 33934760 311213639 286213509 987898131 335648457 579632047 485244650 552405727 274743958 519552900 257182686 273434405 31610824 693559855 915732160 442943286 792169580 392414106 974604014 698554808 330969235 307203702 588651201 131212029 861058884 352346042 948260181 108704738 856680492 157662281 842959602 350791491 160030425 122963013 510513950 641339202 752953310 729963594 541258979 312406647 474643045 197140681 286822673 659173751 240586433 623477270 997888258 886391137 724554015 979837814 974485716 444038749 195136472 416219066 906116790 625322565 817770866 200418092 793820003 684833604 357139385 187929221 876062662 250816705 786608402 246738680 566155616 856111445 444602955 675528741 251137091 907562932 867113965 91885889 450781006 146746619 33963660 32025953 566934208 102344301 47003479 101461783 32971450 278541103 57266430 700613561 521898882 769447809 465114010 367489983 647732925 737684304 890996973 236789261 864302978 910948177 856066727 604206784 312218419 66553608 781079632 409271494 720847678 185416810 18679486 167699089 753556198 364544958 342582731 548827221 540144133 209730776 489574332 152893501 649500888 86045375 212832309 811113002 861904504 381575786 36741562 119515572 683087277 248503125 976364576 380441090 238312295 491515887 782399478 144710184 833869700 637860263 991814544 989215210 261682997 507456441 890712444 665526542 51697621 208318979 475459928 687247359 350450041 843063133 100239311 990419094 209583368 700415942 502579432 156107535 997280110 560728854 333749321 995528160 969670215 915499984 293959045 639226301 733013453 707300209 464396500 528247598 443211096 40592731 130376473 928086077 696000851 973574347 8658556 461174632 251632789 437659950 908435427 147632275 33516626 781962316 354860883 693852443 324929851 806025134 173814322 437627233 927667387 443649598 386876615 552201492 497299595 660445876 237198303 935893719 983421509 410115329 888016681 336785575 737278255 268673216 690269728 455184148 414785624 900395379 274824463 207016240 847721360 646102494 235898765 296828733 294925323 814885463 972433952 914294681 304504392 467837908 813895502 219987993 607802004 197297202 971359863 129420166 284491773 164842417 377774988 374950385 373672564 572889613 36203270 156818522 599963710 323683761 681271429 188635999 248953215 796493528 452471958 602020192 333811254 676845781 535632393 970638854 417525241 627936496 795133388 227114636 962541846 574256539 466341752 334050967 398430519 65841908 143488108 541854292 889992284 115565590 388868262 827032236 806029575 296880721 430962659 9001054 712626949 545892076 532779083 524539420 124849937 426855445 6778715 591200703 385844935 67425511 915033745 324788108 199833064 399181871 226155296 861363946 51089779 532501641 735640084 227238638 661258116 394954983 581483861 174834188 605326230 517541522 633670281 525155499 379661096 594926439 175839388 538388760 618165092 835535331 448954955 242788526 138535353 678994002 708316816 529264618 437081750 776048119 433742342 254985873 317599783 686014123 215038526 655649695 456114760 614311933 564073639 93272145 38114800 914275248 266215811 745351954 246717272 465527843 621511343 924802148 559797597 666347497 14317207 147843320 942984312 91645010 565420799 173797144 480619979 258618177 738251699 851408133 503479137 410634901 4472259 913649515 707951684 704309445 332692253 829739451 422466749 829315657 8942082 646087891 147763437 965545221 954121916 433462964 715897198 159844898 256206986 2191674 293309337 91962814 158741780 539765895 781410904 913572858 174264526 327125341 20241169 3831239 61674892 327062604 995506895 614233753 547428207 664454575 771441615 232948362 647408865 82979686 17400253 457271822 880942462 211858984 712620679 471665161 367651689 499384958 197513369 92970442 524425796 986957033 226596716 492582045 312719118 449690262 995399546 289316855 886684650 88156160 908148501 348850590 902481199 852611071 329855958 883886193 641137685 475963529 774903682 895778740 338556127 923326689 194055015 507664275 775339314 518681023 273812882 704195141 439778327 370535853 550748929 436873385 69190885 137880221 356244115 501548491 975981072 463389701 606611302 447368010 634825162 557452013 353615487 674556335 718603823 505690000 418023568 878976663 331487194 781633355 360412729 683751723 379150395 267742956 474188453 839728488 460791042 748027423 907955346 574784780 347063190 630203691 466128912 764167319 981157059 935466889 316751320 571664796 256956833 619461264 82106658 778157773 556062170 618692904 602578934 54086586 543314189 169439416 947420928 667005888 32158310 462644807 74371593 9921680 79555123 336344361 724551857 63872527 674263452 494055833 585126341 667470832 977786115 788903252 26729746 664270024 24229457 158958700 600056233 50386417 841062992 608901243 609983925 626469627 404616788 301571415 687837000 814206028 373292638 437237525 98591645 906760473 78650187 65517513 765950191 910462203 797524954 949402284 426051047 86793155 185341884 274354856 285408161 415175754 42691806 849288496 250567930 514800648 753585895 268685159 714507370 850280492 557853225 780939483 623772535 439869583 406622687 156660129 552008472 814095539 311094802 663008737 98844369 591339745 940019319 146109657 972888429 744175454 992532105 169331569 348075739 66019822 875003820 94614361 981293866 574892683 806598707 216130477 103484021 381063510 395178252 369731084 122502744 580641405 455202047 489360265 405231328 619201546 909589975 822119223 170733309 643539878 882212940 377865760 23038003 877778 714220896 196346915 269428135 724093551 21668360 407285855 636880287 804666408 639445816 962475954 714130848 332316279 312544798 828895327 699510745 569554225 771622069 629203302 141665994 988873564 328622182 874591124 323121847 4966159 995350977 24755679 23224629 4405334 158746477 810809780 133213417 792796627 474975784 554316057 691894967 32164508 327383016 756722618 17353806 172714517 832476015 235411816 460997912 520677902 948550246 816441929 611229946 424793193 266045137 193999273 887285392 483618640 116436018 941039349 361735959 892074743 89557426 798206944 650550184 811197802 604942041 438517344 384323579 171815809 349024570 237165480 899784164 47513240 829952396 535638340 341149318 971069185 527203447 540213845 441389615 266204190 653734150 420853130 78828812 11391523 397361789 280589526 988453045 12995646 928911135 977628336 245008371 497475257 507327840 234467115 148585528 1194655 917994977 546097331 894997696 14828169 208144877 455436673 295786163 636450363 382456955 165885953 822950806 683279446 606454385 838787861 890069966 788716459 567797321 284887193 628260876 984561694 631673312 741413823 604244916 927907480 16488560 16301149 144035264 359841751 508242970 173538170 571902557 781187007 804470042 696958883 543891845 867069951 443597262 423389308 250727513 261240261 186276998 546008817 66332295 665919055 986408482 372001852 442803727 228298613 181405358 535031806 343978549 397585509 439048820 835503658 147251112 500361813 393872588 402312448 392144215 492872491 836829529 142972185 647563645 99101459 816231575 674115808 452186225 974589441 665969959 404533783 329622405 117463641 692495485 655042018 192762617 78140938 859198941 1106753 380650822 875486969 109331689 519465469 109641059 703691529 261634937 210426394 583923341 574487208 101631188 260601886 239831182 716957309 464883924 790897939 881757914 363057509 390058506 855795753 152134977 419956063 107688053 673851455 953594195 425463772 696629417 94446658 968404572 507977313 357365442 995118168 399105028 245970511 605857143 801070808 568545013 767749637 891335406 583572416 142774864 98473523 226151140 6686670 856334459 2136259 832817508 419855756 422222726 783545833 360906272 272317928 973298915 63242382 344619885 362101212 363636892 672420474 592036183 99748678 49145624 875021782 278752430 684673697 460717556 766820619 349281281 282378955 847688013 675768956 82868314 485616282 351650081 658945659 494018172 72426607 816101359 365329862 939160535 242843059 322708360 76669028 90198422 990211659 110603929 559918175 58446582 895598223 324970580 405033894 337153561 675337877 934258707 621897953 100249691 994369499 8866319 704763040 837668945 150482371 586804543 632272856 771641102 109389899 924299077 912719046 82750741 962110868 494480161 715221701 903513127 435102112 641370801 174684030 191938076 123954561 145033681 114145931 263701625 226642455 155872193 614106821 835690359 890151136 347006718 153398818 155712425 760999014 722041674 722838950 826413798 704172227 541550667 793935003 318923212 729442223 269675025 35862228 745556212 355840 227302580 938933242 895721762 997313288 159613761 629095583 865892765 315300392 722895967 549371102 146977644 175250082 686887209 269204883 196010508 362446926 896675530 735527667 664572919 40884998 22226029 343525330 315402101 385470027 172307699 691132992 111784065 321353688 783328268 448750941 65147100 1685435 316883350 727045319 651200253 455331424 250820661 652013855 745519401 171744832 767939756 953142052 810585925 518816757 352773290 100753770 698438677 834089318 940699193 795065810 873542261 313638147 801232867 261344253 250713832 16745727 835587293 289074285 187014368 844334505 431632027 150089971 547705700 955561739 287986084 88079195 697639960 735776468 466160020 374644500 791979743 201621606 621010956 791061261 256789069 410180877 429376011 583000785 79154788 220695824 623425142 268264546 243964080 827417277 563945726 116655215 818357737 370000185 293101379 243625494 989856527 157166393 247796355 844260693 570363556 328161267 553191245 217599224 709027624 812671039 173785916 560350438 426996457 850123330 702056277 716672323 431993981 630260144 692026108 552610037 724973845 350906594 452170750 199258252 232306524 837826131 681929287 483495320 329285723 587054623 965447574 110035742 357212509 573489104 103316311 405363082 388908671 180327443 212418866 87214885 125426667 158375120 69470883 192686628 278203522 97390400 816087757 287653914 159425907 707732559 502908916 559462685 737840612 90213084 216175855 508447083 218824476 778172098 579542834 893066968 171018159 583718327 244633937 720925847 476886731 103742967 771741381 461115846 376459730 25061979 833715417 978019108 687829600 352093948 158009709 65069643 917359260 128562496 145359910 229126308 216572135 120650034 172292448 439096771 477045239 619538000 75266005 528596065 961773339 80406495 620623402 750409067 31512968 376257045 229272407 799986020 505729211 100244478 82204036 263240247 554412746 132040898 486575253 901505700 577937412 818010049 928732839 896151734 755644649 330276846 863579248 484046025 932934728 749224246 153888914 271785744 919341530 595642385 440451878 912492811 735263167 413606311 404139923 636385957 753031840 768382322 483139458 147262898 523404100 157648017 414973187 701958055 282287033 68412064 105103032 948434736 331124950 169778849 650737770 750449917 173102740 340377333 984393972 535979904 2465919 976556095 175081259 670286038 369633164 472372265 658287689 989801203 245925463 589242182 788465817 354800429 323393555 210100947 405053637 407661766 393909683 681301250 156176292 812049391 326702190 135656466 296330137 725472729 718296229 16383541 886128230 253792845 359874111 820774792 304622975 997215894 360853636 222490634 492981793 108339896 583538134 189727298 447314428 817185754 333646773 194592535 100525066 207183139 155652748 544913231 55186131 555258368 971831537 229038252 839021871 112301015 620317725 611483428 990648098 908751142 462758558 880702161 524642730 40658934 743797265 242661488 113034920 868589429 353381868 968869625 847375413 305730732 697288607 271025452 545496637 848314702 901743838 956813322 14561419 111269716 311980200 285838438 121596888 511136004 487291585 986823834 49811542 54306588 502445389 117606609 134383932 865408734 762426583 704473522 925737981 893590040 728975232 556040637 904707759 501673949 930825737 727257425 781474155 521941860 374866323 153346510 986197332 941186347 649956830 128005250 187697104 167222394 120421817 149424158 742040229 842445698 872056391 575953319 125241630 149374849 722096627 908500721 247715991 888425928 461603022 439142004 515393901 740921203 789326942 877081863 766643826 276776082 137098522 906646679 549554970 915335230 845418576 879569216 804867548 318892673 518070680 249515326 386685979 397420046 494651894 78240876 61084059 869698062 661111332 188880114 189369069 617489898 915215776 10381700 812038714 20932000 690026768 582832041 647516806 874195988 381081967 293485715 326099155 417624305 648240466 356606519 789296850 485742276 378363817 649947369 898750233 349857276 655026057 568848937 101697409 686805879 701614243 272018109 39707027 269438964 260606295 719198438 746730671 704846893 922677631 151102637 546852630 194810601 375896098 203121308 518914882 650688639 891893889 994985171 472140912 831590518 46766182 7559337 506275371 589266966 94464860 414606949 688482316 203057305 102093415 779545773 670604387 996709225 277247232 292966461 264731731 558366272 531419870 320223808 501327267 552750263 21837542 65803849 47099719 659414653 342252743 201625204 46294403 555721328 330093381 373047874 768030661 310878959 571789834 639924130 48826533 570300433 139920999 258320965 552192491 9292279 593646641 712671884 109044445 176222687 156090916 491195323 526680226 684509808 152330167 498646070 557885223 464469413 388033958 301383865 203776661 714844850 20797046 493178481 8412583 812460429 745756864 87598928 661083934 566388247 293178216 417531882 596036601 676374285 345485408 113754313 431485553 881202481 197593452 74166718 237614282 973418303 943594979 828867094 744082242 377317266 33949758 827754166 784684712 889345336 857939430 232772151 492555094 610805651 48431617 625239823 64595982 177280648 22757681 380676959 245430246 322762797 341130365 855796176 369044297 519954480 870731283 580565777 884457838 136975866 125878847 775501888 189004187 976549739 913270114 334363626 227079259 620218009 379480593 436853920 755362175 367349301 382429815 385735016 922042295 533047978 514706779 85467881 949310767 177071748 68181042 643744964 361511472 126303650 419198060 75817604 439490860 317126547 990041952 595546468 564877404 453413928 678093685 927505258 603249954 299806381 381358782 50265343 933035960 327499896 537028920 774170781 926629931 620750956 797487335 152965521 458728107 728516118 746813111 102046341 480401934 585734021 395509401 513093292 466451527 174200244 739709688 453006574 472984188 892481380 120801256 509977428 403614946 745961462 826885046 500428753 484225945 492276055 886205096 486430453 988536176 135752741 901862087 114221907 869510887 912807196 529169767 194627899 791154532 481592620 938032468 145343275 13550956 829694008 239558319 283170493 989101711 626478772 433160093 591120382 90483727 878425893 88578509 940439117 599960438 369853191 701118534 588100676 942550002 453244249 546624163 430337353 326236001 957797900 896500435 472099132 256645783 183783000 748000598 89405730 219982134 568232193 702473161 959403012 312955392 264215669 946421477 499073973 687551184 991922715 266806985 943722465 369072454 88417237 790763453 710609361 615128291 904849198 833733492 69129300 999201590 167013229 331669857 13412196 614559837 925791103 808723489 965637986 842720488 215182334 192841507 128167791 898231887 829707671 632446630 820987264 653536135 681660984 441929717 301173987 5088372 499946792 31093223 521375382 718873358 861933610 854174211 78718628 485439450 433412733 229835060 946130773 338096382 692758056 567218789 606493883 886072133 862004077 248294196 853065784 979614124 570854509 750407683 888732368 549796239 831405659 2163031 778555647 113560669 977853507 716798558 65543913 605345583 199515069 967157434 593980217 6750344 495589767 879294936 852913135 551343401 164683873 904873565 820376999 328512700 404178475 32694038 521446736 254780358 942171386 854960651 32904084 796602951 719670670 124558960 219470777 123871626 992183887 505375193 143852181 966518757 23455365 468365543 324818508 368224795 822799405 498650383 288875987 286161838 840499209 484001287 16221873 495764841 356637812 931992105 318740149 225393182 684627322 502800802 914748001 780028333 950883341 975083498 212372187 930550814 759398772 361865677 722597468 829054505 629267610 909768776 100373218 834594259 400885067 282047838 456376710 794551524 789902086 304824982 729146963 286009063 166120491 571909097 979801647 817913562 537345098 992595140 256257563 456600818 73602745 648202514 508485158 281281686 450985410 634479460 634802489 389040661 921249067 288580754 150787734 744778717 265189969 554736801 365781682 949619909 465112622 331093267 931843155 592051732 631577633 120999176 191455332 326274266 358847504 475324524 739613937 923818477 707188651 16177576 696821781 669960368 38864682 309915078 17473516 761836172 437741557 133651435 267833215 197746877 467207073 917102367 465492769 946124482 713184354 433147698 560954542 77719930 168228176 109604478 315438290 233790003 792334204 635818670 799618804 281491602 814508685 552453461 23939680 936514049 651017950 792661070 935899796 314241180 261254704 823068914 473663557 681917866 448192396 692036143 602788809 576869046 74770377 443559972 307263825 312823576 835104937 859552016 962601962 128143932 53400856 177338899 9811558 129627445 420345910 997766091 807767101 581500548 983488223 840149911 827199848 864867374 913317903 608890661 95086300 816759585 677942770 999808485 448889830 477077430 890275728 943246713 881821883 820294072 682303457 280236746 510115791 632971480 906865406 181742594 609823112 275524229 759492291 334615098 876756307 863938833 298729637 577882605 322534243 22428741 868384369 484268058 840019659 524650107 603864350 681538478 539203338 853694013 577665032 15173526 234428539 294106624 93534057 494072282 859283571 696612044 120602986 804347657 142179188 30624453 202741254 930048989 719633542 297779670 501668369 61210972 396547805 901090927 218650651 473888641 594231176 360031754 638106854 813344986 399574275 189207216 566852671 521905019 273267661 328306032 314622165 395184677 643256879 805739335 71286962 618138587 662435261 83541577 663501604 461766528 842847812 140074392 126833138 54518869 786213190 663802550 372219802 817787963 67313856 613824908 35599431 64605882 752280073 123697809 75540583 351830681 856317782 725960418 563177703 442755820 374638026 262930020 941998923 378197581 782354541 797795318 805933529 992548704 871133361 529851066 151919749 219641885 279753986 849188246 563001840 851586060 576385477 386127682 702627185 605527308 257087626 908244132 482788726 179326560 414127861 809265772 633390366 204694140 946575321 752846036 733352221 142447158 963639939 833895829 161738319 820231905 36987708 660569002 395544946 224657584 538877828 588569705 467253080 503598342 693820832 665111299 806117822 683309302 161824390 793166738 880546879 373531779 169667145 757840537 942720643 199292140 102357964 268332339 880799591 479447823 797011433 688330727 640778124 776041957 52924300 261511769 18193068 939769589 18740815 163494543 625629599 441066990 213367087 998204103 717181508 832271925 133574239 274465814 315602959 345095444 250581767 938212124 665981070 828339088 932755457 634981847 188989605 164616039 121057017 692911887 989310031 476816381 794527280 969162452 358861156 539960236 998346455 688219464 695685019 290069001 840146110 65416367 777128509 719818556 499628511 668528425 374537989 894971673 986168948 568377758 271542998 168129880 64130225 727152250 164991414 964633261 823424591 106258605 711477827 626150942 147070914 702476550 621914617 182587683 667484330 714698200 907472653 683648116 820804381 749439633 765349686 922000809 123960563 253973356 29251695 881469602 756135291 860377782 243985950 302017905 355330620 208163132 828725143 682974306 78574077 94320560 397774609 109272619 421854382 778300888 466109665 240651500 85860818 550033693 896501207 519929460 51651520 44196594 760294487 265491819 193169737 666076439 734480855 271358224 869424742 737835205 710824962 605791384 744096624 777242851 446398136 599452882 759706874 373558985 592818629 199493842 148923072 757694752 459120205 175398325 280363922 176997939 84935203 978442122 780426714 405582316 96520887 131989757 518146712 599822184 150187490 979200615 177731164 207960253 719373345 282892146 203122404 625452618 631903648 482624008 503871210 448819322 250021644 177493638 893129042 194327317 493238069 664079752 651438855 100332216 776716143 211317289 729258444 285169934 376945835 197551363 82484780 303381726 118636251 85880877 105616685 566297474 688673559 321332178 826157431 235696294 721066023 228597676 712749047 613781337 600872568 62903605 438431786 777842641 954593173 131082200 972979919 498367421 234921200 899241928 964718803 223867719 202270865 33071174 334610888 104757855 129359241 51716822 899510010 61373615 465597521 268283289 943495768 667349234 863040745 247983098 619629216 623239328 273161972 675869862 524576969 414869909 283846991 441966435 552256088 398027155 42146125 337534112 832869681 920008026 103001540 937707227 19687461 253842645 955925369 597676971 703530185 109887859 344088661 572222452 610479939 684612922 383324712 99116304 851301979 651009534 537425041 14052739 581192135 553900327 399372431 2213195 299338988 994788019 78027610 883756303 606530059 395016379 162265164 213005898 450654087 279123981 271714781 862770596 227224258 977656460 437603249 649854785 229082303 953427129 38634444 619125792 213504346 864864153 535987771 384691646 401605370 557793432 209986884 234177360 336968083 195792911 415260635 22822273 387658304 685421908 323364885 190978503 432939863 615841095 464648980 932930865 141529414 761133460 649250044 33471739 359673426 506108873 103986274 899016269 20661803 460025870 877448573 517203462 260427735 909356048 574261809 464180468 799716407 441605420 890051784 247176397 814635120 395438776 432756332 925048623 701694516 858548596 344594296 116147783 671835573 976341177 85421740 322131267 521302473 314029080 334578706 806487992 208046453 651205837 885645467 928335595 347474226 247035289 143790121 512518106 370621442 764305668 748218730 383534843 6292586 228867466 981476369 408961345 688824739 780507875 855232086 912197290 937143617 741998260 567881329 989954545 434620549 619544085 975076425 422812985 540529276 125627619 797122970 877307607 468426309 389020001 981301395 992716529 15566840 422229968 536268554 549912193 527191617 904371145 996815212 862968229 834765495 415795111 502136161 245273265 164658882 54057634 418488984 430748009 998599719 319620775 99590486 912916341 445754578 93860708 275508106 535309710 287990341 195184308 305443041 420874315 325480824 291756134 665832978 899031102 943390905 826458308 570419247 3997683 285752097 349246761 909455932 70095080 123288539 148734641 120138203 841595677 62402949 582201384 103127131 296376927 347046584 9861666 349439459 680347464 807556603 108717068 308438548 803394369 593536232 113245248 462613223 224818563 644059177 176331516 200293225 577078613 93731497 719760517 314248735 256863881 5319309 342790851 10957720 42884935 506832861 66172979 366231714 601151737 513248952 942791203 105993863 684116408 384555965 630774723 396884175 867736844 257531285 265007962 572409129 294371290 414930188 67575331 839578500 237677528 688946777 732809007 47318999 492911013 663314938 548107731 649216097 252983081 301815792 718207478 458636865 322902210 382397154 931501027 188515792 862072302 486354477 552233584 455753048 557241447 120513103 726505034 775646288 520226375 834679501 849309104 316009837 784139493 46251142 121939867 504564914 812514946 553245110 662821508 683502549 775107325 900249943 361609900 894209877 974135457 920134308 915314880 811315039 706036030 475874556 755126202 132971770 307064331 163606446 426060333 739941502 522313614 210314525 326109247 177634330 634556331 444142792 158998815 545746789 327347288 828837487 862393431 869032889 522124278 466494692 295485195 603884505 193723595 421286776 505328915 132085666 594916386 672459541 260368456 992970717 75929764 989681335 8538692 517154018 628911339 354417091 804150998 475490730 565814408 906603556 467180658 729275505 232738529 71172599 985060869 469774314 670931215 996852687 968817825 213140601 604327733 706151185 297807821 314272362 6748633 604293655 828345378 597038109 252496905 540448922 684082674 37152959 271504669 641932794 636288187 304693975 871852805 790944525 255464376 857728607 820390130 942238992 649538574 496827035 737153004 402595481 943099426 884936264 673172374 704410344 281024438 158360120 932970743 887087823 939550599 414191531 191728051 14496284 678050574 382231909 933114302 857583511 146947609 61164164 476395000 899980159 712911428 734974038 91658502 555517283 605226696 593478190 138863305 613084247 314270094 766647974 663115286 972763319 228836092 626734605 397219157 115585883 472421333 767990818 924059953 668923201 472711285 63943022 380625381 559309929 317905086 831085051 527498023 389181596 234526536 862379298 8974607 28603997 479181074 715023824 919370177 912122142 58100838 1634047 381974316 491166098 82370494 35287001 496109851 543427252 439086967 282796334 822411113 288917386 690635249 433999972 278882352 306975667 174515932 265732734 236045475 482392471 937653824 361521440 70674116 653153300 392193841 904651698 682650786 224478648 347752283 559131152 619659888 624351958 793542281 731027732 85123701 778825525 747112409 841241300 727716 439524984 328065028 920345427 32483390 364611697 295783431 735332345 11040908 557267038 354045858 415077216 274218725 139385772 278081854 654055814 471729516 127456889 158934800 9556298 137449257 375231841 326398066 689034998 380875767 420728721 50226467 344084916 963710105 181294672 990734208 585447486 134229117 668460906 890215199 755725969 220441870 628274558 173561147 776713469 725224362 627900872 230183244 503441925 247487549 189151876 537814532 990852073 418530691 260740233 647158431 604648104 262075626 840823049 2924819 699234341 817326247 141890385 662516812 420575285 287996417 880772750 835575205 949777944 73230198 100732135 67468429 491825956 740619779 165014702 534973153 216877336 869559860 631131998 878658070 859706102 158652166 412711071 689880696 864271129 222790569 355012447 356569000 553360006 808871828 501448923 226827058 937144265 921619121 4598554 45168522 161004668 722154260 644703781 754267915 748778923 628685915 291483406 619572604 349653990 376582799 580379137 84227900 881264132 598579286 101483847 666716385 587367385 776908541 656569719 439967859 426827731 276529523 847541390 889220910 428648050 62471885 862030004 876348943 594725809 239455185 150798289 971474005 11496808 747069886 170464479 333590951 209622165 653998589 727699883 7251549 605995219 2409626 421359885 168539914 784240680 210186130 588636839 377286559 302889993 470789595 649013737 84681606 154018032 908555489 528602258 279790334 929986223 59281163 773267719 870412932 933633521 253541211 584974773 717335289 491432482 589145597 432137098 821122482 125466906 661778591 268686164 186747024 802276011 864005966 265650438 44390463 97594178 121166239 495774718 260853915 530496095 652639852 941038887 573763465 554435114 571802721 726513594 109391749 769331379 75763746 881601952 800898808 346543888 117340500 885822344 916675040 40689651 820832836 238584315 32990785 879790294 266668805 955383408 577550241 470174060 162299532 677625037 237368884 440386081 125497753 610732426 294153515 362662440 138590406 587762536 606533150 356084359 47939262 74775513 704494870 642186207 238188770 409418111 849080497 624929615 74136297 957008360 433857687 457174252 895323845 673788105 184245503 727601143 100941344 67867913 266403931 986368628 362584137 150026806 987023234 346499189 819798517 579578158 676793025 489390770 585940101 896739214 632798629 186565267 970537827 352978615 691189862 387156419 866911533 12245717 321256021 259853298 480385072 748103673 390668392 945309345 693875138 662642875 88187616 556502091 523122461 186015636 284423450 534231276 841811925 554279129 218101295 248295418 20239797 818761087 377003881 493192585 34817150 929676154 436402756 981957609 805275447 271665614 788621804 171922471 218514474 159050262 526008709 348073220 732844247 72360676 288040925 283704967 920431230 944213453 260529567 520855935 44367967 581531630 420776360 855864300 382803265 567379743 934490898 179272160 502127583 429226224 150747364 933466633 410418721 771523782 383548259 650610644 811894359 492900364 157076618 532809515 341661924 290063741 33478231 514287700 709559022 632213256 659120313 17082441 814709284 11174542 451655247 18097790 859352277 886047054 403935278 120127586 276842239 447789088 163374108 2215902 155495906 465837187 553922284 77492630 140579608 485919044 697688609 391879301 402339688 165715437 141203888 553149089 87889490 130913431 859773957 498446833 909920505 960132562 327367524 533314366 734535559 370364301 284050133 751500101 208041236 425579058 336242167 646969072 842648954 616027154 828402740 473141040 927165364 460588724 364381169 643800032 216781785 342789009 673335515 670402507 742685393 103839289 6646585 693027748 95197732 946588853 168193769 852395898 111940886 575479778 358893273 692909073 12406705 775222986 803141978 53466901 21876389 478201437 107151822 303720586 267415585 323461711 254679964 609533211 266269620 427839359 783146489 494922066 328351593 304911387 617060959 107918691 391107450 476048433 378645884 127192952 764256373 924657768 973471972 163537775 204882178 663379645 302111787 526677922 61328056 116090395 725503593 226026160 550552884 62119876 240390795 296179036 687213894 296748484 476444986 17564024 910671900 246704654 633797560 807120269 813850306 922230923 511339246 784810439 401232703 908415035 974909115 980963620 189034946 716106141 752156591 595030030 478015619 728926910 859546203 973514843 894387181 682299244 613321416 771688899 698889066 654891284 212819240 549051626 313876300 291154517 912811681 338173354 630754059 718373453 565064873 975952598 77311708 774099985 915820757 439119681 340331303 810053255 630971394 772932297 668236543 854996123 110366358 276553063 648594899 253167548 418546861 2771928 103575261 8437311 750962605 265045209 33041836 552269205 233669735 627643231 92273384 970074673 59657369 264877191 247145253 713128313 609308861 865568618 846589681 957588689 358537682 754970131 600263771 311018254 847146280 371180601 750746085 429767695 682891445 66264939 358900416 592649719 347687846 507059812 73619332 578154840 557776295 527116798 36446474 52760148 495813236 621374842 867515734 417332347 598765490 681733667 414633892 484722224 957785821 654131324 209854389 754652376 610454388 149232075 994483721 301689298 342290481 355198751 55112916 583301383 402263195 954952525 751926505 316535878 606043955 355889603 747239861 288262380 408787808 314737326 752921204 483711406 128767294 718903128 129856523 688566167 658135655 53809118 343444953 911961999 288537120 413696789 151157686 754621853 409334511 405013796 9233689 457680264 669667414 788663657 653315179 811612703 63733929 16165555 88146699 103563325 561853233 56730503 181280202 460785902 339774042 606343384 712587745 177533116 190390314 345660107 849524004 935769356 729560966 939379384 323979255 438625360 445574751 663807210 575673250 964902634 297134129 170878253 344310195 259078046 754839859 438373046 646608825 845659279 760853042 176103447 241696785 462540231 621754318 599429141 878894501 862922005 13129561 798144860 832096102 758214718 257982473 731463649 679815482 596809842 373380596 735223919 643960759 641481738 447496976 508481354 21688684 393415037 418718888 226463646 473976774 156848509 393774927 341284973 881863225 20737885 241611503 739514579 871700743 699333020 666184726 304401460 547562367 707099418 57342395 781083684 408595548 361463700 706237637 441105484 260651657 974580843 85559569 997854553 369932007 218020918 910161064 574021650 890651138 674955051 770315701 167146903 188321968 203647362 362278176 644982879 875509787 132178380 325084860 61192214 444054400 474286090 491661616 311570657 526268829 605589724 70580463 528582491 63529356 152124629 620518258 299977206 489776265 704353111 831918794 593757489 647061180 623402812 367282707 276627458 888670109 809874429 334879629 688481237 358977364 650772092 221068395 794134635 100679145 151718971 542740203 269914155 374995441 104583385 181142493 539117978 666494531 681575353 735225076 79981917 685665558 253111086 540544233 641359302 795291966 189631744 868123801 78129461 252260743 455203191 853481319 192185035 832796904 845405285 422952658 948611126 916144603 935817978 179043343 444278890 961445027 542431431 314224184 876664839 546820108 766999569 342508301 384245453 266826180 758763731 703113037 792575487 484822764 818886187 182178191 873587989 847952051 402123977 879299747 931157176 649841016 281257990 506688695 414838215 565552629 53059504 732305529 114565484 500163634 401228344 312051578 774349828 214418409 480754990 832698184 381658639 696425572 563932064 256029050 52018433 673442340 507706496 857363952 541655515 943337114 399847344 552489827 925730792 943726841 741703770 283952177 800754613 17532349 126603536 643717795 363203294 651707738 217918824 120790301 349221961 106635566 456457466 529380139 792723608 439266830 262653316 644424417 36959646 199431931 911372865 104655233 384362213 976030235 25999242 951230623 651019456 228284577 526293147 118347779 404491798 5438684 920500124 675916108 938905588 333237258 788051337 681697098 327743595 524832594 554506293 386196606 719907304 78502918 588483324 923970514 418126027 388543685 982655720 287107342 648994857 503958354 762230120 784119236 514398005 8628947 5310775 567576738 498859533 540025424 178982388 973661941 837592101 50809370 157592716 332035442 627624478 40385739 344301352 246757165 651474505 723492167 510281724 785409425 124689544 698690099 823697651 878321910 880827655 66924172 175124287 790203162 623614826 854598389 843593587 748776115 223143536 221757785 801511753 539846080 137864995 420620870 666817138 997372239 287323237 17577049 159989292 254744882 682365320 213523550 372138374 954759346 874430413 933604470 966115533 982129681 599945949 354979887 258357090 537127127 547713725 381227811 101140599 339721901 93416953 327634986 77778727 267051839 336722080 882707764 664719499 753108334 963215819 909140399 774136676 726267184 512565452 121944997 139905047 4353824 170898021 912526582 83160254 694966584 85654826 702879867 322499137 525574826 369840082 390948592 175387686 515420110 53258471 300776384 962606535 119065989 227255836 911561905 934772857 235759546 459189064 342309307 591854147 490119916 78223888 102256307 299216605 492164383 337100647 918084528 452600865 635790067 800658413 805941026 178962770 934921276 198777203 269972414 797236589 677956372 362046745 218053851 975676797 42830780 417899681 74504364 666820011 419180147 195684053 179638254 524193951 358616289 726828526 340755890 720934995 112526610 151238211 498178764 929525446 857526593 964140280 757703658 959090029 740198436 581080609 13696748 784640320 212630314 241950345 618031055 119451806 771346669 36472942 702639472 245533672 3612363 142316595 748320335 127366196 546634052 548328502 571147670 512490797 913405363 975834564 68145812 681035647 450262810 167208333 157993537 440935178 796446091 28675948 477241712 166349013 643961027 244551791 134939255 845879890 374838058 27727753 644163140 396931390 319042292 498452703 289887905 865718162 614309283 875596146 546354604 590602174 762323816 502479235 889444159 289863729 138899544 627550416 376486461 523165651 171732597 370889953 109104096 189216223 98274804 118981173 681621208 637971400 659484224 30726888 331283294 298456804 96607422 463912815 207407258 376827879 337240238 145881952 904425424 572228 120327048 345256488 427389684 315403628 627924623 410044990 690747004 215002382 43916029 466788157 215945976 119569587 72982730 6994507 203773354 12442667 753377731 559215570 487982378 309882490 579069048 263926125 209432700 952142618 796117887 940890503 393442132 687740636 474939471 291677608 831757440 907419597 806673062 806372174 92009396 109848756 20640470 836280364 647030073 643054859 217891824 586516553 268721826 937931769 633235440 282279461 621593705 928126583 169247680 106497283 368122390 550404340 379298536 45474127 780993792 290397180 952494087 536989093 587860609 95436951 972317075 327560769 334128925 889655632 159188892 578479604 36685761 542671165 422277080 862334697 883378662 714336443 32195160 410888943 165734433 358014130 159204355 903466163 698192929 565708974 339124869 658698524 941865467 586707879 136035180 731382677 421609115 619558329 548047861 162821058 143864699 871691718 811920231 146404496 125566510 581824380 545532736 471109302 204724025 46753599 691404576 819944834 713388573 198627057 228585248 96875586 846255883 867422693 682441094 362103324 178996415 130377202 900771546 807387070 972990118 342934689 469845363 839399419 685806148 248263256 627498765 697498511 60753716 311015110 240996398 657595065 942910537 149759590 845248713 425331161 912654530 57555478 93571089 383195080 998313961 364950332 634934673 13756299 538843006 522219262 968211976 986944233 699106796 534792616 525448487 842525968 423670385 550988258 264182496 687200561 389396273 288344582 253864234 468874042 415092705 514090648 668297904 859732592 407595770 502958044 527754006 893171298 539512016 331127910 144724438 409714372 539528633 783247152 355988565 940787648 842405797 906049408 620589184 938338121 301502181 289883110 365704006 635826613 124034070 112343596 445687257 883705278 556145758 869228410 24595095 795275810 40882148 942544221 494688701 594336843 630829586 431513179 105330122 971201208 831873113 788908747 867856606 202287199 64492637 674539229 457885540 424922640 69081508 706483974 56774157 315799617 224909019 839439057 371247216 344472009 143663528 106166284 177037288 804036329 526994665 162082947 706197149 492576808 50864902 262382177 69542963 988556079 526179877 3656296 923936455 692267578 362905007 215257648 397919194 620623505 153046420 59582056 707308729 271246990 967951422 329435042 625861713 484580115 593424987 977209490 410957519 218775594 975245328 946006371 595888279 468483973 132823727 94900059 170072933 197896316 584373941 645545557 343554597 412377584 278546866 732502822 314558506 100065956 638977008 654617520 250195649 669390997 141145784 381287426 912927220 71795621 340868098 227187479 268014535 663558150 705583292 43017361 971029815 606418611 927705703 9439871 15480450 565498461 137917232 302473228 632825938 926992425 398271023 580330793 949194351 700997023 489793885 370700256 361385090 866076353 113035236 422918595 573678810 489241525 723938938 526865022 27413612 295182190 133860091 897632702 567752629 881467581 379479283 791444188 15551011 685646541 215544938 200873609 67388216 823203800 349180735 68174497 780000647 825424113 944664909 388489848 510904636 646195464 371483338 692835309 790874372 863547058 131561982 737789823 456043224 699191816 504047806 743131930 138670602 436706164 617643879 868362095 368150888 686300904 795663101 642043801 575388579 116643822 725128955 845604348 410171578 827606233 460060402 907130095 963588626 630688710 646268996 814537612 115705061 495501586 26785155 764708738 191398109 913390330 216055721 193596343 500339010 380505408 186952918 293063683 526808332 370355880 360153394 669671349 961941618 715233696 888577238 738954833 817078089 553569445 886478712 784348587 397406588 702635286 923618453 424045291 74388656 382147077 149736957 785950737 862189237 909625832 703119648 423019101 653350444 530746616 689629842 702541439 764670215 133682085 229860615 974327837 854885096 296243878 448701420 878339282 571207239 526985426 154268350 478700921 115504656 36626670 506600092 634974278 564067591 624416665 466289779 83708174 310780871 346299445 241583184 84972750 204912615 221062033 520552646 804192570 410742563 765163353 240138937 746182737 472167320 385730939 719702096 543535532 912021321 532977760 366566758 309954336 262245951 511720922 480166471 703485725 446654682 668374968 249105437 349447018 756008101 729983910 111145642 515457869 260910729 800380947 952025989 222735076 164414370 811007154 400345128 533369033 979975164 247829729 330121649 358721584 976430495 873085996 340081172 835467681 499813224 293572768 46474625 919528965 830252766 645777441 491199851 851292214 291912270 6330924 852516790 860476264 889294017 253096902 707342208 7166825 659372771 221445388 818840298 92277047 35273549 861691298 159539095 233019546 211734897 157862844 820724447 572445428 990852968 983361328 261420624 164094156 641119847 701342878 954035202 58317674 686111362 289752894 464107870 865665756 308504861 425385403 688239828 499390151 561676297 783378999 539459142 693376588 484291226 850101490 653902755 269262392 408347555 560215959 341987678 849028584 802094389 268223045 212712303 910742010 504563939 964005574 810383821 725410196 342142813 530229548 960888939 890765389 409742073 40297803 5903530 886308315 977660264 579302794 691029348 823880663 893321669 510489578 779655745 759005684 256273271 917464360 224886750 493327075 660739976 25000627 579498146 423865198 369779645 975619953 630750226 987442759 277037719 686605271 91027986 533110204 556667138 808718482 358845913 384835929 574815263 339868986 391936684 369490169 762846789 695266948 510480209 98714932 835418693 543603163 951064657 578388864 718625247 11506562 943775220 273667500 924903064 805126510 196347232 633870266 239068372 169404893 755498711 875129115 212529697 810902683 590198431 794778841 541558692 346647362 566975715 55179080 536667814 345332807 331208659 513216336 581757196 440529197 956316033 478072784 701222195 772892413 260574177 695272270 133306351 442940207 766793561 569550983 358297679 697106035 880586547 873999463 312947055 304911224 229692581 763682345 787573729 108951018 39502623 403817866 537103526 839966122 479176977 79243249 810431217 428328787 993337718 146028651 548309492 935325338 778564135 507135987 628688730 311264284 994188093 274872294 211221376 960335217 918584923 473246674 154804383 360698359 878769854 603415394 673600401 418399441 680124684 138154034 205570735 310765432 568165414 882466715 624265254 143926571 15039089 435606395 286953706 305720842 497857959 171476124 75595605 953595032 77661132 97922320 452040517 487688932 410108205 882541384 431287469 840009449 21008237 594521167 972047735 712327707 466924800 85689694 656915901 864564584 259501469 171685995 250513085 539563289 200935045 242025533 275096894 984583931 169211629 724793633 33932803 610016067 928859510 529867501 75133505 497117378 878816762 866420750 793168530 862275520 464259932 873044996 92601379 674829445 161542987 848397580 966860449 303937515 520252810 836590349 841763498 696533211 477042578 879517038 881570142 593630693 718939913 323567757 164161139 299188990 242589120 885468507 631948094 496112755 755286719 996487238 483066680 443985072 850504250 898458326 750407549 6074567 705316994 755015590 189014728 150615423 984178239 728656659 445085992 489660279 967295569 684206766 6060637 224939698 624895906 349618174 356286811 216790812 458958127 70117662 49937039 67734972 159598236 388854473 98544808 925275862 216321128 129248848 321907705 877342617 745475975 342876108 573268404 735756434 970469595 850651301 706339372 794447314 942721150 561019730 432450582 767960468 472376965 250347528 352298781 105533334 310016517 967439612 391939823 877008618 685000072 515699350 472674938 283755540 725359938 839462646 620079120 742434174 146096663 310621911 117359654 912399075 940723185 942520645 768922148 54736304 693697229 894947308 9713631 126637297 657661367 438804791 688300772 244321649 459629558 49587317 753129988 542433201 248625308 590747339 374836437 38969756 966870223 916033662 24411290 85585223 188446232 604042296 617766831 625392519 102601248 663573487 1700495 656523727 961390644 824340795 240473845 215003332 173717300 870675795 903635017 544501739 996576101 921480640 897842652 128545818 359224390 983907317 131046880 269395363 721309654 307015264 46142076 461574973 84300855 778155629 133339894 421226746 770982132 213052826 659543201 573051542 899560305 665412458 318405765 450100637 350402297 589053565 793861338 22698589 930117363 694557221 371227793 577125665 474552099 628837484 2816996 762646600 300811619 450161468 661440765 983323676 409838095 997540956 651848867 464662732 228152303 967496717 646653588 858513368 752468240 307551862 409094231 484074265 39340090 491975059 340042209 109705438 554912600 989168215 156152723 183485333 255675864 568885281 499948540 462238063 659908771 503962934 128308131 555675961 644967777 852924596 869108870 205276934 24800622 73596644 149733825 986960800 237783130 720411131 630436093 657607429 926775289 156532292 32391287 404469614 408090354 518006152 838424805 118236939 387885761 538660227 899345014 526400255 357467225 624647856 774132616 541575919 715588808 789297091 253505323 79393504 398354568 752488461 482285968 288831065 492455349 751502736 406850010 989408037 418823730 843093162 657928702 607378251 38878379 785205672 584593233 784906432 603956194 469005848 144354873 383897361 136363788 252640249 638706007 210470089 640609989 321411404 652741308 176936669 724139455 114726061 13540610 263173674 192452430 194962400 885392891 57022169 62982120 14945997 839264493 407527435 80445339 792282829 188371222 313010347 282369485 994396921 955232713 519155460 858475093 42320188 481311711 106005833 783140546 197281744 787717930 606991202 246745385 307043196 469437431 814093330 594965724 863097474 370100253 550316270 21940573 356782545 686940965 72119019 256495827 674283168 674555185 612603821 985709658 13760572 190867893 594748727 322472311 287226932 389973808 89812947 741903515 442360634 173407551 64287337 891904752 525112601 697916158 625791236 172402697 411401889 876557420 587938561 17527343 96245595 213206693 934084320 432770151 348906524 758288104 998921622 9742392 343468124 897918889 672999620 995160609 697307280 460663065 330845398 121012024 175197138 991698138 957180737 895773935 998456010 144629266 933038361 731722916 407452924 798349248 316428572 732701865 870839663 810731526 533659088 831322686 398888006 755048596 562955138 735964820 104013313 246495319 181786922 668799019 580436162 124245565 853056772 105244398 734376183 925539708 889409362 869642490 315402999 982174681 835411141 111640307 269465447 432957375 464773780 77101590 956968196 825283683 769071010 331689423 31969487 36036065 142374820 603539799 228601513 410828937 590859676 138006964 556897848 197300171 535999205 249663658 40772730 92691538 519208196 283748112 440411688 236560135 160092493 88343444 189160541 412682851 608621745 123397886 325623102 852264937 249442828 771821401 941327485 726713218 474996898 77630685 627988695 329232589 702594836 562899172 274207393 257012468 585763382 868791033 1126315 586365214 200846607 872785196 54206421 495367586 315302128 143122625 819099824 95952531 371087373 456561312 715674774 599383323 173556974 890157776 569357852 692272307 796850052 147785587 592955890 83394080 391611599 513289096 475169389 290779627 968705782 316208879 951789604 526876152 469728995 697828626 486463246 297451621 851791924 43564463 910911756 374419027 735641120 406851268 289176588 721059407 651818186 915361125 493935683 916228829 613144115 796264083 682944738 65342103 178315592 538955233 189333081 667052952 721472595 171862654 442973581 58121389 489150341 355254751 891630889 408186605 673899561 515934821 856608103 802293236 700540809 691381916 173346200 175527107 72012823 89485602 880027802 568306320 162539294 619032088 593548481 834444880 711147930 591724372 543735341 745907137 816264052 741527473 620867597 722188210 844558377 942783842 708418907 35517013 291339827 512658303 765868805 71384527 835785700 44176402 680523077 457069119 739977833 412411963 497120049 466706548 257317705 771108720 345865751 891868496 931250559 987023354 911256812 754751313 37284293 567176581 62045344 377521685 723451676 240489682 50076869 551050459 95247354 634298495 379099911 680692244 330390951 38341281 153488946 818710452 913431696 458372324 611364106 907026616 303230450 894048374 540788151 961617108 833155005 186855925 366424675 259723177 101212158 898022168 431400980 339616463 909872976 231790340 216738936 347534153 356403748 442578569 546237922 545604910 912541543 415702923 603616365 448234969 877570277 923384331 126409136 209839333 43770611 965590084 888912529 161267006 711219445 800462785 342295429 425267759 154478194 223006021 78737106 879114565 254427116 193311662 120676452 223566987 170325266 235380698 535301077 165972292 909202297 539064799 750070289 922304008 970062499 491666575 21566607 330533055 45476507 813040182 998985559 613830461 240925994 689709626 665624797 95264488 548527336 371225495 98324640 832954876 517038433 680196765 780125843 466960897 42727114 518497000 105692931 420475467 142570069 886219887 481236898 353225684 302110064 240787677 758572251 595794201 590390377 267892030 388076261 549633867 101157118 858571520 596051923 549128959 649519695 762316215 467575137 642942732 609708002 676978926 746114207 366068614 476223784 612508664 471707213 666775574 357835116 906529447 441369008 883322416 760004782 481464319 959548171 678876022 256718827 502853321 308519795 188854554 763247253 493792189 531550122 966800857 934899405 40467504 100536696 379990192 214565230 290185206 736420320 979559716 662363827 109423800 76407903 894878449 493491682 106336156 260202079 247848191 520742115 388692433 655013596 646414583 905795294 609739460 554126059 952454318 83287662 313443275 530054237 865100684 490980452 722246276 780556615 512335566 992708867 508373231 285775132 810945214 206486366 856515186 938628174 394144750 956054378 683365102 176980291 290262905 430700886 75879764 950271762 277565120 326268999 199327262 493714363 695473477 710450018 51265388 825930172 403471553 216918431 377836858 954736065 309835229 159529655 215211059 300740331 441242684 215137180 803237017 925642474 584887012 60713483 48940331 975105997 843460221 998363797 489014947 909211765 690220001 581891302 886316913 581349089 411943944 487722725 819975963 366038135 310803644 386260158 128023097 132920701 434211497 775696790 998271094 185910033 773879653 717908633 331186396 152923939 807273750 98197116 732459009 6222150 420422205 793877189 70264845 291297276 145796193 861676005 420139335 619179577 283460889 157677952 771730007 121479073 103624292 956504067 880036066 149913034 75394446 333258488 296437539 131037167 97961345 652625070 933868558 826323913 772685445 122133602 468835105 373869137 870237290 399507045 788476144 814919979 414772800 776733616 387487413 146570765 443694528 248836206 283922708 882609028 435017368 995548052 730844246 623139892 258372537 663514928 12916264 227054735 680851270 711587492 245467618 707857589 647032193 325739315 994521123 967776629 365655269 667385039 459121945 110026936 441392163 64657033 658530692 600391188 41434534 992915949 119648977 182997249 332474890 463645690 301657218 652226 718106601 413476238 942742240 225949443 72969125 53528313 830081923 196727056 424428553 123010087 583961382 730086214 961418233 125275265 61997011 326372250 264441609 705842048 914304402 67703765 28561119 37155346 259181771 374883117 904340127 274860023 723745741 170420498 138222575 290179367 900726052 124682394 949837286 607230326 972918278 890012647 741746611 165761872 851877499 201591028 10833079 490837382 540673148 229271700 339080069 777163264 379186341 893818350 99737269 321652399 270512105 218542961 336666367 657481178 708615683 512883594 597949787 175370683 976961407 729502925 399755430 835890698 241144197 759173704 907103457 39504659 7610572 130645887 74101013 53348906 898494796 335739266 88695895 417207073 408877837 486310626 407268889 482893486 80708526 826981284 186849571 266260911 658407338 98112646 42935980 727585377 963777635 954325101 98429980 623055075 54862765 80867389 995654086 426059830 850304166 296511868 418488500 716199869 705797135 420144811 386083543 527772180 59889014 459500365 868966220 224459508 840925445 513373503 573860592 683964329 584337904 739837027 288098885 850588051 959934524 238513092 453407178 74817082 110720763 332032602 456658748 731935426 634550549 836940621 715678037 811589626 658039410 244153992 545923939 408706818 401480574 234906688 989518630 306464570 161418034 958356566 985785710 238956541 174559593 76870465 305869831 360077496 166304939 159622867 721903871 385412489 334374735 309162359 247407670 451514113 799082990 240339048 406749538 69458583 444212956 362372350 905028757 494760998 357975804 580570123 21000252 578042643 140622361 203826167 762457172 472394891 699233542 375042849 292713460 529742430 363891667 338120426 807700512 518868011 790561924 382847108 235735526 974262609 150019103 589664198 467011547 830280392 75417710 687253106 303970802 889638189 741892092 350044413 179192417 121086730 429755130 656220520 460025231 754714548 467632088 507247507 933360402 861680223 705274564 96366461 194778902 777187980 316078043 431234631 907806279 745190441 368545772 895204366 509971779 839756457 446262744 836887833 495554495 495397747 741116673 740608161 863677592 385820353 407307492 206961235 872556281 631544428 880252352 141638271 935877444 192463632 982202176 613377291 925182562 939402506 603918210 121988980 976099217 332786388 293437102 456708478 785473253 823816489 471700436 26847942 896710669 844502135 707851575 986927804 913261058 783007104 703713353 275628034 353786808 334387946 40407047 90038804 99833994 863753933 620247747 349185355 289718813 349149269 819160973 906609129 252240088 640131473 411785990 51337853 74438703 469471605 587339320 958152189 432787102 755200132 424386152 962204935 624127697 117426567 788295059 955868888 922862964 184988332 408480787 932130232 388649116 334110267 897798340 723324937 349845707 570766017 544802487 70778756 204846838 402151228 166938255 604133044 384364964 134917279 185998869 809055237 306746799 664222319 902765902 866622898 593493280 34987255 926047042 69206175 272214734 58058051 233636522 879732708 481481589 150401472 542144713 876450660 457199528 878878331 236401209 803661859 240044901 518356711 154928119 328094201 609414276 491753138 352588072 412146725 348830165 767602932 914095182 696984940 57168015 983964831 380544308 420992825 63547127 423153275 359822281 731049509 229838641 131169433 638410121 807912356 783441684 402063704 892783603 34216481 281104210 690582002 301516774 391214609 544359847 420573307 933206342 313718096 686348141 926419019 126370641 453213879 325757916 19016654 854408589 805258129 685269218 473124879 220039106 613801442 390870131 277425657 721584614 880449225 88185749 548969457 759466472 577511726 715247324 498742584 816464119 666675612 271175649 957790885 435725185 954643085 634678145 930785606 529228771 667740438 99708823 296499584 659281872 614478337 886486002 597039263 216935762 542151853 122155199 890355680 468638438 646072270 996269503 257875658 625001863 675922616 572072346 700297941 867793695 388428825 129439134 602670136 730595490 429270256 143444733 397834551 245901646 828206724 914626542 161829071 46184609 897297985 2683935 952543222 114021166 718395124 453426726 68815153 68375202 235417405 294425243 677652773 242633908 183803114 763094034 235220560 809977069 516788356 667207300 423262772 744798048 218343594 181060955 249985862 76852381 425024202 313832565 218235190 387087532 432639315 678538170 283281808 561208325 885755281 257496117 511561446 715779197 219254204 555910293 734817790 252224739 959697653 7126888 705351212 303617162 31682284 627786096 10620217 607864178 822092196 167356428 247539156 917322872 157578029 485596063 220771593 916198228 171509877 370232763 616136297 976142659 971331021 451557045 201534996 590579264 113799369 191639003 512319954 537008900 217438447 885519309 756411720 764088238 129729069 422895537 63560639 556114057 778115617 40220157 837928923 412116940 416260994 578392539 903289923 242335114 286659518 36633642 985277542 474863043 327256947 389604525 44111158 749886367 296426231 212749889 768928175 995531001 404910968 236010602 827225711 317301448 670924242 49386537 83504378 24704433 729148722 243887993 824628282 760637705 629207384 691564921 113879261 591438492 968206893 448732914 233612913 595290501 674668808 72562382 96799755 634796224 568793497 430264889 835317140 802116288 383615892 782597679 17720717 391806066 489732082 789856671 782198430 636159245 30801358 129725076 44510041 500153286 341539277 937346657 65881469 881063810 562214175 925584810 343088803 812188111 941847290 691711761 865149830 277760781 148833778 643473145 847569419 499360333 482142042 563997493 916000817 765577446 372793640 830475011 245659007 978780827 601396395 700264393 410691089 964942152 656417335 492500336 97518276 329177955 96079807 221459409 939057475 922406620 95911205 411828325 302066898 354768162 162937546 248341340 969343184 419400601 830057377 729474771 965106960 378870575 302758904 743945182 936824673 35451010 561018271 357225493 901350921 166152905 27250781 233552135 829433133 989067306 391644507 269627220 977061459 630888411 855287426 678946496 973252249 859161251 676224021 504176476 579793349 301636966 298896815 602718889 713199450 85591902 513473539 266718422 677473821 561389178 428145996 674067153 785292801 150219821 103385961 421449226 87538226 259743251 686550998 351410416 13142826 924616182 82580079 322734367 16982315 837476672 712549104 366790842 884191866 181666849 797860564 29499746 428784294 996278963 379418075 487645329 998280856 73198789 952883829 250517944 188934228 876628902 72702968 454191210 954841901 739066462 260771323 361138768 251845255 61464411 139866992 12108383 252864538 65309151 439674909 556863948 389155907 934805993 395488239 162180169 612189461 214640669 848764373 128444831 486076105 819411333 431423705 672079759 936315611 355948122 454052522 274949249 637509971 165160465 17033963 620197811 434032182 627340598 477552344 603916197 669047093 257930309 359980209 450742479 785549914 435089667 420404381 758462796 948841400 210301851 115070458 625742045 254668713 850599864 418712497 594205465 528411613 124959075 901426582 703781467 10831259 271305995 605696288 339739392 655774295 255426286 332125636 695605773 158169457 603859168 568324979 835324201 604300665 810762589 452675562 757472344 376433072 222091421 905860107 519480890 509418944 827459634 909537600 953162107 164265651 911951379 807474363 357393705 863539312 479284402 339797070 548105022 959680925 574941927 680484137 995384810 322331753 476793139 567936060 639593603 41714702 846006567 687845543 237189262 269542975 887216908 150382316 193740784 651981121 893353365 854374852 46255592 170070991 192164948 813316905 664050631 435259076 858510103 601021132 752076121 656939774 722828483 174120663 622758624 268793405 116074022 507990906 105993970 687764606 678460957 88622933 142962417 409797112 666320991 336887662 592431199 336506198 853765601 670148417 291719438 340092223 153850749 385104930 191234353 550376222 530069366 541296492 465176765 575601664 175631118 929678148 848746099 944994933 196846355 719760948 907704220 213318642 2644339 34400458 679470656 520505363 470688981 545925674 817543109 49907671 6710565 56181361 292078540 112605789 715019583 950004103 618953724 33911210 524838180 990648816 9018571 798326985 473842830 244319414 681079337 137537202 675859918 718280724 46838182 478582224 907302460 906048298 46094679 330698520 411484233 375971113 984487316 264451006 311816437 194543705 822064097 191374110 801175892 621193187 124138032 874744946 59755911 236978019 839529488 552466602 785964390 708787514 501310628 85246118 143755644 640524840 955477405 624165573 234723564 895798077 115950454 413312848 396956830 35074561 506359922 820846089 216903458 498312966 523601034 101865006 141495977 374742888 262124007 27112171 967627464 42840956 60612711 326202189 477100416 300379074 772349294 331745703 967618645 841182321 527720030 270494661 86115312 416976979 748615635 590536896 425441812 323531165 736276223 329265675 260429732 556333444 450934667 256387577 649866611 974183346 525730155 519000600 477057262 397190288 305141390 720496808 722908879 842651788 822673148 182594149 135744771 291493052 541566903 116768750 479635400 235636671 985869667 115992669 909880051 480616755 531634196 627435562 640855198 300732133 815780383 278788874 794384930 896143622 5762578 599708067 672281061 689869872 352544145 714265084 950135960 283175121 84366330 559715317 847720552 107415332 205892818 826309500 293746961 529890677 64660334 588130072 979870199 163797116 41149079 576415532 312360958 122359361 147295565 129679467 143347506 893157429 711267224 101306797 230622313 543557636 179059032 51661054 227642308 512551839 40997023 765255450 189100967 935802637 882151811 748152943 682665532 943814293 370163797 978805438 517367764 200983065 895790058 617856967 698314584 123664533 473412352 72781222 285791901 869629990 223962543 953031905 815494622 819600391 496853721 981565642 347765098 597113917 369205499 301436369 431559579 11585568 96330511 729288984 969971013 427776446 8826905 176904471 779394360 34569141 957574480 536270782 484913201 305658017 73453906 240564346 982602982 602228217 230929562 133346292 534273089 242931598 376754857 696256835 773123107 521970996 270996192 798431294 362391660 154874226 696064255 56625430 458022796 173315182 642461512 675002782 700728424 712951723 335263063 258681826 511372343 493800830 491849916 658911593 824042031 681539984 63066938 572263869 386441734 369508097 468122442 512603894 461828799 391874617 279930436 590380330 144812652 891794633 447884211 760022421 899605257 171599187 121728969 245674761 115820592 37534098 763928645 107838223 873343749 21336285 928304926 56798163 118683528 464849187 617578948 151390203 372127940 694043220 643105227 449903493 83413991 440478913 793194926 89709382 226249980 46415884 247626789 106930456 634548108 567184006 668941710 450273515 331880666 210431781 77149222 103092296 732091377 734398772 68475742 123128427 374498986 527866011 970676909 57444692 117637401 108494098 583632240 747607103 627728516 709259572 527745667 154086434 26963513 407371489 254863324 127343070 592514717 662500504 289230797 148171893 341554231 611859318 80562961 877205531 90890164 312683933 517304200 127740396 658708732 305006775 984921253 602532589 376754992 667379295 340578346 793683333 952739257 216822167 150605924 728476828 911623478 591932926 429067752 382930576 774500907 818240844 925344730 421089050 591638419 84948230 382905968 412805339 997631 344268778 253454942 422660937 223986887 902513723 238708871 660657069 214602710 831004806 211796940 133916128 41635794 212948426 406680864 852010119 603695952 972775230 255655674 540389865 467215023 881586120 930611437 24486644 618334128 574549194 890191214 740304847 890694606 388413583 922309614 571924632 332954743 220162914 809236831 33857990 534213371 422380883 543337884 154308281 664618675 415983490 6829141 71208129 83970694 977768454 780884947 905757780 689375274 375508663 776069876 211530355 304317281 381476877 938608322 133878962 180676899 615339923 498450077 437120061 862709070 141634191 163042161 470284428 331998008 580512228 753048655 709956156 833886926 389991503 566353452 799170720 127878254 107950734 598089017 722711569 81075490 73091221 809210055 862329998 837656164 124461211 799929167 224299511 608915031 220076074 57480488 763400210 811567725 162753497 72270575 383800172 587313622 158489825 812823702 181437829 289015798 431176263 351806345 685096222 783770490 57857242 603238780 594261466 235224333 176925762 825563441 266708214 994009223 377788351 552956015 337756204 822313181 457223386 460564319 961258340 419106732 972127869 175833238 775311051 347770369 117526362 394389389 711854636 144500577 295422330 619075089 578764948 767485046 770775643 511049765 238993967 118584492 330480611 362669029 798796464 750854431 207384549 723612735 672351999 184969679 80802130 400032976 384330648 291447274 453420383 722073863 867425815 931469724 956371828 744692425 41367451 922209220 956622005 21168285 568310920 947334140 690013496 920513825 652568258 96623269 950378234 501058325 777627105 756231425 678204602 134053613 486061406 32714866 401195287 263409751 968868738 983438412 89067175 648750717 54485198 430593006 54822906 257004470 503025768 468808862 53799752 930430596 70943346 12418047 79713077 880422477 229684553 326390294 532480749 258029766 618039205 437023299 272247362 222954220 169714925 863005494 252473046 903632012 82594603 396443678 427879331 777463881 517571080 66974867 197360777 268424286 525764182 543314119 305279587 188255975 811720901 381539930 303896925 410011288 426339358 757789760 232699689 230155919 974039406 694516770 466279482 617369449 406830006 430119143 283178160 487227935 339517042 180870484 560371260 19524397 787195516 822652773 580602328 871723569 851757982 918870453 166020441 211638690 783434125 432035398 98383227 383783422 442903773 471899324 101398793 561556605 532869706 877138584 30671603 651833165 687288808 35244606 297777786 632426709 808023908 536658189 594461271 381464314 311633312 957092753 824912172 572677053 659032027 310159422 330541038 413688184 735357028 532793865 741573426 515684080 250475368 654851434 738915832 771125828 551422658 327588579 699248750 559169466 250785013 212248361 320156633 820210417 272713616 561486569 1630705 57588958 62872984 686387621 15529440 553324217 764537725 828508042 613806541 565553860 399782927 524564306 569775763 398133677 577596773 171965602 976836250 909995924 367478374 901697513 770201577 25529389 655873425 402937544 484085999 289295996 843832807 905050692 304875405 15414490 940698034 425221922 938121935 930788656 861825341 916263590 617866866 74059006 987458136 921498716 698086863 108470666 69066555 43062683 532155760 816708818 178602192 143114171 76947038 526551906 686711454 319385894 282108444 416968563 757328652 459623021 879582161 748245261 640103414 446045511 413168167 625269801 329670311 78636765 885429436 169922339 126974361 464785927 58754670 934183666 201856678 243768850 553292712 901185028 551865938 28676470 555190752 65129468 203128496 750155941 297971349 967118694 419617963 866052277 115092461 198788661 608325322 863740839 804060124 480686622 253851139 837741617 628053217 292338680 151306466 885117593 183935847 548116400 754719971 701117619 983262551 288265884 774689226 603426989 841433939 808448161 278792374 987628753 247728613 895282671 905312392 259626538 585403988 504146946 849312655 30395360 233109078 49346924 365969131 130951184 581904580 310628602 81522587 131706757 468138807 624749425 595970296 330640655 305938207 309297922 507681358 745790984 31774182 299832718 340586311 633504967 484054850 943174767 903237652 502474478 279660440 993419829 87171703 589064427 138394740 628320334 461377812 809217613 137276098 210273628 871476475 84377235 163506227 623412491 458157787 650270458 365360459 106046088 368651571 100906005 589356148 38814675 693257107 288776355 69733664 319542684 812595988 937728494 609209935 452948771 12541410 277791841 527511133 734936320 848178625 4799706 846490557 605651613 449645608 634125143 34146167 656890551 143304031 844974510 116320534 963223823 742088027 422077974 659214908 713505596 453123026 500554145 80254368 937029839 468295450 138244048 727926210 395338731 22877578 179489940 809084882 669327691 830987764 944149122 363573802 582778002 266195279 294241265 327572907 375370362 891099374 549669981 147339528 763531164 340659802 955557208 430765541 799308605 461439102 914817366 849398576 948907500 348785182 978992016 322115776 935723831 16844544 662537125 327061085 362167365 212073148 512380982 763892142 871726692 135183220 286209056 141362743 669272937 282038303 523340337 910653948 175534718 495692804 978668220 23958610 977756176 387454097 854352109 75719078 58023780 217378072 249745606 155855297 421279333 245714787 277580687 970717380 492552246 359784182 198053163 222876798 304109002 522661845 141641204 952299679 22369094 314238716 26938047 875053082 610664212 153706196 409962701 246074093 882875963 15910422 511850088 321885461 534301535 48017324 57564178 215095047 614968847 100031088 286444062 40228733 127909922 476780157 759537106 992523843 446959314 958082742 559243225 165790914 960326161 250471932 685290886 254925817 976455297 931391908 531569118 931406283 867448626 673285455 80508461 11883155 50554451 713092845 334233914 360647920 238764223 826516585 425417373 647106790 670347214 166441967 403897726 693425860 728034660 714670427 953306006 53633194 206598708 112437284 558435006 702690775 308049325 467438612 907218130 915415593 855879373 952364514 93086886 111458059 194911730 266763478 448957463 967221243 597368498 97012924 37419150 686872842 580932400 838601613 433040840 568032326 701322786 432670597 45838988 643762113 602391908 966686215 335518361 512063011 244037652 32077973 974223369 108801833 768218421 785745483 653982042 265082142 67677713 581060185 567985878 192058067 852617606 266274689 332756738 937279345 746931373 436181917 354298873 365013244 944140597 989662086 369644178 988254043 606155056 854989210 945376296 86787033 745964597 930135636 932660610 70714387 804515390 759362989 690110683 173713672 439994904 185010381 464118411 844174921 784247047 91498569 137103652 216340477 795961235 330228511 544494587 686035719 531438826 84709976 7831986 568073547 637415460 823080533 249775800 207735434 840707854 412921243 876825878 541858551 74742115 887569763 952056669 916256475 321108880 204907858 806042685 964759321 89665315 522995677 949911560 838150534 581899818 379036235 535702969 992386108 725501700 919015858 680891245 712708491 175712386 823274870 250697745 272503719 283840404 837713695 296141709 997185771 892147989 268540304 182690060 527229844 29713653 945465599 133913750 16314002 985912637 648744167 925820726 485501085 186208787 450976295 249245901 695162918 991724639 778052693 727151139 631293439 130411822 819196009 109279679 90817579 766942488 185792614 981783364 747505780 794704525 437625055 48726271 461774312 622446803 38677035 183052598 78566652 850623194 837909112 762985843 999689357 999322975 393395942 553457550 457775451 461708992 599969971 546751762 462731023 306593604 13981699 37355737 782427329 973580271 697452099 34139878 535231464 930325983 337600130 669229612 500266924 566358849 506870360 711449110 677214709 760502912 9955293 98759556 356915295 479854070 356133258 139065158 204628460 87913987 784000394 639722707 213557645 387722338 880279772 937005052 108373482 694469974 579440165 407535237 646445267 961190263 598936277 171366374 840270342 315981696 660526824 8875281 865665401 340256452 444700615 698458910 907922917 368544262 628881718 464558969 334147658 472412384 973576451 386639303 910285205 913745035 991213266 208373787 330298355 756102922 316559194 20094158 907370136 350789149 206976295 256444588 863009722 813917824 376260681 693188247 768313367 875748034 899967787 989524377 501004693 82548471 287954681 470489423 873052706 71301904 785115170 544350863 862955504 93942097 325856514 96711109 298357234 350612027 755654588 775835535 877949627 799427897 298556082 794270234 881534933 642829634 743034811 216275926 830400476 514753644 88991710 738139386 701971182 753696469 127169151 928664419 717933575 528298709 115540543 285846917 527080304 300078817 370530418 95257635 899457716 173378372 165689091 288565578 696790542 782408695 545269367 973448288 853707061 636882955 47001336 343054602 114044950 592528598 460577690 578760875 558511210 390120053 442399421 191819180 24262475 461022509 49892242 313557627 556610903 683922298 223814380 346283619 528408464 832821009 432383886 148482159 172787024 518524335 516014972 573216406 627239742 214959991 427595653 677379361 323171349 834536767 231172179 917888788 587830047 544211032 693637347 763216724 919722928 458905874 674975213 677400111 238128538 223932565 986460936 201765663 38582475 906999090 851075662 208065657 313892968 420977049 730716019 553681621 413517441 755142970 210409915 81817386 645961121 726664840 629605789 78525853 64875498 88928315 203505095 447313423 547269894 31358085 578554616 631001252 337283842 708125516 348079681 751314155 592026086 157881603 140791568 856314171 67748535 276643224 753763864 664557211 418390597 735222431 103309578 495495700 136494860 450249203 116765272 32042550 360179766 589232532 158818221 293440775 498950996 639002250 889331728 261263281 935365481 77299101 433888461 766417892 679391262 762738039 291997430 870319441 593724158 864691070 823201634 769040131 372394643 465851742 735716277 408461665 192006712 41204394 108409278 41980060 232569283 795915839 350893818 344120529 597995468 424131436 133936560 167618201 519646642 174221896 49845794 600492667 391741076 217139996 301425816 29099141 615056134 823485556 131946992 66472855 94101923 810159276 966519478 534397074 394987691 223335403 466901710 460652296 891539051 279384384 266031610 118146871 498761602 882914307 55588066 220418715 790221058 621742115 465898276 608545129 990204860 783179225 992514170 362584073 196827413 179500098 481711275 838166682 253714851 750874014 445765742 489729214 786121279 901082101 157670028 508881170 435426930 659765727 963147022 223199696 783857334 151023405 554756162 833565978 663955852 775591654 651008265 579940551 152839669 487090414 107098111 268610024 751337210 338250805 916583573 411268460 130573980 488207010 849741068 714172418 516004101 553052156 703436225 667425371 372987804 738096000 716247536 947710584 106907002 800535335 579336498 29727587 932034230 257397385 621328440 699368013 213897325 63154225 548859746 109321236 355798657 315666316 116336585 443799947 848634304 929212016 684998361 679632010 744238728 893858156 816912912 899884678 712782319 584543692 19665373 519248316 940538360 691788384 851601839 77595784 270236026 417521297 162914963 125012647 122571093 801805772 912234043 828630138 197382188 942702246 810767640 460588166 210346548 372951167 167381029 969802664 843509180 863911906 149765403 732882206 449719428 979418547 734206357 695511542 783517255 146080882 783991720 608475473 77784348 836105118 465898137 454264440 197716878 27470535 905144385 908145260 413502247 379778304 739689387 428605004 451648423 6018535 650159432 323356302 468318413 911312504 855479323 811915694 952818614 970484180 636223177 138814493 221173908 270294544 912739669 740972314 705015672 435646132 77433801 714608058 974805454 508245649 123856874 68811534 294472351 45094543 276575283 634340235 252594796 442211905 675414490 796265707 434480867 126474503 327676932 254588840 633487982 379901605 284769641 108981724 135218673 589682000 834388951 1995303 827083927 53316379 863722126 239019691 132634221 373374913 927731847 909206111 989430269 409546668 892792601 867700942 477872985 247832570 719534358 656500203 172637986 141213073 843498922 591121173 297312319 298674267 492775450 265592054 751953283 218946078 14558497 559207311 312233016 51802997 308348270 949710147 395400430 611442400 131035333 771458236 799007753 798257958 987963201 851516016 39202923 810645757 557988836 444786595 601149218 131041964 109692104 477784178 685075968 85116724 179688481 433121360 815511162 493048666 877685720 351384392 33363355 258767468 912625603 963128645 699899085 991262086 247691641 657076529 701122420 108183336 238538988 310488965 180991267 565257200 734097708 408892062 585215299 84687491 894667277 486047130 176816009 488508024 491081902 26810048 490390927 505625858 932074543 785945730 744990597 118567204 111820735 762750075 529216077 113565050 941212050 677415156 108689264 642942159 763816052 96983707 648420228 287342265 930734518 520603043 861366793 695624518 274283574 821915442 590055406 691417851 387738640 788686615 156570920 805352773 8786553 114303849 928695558 436829352 821671641 479092576 825156320 474903110 501733175 942140749 940802520 834199262 797783470 571436696 278995370 509471252 740558595 670488335 163515848 398418038 103967454 379416683 334795701 441523541 792931411 436252880 339457989 564238793 194366270 560491513 827374495 476456345 596899551 332765191 4220698 318297582 628964043 229587241 281704245 476093617 393590699 694902602 132862377 694672389 387179606 865315299 72597650 883350580 951354992 378698151 95663128 993148667 627166359 93693430 31864101 94998277 18972730 822242016 486419359 568762417 393349469 356739900 901147159 986058983 862681805 554249911 862276496 267375837 401503436 273067744 941892042 516603664 192706765 968817807 459179164 34840959 118114390 775068929 243627628 572548064 837037842 354455033 846547305 931247130 427330365 658097234 451126703 281965118 825506938 438528622 782550273 925609148 172409502 28190435 435301976 291823097 225949387 192712694 577366332 446068275 817345407 643778005 286940600 530239861 157066754 620469359 993585918 990020937 164465448 498786619 871115796 916263889 113355847 712611711 788196054 413246324 878026144 178387503 258918368 48129826 390584103 184666717 707169619 19553623 852489028 358353607 310193234 82604308 687456937 307140960 923439204 731074241 346682753 50040268 558162770 108739498 462356955 557525581 270914128 203337912 100345634 666497951 297512038 234583940 695882290 573140073 460024996 974217008 187595443 927377830 460296351 634956593 281603774 595133722 684855846 973482347 262244724 82999540 174481167 970152957 364769624 516292632 700926344 567341950 945778467 441096288 108737356 303661705 716940886 867829169 658328723 705641027 419389126 710104842 126796760 505522193 662115773 491932888 690451805 579355064 455461959 182922860 160133531 941424810 891703403 759649524 58122175 904034017 730182485 159250577 359036463 712546404 331463262 218126641 126506646 98616327 626321023 95039655 451192895 803898410 8291726 736923451 916120818 355972738 946348434 945109740 589116113 611069207 542899227 701441625 825056928 425923044 353733750 327159161 668801595 859729803 549268762 445527505 663638562 915561338 401413159 896941491 741231934 745714095 362183863 19675013 736705345 605205865 773532593 626221208 218592308 628402059 754045082 358603266 977006612 702142378 654669377 607593337 267786298 356244666 489374032 773606368 868256709 474164047 407862621 61030419 464743627 577050562 112741322 503782926 610109364 908600455 709572022 996638638 908870211 331665782 527351186 920174483 855509975 291608607 677338226 961189735 724901784 832256552 381241024 84330552 366810951 150498543 128558993 562954596 250626670 340144136 547186809 808600155 377667621 942004431 858120157 661587741 241126244 380001890 835336523 183801372 30297958 691155211 520425419 510455247 458919038 669804543 472115990 346086661 779024257 898164514 116611700 226350492 38216726 865347654 298626659 382717886 563851712 297022259 289973338 907458562 53106520 239271795 233466488 498364846 399002713 632955757 319653611 219308612 3192715 839030673 417124989 550311892 705403092 61682477 916380508 269569946 278691708 366133198 154463380 132075981 235695540 728164021 195646884 797851497 900887079 822772583 331567162 440766369 541775126 131943035 168735372 744228200 681260280 331858473 387677933 898968806 927491261 303697572 932782892 114263231 732629892 571560797 690867914 935204238 617735471 419867419 659196434 8713081 997344204 565930451 361502894 534005871 369417165 60768833 254442507 157993803 322268519 762501450 19007325 190462117 143545328 481399205 264666014 914334165 875040216 50216249 76627305 416477600 819260825 677882449 2019860 703745572 432482184 381170881 588739505 475156289 737271841 857951129 181904732 153361969 269779580 374775608 730877571 614562022 826373293 529613342 584820347 94104211 116435753 909930187 928908834 561115406 632508203 692750523 795076950 920076452 331091945 579422564 725519407 403032335 174056280 313407907 924777630 577256928 932875948 473928715 843462798 806369462 911201336 81459291 758397758 452916860 974385819 570436848 578308218 441247387 410184659 467511818 714572999 568856272 80601084 130683720 579858767 334931505 732442379 679714182 28353311 982161795 578644157 608834349 591348036 439064105 963223904 694996544 74764235 832598751 128134686 356407498 541075626 604984658 817559793 986605067 688310096 932443246 390534003 309477058 498520405 670745214 790476921 882477592 656358236 653503379 602637434 710671783 129964103 405941708 587371565 432904671 676749078 277480748 625618318 403935018 928019859 181285323 126714895 482781916 277601811 434944889 802534209 65279903 64836046 607646947 759041907 188948613 218327420 174618842 134467669 68234689 423750064 73248479 472707375 743835246 985873484 123883778 476343747 805697289 728162707 918324927 877008734 143030221 337031999 506740187 451244172 874521579 494553030 573952907 466308207 367254847 102368697 710128282 894181402 967954411 317333457 5672417 477146089 740194653 942239900 885135622 270793401 2169314 463664261 144670714 491324749 177086584 744066298 328168313 491567224 720795534 177529288 119091720 514242004 999258990 538527780 988054780 262725592 466466670 507788957 918255337 415206903 664098918 861716104 168588390 374072067 414007314 741515040 734076312 753946225 16589703 360021505 97408263 259398577 760927427 68199915 358942068 318352931 311785527 212319719 303002794 786359719 241145728 702925513 750865595 702591634 249822475 874660258 195149467 318308953 864497272 716915213 455589990 998287184 382478619 325238711 432941228 580908355 845963365 811669807 565585070 582755448 872628769 141684013 315832213 301005776 41801099 399322089 428273853 801261439 210957888 631634226 544763549 291761552 454475681 706304709 232763690 933929557 156142417 768062794 575851206 509511457 88163939 224147815 948677424 480242984 930646704 732307391 322620209 377723859 614716834 75099159 750654280 886592048 282989367 314183390 533417637 461331539 650594384 483981230 254667193 933699450 953613461 971530027 172383211 840109381 465629556 45441376 489876330 115632126 73251655 969777064 930770020 373870843 746673132 120864831 156074811 160046493 655246059 934123858 871815143 772238011 971819528 112218135 118873999 981128270 616072575 133426179 470699362 400529933 226662429 983477893 132769846 423857001 954647424 457994188 378177935 807806734 301157925 896381140 891287783 993057875 375291935 878847015 476433301 274233924 866177397 256683041 555922748 467002594 583628694 913080735 27582433 725018110 67362150 174250937 37714900 90681478 708582001 433122515 230529668 320384690 390495939 57408279 929168684 7519384 616715379 533919977 444191074 456773597 928660086 752616728 713091613 947189912 477373744 503928565 199705720 904968737 658512186 649652685 934407669 487379363 366791517 46600387 33649351 360376337 10349137 392443327 790759492 292974564 322528149 800448524 956729262 54815847 355893279 773112324 232242918 625431542 943922539 456600564 175456024 833431183 338877906 595224991 829547868 645688403 451781633 103084347 982384602 458216486 520923425 548173025 19670108 487462072 974420243 818217276 721211585 235090085 459812041 851913537 713931166 109454248 357061509 706844776 899650135 958927873 734815952 278954060 730505425 866486004 470213678 518094530 883707791 696768118 906135015 415065867 146539290 884389533 365775955 523467088 584105281 732984452 789629936 811238770 419329471 611967738 343529897 764881838 484184714 418678546 481591241 804925765 119338482 382101146 317474283 224782931 150488835 512854659 458006700 296216344 713042946 339001203 960966365 645560204 726298241 882783446 240749217 484841466 302954655 339003711 655076919 168242985 440078807 220092879 263705300 644608847 195597813 796697785 117181249 99937355 740861839 708317569 242353170 873169487 944092181 193188795 717998545 92239941 262404173 730942084 264580506 309890344 684630619 13256445 921269259 646612375 946843190 166725077 310717461 200275097 487876694 403003277 670385972 467010922 321334707 226701013 125829168 389206521 876545568 230110173 499179224 464089426 552094766 320957168 837989908 893110972 725537706 461258362 297325452 472317389 264155352 9150162 418836677 6425316 844323889 690938887 308992810 475401647 466558973 88018118 810955256 337357050 666454617 505409414 199818580 61730999 541882758 794792467 248386036 599099508 992481878 802591292 922541755 552394350 705674865 191954434 561677353 539652413 595484897 459539463 559806199 218195548 798168882 962794136 628744339 692058648 869102272 460945779 668946621 309849639 400870700 180908523 819110126 759282840 543964780 278011204 263066604 966961305 192702520 828839178 276782452 265833141 171893221 667216581 809539867 677521440 555385012 762803243 204837766 647180654 417359788 767362583 965678495 93344059 623903745 852199721 813724409 163611767 697529188 202974052 24894041 102492853 784250291 893067132 483155060 308341199 187404066 46558280 522708668 970860338 769329105 183363624 94863525 894016937 844904727 211893605 342955291 264544346 94767062 258863300 772651806 568987452 41438474 469915349 530701830 977043103 877992203 763080322 478247142 986324908 45204655 414317016 712906928 97837326 642244778 217221839 667718299 138841046 213586779 812400026 196779720 930940750 870839876 115350779 549175905 408131811 651215184 132022800 264467663 67384737 590207744 450983390 373205765 564112952 710928380 602636851 199101179 626876774 355883113 243538249 76721716 391600160 457552889 745928020 922385069 111869227 372894395 790157486 558931671 857916423 719360633 7770122 407420696 884792353 557169068 283441935 842545050 227082262 516908144 483325618 790362774 742402861 708799124 706764747 528822316 929898048 250807354 198718413 306050539 320219122 303771889 538482484 235019979 335893355 419546531 850963877 863750646 74362966 229898239 857568899 23498218 542065308 869714775 806841233 107474233 731595054 530004756 54445339 207691955 242732889 547407034 619253044 378490845 856036691 105879734 762883363 233504697 112819221 148062753 651926319 37491928 378138177 430027312 507197347 696110478 790686350 829263839 501658734 368557138 765765575 906026280 754682144 970427378 194748393 245231723 34685850 442635552 394809326 377205375 27402549 598953179 241777153 809031449 444510329 23872030 986775191 184752695 226208438 260931286 893436469 248091177 290809479 137772416 779902655 345713579 81343892 417668621 154470254 549040784 487109237 880189742 165346362 489760482 446157359 852683067 138416366 807510722 977878350 244097826 827867848 66009377 489204613 295194561 954819001 930544767 567425430 704792320 51387355 634676553 335261808 118116214 644959712 832615569 418752887 185066098 169917298 122833638 950771975 472259333 230583071 29904806 542847094 198052211 902431919 622049533 250363290 910446815 797102365 504610658 715340893 186305134 419512433 580390714 998988699 105698578 836611890 471796684 488409367 778530166 51075503 417005748 455954533 131336522 469071210 681605057 833735330 365838589 58793865 76719730 335686068 233521684 232083637 493910808 586971611 403538881 315106291 783243584 918600876 173143449 610890262 888126300 755260409 797854390 715376702 506433248 627758693 246790445 915535168 728916358 353941607 852205679 977437083 285152516 902191770 377650891 645436859 629436659 784216823 848096880 227188840 800434443 111954955 725904449 766870254 5408945 617486060 659147883 317190547 519224713 830748378 555824857 979132161 570129550 743305393 347916730 298715876 811843839 558528925 34886795 434851834 824100137 381532738 849322768 189502646 978897884 581687444 104064693 106759514 807396564 978906161 53259992 333980224 506830054 23453583 418556479 727817153 788677982 375408703 119965723 708913607 793933229 518987570 716662324 727490792 282014793 936025522 814052053 966382948 233388098 872893946 641491109 276697781 347824730 703013686 348586583 427648698 990085724 821462043 361019316 650235725 384743160 97640974 817567458 897587885 428506217 950547646 154614420 92621716 829476966 429974951 978890330 870210530 961861501 824362482 128610566 751554227 364296787 579164018 52095425 544311112 787501187 250430983 818890602 895451646 775948436 172349467 563078617 743153425 346338070 11146780 995261796 590493129 821655831 872781926 625531368 575923345 217269631 999996109 53321682 325273878 998537007 691656664 139365823 553744952 558209114 438065351 144373450 232474734 82658372 753387636 344695720 296826190 129220722 124825276 653537338 74596191 794065449 35784716 162891945 633228539 150914234 888440744 319325498 599241430 524897959 564228140 330916968 791173357 664779714 690893207 229958789 151460804 490709510 625003624 411599525 318386095 758350650 615542163 548666485 640986897 107236605 581995206 754670424 939360761 139066222 973264919 47558120 794961621 878556295 952585370 879910491 830274567 179554191 745478235 903582588 170795132 728450904 603480871 533323966 277110075 911063936 31277117 519509323 654704292 941660289 30688963 786806807 785300187 202129863 845980175 440063679 157605603 583812037 904660236 342767920 283924765 910449656 616248756 96096086 400895882 482247132 429829559 859403815 521102274 658953191 370595444 504133561 164411821 946211710 127074782 120325247 687760453 624893961 403259158 449251258 86663076 373997502 385548438 156016394 717851101 149999595 444587862 981163369 70721852 364190814 240510332 488655548 874505778 489599992 174518977 987462676 364180992 599466288 273701442 752105230 871190335 554571776 957862788 497013139 279325583 379365814 161301416 317962054 476199568 378644196 964417135 399392165 368099134 542940877 545994579 510139281 593974785 688984292 306920752 247680954 52711843 573205527 959689654 711332218 621004762 78793132 709649379 805944287 299779987 121492214 876448 583253657 451691886 494714239 258818360 92734554 604753398 713045251 453987761 580443995 529849452 14787122 656921830 448496680 617909665 936724236 437109562 206569289 878942819 175352209 420371116 783448596 399852582 390697163 71768758 894879758 312793196 186179122 215171567 290091870 939169336 409051590 997473564 829388250 923407969 586004934 903446630 342961783 901295214 849641421 280086240 234566795 43687769 464805286 205721499 846844835 987161664 962656424 744593096 231493865 930330431 501406371 894771914 46260149 17194855 73843004 303104327 188626851 245603446 554177470 198690417 536451039 541701192 36747296 342915678 784908672 761428866 268670397 981993096 106562729 817570879 283745569 193372090 230759388 198624674 519480615 216094927 862712535 260831956 6314775 697783613 650889087 561997331 246715066 713058057 868205240 421518439 847639564 925952861 653859588 170628244 521888383 286436783 903311660 425499943 189817963 471696484 989242244 249120453 164484116 184076008 536798705 432532810 358612834 395979920 84462420 360439272 667732351 167207566 212242956 894465752 510911625 759392357 231893984 71837522 892864395 214984235 131081012 998062470 237724168 120621811 632770172 377768799 536278487 918008477 604288718 111812344 106724972 44895710 193372690 585061288 125070883 134155588 730870207 275815921 932417083 513846175 365297073 399186272 220643137 292273633 49081425 484446281 448522466 183868196 950150857 244211485 423387207 847129360 100275729 895234472 107853315 602948618 784663755 419679443 522293601 867744547 730861396 439869021 866200258 556619303 577380918 22761696 19289053 645289973 938930721 192530776 972796196 3537568 437450320 37864740 546476265 955607127 762313320 442517114 715777073 699113721 266969709 958923103 518237038 446178542 977344054 664496069 556049949 473386848 621980027 756097174 429342473 922115463 8010198 28698545 622613011 800724458 880776847 385799309 503093459 809841404 359404871 735084352 170987782 911220895 873730659 841888048 313187051 395672063 593075894 324747658 666955514 794921924 28771288 616448594 301670448 84744290 35166080 177853358 933074183 958396374 7560538 916762443 451955434 390455721 325656939 919776621 249313172 439468374 71113403 131260857 22313569 592696641 773578091 371203434 557029383 453282176 379561611 300723169 737642471 810857120 245745707 973453225 627372922 107488928 781273810 595927195 827147852 968801589 562988061 951113504 456228642 237619279 860173097 646780780 953314170 384004097 18432564 477814543 690733170 168436799 307630200 232336365 155898588 519249516 38110775 873925903 949758284 9657358 637717522 928707762 794099147 857638583 555203975 215526972 259776343 124952397 244680947 51338804 551346673 942066444 735678783 895851014 734215955 211549898 937269574 360676281 658180913 809540340 458385628 979320028 917032723 531917402 907316096 922793995 517000029 15316333 92991793 166638967 262350707 713141455 247145756 413287566 742061030 459022294 394169807 159545152 37861586 413234245 127824938 733201220 503274353 779298035 396275994 705685044 706102445 569527331 716600574 688681494 218058301 343627947 992863510 596616463 238385395 25328444 881452955 791973678 235350912 495529469 508595175 111694247 72952661 61197679 929886718 442069573 440538433 471559730 264322518 452276991 557682065 843160687 255259021 845417082 933591522 801603727 109313611 286354710 16606121 741401904 573417877 861151568 815593247 702290710 82026979 690538982 808700363 355948575 231080281 763224305 748431867 736520558 412821924 688542052 60006395 639177241 288823239 107435204 817834281 274109647 170626952 425803079 223351965 723124952 838847222 44236683 236030001 359356469 381702578 617971360 306308143 576392615 987192410 37598178 840402815 904997922 969092757 274035562 388882349 46873296 499337225 440727765 286109692 858696899 434513540 839106020 466774062 137816837 116094817 323461541 461671738 237659734 915834135 699181434 198485455 422462355 322850830 217158228 462789857 849503312 30853117 614780640 279913309 863221007 495592612 852289553 256005380 554178611 780378478 101423170 953185427 313851737 384416970 190634981 510986238 873991803 449661694 14015807 440196926 86323640 575744416 797986288 703502547 590122589 38889912 821500486 845441655 845562608 333408826 445357834 966184796 756372704 703484753 721250289 367181140 74949788 911488701 214395815 166663697 108840909 811258529 749300484 937910431 980817027 330610538 140487678 942191126 52455198 810753060 36719269 762910134 494747123 265178895 390600573 891304335 500660975 247912026 790276494 28091998 406883218 21457256 84592079 740238582 337586031 95347803 129334495 323353884 214783375 598743354 943573593 976702086 569229249 10378965 602227780 601276557 647348955 399272207 601075586 965709569 559146856 945825751 87100856 573910028 565938229 347968919 878821979 947284082 82444074 775799842 291837457 9559556 757435645 941593040 409247405 199612054 341989099 660279906 184382743 850106771 770871868 865215346 937016669 518036449 754066657 34306421 21660828 994071793 535798584 667060686 364106383 603079010 793169553 2117756 214079452 379335546 113876374 482176436 913831118 156433318 294882413 581857924 576705121 706184531 866769036 358673815 94479637 50294263 820447681 999985769 11920468 818483991 385751103 527515650 309921771 230638519 307059872 679139053 323684857 199781030 126434673 942167509 257961826 59473222 663317657 804213860 206717879 615539929 783870332 136742015 328398832 308882608 78269600 919536653 748717485 867476240 987585170 648811887 575075890 18360828 691778225 698698425 265288981 344705447 786887249 962431732 657141070 629070745 807096444 646011803 35169449 559677014 543695122 382810251 164813616 506721517 35413694 418097490 522757488 424484553 247268273 506976159 745184598 603708935 970951706 931328616 338634694 972492775 491762011 117419691 140036258 302148076 714057923 900925865 855807537 477689203 21421305 418056666 130524255 779647130 467626366 20425087 43734022 842966521 259874796 416042224 507821458 758081005 704799385 144874471 21348184 313873051 440354991 650474037 936032430 199200676 430662457 930337372 908330473 834549091 849886813 533983058 691342605 755559629 370688268 37752576 570706452 179784567 557203127 136714344 363861272 210979940 226560799 123199295 81667996 993854099 421992567 621223550 524703939 165869842 830700183 114937962 668432379 865729633 317522857 431483240 225585498 905894573 964267009 425061076 313516665 28561004 461644684 927174298 571682766 364308590 330158186 721977027 830689880 311213051 478647902 57071228 347083054 890224968 842878983 633382521 265975848 557745687 527902624 514734809 147732809 705144097 311439026 716656202 255429784 894767115 545054238 547763378 624958774 522586174 743353774 121818163 936343066 1437598 844691021 828384842 506470125 84200676 483750114 193988188 601124431 191224043 411355753 879678161 902986925 620693519 86029264 321000213 374605094 517989331 739779565 14922309 646022001 509256472 747505099 176114540 778394862 479908282 610639559 629160990 631676323 731947358 360139551 79153638 156172884 956889627 525646244 65442648 796655886 548926546 122134205 712262088 736942887 294975373 234464348 842517901 220881577 909168378 210921203 510847541 497798223 525442089 251015667 588093574 889849499 391417977 428184160 132125580 628272636 804684024 117202041 396556008 876577729 680571178 399263031 826029970 241282337 826746489 798538322 818491336 27509998 223868877 880640302 414722940 478016299 392008582 231452429 525969750 59143543 798059694 379624902 730444330 183582718 701773304 427255494 972106186 980568555 873917161 925995393 155604113 527635622 446188803 669892850 969404889 707854283 955211687 962367231 303116667 149037793 543655885 739961864 584590702 159719979 323252117 441384588 939210267 716220884 823279505 683777598 764090368 607384459 935903792 991725931 251247093 960477812 384520496 513583058 945300022 385456578 569905578 68825596 539263780 262245088 518025715 321056696 601956387 223572960 822755106 442864835 482584172 674139684 865073139 14133594 802802283 925428547 148524826 83689666 720013127 843714892 595472899 503534361 480939127 751155522 641931256 566144103 604800576 998702480 870279899 57493167 813804302 807545726 285044826 709465322 438867043 786846292 678616890 315236188 85554872 194239070 340733227 433629777 27679338 230942098 711214761 368615902 496172160 535955787 387370519 277484711 923110007 548408990 556614689 739434651 2187653 185750154 242545205 840973607 557872881 349237716 22870134 961342669 540952588 915778628 359725677 274638791 668293747 501492698 627308137 215562705 408886225 128017604 582461772 263805826 254868330 521554262 589366025 319526101 892480400 937130798 322613786 154920292 309765360 669786932 408923713 874394445 790316314 680001524 167221930 990607983 545357966 852857236 42615653 156323450 842461251 460023878 334238351 938165446 185894457 167707985 814680254 986697946 409973417 483000346 555469180 465408945 527688945 477404871 764558976 517800946 532644166 822354105 236408043 936216780 399463121 632576978 680137564 55072220 179456570 645376141 153266992 459666861 47266334 391266749 486182619 962823184 59800868 492663420 275645431 642701347 626714041 876329477 545461556 388713759 987663189 716485550 791181866 511569128 794203953 680986233 594122918 610655274 131461367 826403451 820888566 52972493 79875452 426253651 544192503 812933505 330507565 308378899 922305977 545641993 238251132 973921776 405237139 155968773 879646438 102406943 735133342 617434496 377564299 352503173 131734143 943029342 418301074 102201331 502776449 805741817 736371663 940417371 283254623 721020725 570982022 94904353 501503573 323834546 745535966 31249795 762923892 722017824 233908224 547947736 410347700 220610894 111099330 364923303 51316809 471096840 13776730 160148264 555915126 424660979 698545951 704263868 293346914 152976974 969845841 194896333 347100526 641558850 791446671 834977949 116043478 406499180 749375768 88062015 613372643 963302824 423879316 910320009 753944310 851589576 73622438 761463632 350143719 185549389 608087203 226643113 756612870 923766060 414765073 509878752 949256321 10208851 734935597 668075524 83347180 749691129 344827552 744370009 60457726 941905379 796981805 247695858 314644962 671686558 154093308 293560489 293440444 854076410 478828255 405024865 101082908 397803916 720285684 862154775 764300661 926703787 314462307 206387251 428947500 632568210 932662349 627895972 438922809 172816248 237130436 190034629 713935723 489455891 439102482 528980979 596903845 382465473 891675552 385681939 165224824 375786534 255240619 764518364 943830476 978603578 46295658 456186395 931571421 978329864 682132896 988401570 523773052 887163395 443018068 341284657 953860873 242530472 912324199 147131686 606661503 75969276 683892821 690492042 885835998 294783771 230241126 677838828 566461526 563172395 744346619 737476870 130200379 403095442 960627401 918872152 200630060 527861709 709398973 831023509 374328447 443660529 864651210 574537080 579295925 604466218 992039017 735146046 714571418 17688995 852114153 253207987 577023446 488605157 640395195 209270821 3207488 41527957 187995813 343475169 527441378 935937127 518960003 638702609 834777227 893689839 250684596 732472166 866066219 707865076 271312448 782698153 839794738 383154567 987285511 863171411 523778336 889809153 380431474 953818627 44978755 786782363 394475985 857173090 567031674 262095805 815891078 881759838 326168425 74853020 850927383 267417302 24909073 862170795 92300216 103630901 219962081 899381091 445046950 483937511 868105724 435915459 614197398 800123173 452887465 971557432 681471491 741788166 165843904 639285840 807775338 404786468 120437990 758658571 826053581 681636656 793004945 637429806 863033359 605222804 848203314 40239598 259240679 137770139 360228516 692488106 22248721 682949706 405926590 465010266 748870749 429516653 382962498 697336396 693623210 872805849 61814709 500238184 796281848 641846149 298441130 869118500 899075980 127597757 127634812 576124017 263733537 626208029 78599804 470943607 173382356 286073789 665432617 312742832 733043365 54200845 827774770 586633519 439734773 452968843 86947117 92128204 677921499 305315438 784065413 56073919 67747058 836274706 497391646 651462209 827605687 352365089 108085861 218508903 887800874 656646788 659577524 944357505 73343393 151197086 311471951 320243472 32568252 629773552 731552087 140533324 417495287 694371984 807372751 22520579 454214663 852943043 324989895 948401375 421287534 690077966 278253893 639311474 575257706 811403742 201010031 130902734 76656452 940480376 231958022 327729995 989917740 720512422 443602656 675491217 132505430 555959743 684115046 971733342 478665789 708535570 864504709 390933632 158037076 733718491 273145921 13408975 368562536 885550601 214063115 237810513 317893255 908099630 501446246 858066046 365297728 970379901 692271807 649302177 511511131 433751958 46429482 698592447 499558109 455082632 788978968 142388927 479255588 43118866 812347336 890334833 496215709 123129256 757078259 834116939 764100624 270203844 254395893 689295183 183489160 54482065 310397724 345839872 638587547 291707810 482513097 805746013 379075260 724951620 499486493 537724856 684732837 290969430 815855406 809098013 954187977 30485056 60429948 371641769 698231571 569117121 909506259 89856145 997910594 887553542 559944601 363179311 40716669 924339563 639056436 208159755 762328352 188657586 752652718 289529019 327751862 619799923 961045225 182699518 870556105 277548770 301791443 733270881 456804772 948726849 452166197 548894085 374113545 803503530 606002540 669162100 241040374 53228176 986183355 680987644 333910574 198580392 428014017 65509834 476968199 309735438 873377035 539463907 707020523 862050787 118434628 319766207 300643182 771424831 286150159 680581826 756009500 227096058 308973830 640021874 670965214 529127985 72097450 722035209 394577768 574121008 828459153 336911130 611339022 855424158 359927876 784918977 123457474 138404327 481031226 730774931 323788822 63168029 41234075 610183752 29595156 680214967 69427332 579586917 884510758 601916700 350113552 992101250 779579782 573578874 370077063 267514485 889932738 30702075 721577948 162879096 478653611 202003724 591980816 96004523 841567974 211096833 581096178 386598714 162943591 787771792 495274362 249459712 784797608 177862727 496600374 483624378 957196026 954663295 507242917 111583931 296189921 902374345 571924285 876735848 463551651 497751113 563692524 791265140 307795445 9491419 400495979 528160822 713298200 737022014 106340847 151793868 256319428 839037660 485644557 468460055 310344695 794032589 209757549 148251626 941619655 407634594 834269867 76826209 307329516 340009438 704950859 690687941 464079778 271080315 920818938 169778668 576752912 721062892 280100935 920267682 74169621 718357272 128134640 331138715 800616479 632378975 507361097 955273343 567835334 242339974 553213467 291583787 983396057 634222323 134414705 177990896 625727520 176893010 527747955 475715912 625618914 83570671 562236701 413323155 441448695 458328979 419694815 892874467 910909755 659899364 61124926 333844830 669230190 577223797 958959184 41311595 802520399 61958434 528914597 121562028 56445006 231476451 317577113 606545615 847770412 117862509 285126032 345547497 107130992 607815537 420860036 27959331 276411768 676261136 290584226 691977088 945832953 806855844 649500185 823083939 461791381 185976795 212048231 949195289 768041239 953366516 871256237 891000772 848194751 918006846 907851685 778184064 37569761 597195211 715093820 932090211 121633262 901888427 606413509 395723525 269714480 142498966 840139631 601191115 428782195 604022437 273972504 81494156 528856283 651411010 820178037 22219649 504120906 731900672 986093158 159424884 828011935 579675628 690739112 6398470 119632822 894884263 46669336 934254934 46562123 422409800 720799139 812788929 343376853 107246735 12774487 838419725 536045077 598061567 151123113 214507425 99261085 566444895 593156072 325629531 659256062 127706550 473937257 163557115 39797239 534322349 193888806 49193080 21164873 274049143 977177049 629059922 116188212 368000338 397558257 716022104 636123355 270292892 704157029 774381286 79641623 169018519 985606024 469821352 280996244 678054553 906987120 755565601 711042174 412204734 724145031 15834412 493176714 899988931 72291704 760318387 272181916 90614789 600777241 426062982 168866885 81079206 244752125 189162158 950439984 318628458 869952653 840188136 871332030 355141458 948173088 687736996 26777742 624330274 255044729 823768774 500459170 98253206 627279579 980745295 566406589 740588044 120315981 743803765 319286204 817726261 889723183 984522837 412046014 909013317 55241809 766678718 605341388 8596552 703288821 209763529 43631618 188976184 100318100 193151527 312930697 31847616 155499373 747318305 613415691 569251117 618577452 262339508 819428463 771988876 451265973 312533741 330422444 285714461 101697170 283700716 979057279 161622852 303708315 732821212 563926383 451838428 331062719 944568779 99868451 336936396 84697075 306209274 756553572 917027 51271631 564989779 53505095 810338163 735577713 20102832 314766901 516153870 271793149 849815968 247952730 685623335 135430296 656617144 109806654 532592690 473946296 554463580 27490907 353606355 926732511 946763813 200155972 763622348 194377247 263989358 329029665 40658733 741567119 723653789 862606284 940670311 474093339 238383563 555416648 678458316 773671020 196693772 407034266 991799934 722494259 267297110 775893989 167790872 632822594 414297296 875513494 156664653 205154398 625546009 904947437 19754663 160179683 352988611 737780811 467624591 983022016 683371419 484086201 629256610 53548352 131428311 816879719 236460122 234720584 335767489 671271121 902749413 916361337 274405656 361549383 594196855 24685511 434295304 673385647 624112150 49691774 737241558 266091580 417971456 139404168 538526457 961803438 73391285 282341571 387429043 885409260 211170977 850879423 632742512 813114 81475358 391652482 242882085 9099984 948736208 563566233 944894047 801839595 295507372 10672139 331919836 275818782 146055417 424112317 450223977 735151898 194607582 16458434 24691436 149669208 935689010 24400418 294449201 24114968 75473328 830350005 332101662 122948741 795160002 855303642 439341701 75306937 371097555 480573999 948958503 352802862 849698007 468759561 785298559 843316861 927836011 925731567 770144565 22629526 582880338 806965115 779682916 346821041 518448938 477445116 466185532 40186685 32659102 760826136 214329542 667175984 149128394 323378967 634204099 307019535 549293732 269460827 182115977 760932060 956432304 967097144 992949343 539211444 900557005 248195844 452722291 880021431 169340924 493642916 714651516 125070181 171220171 328048695 909817603 519599695 222503367 591608288 788424807 259722177 160082543 211124929 555255173 780542065 462705670 800082781 998787115 767584286 680786851 590774777 269880315 664044464 65195902 224843207 27044183 882240316 984099106 713477419 789694767 238539406 626773121 37820122 354742425 204486645 279364726 106094476 778982079 810538276 27780696 975447078 651456536 274297850 274391707 410782978 684618384 284231889 868252947 602704515 343364135 232500180 947442850 899712426 52321320 732299509 805005860 654158956 902996826 104669141 420422266 74641354 221127872 391254335 769781261 357632791 142641326 842522909 596870352 356764118 676911963 219036863 454329707 305172001 788212422 120760300 421780770 2393742 597978721 448723539 741638731 899923239 550217000 317019292 508747006 914772745 996127374 855630125 992678020 365575307 226375824 894403237 762620369 505293831 277823136 231401287 835719599 502384316 222772394 765598920 943151358 22512659 4466206 805322600 103328225 788425178 78780936 929193286 944012764 977134105 266108953 929710865 38739252 55954124 7311547 889457634 229929428 117482324 354852007 323478280 583393398 218438094 194630954 524180179 965877773 471584922 984144334 242784787 468629179 398408283 622142263 233797843 62181592 961235766 368579614 575943975 689077250 14077847 851707236 214916845 930298365 144363686 467803202 567736937 486260490 65094767 940373563 629704677 620115647 558040790 566562480 432049293 69183771 10301793 711838382 333853995 215680864 259140707 537287273 840590613 772214814 960302024 183186402 905673315 167445042 532957858 363640399 146015356 627494459 622514918 460903714 93989199 717198561 541905133 304939051 365169683 201092295 572072016 726467469 788446668 923195438 874305361 36177026 907563584 576263802 402731963 692052971 838609773 663756290 919488101 946231727 76930613 304335082 360876836 630989774 693929087 229077437 681731360 474841319 637505036 286478810 798912084 978060406 412412579 354035579 592674909 413714331 237537765 609012826 853516945 90050010 421683119 510553756 741579220 109766940 362208655 610401675 182696908 356061937 323723431 792515577 753478116 32982651 669809243 75595640 331261295 755935047 931659930 711030041 196861422 292051270 475675076 562502125 427295532 264382574 585164919 484419382 706546140 626323482 199640734 532740205 298371142 23522970 248506407 331926494 799012602 570186654 287838084 767390693 714342876 312466932 399069457 503801508 17821140 140096662 811007823 628090009 819611062 581638373 788946368 866721219 637199779 797415669 137583294 38318064 56009888 839216888 316622621 676993292 772688868 224672766 790242693 481557518 116616919 713586403 146886196 111723858 950515117 876439427 945520712 713571197 883036655 137157054 892080662 389232480 681869656 694801407 344551825 170072038 371384604 540377142 286641401 380611365 237051072 934925338 937645962 76912627 344891356 323705380 617726224 314196878 99952250 816411100 28030277 242561120 718655144 658180928 481023685 9038184 725093459 7113928 412828319 40184372 325670944 549021459 954318225 996423809 926225962 9103927 563872792 67221114 420940417 234482166 653253249 877192698 270650912 481087692 395806721 499035388 632104855 46166057 661447476 367055829 180265691 182324827 807158634 128859404 128904218 413733559 411436748 585949456 313934585 727653380 509597229 697472839 491690546 162179502 369925122 44036880 999825395 319744852 448513040 950065702 509724942 514263224 341083660 982991940 560142265 395555248 706477143 764495242 454772805 282300233 621812269 150911443 894652050 513459133 350850002 34280797 326922768 124036205 115474112 51550576 108236046 628762987 915686674 871859771 125269769 671383873 518820132 450398134 710449278 640554848 367350406 963978641 962428546 22516870 421728143 809876562 398417172 856916873 631836513 925490004 476345432 919025048 424387507 689108561 198118640 226118201 453860111 855904872 981526221 209295176 164413716 966093731 503279657 568782065 789445353 856222790 696782420 262296664 314282977 146215129 963020791 129215114 618748425 904285550 823816665 51824100 208598804 560542022 857953860 829487148 99612231 516396655 722679523 533410013 735536363 785045075 725672935 600465507 783583141 307308683 167093067 166308196 377486697 270564228 864892811 16484643 7845584 201127454 684856847 781292989 491765451 217001710 393149919 368753426 650682755 968066550 689738746 779051973 815277514 938957333 37073931 374323252 768907906 956099643 947282271 836015631 449554952 712114704 633532626 227086004 685411187 478394347 735292352 402077817 396471406 684105100 376676398 311293376 968872696 409256052 947466389 33289660 609738781 165746589 385314189 562951326 679793417 441635626 37298991 179094071 87786845 245820096 747452660 870125405 28247965 44563708 160041056 464111480 894965472 697331806 39956102 392264738 760822866 782595504 656004809 617279456 233546083 806539528 1132011 476863708 978824892 380541512 989681744 210282276 942825265 516911243 382721378 995392553 173338676 657945053 259009346 117199327 276665921 327520040 657211569 398426442 324913656 243823748 597231854 590365216 940570025 8815076 313657920 563252730 727421161 205795277 529201555 393326604 311720650 913593438 257249312 423421537 465230990 439494284 321629752 286994153 273075298 657849428 557941213 155077561 123292728 170299517 632225558 432342216 393401674 222918798 512442745 840237712 610834851 32556979 872166978 907619151 742718072 750092364 397689932 477856352 918210534 896096486 972789819 430239372 563362269 455270090 785876287 774328543 934257415 705092840 603572300 113930262 153562625 387122261 953466535 215271254 506699798 610784434 587046042 198987605 707201394 714151256 915640360 301468676 668345372 897047652 957048110 11287710 48170402 836019865 651815278 5330425 461107393 180422032 992207105 175667728 15058024 652659183 98545039 172911887 114528995 337677469 383876775 708137198 84998342 340345766 4072393 179813021 494547097 131137088 515664981 176106078 963530555 644324859 787785856 927460961 482181691 817139720 250219807 613835031 859376882 915226295 314877691 384481355 549835306 614075506 407242124 396241286 524082515 277693003 184636334 405652160 957858404 173334123 500043083 636962405 609025219 829252236 582689646 549162061 478287172 955709555 222619706 699787866 444724390 705080616 750332458 749273744 262375151 190943818 620650381 779611167 921189349 261603618 260054910 39046622 703060906 865097322 895996463 904126349 554718611 207421264 134737094 836839955 755454794 926161393 749149746 214425980 782017434 763908793 834899449 882433811 919538469 126361293 560740391 655982205 861570508 705832646 684844722 7169300 391830991 68785403 773278812 753272332 364275877 978269132 244687680 118195244 735487565 196947292 641228637 685659040 29996586 86351330 162729635 849236191 197815037 813468009 801721754 870606001 804631355 612742182 847689310 928435650 911720204 669602109 392317814 71268218 403929975 875975196 803767044 517308669 682270752 652227049 515515746 91618027 82866086 281139807 571534097 549036029 954487415 745440742 746677263 429276288 780199350 559561464 726460189 895773814 855589656 11344459 982832219 521249691 254095029 428102882 300783148 413857714 937834570 850658280 618435900 914522128 683512509 702447322 798880347 294505561 478895174 942953745 75484946 599554080 375406323 897335316 565823878 579609474 916367255 225239482 431601624 250627583 777421043 848504804 345228775 83419327 872011670 359407883 677876903 928371099 741207066 45685593 695523305 337987601 495055600 895189392 604955442 919511698 729533238 416599045 679425433 601757981 231290391 246107960 774575492 778478246 804281785 800937113 580652645 440498680 771001253 579862291 551821339 101764358 946918617 476445738 33120557 173592066 486227132 356845987 677318535 747711348 617251834 788985649 340022535 178057054 67520001 936433162 527377911 397464519 483027015 10039419 670841233 111377894 446420243 794196287 59473270 370343058 231589551 780310067 27890314 670401688 987980257 209604853 647761144 450064034 21800055 210769891 145455479 103566992 417970425 508064039 637802677 408796858 277181527 51506013 656797772 643088150 220528328 160155532 404601472 188260772 702685684 397894379 877363705 409796984 60236231 822625406 762105742 556140161 861385506 28599372 331695753 430543288 575624266 239665582 6682493 799256737 101253784 437566686 934435854 398000175 290170920 174971723 331412371 831788572 577744790 166641619 427227524 791757412 112580682 497928724 706006650 830383407 84481839 611164586 613312167 872026851 686369946 256160742 184432998 156669271 160506484 975437580 579322651 807570889 909562066 426998929 360360917 856201660 565680002 786716710 477823713 126570529 532955583 399146119 717228694 146728101 135381076 679824730 899766490 577391243 502654230 350249819 521759132 756123716 963330610 324384544 335625663 523646346 775249679 882774064 592019869 668389082 304599980 33674250 447119915 25890672 494025638 59501979 632066174 284482862 828411130 543199806 417433454 303374263 936453399 578764038 132919973 106246245 121509401 414118796 2359402 868883902 205325542 520427392 267071690 345680750 849789274 642386567 953234597 66178423 278712175 86462346 972782466 254282277 189559707 265409206 132746982 135187656 190804116 517456019 335700275 550455237 958516146 837214740 46073295 634585639 725522375 926885117 848927706 641009737 210720904 331431741 841419585 694230787 494260078 8745075 38305129 333393434 484299618 734485595 586767261 849584504 261629760 496062688 839163872 74127401 906981691 545389244 509184515 396029869 708069380 125811340 857023702 281413898 583358106 500120188 166532967 459745034 789749840 356882759 542250647 434111262 552415778 700459649 523115191 759217539 425008276 97260095 776588279 452973614 446995701 342719600 298113795 621770936 898639443 39798800 340662832 25269864 574565970 117691737 140428233 668790878 709349254 833889232 801174423 281259352 315518620 824296468 178804761 955149205 950395989 731109034 541629692 509086648 281018359 117565377 797094814 27382616 628034100 823185718 122528488 807624903 724658662 384391659 549763265 100857417 378938238 82376874 442906972 726998204 737983459 204795741 34570744 648513062 667847960 460328481 687447076 826012127 403182550 415491203 642900409 25894373 86721330 828266706 350721864 714516749 800821823 918075690 267673585 472396258 875937434 733226917 480616831 38689939 477648783 508131908 290537184 75780260 432474779 246742299 709078010 311305133 753141213 77841396 404298629 809697696 883371481 133617637 539056776 487431519 440630844 585266019 72012142 224354991 23726378 855503454 60789747 200665155 237980935 898742963 242837913 684831687 844946357 28246248 875245492 488306789 305291620 662845249 484480144 454953001 699517395 705677100 598663478 831512432 657080634 676718966 957614200 61452022 486489043 288109231 52628562 600220660 750839008 949085265 799706546 212572479 255423553 484033812 301352853 922221410 126643032 749082236 18201577 621683709 854326678 279707619 981303829 441391037 345079191 791349735 166134696 653494458 826795600 544752422 206034644 895683144 586495618 6315623 950222465 879546030 408553537 81666253 499133951 760593997 818660557 384607176 719843339 269770681 787717851 920740684 956343520 146148690 888891048 395521012 609447553 624255882 69527506 655580041 513611044 555728867 685649221 712328638 468955665 572088495 632797149 718919941 239099332 613867424 323778343 387191983 219050491 398440999 610038008 654119612 502275749 599992729 671268058 287183243 809969268 680687552 353926696 700861079 622189173 892588286 371080687 517472026 516776175 80703783 228041917 398746376 677919281 435675608 145204564 55017330 788830746 218596867 474951925 470263052 523555188 97491600 477906091 240926138 764757677 749093776 892531852 149292580 748598796 435133717 792785026 487506164 636413507 922850653 961521985 775430635 392741120 539641698 258938724 807396123 17888540 904188605 379473767 686977051 358849987 274346901 45102234 105865034 752193036 716890546 341091616 15290530 587757873 867469064 908096205 835028589 187648566 863583177 911107583 318214680 958861693 218412463 312451261 110136360 634577567 783246415 914938387 735083456 950790222 590462093 671939551 260576009 92084762 233204492 407821240 264402649 787001309 107593466 402646118 656887615 822347591 104843168 140870620 975576267 463948656 287861517 188280111 777019863 679708463 499650950 471839175 748719167 110300583 102200045 339147768 877206821 239453448 773980344 118009237 638570676 637175613 804805684 899187412 269006607 918903940 37920887 712074824 409017554 862999150 348736931 356546259 230523028 825372805 396704622 10881094 573396536 156303150 723228773 145278323 679311873 74873615 308141124 502422143 359797003 449630327 419874266 281099818 293523989 186616736 876234957 514150012 273279401 812988510 670920197 18220728 775526654 601230143 120019380 705952200 560130288 23336283 310619488 266293868 323902408 873460985 785507425 180974897 690627967 64901967 902981640 50987699 782438396 798059409 257383352 324061131 362539075 273058645 379329208 846868217 252053401 275801597 470654222 543588497 626582065 996741846 793705808 147868784 67898986 263801743 939420852 93375288 730515185 827456533 964412519 867659770 769264437 902787320 993942194 630547797 44578588 17483713 692347458 278214700 506846307 408506520 466857314 210274309 762577074 807393219 127207146 753110191 27339090 755956907 306225512 626858444 603221385 900754273 909401315 665426317 952617512 10830054 892871682 707186040 24199412 941231699 823229003 742729920 689557415 338196537 740195167 427885530 561903215 755308311 158124621 324133551 386042112 266408391 662682530 641018119 678023785 991506321 163090976 327663952 672137284 139199886 21816974 759183373 780693006 473579684 788426653 996646088 914677786 594240750 827791401 235555483 716249007 91891003 383521391 765091462 289443612 500089565 756727228 70927024 941856603 898994048 26929665 915936905 174700421 881761358 917056100 113163224 161982960 792702466 432107977 226005136 793254393 91892663 385708257 739737303 47212858 348426198 21114081 382175255 170821939 247501711 58332764 599222196 508557261 880078860 721376712 560652663 462717432 329046566 895352903 864939697 31430903 123424546 317846463 639040478 20000801 742804910 464731587 746869787 927746428 8005984 542011429 995828879 30521844 242767200 222911416 634107841 583595853 172395137 176827975 570845758 202987139 413188574 782758706 545862258 866303060 448437433 319724087 455093976 972328591 720971557 641041003 936169629 13173628 764968859 528522361 243216977 686862517 774760167 151647187 250750397 689744975 51720110 273102233 497132730 952334957 699210893 860066169 677606041 133242741 862306358 872936913 516969393 37298862 187202046 787618239 791369587 616708753 618583041 511294384 774148337 410107109 505636058 765485389 833156085 691606853 191105044 583826478 326385501 574831732 674376181 883402166 670957403 534757098 929857600 216954703 525159519 707997288 180402496 14920138 764982829 559210253 263419044 314307431 790601209 677809803 347313996 706942281 857209168 73055983 388471914 974694575 45543182 662420526 973249259 574605404 101603373 188732345 487285774 787950803 519208415 661712022 968551261 761041550 941823293 619510514 898372734 674399396 380162383 318086469 832845960 40712609 886663917 177087413 804047879 757222839 486952483 40654042 666108481 105350505 593808450 824151169 993426873 425851025 765546724 48586269 449596967 721130430 688671280 718700528 126306386 211032654 144889420 47269553 336721670 910409174 13135497 105868793 607367568 977083623 610278192 622104218 288868477 180921779 932654670 2341615 706469979 693196131 92924472 268441141 505536412 914693178 126324106 110663345 919289524 532664301 867916047 754088380 920352444 825133742 522998584 342476968 397115510 42399616 330652279 108780858 275845836 548801506 996336740 625030947 363898741 757986615 220626782 683194311 437284482 700057856 866798956 779429841 395902357 787909919 828863 331762567 632107967 838496916 985479587 801644309 32352582 97941429 489708531 745833932 495501315 733553402 699588825 3506918 321707396 504484738 231901320 175154226 358834248 369840101 542920495 470339161 746891144 95608626 916599977 545807981 574288112 463922162 378573656 859801661 638401658 467087226 892989314 72210185 376972389 267668717 824278473 461868778 804952106 70244786 829976537 934208942 568142505 733658368 923283854 84553875 692696684 779231649 379009509 250966561 851257292 156916901 168339227 190419272 827191399 784164329 308203728 849966554 758873778 666577765 439008731 774496876 853652585 640144535 415606226 769738918 604043757 553540918 674786394 865210036 793228910 952727007 893306532 122040095 916963850 552423729 654858599 171645645 456135812 298874235 117377178 25946196 382460554 963970160 618437887 915724627 82504803 379483511 458502494 612240651 652347934 456183720 903836958 494303992 576074843 498978523 897943235 597534919 233521083 473721296 309352669 795633655 826735524 205216844 677774889 847494165 672056516 725470926 932877705 219388587 711033883 970832972 162513982 77949434 318382999 605168929 611347111 904453985 703278577 410340974 677163401 601048691 853992382 880199443 836464255 583261235 363814878 179410350 282665540 858974038 473798927 721132342 716408186 712410358 882715961 98122961 312187978 293443843 549713441 345716541 593934474 797703352 912144229 512495336 52600671 194553476 830546178 919645822 18577321 676898956 743874254 208418205 162131440 953328912 320873997 393090611 158741896 944559674 898599303 104439002 559123381 806764376 400422550 535332015 610804259 869362815 961033671 266149996 955291632 141228047 781602555 426349338 409458925 247188913 458045754 428793715 384027374 619039572 287268421 111169022 424038715 853696826 167074343 657703440 428149165 281328744 396004721 684410655 897773262 189337517 21273493 935474825 621782554 444703744 374115542 444109046 108604529 64311388 444035678 49985899 175232824 363462998 497779667 942726342 707484765 254654056 633999301 560679785 149915694 520160432 35924064 755606120 93824402 849011728 329904736 100927479 905341502 132487068 508606941 860843694 882592418 62996632 62461877 988705049 194569351 810294367 429225504 170514227 506809447 989111766 787346909 981411728 543737850 58590800 193171742 924287704 332227987 71460077 625870034 979896261 676978072 119881885 314777613 992641637 734927392 389218177 480572932 492679183 702186979 109455567 425490941 103093596 373274576 171742141 951906059 597926586 461946390 119432326 943262830 340134898 406075062 685764195 968051705 460726212 133896136 641292014 201133251 37613751 975434060 149135243 788953199 304504872 686110570 337741648 506108849 766233080 258594521 28009657 751920191 100041273 370268921 11878459 267364310 327794007 595424294 835109840 307224100 619819129 715491995 612998615 248215209 754113876 224413183 34179636 465680636 331284583 152883381 506166191 667414154 161952295 414475640 746048204 909430619 140226332 539929773 596234789 351451578 451304862 510287355 542879468 50724499 240298844 914170513 133133378 459976210 480176745 861456969 371900514 990326452 583571451 542509559 832270745 228540206 92514817 552895415 480388759 311101705 469739378 947558209 484402875 776945078 54604564 383267888 726115643 807541311 472524679 157490798 275182881 51869522 796235480 321211479 556849566 230248888 110842667 881991804 684960630 200420174 431509160 216857593 520056696 127477108 616724828 162475198 537920573 860691659 988956208 156337931 953795962 817738156 78238761 192181574 702806723 665241802 740603564 249898085 923958487 670069365 407051921 48792861 578567455 650089504 701224922 210558787 594969319 682720539 967699107 112881832 774253588 184142511 800330809 171759075 661688092 926382699 735414249 859909020 756851299 441531307 320115082 324845553 56108307 860818350 835264913 270067881 92578885 830813517 555205158 364537322 179685285 657813171 32724254 616179748 568603831 855821066 547595736 887459970 430058892 414486684 221444199 378265645 919886114 144166082 663501960 2999960 17914081 692614865 76554017 22473465 205711573 155859463 276893557 62944370 327170397 761448903 120408330 551463943 474477839 89415559 400239976 864411678 813227686 343000917 751147583 82561273 968420016 4643949 314735071 575023368 200717754 933435372 8669111 637148802 682539729 599130819 750458841 718214144 377308971 410993604 158376821 480931441 1005489 218151259 143213721 719333208 681820954 965268488 217602814 583373689 72804024 42517818 423200934 434161657 643521646 516616145 699999852 202116429 959753083 465160889 134269153 118811372 869418891 616598909 521399987 464745843 441392082 712326304 402296299 278835890 812845428 121692918 495591167 655107550 72438781 609878316 712413871 303039648 9983721 977459914 751434938 647600843 955328047 31818323 184931905 741921831 588551581 878492223 422429027 496048838 185832559 6852587 877575244 879909914 150113952 967913072 931310258 232575655 846998233 590434432 9895653 643988915 759159062 11491931 606386766 721250212 573000974 979605814 639442719 780272022 46881853 718291515 903275083 804272633 390771754 106086989 170301110 28913589 904750015 455440360 719758780 703278749 279735234 927766589 444308333 290657597 48888164 334839869 952584269 143611305 541260759 764020105 236055002 411784671 948437529 524735698 695773456 885616010 905307340 133724077 951668642 956238211 521374587 695658020 994573114 158050009 327083606 159139699 327907706 306094535 176919214 548975767 35000430 737512736 931960306 292888816 197831104 92604917 992570729 663865133 891677255 599949651 604948518 53493717 71467003 913001505 967505608 316111126 440937864 153283914 642119089 875837622 777244101 349808176 776755197 875605447 155543902 913710599 679418504 429756669 341337760 876658645 166495849 75946764 991006178 477271113 740762202 147022877 45320472 400028250 809402322 772455098 217613584 227862643 454613436 392087055 515343351 549583410 291788924 628334530 186568472 50451291 260193217 558878762 941615753 681264572 777275621 299733673 594628434 364646261 601800970 663600309 130050046 948458995 503430129 813834928 598817121 551188168 645508772 369273604 970775179 477607223 482600716 33134364 875785142 692421066 205097014 363031352 426820070 339815514 747306494 101805625 529565135 2294281 162441332 617046418 66089153 29483734 42119121 272044669 750270790 709594954 371708851 860053084 44932252 388768285 5096794 816255416 314477890 190036509 203768551 993416782 49123401 768321617 524618020 531670063 574416854 971542187 470462837 162958069 779747381 838509871 745204169 377506883 397074391 287034352 206912824 374722240 854544889 267176136 398666150 105910641 91415506 258387090 445191624 241876956 488179232 905766612 507901936 849218340 622825728 627563821 279733033 804992720 934688932 304337553 143680903 904941203 183850868 397956839 854511375 674093844 129291533 373615493 901891971 286056079 595676044 481203304 610140859 589428733 16776514 703950675 536886909 302430003 692557161 734186147 701953329 52054193 322492500 263720120 438922876 51779674 37788171 609274134 478479580 35708824 833220125 725687452 875440892 56726121 81007691 335883926 190908356 659622117 967934886 848320056 917774626 605797126 906171909 306082843 615176407 809281849 448521867 447382337 300756041 708161002 755127563 209166379 654660458 267829148 859942870 103695816 306981347 700808885 886838346 613440537 525161917 810307922 96410751 52520437 196665516 573154163 565221377 652306750 242423792 229569833 714043865 157727584 295047224 204204875 252984252 727487126 356158689 815360110 437592835 671258946 999980562 304511274 310366528 30268713 442313365 332354200 322492923 42112566 111790437 4903358 250242483 543063281 513538920 694535952 694239418 523236458 148164648 696628520 608499648 976324575 250580984 767736032 352986220 707709275 16134510 770732305 747837861 341398264 996900120 909182332 930222525 101857933 842817797 698046539 62067413 215725246 832678322 391054146 143076238 350353544 143465577 986293886 870757037 454489022 872105741 273409239 992682898 561446518 187811688 458118558 170596629 884169887 451179945 77995931 678877148 117774082 815752981 154350402 607423226 360924105 892637907 643789716 456648506 56728355 277584708 261081322 280615054 605249651 406855195 346603527 169356676 84736569 162173936 316809523 794523602 951759377 389460656 882840454 979990907 630153002 977703462 149710907 837916282 595273227 673839850 902180518 34791878 324745392 394941213 2345949 727826094 983593618 391581810 335250050 221092043 846402381 224034103 567850736 900924462 827676390 675326464 368550520 896966181 545282345 50462014 269366556 282211274 56679655 875362309 749024730 956723848 805191514 899251400 216499608 517826396 705538643 561632076 962726061 192870096 543038343 119419520 675325088 828344133 941354408 163075243 384391344 553162228 903414272 837071978 97988197 244717276 475606276 25131133 702320819 157160757 777650538 45293000 77071935 58424962 434576142 828324069 958311583 249424961 829673594 92759602 792699674 868393524 198071258 535143221 101358228 774538347 212196871 344089799 125780670 889152892 329148541 877933470 95179404 12124045 630751799 19240752 544414321 1657523 572938534 877553189 694344510 804708897 225466540 584127658 332552443 200544973 171996063 102393437 744635723 478578548 672932488 64956784 588987285 981685042 300756829 174900796 907614271 932102180 107547103 969111054 935882395 640862049 116254320 868778376 845873703 705664922 638444742 935709900 794727731 957156276 884741596 762811167 933965859 415058916 200274573 826043833 53662992 689067974 662554485 559262817 853741442 366089293 801470639 111609385 927804840 798562865 163739575 807453940 818677554 824212178 254817545 409670298 78792599 234609243 26390706 121457136 465832386 309277005 479305296 944867158 936520977 263745067 503428019 194092251 364656822 412305929 866653434 794575608 17483567 410685457 304046554 964461796 219839245 733141005 180284783 23162247 593414886 3062822 1682011 357751061 187750802 644113171 729618936 563490280 488296335 350046844 37390598 127307768 14792547 199111164 801697225 535095079 597268548 606691733 229917240 797308637 169473888 275109273 809285831 749648486 859387360 893152188 312442136 516252597 190107110 902945157 726788728 633630293 391926276 944532750 801599202 594065775 998050661 95042275 657365690 657599909 282199249 577887768 903798924 697092849 871689298 543815375 223423904 626749369 167138659 997999103 265973983 847623851 43840499 527983968 472178514 776325475 978728044 473598315 159431726 28390371 666793476 188022751 757040442 20345271 860047549 349302290 793998113 625552807 761555107 577616843 814229141 739854649 30762567 745378904 505930869 520925394 502542116 814821370 254844894 4248025 638936023 46769951 923344432 172602452 256386115 401075280 145980991 512902467 479763284 208904188 461841457 640582845 564338223 627485465 213105779 390394962 570398885 657644178 872556247 506553563 906297150 449179959 263037769 625904475 929163610 936237435 225786833 259416024 426739941 102810119 198068762 593971755 30332743 381609171 674009914 739052850 977213045 122085572 165486155 144231016 552320 10191022 60356764 409886674 642598360 184500555 796118489 978822877 847783643 508398027 682747099 929913331 17205352 138138903 531983897 187974970 95667739 158784901 691336513 679824875 271367938 950309446 93013922 629660390 571447805 196609956 822548428 529224767 424871434 374290948 61534639 241589811 867805707 27828580 317120044 616696683 405668338 618177674 65096921 547330963 910064962 118362252 629128345 678734278 105853903 595054554 886100123 222814267 463767630 907683773 164799506 284362194 413268552 6201259 108495093 248212534 939516012 903192309 584360668 716446382 829520157 919153216 136231840 880000316 549490287 875863509 161213445 317360849 202858312 179307939 350388025 54865053 149139814 986652026 861432685 468316483 508746259 551291644 851360743 547133443 801688352 71278004 617277869 396545064 131017284 652626320 975011614 850166615 651692964 587375463 142810792 128639695 124319044 131668633 638084166 829639545 514269942 795612942 999148139 431638733 945726569 963586323 857741282 254485941 258522822 979950749 457367994 770626179 587379557 716087776 51547835 107349385 124246917 66925523 237011831 787662367 461413474 215851766 189160217 831992957 209116032 82337414 875795914 52491476 348482352 161210692 948419958 758842765 441706062 684076465 426591519 18348576 194212750 16788297 603256987 899812833 513948460 280061873 602007703 786185434 675562620 398756128 266581415 853844189 727065442 887696143 655371039 526538663 58979071 886511936 581899374 485564215 544659901 866532807 574874496 601122491 218903059 800459835 104892971 283948701 625371186 121037018 553623827 553687156 214809380 127122907 680201170 837688642 301431865 470686387 986964670 226241808 53168625 709616982 140989154 824455059 110391794 674025551 783583538 543990904 770768688 913795452 542742614 523609147 511309500 972036255 927052187 426129178 908456418 922817869 762860740 846308842 869654972 138132744 557093013 260718718 313758478 234071561 307350643 258155751 263636209 190437246 79489607 757881166 574341768 322576232 725443490 772450045 709797406 785161292 754192996 868857350 829652606 165970874 789570428 671945093 508488771 24792428 198070389 930973823 285083542 414971797 922744028 727313666 337408684 795823562 564260596 144751767 989517895 636147110 486473105 513231009 34407915 682843027 101484928 383781948 493436796 119102623 208793077 883911233 842455873 716390267 87931467 52170630 649960852 670600220 957609432 213079949 640994344 18991150 731142625 77186318 372069892 892517533 234283837 325206552 696334899 462123953 169878386 310571347 386368011 843665697 664938599 373168974 361593224 889843783 275553413 918332005 898196374 25933716 437404058 681129195 456225077 319842725 302507497 217708870 79761340 317595883 587746385 722901812 436241485 925629758 64452491 240956229 350300284 862755617 785474301 846915634 709271854 647255817 888311984 330570366 523302011 533834113 122466447 261096164 940008505 394316712 589724697 709050855 864039948 209042912 317555626 9709599 265452102 602210143 208794784 15341610 606193182 963746745 483050862 497190973 779208778 457681442 610658593 718981536 149498882 621141074 140004194 827010843 715787003 994354591 480254390 452031816 233504897 412915228 33257646 733250117 180465188 597962214 278887922 540671866 205286567 203935585 414428759 170128940 133566273 876683549 455173489 674148417 255795312 724157529 891803048 387355745 922638283 164060339 300718698 450985078 88612432 973210190 529654328 147707207 789475030 141706579 971225922 377445091 46603561 768258294 214967699 903349897 720853449 905030971 535838555 589826800 741263445 496505136 24953740 120086458 569792293 72412371 796243580 33261795 668247074 634443898 713315789 268075025 478972003 512799771 141419920 365332485 164754493 373853718 376577397 574270716 608028151 53931107 905890548 602837043 687582629 701411355 533069256 440612045 165635035 386516755 719020943 60088115 418759062 959321177 843742928 308725207 665979384 411130473 622202841 690106150 288157128 775026702 319735076 508181556 615849286 399011649 935451830 512117757 89768828 500010646 496975081 448878877 232863618 134491792 238830349 548742010 996687240 111128942 199322073 464692440 915497723 390084668 792624609 162667732 931515853 748467340 985130034 9648116 602879294 120369014 422327047 679871725 539128132 12427132 386993126 171140663 232510059 323128402 923011184 336218657 102792512 192218816 760229484 691170217 948887986 860584867 881734067 823322208 390797071 105243019 758302667 700930761 402466492 653719890 100861051 595981512 318386150 776188835 954919937 67352439 757120373 996597222 911471726 534708437 794632191 171394956 559216697 944582036 927283200 277424106 610462769 279595730 124353001 859363496 795250462 764475386 467257826 647972545 515858778 59129563 974535911 411577645 698583427 425202644 626535075 721973639 541922818 352673246 907372216 966224065 646292482 667684918 817546435 500847895 81925856 342369931 208778461 306329163 60845285 74281425 570148819 758619045 663324750 761319728 409443369 264526527 387714303 374861227 458958139 59582369 173055122 623446156 909156639 619720132 100652385 833094848 308035019 168047511 785661857 69596844 769883934 496334532 139249189 664027035 600194283 569796332 506448 119781430 16152778 139078050 480215378 434186928 939090626 892992420 75646443 964093475 668232593 679404697 819449171 681661022 663353623 621559480 394438386 829828869 915303474 157560558 164101231 866532782 305618753 689588943 219731323 322444802 891282624 940706673 226315080 441451916 448175930 233206772 293045123 652707468 101851273 770225887 132264150 99123241 131676557 572390687 946501024 204876879 159432426 796853688 587767471 840818134 894061785 610193078 206079575 646470637 766114062 247906418 252880132 959784431 684619690 199784745 522145622 741188439 253920364 946646042 426228987 5701876 580193517 71485837 804194746 671574013 873004544 628730433 39490803 795077344 243854404 713051044 289687825 660462020 894948606 79969808 83827305 602894398 214367985 796394781 328209025 126606637 253827334 449391090 221617389 122840704 381167071 942794529 690030701 124221804 259491895 771773263 212088896 623427764 932005715 522463402 787528145 15082331 162109945 182367047 894803770 603232019 950803980 15572377 775145171 31933729 327203604 786359791 50691574 86850126 714446143 723743655 365045693 905452437 27305438 471929143 823422267 336671525 60146720 231850433 159735392 381882040 967966405 320224807 836807705 769376724 587319057 324010346 73931503 537738112 108627756 10040554 647820697 323577417 68908723 505799114 607455420 892150199 455670223 873305432 78648067 591060670 867059396 696206517 772829975 921937886 819407156 43207529 631403022 870867729 963462802 463115128 229724545 43811202 746018004 571912372 466031421 573040850 82869823 652316629 887059133 344152052 470558509 844610929 800594362 913005317 371729867 914283851 501138426 993501046 622930740 976761793 300951541 13742323 988132591 843573628 352929416 221595083 969311357 417346336 809119432 462612262 355226643 207553289 822732204 986862725 234506542 73172949 280052601 985613593 879945289 620828777 892539491 813549533 430007799 813684273 809655850 88887643 322062754 55523658 671109257 922888478 652003208 19772349 343016968 18270618 317278900 43002697 937661259 479590102 524648469 211838028 373266442 477497079 354570923 560828857 101457863 584000110 900433525 423842549 997070584 659950148 537614737 241227197 937565170 383126969 265598457 291968303 417300925 682142163 67506319 660592458 71036317 756797674 804867602 564546138 62322100 895753197 400879305 454357843 436095425 204642020 346101661 791389384 663406944 765475368 551578932 403095403 823521175 250080199 585261335 295809243 941021923 378988058 486495395 688249975 82156978 910710412 567696588 154353336 573141250 879825425 576217432 188487280 464977226 316739334 605913127 542817454 176764425 935075129 640994918 195462974 934732001 936150437 109201180 395339363 238515040 609960363 38429096 104509471 151542123 619732399 581910005 351998018 435195288 154525952 954679931 236814105 469847883 236087367 348971029 279365651 107995737 800368723 778055229 481212942 449308810 823709501 928062640 854500089 57869857 346166550 872168707 826640411 428966156 958974844 637558212 639423451 668221997 17212400 341738259 706548691 317038687 494499450 411980380 345030320 732157802 814305648 865875761 86331421 707787927 371182302 331185695 770444104 54984106 701307899 424674004 279600465 68199180 660418383 25847963 477071333 437666382 441789813 120946984 747003362 853311354 404159458 796599807 615535426 316573771 821223716 117882656 742912564 479946070 494572196 440036385 63590046 708451265 454799591 199386322 856755019 430432016 276975873 350360156 547232697 823441657 801056404 108731089 679218795 764500734 775207032 100745752 217780923 405016802 555929988 553287853 791679909 841738340 886056856 474214645 900852202 473588613 704344871 799940316 265252520 569324532 520285103 971466598 421072340 255980642 265357609 398439562 69933900 89829788 917200929 176468481 221409827 599384849 801690701 403657357 627602514 900383105 26179610 293797597 773606746 554422672 704660991 800880744 887887934 383704725 700642651 577822737 822748833 607823389 566130228 632569978 572581248 945279573 215366669 823758305 794369587 326868842 606682819 678605367 514486533 105762975 894349499 810825755 901130557 570964168 802959775 686950130 193449081 133724582 721956183 802881212 202059805 506779888 870187510 186084489 140461044 513819937 51187160 992988740 495768094 845471589 925719566 773430531 956810819 772825759 269924324 905711938 431998059 275602360 772663652 755268389 503592597 736699579 353651441 581339603 367075437 37477505 243732156 191410276 653683520 546888066 425472620 951254645 176718125 852839214 170171850 570376525 866015183 777967750 435213721 234319477 18326815 113534265 353015472 597129840 663005800 370178454 625964841 152755364 615972524 146255153 608712392 784117709 950722048 768006544 632400239 562179428 558179454 468326705 963348992 537389020 114338493 891241651 514030930 502730991 947780041 2456121 516233967 834397871 705824602 469829371 307814144 438077392 383995126 670887030 440378239 405609880 317537426 901518532 862022357 399802653 287917850 985847952 589592547 681042735 171037991 440907324 806345071 753319460 279359894 97897121 169448728 884171878 178127622 604880390 290739926 125751923 628211662 418541007 310232406 490799916 883353757 660291328 66034412 79254241 179266735 789687809 798498344 229041459 720996867 558778936 925456298 566811907 18851038 938483212 116253213 607408419 61378171 535137941 292319208 429862903 123596124 219680774 86785691 890901477 795086520 969717400 270257685 742528154 315902807 505277258 760898983 329715997 152289050 646236636 272245300 514714536 582446610 643496633 288717315 368201358 364899391 140855509 267634449 233207416 480755722 582476691 544576203 332066721 130137858 812438040 405624926 226922191 217680410 235008491 609270053 944086387 368119500 195311054 494168991 246998947 719218586 896113606 171264095 5916969 309266612 508898850 493029126 337662895 300234631 728443383 979069060 364894048 534008649 557526406 421806556 794653825 629928733 918575530 579647306 325289297 708708563 937718476 793368417 563832531 549068283 713770112 188632469 929199676 400225990 273131943 79411892 644737359 723695663 345527387 225921152 125855642 352055044 369952008 810055925 920261075 813464833 407795676 394462064 773494620 403900570 790285947 514552774 140162278 649482739 472122666 583271604 407109916 583960863 935009923 904985508 738826670 980025735 66197031 875643259 512146678 642225816 938314812 194913253 867599185 626021753 827798493 667521956 459995630 100661731 392710016 885427838 165646685 933338188 204626440 52014299 293985768 693787639 297962523 177790919 15035003 769275971 818793784 669883131 170910795 148010177 969555166 924765352 914760533 246502727 678571131 71212635 917911080 268235892 29659019 902026454 781260555 384217144 367856367 814882321 791212274 57850075 493403782 203432681 576452445 666792203 459791055 113130914 388124322 244746862 78548136 689975576 313863668 745000402 996013627 973542928 539179016 72842795 501779205 568227316 316132268 833931788 765264835 630906894 711751976 649082583 805703842 638893190 841501328 129213305 274307892 671836278 902884430 452216869 256831429 895057955 397328565 976086760 642195960 312711407 899003759 303363405 217986624 644722764 517908848 388769112 598159758 524857578 477929334 716823255 708805676 906921297 360121005 794885911 847870691 430258442 815529240 574456524 984333320 658465290 730835353 55714057 662527775 943390188 857046778 19885494 936887090 173778126 719721671 874006628 241039726 877283735 546904637 750847927 908011257 714105173 547248683 707126012 87882843 217193975 961852408 49641058 5956793 457011396 142572966 753460545 456017329 331854907 439770005 453682530 204224704 151342350 24850889 885470352 211569971 272053052 602498321 333550712 742961492 654124548 360839547 997717538 560130657 42300611 413796587 830728444 219199677 751444680 172492753 317910482 505306897 225859418 608527665 962049022 255500123 814692238 670022948 344263556 346791540 478162301 935965031 794573351 956446786 644239057 285276242 799002888 144693455 307716035 630241021 48671198 456978544 337903602 733565408 699290245 727850307 524140941 908675971 885666729 833716941 338666314 32705461 152601482 289702758 470684448 217049488 426288371 4392458 92719928 887944070 476327706 800391667 610136808 551950414 731757731 746050014 414808093 691043279 586516825 655724257 974167998 861578492 305259167 614319901 16778232 693590392 289882474 55481924 722283037 938633040 31640959 655167156 504436068 971620488 655429480 66122387 100477396 608259900 320014365 697302454 281698466 241445744 306928417 386512770 409924134 692534125 857563062 323889529 863301139 34869020 951595229 490849851 24862115 863035051 229421819 259160154 629263221 959053078 846527791 296173214 6443314 998797186 478768542 806592168 2139803 563049051 241265925 520342179 179534185 818743995 77370057 987271411 308400976 759887186 153735168 708849176 551877299 695272844 90910654 791226369 104659999 799176299 922621581 101316680 871939714 837330525 749739076 98166651 372679723 471980171 162273890 516122313 593096873 565369301 424852489 107172475 437245813 78521054 486304463 781678871 496787181 92813465 861311173 943069794 213048735 546908796 451286322 343219605 692454601 617234674 348185133 742816828 180061839 880933956 204523284 995172538 588485185 756129785 821609235 527619144 806177962 318060067 545454848 126723400 234489029 86004334 403310271 238083906 33399340 553178422 870641336 852745076 68539490 450587146 727791049 818143658 919075087 295201210 164800009 913948588 46888288 645837824 158571838 681871093 794400867 783226779 592936740 836886366 194807619 690188698 99014436 867966479 36898817 700954942 826772042 689667340 50368070 775447279 276223210 783560824 4736705 305900802 344590615 891056083 162336765 423002351 489142153 65897938 668705785 456014147 884580872 565744813 400390866 194477274 922981149 426552693 762639157 269578860 298843675 703072760 237495493 324113741 866625253 320527586 802947162 38495199 80719525 266789274 894127844 452257091 765239072 445490031 623112817 546945697 616645125 309667277 657366736 863401263 994322984 707238643 846059212 781812434 774026504 118401198 793327404 883413088 208616142 428848223 83009233 603119978 428259852 250112426 283450753 657053525 250670225 204375653 845863987 13922626 273414165 690129145 992420737 280743861 165882666 698862849 121291618 157048333 23412683 109972960 723436187 743551461 451501285 354981495 767533931 178228302 614463152 550422655 988084100 901888492 428595976 280487657 409467460 995709889 560828714 725644698 681875723 76054550 285779793 996424327 792943358 942095548 735875636 180782481 579453225 444237790 838193292 359034272 380595419 622084898 544138463 552945700 373977565 263106609 348738734 498294408 132929397 373759415 604085502 132385059 468650392 783818761 226151868 178231373 424596021 316054605 323997170 441116341 233918827 728746617 828416375 889299722 691671881 895940913 332912011 91914014 418175086 170123713 597650890 635342525 665734159 195483894 936280457 541779508 143875331 475181944 349845273 459071102 807167274 439271588 515893898 423653560 143156956 34261136 135624841 959608078 83905261 266014335 86239134 255420050 160863263 859759510 882829941 94541299 962418778 685506370 821161058 680199046 409539006 139704814 7212185 58479204 580821879 546843502 65814661 833659480 566091527 503157773 93866318 282562633 388404568 601461119 13225745 933094665 244467322 658356146 839957446 802300100 242190381 788788530 21470176 910224653 426127954 396790792 502442475 3064349 972640373 228675050 981431828 404963776 788827880 933604710 290097666 751206606 57094489 85785701 399861581 336435123 710412826 129542906 956704391 309533684 423393753 119847260 88955299 417677401 235520773 133105276 791364515 394638144 305556504 364902886 661674608 646951481 33476535 682717420 432131213 11465207 87232995 471527645 617763690 399802672 525320005 557082548 233492581 75870423 78466790 801739449 930818181 940144271 978001658 944877784 992157910 946810340 630302216 374253634 342592897 73158288 823412866 633222434 425266891 969172277 108074483 780695297 846898922 396314847 234018424 393043162 148683263 395321799 76811870 414137387 684037689 954809547 791566551 189011235 36448448 228200655 827310058 143529602 662147615 351975698 556142368 253535462 686028304 730176876 219016798 28036554 50976898 601151086 222291344 597110827 748770363 187978328 160194866 438058092 280428358 710486692 998405924 520047488 86308920 954673445 672305539 278112818 909693811 816070044 916284140 402963518 380298530 430350062 338950240 322151586 261975585 609643373 181751283 31496537 976970712 50977225 618199921 530665282 509064366 229858347 18494734 218890972 434166605 302685454 671713185 800432208 31729440 301101809 587490840 53846367 819389526 132842702 994857357 140451640 853924747 327456659 714845103 77131590 620680080 867635784 530934202 95116380 605681368 602617751 192209677 22581387 503971267 305833395 520317178 881653752 538106999 166716883 822671977 392437071 2593188 722000814 612156 557485175 929946050 75929068 950066115 76536584 961482667 361045546 788635788 82798089 572413937 399668543 121120706 320934725 219987436 935902199 828814487 400417050 262456639 815653300 335302301 501748245 500949704 628607446 92296788 733974908 864753930 917207252 601411727 838110814 699857196 206728857 757977486 102354187 674953628 629239754 866263053 794324978 656496697 940813698 386424549 360719919 98815171 260313387 848908354 383387765 88498726 888326081 552594606 407324307 353783034 2241576 592630188 970005318 174999555 877476461 23184951 395973438 51520609 87052377 678524607 282934940 23236968 14699033 40669951 591897215 614029808 945119144 749720841 948583399 955968501 659499247 35599615 565044561 942484409 172689706 330281017 354809015 67629468 965977261 230142122 439215921 243519619 232324827 979483711 474067828 831000539 178656690 775761473 517294669 752830881 570429571 203074139 438149226 11216182 642384279 852208300 730873778 484668731 689152310 663732031 266592346 717235045 619664825 110692916 773326479 584479182 744831164 934684829 825888069 340158130 517851692 50421391 918798175 359968732 521810655 754995793 78139268 873679709 589687121 152992758 548923252 560585401 957896946 853549444 645263630 609870302 531796224 208217478 58380636 689820083 675166552 220740970 649780804 933204775 491833738 928637373 562012288 115434352 597729919 299805963 390362246 578306428 634977437 989017929 80524274 650535070 902939023 75698649 198810104 378689593 301753825 655935165 277737464 561222864 817095322 295227870 838362140 358748036 746526948 472840678 528021075 594936813 997097407 255577331 974140841 201331626 866534215 699761382 650428129 106449710 432087359 770022681 995006845 776674297 493680176 106430922 709637045 681736797 534610475 780089897 628271436 320576979 374290251 791345077 62724548 658504366 130167127 520215639 723041828 179720976 609795674 69774503 670810513 756494353 769111502 852043286 121349282 373846843 600263066 710731096 313508616 234683620 814225574 564474621 265446007 585226612 608984335 963733450 796674021 987464861 572465945 733133706 310519535 374305532 163971228 353205238 599708166 436873699 399461342 718351389 592975846 91684684 950797733 987185412 505226706 756535722 444594888 663318176 270822723 359861527 859275076 729033939 762894799 916821416 783896785 695611113 508595715 827080421 435753355 755846632 597013606 154743634 688094225 390107467 733145365 670942190 189387393 805042665 779940917 426044901 997977547 437004557 167974434 664026729 457269588 628220698 682331238 334760147 84637372 101651500 201036335 761074497 70362057 846502767 496702756 875180516 426153502 309848595 630079871 397165001 573488474 684044306 747967156 859012056 365175847 943731718 575598102 344228613 571866899 858456286 174827743 233485487 898427209 887821946 105985934 11288053 196899285 890212045 484901613 19342393 992455250 231587758 941094325 155494716 409468538 425446935 600222525 630683260 370581923 838405096 658053718 798592928 467348563 350653843 600455120 187293703 976555913 895757527 587791849 174067351 594005465 589538567 698298620 448268459 569141906 193287267 250610527 795748699 520732798 595894640 202884880 401740458 174269499 15263097 531359868 237104544 386319020 933765813 732033291 140023103 635027047 275244630 602799755 512735784 532447148 724254289 503324994 620340487 756824610 485674517 629963628 334408558 27285016 378095189 538091656 27753660 409637682 617841430 465239722 254388453 832221036 870462692 569559 681109712 432297385 953516050 954716368 348674421 904949806 69266887 867838881 205369683 798061196 140891121 596003160 873992050 159288397 499488343 145322447 386071000 267667317 412243183 579783622 422833622 551045447 563314011 921539635 718966959 783447536 652375923 589412875 416920053 347110095 907303935 332002476 18537008 476640967 804001872 158273097 543070864 819370787 405768037 429582766 360853620 166242116 248843753 402764527 955868407 719248577 721762429 887244034 546094676 974703523 897388964 22472967 732697142 286340915 37295662 256552743 386981677 43318183 770278841 499959148 759109904 334396510 44234099 168432829 943405718 649095964 98392694 112544292 834681912 40962105 756699295 149032520 829948572 52374879 356820479 217748421 393917630 41892668 893565306 31805434 686160519 345752503 423070360 567004317 441552664 453656194 583119958 98243477 662260615 890344978 990717517 216018730 936666471 774866731 476575754 259778809 852399859 968862197 986227835 947935171 38836407 130525058 196377421 571976252 468791052 104190356 15467289 668442452 773484786 675544529 587729691 116249778 796333903 371106339 815942944 855030936 752277875 772397483 398364005 236857290 21193514 106207679 71770640 424650772 411657382 234498038 623409931 925015930 812221620 584909024 704453410 683561556 232553293 868992889 353875303 842480793 42533087 859635561 809515257 19625704 269986385 380366935 74552836 80903575 246929116 432852187 483538687 802865559 108553812 123481005 585335071 833025719 971756827 517876313 448617215 388480833 718419599 569941880 266065314 12565485 980725007 947026596 173758381 511831128 991784425 705118231 656900758 736821900 642388576 609160617 240789285 438790802 979838793 145330074 580764403 267905759 757298516 461887993 765127351 16372868 786821204 66847458 858171500 916639958 603115213 758185768 833224067 342698328 358625650 987811650 851781389 790796386 852909907 741812272 333085908 243394069 973958173 55555548 536162941 392457468 494148834 517291661 204024715 952656036 435860098 896955227 30282514 957036519 227979093 358724457 832880126 754284321 991048387 792957372 523324364 905515880 960476739 215925409 475064771 888994170 261866684 104681799 187173320 784042554 720366100 897851271 229598127 690771095 220124675 367379336 558221591 765328362 569546053 740228768 835971843 444870589 108600088 511233761 151334558 123695273 713205514 392238861 141641942 49574795 827013848 313105788 205171814 878210158 610547619 314464990 716494653 934663795 634359484 203293720 46760803 281180953 288441353 823409277 706348783 754775830 739616764 69201778 485547589 951323874 315420990 481776158 680957066 524639241 239597870 699094515 455723528 398942410 848072674 905493615 637280836 730607383 629058796 768762450 748157730 909648921 671129617 165357579 368479027 612619118 239843790 216857761 765118977 62668366 419421152 832140151 548264224 286461380 763592897 55312776 77890055 861227425 481241223 437666103 425801620 863354133 822217249 152108004 26046515 483208996 968795552 841465455 972726071 604121919 827402740 127851475 606648475 982481592 549544026 71988629 661090241 295514651 966845275 249699944 486971605 265045297 334782637 101241067 714686864 740845626 483972215 138982779 46161055 908286275 626758606 69964486 156079112 417041847 627196571 434854967 102243257 482823892 28925169 82655688 30811650 405643590 382187758 576474952 68218656 187966171 247537249 983353771 400101119 899426037 101208005 716831032 216432130 658455953 498013544 645113370 380449714 297953453 839899965 822146394 58666420 260717751 127856719 684319069 86276162 788160853 262309613 128913221 415419643 587461022 778989436 453876748 222135079 462808446 898700271 678872160 846478650 615335945 813496110 647486265 892058785 714780478 488522516 634092095 857320863 442085858 414470330 342126956 968366559 548083739 955157985 783890336 435681814 665918791 397492187 643256777 293375659 187332041 73612741 799778987 460023061 105063117 728557437 194337145 330851699 25577886 417619343 366081784 274380994 817064235 58005142 530047147 36655325 849412479 470363509 684164663 869491540 727051382 781432528 716377514 216288263 638969039 578219008 785659672 917194206 556246289 850596067 945289345 792105690 482630170 418624371 496458780 393802522 439466393 606646468 756649460 484725889 432648466 431060772 538709173 84870696 803053568 220362430 496628911 750949502 676678250 788226900 238601322 869705726 907419779 745007462 611497065 818933850 930746774 138428902 393744299 853725562 127802924 401533821 40571911 72333749 148726827 959850167 348777619 120665830 727585546 667242680 359906236 395174648 528733227 723467978 275009586 121545804 12498801 45095320 724459937 758602498 191224627 524992285 388634762 980073463 987101308 469658646 754574608 889032003 128762194 70165783 129522978 996452926 272267138 993753025 12850572 859288432 290377288 500141280 235427520 567840647 378615930 969393122 40912332 152491581 119599264 916552142 21712518 656704516 342047584 461520390 798152029 903015909 629128215 780947702 54769237 963591699 112931193 229518150 955921965 365586972 464402049 284704231 747934415 500541700 224520674 176022177 278914202 950698991 539668338 360468610 701137140 154133554 918207904 277029811 923659724 155452925 875775041 547412179 745753384 437631594 584878610 492550612 775800999 54041352 690848386 424150601 442619154 838369684 151891904 496557056 205145241 550053225 231466807 447480548 703333152 689732858 409064095 475767042 145967328 387686837 691493739 376108215 339704407 143408027 349728146 554680747 95782692 610624720 274536832 70655737 370237221 848339046 448034710 600831594 635916212 468003555 179204331 220766761 250655164 897249221 548975771 538531583 817406041 575329560 154459581 41945230 443298696 645099906 154940181 718244300 744096515 364925916 692255335 275326546 379691333 813324003 130437714 38881784 973590485 15973926 99471124 943801505 44247016 23316967 318617044 908456615 890222102 707028959 514828836 347032438 707124271 369083407 58995757 984320369 447812538 802691328 928095731 784075041 185753954 655674670 588870154 561193160 862769974 788851005 365218211 491933888 243762529 790183711 455603664 689759110 37131569 657399075 381838447 890414452 636875212 16723537 347493643 486458130 559791636 752277304 237166280 428889763 40639740 300921797 269656102 703559615 849403028 436657703 719600516 837817480 413139392 625157213 615697661 718651930 329272210 280951160 764465977 257806339 244755629 685457092 119164475 694105310 239660911 136270420 747757467 755601027 310304145 656156975 305295020 940288785 48308760 830637260 300960000 718945959 219924465 274031250 82452090 421381528 509083777 225348937 928491233 89798008 783234837 7047494 78932272 116402273 530552066 479538167 666750063 193008489 821586091 760660131 857822327 239447549 980797255 53167220 170250545 435671402 321801215 300278527 536615126 835207062 747781679 846528891 81115415 655604846 535861993 939597089 461398760 468650923 436420129 525919227 639790170 616931283 303487740 629321229 400978043 169901442 796520042 181128046 964474694 233219477 754765424 113240882 331641316 225644476 988547094 451194043 409533107 281137829 838471043 372667433 921448993 312889560 184715933 370681171 551789421 746135591 278630369 879216098 714130630 789452460 177951880 276864086 518119545 633250386 417181482 293659100 458626874 460545905 921161825 396700988 417562524 561455294 752672203 522178896 921076677 402737686 349968474 580140046 346349846 425841237 440858541 548349122 471771993 894327034 932505711 897308900 302004580 90434672 97998159 145183949 943076461 475745865 159490890 746348023 86939591 444563852 306780107 994241823 675841395 890276209 425830236 139089686 790738784 179090553 482596999 922999489 311760031 7086372 806034305 300003120 401804408 935591907 151469820 312273898 109771045 473434139 575091080 432327067 737716595 700941310 801452257 92526676 612346953 817904293 659902231 642796727 1649973 47289281 636511857 6375138 772813626 516241669 322006734 712781404 999400237 54393327 590446750 455205683 662964713 966435747 420648488 756010905 681932429 329450668 478287813 555575905 246139918 179534801 958679821 615050154 853811811 510788862 14590456 165468378 102474979 751574104 678780691 296183327 165798219 492593558 585727977 796034900 250895122 466274379 529358651 347893125 771231009 374978262 322802940 409035377 927826788 179132266 755099562 898064610 178515375 588474380 776702278 414335351 43044880 570434848 138839744 887401058 547410048 649398195 495384864 873159029 209902777 843451063 175038421 345136530 209242127 936196230 183317800 108816318 649458802 810687850 652531588 109121611 981663890 605442488 50726192 605268038 42500494 242445071 700316661 538636655 876870746 187363020 250041728 232889655 583993698 426017804 970564319 13074453 876369061 391426667 910652519 590927269 535658993 308836833 820458112 116431881 509599421 518047848 239027680 963907361 902671080 551969966 567740070 444213211 717386152 705475648 802067263 838435966 825990932 565702321 804159714 163959726 174814615 488255726 783890435 871841414 689464119 759579641 936500567 279700118 705986861 399578589 395373993 703662479 83128312 693496524 912199161 40274079 945733205 258065220 957219784 923916485 790857570 681420055 579365635 451418429 568370642 629371198 299487799 390817783 617967 51812217 409526713 842694624 426183473 884890168 442336116 525512020 451137871 477283392 869114622 548681136 241483313 250524770 755223131 499519693 173200885 993054079 115206433 652057497 414468888 940680746 928612707 959962930 459408028 951939456 576389929 170064714 800353986 979997203 136511638 921576144 247266947 995068700 110931768 919833196 48795251 1195207 605823537 785655479 401090614 969258772 705924838 403644725 601201691 711047315 871861335 146686508 179021081 915469648 727743878 771277422 559072365 125568224 846213168 78063278 46797182 808747822 482544589 702821311 30278979 3191758 149936656 522445863 709035166 401548460 405032814 973475589 800045492 629714835 404076144 191761286 602917265 359625626 174552795 664834334 372662561 161889989 575847899 547284946 235926911 868942435 585640269 394718396 132940592 32046487 899244851 559537261 669401790 477486160 569669160 757800657 399529755 395195291 715301961 905135708 579022015 495972985 678433490 584812354 890634002 9244385 81466489 436524733 38444891 554193844 661412589 666390333 557825459 644935200 556940660 432192365 382154375 298973101 67857965 630806096 644539648 558669077 566321056 488592890 969487576 552237903 594764760 411516147 371192268 417410208 637182902 526743377 453994047 122500390 73254630 525118974 6471777 39345427 497351571 607958808 825538999 447083679 942871130 158928709 556470078 277921836 640144533 189635097 352077484 386692366 932661344 195639699 693240794 430648545 131976541 452826561 40302776 618999307 653168368 972558448 513942880 765540262 883664051 698749449 617542045 216393658 162312717 724676936 180826704 968307136 597693882 643121302 763720622 707833195 560238997 351921443 920071916 89530978 920114898 411261309 813157793 705556048 351462588 512064358 59636746 798871731 944742147 17598716 649441260 874697739 617643855 833816132 748695583 628691219 45355176 517697025 666510684 49741241 63568648 550829473 553799605 991937371 911012110 142872915 889245192 221583217 968363655 179370213 845753771 137311450 710341238 854946630 497289333 783130585 766933976 602126228 766160178 907878607 803039062 514319985 987722734 113095958 277036706 854072137 3508646 668542084 506501828 274115523 122589999 71810833 473109824 413930918 602872218 166052964 891876041 260336857 406210242 565233090 176487419 932479232 993444927 561845869 995004205 770019636 240380507 209218559 135892848 125346518 54060265 799457606 729085723 533124104 417262637 475310863 626944949 735242940 529528618 792693205 640202827 595310161 239477988 107847964 360477768 321844648 168154761 520251043 654313419 70265469 249569932 500815069 874039550 643805703 279033967 932178950 965053426 303104809 151783485 846001554 405151022 592116269 41863258 26316934 976489023 98297516 667771108 215503474 248333339 693174080 932133570 234214337 723531089 878066001 825889073 934062767 343716545 2390073 372145734 831809758 657907008 895156968 650030321 127701841 555938788 512893706 967840965 663188798 232043913 365818658 824468006 47448184 235539429 804873111 354218668 72566061 627132286 914659358 254562839 576891411 127866297 129847881 562542312 832434351 123612540 340614466 155042849 98556373 7071936 956400936 535286025 390385671 209789611 386245102 445780055 243471863 682777771 549832173 814996003 999092808 945454288 6300701 233425378 504657976 271582153 814222719 603816576 500568218 309043756 27588159 318757571 602625883 623158317 483697622 15582168 380047041 176824159 194028315 714718470 879399611 236710735 328200767 728096763 313468645 631572719 998119489 307044354 830277498 318165783 77046051 747579867 749900336 206437423 759928214 510370346 422993148 552838890 956573519 536969039 451454686 488722462 96045462 188023694 524179107 689407291 797374927 361150513 133454179 558015667 986157999 800747388 343382233 309794806 111137482 38076127 81041712 406944533 818802952 600595343 226072413 388268916 957831964 567457677 881369872 384053343 239915046 397570197 255242238 545536946 664573734 816918477 141222911 933007876 856364362 810078467 719144366 814350827 675871282 677787443 989234347 567813097 606183018 8570040 543546293 65023363 778442367 638125727 643982256 88326761 316805527 181279312 467557460 873737037 579878823 150996055 203001410 611543242 916254077 849226331 592177628 337748852 668937414 126435416 613629389 557320555 324171239 314235529 391065924 704496911 716458766 982896217 908966928 913917046 601333266 107671629 393780855 275495239 354779094 843349966 500865613 594959395 987916135 748305277 329459969 772567779 457493548 633168658 370671824 638158726 39217785 900997116 596003801 779343248 594677390 538370129 496199383 185091213 178319508 717470794 648534482 898574392 689052855 643265244 36582703 63520006 686453854 644823763 307476147 753004799 817877171 963798436 27399348 280903109 903494684 341887429 666312991 800299205 462348384 986910297 870972419 665595843 196719232 777535656 822486268 394427884 60587459 765348297 808082799 232632397 70253551 679268289 776643467 739851729 201504211 874451585 695547005 680503955 249610341 285986034 461635577 712508796 761711285 833458043 624539611 246142400 280735620 850663445 984843828 940596279 548639694 92509810 935018377 429238101 52467142 993592189 99562216 968268087 343242957 853261362 50669657 987550674 550268837 975562746 430234214 367128293 912389328 242276691 957320031 193506076 956575337 812029876 9239872 123954079 908587163 744280845 35869194 846621533 971144505 439501924 873693210 357644236 353784136 392094318 401628158 656539009 129437830 281181994 480935664 373879132 855141454 236874685 912697774 719431735 845827938 294881911 438799191 405613998 436018261 864413708 696136815 743407792 534262411 623410494 255777750 717037937 183737660 504304280 773651230 346032950 917317847 252316918 686062424 574021521 786843079 238121479 505363917 604631336 558299792 487991528 763208040 409856294 406997194 812571273 938711399 548686019 938400257 299239291 46134268 867600882 37338533 768306221 803834794 888127639 660420376 768857757 670560439 813736364 393197797 141732767 358419317 582938858 178871013 666132316 824512516 830362119 436713607 326690550 98298356 886225701 317595684 432087993 193768038 992589111 662565284 734662782 407075355 319322576 762064243 534562830 902397983 110906349 851023235 358864750 31253276 317747687 691123358 330769459 262815918 412361909 222392074 33953048 300249559 401148515 679649750 698553863 958670799 700354484 241280065 286353109 587132885 599056128 560704960 311340056 845126470 222849568 251947320 921857981 798475560 348940605 531970398 279327719 474920954 327729557 891364695 470313489 296833442 811879552 707075659 726804993 42708275 751990258 292979469 945080469 648469258 359309272 351354539 38341160 311790767 180460008 749378034 479180371 338485610 676495690 749162048 474641408 596182071 753800908 549940677 959512483 766748233 829710159 513434741 613642757 857001962 622532500 886295662 567146505 339000074 995511796 309356771 569028587 933133625 312269412 669017809 153415691 210387393 633687269 535126952 62646396 174692775 104255760 284372368 342091405 889720836 439134475 275393684 45132713 598232652 364409047 124683046 609931251 464860829 121689528 78832992 98101326 956614716 227272053 293517241 125164347 542617304 927813079 312202632 876234772 8473801 655320305 144857253 593702168 858317654 174669150 937475069 14070132 625627589 329735607 10307041 493825835 79104254 784770644 575136303 534549636 728644665 809161311 320460396 418004204 685803653 765150856 897008480 477079212 717994920 526260000 188822942 570582872 616795937 872360301 854089516 221166163 630740787 452627289 623501271 154033433 776226784 764530882 853786503 594998142 249835283 134606876 583216778 393447403 509052326 96963957 741796936 342088063 31143767 237414850 150044343 828714127 901520352 102812670 685080814 459249646 285623472 318684771 418473517 238942610 198021441 675314457 764161086 483021617 539073398 146702214 690799269 438071576 477112367 342908033 516232190 104120951 788570663 300026358 261611792 243004310 193097168 17709704 70208607 154815566 124911486 546263888 320423340 913800509 979779748 396503426 795734894 341846923 705255407 213173961 136398446 521920656 393067471 420965846 573647183 463852773 885798168 435985687 527669587 897525808 94182772 657750148 34451654 880486821 37310431 231761490 354613932 519109987 379942689 215612357 406195018 182366195 68985134 895861522 336007925 418082023 633083156 143117564 438345567 420957313 559775493 658189773 223814209 528013546 415768852 848035525 815900762 892125363 286978495 764391638 20124059 983630396 625185164 468214064 343937709 611298986 801524770 12488877 422159896 576662276 518481754 939889150 581022882 241194047 310694242 447513634 486941605 774326765 616310255 502137238 532240097 764427559 984196151 943173850 358582819 293790624 247444023 510886919 341880730 559717890 318806999 249118900 639002970 809682408 443638935 32333574 668781141 547573506 848692681 791135944 268310768 767654444 639540741 498650498 532314443 965037410 94159074 254216008 185639045 355277085 257786619 452976947 740670451 517018185 553128684 43834124 218504181 885814222 922140652 780422261 833211084 566839010 533965676 595280065 519662769 705289264 660675898 142717511 663246735 838337742 151098510 178010888 647933100 748909895 534584638 822125082 913923687 957221933 501428381 77341371 864247075 602992234 397522775 171464568 125390392 131437839 770882333 814589655 154718341 825879859 622645496 421466722 989202108 548542666 679265980 954392519 716181529 669409265 15473553 15017067 282492205 693893210 282665544 459817239 984508284 57450400 961923944 862277508 743825129 990553171 20462524 607912856 242628665 15224124 271840765 379220477 962413410 570120267 750166971 551682472 670712398 487719843 408311438 932341438 109763313 367513049 52817836 351544582 597934253 776700627 180128966 403778374 812461717 793396075 433318414 689388838 284782480 187709836 765526939 618901806 662196755 998812765 752987333 296675012 920665328 98222426 79248810 428398590 698102748 680361484 57196229 824906998 793175616 879361174 686913445 75590151 131428738 347970222 180317130 739410824 144450414 674291793 550351148 78216192 35743735 699808808 729813326 868829021 337989925 344995465 855318763 223978815 774043768 455764815 296615212 491958243 562539119 52297759 907804092 105547332 159792508 582267950 738237724 536394254 564054840 905948529 80669920 151620173 142795817 104922739 659391777 950501073 200528619 823504213 661623510 354927752 326442750 711730817 546629815 338418546 678100174 761836840 810071695 12067074 660122230 470288149 396795909 635509859 741518523 352662936 587969968 521719394 862744930 379545583 23704456 300877675 853511627 983213808 898798381 48812767 27208977 643624124 573371494 477800906 165595703 214357184 902244010 78529349 391625734 699157249 300179064 623317933 873097185 530117346 928876078 955529000 430201268 582223781 494103813 191669853 110637388 226167248 197418523 491518131 882171196 465863788 920609526 467050422 860463332 548523273 33613850 948286718 794346593 176133372 241050281 57293114 915884816 408608564 204929623 745212864 395785627 628913151 277888253 611673559 114283266 869597790 277489322 425692500 979936442 916462910 503690732 382364250 346195239 179136596 803302588 463315230 207729383 758206516 399692096 467000979 261649565 605111534 18291634 752670215 269318499 152486729 681804970 424991448 179010611 731291227 265048973 260977705 172314540 314153987 904903321 249728301 992601594 572334540 915237680 852399330 88443020 151524345 9184922 397612948 13471649 517363231 437959608 912149478 450805069 125421543 298179021 490763967 874174760 528570511 305089910 642574560 240099799 512701184 78918357 328474333 726845718 154392132 114446240 750775096 191500528 469682288 549970147 2755170 642495010 185622897 826283172 662453032 277602471 115020706 636253039 386009155 588954901 623623745 846964767 899559732 5340449 674556070 700912491 578525865 852462095 216970011 77100095 399580714 804352821 863044043 666488649 836328073 131849563 159824608 705026851 725072256 479466434 94848280 112766160 610356592 537342411 8701239 41095211 987721554 668719516 163496898 99685446 850095591 823408274 491133531 718000625 99723435 385847436 90181892 382987594 60970033 878587488 770391474 516551210 624351127 587425887 148703693 672770038 253024855 665013299 827505867 666910817 416927050 991690203 257131200 149497105 271617662 901232300 429529918 128508634 382663877 903554837 157340046 915603971 10689931 986003537 158821829 361419364 516882555 909904712 959025640 31282838 426363386 254286246 626938977 771091732 499086057 267800802 238030332 189535607 353395443 246206314 470273489 602766504 648509180 143382670 998430383 926874894 423770104 613605119 469937800 839021151 569283259 585293429 212377335 340286017 887927315 743554407 310795836 819956718 972237013 694990795 69340055 487911705 999691047 307374537 159261557 613144066 122473296 663132335 369868663 600838861 39303214 494285983 465699416 242170611 99012686 737859408 252938574 379479732 198107519 159431181 82813767 439354170 238792085 962667447 138894413 152955246 585389473 996643431 972569773 750906959 198440854 454327082 651909221 137667190 304381752 109775501 94906855 365928487 781148029 383849032 200988387 997082699 619043039 967629761 628033998 317601322 399332100 989180120 292228496 202899963 883280880 310244811 348330981 257463859 628553231 597612996 144239820 317008011 373095067 307320285 803194092 500246847 100863460 453050208 491491556 720763006 818252391 776472354 328037743 791779112 63073003 856374378 413994668 480010321 179156001 453974192 377827922 731268969 55300673 225973444 459116535 696842368 108795679 502352945 422629619 570765740 579258953 200765528 531715697 126179854 496934445 551599407 38849488 377144325 945875326 245526654 795178099 169915593 581465248 960200750 665788999 832030078 895943637 470319521 488646043 542972711 233095233 953941058 317149204 682400332 109878560 887843804 123694804 875357011 490786577 938626228 383048713 534547761 49878073 418579722 192126370 308955010 436332680 876608702 192227828 771924208 820095857 521650335 3766176 542823877 499704807 325335456 948313220 937527104 69810840 775174262 65114798 378494174 276410268 735074425 464684513 592635667 404330343 5663899 315134923 930314149 406229571 306340162 874907521 70013423 701307525 453292955 382845061 508053037 292693957 114837840 267878798 348495802 489075464 255239151 487672515 610221888 373059317 593896895 199531706 525508302 744572493 795329199 51233869 232002932 439741941 396644965 767943925 674072479 38032198 683816488 662536927 394092949 223899176 75580515 871366459 641052988 904824369 406442115 104904386 30812706 101484861 569144369 146045003 319753292 979322352 611319188 337865766 987024545 982262284 404320168 599324231 525220245 625976337 459452143 321693127 583026455 994298729 347827164 302695592 590740759 572606705 469984153 455110604 868507619 645705288 672067910 680607202 774476734 621134585 323073242 401995351 384200295 219824304 345225591 40799006 759418628 983624627 71792900 242119184 161663491 794980981 385826039 106263703 243761678 788009232 889748583 125974578 760867596 457817962 489926692 379268730 262901834 539161527 66427329 325198 149361055 135006294 593939084 583958010 106913334 826604567 986637789 993205663 608001579 282992415 814323446 946413507 861905719 974616376 502538709 223686737 925801393 345751463 707196424 4559743 111107735 584662414 933995127 208631711 775838933 316044678 79472778 569412396 698398292 720452078 699995880 236098792 995260108 926254168 500187625 840592462 732432626 764860530 832639202 693729541 703640132 390415251 537083905 694554683 697533998 713153581 819164458 1889777 336643458 346756154 806103000 327415425 110371669 333956427 907954635 370633384 693981014 965045563 538297535 25358716 750330116 902342717 926102506 388816178 159795951 222340120 546971345 558502869 984300217 881716847 424333423 468248199 184701745 371940593 49612051 333064860 952555687 123512494 394614890 601495126 32416317 462446575 727211816 76731204 371519360 973159433 568588129 336434301 576421463 243385768 961911785 312451948 907878541 597128701 968045411 715675414 228800289 920156908 206796627 168615391 278450044 361194309 260918458 797668220 828113437 701304942 386874877 306438052 470473183 293952523 331630496 387176814 622397800 990727588 871017925 568800776 180115730 175241951 66465623 521206932 741968055 837101673 913363712 373401685 551163550 722387060 201272361 579607559 123365300 334527355 776267120 504697223 930057419 744123950 831545294 283037885 604917962 783904197 253090277 618364747 458921323 125172111 881759758 532803203 317502246 366810385 287263651 594230896 842296501 880062737 129412737 710478027 399247538 839271225 176734364 678843225 651371062 361032088 954709187 555455681 26799461 739903003 503356756 929113243 733479302 744076209 904210972 416563072 87954130 891978860 773058298 616812884 380013710 71852297 276599755 73662869 863347963 544165733 66179572 613992711 263232158 600311290 298277354 372472408 44158948 634074669 759917073 669894686 983532581 352247899 235036046 306759959 743780519 45042991 401775719 654077815 259435279 940886433 378166087 928924847 107213469 586906354 264891437 194238942 58991339 102847163 996524459 738643958 433028055 730201710 233173963 765723233 848599177 198854703 909070539 911594270 495045335 308739761 132344630 654893010 41588080 400986524 422335127 307841228 330432256 224136284 821694633 447232668 331699887 840770688 861784076 735425742 602604241 676911218 902697537 378311125 556309442 580582854 634503320 879858732 253159794 922137988 485673987 124372114 298803729 625981538 202476137 362630160 172943626 760980921 535062030 30458675 168019822 202225044 334340349 925345333 679859574 302801530 177084657 309059047 715225940 280556674 63177219 932736913 924299907 481835773 940100294 825119293 110019867 723651652 562116156 661342769 199508253 700307881 737981082 806608438 317954459 546174751 987088620 163381590 958126930 685580833 646198512 260665778 3686646 736702955 798495780 415611242 261838360 2360452 746640167 781247013 127302265 814224266 536334560 81865380 246529586 236359108 135648370 444572337 866839489 387925656 104208032 701811581 926377278 917716797 768080921 615039986 857634631 864340591 534824433 504748594 495044617 914766167 733253384 552941710 584458477 219854481 196926734 619691994 484029319 384519281 840673145 436609193 69697501 406870407 61483084 54682492 226800064 240894891 130336538 261407195 551617509 704486604 868527714 601290759 150197498 350853877 820514551 379517293 319514235 740614037 447071824 7751149 840195300 917390659 126786352 120870717 451126328 252074677 617602580 671468092 437599112 362456222 461882675 880420557 870503712 988346970 337313572 631858572 827183207 362327992 566105936 462839351 693010855 815847707 244681891 755534512 180626907 369148803 296419860 133972334 659473658 213188963 477159136 954790435 911655274 744718902 989117108 235983823 563008498 447871311 602694588 5782011 504552177 835678441 460324382 476885367 55490896 456365321 398438634 279801205 141349013 852649555 228700814 976574600 983008880 926624356 722855502 308389099 123349224 726102210 387772327 107319134 78701452 117594612 41243334 971524869 17171338 646118542 176488672 790524994 366278495 229446265 178466979 867323593 270601884 155860001 552311959 473188052 376475110 599814322 452905156 339009593 418496463 404428931 583428476 51116979 380272413 294348598 372299644 291515335 54675179 927630341 696369011 328404022 369187061 724968457 381118757 757427714 508338809 627748226 24765055 195371625 560832575 22832071 974764529 224078692 671224502 737910113 899717958 264559583 472777030 917852648 33527218 731948269 449123343 841586894 206917396 90686663 570914780 709067973 163894098 828622898 105712504 204082198 240035332 421618406 888616138 931001139 245248185 822611068 339325241 205565790 684414888 920079693 879586697 481050560 129426807 743743075 923928269 839437862 292031879 772106161 98476621 155443205 24775253 222606810 715800669 185177597 930842715 900958217 247483220 899946861 851133094 765720378 889499499 819687891 353504443 58494325 162826540 127380956 4459095 736979486 203303249 101825571 525022016 684439126 732347099 672366861 889370698 597534935 471821124 942516345 374395478 395346692 123774623 395689492 995677752 172898879 685707413 925831617 104874685 898696120 678182344 501869648 72457737 789141733 885823527 254791601 234722156 507048599 113983468 659956109 295504161 192958858 725833423 897533275 288962343 664462457 750667271 162983122 838138369 226522048 725428976 231591918 861248941 317751168 631064427 11407182 653270827 610179959 754119572 620787377 913391475 65954598 32946332 515135533 619446464 450645893 357934394 452390719 71052985 237431998 794515057 113595358 661144133 630297837 554545506 556771024 618533282 504543310 591747558 349959637 574589201 885168479 752808839 395779970 584842240 817902011 125320716 171429453 70767594 887584917 646169907 437621988 637114082 983195000 855945024 663390434 195436006 895662921 620003931 436520334 622021329 839049772 426829071 237205098 114245827 837335385 742013502 394529606 630589356 740882046 811245480 669840007 327300249 486959638 866907002 762473160 847099539 553504472 698625247 619135808 738907526 666959212 48004985 392936042 211199641 623518739 31365796 86770591 186867837 928040727 837106893 195891832 174161325 396609186 659530413 970546773 472732732 549359799 325652120 204089315 931506091 240947707 280822625 426405577 712613932 513308093 128468446 866488947 958976792 910997731 612018276 424011080 596377768 491661479 451973564 32548156 187248319 636013324 655435764 327238083 763338515 299618183 956242785 856090050 877895769 68103325 429097736 49430328 347362438 7428323 419360046 173112876 933816092 822643837 734474408 141527935 623311923 160818600 912110468 843023033 568591491 365930530 951444585 115265243 44138977 215638163 346761341 764088572 824182749 379394238 422622004 29239443 675185169 640573823 811449713 819103164 203195335 451199432 56322590 548513498 652281622 859036793 885311980 991737947 229861403 348847903 896072042 610320023 553809545 807274105 819629424 906875308 172874742 982001477 24278742 744033172 904737955 982180608 596368594 203413639 406722832 524036055 238957292 468317556 319786280 556926046 176228391 217113418 875687921 778000580 150375898 987056936 27654849 223017447 445767218 68643635 236063154 574967969 654681261 695816220 310383624 481439916 382372368 984743548 737778203 474787768 656478094 823850746 779887241 570279635 975034794 697881482 123336985 544152163 890522178 797294317 413726491 688982697 266030982 290912324 62417077 587228277 643745799 238923206 714286556 754933430 668204352 898934850 141683363 51336637 827903422 669583754 843085128 730973713 896523539 588531231 656853503 63696454 406870527 906814179 986462209 507263777 353977103 913974608 804876545 791127631 408811919 729054585 283736570 366561929 569306231 943944634 1954169 974085016 239206176 54041070 453776361 9762001 230133892 488083571 508693045 152779671 306707220 592005577 842891144 210989698 338761894 430941702 882392743 895278599 431160117 790376539 535335353 312964206 884171961 135348031 259264737 207039023 874092166 698678482 353501505 371617083 623974684 417499820 730993362 230583436 547460034 706666785 247749285 861606681 768772001 478848104 750560883 4788235 709433813 427537098 455600104 541775806 59938689 96208857 624358542 877150002 610482060 546070997 277545997 64862755 164043452 722000218 521452087 492764199 894784239 399519821 434965820 514902010 764970021 328253084 705649507 525424667 737344094 334110829 156321610 720523833 672119819 585252948 90052790 427714954 963861381 837517780 461734885 510425048 53640073 188201639 368186042 686492070 487035258 410282719 609885933 703989835 881129676 791220931 179916546 20594051 673586363 769576981 492280469 716578830 539135594 879383821 85412747 266326536 837670413 91799008 297646201 131181568 889142858 16770356 361312797 829612272 804394212 570433977 644460143 146913035 213243030 345899142 255702084 607031053 758751128 958703103 941824197 159477140 248468599 1026026 198523661 915908037 23948903 220449407 254324143 471302524 817662604 106980260 692825776 427088202 244484553 713073359 77630070 208405251 190841462 317041886 834889717 261800089 799985227 246278287 556890724 552202111 345475602 390426220 495085887 13643961 850585167 638918999 701595417 98260221 266763602 971152379 715400360 580888185 893414468 111478760 488775655 651875196 905864367 805860554 398967171 846292967 869992808 724194417 936998354 345086657 797348008 546393819 482862146 217785662 820699629 549867473 668702350 18869511 783094984 102773267 756176654 937090744 507832991 500089535 855407354 641583942 838305814 410895659 142626762 384641602 559046960 478832526 178920420 238694352 357490930 958028564 182152418 628531982 145079962 82202195 199915605 229221606 46145374 401417328 113369111 960780885 857983096 779538645 822025938 428908468 394139505 186472761 938536721 394195666 223624992 800878343 490540090 135384625 817336510 569815899 974465457 115520800 274508910 589616502 107374734 580193452 660306208 804948685 959723963 254808551 917622799 16551226 128730837 627679058 549533521 707507553 540739084 138049199 314107798 423495109 703214711 399624911 261026766 898057858 335045186 342522860 379048639 96761775 911638983 147980184 626035338 870953139 193713168 995883903 524471381 230176780 306029411 195729569 89635213 938967089 244897789 861796603 135111380 30085408 955784774 741968953 36658511 968787074 664273981 865917462 615635460 857003893 604265490 912796488 873965003 357599348 834326960 410796012 344381659 299454517 462581366 740871646 314362072 597466494 73844597 862859414 350772494 842262003 856408192 401969988 202120543 240668046 9875888 772063918 373428345 155758108 889038209 407223247 683942402 618478946 710043729 721594936 71993973 547721924 614817627 307878530 589712234 435051409 204977304 626861029 742389285 715725624 701162850 425494234 307829399 276367359 814314976 966680858 860924836 422440929 751870534 334976162 659721965 987457999 525594634 136584514 225018897 521601959 184964474 946563469 913606298 711772017 942288309 743948135 727561163 835774727 244937208 421491470 275213460 219296673 131967752 108279332 113729104 956909330 788863664 242421658 314005285 76882216 836179615 952865883 623824931 327250587 317261168 186058051 845348294 2248732 320371839 379294848 160352785 368714426 433846821 244348095 922279669 378522915 674346054 942852788 409862676 231541591 776208749 302496601 210783926 515444991 739751745 249750185 655130120 197842229 161900752 562913958 972722018 550175507 253191079 731654132 891404235 331467260 276294472 510793912 567740536 831060695 210229785 176524721 601317142 325199502 45946274 135351813 986403929 561107027 75666165 750802568 591316994 708002631 17802331 961741615 215203839 135590673 30665998 873046598 272764436 784404729 514087616 415185673 52443753 749051190 728183049 302596272 536250066 627449817 151848966 781861903 23646037 226674620 495470403 581495334 835543313 493598953 55819919 519609213 38764225 888393470 347705186 100837658 381186113 94017843 320610338 87840494 587828332 412095209 669875475 900348291 356168527 8303560 149217250 762062152 112115914 196689547 873314444 869164684 208646217 426848716 649118732 318812924 863579354 220839274 708987220 104945784 546117551 796046846 813285924 643190021 751250081 898760680 437485195 625524130 28927407 829154003 500880063 453704238 955737395 465973153 749234401 702831307 472648943 692601409 585163951 522806247 191568241 248279474 813717306 160470490 751078345 737324623 792406217 265673969 580825981 568809745 754386568 732667978 191360678 990314888 700224619 331002123 382294276 985874302 124656121 560014168 977463546 628450485 606731658 767602034 900367169 196838038 303442236 157459056 27926081 65790894 506832618 45578951 235687409 837294649 383480756 3572934 346393311 792860211 702762404 854510340 782370597 790166393 721731175 595332831 354819414 388941116 199820169 705307769 619540119 51745113 501640905 302209344 911429543 619592407 688341686 94061000 420189948 190150107 24092662 902849635 530903010 836065291 946106522 759949331 692216974 902501988 834205451 101371056 466200561 662515083 694608684 624938004 614291388 959430249 44805551 676338977 955888057 417027263 262884515 381483570 203878594 522918067 548800987 625201438 994946279 678802775 839714036 949716118 879321990 981151035 117272187 735622264 921322604 459428910 894645357 588033655 349780528 835307108 41027464 636195368 117522152 897547414 987172439 799897078 303129834 667311279 196043004 350743956 333165659 721206727 125840725 429632843 368261290 75635030 698743561 840714747 545010551 964753481 979919350 751119868 792560908 208265303 815180657 247077899 534803210 337629721 915905731 541670148 371763758 776646670 87700226 995743844 790206687 138817760 348269828 547831776 935529001 457170533 477937507 563540340 361396181 958216446 141277697 320927915 45601394 692594960 256696199 619631802 447194220 676350232 726129026 531504591 526787375 359687563 815032995 326283095 732781671 915670763 935600845 722174621 240670289 592087560 818288629 830988203 951129552 764691457 892849695 223532475 515530121 320349692 954755973 270960353 905397264 237087536 313291672 430677208 527798951 906218376 348614004 658610389 34690098 184397145 998858040 510636155 839334500 728584261 875946707 64668056 528664160 977952319 480828502 5818728 5588895 942021228 119047674 896418077 557043390 556633772 916514778 280319277 163372893 627079719 977673589 80190069 674616934 600358154 282002173 343415134 34093830 524174307 460428677 98602957 255540994 383029182 347857588 445797668 693785307 591802328 907939903 510863016 580077202 181972512 318282888 550212450 299823752 287978929 937042606 759181044 899587444 913203940 106183483 265270801 591904392 889043083 519343970 645615400 499374607 875380154 768396837 185675008 817313108 267859142 246350879 415121902 519440817 334532191 410603568 936192076 20798640 815403303 487099451 550412989 204679125 167872814 977233614 377197313 569282482 944905293 59614580 764762795 661993478 412372270 888228453 627383682 825817800 946646938 128627801 657842078 136457726 738278422 97046673 235929345 527029316 276668608 875273198 518940658 756821510 26494375 498927593 77194912 286231504 936726047 775732956 34544538 478720577 711860776 623281445 701507988 707730099 618325191 954772025 390114774 118718151 474036565 980676040 843820764 803883116 112316245 196075199 318287846 448092440 733930338 826682122 7526622 506065202 456915603 24551726 45497048 967713976 686463199 877275991 528427263 771840418 811805062 701015396 217906852 365145013 928714780 431275519 449581784 560394482 973452668 349779615 251976720 771349144 161592209 891400155 599875955 300537933 867862188 261562807 56929531 747933211 996431248 300122367 521639199 808539878 258402655 115491736 28844150 415597531 114112580 285888725 608702787 16876797 735944509 626973582 819470984 980952806 98548178 521698992 565810555 620098308 554914727 250301079 180543077 358335636 460442575 606089405 444256544 730372752 435347113 291194564 879080178 843501561 636464493 855413956 840070871 90623987 697341025 514193276 551445716 44796803 194492520 621204794 374426997 728611530 523059989 786244024 311564586 340400029 165939089 690615131 859489422 813796724 872475565 765157155 955685557 832326532 113835388 991329904 58117512 916924259 156424285 357610930 737871420 189831215 829701806 519075587 156396123 16328224 2437721 373077434 119761912 881935521 798943260 695206400 68073466 656183976 670216053 663128024 581870644 821297697 654218162 556232418 265704571 852058389 247371314 344521517 189778350 913525486 70135847 583125337 284683273 153583994 497790889 482987985 164463646 398983268 119538117 436141598 131111273 834461200 853338962 428706847 905956899 801586766 664235086 25450716 991900709 491794035 58979427 227046736 591245784 207666958 487865876 127698164 565495883 455175299 713483280 459733835 894900429 753926249 267765335 473007357 641130247 786006400 215548302 588730211 290107379 466829345 880011867 742110470 762457241 151692739 713658250 643323605 473209118 699880543 276060708 211727110 292115904 345910059 968558720 751818547 401420798 253760015 438255552 420222973 775416175 871723972 456432975 836252824 177337161 735978812 780528977 217759577 563618807 35830820 93116391 570665183 922168422 114306102 525967334 844655798 457258128 789271318 769864258 123207575 536922326 473905212 1934711 384029796 511368818 504154782 198302999 104636619 207845756 422868740 45675323 557849717 462205323 776167040 440645299 68640333 856334765 824898447 122956219 864869819 508968680 693451828 703587581 1277065 325332802 421941164 855767267 214033501 102623695 478133632 207566383 203403555 472148857 122435346 321275040 257139781 823640432 993297205 261187926 852918968 619073994 343284170 550465590 987514447 438437908 411334155 216367635 344021938 262405599 778802624 278077313 936754958 950193618 878436498 181639565 537031464 971889865 618387569 577087754 455606849 92715647 99878980 651634276 942741480 448278842 702529091 322873586 322936956 534869779 83176261 999806128 966736307 147377494 910321039 906410602 811908448 462942294 656870089 165846215 570252419 855621564 971314360 885827012 18143690 311726209 582037779 568420344 80651689 740009695 264927767 61493811 726536779 304780310 190947817 516042221 608647021 915485594 119333157 670009378 126237314 361885387 878403617 130950998 416461632 735724988 159365922 427894418 756539725 270949291 354025074 907534811 559995511 434208231 330628653 296402844 1437149 202261666 532030597 670042550 666486952 946049671 18540338 820990276 398042748 884732723 429201577 70145440 269900431 292093640 246507416 894307965 284253388 534933039 649173407 18441540 774609470 433270452 650439265 305647853 457983266 985618516 95273873 752705990 627660950 221243730 516823289 397283796 741168732 521607038 786015711 728338417 190416057 140188977 610510002 884485915 368743825 536087026 418057924 94295986 45576265 255113289 431542699 535584495 444813855 53497918 562565472 546402554 389148828 94364872 508190935 71672083 762730981 26192825 816243919 914162358 892821591 995555618 11649766 85312075 898068983 965665554 20147655 634893138 184664892 274346032 280911680 634212620 178064533 151221556 651879621 165217213 177564909 385590452 299028884 60894966 530023186 311213852 879481739 988524418 114007067 336458833 564224520 751558356 502324258 645670013 874980028 576695062 768094829 517853662 525797075 513440934 274067597 608365220 112794395 348096244 310799975 327249707 59359941 308233783 174856058 571084359 367224252 118467609 684414156 928574760 564381020 788190387 998511396 331250092 447569193 537886226 352776079 349369200 667143588 726152889 708100879 878657545 824063918 152731976 696777384 591465480 508749588 723228305 402547484 376658373 640607187 33022215 471093241 298869694 539033618 318013605 83386374 417997743 774663694 246615873 636621662 584644915 581466398 361165545 443069854 457580937 303801143 960330729 690553573 801400437 916247085 524200164 615141993 165300721 771510404 999075761 832321261 324790597 711356202 392520577 658265111 930167770 838504739 686157462 978158619 364261176 706741497 78896804 765075941 59967151 278268285 882233355 263242979 921873959 828434637 11215500 916812998 344653990 760862826 91629263 783957802 782914720 273062259 75920894 624079562 392665569 745722562 621721513 689997629 690974441 982481744 200677635 834727465 920118056 770893648 65273310 737922985 785046887 500430663 888352847 444999359 17128400 148294154 49794779 805894194 95290400 458787484 658801715 571167377 721225859 175356126 263565924 472717830 4022570 714418280 876227778 167852587 705908201 379898966 610876799 614257970 241393035 580791848 265410030 975460847 428113786 996499185 242282081 998740553 21309869 771679854 540799691 604888548 782366458 406515860 311963144 851930349 897726323 881855666 301787630 552851592 707825530 957687854 487150933 441692380 777959778 29315463 695912659 477718159 726583472 455962302 963809466 389723138 864791561 11201359 344525523 785031937 34210802 595823497 585629984 208141049 601143900 494214269 893633366 977713707 213814781 89610677 126376714 757406442 689188396 151068715 408331179 248163299 904138681 21147016 395488164 702417937 564064470 600073044 995783476 45204817 121899794 336196581 629752184 10982225 425015708 230585238 204033451 875102769 547173035 288436329 723489908 941100607 171156889 449844311 896469148 294614043 682355718 924119096 529587253 237171268 564820219 129288423 988028471 363079459 559070176 771922876 779731439 785482085 824453037 411260951 565980186 564675303 138837214 715941263 764161639 17789548 615077469 323426939 830182466 721282745 628897619 567129509 936011272 199636893 128175799 220522839 110691980 189431543 451897752 49614652 712271221 520922046 402277243 445267461 592855891 38987259 377213543 100705562 389631574 491821947 943497796 852210157 478419625 478135632 994716965 825359117 459103822 753361027 279414747 258728962 107173349 991035578 701844447 804564815 264432598 645972940 177487667 307911105 468401016 969001214 553731199 749844349 922349066 272321771 157102310 60776841 155898938 610136609 952530987 260191703 268948079 245283151 367752517 642288581 980773985 795546901 520633728 137766069 313271854 865116969 239330297 15916908 940890480 440317800 712605321 239823986 717196653 917568145 979518118 839160347 111523105 586174430 497442134 847196726 717284085 343314040 37754531 962073311 362823614 329790704 770414501 661310521 574401079 509133939 668176020 319587752 204495930 364040036 784736926 795409807 646803799 227068087 996551982 781695973 436183760 60757361 902070532 248063282 19599615 403804005 954988308 925619562 586528676 78146783 40784846 634720857 930055562 127482898 554341057 71472598 974772853 372487170 267188421 377244966 546445598 826139832 384812331 589154091 193948349 652099153 427059680 705625392 538366785 898759244 167954041 839527567 811526626 966242312 743848704 712923502 585145966 506386219 636590848 457173248 20469390 963040100 987608898 641235985 926637301 54448649 392864715 912254005 331811408 385051466 987603527 521107881 852981975 748207894 847096413 521514073 845905395 4268677 58421179 722878243 337184243 777790032 680171796 109786192 644499753 491866801 899861052 194542869 638577125 640626326 324871840 955058369 181372179 748157424 338371210 725489430 171176822 509217348 321991751 484437272 54302423 795025213 832000037 693312634 582602463 21381969 300573723 904775925 644503791 348194108 401747016 183573591 680668770 558202531 349356866 140636751 465840773 93930195 575170864 278125243 753950058 170098785 946455274 253824118 824203426 704719136 593232822 7780621 335657998 949620228 236374122 170740998 903309946 504608102 890297527 932047598 377423720 813661399 501622590 187025146 652236427 818134469 195422902 319662751 521498848 193729346 589021089 162532462 401988800 162416234 272895720 771695223 57591717 166253840 351415780 740858297 951836496 591655202 512496843 380311462 515373110 587089736 393352308 58165379 749621722 287110143 77344685 834388700 80634979 845450725 80489811 638504848 788409551 85901357 18461619 810937122 954039180 516268793 630073888 823761625 345840298 293656965 850218599 830467232 195058226 67287667 773631429 1588845 996874896 273065658 413205539 461237704 455248382 366130109 64976626 164027749 714627444 23884136 891126011 833189486 252071058 273805394 643994446 639391689 849487402 662135806 560388535 918426648 420182679 15174572 217527860 927186970 956132817 16131133 355098485 89869946 876364123 986063650 803000305 925976093 391493658 700030294 364050584 324373024 850933706 272820209 677633010 107166053 509618150 84779904 731217471 70659896 102593053 379397487 314508990 982721127 944752918 494809134 789408410 278545928 820261049 938090436 287690780 658805022 63952386 904689143 560779428 936922411 798944912 920894984 424024726 573175121 92917431 962156262 757166852 214293907 646968075 469302541 106376231 933802062 52408484 778636570 791162852 81308301 804404859 610185142 165758916 906847774 820847988 528701489 85495421 838416698 43743333 935867511 670476438 190445779 928976982 715816690 840142202 791705544 183562207 751938842 776789700 281437375 235470040 235029565 193105696 196368525 864771401 973740132 531155611 138812318 244789759 384845186 207620630 481761309 620065108 747587421 235324929 757852089 292002877 867601680 410334509 818716178 783232520 19532226 343547891 779707456 269540557 547410338 570294209 10107626 922669640 645777150 104025121 561109305 584942844 419671788 265961663 87896675 78885186 574161487 955639701 470697117 397287360 91602950 910138245 199617864 807603777 544553078 212972639 847052488 935579159 991106952 115981229 624638857 44651925 975668083 146540633 215582503 423151468 536884025 343105403 483507615 299881318 486605191 705007615 449176329 401975713 259799384 365350936 970109932 72541975 865053740 362878893 171484425 563249406 354923258 534307418 774474344 104988570 285114160 54394155 930393437 722394853 274137915 70064653 298245246 110883936 425166953 652875332 695045201 844699669 125120009 29953209 79052489 929524043 286058423 880645744 846641461 31546074 789265414 729728508 96973571 27371428 928982111 491030424 822976897 38258372 234037254 326344375 596526145 660772158 909330305 607102252 532387083 424697037 919139425 513442441 275730766 711569534 21223615 19226480 668990505 805669661 320886880 419507046 354059151 298523243 321315745 704841775 65281078 301487288 252107941 7893518 450004874 142116453 129986885 90838293 570273678 329786712 658466372 597289231 584686413 629976431 637718158 872278724 600700755 661322607 796702105 301690585 793231067 183812588 441194064 624172090 792109426 431930107 614758179 231709964 594738354 290577299 448756036 423038833 570741472 848738470 744656736 743014591 941171240 634719368 935988168 880078605 920307411 108838968 896525573 691418537 302026202 468788388 124456948 736682651 284783783 307912746 998614899 151300672 861884529 40969275 406799778 713727621 33494999 938625705 249924480 702315922 129143899 583040376 125816500 292613617 852416807 670275884 420531968 548714277 709102766 787272123 3895639 317249341 633988250 44854530 396980969 184249673 413374875 714086318 864746525 228827204 275257461 100323537 728986301 615303423 724594097 458298529 773002476 803022453 878965180 696461630 387507785 64008264 284367288 6215308 3876678 599029103 49126883 969284561 976852224 43287362 274072254 497575659 119669172 558027927 662087527 953417704 734673841 881912977 419633109 655482026 431207204 497312246 408918223 940947984 879570341 5451541 863209782 202433873 60319046 629506247 115581524 242241708 173725027 368238536 468063938 571712309 228172023 210074360 207296037 475200248 138117699 222441122 735100968 925626002 459843197 831111114 555235890 225158678 815507094 231043532 700959463 122318405 476889230 269291006 422192714 193085781 795158159 390973093 619537953 805366631 838876864 70497404 79843034 221483407 187759664 155529594 214188078 901019719 756302527 177699822 917187671 754562986 706882915 636948084 394606560 204747731 550831031 550665973 520301189 840233443 486319259 572278393 967909094 943412189 348286522 782450866 412475872 566012778 801095760 164069449 556454965 831994429 973519068 229123088 482955945 367268476 549908508 319119760 364338652 482075231 7757521 953802204 852875154 646362699 101876041 926458610 274632528 98360615 650706703 17131296 915990676 328669704 844344646 940973580 219136810 350580004 417933681 839136595 123421631 635431317 882474833 344857436 125433272 588193384 913223091 934106620 901953343 139134165 973400145 375403872 187753189 267083717 579064100 963324620 483951555 999607121 519898432 356891057 17190490 340660013 646937976 531957849 436457101 186644082 324402001 243099623 757322384 445055414 676321357 464756975 679727224 952000003 822587533 461018163 484136043 540827646 570140429 537127755 602947670 70138862 367501025 92627187 548676281 88174047 79486955 804115102 168686779 596921698 792609962 365281288 680189030 925096517 751004497 788250045 211757168 465696374 700223255 294629302 605279613 547444375 982024487 608946324 416944211 566385649 698898716 545264078 80085765 315516274 530597834 460727313 220034965 507292458 788858518 824362942 294887647 395422126 235530493 186877438 470661177 804477501 12816189 102429371 382793926 672584610 748597939 567890484 539445601 688053021 130745484 203740519 67066587 481513073 539231396 401241854 444570520 623001738 388269168 245248103 412441356 781801333 917395530 319479547 555362775 369067486 184179657 213051573 987518414 241388451 575445750 952520689 77986513 128202200 234885084 40318076 473148601 543596274 515555271 580006585 679940170 413574220 560062944 949206798 540024806 336262315 217336440 710683096 17165488 127558567 421884219 513355634 436084572 185085391 434946759 205220502 587726410 914436726 867158019 896708452 806786756 925098317 950636184 928233195 658795272 861575468 956433926 306513676 9419189 790527201 190559113 952010406 372953265 381303425 415097878 164707969 614778595 580682320 809344438 875991776 432955652 995370243 447878621 229492919 744693793 913345180 107970149 579729547 739163960 531462679 545570848 830254142 797323274 384093421 853018965 972352936 701023979 281108330 52196457 263329053 238763544 168401868 561781781 828478346 336096073 429740459 211518308 443142184 407537106 384021654 798300882 376462383 670910289 451082267 366644846 44829693 736595186 756313572 615355739 283830121 572918529 364070253 257422462 82742141 463180870 538625209 865211116 193720854 641486064 277476177 140378816 777572689 853526207 533321891 167503558 974131338 309437786 694222586 951286689 726944901 857610909 570912479 991541430 786319403 349630557 829870204 392359504 180541836 103017082 142833159 482115029 998329767 202998859 342962283 188038805 218626282 520544689 100342138 135011858 397598916 420287317 126644202 495238467 673649499 457095027 951826349 897379351 269657240 831563271 423692393 76611870 36891538 420598256 745436507 567115277 876687295 862243965 131618311 651481152 642478395 91206377 256688124 197835659 561493731 920323938 506818473 881765669 974877519 502352134 70752169 115823198 220123669 169768801 13834613 423437 265309557 550809499 630307065 601045969 778877039 753706423 546351242 488808528 470109987 74733024 83975170 66645421 684583641 708331592 724752667 55532865 576969939 675900214 836185070 163064383 435263415 272969865 411440094 358119547 601909522 825699164 718976908 904531824 927740668 234612349 876156043 210531007 408175513 694602590 312363723 239709905 483813693 249480816 303109229 447524357 604480931 861031629 692922595 889088713 896432251 462633480 617656702 203338051 967915660 287605697 880024447 633437786 944082988 57482339 75417803 394867791 944319358 487000554 153713825 11675321 667374613 912706290 236037045 680069049 852750227 225247086 906490376 941297653 245933559 153832094 953174769 390276686 671088660 93018901 793200700 468428622 448995941 926584543 522991137 650230051 931721536 763341940 941954636 750392858 470713818 237887866 982966502 615230414 805320589 387367275 107678348 772596096 942398487 991515474 247422322 868084296 773064258 75132853 731816017 384032853 489953179 195449329 386270851 988647256 221132460 339954210 869296594 8355467 763331732 291309835 145386142 10675543 86161753 998729785 498651513 570618278 132743817 605758253 416685799 718060114 32385304 476570550 561384392 997550885 342229594 876189618 109090564 447540915 508707678 639523904 704291514 200751499 282786771 982572674 576367569 92928973 456066075 153679570 138677202 664644199 37864898 619096910 512559278 481329272 10288881 174759874 489868582 851557799 763253822 475180554 200520900 484476366 955901695 787365045 676699950 806301819 298616537 315427832 800026204 6198404 855372292 572394667 984960190 780916387 2975445 50511950 214673645 127303200 497380319 156471658 807092935 758723364 395762541 595263350 952992597 12726671 499769679 56155455 908314340 464027930 249482964 129484336 799058600 990239896 604915174 261659511 420142891 424706903 317977581 235806621 608160622 44932603 955560999 720396869 280035873 893486889 952859888 207311853 678668018 80504700 804875904 592766282 941725076 829916922 222600025 563333814 139814944 416966648 912511281 138711027 314228085 958352492 11307420 866173310 425777833 976568237 341990257 584715693 164268286 637235742 621501779 166695155 516552897 687467197 946213130 864605275 60597181 133952904 444845937 347020490 910527292 181551298 415633423 224783702 195193682 306285126 829317233 613394112 649298389 169191125 548698324 599532105 515962739 441693700 119314308 124205354 598418372 934058390 143514824 635107037 204659954 5074119 639544177 636865188 716426047 678702373 588809057 477529055 607590951 612519605 655716907 756717686 618027846 504430159 650364203 22131075 589598317 870230680 39674799 410520916 839475447 962752327 355672360 274583344 505326661 709197504 329954774 562214513 91903160 745973058 311354519 571128209 948513105 841594331 489235544 347201385 252852097 498080697 560917 491356459 111964324 523917839 180843832 179210602 644076697 177717020 773004427 394105858 494265844 238349473 604309821 107062360 586145556 372914685 779645264 890390242 127936572 286070534 478036703 399152307 470818902 391830253 206278000 739120357 51936786 741196873 613404601 391082619 788006077 381167761 806642510 247572365 548736524 334098067 846575135 994309406 748655681 317380667 834806352 119692338 733688499 862593940 573384720 30011300 893993703 357960040 480833897 528894686 446748679 526572722 192147210 136178838 586606568 375192797 165230827 971979955 411744278 917297767 7506463 26596713 691275419 386003594 84980518 260208360 706224639 807301876 692949285 820959630 84752886 33367766 478533384 579096852 708294710 134098024 802887552 115347964 601347557 915975991 510270749 323848009 859430377 60659508 149107869 976152735 253028559 765845338 321169877 964670296 981708743 532593746 159857309 488849061 987790166 687136425 932555735 445103695 515462695 193340799 689462506 831891446 389487200 141325379 988783724 418083741 205583868 891748280 400057028 558118330 735842690 410994975 417364115 291996672 804955258 717615166 507591275 281494591 456055426 910567419 58009728 914505803 381896358 620009233 920173940 68181698 177565169 136406709 376420163 627389109 313264467 517106685 112998155 800553585 527880067 276706746 653055822 557791599 308367064 493494831 448170130 820566583 170127481 815724851 383625809 369311307 266740207 260394648 279081553 947502819 467181475 444324368 468695430 463074831 942880484 228439822 146744777 190840969 329422204 406430669 759394595 923047664 444548481 137760900 766890756 873357326 424420026 280056789 916358711 593463757 764363754 662122458 415456510 707853274 311230276 443692048 873706195 374731604 414510856 24205363 122926884 738568564 449679807 163599691 426074542 7701060 904237429 346444192 90340639 409134872 18108587 142631308 639212296 668679233 116417481 719178128 954558532 967736880 145869163 5653101 210545138 840515723 429728333 339293084 20947826 352495017 663985713 440657793 2918297 856176530 856207051 711172881 55163873 414569653 63933594 594563577 839398083 240119705 391770078 804263924 851819431 249680184 519239427 875139246 861502773 185432579 225253896 549440132 474334305 544860127 145112157 890245567 576785726 543975283 570043769 357857617 963309223 223613137 840988034 236825999 860122490 473560251 664524344 867447076 340707371 425466984 875362564 296616226 426948458 529651067 264807041 593781597 141909311 876684533 929446879 286967444 46141411 670717473 450909335 464854140 131568355 262417264 439594998 74843308 728862816 26014762 322343543 830287986 582120409 642486965 842921635 316316504 708368277 454744586 969516510 697277735 439311020 248659536 300742095 616662475 839855295 661554362 824089438 581138436 600421997 279950694 703475924 107587508 426981188 328682599 775705807 986493923 872108874 928355973 622816232 630159357 333122367 943902821 742923905 70129444 704818368 868325377 147961349 728931766 623235565 817475331 367690986 258521609 991724005 261616133 878594228 516810927 10870426 971572918 448950440 45961302 647485836 754398093 447507765 492753505 529094798 474579967 812935801 695363506 329721382 879536889 210803761 996981905 587309082 696730869 770288393 836616547 969704332 888892578 527996189 91662651 80365900 658558737 114018868 852759937 376233292 27104785 877360026 725239865 170965695 909748697 331788242 662606278 552517634 676544220 36409712 314272120 559177202 428525800 521378448 170654935 612848479 356782757 645076288 5287534 913611429 147171502 342241798 744079072 711945797 423911034 266232412 759279355 460501754 327038180 697121920 29324351 258589832 173203314 211919972 997124957 347720246 800165964 482924634 19435316 970431586 740045626 809181079 889163585 590614670 435887499 624075945 235953036 464983752 25289015 14030647 533123044 162058816 96154965 429317421 306124089 694875870 888578571 721659546 774257788 787954141 454915165 91755033 729014236 990682861 908209702 610606366 735535289 891942054 510282175 855677398 672867003 307770508 493662601 412614340 481741186 129248104 302141599 722237798 156931450 84050981 508567894 991457985 200126901 961766613 709258195 46233083 850098725 923815301 4395464 768213979 107975393 94076080 606763092 149208652 401198839 350445991 866244832 757232441 805234279 956974537 816111784 527636857 66927746 212530142 815708446 565877742 93718529 564133472 767669118 564433753 358517714 24479976 935798734 895657185 71518702 332420192 237730011 526270853 158209282 122037429 881285451 895672481 622390020 960254653 590915046 921464043 776734826 269193116 821010677 16359132 701862773 866121529 399819023 548833927 754992098 302670766 464223678 216044165 240788161 405898443 112834011 953541912 837966783 617282524 579871608 887629669 407343418 466481555 439628522 297459874 892991895 907925224 643900292 870867401 922215836 582054748 566884966 789202407 307878853 154321885 617017122 419071224 967740198 961573704 48659754 85581631 686205775 4950281 595462886 535712279 702591991 857208537 670768259 979943060 876110017 347929391 343681262 716321350 97376998 119590604 136237623 121206562 206780468 355365202 547732619 433535983 136320492 707303066 441961352 2316224 677578045 610584245 349597041 828144178 805370525 734496170 147681108 661577079 112032674 295142322 716299789 919411896 527152718 46158068 249626914 578737396 302260826 32643597 534149390 252317879 185718856 580402053 409647667 149515203 457580091 100250702 922641799 328501705 74741184 563565549 101586264 409446910 714511916 672233024 582380062 870267516 89967432 676560711 682605098 572455253 711278306 354731085 882499530 614130560 363258929 199354649 349442004 275423892 80397897 265848092 506483316 349809856 312736565 731993997 94296062 96498345 158923336 949799248 524900944 32252739 994711356 867656888 239414635 459123278 210619137 634904070 437817876 394956721 49336075 112916775 468164309 761695060 276767497 689542330 266551872 733349159 327374491 164652932 844756552 938302516 712936580 562624174 934265216 619485263 612871620 724848140 511387287 601055752 428750343 946912101 55381223 399607565 16681113 78335330 859044102 449917732 329506460 761962017 260855010 497661809 758476567 694408266 544746239 736327670 55819045 150088787 349774414 387619166 111905526 299063732 436092419 65696724 839510976 447428089 239952434 354118128 664130301 711983702 796305436 710581579 810875827 845801100 42343801 475457602 505540854 963067744 918544347 412582646 675440285 447629121 945897893 520078893 551297946 52184529 731190833 846506126 656461053 313535017 570369027 506178602 749560047 817096487 628373160 429017097 388632120 622398846 601017522 28806609 162574638 811352929 76949868 604327599 597225111 993109255 74764583 456380360 502422108 46648488 640936262 446622414 248010005 811567951 404457063 867862918 866228021 750946671 413528517 558314737 54262986 67206070 670408301 965453168 625007096 754700070 332455423 728683985 955475647 910045438 31547430 532341936 577811428 352577349 734963704 480953803 580484513 329298675 2013183 121535635 419302558 150403578 380944567 577050831 156491841 316160439 385500478 575865520 808409830 727950496 919646360 664296817 620913933 84381425 675394522 236347982 663120275 847069292 758843052 990911038 717065876 388319067 514148240 191574175 302992935 751062311 54948184 556618957 876759142 161070781 694843321 500279528 42118055 48558028 98195152 955147645 540114611 581126170 170826752 94339957 15590959 6699719 623415744 342485692 901611609 540164306 483529122 164090758 879354147 329499583 897689187 147346665 786135079 122678777 204975856 292485351 383124243 104300165 181022670 926206140 721273053 273937757 327912199 780441836 903413227 574433849 988702778 239488126 715945508 807159429 348423495 607555076 136193035 921416362 843299423 423332062 642243109 455958491 536566653 636347694 521319004 757704888 107469104 460686143 960397843 60969782 739163548 677708560 190299725 793499419 307277108 933511499 930925184 447254769 578622931 812790295 656190552 508799586 474538926 836408744 28766491 320579834 971549712 175314243 650825311 999151512 440380450 370038784 551642149 751133695 187620329 871276592 114397287 11163508 896609324 676704132 372874930 516703829 481371914 486464918 873817086 564305412 872316468 188396210 325757235 522157461 251010458 568999570 973749874 1121133 638462107 671732091 279511407 513965595 470723243 747571236 50363258 736603005 450831825 949293498 366953154 238107450 845049590 231828578 126563574 311249664 462070993 545780288 934138741 573131798 630383693 57690027 963640534 131436896 158143650 319451965 331312339 271342078 792543492 952418898 415508724 631850548 746751843 442463317 356249480 330092899 797185463 998368574 340943728 74789127 735665659 511290306 572514999 360643039 931332157 696079179 128734773 548290456 145873099 610914879 45931565 423610536 568912425 362100998 891053751 703962611 388701382 382846169 885511486 376007592 139419992 955845205 690975023 687089867 555641210 228842797 953459225 930831019 671279971 882394587 353687512 280091676 929503496 562281791 180367780 245152104 669341775 791421480 606714512 629248970 983644494 378385431 603601878 772303884 123592128 49464593 164860111 583732372 387619839 224032574 86802267 871156819 347511190 444548504 147254917 184182986 62534308 724189833 978297072 527457887 61619275 193157995 944759462 639243694 928640580 372470692 740451409 954008266 70581931 570903127 911617326 856047371 252076636 117079730 260311407 387429863 789363860 644343381 375883712 715077412 824925198 470567900 719987448 855265167 190240615 209831055 804715568 197985376 969316272 185230754 363425388 761596969 584434975 167312903 307396416 767343637 981234707 902596188 597704916 716576569 55281962 589332400 429471789 143871520 984375816 521643170 19643693 915843668 662899545 891292571 477795336 653244757 710619878 103780429 687270291 767100804 563896174 705137621 475649616 376776573 812412050 679181743 191594291 32491077 964047546 951814572 658104659 53821069 402466707 455678838 938193894 328632983 526006435 1764337 197942133 841758177 113481735 440407425 26061226 457237608 103804296 337883168 219353276 278848317 747789790 381700618 438903968 768374675 173964039 657572538 36616707 519779017 563028656 293018412 201445290 428923458 633434368 107057240 661066126 941936208 180158329 4011783 755875094 337811413 783093198 693175324 924169196 916219481 637327218 871196372 427689157 938443581 748625685 618332246 101889179 858446852 443740262 136935865 3944390 107559660 154498384 286549083 32313935 692123455 886319513 613169400 3945763 682140059 694955303 897871973 968941235 535149990 59521727 689467721 743212372 304235417 481742524 302884341 752574583 224733332 104990347 207440176 912823671 409109540 922810137 828222990 916707273 617583830 503653375 308696884 342830167 362654550 682471410 310024794 834121414 397042479 838135152 950195412 924841257 574605132 274170893 368139871 721303417 371194849 783814679 123560882 380485403 136129690 343001690 51936674 730760820 186817701 701350791 838138426 131604653 685266079 495334016 962473571 100347693 525507395 548227230 99349615 278603916 116038811 512645646 779628150 509814190 44631561 634583301 38923419 186977161 766560498 97410144 333874360 821397769 990324879 728073950 275190014 353665713 853373230 693288918 752877914 548529698 947320461 338614590 121815771 233772179 913897645 379585893 876858040 767410890 425935943 27807155 973487494 300746493 740564842 421884378 538401751 951304623 420020964 347947642 21225890 655041620 316136240 631038040 411469462 437563530 242866534 760274560 385675063 816265405 799270985 239626922 578999527 466086622 337599946 900398181 715329298 480482186 103588736 453064883 463216459 606962984 184360536 977270268 258461402 938128687 797811624 74300800 92920555 88861223 284888817 912315679 64971717 801909599 746706414 594106723 415824236 794529737 83968750 791832157 339966647 56606871 884046150 657219228 619636103 834395929 391449336 125820500 86263172 376897549 223667893 481313592 479072357 711203776 624089353 244861812 337842084 700630680 245953787 161840976 528954125 317061436 929192447 593712793 544793583 80921874 209230629 115052163 883411716 105338387 9878128 455078403 928930110 251526668 301526270 767412520 470270153 121401481 609577972 515444572 786124560 877486345 991028609 767112106 667098614 430905189 912533008 670332041 977706271 706334096 595737010 937324968 921689410 101465023 773030638 705668665 939937310 509468617 619136810 416464048 364917467 41036630 330682938 126989030 765866215 161766353 588767637 667235223 901890700 423642668 116042450 969792202 285753378 266465282 816345261 50201622 483033882 380084696 881044909 705082027 391994965 404086946 961596370 509745601 250713826 229080509 71204452 839258290 3606094 924327021 808678281 392963665 112781124 577912174 890389762 180301712 247691616 987387220 3582004 314848925 479221772 66319707 360425094 981343244 15264389 935344088 620942962 189201569 381492651 879229006 452328794 218423662 309869722 869200671 620060262 61555327 132383803 157383463 722516175 375424419 139997613 923967912 616162765 720166739 409953252 485575298 463317761 927050229 744752884 783755428 573603282 88932302 479328002 881399605 786608210 77919642 123310606 37056122 439810858 70160032 22132650 495000427 516981589 113615848 653176270 60482846 384518074 594040096 795174603 502633044 383504601 731572055 444977937 183830967 777332211 83046024 896903289 262359710 79227012 510709930 515072169 291878652 742188460 627496701 743494039 932667292 899594151 506089629 418188607 33094814 147778054 428534022 604790358 223310466 358843083 503465047 968751249 255392317 200055073 159034695 702631124 152665271 320173373 605898412 920097549 453497824 901617539 911342343 251204607 548523531 153201078 70904990 185547808 841659214 577034592 960436688 165678132 368061714 43498220 843402102 781898362 317206347 95250274 729201644 204455763 418062962 213989483 761453996 306279060 12382754 734294334 945372343 592179596 33913463 291582863 515214205 11563305 269304138 655126907 153032442 67056582 221175980 802995749 735536278 445521184 339395550 166956932 946780299 295215698 125143187 608360391 745744630 884053384 370627344 915884464 680750613 647011234 707052629 377509975 976972360 439350315 925741835 207488729 128629722 318073165 329028824 519832861 786356719 814365906 330485647 951696572 975206583 696532818 542009402 818615128 281329560 320471338 189898058 293596745 159472391 454841418 398299435 16184755 635222666 36971023 10265467 201236018 780682914 222118204 479119431 411737322 609844665 527421093 614003918 508228345 216734014 494579297 383610624 872503859 182899367 718134082 101928054 785550992 671573713 792491122 457260136 698903117 240499024 681437569 381142195 450431281 304464126 889594738 433624204 728950388 625820044 941718968 369829827 369672411 302934900 866120020 969961521 331872439 258722888 732970830 283980005 638664750 236036729 221154600 716642591 342359641 127957838 807302642 893624040 142937225 888512182 882271204 435336086 640741164 61206878 100649364 68418140 997631507 695957734 270531815 432308627 291501435 699104575 428355585 432433753 110057367 245518648 977074633 988494814 979895495 179172924 82862626 696332741 215909555 394940937 878829654 215212005 286915913 1784076 739466831 314937566 395493327 640466053 368222713 425134959 145370590 593680452 224200467 958745991 142724896 826869249 983905702 507677899 455565163 283309754 359132677 694792984 760729415 554999994 464558661 387730537 70491303 139322087 67497361 720791358 310756674 766053510 589936550 387119229 12951414 800348198 743773894 606642826 504181651 330069844 299597772 229521423 270797074 621355182 273781284 349320592 393889580 890855206 394666612 914318619 325755849 683588172 634449757 192464964 525668744 810919041 845207097 724397572 36283977 273339810 558787747 769066461 437013951 158664772 848744763 301084698 896227014 689807501 294770692 159872488 971575900 408189634 953725513 887594790 341900861 663484457 811016115 549120315 37139680 637365620 908824106 816887135 175047273 934010446 758090009 740366999 543665028 357938519 764290097 488096770 598323652 22742011 940830399 471244711 636262728 5030288 461134805 306281961 22869690 221429985 86096853 770780730 69445320 595014964 235316558 626458770 449756110 328711894 416582094 107456131 740906663 268396174 496920773 981810291 650639769 674381777 858270480 135943497 448603584 615233750 878864432 541055730 90623362 197201648 776352180 134251974 496637334 40766685 338521976 899569546 489072577 656130590 708985873 10921030 333352020 599532413 980830423 523044498 158882395 716159494 761679592 593069847 668818320 459175614 716537224 443849109 931566491 807005284 385819552 683938486 657091547 692492117 271659954 584101000 188664529 189885910 815774249 490765131 323285184 441770038 980325488 940807218 664047369 553188520 798798094 71374736 494889827 299919818 820242315 692805014 396163684 477675912 403553193 985797555 453887792 322859788 133098377 753452942 171978051 884438566 892490569 288019729 636781754 102171754 1832977 400262397 799394491 760449371 610370086 193158820 661457080 382152584 818926175 530553191 655013572 547980062 934835653 35530657 568867866 640692240 919639062 130133410 562657993 845007966 251301199 659390636 840822112 553907927 769006174 304876455 598441949 333933264 487092445 207159163 15714925 630810974 829121799 40475875 267969822 909777618 679318692 402797692 542816185 374262370 496800278 502216793 218376114 309342029 951851757 704888755 777723076 142322932 949822989 762935356 777296263 626138420 157569757 194480917 933036528 616357014 769048448 360196622 263844331 368314438 722646670 345851725 973797851 110994125 334780899 380222050 834266658 712525570 464024174 374175764 207964655 116247803 516520256 73120957 40382045 931109077 977416922 802476576 140755501 252312311 983128447 743060681 46356469 26731274 37131695 502497304 453826976 975719351 682431100 976685822 805511843 109103742 74184448 80676948 773275809 806122018 575955547 518775520 270357651 930570191 706767170 618646440 10516968 71516300 418218037 12051561 534615558 295884558 206942540 909693084 661695655 200309347 283810158 561615582 868030737 123576580 165182897 440321221 138811285 736297239 714687483 724793030 589095916 785592906 131239284 878301947 366059256 578194052 486093036 800933707 340166683 700701761 634650992 469899251 483056457 658810722 86017961 868170044 482716619 86542054 216440439 637301344 550290119 58841439 635232924 351520252 329048902 25950985 93413201 626987594 776489002 605738739 597805979 350017675 13323678 613537017 520816134 742976069 804108694 964068130 226539826 166081069 7379075 352702108 217510900 512052557 405967272 47833822 566624262 80653478 459207749 819257601 132886100 91339813 999371311 428575174 859026050 608053929 718523683 545833040 49174765 147864170 631285818 545770336 713667812 698246338 961808086 383016988 764693977 927934259 477932435 279644681 617297447 586745192 423927602 131962466 696184573 783905176 41861997 510497886 987802012 850242765 826107359 569793826 316489184 768810316 250468005 461430043 990691085 950757459 323582953 798935289 200427925 986210525 689153303 150164807 92802273 479489644 536437543 197315213 873971281 947537943 124361506 598695392 581123584 65915513 42848677 708836542 692039398 873309775 580771045 962155178 371852691 158280827 340386543 866313278 204763908 188574204 21386464 265874272 237692712 642445047 66143880 361988431 867706514 275600781 963326146 370597830 307209759 665924138 839920494 265008400 82136450 454598273 628938380 218299238 50208153 594212983 71482883 274469232 421363902 709113699 779398985 295538930 366190755 836606335 847444788 557208801 163617696 923346836 974406395 300530065 135741524 85093366 850582007 139919866 755033319 901703526 407223420 751969648 163700722 859415706 324751976 949060299 947706169 380638349 851105309 670477834 419719384 323350700 165136118 161038029 616438432 308086351 70111224 856557770 946857877 677048727 501586695 702302631 467560418 710652389 224992788 29791169 548936880 768926819 27447220 774014807 285803922 535413063 664947253 964574375 225517566 296912 357082021 606654760 749378616 602148725 45806214 108758221 674214135 383298003 16097237 204017472 51366716 3591051 359753133 850182799 930271160 71600168 708866629 354559388 221037383 588459923 97375851 648064390 324102519 576604613 506718385 534686320 851842801 768479384 340158647 489244415 256818977 35250603 379060692 357378593 835199471 36036855 137393349 582418749 170829901 480778601 912819347 575722479 383903751 212275187 295222674 362280895 24183843 429943579 689758253 382462000 290826862 940783811 951706881 608433126 465916651 129168351 757065161 535995844 438685042 307088206 363246634 235056252 550132231 252943053 438833547 348893711 500649266 42598493 424339016 96026747 515744432 916254433 400231997 9569277 866274688 136250806 171881653 804331051 932401477 489872135 261692870 743071428 363059793 121802556 787154967 557186355 397730398 918133066 153531001 990076260 354717608 615974359 47892073 409969697 543533141 251423655 710981274 655319215 983925487 976060970 297655220 582710155 147540941 264634907 712472186 293995693 161935159 232042270 759811866 12760971 927051952 439109870 746337285 649482282 350866142 353509047 509061279 897275273 479706700 706046093 922998534 695903808 865850873 497985832 487294048 570186257 274372037 946463873 29980808 460106536 950539292 437704321 16865603 891192526 730826974 65885264 838161949 589750329 204853474 354316166 171170583 469698820 146040554 780317638 966444338 937672492 920222941 811294222 217213711 922844226 389858301 908039300 775858736 417503366 940754853 688507058 879851730 216321762 779889118 15710984 175007954 418997226 724020597 784619797 216146670 435688220 778172424 580737768 71267330 663008963 658713627 171881639 500556207 421239599 837089237 433033464 27825872 291029074 181803868 199697245 437416466 734435307 744175355 980961160 188850695 800040397 35561402 53962104 310931335 474739730 160820665 262779031 358772043 975535514 64883789 182159624 901075190 763984033 924182805 245273694 901901490 741823289 736937049 913003263 689878483 470921164 514570878 675772005 572834425 337468578 985353315 692985719 983146071 569836547 556116921 811297706 953310814 998791335 572897302 577406985 284595421 414465834 96834530 28736501 561451874 758891459 925247582 106857586 898835685 228324788 289034239 174278283 434975335 957436214 740150051 813519715 18311275 585366479 353676894 845184465 358237469 107855567 572306987 125578937 291081451 525710059 702418018 584289290 783453353 809413904 963634620 59439760 181696578 286303632 408995944 845942306 256852207 64122149 414968852 19348871 497518971 642544017 625166192 535631842 698940701 732948266 353698481 153520087 9164215 966725374 69037328 768540027 230804190 381067522 464235285 534294981 223647657 242242845 301601913 959299440 73928348 862504272 229873280 183932976 218448723 214789662 768333875 642934085 436269368 270795649 285422790 93831048 377878931 15303469 330598078 624499611 975104730 786355108 841951007 844969818 384217756 305716040 360657205 145783547 161561443 720192810 411503436 879010707 255883914 373987502 32924909 10754381 566435505 286056676 921391215 194896370 317243066 720837931 787174182 221824875 297956933 515794817 472150125 104356403 934141432 562992833 578836419 769060503 879013126 38163768 335702611 182629812 629809737 939755954 152326870 322602938 264528011 956588735 933570457 528337172 317537267 592457429 334759341 885855607 979469748 50188972 636130087 166104547 43021771 951586906 130636175 660009953 111478971 918863819 337392001 487695911 892329522 261885027 702341913 529196491 968294313 336854446 230846268 254029254 930589382 416677709 615311049 619590858 506986984 859342630 54290158 751533765 364838963 302129533 444699214 112138379 581543625 489428526 732779011 772407412 86429225 186325736 234138030 994189283 444823451 248852662 422281050 733640414 232207140 110255916 615003318 592343730 988952391 994285935 795569125 702830895 761626913 526338355 82357748 153405925 553415182 753717191 230090282 472475248 959508384 110273436 276086356 161563651 403489865 941725069 987675065 54836091 511302062 192637093 177821332 49341217 734780582 37930913 675041591 539833244 863622454 80084314 92275618 464955410 990531097 80826980 903804117 309428840 967119498 965436631 90893470 20921547 996940179 231620852 7522233 356844123 533873544 353717107 765220394 499247258 552469668 754592026 884265351 553022616 277848643 915593678 795520824 450645613 348392727 365551306 613871893 146923680 180928833 4623702 723958138 109084264 251878283 230622589 201276568 328931521 879594170 768036832 337343025 812814477 704584444 540870006 883290748 777617586 156208360 253696314 183767287 868883802 620662385 80543322 2725797 966602930 384824407 388556940 124046276 763552661 753972679 222368582 140885784 183732419 454662881 483038853 212006335 690632496 622593993 925076743 969724529 193021216 651873108 259210377 766503730 617631099 244406921 790432523 904818335 748338351 70427247 184202838 43968391 347606297 565894198 231490841 162346097 835543995 534722833 927030639 37087733 646489076 744866812 698236381 398604749 363449800 927920867 137294821 747479032 678617928 588412951 927688414 590555392 603154106 585825465 945986154 891563462 239333605 274863276 147848812 299308966 112558095 353821243 774956724 783094496 660979607 390576487 550866820 992721691 870146654 648839155 584829202 523608344 595758907 435512199 505368002 177623713 993142265 402482417 639830825 986167133 153445050 943603214 809791612 670735883 613247205 396292740 676023691 254296421 25348019 611406275 344246360 67398685 230686011 626045218 253824040 683072299 604401780 192116242 743774478 803999464 200571071 25746067 197068909 772351280 928918404 862259710 204904174 241984979 193174620 107365225 107490118 401554001 155793085 382838582 708226704 280690848 974322354 381560779 238396327 292149279 747359037 198760504 167560445 205618333 757328676 632660829 649421704 635702759 653439038 403362005 167358996 293237984 53497623 402584215 740183249 680748034 335923276 651870680 115030275 7901721 205901107 219621222 802815880 145209574 413406180 101718679 351376116 250924569 521177838 231056560 37160641 410147443 977703875 944007850 17057708 187648821 784252159 375036468 934967705 64498955 796960195 523601698 444293691 416203477 546970163 212713271 467289096 483691110 622682478 633815518 24101713 561403122 273116359 418516397 860269637 512421482 274445307 215236091 939816708 830428606 989816128 749161902 901289894 671377454 3218837 998437464 785078390 536076473 445328497 314044914 159593030 162003477 564704744 103800887 832932661 233500331 949555630 398764660 960760824 165391356 997869967 198783366 132699549 469740870 347832928 417542029 918603210 892593710 667963004 425810296 454773229 891541916 958445238 786438288 281520723 596086266 83322574 377102273 719994720 845269840 357669317 923393527 456882208 589616249 456857575 83061686 101556350 68804235 12363892 377141072 155426181 889073686 658126215 298491794 730371704 645247848 796053256 872771178 610197384 831144111 729704122 811280359 960046781 146993068 61947090 973151566 448727826 804448029 785590386 787513276 251789806 863502125 497137870 604819318 770875858 106095057 2430097 634755430 474277807 204768024 967477241 993677514 73930701 128961741 69717111 186656072 909038266 207524389 472654815 979887892 374536279 139659525 126612671 810434556 293695043 963547205 71548416 179230819 350075973 74793061 64668813 143866608 595222240 380239801 186162033 462524072 347877259 709464308 701724210 399580171 325520645 60269241 791931005 913126255 314936479 733159593 478453210 86073746 336199500 709988757 356073342 646961130 660735753 52971579 751592090 707476479 535781763 782122508 727468503 261613849 987142913 144981275 313340489 511921497 963197856 170248057 125191784 763503354 638534473 549596634 645711395 508589415 409517449 50306158 87701761 842015171 159583544 877900134 319018950 937831492 27520023 874239548 73679166 900843611 66153835 966932138 17714278 29107454 692771486 895655449 485690419 397290367 11897355 408906713 656402122 812626514 485311800 635282636 976016146 658795147 10901588 52285823 985343484 94122225 598212431 190516711 779476821 934233411 582579948 600790890 760500331 342973728 859497566 598460994 374552451 365349586 70488356 630102877 455760058 992301631 435560025 102010153 19422306 939159045 483584253 532929649 373751861 214970248 238434858 752362802 614790341 787017457 800795610 316142432 392765246 441200328 898267713 176208365 66301291 975782357 747688214 254132634 436743232 177541526 239798387 881208047 417578668 844845186 196886432 480137930 923659671 501109395 99473789 726565333 982007476 882769410 507833853 603733855 380894379 653663973 177285126 301745809 538796923 560802059 146315944 230025209 494673594 641127932 556346889 519489338 539940166 652738371 744955799 506004464 246865430 516814982 926856823 926425367 473205513 296249527 747939571 930763529 234073107 596186904 420315022 186598607 754195369 981190341 532600359 77116566 215272519 392202099 640825886 4774236 124079290 482541989 214487884 196829521 151924226 752682675 598049666 302104030 228182082 724630218 313513952 182778580 920102048 709585674 219176624 534972594 591754616 509617360 758715338 860798793 533910651 288957212 335974340 16306814 145145152 222021597 491304395 656195830 799495807 612635860 565392115 774185612 666922043 885118840 117000687 970396339 302774593 262837539 582274104 759948785 596677007 308994031 168792906 22784500 331789641 518079043 717476170 531072560 697715023 429877293 463512615 414921474 214709510 571041359 420554261 497825058 421312845 850966566 968847911 723576738 492678254 277168269 114448483 190203992 512535661 385368028 269890284 563779813 405278401 105508494 515321815 429219885 661731074 496292056 213247674 843018120 455526011 363152117 441041294 916725437 713998882 999421309 962700807 471226721 57130654 930685848 141153760 819861842 942255411 473537382 664884233 386477060 94143259 980085097 113036151 178620637 953534625 728529630 615143934 601279705 721862430 443930523 694020724 570587867 104368738 767523227 115043512 689678244 425394392 173365951 267007785 612245130 781450227 374978840 211076660 475682168 596665478 973943696 868905235 623406412 744597906 845286695 938177297 660371914 120066123 240570369 253550041 208695924 363882373 333696901 579308846 625416838 111534736 52757348 524683389 711325228 471350072 691677410 484875528 674315327 243383545 377171018 826300177 748487534 215381977 403001852 104644669 490246034 692702704 577781403 427769137 406918922 225266452 48050452 293914395 675723743 653336629 236541254 270599403 89343141 303633057 562283697 85510930 947940870 395428607 659149636 209386590 386387794 406643967 304530513 352344036 186172047 523843064 942470785 525922637 340551740 206912319 867416492 849962156 75354344 338325539 979676364 533868254 366149471 805236824 343575926 737843318 783817729 920209626 904790562 172174361 828896606 308094299 47094114 49220315 816805002 462833217 41466994 972156875 95855669 957388402 383397954 350158856 533773822 195975049 174599621 907040688 767552891 897626613 1471256 274231501 754291532 576719778 221261913 692308832 632332683 301373872 136273118 724252409 459926005 574444891 303852788 950069998 351683985 452810306 317896026 136782377 324468880 760492856 135590814 734005109 38952528 916969119 460259713 973009924 783687079 562175075 297570299 138527889 850756375 611051904 161486403 822409012 703672089 556473726 163937083 884462967 830488137 382209803 402665772 692457346 458607640 440139161 751763207 363011591 732477402 590861588 616300467 936748060 866610152 314230450 710677102 781249837 835550010 239894766 475351552 309924834 777546438 522138863 562698922 548023296 618193517 983598834 229199413 781224586 182630842 699681374 334629185 570983433 371929930 732067826 14921828 184883497 731159164 388798793 485234676 967744252 865224684 26274111 422381806 844997915 982305632 250181930 606520453 486348227 519509369 417160007 888214330 117434484 793723335 513195889 946665946 523731443 685126976 834051725 859363289 575130634 910050366 113360984 753884802 841158239 468735225 102501923 686953109 375877107 204114316 956607087 878820211 32579647 768873056 613148881 889481763 945453182 830449390 47488689 389045572 651802840 42354063 901874747 986415665 364032723 30165680 107759102 158485587 893905312 394495285 143902077 853287079 318711164 963627396 460247811 476824732 706417688 419476830 481263269 866471394 171286231 27994957 185861216 635175797 780423999 837109586 88534906 843785101 517155051 259328517 136635780 834253306 714037589 814252766 501615432 970701535 80586675 125643785 399262689 938638336 8008579 399209590 893831862 590231802 219105797 402315012 768390588 7374318 714862988 775878307 273613868 898298208 411304256 162806889 728903895 48840347 923355797 560224629 78907067 788220842 102989652 101304521 118069393 365789658 7670799 525620900 593453672 150756970 801367176 115253036 811688358 943377359 41911963 333688169 881460208 237796470 887980043 912293178 993161673 427818108 495773496 492831882 225150550 678631308 429976196 245543604 155871063 96069101 476152270 661969758 787043100 278923169 441051294 236024055 829813620 4008720 824227693 706004142 175665201 457833646 848847862 716407210 973324712 588678356 812153100 6925719 230297478 520258310 459719196 518829401 353806855 203887386 828791036 348160686 573289008 800481473 665686014 383328407 661935299 18734150 223805470 151381779 126255435 884639165 458007009 290466132 983994691 870102405 925005655 160693341 303778039 377622364 699186989 357260707 341082770 661279475 346772045 56343047 144764311 980411994 406991428 118911067 232312404 898872208 63892614 402515715 235967484 933945558 753568241 278727887 995385240 940585126 39079485 640589240 70274307 698740072 155258973 57789609 963558096 157184416 539537514 633171326 369082801 528343965 624149197 248186267 362514736 822658768 545234899 899456513 101433707 674041871 391042640 452924087 163438975 71383916 859094270 720966008 546474824 533379692 908608755 331661093 457092531 63245501 576337166 673689678 835695024 562164979 835417699 105906847 251755787 836442179 252707758 747644399 45737204 463775348 333820797 941383086 509132321 121636848 644744323 862187999 542270146 100999257 940960578 683880226 893802105 721537074 362708087 95102887 615582245 73899521 847752313 620395759 323099239 467377526 360526791 794481533 150373065 181954599 179397103 519669862 201901789 344327662 477856508 412079988 781566603 228093281 112047634 493035755 659138536 78215250 166359237 369078212 382751566 880588177 99201367 65763186 940911999 535969000 273788924 376140723 744217826 167953339 306833807 421002061 536469534 127518702 514497538 803864949 966814258 431333278 642296390 715644221 459433298 736041121 944036266 292922038 650324844 713520795 877817129 607992256 126142146 552437422 164007029 141389689 626014298 676307195 447901051 906520365 485382347 503481603 480324233 556012071 493009428 166823598 290310893 661236531 741619081 718419631 543680910 774623890 529351682 513503015 26189521 444721399 801175692 722505679 700356119 537803181 453013690 446674867 942613363 92721319 96819099 284456586 567293794 218390536 364818069 489673581 617657857 470236471 219520506 901634794 905737214 453209679 22435171 543578838 839563988 808006602 695719022 42314938 721193557 424616442 694082585 160338183 381440873 540600585 181496634 803024129 539374971 492032747 676808580 377435969 826672651 755037967 883913115 949879409 949887912 704816018 642465450 864951736 303910921 586252237 911398642 288960776 447684394 549125244 605987361 733792740 558603070 671681122 431593787 762292333 959846627 423352296 195899767 186170809 68351330 353488696 240019920 232317749 94818378 76350891 398279959 801021247 26283221 150668498 626540044 227721590 646751564 330057202 654276993 601170374 562710599 652700470 906009609 852843067 286682785 764797632 827827711 811949248 429148530 7477684 695374651 942815947 783965924 958052655 460701245 141621715 489161716 472624421 736970592 369216811 909350183 434197771 244322500 861048588 47208654 886923113 846412474 547327911 43568235 552589943 215739471 411932667 20985933 874326957 351405580 695785192 972255356 268394935 313695899 62241869 703178808 357191150 163784952 483219425 856709647 839760959 726674853 121843343 394908847 285942975 73893503 975360186 563556098 808062150 835120082 844234675 75236757 530896247 128370127 695248582 489316977 91875384 297953643 416274652 605454196 713412393 833724195 464624850 414023893 258834700 930027509 197407368 957309863 239682986 912580061 491375267 769212406 511257947 627689859 300958923 184506970 938773303 360418419 351310327 379539335 909852067 695490740 802551487 127497640 416705788 44190149 20925315 159571074 457271757 833009069 900001120 372247745 110128338 888135003 201411361 352175375 330440187 290139190 917411695 685889581 193776784 528869653 255274922 153459097 46218466 758332273 480582744 422613791 828114881 469604020 835762140 539446361 623039384 58913955 769554030 866689965 712709697 327722238 667961536 528035583 563510445 87261018 534200903 276448791 84860667 56738893 211591716 904145788 281398942 522185312 897393431 595017688 753702312 514445100 645987881 337879143 564145978 427678622 392688320 152319413 32725208 704193886 160183735 458347451 762996411 155845166 105931074 437531544 941366981 903683657 348122871 644856556 793937513 915925788 874743804 277315896 246268010 499815115 999527766 596411568 291354939 822880296 821537546 99707669 235276804 901639436 313571143 727045858 520658964 771660604 404701236 940611243 476559185 405027094 595812120 532528379 763438612 972454561 299413530 189915075 41411135 843269724 860151766 56302978 257605142 244043904 593469615 949254119 330513449 331970503 741633053 620191412 134880802 743425563 705392980 68014720 411311487 197669884 996909038 623589355 692968428 64514239 582448122 553201665 169585788 841110101 788731693 497785253 276943900 853290646 289376663 241462134 722326474 391931664 180477246 482224642 412347219 55384147 666851711 472046655 337930729 583963305 997322150 230346253 45281700 55575521 842839909 694367073 49091757 947382812 96787486 411792440 396224068 271425669 840887696 387648285 763436753 716011087 91466255 330155799 533249471 29842313 210331744 80543312 630017753 161121357 478621025 873038343 622591279 649879485 30890853 145708323 343243071 910444630 171739312 731358628 971858537 207994220 419652017 397380995 478438066 415396824 834486647 259279826 161522406 943204124 573274792 394995534 593902576 961230366 585309119 157512022 165074699 751433874 519971805 325258045 581519549 756360112 325010613 172161389 363774095 332987703 514403092 68434313 667994188 205472783 544776270 559082090 731839700 405205051 242757419 843367428 765943864 618107929 148507145 106174534 88519250 846698465 779328362 728387874 483925319 524770514 76789666 326172209 866199333 916917671 74427591 343833302 130470053 11570146 329900045 862422961 141786586 277697108 798216504 479166859 186144203 289639628 945080780 283952609 552833665 25107627 236076741 976848926 665581650 120215530 558382989 629338815 126024378 589508738 645283597 86048532 261993392 665148648 544769741 95143136 459550823 855526310 65588336 282095082 186676519 853145914 561598473 370525964 282345318 473005249 328310976 714674966 700164135 669939640 369476316 303875949 510529559 174330636 792880501 72754457 412447632 542367982 680637764 282502000 210159750 962701299 567054567 515120428 424363517 740987571 919985220 8132687 31724322 579579083 425736655 691860632 893548992 743389143 545427132 178180466 850737368 71377914 208021444 127964745 752911442 8243 206174868 253511037 970611080 260119500 348999296 806262762 857319019 50497570 319724513 531132777 857104632 130635720 874917275 421696116 378814964 514312174 932028207 335322233 803183769 283985677 568057065 901023305 328414363 597755300 588495395 96046571 207235962 104880670 588842218 769034100 789167682 59340453 542987879 843125680 741925508 26956080 64936963 143419011 178532124 712950498 635571288 726527074 688637307 203962984 87531721 494375447 518076487 51656989 735499460 529593184 686646660 532824625 612245925 19894706 284166703 421585160 361281960 772926521 207918697 172479286 501309453 778410498 208500864 636276850 959080770 228375261 561036162 951742798 555352087 994002487 459573270 891013879 660168701 303477680 962014070 972212306 856547401 741144645 597456033 143035951 666921840 227384006 707001617 86784291 693756732 527656565 357144406 676438135 11129284 754150865 978170123 99651986 494339004 705729873 173755098 14042403 230785534 525044581 831193527 257315269 742640335 906156753 72874061 128967558 856754520 81531958 515211638 783323125 461870325 603514298 950389565 263150071 443805054 622438595 334765084 660155862 877916507 158738073 807683907 154245129 206546520 491732493 791626928 182849699 363449104 219095495 497056146 460262343 257184366 945373608 427323591 48295929 874957264 690540201 998486790 55330291 69023080 563953928 381132842 623328772 687811391 714442505 682894664 565470661 367321077 721412042 292294902 668319380 472496467 665112044 36238775 515148821 926341442 363602242 183037968 456744312 963369693 896586635 679324736 297515388 863913407 294269154 387648569 209989243 149959860 177090887 416731244 421462361 438565222 97424050 417050886 467698736 581166794 865325169 953379521 229945749 35105718 903284794 397217685 212002316 831432247 154320470 698856801 994179497 279022367 685362740 157589914 890378815 358255435 9450400 620245871 480124788 989497226 204478393 69598872 679327998 511859855 380530655 938132978 288094727 872904237 626581286 883359214 92619814 535531812 170631434 628514395 605582382 576432077 295576020 220324069 317970890 858233863 10716421 486394784 879729930 658158476 698668742 948139005 361105671 919456958 450815189 945235169 633371778 646515965 557693413 542247440 677294459 352270636 554305282 151510784 445173368 387752279 392290231 877032247 661224289 178601195 238066480 683801270 749480401 332719332 393631212 863610658 37947093 676491520 486845054 471856002 800104540 645338300 830730842 842869150 903689383 158195456 861099723 494652823 721528313 54578730 401244531 512455116 411490913 346382954 532118545 227819535 482226616 750878963 251098372 383150383 422420883 740938674 592846256 749510198 25819160 696055256 530983132 145553821 87133111 712253751 421721643 837601592 126331155 126114420 659538276 226252567 949942419 256249378 306766448 304480191 976588272 756289563 73798592 754654328 126850070 17240612 928016016 333254608 326916709 534600392 98299145 344886009 403024727 796748122 306813375 620660368 66641385 259652553 845035886 141063030 405501941 602621730 187460102 950920586 109160952 781873931 495401926 673436696 238456044 986191761 59586241 412464982 210721292 354730527 231338049 857396796 496752746 845849087 999720867 967226828 465578310 421059142 979853294 849075281 857433322 239092945 108632984 291066501 193824917 822675945 465073748 458622234 934031945 191360075 127303830 989961398 380722414 865646896 887632460 899253718 68607182 967507143 398972839 98021980 657624100 232595754 889512072 757504490 214565251 580087272 101232825 394128823 159515261 782578224 205519573 754569899 941195530 675670406 684992842 910557697 198780266 242145628 435492864 711478693 750504645 765928856 25818506 363333442 627196901 7376383 124037784 338231607 190127311 133302236 658921494 155653759 220934735 890870894 581196877 607390818 544386043 452597927 802156790 855390862 727429986 68596163 372077454 429211290 865141022 171931758 784674219 780026588 362298161 519288638 633725262 538076255 296172047 459866272 638615739 696534124 413741217 274234031 901991967 402023644 356420938 929926074 404235695 46385203 297187128 650107559 126395820 24187199 367029046 986343543 460769115 840837513 922941329 846866623 401759899 63712086 246192859 748279476 285260142 454396502 747738610 676445243 723620885 418899416 229405033 743499074 534975607 488175577 761774051 623402004 910615705 790261430 621185974 979348924 823824053 941099183 194670660 569475656 803992040 133971676 646853551 804414152 995933589 44356998 823519995 763690901 169110700 486230544 832752656 524553103 479687957 881883233 639022894 119218659 380070524 269260388 883213977 547898235 302450586 444964531 499441408 324482996 28614732 474160140 100435762 712125567 29500329 9473109 924572463 684915051 452585837 936342667 168649346 317783211 193203069 888732613 972773235 738331718 685159420 599995480 664091842 45635472 696211022 349673880 745207115 148378556 603195007 961868150 398734782 282296764 602154080 851247164 77971161 586432189 302951114 415761457 147751225 826375209 902792459 569641682 838841308 150397474 901683182 501669920 495820994 715106557 7271970 820440338 813547767 603221023 936696912 956069909 575600999 504011735 556065836 690250626 997173327 372491314 362170534 617372452 747998156 991245496 554634215 10387264 911102249 645087443 810895048 457239185 86883962 129131518 486227653 364802558 63767744 397513932 789971669 853431464 912709964 581284700 347906342 752368639 613398688 45194600 791129173 999462678 237584839 391905538 477120699 944331124 918766917 961627282 27613459 570022620 82146778 771712061 645689146 742936925 189181777 727647746 409643052 775716252 260624215 407331577 292340726 569143719 245356302 337383481 680961895 551672933 676399485 818837980 592207484 611489556 202821402 248529583 569094549 458127880 237081204 307134385 232157625 923594565 740335059 459934011 879319155 705883901 810988307 843544754 562910645 391750276 516501721 912771413 205916613 95601372 880272746 892694149 647972146 869671302 560349447 904629936 954638238 750431561 494171451 161405020 374201041 813085849 233888752 974108283 246009532 469060190 323141274 92063683 838790257 533711173 729891334 336361110 69576167 30621043 534099006 273140913 202892683 990509699 22559596 706327056 798876750 714209170 545142263 955198501 88520535 624944908 466701160 185189018 402770911 900754476 34500569 671012138 854529617 834301381 952848689 131113037 378412770 115221416 450840463 1923336 475935017 15187915 39787707 558136689 641339796 720561113 929588528 35570365 277088074 797230137 69668808 914601841 909991095 662710 894576939 717608150 145577455 671388361 80016850 2264654 778428743 715608453 242294810 263374000 199817973 33186301 402700924 707807837 362903194 386672724 221735175 146462749 109295386 760877812 288237187 693522689 779989205 682939325 154062478 448232386 108579611 64267570 581593533 891025158 948929732 360654081 227216134 843116458 412506609 801080565 299286668 854036296 270521741 447210644 449969663 318720943 671643997 843447077 680479196 327572045 10703017 221352996 595026019 596549620 548701830 847400433 887401932 651667418 633560252 431200574 897740302 845661111 661643219 227853145 948846280 650427820 296951814 263180428 900163118 262705563 205182138 110700551 840794312 285722516 10986463 368306646 881920278 638538628 666891614 656901134 998780537 184849956 231764802 272101523 373979464 370972182 96456393 77090317 89793786 500554539 495537046 191318871 363395611 94451167 386787289 266224904 199696759 481467809 746262526 848704685 321565929 757343787 419123530 402360749 563151422 524554622 124006145 715756667 871429120 327109025 831443444 134232011 942869816 526603993 519362667 856181252 390508861 224530558 433195342 2764213 569381032 262390074 329534562 242715414 285536471 508853217 798060772 361458870 838194542 368131408 541906758 775541909 543493959 722317643 151981320 712048622 977429398 495606462 481699928 145223939 717085680 321837592 501804097 192428937 704605741 147512334 48876881 244776011 650417720 886752612 899537543 541598960 734764684 459622609 751158171 974538843 146195607 600444025 851676317 97790448 501186381 205730244 762175347 554272355 182040879 417667390 885064691 979829879 573363751 336772728 809920225 59727885 340088822 351230075 603102847 112006136 905660770 940083147 335982221 875414846 813340962 802867569 840993225 328220535 261329187 248058345 143706154 187504786 973382660 220510121 601298501 614935717 697677419 850975571 165710605 449609393 14241639 485089771 504645346 76580163 617333383 825539673 35267373 850117078 795798928 985392666 620544387 724199195 113098900 743269116 430999735 470299009 814247788 363256786 481948778 366963223 58921200 814089106 280720615 10831937 343276368 772370394 302154245 404139094 165706874 32241805 323368804 608264453 381512167 701461162 336402529 113927946 159840450 689405642 789281417 644628073 610106628 206658803 660367635 925024151 738729409 436056566 583056652 473038987 962189034 980162344 550430913 471820639 166377392 898628693 887499425 798602400 318106954 180846497 654331280 552206425 528097222 637795229 243093745 668324636 412855723 98869117 183059056 761724883 462279482 667934490 508210946 911937651 811771053 18073271 615184404 269998025 607342966 576140830 228684042 438798377 581275217 889554595 748296599 252841253 655405448 961885551 67761470 688746563 773080965 260591353 582609378 548642486 854452746 179094972 86390404 709237654 671198771 613932115 556611220 638607905 53050054 680448709 884323280 83535077 317141979 8783817 625426541 877836118 898872863 608013977 495874207 987843019 243265851 3057282 545748157 901837628 772822704 302903001 776640703 185749622 253374063 100690093 841033928 79554355 480656241 649319590 575343375 114456780 124119456 547936323 966970116 867302619 821814135 667553276 881618262 392647298 224705100 556703475 467919242 291951885 946581663 547677806 396294296 901867670 708719534 324873847 136331715 974846648 243647046 996088246 236136659 916736621 436693539 932408133 906814678 120591699 216974165 164848918 37032894 565995944 452376318 591521526 515068369 702329605 946438977 764412366 384026908 245445849 221400319 60585881 844563616 472510104 566691136 987956478 753060031 586582961 655775452 174436114 526874989 486462202 73397566 212270370 54687853 793868592 406097638 34410911 689829276 468716819 318167984 509857749 467844997 482231541 764326090 751545802 799891261 992679705 684310714 314080845 450625794 185989958 938488684 353603162 271083144 352343427 832782133 36218542 777127216 198824173 845357162 34281719 560401967 277372331 404794858 962327632 774996725 409258722 321047236 457431707 985268758 459467054 2829065 853556606 612523331 178483493 14945721 919490188 450296703 873122675 847064511 150454499 981781364 995025619 453727145 812869613 709934797 673072434 520806841 710062968 449461033 53736869 551991121 559907114 972386074 343558559 685933884 369490857 495183771 273775250 8950523 631668173 101662287 934773928 825221122 839288623 64861555 61264967 76156673 375891707 226938087 876502872 851244635 378471251 518230066 385025188 866001991 830689684 273803818 533719131 931276600 616880359 100241884 705681015 242587861 618733828 618290136 768814968 822544200 721883905 898664687 265003889 142399378 372538769 364754717 374984567 341729661 730509721 217882099 420376545 947974410 692961935 858401206 118085281 439099176 373399448 995588150 940512764 435148551 140194801 323753660 428503406 52048300 572368110 665831224 859768109 201235234 679347506 529324110 470041885 300301942 637410686 348067942 929947270 263229373 184951882 696921941 849106978 303246947 383439276 95732000 965061497 842676475 101914885 210970532 430804251 32627920 642927480 636775353 453527058 358659920 610699728 952498002 110040276 498677146 145564253 993335179 429574677 322660182 502469930 89441040 886457634 523169526 134890996 314594380 117185322 146601660 412055553 112696642 95360944 812481470 533248434 953218601 551730721 402860242 219436996 395089679 365696596 799282814 939184026 886365563 641609454 840879405 706813850 327888357 737804384 883089748 432342714 113478653 511526895 308838286 841531212 494036057 256928259 1416712 369724925 901954069 747278189 597481760 367508657 403946503 927855239 182337291 181445903 802150482 929956791 174293656 61836489 92553055 647919842 789843171 818741734 252152115 73250290 370397989 386632139 998460323 226602259 951419920 751322460 565261311 874677831 669661719 937646849 689255464 412396532 695000275 16166882 612116600 699791 466170999 308700958 464484220 598205570 564850751 25117195 246620983 765658528 944109771 823596840 145991842 542722708 6620065 719141657 144300652 269861159 805247738 605580472 790056909 929544378 116580054 158664777 139425386 733233189 389898695 971973070 685342602 881345826 31999445 143424503 537722 871174433 843325062 121660087 322402701 763020323 789875636 71564294 489444686 339828625 445062799 605256499 950904313 819630780 902530930 189880217 620853800 773725478 291494940 974083459 782945882 132921578 988805841 903762061 645837172 523265238 863694002 927021733 995193160 612016059 709270388 628568546 798239130 684230353 224799883 39193620 877698968 383010671 50556757 74448254 384856078 978115206 73890745 303755925 99228224 545656412 625436179 352630767 662291149 804182868 601877057 901065895 315190831 998666932 120919636 592113481 448340540 13233374 285565595 297089956 499823235 620645414 407873405 360313685 922368378 373508168 370737059 892718318 454132625 679522302 813379550 739155051 308113086 382054354 714164506 959819699 887967503 436949774 466397138 494114666 577627679 164852990 973873332 546050489 176504005 496832080 672124516 552701110 257689172 197777914 34219239 471796161 912529433 968258735 298849441 202714809 405801867 41165283 150880562 653788382 474103942 790403632 954661027 603399213 435839303 428192670 909312707 40052016 62349503 538177039 184609667 809594883 29985650 919238118 768060020 520379675 872009349 374946630 992543551 503504360 212397808 402364389 50518440 419689817 218002611 10114952 103411135 716414409 693966382 409913304 310510821 421568694 158485524 116435384 436498211 392712532 421891431 644800447 411045660 268609282 182435659 427328999 71959637 568432223 310433711 999594220 78783091 777449331 420049148 17534888 710166615 974492958 510458533 9381521 97303602 97731511 436899741 516546644 554823984 749236002 74545393 174846117 203422712 830468987 241596622 853156708 204545730 675182918 429215329 357846544 204789614 489178492 705294830 322116910 850526573 465115251 952171964 625308045 183321952 537357898 82816252 591081539 278825544 355330948 194782870 465203730 323372058 975977056 752628627 940699858 909045431 821683131 231910537 425915642 426876579 713099238 773060689 564550873 449402153 951970612 188368993 872478031 946137624 592455654 537669190 421902500 122793210 654331436 775697504 454185620 894821727 832269635 457346336 149482026 626798582 392462443 922854270 144109410 415796780 718398639 107499288 785189802 557161142 342660566 518834270 976177074 567800699 54341215 29475328 939203617 815004029 12303640 376917478 414953521 364116670 379822999 115902892 662206276 223009316 407336149 986173375 524266950 973661121 442850058 55468804 721594785 467873344 929120478 472216287 188399504 121389854 453060627 802524427 239326661 326211874 985310618 306576332 822331257 542835789 868987441 703230677 604079791 191361075 654971268 720124548 519684979 832300005 627848283 543177279 843474115 453634709 816330874 969779036 376380107 885717672 308122762 77019790 100006604 944510372 528354409 134437916 532295703 38262821 658229317 837217306 56087073 206401277 777667467 230730142 707514763 986748771 21295572 94791488 690396685 783587415 923481847 452835651 313204508 746590270 751907337 928531243 131159797 572362250 297868629 692914501 618450001 830538477 67369867 270956468 347597871 608523119 12700979 213649396 967218415 2662531 262274288 481715725 971859676 915387290 542775045 151146041 62866412 83580719 70078151 769022833 440287638 675190764 56055592 78316726 570335599 201482804 846088434 483836156 271549240 616984343 36362337 572286145 258114109 732018394 763045236 953831399 30370816 782920666 806635454 897604409 7432558 798387184 443168516 207886723 903914557 525601119 680964456 616529955 365522339 307795532 778734100 129577731 852308320 935210413 532347733 492622049 31516123 553908103 218316554 613017801 525235177 62127959 830875428 432635375 184501129 141639411 517546086 719680980 122128137 640216059 743174467 821054964 119858886 316826209 717856817 49753880 806907775 240542397 331003770 343759211 214926485 588165297 850866701 153165707 271498253 233596687 47165537 927803273 10939814 728059954 949980081 119914026 654734125 391507480 27326640 733330110 632380581 982548765 926704619 263397477 869987251 192932709 930419918 441526436 179682541 57533284 976545855 297483328 736438812 153624897 320511171 162965137 716254555 552695215 598674842 405024861 302943164 110527804 361884494 654263791 354491487 586061100 499365271 233527958 912528373 44493065 66230294 124675379 55585350 325659530 895772992 862692 715560397 715521913 799029667 91434065 176779063 553688664 672009569 494776331 555896359 194278926 553996101 879169746 84428996 540020769 205170101 224741972 86025836 109731908 571649553 326928193 438386397 116758003 519259355 860285347 664573964 692369801 404630862 587412857 246834690 71601330 541755176 840072268 448422904 18376254 619982470 824484159 815412668 704255472 477143826 58022818 118537940 606427061 157242167 365101115 238545340 963197327 605428628 682616278 698785782 506430478 703658531 427511722 315068083 745837984 252487023 661833967 997214305 189928828 26520577 218494947 893748329 37156163 206899697 573372773 892608382 522122079 810664233 389940817 866712463 21655479 698116135 986580235 674957428 88295681 448983156 752949441 21237593 217009767 44799055 487414443 896873779 919731016 374962836 788995019 17510989 289579967 80721517 149391665 428067072 902149486 214300843 354083853 862052523 879071476 309948018 60041056 551743718 518815294 175025875 963623490 310875437 849360360 360382647 612773422 61340145 574071166 314466174 276354623 262756107 434662727 643273280 681343912 136138151 124637362 680668842 975268951 32891898 859133623 181553129 129530788 398145157 892684385 464846449 17686295 463028138 942713234 876214749 702169052 921454531 355064775 225929592 921971953 601982969 724011278 916239572 453784876 211481 116870540 130827891 941493088 433205851 869196552 204423520 939722520 621562680 173461413 842431074 788782015 638180953 359364276 142503932 337130882 607459910 620679950 963923548 514286516 958763820 705044873 105198352 817188176 196055749 420035430 581295549 133111340 667313503 414316759 478171115 172612319 987893437 562500113 182768101 376420581 915777121 948730101 428470674 783266264 36783472 87652254 565843306 663664595 531590624 48805994 896537184 304570971 956947662 665841980 430267991 643029324 331691756 763731256 197611089 549110694 685267985 122852128 705219901 438767756 251387394 571021238 630704024 976316973 812713912 957386032 471832413 645960688 418321424 807769523 880169834 571548714 269247871 78269344 501373637 39522374 457214198 509506036 593137661 905460982 809387925 884164182 929577505 948275465 876551614 520670038 533389721 335760390 125394240 132073053 638452787 850343715 160333020 775446591 96587902 607304709 62326877 856971413 729490848 939415520 635556755 806802307 929446778 900599536 995734511 791243820 706914966 919639817 953566893 956321438 322494138 767378434 910355865 694671909 260749356 852123914 961835925 218878340 581327314 781931153 432634002 893833728 449260406 82020870 930399563 964594092 101637255 393176119 941673063 857977314 940907722 709216942 578876571 97692840 559049844 57068414 523199115 36144479 702227117 857388120 110828166 156325567 57997887 717780069 606589603 223035102 557672047 660234155 652476516 549636293 134063120 715654443 611326763 463873894 536789779 403957684 81948669 567645917 858544074 998809362 549369023 685485753 226257241 604365951 557077048 665786110 204076182 852816137 405953266 493643232 420860564 359204376 188201758 439866708 512838671 414431898 319353308 301694219 241477604 304584918 482677795 163323628 773914505 884474593 365347864 534916138 371104989 819002388 596785176 617186210 763970904 917749983 842649340 859614221 107136328 775761691 476425067 274168670 17824826 128815667 847661412 954617338 206119634 999736169 229914243 387744547 63978614 98942016 185351558 28228285 585861943 959248706 576455602 642305280 775986949 98173899 901961978 830968141 764114919 789346468 805494963 534838307 500738555 174581277 993868412 268547674 68042829 952101857 268941854 520153860 197313414 633868261 665683477 985138101 638442136 112809647 278623392 244071065 242043924 606605425 295848619 794746943 244327543 447526826 756369532 198421532 27823746 442746583 449641249 876387471 379000345 373298044 984112636 854451168 193307161 144201043 187132790 834765997 667100638 35913845 492551211 9146419 171786576 203804732 438099937 860874557 492448134 760763419 614967823 883485255 932141595 176928264 143257627 873784748 837164103 101784259 333960439 332417824 336112872 163986660 394368268 861358144 232632379 475584009 368771440 28221713 482289474 435202662 526389067 244326336 393577228 65183929 887035982 190504889 241343496 510533695 897823288 368324596 288463024 465387596 906907422 528824309 363933237 654717470 627057764 479283821 294225735 936493684 88900129 795919865 289907565 778301644 575869585 741807144 326787935 206037496 940194080 269221321 177457005 501847038 993995502 934706765 273591481 980856649 641558083 230511486 149651015 485017830 116545018 569443766 538674555 491295763 73268308 776556358 544348789 342314027 312528289 319962654 725799289 265334808 115655619 953508910 364434434 256762647 847362822 317999130 789179369 219828529 592620956 508696402 821962868 217158401 985699214 303724510 798291732 129346627 47050190 479646583 167857579 656009415 506110850 961980207 135315399 483534142 639955169 317999692 594408463 247707207 459815063 415568258 799532589 286909277 883874208 49315862 332404955 981784341 961811925 838802474 933461255 213283533 918283272 828968640 678586543 945327348 845360945 785401205 702253984 869838491 952898133 938239341 104836866 254587304 316144733 797530332 165942147 721918949 791319653 484171941 664984606 417333087 437686920 529450999 240962150 242012656 699515533 218700184 265848793 84285538 227521648 958885728 172496778 486689246 673761135 227697405 692280677 99149098 629692429 900875381 282703879 239837993 733481870 676879518 823526651 375646422 990371399 73701922 734671039 73230646 11956567 801066233 705326471 885274701 343398376 2755255 213487837 360036416 308039842 400364860 62098226 105406285 390319184 209203386 267269059 715198373 680028483 868711602 166958188 537557426 207164163 330961829 565424616 860074653 57449111 942156230 86906268 17918086 95206012 362483809 975601735 928854037 840328463 442302388 299071312 648239997 295564585 729613685 666197129 258249248 174837666 130217290 497591586 532069301 38876326 860489084 517600956 707866169 514176261 497750798 479502434 384648163 862600133 829965973 739252478 773729881 585072724 364393478 550374601 379646386 994255828 604397072 167734049 624190771 668635929 789366108 44646343 961610152 989367404 290604715 249718170 278161025 620057232 922724285 841333785 799759377 794736712 46068264 104188416 429209834 757189477 52729061 827703370 648439527 979312248 44036288 857207502 778586134 786501448 292055964 299650579 378663101 704482402 677645271 246842892 720574595 618641198 73641083 733694131 983661867 114349728 487064098 840787406 406910600 955993084 484189699 838985645 233016452 66964308 620018228 412981214 721733766 75232344 312269338 184057611 623560240 897533174 257794666 404895585 971391985 607658388 300827482 297895553 550149647 888826910 404228297 469149236 777091243 984134274 938331129 967522955 910109593 73254419 545620508 180213315 584206757 212121595 708713306 321538614 907731178 935984287 658545851 327811404 29298399 82768264 854628227 536217005 557522147 532973351 163001997 783582925 460234033 494772732 780877697 107186882 966360181 327991933 648376023 674754991 692867287 471704909 536289317 71483272 834536900 807905322 679159312 613993019 241496372 484521863 249134529 972518260 999086746 760350497 889395986 674402562 975819845 994537693 341787421 663154289 271644579 681058646 747770002 510267184 703079801 397770041 595275530 197999466 200941941 537217355 130044984 697313911 543857162 636791008 168130889 606331699 851856873 298566817 741514722 763176360 742570722 412370742 776222236 931974847 353390173 297211927 549603771 130301999 523522907 319486943 936487423 746042821 340580685 75818280 366247200 596887081 609334290 521227456 93342291 489740248 764250018 193352033 540537557 887128606 947235858 413329565 421591152 475078795 421094134 155131785 890439203 174446803 911742777 770702865 396032776 177629625 415675660 507302055 770164404 676134958 677089814 5689485 825691158 397268779 566832778 806412865 369765596 661643131 991046729 614908524 776538552 25685660 570430001 649511204 802303511 363460806 841272477 213893447 915051479 374932577 89048330 573618896 251420947 922316443 662494615 314309008 309519809 505662939 502681841 309282175 955691605 153257147 851188419 189949397 598544022 380634204 623532620 878582230 155021487 337539685 68493761 195770457 364138280 688698969 450058 519525330 795609619 296383376 574747681 474943642 902789187 127247652 226864315 625105488 484882413 405247236 462050327 556334478 814329785 252713241 436614477 797766559 182207817 585912172 234308262 484978742 20515823 735613129 83647204 59381237 245104595 711966451 813471036 887455726 907835292 438745903 465026209 389312441 315647476 838038167 479596555 642788216 62570972 942022432 324556167 429479052 714865187 716803825 417009735 231583207 691227159 190514296 480573116 59057043 996091265 347059620 873215357 610942894 807164745 228652599 72143302 530582750 237009028 405890329 650769883 8672181 554737251 192166657 72226634 304585445 381080264 56714358 672450264 728946458 539498434 338350400 146505377 157187552 977517458 110843852 829693665 186747787 978210510 386213321 79526065 94029565 270099589 529749272 690727602 611732027 678000178 167065666 670891356 325240880 386790111 136435184 264231418 955380668 119997080 892785446 952488791 335000860 869088080 967005012 562786379 337829930 137275547 522315670 510855066 980376870 605639835 519822903 111696347 799257428 364974363 903746734 274477709 434501424 915623551 853368667 927313389 993201037 3402931 211898979 273451637 875113247 150114977 47659769 740976854 472824625 396663856 806379154 747215495 492893391 332415482 976976227 673987540 453798401 282132451 37202543 533289053 650536782 771579996 909104737 449955476 330119203 129465363 998568650 382030745 797839489 671747789 913926324 150190240 159398240 980059597 987273573 101549470 294123347 161882778 370690423 204579692 510974433 843950634 395466028 594377112 582176127 264025931 700151910 392665061 625748456 313118017 800992947 345697871 23353730 463094002 396442270 996470087 993580074 204417432 865933260 370597418 89494130 745212081 799021221 688578964 855906204 909811712 182006441 413579608 775997801 81469737 663846580 870339366 704454705 27917976 321017045 552871146 231558835 714771725 39572083 214340228 560335363 882657465 529661012 198533984 952500278 651564687 760131365 998768090 390296704 906787891 319461808 755594217 186814492 761244868 546709896 140901056 743921247 658078531 321096718 305085470 474512941 370261838 463799537 68906775 818844648 544589356 780226103 879921879 11175090 21453054 744836222 71079500 705938839 132618485 940199474 128972731 207683202 494822701 702702306 519729309 854045837 212877690 162418318 154965232 220291174 307190115 790115760 783133468 716558595 573297861 639659295 699221655 119239407 431983435 911835097 617192338 670808560 142810635 308904575 34390894 313432601 472153620 15201603 808407843 423318865 373807615 948323570 840366641 149192601 34062055 908934195 391153790 53444382 644979305 912596313 188254545 403135640 514854226 133048470 624164123 812931118 278057381 884255602 669132326 221016305 794584977 572039963 395354474 154573821 917912283 118436934 490831378 49795846 134249702 732315299 778380576 912587696 150291015 836395718 935337161 683243097 776665139 487057003 363395525 314127436 196500301 920372854 463242989 355411739 67629426 193147957 196436056 538365135 583984219 9928448 477465463 49451391 59624035 116039794 790301459 341451646 511826236 695619090 944416227 141704578 4574081 712755074 602644155 15294793 63566295 499169239 65118221 300615694 409270615 82577540 841141992 41060293 839844999 618234927 280110027 725768183 290360202 304725787 670369785 716722012 752587275 523323787 847692634 96851517 786971403 718342314 552861211 372130828 513854685 124567147 899778849 370788041 449881236 200143637 270439986 159809296 892333093 634500485 296309711 186350172 479488678 372411691 473907734 300663119 722403079 395100348 737890714 520039832 311881039 271904053 851942524 280682715 229180792 565597170 867968010 368661794 611835049 284047515 714317447 71778813 783534852 643256060 495241034 836646356 345938542 959862828 523949862 23098653 74262269 751590459 741380570 736707550 585827914 193669688 721479158 669565437 335295208 689060761 651761413 839821370 629799191 219175248 53764701 591907197 631093778 73649975 929059202 654114974 570936470 552366519 255383796 915533807 940656265 296540195 897379364 115319776 408854857 117854489 861208179 398361581 722974977 854882524 13313358 256305166 125071039 573271139 90054773 763685293 130414148 501279466 850251685 686831847 788449634 222367388 36679244 483056286 60003095 798116896 506827009 662598800 319728029 641657055 237263909 350142883 304739113 442581227 930602473 359787502 957691623 951011709 139475489 44649646 584081470 284988138 728728145 298501570 678220640 486264372 224287933 58139888 99504402 591269004 200032441 756999670 620197837 872247183 653511327 982603398 513908153 716130880 813820268 567276654 377995961 625831223 582204774 621106260 159542481 300421515 829429282 500380631 451379827 603461640 990253547 876686276 16636580 746662606 754328380 705029624 816526219 129984192 729854348 586108314 939473094 71609659 994812607 300314939 835795002 756918361 636288591 871131920 962814858 204022385 419090313 745519815 677125303 970416965 816000060 604181897 674787366 793561511 884405279 451609583 259985878 330801080 753295468 563115470 836275497 945670246 366417490 146647615 568762405 569072631 353126570 280222722 945481103 58932030 989268457 272126232 749607622 690481949 934041072 248355602 377578457 402732253 711388331 206494743 370257813 412321967 178306022 927448012 128976888 585996389 594375516 411474109 708443746 730827415 358661866 469417869 681402524 689345295 596915267 606675291 496233307 92730069 519087518 715334461 596333861 159020019 274913634 378718495 464420483 143652595 634466464 275151614 920099099 239775918 523168948 276594225 851800341 61273347 851033112 722768699 734448279 770588840 604831041 898143767 224631987 164452731 662199536 663234065 572167870 134565015 537911408 675524759 867031891 235356493 941901937 59255965 7585173 537458661 5923600 687406779 12294369 785468618 322919946 86655520 124162009 355156873 431878476 847418139 541489120 499371346 132934872 961366241 295083011 533501193 587107792 502939478 404586041 711589695 379604752 747249638 556844088 583885593 547964418 866501053 280376865 588218070 605042435 284750025 403012297 115663364 233654939 279441784 328882873 436802952 17431101 435436439 499511221 146508520 968153476 992572740 546884231 423081301 615986998 46621141 120734158 744031809 53279929 961603447 250624960 713825566 17089793 188385067 499917470 479355 149239561 270968862 239237156 603750976 178450146 387026266 243100979 346248418 841965075 106842341 50955843 804352879 251543960 749219414 45740366 849388555 514543101 800150843 794192628 734571097 386817932 346800946 147470109 321152711 798217870 291059535 329849268 902597302 400144349 785050433 629245493 17467417 965299107 352955426 816123716 662677226 135135342 792500615 312375307 407039020 412720495 55831474 318007223 754545048 127066157 472535305 517810392 383547194 463306677 445680465 429046683 378932088 26368562 45545891 956485050 489356343 854518007 975584844 553034079 133838657 78425738 291041384 104515434 848795306 838740692 612455890 529504759 938268654 962039438 584651377 964541057 332448827 930397826 420343480 271557542 875061296 582767328 899241465 765574195 561401154 644114114 426872128 57722759 476952604 5232845 236701668 864072883 813437752 650613267 676703136 870445091 140797053 743490641 554983491 863937625 771867930 168601310 971129396 331969794 674614451 129451209 790143775 383631746 791655914 895214564 748515143 448006431 983836250 622650379 173793237 423883526 322159239 612326710 721219386 371269367 536019863 137240827 689030561 298826703 531066808 584370672 490051263 329956402 789913884 737980322 481540887 648686706 812727143 1526896 50445812 581806624 964226110 340955387 682842432 618441908 187333759 117555440 192247321 492901825 548789318 390598113 154175089 705585663 494655138 796566764 87081870 162517051 844410165 35913082 194188964 180199102 341522089 846236513 378752837 364141126 265903911 815691760 596536263 763717272 898111773 717722696 330725951 787633177 563714015 322053690 166751125 147740141 360081528 248866596 105263658 40383106 502179057 826218049 950546204 279664394 600222306 777808541 284156588 163576248 685615688 475448142 731434509 64866251 43877822 69977258 433660716 325740473 819802026 163692809 937056395 530957284 113151633 848160071 486819540 936229668 268548378 304476780 443076436 775801240 343765917 10519981 558909334 221258622 404101018 867911029 111315226 962920050 109252888 575469218 489528221 296592943 47949940 115704821 56338673 696343206 134788395 687090988 281818225 358042954 716562897 955560549 440129374 828459248 332016011 333856755 159805218 417346983 792013116 793758856 963131566 261851681 706873679 276276908 652202626 156475042 22930435 849455985 398339430 812094585 567459919 396826234 956440979 258646219 140460495 121125959 743055322 668415639 391486638 51317490 111744842 314899058 160698204 958709504 305300920 749010744 735509256 331860298 84454887 353494030 378558340 487063004 610648403 838224825 957713467 921445957 810592600 884049836 332651426 423627296 322079362 990753142 417463431 14660913 576342386 939207676 321389386 355777691 241156843 251363734 760404887 401048257 253836110 848497277 973325766 884168962 570922681 140988566 51078956 458075273 703824806 673301650 122467071 325789439 90019544 522193592 150364548 103010217 802006730 132680808 758988765 894848523 647600001 733999988 923357490 211344557 930043132 980156672 991711052 352094152 505697267 842776956 808003384 636533103 993660483 411996657 416247568 960018669 868609375 876091055 553530081 706236888 105080410 318293976 776378498 566103063 585976300 386924241 556166087 37927541 443746539 346112733 135372252 984997968 566246747 112286584 770988909 686750784 549772461 969574541 729259963 200527771 792539113 417731364 625081369 858388365 84798992 98977255 929317588 788184895 833646781 168998221 633846449 810625167 274399254 331244912 45119802 687585207 264931593 350152556 28375686 430670401 957268865 923685234 282098858 187654411 871810061 595102824 441575556 79955006 309547183 609459938 575242088 430159879 755641387 972167209 191316830 226490746 479008910 401185753 826242623 379003444 555767282 117346695 663648068 498627666 945616687 317422531 997117735 780025026 173572502 556898079 22200119 688840756 646137968 315036009 860784068 916625250 611426702 943216113 419640002 910569203 204166260 791129062 947389241 832725768 486189775 21967062 577873789 71903257 435608573 268236341 195140637 182625502 772560248 721660099 520894662 728936423 193096229 598622598 785834959 259772261 697091610 903242208 151772534 787427132 834209240 510422624 830923661 679384055 184092504 996449681 266487411 69923535 481821360 423538879 328473053 671919394 184100535 108353757 402121169 66807420 131995275 832824453 219930742 875929306 117678382 944758514 692024840 551845706 484494040 331622958 237871066 1591520 648478576 76062530 382989867 321068133 357458269 209149776 945770199 528869035 314586147 991476071 701978943 184639049 597285519 88149327 69974806 884671139 288321880 478546352 364288892 269538674 255517319 457034589 193932006 71714292 41777267 168910473 316723515 698029143 290249255 797920281 194485821 74584024 893516974 320108803 504745671 510152607 546406271 337526041 2286725 296084392 629827753 146018481 241627208 319485182 671028028 576978945 560331440 295846859 225731060 509515997 880303996 264066903 751553421 470164768 690394358 494771089 258153302 307849357 141966777 385155578 246845269 844548144 975088295 254531351 178898324 581589449 948498543 933771464 9934654 209772578 230090652 101576506 59821800 179755871 196926364 583574424 329311794 443242534 519479173 104248421 187503493 926973340 46362642 498987070 453733779 511683234 886788462 587384579 256535641 217966179 406984541 891462695 525737014 307481552 340106643 721276037 706654842 736665248 943986787 574686208 319164285 58683983 875468689 446210466 180898017 821112205 830866153 709282896 804102904 656164040 511212644 21241286 244187482 150323125 511246543 98420363 432574564 827891819 412840787 771129815 807953642 606878988 576538382 457695681 478225457 669328804 545068613 620278464 519202908 570598036 124931834 190448569 695731205 99757744 748932763 674656345 19227493 322269823 568060329 85675999 453002137 947131641 366761356 954434533 148782345 176218474 356712363 310859589 67008461 294204908 754169336 400863223 916583875 12851348 16870795 275703489 599487675 873357202 51341552 932541480 507418010 689882915 542875515 912005129 701176639 11198355 886026661 128795207 110744639 943145660 60730108 207972858 947964359 164664135 672066960 635915647 552951167 383891208 72422852 645203846 550587897 379775666 757261275 634933433 756176666 88886455 537734987 910848626 514701353 841785150 725800456 417471402 687590192 149871223 600537716 755404928 666078477 492410084 787007654 494838379 271779897 331383563 956053973 534421435 771832062 690207210 556982093 169622033 413994870 474085346 690485792 689449391 443096253 985943896 95114890 631078644 924080059 705006169 651750246 36284354 102776596 898402260 264467694 23815315 189565179 210649823 495672115 572744902 475678861 563197601 14106904 721351600 214688794 840376394 579946810 185134808 404492234 115623490 10812046 360788197 332614894 336010991 383850500 860791375 208457374 186989387 777499855 160085534 350708510 241383425 312198179 884162115 437824838 530066772 828257965 946954174 433413220 8883603 330719603 68924245 336310284 637568697 295304645 231530235 204948081 461335619 64280090 868599168 643446745 656689407 281690826 313420700 163466702 378205837 987295140 890194470 709998660 824373518 599865809 684543893 243805264 232254415 118826595 690728600 103370661 713973370 476938754 944249323 596427738 578961162 493977357 674563164 908094435 933349353 175869085 195999898 612375305 888055149 857334655 577187313 826887829 651630558 883384794 802299577 879031791 17059060 204911378 316330792 611129162 485089619 947282132 427148410 583625133 203631051 176244014 547977139 555564747 660304199 583664643 411492877 708236888 250768847 107233208 991276181 554576628 841999601 410793454 360491141 133946666 709811548 52704500 641758333 137219494 760727264 853860504 45377876 419212524 325867627 596660102 64253223 611715547 21150565 691177536 889633448 9360023 382400924 130328505 53988901 457094945 723391211 362953634 619387571 581729065 969377112 805782447 486998527 895226898 195432209 505296058 534931172 946783371 161211889 354156164 521159517 932076457 377543581 81074144 688512542 634994591 693020059 583214509 174635922 673240684 787202411 560958331 682760395 326404325 171476224 541448734 879855252 317561204 765759801 179773823 603861171 920498979 174660909 665395009 598356595 488724561 637692727 449701219 929502247 170705459 269560804 919211560 627597774 31074989 609277298 564313330 666372887 448250106 757354913 813438330 303866907 151302214 393868156 446050789 521874930 894048040 149164264 744773112 79340091 83151352 435914476 55182845 189453769 307638631 616447073 51980732 102986740 705198359 234654549 584170826 952490107 821717588 326931945 764373863 693253038 269393446 584831605 267775470 927078352 265083470 804259263 934465632 819993740 527583483 713201375 580296334 724214116 903524084 237543449 695695564 690045133 362826334 437054127 289238822 705711523 126502480 448393475 737132530 364701937 187688031 393742346 741415658 376619588 296527650 542689392 25440070 656089829 119131694 824552233 761070265 765648878 609437451 393923449 150016386 898504135 495524964 666352323 142774529 430052877 219237490 104006528 471144021 866773998 164223354 142418256 789024157 163301009 477393595 145746456 3955221 53289822 915543495 812524236 232689172 357242224 786643014 480886666 866342531 406203834 278090549 59600183 174125404 740602162 695840884 652982908 720794343 679208349 880460132 124492370 713497534 158637113 347552929 449481816 141734932 617368676 275464591 996236608 499214531 726559860 43794503 57190057 634550511 887344210 364481390 245666312 439948862 636381684 40718408 488772951 903681797 74598370 215499690 223308651 285065944 113915534 125081369 163069878 800660660 993531380 879880607 949384025 316549456 887881630 96902141 961063280 44975714 324504109 56183656 775552121 527608376 242725504 479065280 721892072 163168796 207884353 737187926 668097147 195526137 640298237 526878280 397578500 245114423 548631894 608302116 545424582 264597328 818647486 628063190 883935318 193233888 682292919 327288221 293382312 194823939 172461958 717500407 196856310 453509280 948736317 303411244 671167632 4345227 705835883 166195835 356622708 787823247 13089626 344476999 85925549 36495790 826961486 868799517 598207041 169950251 458002288 928626276 587415642 264936674 587121301 747263844 171229996 497105650 721337835 358438746 516749067 571128579 152352160 863190739 689240752 738106028 779133683 291079250 336487871 579417797 726848650 619442861 961883570 186061892 926763985 684528876 418330412 17125355 359127576 105748288 904723551 682724224 214047671 805525117 642828153 279417048 855093699 776934251 929266255 920448860 412444554 628683973 681393751 208860454 402621133 798431973 725095073 43973043 867715095 621219593 106631353 33766806 571877587 841725294 268791399 228069178 976939573 936474151 662832608 814304721 585382516 295697304 78551121 177080957 51391498 252964394 530013637 654743062 357499143 269565579 993953691 649026250 958762250 494084359 443006901 655067072 984760972 394085613 262848348 129059305 631568164 854913702 129754175 290297245 322218232 580966152 644988150 285718208 367065846 397452593 992449538 674934367 848457705 566307806 187816289 64726597 145378835 787836592 902748350 199438400 920970939 434434206 594460596 645163451 432677499 744341203 49315482 858753309 468526218 746160982 94498565 228109441 899892131 506332420 68724692 759893358 415229400 371510734 779058261 6923470 317916399 140738047 992552166 694057288 275864556 189301261 995330716 215068414 779763374 197941877 863736271 423525129 923756455 287046557 633425650 794706212 98646200 521457933 853697216 518331483 127142366 643295611 493756107 112601782 62150811 98392238 471113976 449067048 314659497 585103473 135225447 654005100 243975972 734511963 691573567 748060839 942491903 583715887 654242273 609582467 301255390 991522931 167209138 662566459 766507862 884126254 629245348 229062654 393208919 21504540 333710149 959498143 553643113 568468305 64685316 472928286 499073929 97935680 499299846 60312227 771795688 748883039 999113877 421727416 449290923 997006188 458703757 536703906 98135004 469056180 391149653 400771470 574763392 100377442 659077141 700026300 141365103 868684209 739631986 471456392 827078819 631246859 991304404 36513476 305739244 251527404 770937602 929724875 981340623 100339063 137958685 533440866 693041182 863784097 524496703 796316044 744020160 324367273 492374092 596654854 463011217 664404768 433612150 907297782 157317647 170898991 279843115 631081243 976871605 311970564 96665271 633175483 680286014 491147154 827267271 255271653 593733065 759761224 322273638 80907148 842518066 521832400 809231547 541329523 67035278 694619514 723941958 480408160 754506052 640774145 26300729 662914277 244287211 401414714 457007440 162438943 90154778 750675975 844432244 549694550 369412520 799992919 781678415 6247681 14957737 649343215 685318024 415665779 897338456 881306973 551510680 48155011 359083919 595379200 582191343 818544419 670083422 627883740 249069633 366231030 462503393 454736471 797003875 571486965 148334359 673370141 900586254 19457074 147367982 590318353 140592206 740670082 227027954 159374934 244414767 584573763 224501907 456752059 579072816 879380187 840256565 349221 695319651 174433952 274018276 23818482 332699330 963166873 745984821 833314048 141837460 498065651 355813883 406992633 373991959 872440409 844220474 287067934 734840181 216350689 217244393 124200014 846476934 640443807 856099453 830887805 735468901 768145496 792629978 62944153 982832776 141361402 463195623 249931222 836074137 852390457 720508295 302176921 942287086 728002965 566926096 733180937 395784435 395532393 24990580 651232690 672376036 313689248 297408098 981265147 306434720 777645986 345434792 292756880 909304317 9127474 993034728 974708225 809934494 151431568 636409812 750710782 962340499 17673854 367338894 790315572 895702033 486300216 100971655 87972406 287129809 187079531 332577243 210599081 243934706 635874243 28736503 30786925 543412738 239828307 823979469 737118514 90740126 381217312 528812651 713505172 294798473 455553644 217639416 706055730 545538021 701173819 100698429 635492231 688685694 881251764 35611348 236071284 695558058 732112026 787518728 774067889 762050986 531337348 873010524 719559014 871682941 618687018 628077009 426951189 684528196 444178115 592884817 629010228 877227300 85919942 360767250 985612546 941842536 635423190 179018615 827342330 592209452 369179273 514489058 106024054 82297022 104992641 48693951 969797883 509432438 711933589 954279891 716867241 134674685 829677201 933989685 601385883 359981029 522808044 281470794 61419961 200643092 556117410 208561301 731714776 780180327 476051909 96225957 148432669 231570963 752342396 994766503 884390463 2524750 866197875 708458852 386300006 319755989 37935151 479282403 774725506 507603310 652194568 6021650 483361808 59909350 888248187 272508128 699251745 588121386 456678150 657298901 4161698 488190843 424774397 370097192 613403117 597745968 35272204 557043698 715602829 890147812 218125518 663678114 165909127 957659206 918393262 642717441 222974890 42869090 821274347 299425151 826671233 745080352 595995476 966744131 689725260 710354622 969864790 89273411 531383866 385548125 938174209 827694474 817174340 481981818 892153071 150699599 782553226 96549528 395249849 99153136 260189204 121284031 776957866 413177723 268107772 966179359 408928055 576689408 522701312 649215016 82271910 263285099 585262647 770661665 208217430 339046382 883961300 223394604 127242996 925300342 619487559 188954 974132053 538610401 41219805 64012878 94461823 772380460 632516832 853984912 352392633 799671811 448775126 283247322 14263043 640963153 496740657 583432100 528017531 775631109 612200883 266620084 399404139 521449899 780481180 560823094 302196001 694332200 814171930 311209939 136207763 585345620 519058965 189726749 890538717 221490131 409556696 824438553 924469604 212467535 492682087 741678318 691897837 765387129 596338517 722095528 846740690 634087721 679239693 783419581 91679671 636953757 841661405 55279628 925758915 569028292 756906723 638845511 13430033 960423233 342109075 572695163 346861601 579776410 454361021 381435748 164607087 150189518 267629559 59836346 702386551 857687164 987038798 448101245 790285161 124607599 489781071 111086574 970820698 355275363 731003960 259452555 409273408 569183581 168432544 668307756 319010580 398481910 106954382 120400395 891531209 337143413 784531362 881435499 121780388 214819724 922200904 258981785 82968967 93840077 262445447 69566586 868968740 689240367 94000018 352307427 544200329 981334491 272842659 311602586 269663344 752872615 663205444 351711230 362487673 300655397 116404969 646972682 991769895 476117416 70631448 351694873 145833711 751415505 754033773 310187433 697087140 716894851 388762427 270519154 533468730 113465857 353540445 726382557 635907707 952745138 643524606 239526073 249941962 256184024 111013110 516336659 539732565 421474899 261117881 783147407 667311950 237484925 695676611 453150711 793780870 211804989 884434963 879873993 14185688 973443062 942653330 228631809 379434747 507945446 934637590 140615071 611069495 331700606 392882497 5615510 24166838 855045774 690912343 961704357 977510282 972282931 431999267 258522592 885349691 500652904 256344709 153923689 189688292 873981436 354940840 946579452 554011226 346463591 975341591 904632593 846548837 784999744 740229130 171387794 362372123 527988281 237914427 594569764 959714898 811786022 375998327 729792280 57945472 263142197 816312037 128258663 585805141 675009932 918693218 961417050 801964955 419971487 990205483 239870376 201312822 898486917 842054581 767810598 366687667 600877611 630265539 50219529 194715888 682151871 168964204 455955123 39300665 859088030 386240818 445210310 78715965 323680492 233146966 355569192 399645713 287530897 993771726 334232858 888326591 112053557 527492454 84688498 2502772 927366354 598673532 432722932 427348397 940702813 238951430 420928619 30698320 960779824 791801562 487405230 368005952 571175455 768811720 732281640 582069204 586122288 47041852 576784454 176781150 456378619 759017829 61420367 9763646 433545608 890292988 221158695 126552495 949216861 28771644 890599580 452653228 843812655 578515214 829031967 87545997 920513519 319725626 552578039 817232331 854130942 400691155 924499498 297893038 416158353 322042785 496949832 426471573 780178457 947220 316401624 472311564 590609840 731039994 538296782 134603049 738812641 453375659 59520070 680772539 896475256 871920587 897637295 397256155 231599006 93987639 206692676 120547594 613734208 392625298 865110008 604317901 754670175 924436445 118757834 538208741 169532829 375221399 500043303 186337426 374327085 761240319 851518574 130983596 545817263 234941443 783789408 825396933 458365545 730931088 521446362 666416246 23155179 268624431 696723740 889467849 908753404 278131937 244583219 390938676 371246730 963228166 429786483 23421176 704544252 855249499 623626584 799052617 391640092 852960696 564184830 904393286 615459413 950123562 873845933 657521866 452817964 137578977 543868423 808237190 887072232 715835799 187674682 377523669 576072405 661786199 797518769 647437801 999596094 53457413 914343661 688373888 186443015 659810881 134876327 410014417 427295401 273264021 154965304 388042532 861033662 309488098 480638602 711276412 905818078 720545752 970890254 535704692 512792662 596270601 64562855 170207440 554216334 803025246 992487885 609751862 878824668 126578883 236201531 592186372 626093956 162570601 98341683 649176556 276576284 334704113 486982709 58557520 405134116 402033358 662057065 196929245 467366567 20307708 490120989 940013648 636696837 432680184 163934962 452547005 921323753 218415487 244949660 97703084 222711892 161872971 669728836 184994099 829543822 523258528 590424197 514089262 826992652 39004279 693251719 906814562 6995716 208373938 920686168 993362577 316365588 840585939 566808612 2200097 830232987 741026353 545330778 702424893 653901258 512787963 757087681 353088487 721651667 25370007 21429001 824749634 10730155 384530819 933413684 849088637 515251986 553080375 621912482 567164803 741953281 713030883 967998128 164139810 587550949 366705075 256366434 800804820 12427315 30475932 938524144 329763331 957252716 70539805 885559879 52615006 332345764 717071881 542197629 487309024 656058960 146473696 173778344 726548178 348860919 207307125 989155469 396918314 523339456 873282996 464060695 567235833 65314441 981660258 986491656 720631034 751534687 661165123 772383672 962124954 606409748 482593724 386774991 806713296 408042591 297303949 46361106 8269282 415156462 467961695 690745749 540449630 595091419 996693216 509976488 658654349 513015921 806690102 788578593 500317885 953256902 831323349 732313449 7362974 487499504 90346327 454906040 55346144 410469614 586680547 638816475 558166406 579878666 669647656 21539098 506836191 403134700 271305419 927323235 607482690 579173296 593652405 5190906 155524739 974987612 271968835 217428572 311949959 862445034 378114811 945855064 39876440 300068114 609717727 162080236 559050494 530410183 998134910 579679294 683070041 814343971 210206761 276852451 759780816 637499874 608526078 932995213 734019546 996051310 160887666 727977375 65544524 363376327 384447400 806397521 572279462 927399852 452517934 332779528 209229373 178832629 30287464 66531378 668106764 388552303 901207996 27647217 481874368 794096932 627311898 871140183 709001649 304404664 534472749 267942824 365486335 455109882 599994643 316117563 469441171 693902268 116564451 996256799 225170444 762542886 892765987 160808180 144239931 762995885 560513952 666180003 354184181 195431967 239948302 942511505 380565327 605861642 258946877 99884953 152184142 499837287 594118946 941495193 773903270 486497646 176104061 24649106 448628255 667965132 330046762 103217913 94757737 287024452 732617943 286856643 519000099 813431268 624967611 55021033 671952392 69025312 898789326 81782117 645923232 560978601 143556339 400977994 3111762 705099883 29812949 272082991 141456748 29306774 360657626 945726847 999777096 693853097 175416697 63258816 756510686 642100626 235865762 668496918 347626224 14830357 844182071 296396147 34000998 479640753 418366229 41907771 478152013 677255571 183158943 739740073 16494526 608135974 47069842 357546035 886836468 28153847 884994609 427428135 972098226 527105891 444859436 444978551 95099366 809808720 903190194 873504163 549817010 232249217 451870808 135212605 152008125 3856329 784421094 623832341 726406725 168530369 30719793 217361614 269821839 825166954 718669218 630188766 835392645 331313736 39118358 584345872 659598025 708444601 854057454 851221349 679118565 980709244 767112674 798400862 334336342 636150101 597246343 718076478 540669742 693109752 994529096 897136297 660915472 955788387 631884539 13908924 836838200 835738225 716575731 485287075 317841835 962575302 918746471 108552955 666988258 619677783 196174573 203458694 767081466 427159053 187404542 6694188 494042564 57033932 924519788 69085009 742951107 524654273 846905902 171208719 2559703 420339682 604224441 627761337 778733630 685769041 531932751 645072919 265673028 499659055 798728618 508383916 938230754 388216533 976545743 394243936 372640305 626161914 724895394 146217027 34571694 540644563 822982761 281731154 495860443 938283069 148153562 865777691 626900571 489319654 545268153 531053131 186220884 559140604 560437345 289297948 747224752 17941745 9009090 853288155 512095640 546102869 138581023 377868043 280993495 823632652 322414510 380897396 39583872 837390958 598634504 818570371 198612887 669726780 752985280 590292328 19521703 517734834 307997181 349381780 892467812 62489938 693744509 454473646 368940413 61578494 471151057 981382745 637611589 995793616 736607448 82180495 1249855 181898825 211642268 460354168 673762153 64607452 450621974 173381803 396185509 801831820 582714686 978634583 14373729 258278930 806208834 967764299 664029790 9491083 261490038 752927987 690270168 216383952 255234810 860149382 593534917 83830144 587337801 400514816 783596189 900818870 81053028 379394001 159592931 510629092 798041596 648377914 635253052 519520240 344928296 105027016 943279865 924473172 64618103 416726469 326392728
